Initial commit

This commit is contained in:
bilulib
2025-04-13 00:18:57 +02:00
parent cff009bb7c
commit d894249e61
18301 changed files with 2905442 additions and 3845 deletions

39
frontend/webapp/node_modules/unrs-resolver/README.md generated vendored Normal file
View File

@@ -0,0 +1,39 @@
# UnRS Resolver Napi Binding
See
- `index.d.ts` for `resolveSync` and `ResolverFactory` API.
- [README.md](https://github.com/unrs/unrs-resolver#unrs-resolver) for options.
## API
`resolve(directory, specifier)` - resolve `specifier` at an absolute path to a `directory`.
### `directory`
An **absolute** path to a directory where the specifier is resolved against.
For CommonJS modules, it is the `__dirname` variable that contains the absolute path to the folder containing current module.
For ECMAScript modules, it is the value of `import.meta.url`.
Behavior is undefined when given a path to a file.
### `specifier`
The string passed to `require` or `import`, i.e. `require("specifier")` or `import "specifier"`
## ESM Example
```javascript
import assert from 'assert';
import path from 'path';
import resolve, { ResolverFactory } from './index.js';
// `resolve`
assert(resolve.sync(process.cwd(), './index.js').path, path.join(cwd, 'index.js'));
// `ResolverFactory`
const resolver = new ResolverFactory();
assert(resolver.sync(process.cwd(), './index.js').path, path.join(cwd, 'index.js'));
```

View File

@@ -0,0 +1 @@
export * from '@unrs/resolver-binding-wasm32-wasi'

227
frontend/webapp/node_modules/unrs-resolver/index.d.ts generated vendored Normal file
View File

@@ -0,0 +1,227 @@
/* auto-generated by NAPI-RS */
/* eslint-disable */
export declare class ResolverFactory {
constructor(options?: NapiResolveOptions | undefined | null)
static default(): ResolverFactory
/** Clone the resolver using the same underlying cache. */
cloneWithOptions(options: NapiResolveOptions): ResolverFactory
/** Clear the underlying cache. */
clearCache(): void
/** Synchronously resolve `specifier` at an absolute path to a `directory`. */
sync(directory: string, request: string): ResolveResult
/** Asynchronously resolve `specifier` at an absolute path to a `directory`. */
async(directory: string, request: string): Promise<ResolveResult>
}
export declare const enum EnforceExtension {
Auto = 0,
Enabled = 1,
Disabled = 2
}
/**
* Module Resolution Options
*
* Options are directly ported from [enhanced-resolve](https://github.com/webpack/enhanced-resolve#resolver-options).
*
* See [webpack resolve](https://webpack.js.org/configuration/resolve/) for information and examples
*/
export interface NapiResolveOptions {
/**
* Path to TypeScript configuration file.
*
* Default `None`
*/
tsconfig?: TsconfigOptions
/**
* Alias for [ResolveOptions::alias] and [ResolveOptions::fallback].
*
* For the second value of the tuple, `None -> AliasValue::Ignore`, Some(String) ->
* AliasValue::Path(String)`
* Create aliases to import or require certain modules more easily.
* A trailing $ can also be added to the given object's keys to signify an exact match.
*/
alias?: Record<string, Array<string | undefined | null>>
/**
* A list of alias fields in description files.
* Specify a field, such as `browser`, to be parsed according to [this specification](https://github.com/defunctzombie/package-browser-field-spec).
* Can be a path to json object such as `["path", "to", "exports"]`.
*
* Default `[]`
*/
aliasFields?: (string | string[])[]
/**
* Condition names for exports field which defines entry points of a package.
* The key order in the exports field is significant. During condition matching, earlier entries have higher priority and take precedence over later entries.
*
* Default `[]`
*/
conditionNames?: Array<string>
/**
* The JSON files to use for descriptions. (There was once a `bower.json`.)
*
* Default `["package.json"]`
*/
descriptionFiles?: Array<string>
/**
* If true, it will not allow extension-less files.
* So by default `require('./foo')` works if `./foo` has a `.js` extension,
* but with this enabled only `require('./foo.js')` will work.
*
* Default to `true` when [ResolveOptions::extensions] contains an empty string.
* Use `Some(false)` to disable the behavior.
* See <https://github.com/webpack/enhanced-resolve/pull/285>
*
* Default None, which is the same as `Some(false)` when the above empty rule is not applied.
*/
enforceExtension?: EnforceExtension
/**
* A list of exports fields in description files.
* Can be a path to json object such as `["path", "to", "exports"]`.
*
* Default `[["exports"]]`.
*/
exportsFields?: (string | string[])[]
/**
* Fields from `package.json` which are used to provide the internal requests of a package
* (requests starting with # are considered internal).
*
* Can be a path to a JSON object such as `["path", "to", "imports"]`.
*
* Default `[["imports"]]`.
*/
importsFields?: (string | string[])[]
/**
* An object which maps extension to extension aliases.
*
* Default `{}`
*/
extensionAlias?: Record<string, Array<string>>
/**
* Attempt to resolve these extensions in order.
* If multiple files share the same name but have different extensions,
* will resolve the one with the extension listed first in the array and skip the rest.
*
* Default `[".js", ".json", ".node"]`
*/
extensions?: Array<string>
/**
* Redirect module requests when normal resolving fails.
*
* Default `[]`
*/
fallback?: Record<string, Array<string | undefined | null>>
/**
* Request passed to resolve is already fully specified and extensions or main files are not resolved for it (they are still resolved for internal requests).
*
* See also webpack configuration [resolve.fullySpecified](https://webpack.js.org/configuration/module/#resolvefullyspecified)
*
* Default `false`
*/
fullySpecified?: boolean
/**
* A list of main fields in description files
*
* Default `["main"]`.
*/
mainFields?: string | string[]
/**
* The filename to be used while resolving directories.
*
* Default `["index"]`
*/
mainFiles?: Array<string>
/**
* A list of directories to resolve modules from, can be absolute path or folder name.
*
* Default `["node_modules"]`
*/
modules?: string | string[]
/**
* Resolve to a context instead of a file.
*
* Default `false`
*/
resolveToContext?: boolean
/**
* Prefer to resolve module requests as relative requests instead of using modules from node_modules directories.
*
* Default `false`
*/
preferRelative?: boolean
/**
* Prefer to resolve server-relative urls as absolute paths before falling back to resolve in ResolveOptions::roots.
*
* Default `false`
*/
preferAbsolute?: boolean
/**
* A list of resolve restrictions to restrict the paths that a request can be resolved on.
*
* Default `[]`
*/
restrictions?: Array<Restriction>
/**
* A list of directories where requests of server-relative URLs (starting with '/') are resolved.
* On non-Windows systems these requests are resolved as an absolute path first.
*
* Default `[]`
*/
roots?: Array<string>
/**
* Whether to resolve symlinks to their symlinked location.
* When enabled, symlinked resources are resolved to their real path, not their symlinked location.
* Note that this may cause module resolution to fail when using tools that symlink packages (like npm link).
*
* Default `true`
*/
symlinks?: boolean
/**
* Whether to parse [module.builtinModules](https://nodejs.org/api/module.html#modulebuiltinmodules) or not.
* For example, "zlib" will throw [crate::ResolveError::Builtin] when set to true.
*
* Default `false`
*/
builtinModules?: boolean
}
export interface ResolveResult {
path?: string
error?: string
/** "type" field in the package.json file */
moduleType?: string
packageJsonPath?: string
}
/**
* Alias Value for [ResolveOptions::alias] and [ResolveOptions::fallback].
* Use struct because napi don't support structured union now
*/
export interface Restriction {
path?: string
regex?: string
}
export declare function sync(path: string, request: string): ResolveResult
/**
* Tsconfig Options
*
* Derived from [tsconfig-paths-webpack-plugin](https://github.com/dividab/tsconfig-paths-webpack-plugin#options)
*/
export interface TsconfigOptions {
/**
* Allows you to specify where to find the TypeScript configuration file.
* You may provide
* * a relative path to the configuration file. It will be resolved relative to cwd.
* * an absolute path to the configuration file.
*/
configFile: string
/**
* Support for Typescript Project References.
*
* * `'auto'`: use the `references` field from tsconfig of `config_file`.
* * `string[]`: manually provided relative or absolute path.
*/
references?: 'auto' | string[]
}

379
frontend/webapp/node_modules/unrs-resolver/index.js generated vendored Normal file
View File

@@ -0,0 +1,379 @@
// prettier-ignore
/* eslint-disable */
// @ts-nocheck
/* auto-generated by NAPI-RS */
const { createRequire } = require('node:module')
require = createRequire(__filename)
const { readFileSync } = require('node:fs')
let nativeBinding = null
const loadErrors = []
const isMusl = () => {
let musl = false
if (process.platform === 'linux') {
musl = isMuslFromFilesystem()
if (musl === null) {
musl = isMuslFromReport()
}
if (musl === null) {
musl = isMuslFromChildProcess()
}
}
return musl
}
const isFileMusl = (f) => f.includes('libc.musl-') || f.includes('ld-musl-')
const isMuslFromFilesystem = () => {
try {
return readFileSync('/usr/bin/ldd', 'utf-8').includes('musl')
} catch {
return null
}
}
const isMuslFromReport = () => {
let report = null
if (typeof process.report?.getReport === 'function') {
process.report.excludeNetwork = true
report = process.report.getReport()
}
if (!report) {
return null
}
if (report.header && report.header.glibcVersionRuntime) {
return false
}
if (Array.isArray(report.sharedObjects)) {
if (report.sharedObjects.some(isFileMusl)) {
return true
}
}
return false
}
const isMuslFromChildProcess = () => {
try {
return require('child_process').execSync('ldd --version', { encoding: 'utf8' }).includes('musl')
} catch (e) {
// If we reach this case, we don't know if the system is musl or not, so is better to just fallback to false
return false
}
}
function requireNative() {
if (process.env.NAPI_RS_NATIVE_LIBRARY_PATH) {
try {
nativeBinding = require(process.env.NAPI_RS_NATIVE_LIBRARY_PATH);
} catch (err) {
loadErrors.push(err);
}
} else if (process.platform === 'android') {
if (process.arch === 'arm64') {
try {
return require('./resolver.android-arm64.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-android-arm64')
} catch (e) {
loadErrors.push(e)
}
} else if (process.arch === 'arm') {
try {
return require('./resolver.android-arm-eabi.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-android-arm-eabi')
} catch (e) {
loadErrors.push(e)
}
} else {
loadErrors.push(new Error(`Unsupported architecture on Android ${process.arch}`))
}
} else if (process.platform === 'win32') {
if (process.arch === 'x64') {
try {
return require('./resolver.win32-x64-msvc.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-win32-x64-msvc')
} catch (e) {
loadErrors.push(e)
}
} else if (process.arch === 'ia32') {
try {
return require('./resolver.win32-ia32-msvc.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-win32-ia32-msvc')
} catch (e) {
loadErrors.push(e)
}
} else if (process.arch === 'arm64') {
try {
return require('./resolver.win32-arm64-msvc.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-win32-arm64-msvc')
} catch (e) {
loadErrors.push(e)
}
} else {
loadErrors.push(new Error(`Unsupported architecture on Windows: ${process.arch}`))
}
} else if (process.platform === 'darwin') {
try {
return require('./resolver.darwin-universal.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-darwin-universal')
} catch (e) {
loadErrors.push(e)
}
if (process.arch === 'x64') {
try {
return require('./resolver.darwin-x64.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-darwin-x64')
} catch (e) {
loadErrors.push(e)
}
} else if (process.arch === 'arm64') {
try {
return require('./resolver.darwin-arm64.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-darwin-arm64')
} catch (e) {
loadErrors.push(e)
}
} else {
loadErrors.push(new Error(`Unsupported architecture on macOS: ${process.arch}`))
}
} else if (process.platform === 'freebsd') {
if (process.arch === 'x64') {
try {
return require('./resolver.freebsd-x64.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-freebsd-x64')
} catch (e) {
loadErrors.push(e)
}
} else if (process.arch === 'arm64') {
try {
return require('./resolver.freebsd-arm64.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-freebsd-arm64')
} catch (e) {
loadErrors.push(e)
}
} else {
loadErrors.push(new Error(`Unsupported architecture on FreeBSD: ${process.arch}`))
}
} else if (process.platform === 'linux') {
if (process.arch === 'x64') {
if (isMusl()) {
try {
return require('./resolver.linux-x64-musl.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-linux-x64-musl')
} catch (e) {
loadErrors.push(e)
}
} else {
try {
return require('./resolver.linux-x64-gnu.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-linux-x64-gnu')
} catch (e) {
loadErrors.push(e)
}
}
} else if (process.arch === 'arm64') {
if (isMusl()) {
try {
return require('./resolver.linux-arm64-musl.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-linux-arm64-musl')
} catch (e) {
loadErrors.push(e)
}
} else {
try {
return require('./resolver.linux-arm64-gnu.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-linux-arm64-gnu')
} catch (e) {
loadErrors.push(e)
}
}
} else if (process.arch === 'arm') {
if (isMusl()) {
try {
return require('./resolver.linux-arm-musleabihf.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-linux-arm-musleabihf')
} catch (e) {
loadErrors.push(e)
}
} else {
try {
return require('./resolver.linux-arm-gnueabihf.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-linux-arm-gnueabihf')
} catch (e) {
loadErrors.push(e)
}
}
} else if (process.arch === 'riscv64') {
if (isMusl()) {
try {
return require('./resolver.linux-riscv64-musl.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-linux-riscv64-musl')
} catch (e) {
loadErrors.push(e)
}
} else {
try {
return require('./resolver.linux-riscv64-gnu.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-linux-riscv64-gnu')
} catch (e) {
loadErrors.push(e)
}
}
} else if (process.arch === 'ppc64') {
try {
return require('./resolver.linux-ppc64-gnu.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-linux-ppc64-gnu')
} catch (e) {
loadErrors.push(e)
}
} else if (process.arch === 's390x') {
try {
return require('./resolver.linux-s390x-gnu.node')
} catch (e) {
loadErrors.push(e)
}
try {
return require('@unrs/resolver-binding-linux-s390x-gnu')
} catch (e) {
loadErrors.push(e)
}
} else {
loadErrors.push(new Error(`Unsupported architecture on Linux: ${process.arch}`))
}
} else {
loadErrors.push(new Error(`Unsupported OS: ${process.platform}, architecture: ${process.arch}`))
}
}
nativeBinding = requireNative()
if (!nativeBinding || process.env.NAPI_RS_FORCE_WASI) {
try {
nativeBinding = require('./resolver.wasi.cjs')
} catch (err) {
if (process.env.NAPI_RS_FORCE_WASI) {
loadErrors.push(err)
}
}
if (!nativeBinding) {
try {
nativeBinding = require('@unrs/resolver-binding-wasm32-wasi')
} catch (err) {
if (process.env.NAPI_RS_FORCE_WASI) {
loadErrors.push(err)
}
}
}
}
if (!nativeBinding) {
if (loadErrors.length > 0) {
// TODO Link to documentation with potential fixes
// - The package owner could build/publish bindings for this arch
// - The user may need to bundle the correct files
// - The user may need to re-install node_modules to get new packages
throw new Error('Failed to load native binding', { cause: loadErrors })
}
throw new Error(`Failed to load native binding`)
}
module.exports.ResolverFactory = nativeBinding.ResolverFactory
module.exports.EnforceExtension = nativeBinding.EnforceExtension
module.exports.sync = nativeBinding.sync

View File

@@ -0,0 +1,70 @@
{
"name": "unrs-resolver",
"version": "1.5.0",
"description": "Oxc Resolver Node API with PNP support",
"main": "index.js",
"browser": "browser.js",
"files": [
"index.d.ts",
"index.js",
"browser.js"
],
"license": "MIT",
"homepage": "https://github.com/unrs/unrs-resolver",
"repository": {
"type": "git",
"url": "https://github.com/unrs/unrs-resolver.git"
},
"publishConfig": {
"registry": "https://registry.npmjs.org/",
"access": "public"
},
"napi": {
"binaryName": "resolver",
"packageName": "@unrs/resolver-binding",
"wasm": {
"browser": {
"fs": true
}
},
"targets": [
"x86_64-pc-windows-msvc",
"aarch64-pc-windows-msvc",
"i686-pc-windows-msvc",
"x86_64-unknown-linux-gnu",
"x86_64-unknown-linux-musl",
"x86_64-unknown-freebsd",
"aarch64-unknown-linux-gnu",
"aarch64-unknown-linux-musl",
"armv7-unknown-linux-gnueabihf",
"armv7-unknown-linux-musleabihf",
"powerpc64le-unknown-linux-gnu",
"riscv64gc-unknown-linux-gnu",
"s390x-unknown-linux-gnu",
"x86_64-apple-darwin",
"aarch64-apple-darwin",
"wasm32-wasip1-threads"
]
},
"funding": {
"url": "https://github.com/sponsors/JounQin"
},
"optionalDependencies": {
"@unrs/resolver-binding-win32-x64-msvc": "1.5.0",
"@unrs/resolver-binding-win32-arm64-msvc": "1.5.0",
"@unrs/resolver-binding-win32-ia32-msvc": "1.5.0",
"@unrs/resolver-binding-linux-x64-gnu": "1.5.0",
"@unrs/resolver-binding-linux-x64-musl": "1.5.0",
"@unrs/resolver-binding-freebsd-x64": "1.5.0",
"@unrs/resolver-binding-linux-arm64-gnu": "1.5.0",
"@unrs/resolver-binding-linux-arm64-musl": "1.5.0",
"@unrs/resolver-binding-linux-arm-gnueabihf": "1.5.0",
"@unrs/resolver-binding-linux-arm-musleabihf": "1.5.0",
"@unrs/resolver-binding-linux-ppc64-gnu": "1.5.0",
"@unrs/resolver-binding-linux-riscv64-gnu": "1.5.0",
"@unrs/resolver-binding-linux-s390x-gnu": "1.5.0",
"@unrs/resolver-binding-darwin-x64": "1.5.0",
"@unrs/resolver-binding-darwin-arm64": "1.5.0",
"@unrs/resolver-binding-wasm32-wasi": "1.5.0"
}
}