@fntio/infra-client 0.0.0-stage → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +193 -0
- package/LICENSE +93 -0
- package/README.md +875 -2
- package/assets/acl-reconciler/index.js +1604 -0
- package/assets/api/index.js +9857 -0
- package/assets/api/package.json +9 -0
- package/assets/api/vendor_modules/.package-lock.json +857 -0
- package/assets/api/vendor_modules/accepts/HISTORY.md +243 -0
- package/assets/api/vendor_modules/accepts/LICENSE +23 -0
- package/assets/api/vendor_modules/accepts/README.md +140 -0
- package/assets/api/vendor_modules/accepts/index.js +238 -0
- package/assets/api/vendor_modules/accepts/package.json +47 -0
- package/assets/api/vendor_modules/array-flatten/LICENSE +21 -0
- package/assets/api/vendor_modules/array-flatten/README.md +43 -0
- package/assets/api/vendor_modules/array-flatten/array-flatten.js +64 -0
- package/assets/api/vendor_modules/array-flatten/package.json +39 -0
- package/assets/api/vendor_modules/aws-jwt-verify/LICENSE +175 -0
- package/assets/api/vendor_modules/aws-jwt-verify/README.md +1033 -0
- package/assets/api/vendor_modules/aws-jwt-verify/asn1.d.ts +20 -0
- package/assets/api/vendor_modules/aws-jwt-verify/assert.d.ts +41 -0
- package/assets/api/vendor_modules/aws-jwt-verify/cognito-verifier.d.ts +183 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/asn1.js +301 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/assert.js +108 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/cognito-verifier.js +158 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/error.js +131 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/https-common.js +29 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/https-node.js +89 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/https.js +52 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/index.js +9 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/jwk.js +221 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/jwt-model.js +10 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/jwt-rsa.js +397 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/jwt.js +161 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/node-web-compat-node.js +48 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/node-web-compat-web.js +78 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/node-web-compat.js +11 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/package.json +1 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/safe-json-parse.js +34 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/cjs/typing-util.js +6 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/asn1.js +296 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/assert.js +101 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/cognito-verifier.js +153 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/error.js +101 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/https-common.js +25 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/https-node.js +85 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/https.js +48 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/index.js +4 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/jwk.js +208 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/jwt-model.js +7 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/jwt-rsa.js +389 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/jwt.js +156 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/node-web-compat-node.js +45 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/node-web-compat-web.js +75 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/node-web-compat.js +10 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/package.json +1 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/safe-json-parse.js +29 -0
- package/assets/api/vendor_modules/aws-jwt-verify/dist/esm/typing-util.js +5 -0
- package/assets/api/vendor_modules/aws-jwt-verify/error.d.ts +108 -0
- package/assets/api/vendor_modules/aws-jwt-verify/https-common.d.ts +9 -0
- package/assets/api/vendor_modules/aws-jwt-verify/https-node.d.ts +20 -0
- package/assets/api/vendor_modules/aws-jwt-verify/https.d.ts +35 -0
- package/assets/api/vendor_modules/aws-jwt-verify/index.d.ts +2 -0
- package/assets/api/vendor_modules/aws-jwt-verify/jwk.d.ts +76 -0
- package/assets/api/vendor_modules/aws-jwt-verify/jwt-model.d.ts +78 -0
- package/assets/api/vendor_modules/aws-jwt-verify/jwt-rsa.d.ts +348 -0
- package/assets/api/vendor_modules/aws-jwt-verify/jwt.d.ts +51 -0
- package/assets/api/vendor_modules/aws-jwt-verify/package.json +136 -0
- package/assets/api/vendor_modules/aws-jwt-verify/safe-json-parse.d.ts +18 -0
- package/assets/api/vendor_modules/aws-jwt-verify/typing-util.d.ts +38 -0
- package/assets/api/vendor_modules/body-parser/HISTORY.md +703 -0
- package/assets/api/vendor_modules/body-parser/LICENSE +23 -0
- package/assets/api/vendor_modules/body-parser/README.md +476 -0
- package/assets/api/vendor_modules/body-parser/index.js +156 -0
- package/assets/api/vendor_modules/body-parser/lib/read.js +205 -0
- package/assets/api/vendor_modules/body-parser/lib/types/json.js +247 -0
- package/assets/api/vendor_modules/body-parser/lib/types/raw.js +105 -0
- package/assets/api/vendor_modules/body-parser/lib/types/text.js +125 -0
- package/assets/api/vendor_modules/body-parser/lib/types/urlencoded.js +303 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/.editorconfig +46 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/.github/SECURITY.md +11 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/.github/THREAT_MODEL.md +80 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/.nycrc +13 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/CHANGELOG.md +872 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/LICENSE.md +29 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/README.md +804 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/dist/qs.js +141 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/eslint.config.mjs +57 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/lib/formats.js +23 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/lib/index.js +11 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/lib/parse.js +503 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/lib/stringify.js +378 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/lib/utils.js +512 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/package.json +95 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/test/empty-keys-cases.js +267 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/test/parse.js +2296 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/test/stringify.js +1995 -0
- package/assets/api/vendor_modules/body-parser/node_modules/qs/test/utils.js +822 -0
- package/assets/api/vendor_modules/body-parser/package.json +55 -0
- package/assets/api/vendor_modules/bytes/History.md +97 -0
- package/assets/api/vendor_modules/bytes/LICENSE +23 -0
- package/assets/api/vendor_modules/bytes/Readme.md +152 -0
- package/assets/api/vendor_modules/bytes/index.js +170 -0
- package/assets/api/vendor_modules/bytes/package.json +42 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/.eslintrc +17 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/.nycrc +9 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/CHANGELOG.md +30 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/LICENSE +21 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/README.md +62 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/actualApply.d.ts +1 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/actualApply.js +10 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/applyBind.d.ts +19 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/applyBind.js +10 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/functionApply.d.ts +1 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/functionApply.js +4 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/functionCall.d.ts +1 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/functionCall.js +4 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/index.d.ts +64 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/index.js +15 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/package.json +85 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/reflectApply.d.ts +3 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/reflectApply.js +4 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/test/index.js +63 -0
- package/assets/api/vendor_modules/call-bind-apply-helpers/tsconfig.json +9 -0
- package/assets/api/vendor_modules/call-bound/.eslintrc +13 -0
- package/assets/api/vendor_modules/call-bound/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/call-bound/.nycrc +9 -0
- package/assets/api/vendor_modules/call-bound/CHANGELOG.md +42 -0
- package/assets/api/vendor_modules/call-bound/LICENSE +21 -0
- package/assets/api/vendor_modules/call-bound/README.md +53 -0
- package/assets/api/vendor_modules/call-bound/index.d.ts +94 -0
- package/assets/api/vendor_modules/call-bound/index.js +19 -0
- package/assets/api/vendor_modules/call-bound/package.json +99 -0
- package/assets/api/vendor_modules/call-bound/test/index.js +61 -0
- package/assets/api/vendor_modules/call-bound/tsconfig.json +10 -0
- package/assets/api/vendor_modules/content-disposition/HISTORY.md +60 -0
- package/assets/api/vendor_modules/content-disposition/LICENSE +22 -0
- package/assets/api/vendor_modules/content-disposition/README.md +142 -0
- package/assets/api/vendor_modules/content-disposition/index.js +458 -0
- package/assets/api/vendor_modules/content-disposition/package.json +44 -0
- package/assets/api/vendor_modules/content-type/HISTORY.md +29 -0
- package/assets/api/vendor_modules/content-type/LICENSE +22 -0
- package/assets/api/vendor_modules/content-type/README.md +94 -0
- package/assets/api/vendor_modules/content-type/index.js +225 -0
- package/assets/api/vendor_modules/content-type/package.json +42 -0
- package/assets/api/vendor_modules/cookie/LICENSE +24 -0
- package/assets/api/vendor_modules/cookie/README.md +317 -0
- package/assets/api/vendor_modules/cookie/SECURITY.md +25 -0
- package/assets/api/vendor_modules/cookie/index.js +335 -0
- package/assets/api/vendor_modules/cookie/package.json +44 -0
- package/assets/api/vendor_modules/cookie-signature/History.md +42 -0
- package/assets/api/vendor_modules/cookie-signature/Readme.md +42 -0
- package/assets/api/vendor_modules/cookie-signature/index.js +51 -0
- package/assets/api/vendor_modules/cookie-signature/package.json +18 -0
- package/assets/api/vendor_modules/debug/.coveralls.yml +1 -0
- package/assets/api/vendor_modules/debug/.eslintrc +11 -0
- package/assets/api/vendor_modules/debug/.travis.yml +14 -0
- package/assets/api/vendor_modules/debug/CHANGELOG.md +362 -0
- package/assets/api/vendor_modules/debug/LICENSE +19 -0
- package/assets/api/vendor_modules/debug/Makefile +50 -0
- package/assets/api/vendor_modules/debug/README.md +312 -0
- package/assets/api/vendor_modules/debug/component.json +19 -0
- package/assets/api/vendor_modules/debug/karma.conf.js +70 -0
- package/assets/api/vendor_modules/debug/node.js +1 -0
- package/assets/api/vendor_modules/debug/package.json +49 -0
- package/assets/api/vendor_modules/debug/src/browser.js +185 -0
- package/assets/api/vendor_modules/debug/src/debug.js +202 -0
- package/assets/api/vendor_modules/debug/src/index.js +10 -0
- package/assets/api/vendor_modules/debug/src/inspector-log.js +15 -0
- package/assets/api/vendor_modules/debug/src/node.js +248 -0
- package/assets/api/vendor_modules/depd/History.md +103 -0
- package/assets/api/vendor_modules/depd/LICENSE +22 -0
- package/assets/api/vendor_modules/depd/Readme.md +280 -0
- package/assets/api/vendor_modules/depd/index.js +538 -0
- package/assets/api/vendor_modules/depd/lib/browser/index.js +77 -0
- package/assets/api/vendor_modules/depd/package.json +45 -0
- package/assets/api/vendor_modules/destroy/LICENSE +23 -0
- package/assets/api/vendor_modules/destroy/README.md +63 -0
- package/assets/api/vendor_modules/destroy/index.js +209 -0
- package/assets/api/vendor_modules/destroy/package.json +48 -0
- package/assets/api/vendor_modules/dunder-proto/.eslintrc +5 -0
- package/assets/api/vendor_modules/dunder-proto/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/dunder-proto/.nycrc +13 -0
- package/assets/api/vendor_modules/dunder-proto/CHANGELOG.md +24 -0
- package/assets/api/vendor_modules/dunder-proto/LICENSE +21 -0
- package/assets/api/vendor_modules/dunder-proto/README.md +54 -0
- package/assets/api/vendor_modules/dunder-proto/get.d.ts +5 -0
- package/assets/api/vendor_modules/dunder-proto/get.js +30 -0
- package/assets/api/vendor_modules/dunder-proto/package.json +76 -0
- package/assets/api/vendor_modules/dunder-proto/set.d.ts +5 -0
- package/assets/api/vendor_modules/dunder-proto/set.js +35 -0
- package/assets/api/vendor_modules/dunder-proto/test/get.js +34 -0
- package/assets/api/vendor_modules/dunder-proto/test/index.js +4 -0
- package/assets/api/vendor_modules/dunder-proto/test/set.js +50 -0
- package/assets/api/vendor_modules/dunder-proto/tsconfig.json +9 -0
- package/assets/api/vendor_modules/ee-first/LICENSE +22 -0
- package/assets/api/vendor_modules/ee-first/README.md +80 -0
- package/assets/api/vendor_modules/ee-first/index.js +95 -0
- package/assets/api/vendor_modules/ee-first/package.json +29 -0
- package/assets/api/vendor_modules/encodeurl/LICENSE +22 -0
- package/assets/api/vendor_modules/encodeurl/README.md +109 -0
- package/assets/api/vendor_modules/encodeurl/index.js +60 -0
- package/assets/api/vendor_modules/encodeurl/package.json +40 -0
- package/assets/api/vendor_modules/es-define-property/.eslintrc +13 -0
- package/assets/api/vendor_modules/es-define-property/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/es-define-property/.nycrc +9 -0
- package/assets/api/vendor_modules/es-define-property/CHANGELOG.md +29 -0
- package/assets/api/vendor_modules/es-define-property/LICENSE +21 -0
- package/assets/api/vendor_modules/es-define-property/README.md +49 -0
- package/assets/api/vendor_modules/es-define-property/index.d.ts +3 -0
- package/assets/api/vendor_modules/es-define-property/index.js +14 -0
- package/assets/api/vendor_modules/es-define-property/package.json +81 -0
- package/assets/api/vendor_modules/es-define-property/test/index.js +56 -0
- package/assets/api/vendor_modules/es-define-property/tsconfig.json +10 -0
- package/assets/api/vendor_modules/es-errors/.eslintrc +5 -0
- package/assets/api/vendor_modules/es-errors/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/es-errors/CHANGELOG.md +40 -0
- package/assets/api/vendor_modules/es-errors/LICENSE +21 -0
- package/assets/api/vendor_modules/es-errors/README.md +55 -0
- package/assets/api/vendor_modules/es-errors/eval.d.ts +3 -0
- package/assets/api/vendor_modules/es-errors/eval.js +4 -0
- package/assets/api/vendor_modules/es-errors/index.d.ts +3 -0
- package/assets/api/vendor_modules/es-errors/index.js +4 -0
- package/assets/api/vendor_modules/es-errors/package.json +80 -0
- package/assets/api/vendor_modules/es-errors/range.d.ts +3 -0
- package/assets/api/vendor_modules/es-errors/range.js +4 -0
- package/assets/api/vendor_modules/es-errors/ref.d.ts +3 -0
- package/assets/api/vendor_modules/es-errors/ref.js +4 -0
- package/assets/api/vendor_modules/es-errors/syntax.d.ts +3 -0
- package/assets/api/vendor_modules/es-errors/syntax.js +4 -0
- package/assets/api/vendor_modules/es-errors/test/index.js +19 -0
- package/assets/api/vendor_modules/es-errors/tsconfig.json +49 -0
- package/assets/api/vendor_modules/es-errors/type.d.ts +3 -0
- package/assets/api/vendor_modules/es-errors/type.js +4 -0
- package/assets/api/vendor_modules/es-errors/uri.d.ts +3 -0
- package/assets/api/vendor_modules/es-errors/uri.js +4 -0
- package/assets/api/vendor_modules/es-object-atoms/.eslintrc +16 -0
- package/assets/api/vendor_modules/es-object-atoms/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/es-object-atoms/CHANGELOG.md +44 -0
- package/assets/api/vendor_modules/es-object-atoms/LICENSE +21 -0
- package/assets/api/vendor_modules/es-object-atoms/README.md +63 -0
- package/assets/api/vendor_modules/es-object-atoms/RequireObjectCoercible.d.ts +3 -0
- package/assets/api/vendor_modules/es-object-atoms/RequireObjectCoercible.js +11 -0
- package/assets/api/vendor_modules/es-object-atoms/ToObject.d.ts +7 -0
- package/assets/api/vendor_modules/es-object-atoms/ToObject.js +10 -0
- package/assets/api/vendor_modules/es-object-atoms/index.d.ts +3 -0
- package/assets/api/vendor_modules/es-object-atoms/index.js +4 -0
- package/assets/api/vendor_modules/es-object-atoms/isObject.d.ts +3 -0
- package/assets/api/vendor_modules/es-object-atoms/isObject.js +6 -0
- package/assets/api/vendor_modules/es-object-atoms/package.json +79 -0
- package/assets/api/vendor_modules/es-object-atoms/test/index.js +38 -0
- package/assets/api/vendor_modules/es-object-atoms/tsconfig.json +7 -0
- package/assets/api/vendor_modules/escape-html/LICENSE +24 -0
- package/assets/api/vendor_modules/escape-html/Readme.md +43 -0
- package/assets/api/vendor_modules/escape-html/index.js +78 -0
- package/assets/api/vendor_modules/escape-html/package.json +24 -0
- package/assets/api/vendor_modules/etag/HISTORY.md +83 -0
- package/assets/api/vendor_modules/etag/LICENSE +22 -0
- package/assets/api/vendor_modules/etag/README.md +159 -0
- package/assets/api/vendor_modules/etag/index.js +131 -0
- package/assets/api/vendor_modules/etag/package.json +47 -0
- package/assets/api/vendor_modules/express/History.md +3676 -0
- package/assets/api/vendor_modules/express/LICENSE +24 -0
- package/assets/api/vendor_modules/express/Readme.md +260 -0
- package/assets/api/vendor_modules/express/index.js +11 -0
- package/assets/api/vendor_modules/express/lib/application.js +661 -0
- package/assets/api/vendor_modules/express/lib/express.js +116 -0
- package/assets/api/vendor_modules/express/lib/middleware/init.js +43 -0
- package/assets/api/vendor_modules/express/lib/middleware/query.js +47 -0
- package/assets/api/vendor_modules/express/lib/request.js +525 -0
- package/assets/api/vendor_modules/express/lib/response.js +1179 -0
- package/assets/api/vendor_modules/express/lib/router/index.js +673 -0
- package/assets/api/vendor_modules/express/lib/router/layer.js +181 -0
- package/assets/api/vendor_modules/express/lib/router/route.js +230 -0
- package/assets/api/vendor_modules/express/lib/utils.js +304 -0
- package/assets/api/vendor_modules/express/lib/view.js +182 -0
- package/assets/api/vendor_modules/express/package.json +102 -0
- package/assets/api/vendor_modules/finalhandler/HISTORY.md +216 -0
- package/assets/api/vendor_modules/finalhandler/LICENSE +22 -0
- package/assets/api/vendor_modules/finalhandler/README.md +147 -0
- package/assets/api/vendor_modules/finalhandler/SECURITY.md +25 -0
- package/assets/api/vendor_modules/finalhandler/index.js +341 -0
- package/assets/api/vendor_modules/finalhandler/package.json +47 -0
- package/assets/api/vendor_modules/forwarded/HISTORY.md +21 -0
- package/assets/api/vendor_modules/forwarded/LICENSE +22 -0
- package/assets/api/vendor_modules/forwarded/README.md +57 -0
- package/assets/api/vendor_modules/forwarded/index.js +90 -0
- package/assets/api/vendor_modules/forwarded/package.json +45 -0
- package/assets/api/vendor_modules/fresh/HISTORY.md +70 -0
- package/assets/api/vendor_modules/fresh/LICENSE +23 -0
- package/assets/api/vendor_modules/fresh/README.md +119 -0
- package/assets/api/vendor_modules/fresh/index.js +137 -0
- package/assets/api/vendor_modules/fresh/package.json +46 -0
- package/assets/api/vendor_modules/function-bind/.eslintrc +21 -0
- package/assets/api/vendor_modules/function-bind/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/function-bind/.github/SECURITY.md +3 -0
- package/assets/api/vendor_modules/function-bind/.nycrc +13 -0
- package/assets/api/vendor_modules/function-bind/CHANGELOG.md +136 -0
- package/assets/api/vendor_modules/function-bind/LICENSE +20 -0
- package/assets/api/vendor_modules/function-bind/README.md +46 -0
- package/assets/api/vendor_modules/function-bind/implementation.js +84 -0
- package/assets/api/vendor_modules/function-bind/index.js +5 -0
- package/assets/api/vendor_modules/function-bind/package.json +87 -0
- package/assets/api/vendor_modules/function-bind/test/.eslintrc +9 -0
- package/assets/api/vendor_modules/function-bind/test/index.js +252 -0
- package/assets/api/vendor_modules/get-intrinsic/.eslintrc +42 -0
- package/assets/api/vendor_modules/get-intrinsic/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/get-intrinsic/.nycrc +9 -0
- package/assets/api/vendor_modules/get-intrinsic/CHANGELOG.md +186 -0
- package/assets/api/vendor_modules/get-intrinsic/LICENSE +21 -0
- package/assets/api/vendor_modules/get-intrinsic/README.md +71 -0
- package/assets/api/vendor_modules/get-intrinsic/index.js +378 -0
- package/assets/api/vendor_modules/get-intrinsic/package.json +97 -0
- package/assets/api/vendor_modules/get-intrinsic/test/GetIntrinsic.js +274 -0
- package/assets/api/vendor_modules/get-proto/.eslintrc +10 -0
- package/assets/api/vendor_modules/get-proto/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/get-proto/.nycrc +9 -0
- package/assets/api/vendor_modules/get-proto/CHANGELOG.md +21 -0
- package/assets/api/vendor_modules/get-proto/LICENSE +21 -0
- package/assets/api/vendor_modules/get-proto/Object.getPrototypeOf.d.ts +5 -0
- package/assets/api/vendor_modules/get-proto/Object.getPrototypeOf.js +6 -0
- package/assets/api/vendor_modules/get-proto/README.md +50 -0
- package/assets/api/vendor_modules/get-proto/Reflect.getPrototypeOf.d.ts +3 -0
- package/assets/api/vendor_modules/get-proto/Reflect.getPrototypeOf.js +4 -0
- package/assets/api/vendor_modules/get-proto/index.d.ts +5 -0
- package/assets/api/vendor_modules/get-proto/index.js +27 -0
- package/assets/api/vendor_modules/get-proto/package.json +81 -0
- package/assets/api/vendor_modules/get-proto/test/index.js +68 -0
- package/assets/api/vendor_modules/get-proto/tsconfig.json +9 -0
- package/assets/api/vendor_modules/gopd/.eslintrc +16 -0
- package/assets/api/vendor_modules/gopd/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/gopd/CHANGELOG.md +45 -0
- package/assets/api/vendor_modules/gopd/LICENSE +21 -0
- package/assets/api/vendor_modules/gopd/README.md +40 -0
- package/assets/api/vendor_modules/gopd/gOPD.d.ts +1 -0
- package/assets/api/vendor_modules/gopd/gOPD.js +4 -0
- package/assets/api/vendor_modules/gopd/index.d.ts +5 -0
- package/assets/api/vendor_modules/gopd/index.js +15 -0
- package/assets/api/vendor_modules/gopd/package.json +77 -0
- package/assets/api/vendor_modules/gopd/test/index.js +36 -0
- package/assets/api/vendor_modules/gopd/tsconfig.json +9 -0
- package/assets/api/vendor_modules/has-symbols/.eslintrc +11 -0
- package/assets/api/vendor_modules/has-symbols/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/has-symbols/.nycrc +9 -0
- package/assets/api/vendor_modules/has-symbols/CHANGELOG.md +91 -0
- package/assets/api/vendor_modules/has-symbols/LICENSE +21 -0
- package/assets/api/vendor_modules/has-symbols/README.md +46 -0
- package/assets/api/vendor_modules/has-symbols/index.d.ts +3 -0
- package/assets/api/vendor_modules/has-symbols/index.js +14 -0
- package/assets/api/vendor_modules/has-symbols/package.json +111 -0
- package/assets/api/vendor_modules/has-symbols/shams.d.ts +3 -0
- package/assets/api/vendor_modules/has-symbols/shams.js +45 -0
- package/assets/api/vendor_modules/has-symbols/test/index.js +22 -0
- package/assets/api/vendor_modules/has-symbols/test/shams/core-js.js +29 -0
- package/assets/api/vendor_modules/has-symbols/test/shams/get-own-property-symbols.js +29 -0
- package/assets/api/vendor_modules/has-symbols/test/tests.js +58 -0
- package/assets/api/vendor_modules/has-symbols/tsconfig.json +10 -0
- package/assets/api/vendor_modules/hasown/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/hasown/.nycrc +13 -0
- package/assets/api/vendor_modules/hasown/CHANGELOG.md +58 -0
- package/assets/api/vendor_modules/hasown/LICENSE +21 -0
- package/assets/api/vendor_modules/hasown/README.md +40 -0
- package/assets/api/vendor_modules/hasown/eslint.config.mjs +6 -0
- package/assets/api/vendor_modules/hasown/index.d.ts +3 -0
- package/assets/api/vendor_modules/hasown/index.js +8 -0
- package/assets/api/vendor_modules/hasown/package.json +91 -0
- package/assets/api/vendor_modules/hasown/tsconfig.json +6 -0
- package/assets/api/vendor_modules/http-errors/HISTORY.md +186 -0
- package/assets/api/vendor_modules/http-errors/LICENSE +23 -0
- package/assets/api/vendor_modules/http-errors/README.md +169 -0
- package/assets/api/vendor_modules/http-errors/index.js +290 -0
- package/assets/api/vendor_modules/http-errors/package.json +54 -0
- package/assets/api/vendor_modules/iconv-lite/Changelog.md +162 -0
- package/assets/api/vendor_modules/iconv-lite/LICENSE +21 -0
- package/assets/api/vendor_modules/iconv-lite/README.md +156 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/dbcs-codec.js +555 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/dbcs-data.js +176 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/index.js +22 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/internal.js +188 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/sbcs-codec.js +72 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/sbcs-data-generated.js +451 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/sbcs-data.js +174 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/tables/big5-added.json +122 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/tables/cp936.json +264 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/tables/cp949.json +273 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/tables/cp950.json +177 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/tables/eucjp.json +182 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/tables/gb18030-ranges.json +1 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/tables/gbk-added.json +55 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/tables/shiftjis.json +125 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/utf16.js +177 -0
- package/assets/api/vendor_modules/iconv-lite/encodings/utf7.js +290 -0
- package/assets/api/vendor_modules/iconv-lite/lib/bom-handling.js +52 -0
- package/assets/api/vendor_modules/iconv-lite/lib/extend-node.js +217 -0
- package/assets/api/vendor_modules/iconv-lite/lib/index.d.ts +24 -0
- package/assets/api/vendor_modules/iconv-lite/lib/index.js +153 -0
- package/assets/api/vendor_modules/iconv-lite/lib/streams.js +121 -0
- package/assets/api/vendor_modules/iconv-lite/package.json +46 -0
- package/assets/api/vendor_modules/inherits/LICENSE +16 -0
- package/assets/api/vendor_modules/inherits/README.md +42 -0
- package/assets/api/vendor_modules/inherits/inherits.js +9 -0
- package/assets/api/vendor_modules/inherits/inherits_browser.js +27 -0
- package/assets/api/vendor_modules/inherits/package.json +29 -0
- package/assets/api/vendor_modules/ipaddr.js/LICENSE +19 -0
- package/assets/api/vendor_modules/ipaddr.js/README.md +233 -0
- package/assets/api/vendor_modules/ipaddr.js/ipaddr.min.js +1 -0
- package/assets/api/vendor_modules/ipaddr.js/lib/ipaddr.js +673 -0
- package/assets/api/vendor_modules/ipaddr.js/lib/ipaddr.js.d.ts +68 -0
- package/assets/api/vendor_modules/ipaddr.js/package.json +35 -0
- package/assets/api/vendor_modules/math-intrinsics/.eslintrc +16 -0
- package/assets/api/vendor_modules/math-intrinsics/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/math-intrinsics/CHANGELOG.md +24 -0
- package/assets/api/vendor_modules/math-intrinsics/LICENSE +21 -0
- package/assets/api/vendor_modules/math-intrinsics/README.md +50 -0
- package/assets/api/vendor_modules/math-intrinsics/abs.d.ts +1 -0
- package/assets/api/vendor_modules/math-intrinsics/abs.js +4 -0
- package/assets/api/vendor_modules/math-intrinsics/constants/maxArrayLength.d.ts +3 -0
- package/assets/api/vendor_modules/math-intrinsics/constants/maxArrayLength.js +4 -0
- package/assets/api/vendor_modules/math-intrinsics/constants/maxSafeInteger.d.ts +3 -0
- package/assets/api/vendor_modules/math-intrinsics/constants/maxSafeInteger.js +5 -0
- package/assets/api/vendor_modules/math-intrinsics/constants/maxValue.d.ts +3 -0
- package/assets/api/vendor_modules/math-intrinsics/constants/maxValue.js +5 -0
- package/assets/api/vendor_modules/math-intrinsics/floor.d.ts +1 -0
- package/assets/api/vendor_modules/math-intrinsics/floor.js +4 -0
- package/assets/api/vendor_modules/math-intrinsics/isFinite.d.ts +3 -0
- package/assets/api/vendor_modules/math-intrinsics/isFinite.js +12 -0
- package/assets/api/vendor_modules/math-intrinsics/isInteger.d.ts +3 -0
- package/assets/api/vendor_modules/math-intrinsics/isInteger.js +16 -0
- package/assets/api/vendor_modules/math-intrinsics/isNaN.d.ts +1 -0
- package/assets/api/vendor_modules/math-intrinsics/isNaN.js +6 -0
- package/assets/api/vendor_modules/math-intrinsics/isNegativeZero.d.ts +3 -0
- package/assets/api/vendor_modules/math-intrinsics/isNegativeZero.js +6 -0
- package/assets/api/vendor_modules/math-intrinsics/max.d.ts +1 -0
- package/assets/api/vendor_modules/math-intrinsics/max.js +4 -0
- package/assets/api/vendor_modules/math-intrinsics/min.d.ts +1 -0
- package/assets/api/vendor_modules/math-intrinsics/min.js +4 -0
- package/assets/api/vendor_modules/math-intrinsics/mod.d.ts +3 -0
- package/assets/api/vendor_modules/math-intrinsics/mod.js +9 -0
- package/assets/api/vendor_modules/math-intrinsics/package.json +86 -0
- package/assets/api/vendor_modules/math-intrinsics/pow.d.ts +1 -0
- package/assets/api/vendor_modules/math-intrinsics/pow.js +4 -0
- package/assets/api/vendor_modules/math-intrinsics/round.d.ts +1 -0
- package/assets/api/vendor_modules/math-intrinsics/round.js +4 -0
- package/assets/api/vendor_modules/math-intrinsics/sign.d.ts +3 -0
- package/assets/api/vendor_modules/math-intrinsics/sign.js +11 -0
- package/assets/api/vendor_modules/math-intrinsics/test/index.js +192 -0
- package/assets/api/vendor_modules/math-intrinsics/tsconfig.json +3 -0
- package/assets/api/vendor_modules/media-typer/HISTORY.md +22 -0
- package/assets/api/vendor_modules/media-typer/LICENSE +22 -0
- package/assets/api/vendor_modules/media-typer/README.md +81 -0
- package/assets/api/vendor_modules/media-typer/index.js +270 -0
- package/assets/api/vendor_modules/media-typer/package.json +26 -0
- package/assets/api/vendor_modules/merge-descriptors/HISTORY.md +21 -0
- package/assets/api/vendor_modules/merge-descriptors/LICENSE +23 -0
- package/assets/api/vendor_modules/merge-descriptors/README.md +49 -0
- package/assets/api/vendor_modules/merge-descriptors/index.js +60 -0
- package/assets/api/vendor_modules/merge-descriptors/package.json +39 -0
- package/assets/api/vendor_modules/methods/HISTORY.md +29 -0
- package/assets/api/vendor_modules/methods/LICENSE +24 -0
- package/assets/api/vendor_modules/methods/README.md +51 -0
- package/assets/api/vendor_modules/methods/index.js +69 -0
- package/assets/api/vendor_modules/methods/package.json +36 -0
- package/assets/api/vendor_modules/mime/CHANGELOG.md +164 -0
- package/assets/api/vendor_modules/mime/LICENSE +21 -0
- package/assets/api/vendor_modules/mime/README.md +90 -0
- package/assets/api/vendor_modules/mime/cli.js +8 -0
- package/assets/api/vendor_modules/mime/mime.js +108 -0
- package/assets/api/vendor_modules/mime/package.json +44 -0
- package/assets/api/vendor_modules/mime/src/build.js +53 -0
- package/assets/api/vendor_modules/mime/src/test.js +60 -0
- package/assets/api/vendor_modules/mime/types.json +1 -0
- package/assets/api/vendor_modules/mime-db/HISTORY.md +507 -0
- package/assets/api/vendor_modules/mime-db/LICENSE +23 -0
- package/assets/api/vendor_modules/mime-db/README.md +100 -0
- package/assets/api/vendor_modules/mime-db/db.json +8519 -0
- package/assets/api/vendor_modules/mime-db/index.js +12 -0
- package/assets/api/vendor_modules/mime-db/package.json +60 -0
- package/assets/api/vendor_modules/mime-types/HISTORY.md +397 -0
- package/assets/api/vendor_modules/mime-types/LICENSE +23 -0
- package/assets/api/vendor_modules/mime-types/README.md +113 -0
- package/assets/api/vendor_modules/mime-types/index.js +188 -0
- package/assets/api/vendor_modules/mime-types/package.json +44 -0
- package/assets/api/vendor_modules/ms/index.js +152 -0
- package/assets/api/vendor_modules/ms/license.md +21 -0
- package/assets/api/vendor_modules/ms/package.json +37 -0
- package/assets/api/vendor_modules/ms/readme.md +51 -0
- package/assets/api/vendor_modules/negotiator/HISTORY.md +108 -0
- package/assets/api/vendor_modules/negotiator/LICENSE +24 -0
- package/assets/api/vendor_modules/negotiator/README.md +203 -0
- package/assets/api/vendor_modules/negotiator/index.js +82 -0
- package/assets/api/vendor_modules/negotiator/lib/charset.js +169 -0
- package/assets/api/vendor_modules/negotiator/lib/encoding.js +184 -0
- package/assets/api/vendor_modules/negotiator/lib/language.js +179 -0
- package/assets/api/vendor_modules/negotiator/lib/mediaType.js +294 -0
- package/assets/api/vendor_modules/negotiator/package.json +42 -0
- package/assets/api/vendor_modules/object-inspect/.eslintrc +53 -0
- package/assets/api/vendor_modules/object-inspect/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/object-inspect/.nycrc +13 -0
- package/assets/api/vendor_modules/object-inspect/CHANGELOG.md +424 -0
- package/assets/api/vendor_modules/object-inspect/LICENSE +21 -0
- package/assets/api/vendor_modules/object-inspect/example/all.js +23 -0
- package/assets/api/vendor_modules/object-inspect/example/circular.js +6 -0
- package/assets/api/vendor_modules/object-inspect/example/fn.js +5 -0
- package/assets/api/vendor_modules/object-inspect/example/inspect.js +10 -0
- package/assets/api/vendor_modules/object-inspect/index.js +544 -0
- package/assets/api/vendor_modules/object-inspect/package-support.json +20 -0
- package/assets/api/vendor_modules/object-inspect/package.json +105 -0
- package/assets/api/vendor_modules/object-inspect/readme.markdown +84 -0
- package/assets/api/vendor_modules/object-inspect/test/bigint.js +58 -0
- package/assets/api/vendor_modules/object-inspect/test/browser/dom.js +15 -0
- package/assets/api/vendor_modules/object-inspect/test/circular.js +16 -0
- package/assets/api/vendor_modules/object-inspect/test/deep.js +12 -0
- package/assets/api/vendor_modules/object-inspect/test/element.js +53 -0
- package/assets/api/vendor_modules/object-inspect/test/err.js +48 -0
- package/assets/api/vendor_modules/object-inspect/test/fakes.js +29 -0
- package/assets/api/vendor_modules/object-inspect/test/fn.js +76 -0
- package/assets/api/vendor_modules/object-inspect/test/global.js +17 -0
- package/assets/api/vendor_modules/object-inspect/test/has.js +15 -0
- package/assets/api/vendor_modules/object-inspect/test/holes.js +15 -0
- package/assets/api/vendor_modules/object-inspect/test/indent-option.js +271 -0
- package/assets/api/vendor_modules/object-inspect/test/inspect.js +139 -0
- package/assets/api/vendor_modules/object-inspect/test/lowbyte.js +12 -0
- package/assets/api/vendor_modules/object-inspect/test/number.js +58 -0
- package/assets/api/vendor_modules/object-inspect/test/quoteStyle.js +26 -0
- package/assets/api/vendor_modules/object-inspect/test/toStringTag.js +40 -0
- package/assets/api/vendor_modules/object-inspect/test/undef.js +12 -0
- package/assets/api/vendor_modules/object-inspect/test/values.js +261 -0
- package/assets/api/vendor_modules/object-inspect/test-core-js.js +26 -0
- package/assets/api/vendor_modules/object-inspect/util.inspect.js +1 -0
- package/assets/api/vendor_modules/on-finished/HISTORY.md +98 -0
- package/assets/api/vendor_modules/on-finished/LICENSE +23 -0
- package/assets/api/vendor_modules/on-finished/README.md +162 -0
- package/assets/api/vendor_modules/on-finished/index.js +234 -0
- package/assets/api/vendor_modules/on-finished/package.json +39 -0
- package/assets/api/vendor_modules/parseurl/HISTORY.md +58 -0
- package/assets/api/vendor_modules/parseurl/LICENSE +24 -0
- package/assets/api/vendor_modules/parseurl/README.md +133 -0
- package/assets/api/vendor_modules/parseurl/index.js +158 -0
- package/assets/api/vendor_modules/parseurl/package.json +40 -0
- package/assets/api/vendor_modules/path-to-regexp/LICENSE +21 -0
- package/assets/api/vendor_modules/path-to-regexp/Readme.md +35 -0
- package/assets/api/vendor_modules/path-to-regexp/index.js +158 -0
- package/assets/api/vendor_modules/path-to-regexp/package.json +30 -0
- package/assets/api/vendor_modules/proxy-addr/HISTORY.md +167 -0
- package/assets/api/vendor_modules/proxy-addr/LICENSE +22 -0
- package/assets/api/vendor_modules/proxy-addr/README.md +139 -0
- package/assets/api/vendor_modules/proxy-addr/index.js +359 -0
- package/assets/api/vendor_modules/proxy-addr/package.json +51 -0
- package/assets/api/vendor_modules/qs/.editorconfig +46 -0
- package/assets/api/vendor_modules/qs/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/qs/.github/SECURITY.md +11 -0
- package/assets/api/vendor_modules/qs/.github/THREAT_MODEL.md +78 -0
- package/assets/api/vendor_modules/qs/.nycrc +13 -0
- package/assets/api/vendor_modules/qs/CHANGELOG.md +833 -0
- package/assets/api/vendor_modules/qs/LICENSE.md +29 -0
- package/assets/api/vendor_modules/qs/README.md +758 -0
- package/assets/api/vendor_modules/qs/dist/qs.js +141 -0
- package/assets/api/vendor_modules/qs/eslint.config.mjs +57 -0
- package/assets/api/vendor_modules/qs/lib/formats.js +23 -0
- package/assets/api/vendor_modules/qs/lib/index.js +11 -0
- package/assets/api/vendor_modules/qs/lib/parse.js +414 -0
- package/assets/api/vendor_modules/qs/lib/stringify.js +363 -0
- package/assets/api/vendor_modules/qs/lib/utils.js +381 -0
- package/assets/api/vendor_modules/qs/package.json +95 -0
- package/assets/api/vendor_modules/qs/test/empty-keys-cases.js +267 -0
- package/assets/api/vendor_modules/qs/test/parse.js +1933 -0
- package/assets/api/vendor_modules/qs/test/stringify.js +1448 -0
- package/assets/api/vendor_modules/qs/test/utils.js +626 -0
- package/assets/api/vendor_modules/range-parser/HISTORY.md +56 -0
- package/assets/api/vendor_modules/range-parser/LICENSE +23 -0
- package/assets/api/vendor_modules/range-parser/README.md +84 -0
- package/assets/api/vendor_modules/range-parser/index.js +162 -0
- package/assets/api/vendor_modules/range-parser/package.json +44 -0
- package/assets/api/vendor_modules/raw-body/LICENSE +22 -0
- package/assets/api/vendor_modules/raw-body/README.md +223 -0
- package/assets/api/vendor_modules/raw-body/index.d.ts +87 -0
- package/assets/api/vendor_modules/raw-body/index.js +336 -0
- package/assets/api/vendor_modules/raw-body/package.json +47 -0
- package/assets/api/vendor_modules/safe-buffer/LICENSE +21 -0
- package/assets/api/vendor_modules/safe-buffer/README.md +584 -0
- package/assets/api/vendor_modules/safe-buffer/index.d.ts +187 -0
- package/assets/api/vendor_modules/safe-buffer/index.js +65 -0
- package/assets/api/vendor_modules/safe-buffer/package.json +51 -0
- package/assets/api/vendor_modules/safer-buffer/LICENSE +21 -0
- package/assets/api/vendor_modules/safer-buffer/Porting-Buffer.md +268 -0
- package/assets/api/vendor_modules/safer-buffer/Readme.md +156 -0
- package/assets/api/vendor_modules/safer-buffer/dangerous.js +58 -0
- package/assets/api/vendor_modules/safer-buffer/package.json +34 -0
- package/assets/api/vendor_modules/safer-buffer/safer.js +77 -0
- package/assets/api/vendor_modules/safer-buffer/tests.js +406 -0
- package/assets/api/vendor_modules/send/HISTORY.md +538 -0
- package/assets/api/vendor_modules/send/LICENSE +23 -0
- package/assets/api/vendor_modules/send/README.md +327 -0
- package/assets/api/vendor_modules/send/SECURITY.md +24 -0
- package/assets/api/vendor_modules/send/index.js +1142 -0
- package/assets/api/vendor_modules/send/node_modules/ms/index.js +162 -0
- package/assets/api/vendor_modules/send/node_modules/ms/license.md +21 -0
- package/assets/api/vendor_modules/send/node_modules/ms/package.json +38 -0
- package/assets/api/vendor_modules/send/node_modules/ms/readme.md +59 -0
- package/assets/api/vendor_modules/send/package.json +62 -0
- package/assets/api/vendor_modules/serve-static/HISTORY.md +493 -0
- package/assets/api/vendor_modules/serve-static/LICENSE +25 -0
- package/assets/api/vendor_modules/serve-static/README.md +257 -0
- package/assets/api/vendor_modules/serve-static/index.js +209 -0
- package/assets/api/vendor_modules/serve-static/package.json +42 -0
- package/assets/api/vendor_modules/serverless-http/LICENSE.txt +33 -0
- package/assets/api/vendor_modules/serverless-http/README.md +117 -0
- package/assets/api/vendor_modules/serverless-http/lib/finish.js +42 -0
- package/assets/api/vendor_modules/serverless-http/lib/framework/get-framework.js +79 -0
- package/assets/api/vendor_modules/serverless-http/lib/provider/aws/clean-up-event.js +98 -0
- package/assets/api/vendor_modules/serverless-http/lib/provider/aws/create-request.js +110 -0
- package/assets/api/vendor_modules/serverless-http/lib/provider/aws/format-response.js +45 -0
- package/assets/api/vendor_modules/serverless-http/lib/provider/aws/index.js +15 -0
- package/assets/api/vendor_modules/serverless-http/lib/provider/aws/is-binary.js +42 -0
- package/assets/api/vendor_modules/serverless-http/lib/provider/aws/sanitize-headers.js +21 -0
- package/assets/api/vendor_modules/serverless-http/lib/provider/azure/clean-up-request.js +41 -0
- package/assets/api/vendor_modules/serverless-http/lib/provider/azure/create-request.js +45 -0
- package/assets/api/vendor_modules/serverless-http/lib/provider/azure/format-response.js +18 -0
- package/assets/api/vendor_modules/serverless-http/lib/provider/azure/index.js +13 -0
- package/assets/api/vendor_modules/serverless-http/lib/provider/azure/is-binary.js +42 -0
- package/assets/api/vendor_modules/serverless-http/lib/provider/azure/sanitize-headers.js +23 -0
- package/assets/api/vendor_modules/serverless-http/lib/provider/azure/set-cookie.json +1 -0
- package/assets/api/vendor_modules/serverless-http/lib/provider/get-provider.js +17 -0
- package/assets/api/vendor_modules/serverless-http/lib/request.js +38 -0
- package/assets/api/vendor_modules/serverless-http/lib/response.js +135 -0
- package/assets/api/vendor_modules/serverless-http/package.json +93 -0
- package/assets/api/vendor_modules/serverless-http/serverless-http.d.ts +41 -0
- package/assets/api/vendor_modules/serverless-http/serverless-http.js +23 -0
- package/assets/api/vendor_modules/setprototypeof/LICENSE +13 -0
- package/assets/api/vendor_modules/setprototypeof/README.md +31 -0
- package/assets/api/vendor_modules/setprototypeof/index.d.ts +2 -0
- package/assets/api/vendor_modules/setprototypeof/index.js +17 -0
- package/assets/api/vendor_modules/setprototypeof/package.json +38 -0
- package/assets/api/vendor_modules/setprototypeof/test/index.js +24 -0
- package/assets/api/vendor_modules/side-channel/.editorconfig +9 -0
- package/assets/api/vendor_modules/side-channel/.eslintrc +12 -0
- package/assets/api/vendor_modules/side-channel/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/side-channel/.nycrc +13 -0
- package/assets/api/vendor_modules/side-channel/CHANGELOG.md +120 -0
- package/assets/api/vendor_modules/side-channel/LICENSE +21 -0
- package/assets/api/vendor_modules/side-channel/README.md +61 -0
- package/assets/api/vendor_modules/side-channel/index.d.ts +14 -0
- package/assets/api/vendor_modules/side-channel/index.js +46 -0
- package/assets/api/vendor_modules/side-channel/package.json +85 -0
- package/assets/api/vendor_modules/side-channel/test/index.js +120 -0
- package/assets/api/vendor_modules/side-channel/tsconfig.json +9 -0
- package/assets/api/vendor_modules/side-channel-list/.editorconfig +9 -0
- package/assets/api/vendor_modules/side-channel-list/.eslintrc +11 -0
- package/assets/api/vendor_modules/side-channel-list/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/side-channel-list/.nycrc +13 -0
- package/assets/api/vendor_modules/side-channel-list/CHANGELOG.md +36 -0
- package/assets/api/vendor_modules/side-channel-list/LICENSE +21 -0
- package/assets/api/vendor_modules/side-channel-list/README.md +62 -0
- package/assets/api/vendor_modules/side-channel-list/index.d.ts +13 -0
- package/assets/api/vendor_modules/side-channel-list/index.js +111 -0
- package/assets/api/vendor_modules/side-channel-list/list.d.ts +14 -0
- package/assets/api/vendor_modules/side-channel-list/package.json +77 -0
- package/assets/api/vendor_modules/side-channel-list/test/index.js +154 -0
- package/assets/api/vendor_modules/side-channel-list/tsconfig.json +9 -0
- package/assets/api/vendor_modules/side-channel-map/.editorconfig +9 -0
- package/assets/api/vendor_modules/side-channel-map/.eslintrc +11 -0
- package/assets/api/vendor_modules/side-channel-map/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/side-channel-map/.nycrc +13 -0
- package/assets/api/vendor_modules/side-channel-map/CHANGELOG.md +22 -0
- package/assets/api/vendor_modules/side-channel-map/LICENSE +21 -0
- package/assets/api/vendor_modules/side-channel-map/README.md +62 -0
- package/assets/api/vendor_modules/side-channel-map/index.d.ts +15 -0
- package/assets/api/vendor_modules/side-channel-map/index.js +68 -0
- package/assets/api/vendor_modules/side-channel-map/package.json +80 -0
- package/assets/api/vendor_modules/side-channel-map/test/index.js +114 -0
- package/assets/api/vendor_modules/side-channel-map/tsconfig.json +9 -0
- package/assets/api/vendor_modules/side-channel-weakmap/.editorconfig +9 -0
- package/assets/api/vendor_modules/side-channel-weakmap/.eslintrc +12 -0
- package/assets/api/vendor_modules/side-channel-weakmap/.github/FUNDING.yml +12 -0
- package/assets/api/vendor_modules/side-channel-weakmap/.nycrc +13 -0
- package/assets/api/vendor_modules/side-channel-weakmap/CHANGELOG.md +28 -0
- package/assets/api/vendor_modules/side-channel-weakmap/LICENSE +21 -0
- package/assets/api/vendor_modules/side-channel-weakmap/README.md +62 -0
- package/assets/api/vendor_modules/side-channel-weakmap/index.d.ts +15 -0
- package/assets/api/vendor_modules/side-channel-weakmap/index.js +84 -0
- package/assets/api/vendor_modules/side-channel-weakmap/package.json +87 -0
- package/assets/api/vendor_modules/side-channel-weakmap/test/index.js +114 -0
- package/assets/api/vendor_modules/side-channel-weakmap/tsconfig.json +9 -0
- package/assets/api/vendor_modules/statuses/HISTORY.md +87 -0
- package/assets/api/vendor_modules/statuses/LICENSE +23 -0
- package/assets/api/vendor_modules/statuses/README.md +139 -0
- package/assets/api/vendor_modules/statuses/codes.json +65 -0
- package/assets/api/vendor_modules/statuses/index.js +146 -0
- package/assets/api/vendor_modules/statuses/package.json +49 -0
- package/assets/api/vendor_modules/toidentifier/HISTORY.md +9 -0
- package/assets/api/vendor_modules/toidentifier/LICENSE +21 -0
- package/assets/api/vendor_modules/toidentifier/README.md +61 -0
- package/assets/api/vendor_modules/toidentifier/index.js +32 -0
- package/assets/api/vendor_modules/toidentifier/package.json +38 -0
- package/assets/api/vendor_modules/type-is/HISTORY.md +259 -0
- package/assets/api/vendor_modules/type-is/LICENSE +23 -0
- package/assets/api/vendor_modules/type-is/README.md +170 -0
- package/assets/api/vendor_modules/type-is/index.js +266 -0
- package/assets/api/vendor_modules/type-is/package.json +45 -0
- package/assets/api/vendor_modules/unpipe/HISTORY.md +4 -0
- package/assets/api/vendor_modules/unpipe/LICENSE +22 -0
- package/assets/api/vendor_modules/unpipe/README.md +43 -0
- package/assets/api/vendor_modules/unpipe/index.js +69 -0
- package/assets/api/vendor_modules/unpipe/package.json +27 -0
- package/assets/api/vendor_modules/utils-merge/LICENSE +20 -0
- package/assets/api/vendor_modules/utils-merge/README.md +34 -0
- package/assets/api/vendor_modules/utils-merge/index.js +23 -0
- package/assets/api/vendor_modules/utils-merge/package.json +40 -0
- package/assets/api/vendor_modules/vary/HISTORY.md +39 -0
- package/assets/api/vendor_modules/vary/LICENSE +22 -0
- package/assets/api/vendor_modules/vary/README.md +101 -0
- package/assets/api/vendor_modules/vary/index.js +149 -0
- package/assets/api/vendor_modules/vary/package.json +43 -0
- package/assets/federation-presignup/index.js +108 -0
- package/assets/firstadmin/index.js +361 -0
- package/assets/headscale-apikey/index.js +140 -0
- package/assets/invoke-relay/index.js +96 -0
- package/assets/issuer-canary/index.js +71 -0
- package/assets/issuer-publish/index.js +87 -0
- package/assets/keyminter/index.js +209 -0
- package/assets/plugin-authorizer/index.js +1740 -0
- package/assets/plugin-catalog/index.js +881 -0
- package/assets/reapproval/index.js +3761 -0
- package/assets/sg-manager/index.js +176 -0
- package/assets/tailnet-resolver/index.js +55 -0
- package/assets/web/chunk-2MOGDYK4.js +1 -0
- package/assets/web/chunk-2SO4BVIT.js +1 -0
- package/assets/web/chunk-2V6RSAAC.js +1 -0
- package/assets/web/chunk-32GNBTAL.js +1 -0
- package/assets/web/chunk-33SYY2JB.js +1 -0
- package/assets/web/chunk-3VWYT7AX.js +1 -0
- package/assets/web/chunk-4FG4DAWU.js +4 -0
- package/assets/web/chunk-4N2IUS6T.js +1 -0
- package/assets/web/chunk-4SK6XQ6C.js +1 -0
- package/assets/web/chunk-65WE5MXA.js +8 -0
- package/assets/web/chunk-6D7SSSJF.js +1 -0
- package/assets/web/chunk-6KFR7DYY.js +1 -0
- package/assets/web/chunk-A4WHI3ZG.js +8 -0
- package/assets/web/chunk-BNFKRZTP.js +1 -0
- package/assets/web/chunk-CG56PH3M.js +1 -0
- package/assets/web/chunk-CGO25AIM.js +1 -0
- package/assets/web/chunk-CP4XZPOA.js +1 -0
- package/assets/web/chunk-CV7EODPO.js +1 -0
- package/assets/web/chunk-D7TR2ORJ.js +1 -0
- package/assets/web/chunk-DCOFBAKJ.js +1 -0
- package/assets/web/chunk-DOLRLYW7.js +1 -0
- package/assets/web/chunk-EEJ3X466.js +1 -0
- package/assets/web/chunk-EQ4PF25J.js +1 -0
- package/assets/web/chunk-EVP5UVDQ.js +1 -0
- package/assets/web/chunk-EW2VMNHE.js +1 -0
- package/assets/web/chunk-FIUVIKAN.js +1 -0
- package/assets/web/chunk-GHEU25TG.js +1 -0
- package/assets/web/chunk-GK2T2SMO.js +1 -0
- package/assets/web/chunk-GKI3R2JB.js +1 -0
- package/assets/web/chunk-GPKKIOHD.js +2 -0
- package/assets/web/chunk-H4AVFUDM.js +1 -0
- package/assets/web/chunk-H5H727H6.js +1 -0
- package/assets/web/chunk-HGVFH6YM.js +1 -0
- package/assets/web/chunk-HHPIANBK.js +1 -0
- package/assets/web/chunk-HK56COCB.js +1 -0
- package/assets/web/chunk-HZUB7LFV.js +1 -0
- package/assets/web/chunk-I7NTNTBA.js +1 -0
- package/assets/web/chunk-IKK5DQ3Z.js +1 -0
- package/assets/web/chunk-IMH56UBX.js +1 -0
- package/assets/web/chunk-J3SSPCFV.js +1 -0
- package/assets/web/chunk-J4C7C5KO.js +1 -0
- package/assets/web/chunk-J57JB4MU.js +1 -0
- package/assets/web/chunk-JMBXRK3I.js +4 -0
- package/assets/web/chunk-KCCEQIXX.js +1 -0
- package/assets/web/chunk-KEBESIXR.js +1 -0
- package/assets/web/chunk-KPNHT4MK.js +1 -0
- package/assets/web/chunk-LMLXTVZG.js +1 -0
- package/assets/web/chunk-M6OAYNRE.js +1 -0
- package/assets/web/chunk-M7MGX5I4.js +1 -0
- package/assets/web/chunk-MU2VNTNY.js +1 -0
- package/assets/web/chunk-NABAVDRL.js +1 -0
- package/assets/web/chunk-NO5D6WDF.js +1 -0
- package/assets/web/chunk-O4QSFUXB.js +1 -0
- package/assets/web/chunk-OATVFQXO.js +1 -0
- package/assets/web/chunk-P5WRM37W.js +5 -0
- package/assets/web/chunk-PCP6D2SM.js +1 -0
- package/assets/web/chunk-PMMBJK7Q.js +1 -0
- package/assets/web/chunk-PSMER3HX.js +1 -0
- package/assets/web/chunk-QPBWZLCT.js +1 -0
- package/assets/web/chunk-QVABVDO5.js +1 -0
- package/assets/web/chunk-RI77LE5V.js +1 -0
- package/assets/web/chunk-RKGUEXZ2.js +1 -0
- package/assets/web/chunk-RMFH2YTZ.js +1 -0
- package/assets/web/chunk-RROPCBUH.js +1 -0
- package/assets/web/chunk-SJMLX5AT.js +1 -0
- package/assets/web/chunk-TKVALOE4.js +2 -0
- package/assets/web/chunk-TM43WUKM.js +1 -0
- package/assets/web/chunk-VKWV3ANT.js +1 -0
- package/assets/web/chunk-VTMYG6YW.js +1 -0
- package/assets/web/chunk-VWW4SA5R.js +1 -0
- package/assets/web/chunk-WEDAFMID.js +1 -0
- package/assets/web/chunk-WFIHWVQO.js +1 -0
- package/assets/web/chunk-XJM3HDJQ.js +1 -0
- package/assets/web/chunk-YVJV2RUY.js +1 -0
- package/assets/web/chunk-Z3KONI7L.js +1 -0
- package/assets/web/chunk-ZDCURXPS.js +1 -0
- package/assets/web/favicon.ico +0 -0
- package/assets/web/index.html +63 -0
- package/assets/web/main-S6E3BC5O.js +2 -0
- package/assets/web/polyfills-7RSNIJ6J.js +2 -0
- package/assets/web/styles-R6ZUWC6K.css +1 -0
- package/dist/index.d.ts +27 -0
- package/dist/index.js +66 -0
- package/dist/lambdacode/api/services/brandingShapes.d.ts +5 -0
- package/dist/lambdacode/api/services/brandingShapes.js +15 -0
- package/dist/lambdacode/issuer/objects.d.ts +8 -0
- package/dist/lambdacode/issuer/objects.js +11 -0
- package/dist/lambdacode/network/naming.d.ts +52 -0
- package/dist/lambdacode/network/naming.js +67 -0
- package/dist/lib/access-portal-hub.d.ts +53 -0
- package/dist/lib/access-portal-hub.js +87 -0
- package/dist/lib/access-portal.d.ts +32 -0
- package/dist/lib/access-portal.js +174 -0
- package/dist/lib/audit-log.d.ts +18 -0
- package/dist/lib/audit-log.js +25 -0
- package/dist/lib/connector-stack.d.ts +28 -0
- package/dist/lib/connector-stack.js +81 -0
- package/dist/lib/constructs/app-function.d.ts +14 -0
- package/dist/lib/constructs/app-function.js +84 -0
- package/dist/lib/constructs/app-table.d.ts +12 -0
- package/dist/lib/constructs/app-table.js +58 -0
- package/dist/lib/constructs/mirrored-image.d.ts +12 -0
- package/dist/lib/constructs/mirrored-image.js +80 -0
- package/dist/lib/constructs/monitoring.d.ts +21 -0
- package/dist/lib/constructs/monitoring.js +133 -0
- package/dist/lib/constructs/oidc-issuer.d.ts +44 -0
- package/dist/lib/constructs/oidc-issuer.js +234 -0
- package/dist/lib/constructs/scratch-tmpfs.d.ts +5 -0
- package/dist/lib/constructs/scratch-tmpfs.js +48 -0
- package/dist/lib/constructs/sg-manager.d.ts +27 -0
- package/dist/lib/constructs/sg-manager.js +88 -0
- package/dist/lib/constructs/tailnet-connector.d.ts +29 -0
- package/dist/lib/constructs/tailnet-connector.js +177 -0
- package/dist/lib/constructs/tailnet-resolver.d.ts +30 -0
- package/dist/lib/constructs/tailnet-resolver.js +71 -0
- package/dist/lib/constructs/target-account-trust.d.ts +32 -0
- package/dist/lib/constructs/target-account-trust.js +81 -0
- package/dist/lib/constructs/vending-api.d.ts +103 -0
- package/dist/lib/constructs/vending-api.js +203 -0
- package/dist/lib/constructs/web-acl.d.ts +61 -0
- package/dist/lib/constructs/web-acl.js +213 -0
- package/dist/lib/constructs/web-identity.d.ts +49 -0
- package/dist/lib/constructs/web-identity.js +116 -0
- package/dist/lib/creds-stack.d.ts +151 -0
- package/dist/lib/creds-stack.js +592 -0
- package/dist/lib/data-stack.d.ts +53 -0
- package/dist/lib/data-stack.js +282 -0
- package/dist/lib/dimensions-validation.d.ts +20 -0
- package/dist/lib/dimensions-validation.js +51 -0
- package/dist/lib/federation.d.ts +113 -0
- package/dist/lib/federation.js +254 -0
- package/dist/lib/managed-login-branding.json +450 -0
- package/dist/lib/network-stack.d.ts +58 -0
- package/dist/lib/network-stack.js +776 -0
- package/dist/lib/network-validation.d.ts +54 -0
- package/dist/lib/network-validation.js +220 -0
- package/dist/lib/pkg-paths.d.ts +3 -0
- package/dist/lib/pkg-paths.js +51 -0
- package/dist/lib/plugins/plugin-api.d.ts +40 -0
- package/dist/lib/plugins/plugin-api.js +125 -0
- package/dist/lib/plugins/plugin-catalog-activation.d.ts +31 -0
- package/dist/lib/plugins/plugin-catalog-activation.js +109 -0
- package/dist/lib/plugins/registration.d.ts +41 -0
- package/dist/lib/plugins/registration.js +121 -0
- package/dist/lib/plugins/runtime.d.ts +10 -0
- package/dist/lib/plugins/runtime.js +17 -0
- package/dist/lib/project-config.d.ts +164 -0
- package/dist/lib/project-config.js +2 -0
- package/dist/lib/target-account-stack.d.ts +15 -0
- package/dist/lib/target-account-stack.js +59 -0
- package/dist/lib/target-account-template.d.ts +13 -0
- package/dist/lib/target-account-template.js +64 -0
- package/dist/lib/web-cert-stack.d.ts +30 -0
- package/dist/lib/web-cert-stack.js +90 -0
- package/dist/lib/web-stack.d.ts +103 -0
- package/dist/lib/web-stack.js +540 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/README.md +303 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/backend/context.d.ts +31 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/backend/context.js +58 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/backend/index.d.ts +9 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/backend/index.js +26 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/browser/client.d.ts +59 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/browser/client.js +290 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/browser/errors.d.ts +14 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/browser/errors.js +32 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/browser/http.d.ts +72 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/browser/http.js +170 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/browser/index.d.ts +11 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/browser/index.js +28 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/browser/theme-apply.d.ts +22 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/browser/theme-apply.js +22 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/access.d.ts +14 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/access.js +41 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/authorizer.d.ts +17 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/authorizer.js +44 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/canonical.d.ts +2 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/canonical.js +21 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/catalog.d.ts +39 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/catalog.js +18 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/discovery.d.ts +78 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/discovery.js +48 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/fields.d.ts +7 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/fields.js +2 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/manifest.d.ts +59 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/manifest.js +19 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/messages.d.ts +111 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/messages.js +109 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/paths.d.ts +20 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/paths.js +49 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/theme.d.ts +21 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/theme.js +60 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/transport.d.ts +14 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/transport.js +10 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/validate.d.ts +27 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/contracts/validate.js +321 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/fixtures/devHost.d.ts +61 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/fixtures/devHost.js +99 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/fixtures/fakeDocument.d.ts +12 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/fixtures/fakeDocument.js +22 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/fixtures/fakeWindows.d.ts +22 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/fixtures/fakeWindows.js +46 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/fixtures/index.d.ts +4 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/fixtures/index.js +20 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/fixtures/samples.d.ts +37 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/fixtures/samples.js +228 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/host/host.d.ts +47 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/host/host.js +121 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/host/index.d.ts +5 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/host/index.js +22 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/index.d.ts +10 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/dist/index.js +28 -0
- package/node_modules/@fntio/infra-client-plugin-sdk/package.json +99 -0
- package/openapi.yaml +4284 -0
- package/package.json +124 -4
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export declare const PLUGIN_API_ROOT = "/api/plugins";
|
|
2
|
+
export declare const PLUGIN_ASSET_ROOT = "/plugin-assets";
|
|
3
|
+
export declare function pluginApiBaseUrl(pluginId: string): string;
|
|
4
|
+
/** The gateway resource every route of a plugin hangs off: `/api/plugins/<id>/accounts/{accountNumber}`. */
|
|
5
|
+
export declare function pluginAccountRoot(pluginId: string): string;
|
|
6
|
+
/** The gateway resource path template for one registered route. */
|
|
7
|
+
export declare function pluginRouteResourcePath(pluginId: string, routePath: string): string;
|
|
8
|
+
/** The concrete account root a request lands on: the template with the account filled in. */
|
|
9
|
+
export declare function pluginAccountPath(pluginId: string, accountNumber: string): string;
|
|
10
|
+
export interface PluginResourcePath {
|
|
11
|
+
readonly pluginId: string;
|
|
12
|
+
/** The path the route was registered with, relative to the account root; "/" for the root. */
|
|
13
|
+
readonly routePath: string;
|
|
14
|
+
}
|
|
15
|
+
/** The inverse of `pluginRouteResourcePath`: the authorizer resolves a gateway resource template
|
|
16
|
+
* back to the plugin and route it belongs to. `null` for anything that is not one. */
|
|
17
|
+
export declare function parsePluginResourcePath(resource: string): PluginResourcePath | null;
|
|
18
|
+
/** Immutable asset prefix: a new hash for changed bytes, even under the same version. */
|
|
19
|
+
export declare function pluginAssetPrefix(pluginId: string, version: string, assetHash: string): string;
|
|
20
|
+
export declare function pluginUiUrl(assetPrefix: string, entry: string): string;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PLUGIN_ASSET_ROOT = exports.PLUGIN_API_ROOT = void 0;
|
|
4
|
+
exports.pluginApiBaseUrl = pluginApiBaseUrl;
|
|
5
|
+
exports.pluginAccountRoot = pluginAccountRoot;
|
|
6
|
+
exports.pluginRouteResourcePath = pluginRouteResourcePath;
|
|
7
|
+
exports.pluginAccountPath = pluginAccountPath;
|
|
8
|
+
exports.parsePluginResourcePath = parsePluginResourcePath;
|
|
9
|
+
exports.pluginAssetPrefix = pluginAssetPrefix;
|
|
10
|
+
exports.pluginUiUrl = pluginUiUrl;
|
|
11
|
+
const manifest_1 = require("./manifest");
|
|
12
|
+
exports.PLUGIN_API_ROOT = "/api/plugins";
|
|
13
|
+
exports.PLUGIN_ASSET_ROOT = "/plugin-assets";
|
|
14
|
+
function pluginApiBaseUrl(pluginId) {
|
|
15
|
+
return `${exports.PLUGIN_API_ROOT}/${pluginId}`;
|
|
16
|
+
}
|
|
17
|
+
/** The gateway resource every route of a plugin hangs off: `/api/plugins/<id>/accounts/{accountNumber}`. */
|
|
18
|
+
function pluginAccountRoot(pluginId) {
|
|
19
|
+
return `${pluginApiBaseUrl(pluginId)}/accounts/{${manifest_1.PLUGIN_ACCOUNT_PARAM}}`;
|
|
20
|
+
}
|
|
21
|
+
/** The gateway resource path template for one registered route. */
|
|
22
|
+
function pluginRouteResourcePath(pluginId, routePath) {
|
|
23
|
+
return pluginAccountRoot(pluginId) + (routePath === "/" ? "" : routePath);
|
|
24
|
+
}
|
|
25
|
+
/** The concrete account root a request lands on: the template with the account filled in. */
|
|
26
|
+
function pluginAccountPath(pluginId, accountNumber) {
|
|
27
|
+
return pluginAccountRoot(pluginId).replace(`{${manifest_1.PLUGIN_ACCOUNT_PARAM}}`, accountNumber);
|
|
28
|
+
}
|
|
29
|
+
/** The inverse of `pluginRouteResourcePath`: the authorizer resolves a gateway resource template
|
|
30
|
+
* back to the plugin and route it belongs to. `null` for anything that is not one. */
|
|
31
|
+
function parsePluginResourcePath(resource) {
|
|
32
|
+
const prefix = `${exports.PLUGIN_API_ROOT}/`;
|
|
33
|
+
if (!resource.startsWith(prefix))
|
|
34
|
+
return null;
|
|
35
|
+
const pluginId = resource.slice(prefix.length).split("/")[0];
|
|
36
|
+
if (!manifest_1.PLUGIN_ID_PATTERN.test(pluginId))
|
|
37
|
+
return null;
|
|
38
|
+
const root = pluginAccountRoot(pluginId);
|
|
39
|
+
if (resource === root)
|
|
40
|
+
return { pluginId, routePath: "/" };
|
|
41
|
+
return resource.startsWith(`${root}/`) ? { pluginId, routePath: resource.slice(root.length) } : null;
|
|
42
|
+
}
|
|
43
|
+
/** Immutable asset prefix: a new hash for changed bytes, even under the same version. */
|
|
44
|
+
function pluginAssetPrefix(pluginId, version, assetHash) {
|
|
45
|
+
return `${exports.PLUGIN_ASSET_ROOT}/${pluginId}/${version}-${assetHash}`;
|
|
46
|
+
}
|
|
47
|
+
function pluginUiUrl(assetPrefix, entry) {
|
|
48
|
+
return `${assetPrefix}/${entry}`;
|
|
49
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/** The documented subset of the portal's semantic CSS custom properties handed to plugin frames. */
|
|
2
|
+
export declare const PLUGIN_THEME_TOKENS: readonly ["--background", "--surface", "--surface-foreground", "--muted", "--muted-foreground", "--text-secondary", "--placeholder", "--border", "--border-strong", "--ring", "--card-bg", "--popover-bg", "--state-hover", "--state-selected", "--gray-1", "--gray-2", "--gray-3", "--gray-4", "--gray-5", "--gray-6", "--gray-7", "--gray-8", "--gray-9", "--gray-10", "--gray-11", "--gray-12", "--accent-1", "--accent-2", "--accent-3", "--accent-4", "--accent-5", "--accent-6", "--accent-7", "--accent-8", "--accent-9", "--accent-10", "--accent-11", "--accent-12", "--brand-primary", "--brand-primary-hover", "--brand-foreground", "--brand-text", "--brand-muted-foreground", "--success", "--success-muted", "--warning", "--warning-muted", "--danger", "--danger-hover", "--danger-muted", "--radius", "--radius-md", "--radius-lg", "--radius-xl", "--font-sans", "--font-mono", "--ease-standard", "--ease-emphasized"];
|
|
3
|
+
export type PluginThemeToken = (typeof PLUGIN_THEME_TOKENS)[number];
|
|
4
|
+
export type PluginThemeTokens = Partial<Record<PluginThemeToken, string>>;
|
|
5
|
+
export type PluginAppearance = "light" | "dark";
|
|
6
|
+
export interface PluginBranding {
|
|
7
|
+
readonly projectName: string;
|
|
8
|
+
readonly logoUrl?: string;
|
|
9
|
+
}
|
|
10
|
+
export interface PluginTheme {
|
|
11
|
+
readonly appearance: PluginAppearance;
|
|
12
|
+
readonly tokens: PluginThemeTokens;
|
|
13
|
+
readonly branding: PluginBranding;
|
|
14
|
+
}
|
|
15
|
+
export declare function isPluginThemeToken(name: string): name is PluginThemeToken;
|
|
16
|
+
export declare function isPluginTheme(value: unknown): value is PluginTheme;
|
|
17
|
+
/** A token value is a color, length, font stack or easing; anything that could close the rule or
|
|
18
|
+
* pull a resource is dropped rather than written into the plugin document. */
|
|
19
|
+
export declare function isSafeCssValue(value: string): boolean;
|
|
20
|
+
/** A stylesheet that applies the host theme to a plugin document. Unknown tokens are ignored. */
|
|
21
|
+
export declare function pluginThemeCss(theme: PluginTheme, selector?: string): string;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PLUGIN_THEME_TOKENS = void 0;
|
|
4
|
+
exports.isPluginThemeToken = isPluginThemeToken;
|
|
5
|
+
exports.isPluginTheme = isPluginTheme;
|
|
6
|
+
exports.isSafeCssValue = isSafeCssValue;
|
|
7
|
+
exports.pluginThemeCss = pluginThemeCss;
|
|
8
|
+
/** The documented subset of the portal's semantic CSS custom properties handed to plugin frames. */
|
|
9
|
+
exports.PLUGIN_THEME_TOKENS = [
|
|
10
|
+
"--background", "--surface", "--surface-foreground", "--muted", "--muted-foreground",
|
|
11
|
+
"--text-secondary", "--placeholder", "--border", "--border-strong", "--ring",
|
|
12
|
+
"--card-bg", "--popover-bg", "--state-hover", "--state-selected",
|
|
13
|
+
"--gray-1", "--gray-2", "--gray-3", "--gray-4", "--gray-5", "--gray-6",
|
|
14
|
+
"--gray-7", "--gray-8", "--gray-9", "--gray-10", "--gray-11", "--gray-12",
|
|
15
|
+
"--accent-1", "--accent-2", "--accent-3", "--accent-4", "--accent-5", "--accent-6",
|
|
16
|
+
"--accent-7", "--accent-8", "--accent-9", "--accent-10", "--accent-11", "--accent-12",
|
|
17
|
+
"--brand-primary", "--brand-primary-hover", "--brand-foreground", "--brand-text", "--brand-muted-foreground",
|
|
18
|
+
"--success", "--success-muted", "--warning", "--warning-muted",
|
|
19
|
+
"--danger", "--danger-hover", "--danger-muted",
|
|
20
|
+
"--radius", "--radius-md", "--radius-lg", "--radius-xl",
|
|
21
|
+
"--font-sans", "--font-mono", "--ease-standard", "--ease-emphasized",
|
|
22
|
+
];
|
|
23
|
+
const TOKEN_SET = new Set(exports.PLUGIN_THEME_TOKENS);
|
|
24
|
+
function isPluginThemeToken(name) {
|
|
25
|
+
return TOKEN_SET.has(name);
|
|
26
|
+
}
|
|
27
|
+
function isPluginTheme(value) {
|
|
28
|
+
if (!value || typeof value !== "object")
|
|
29
|
+
return false;
|
|
30
|
+
const t = value;
|
|
31
|
+
if (t.appearance !== "light" && t.appearance !== "dark")
|
|
32
|
+
return false;
|
|
33
|
+
if (!t.tokens || typeof t.tokens !== "object" || Array.isArray(t.tokens))
|
|
34
|
+
return false;
|
|
35
|
+
for (const [k, v] of Object.entries(t.tokens)) {
|
|
36
|
+
if (!isPluginThemeToken(k) || typeof v !== "string")
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
39
|
+
const b = t.branding;
|
|
40
|
+
if (!b || typeof b !== "object" || typeof b.projectName !== "string")
|
|
41
|
+
return false;
|
|
42
|
+
if (b.logoUrl !== undefined && typeof b.logoUrl !== "string")
|
|
43
|
+
return false;
|
|
44
|
+
return true;
|
|
45
|
+
}
|
|
46
|
+
/** A token value is a color, length, font stack or easing; anything that could close the rule or
|
|
47
|
+
* pull a resource is dropped rather than written into the plugin document. */
|
|
48
|
+
function isSafeCssValue(value) {
|
|
49
|
+
return value.length > 0 && value.length <= 200 && !/[;{}<>]/.test(value) && !/url\s*\(|expression\s*\(|@import/i.test(value);
|
|
50
|
+
}
|
|
51
|
+
/** A stylesheet that applies the host theme to a plugin document. Unknown tokens are ignored. */
|
|
52
|
+
function pluginThemeCss(theme, selector = ":root") {
|
|
53
|
+
const lines = [`color-scheme: ${theme.appearance};`];
|
|
54
|
+
for (const name of exports.PLUGIN_THEME_TOKENS) {
|
|
55
|
+
const value = theme.tokens[name];
|
|
56
|
+
if (value !== undefined && isSafeCssValue(value))
|
|
57
|
+
lines.push(`${name}: ${value};`);
|
|
58
|
+
}
|
|
59
|
+
return `${selector} {\n ${lines.join("\n ")}\n}\n`;
|
|
60
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface PluginMessagePort {
|
|
2
|
+
postMessage(message: unknown, targetOrigin: string): void;
|
|
3
|
+
}
|
|
4
|
+
export interface PluginMessageEventLike {
|
|
5
|
+
readonly data: unknown;
|
|
6
|
+
readonly origin: string;
|
|
7
|
+
readonly source: unknown;
|
|
8
|
+
}
|
|
9
|
+
export type PluginMessageListener = (event: PluginMessageEventLike) => void;
|
|
10
|
+
export interface PluginMessageListenerTarget {
|
|
11
|
+
addEventListener(type: "message", listener: PluginMessageListener): void;
|
|
12
|
+
removeEventListener(type: "message", listener: PluginMessageListener): void;
|
|
13
|
+
}
|
|
14
|
+
export declare function newPluginProtocolId(prefix: string): string;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// The slice of `Window` the iframe protocol touches, typed structurally so tests and the local
|
|
3
|
+
// development host can supply fakes. A real `Window` satisfies all three.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.newPluginProtocolId = newPluginProtocolId;
|
|
6
|
+
function newPluginProtocolId(prefix) {
|
|
7
|
+
const c = globalThis.crypto;
|
|
8
|
+
const id = typeof c?.randomUUID === "function" ? c.randomUUID() : `${Date.now().toString(36)}-${Math.random().toString(36).slice(2, 12)}`;
|
|
9
|
+
return `${prefix}-${id}`;
|
|
10
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { PluginManifestV1 } from "./manifest";
|
|
2
|
+
export type PluginValidationCode = "not-an-object" | "unknown-field" | "schema-version" | "host-api-version" | "plugin-id" | "display-name" | "description" | "version" | "enabled" | "accounts-empty" | "account-number" | "account-duplicate" | "region" | "region-duplicate" | "permissions-empty" | "permission-id" | "permission-duplicate" | "permission-label" | "ui-empty" | "ui-unknown-entry" | "ui-undeclared-permission" | "ui-entry-path" | "ui-label" | "ui-icon" | "ui-order" | "ui-assets-directory" | "ui-entry-missing" | "route-id" | "route-duplicate-id" | "route-method" | "route-path" | "route-greedy" | "route-reserved-param" | "route-param-duplicate" | "route-param-conflict" | "route-duplicate-shape" | "route-undeclared-permission" | "route-handler-key" | "no-surface" | "manifest-too-large";
|
|
3
|
+
export interface PluginValidationIssue {
|
|
4
|
+
readonly code: PluginValidationCode;
|
|
5
|
+
/** Dotted location in the manifest, "" for the whole document. */
|
|
6
|
+
readonly path: string;
|
|
7
|
+
readonly message: string;
|
|
8
|
+
}
|
|
9
|
+
export type PluginValidationResult = {
|
|
10
|
+
readonly ok: true;
|
|
11
|
+
readonly manifest: PluginManifestV1;
|
|
12
|
+
} | {
|
|
13
|
+
readonly ok: false;
|
|
14
|
+
readonly issues: readonly PluginValidationIssue[];
|
|
15
|
+
};
|
|
16
|
+
export interface ValidatePluginManifestOptions {
|
|
17
|
+
/** When given, every route's handlerKey must be one of these. */
|
|
18
|
+
readonly handlerKeys?: readonly string[];
|
|
19
|
+
}
|
|
20
|
+
export declare class PluginValidationError extends Error {
|
|
21
|
+
readonly issues: readonly PluginValidationIssue[];
|
|
22
|
+
constructor(issues: readonly PluginValidationIssue[], subject?: string);
|
|
23
|
+
}
|
|
24
|
+
export declare function assertPluginManifest(input: unknown, options?: ValidatePluginManifestOptions): PluginManifestV1;
|
|
25
|
+
export declare function validatePluginManifest(input: unknown, options?: ValidatePluginManifestOptions): PluginValidationResult;
|
|
26
|
+
/** The file part of an entry ("index.html#/user" → "index.html"). */
|
|
27
|
+
export declare function pluginEntryFile(entry: string): string;
|
|
@@ -0,0 +1,321 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PluginValidationError = void 0;
|
|
4
|
+
exports.assertPluginManifest = assertPluginManifest;
|
|
5
|
+
exports.validatePluginManifest = validatePluginManifest;
|
|
6
|
+
exports.pluginEntryFile = pluginEntryFile;
|
|
7
|
+
const manifest_1 = require("./manifest");
|
|
8
|
+
class PluginValidationError extends Error {
|
|
9
|
+
issues;
|
|
10
|
+
constructor(issues, subject = "Plugin manifest") {
|
|
11
|
+
super(`${subject} is invalid:\n` +
|
|
12
|
+
issues.map((i) => ` - ${i.path || "(manifest)"}: ${i.message} [${i.code}]`).join("\n"));
|
|
13
|
+
this.issues = issues;
|
|
14
|
+
this.name = "PluginValidationError";
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
exports.PluginValidationError = PluginValidationError;
|
|
18
|
+
function assertPluginManifest(input, options) {
|
|
19
|
+
const result = validatePluginManifest(input, options);
|
|
20
|
+
if (!result.ok)
|
|
21
|
+
throw new PluginValidationError(result.issues);
|
|
22
|
+
return result.manifest;
|
|
23
|
+
}
|
|
24
|
+
const TOP_LEVEL_KEYS = ["schemaVersion", "id", "displayName", "description", "version", "hostApiVersion", "enabled", "accounts", "permissions", "ui", "routes"];
|
|
25
|
+
const ACCOUNT_KEYS = ["accountNumber", "regions"];
|
|
26
|
+
const PERMISSION_KEYS = ["id", "label", "description"];
|
|
27
|
+
const UI_KEYS = ["user", "admin"];
|
|
28
|
+
const UI_ENTRY_KEYS = ["label", "icon", "order", "entry"];
|
|
29
|
+
const ROUTE_KEYS = ["id", "method", "path", "permission", "handlerKey"];
|
|
30
|
+
const isRecord = (v) => typeof v === "object" && v !== null && !Array.isArray(v);
|
|
31
|
+
const isText = (v, max) => typeof v === "string" && v.trim().length > 0 && v.length <= max;
|
|
32
|
+
function unknownKeys(obj, known, at, code, issue) {
|
|
33
|
+
for (const key of Object.keys(obj)) {
|
|
34
|
+
if (!known.includes(key))
|
|
35
|
+
issue(code, at ? `${at}.${key}` : key, `unknown field "${key}"`);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
function validatePluginManifest(input, options = {}) {
|
|
39
|
+
const issues = [];
|
|
40
|
+
const issue = (code, path, message) => { issues.push({ code, path, message }); };
|
|
41
|
+
if (!isRecord(input)) {
|
|
42
|
+
return { ok: false, issues: [{ code: "not-an-object", path: "", message: "manifest must be an object" }] };
|
|
43
|
+
}
|
|
44
|
+
const m = input;
|
|
45
|
+
unknownKeys(m, TOP_LEVEL_KEYS, "", "unknown-field", issue);
|
|
46
|
+
if (m.schemaVersion !== manifest_1.PLUGIN_MANIFEST_SCHEMA_VERSION)
|
|
47
|
+
issue("schema-version", "schemaVersion", `must be ${manifest_1.PLUGIN_MANIFEST_SCHEMA_VERSION}`);
|
|
48
|
+
if (m.hostApiVersion !== manifest_1.PLUGIN_HOST_API_VERSION)
|
|
49
|
+
issue("host-api-version", "hostApiVersion", `must be ${manifest_1.PLUGIN_HOST_API_VERSION}`);
|
|
50
|
+
if (typeof m.id !== "string" || !manifest_1.PLUGIN_ID_PATTERN.test(m.id))
|
|
51
|
+
issue("plugin-id", "id", "lowercase letters, digits and hyphens, starting with a letter, 1-64 characters");
|
|
52
|
+
if (!isText(m.displayName, manifest_1.PLUGIN_DISPLAY_NAME_MAX))
|
|
53
|
+
issue("display-name", "displayName", `1-${manifest_1.PLUGIN_DISPLAY_NAME_MAX} characters`);
|
|
54
|
+
if (m.description !== undefined && (typeof m.description !== "string" || m.description.length > manifest_1.PLUGIN_DESCRIPTION_MAX))
|
|
55
|
+
issue("description", "description", `a string of at most ${manifest_1.PLUGIN_DESCRIPTION_MAX} characters`);
|
|
56
|
+
if (typeof m.version !== "string" || !manifest_1.PLUGIN_VERSION_PATTERN.test(m.version))
|
|
57
|
+
issue("version", "version", "letters, digits, dots, plus and hyphens, 1-64 characters (it becomes part of the asset URL)");
|
|
58
|
+
if (typeof m.enabled !== "boolean")
|
|
59
|
+
issue("enabled", "enabled", "must be true or false");
|
|
60
|
+
validateAccounts(m.accounts, issue);
|
|
61
|
+
const declared = validatePermissions(m.permissions, issue);
|
|
62
|
+
const uiEntries = m.ui === undefined ? 0 : validateUi(m.ui, declared, issue);
|
|
63
|
+
const routeCount = validateRoutes(m.routes, declared, options.handlerKeys, issue);
|
|
64
|
+
if (uiEntries === 0 && routeCount === 0)
|
|
65
|
+
issue("no-surface", "", "declare at least one UI entry or one route");
|
|
66
|
+
if (issues.length === 0) {
|
|
67
|
+
const bytes = new TextEncoder().encode(JSON.stringify(m)).length;
|
|
68
|
+
if (bytes > manifest_1.PLUGIN_MANIFEST_MAX_BYTES)
|
|
69
|
+
issue("manifest-too-large", "", `${bytes} bytes; the limit is ${manifest_1.PLUGIN_MANIFEST_MAX_BYTES}`);
|
|
70
|
+
}
|
|
71
|
+
if (issues.length > 0)
|
|
72
|
+
return { ok: false, issues };
|
|
73
|
+
return { ok: true, manifest: JSON.parse(JSON.stringify(m)) };
|
|
74
|
+
}
|
|
75
|
+
function validateAccounts(accounts, issue) {
|
|
76
|
+
if (!Array.isArray(accounts) || accounts.length === 0) {
|
|
77
|
+
issue("accounts-empty", "accounts", "bind the plugin to at least one AWS account");
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
const seen = new Set();
|
|
81
|
+
accounts.forEach((a, i) => {
|
|
82
|
+
const at = `accounts[${i}]`;
|
|
83
|
+
if (!isRecord(a)) {
|
|
84
|
+
issue("account-number", at, "must be an object with accountNumber");
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
unknownKeys(a, ACCOUNT_KEYS, at, "unknown-field", issue);
|
|
88
|
+
if (typeof a.accountNumber !== "string" || !manifest_1.AWS_ACCOUNT_PATTERN.test(a.accountNumber)) {
|
|
89
|
+
issue("account-number", `${at}.accountNumber`, "must be a 12-digit AWS account id");
|
|
90
|
+
}
|
|
91
|
+
else if (seen.has(a.accountNumber)) {
|
|
92
|
+
issue("account-duplicate", `${at}.accountNumber`, `account ${a.accountNumber} is bound twice`);
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
seen.add(a.accountNumber);
|
|
96
|
+
}
|
|
97
|
+
if (a.regions !== undefined) {
|
|
98
|
+
if (!Array.isArray(a.regions) || a.regions.length === 0) {
|
|
99
|
+
issue("region", `${at}.regions`, "omit regions or list at least one");
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
const regs = new Set();
|
|
103
|
+
a.regions.forEach((r, j) => {
|
|
104
|
+
if (typeof r !== "string" || !manifest_1.AWS_REGION_PATTERN.test(r))
|
|
105
|
+
issue("region", `${at}.regions[${j}]`, `"${String(r)}" is not an AWS region name`);
|
|
106
|
+
else if (regs.has(r))
|
|
107
|
+
issue("region-duplicate", `${at}.regions[${j}]`, `${r} is listed twice`);
|
|
108
|
+
else
|
|
109
|
+
regs.add(r);
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
}
|
|
115
|
+
function validatePermissions(permissions, issue) {
|
|
116
|
+
const declared = [];
|
|
117
|
+
if (!Array.isArray(permissions) || permissions.length === 0) {
|
|
118
|
+
issue("permissions-empty", "permissions", `declare "user", "admin", or both`);
|
|
119
|
+
return declared;
|
|
120
|
+
}
|
|
121
|
+
permissions.forEach((p, i) => {
|
|
122
|
+
const at = `permissions[${i}]`;
|
|
123
|
+
if (!isRecord(p)) {
|
|
124
|
+
issue("permission-id", at, "must be an object with id and label");
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
127
|
+
unknownKeys(p, PERMISSION_KEYS, at, "unknown-field", issue);
|
|
128
|
+
if (typeof p.id !== "string" || !manifest_1.PLUGIN_PERMISSIONS.includes(p.id)) {
|
|
129
|
+
issue("permission-id", `${at}.id`, `must be "user" or "admin"`);
|
|
130
|
+
}
|
|
131
|
+
else if (declared.includes(p.id)) {
|
|
132
|
+
issue("permission-duplicate", `${at}.id`, `"${p.id}" is declared twice`);
|
|
133
|
+
}
|
|
134
|
+
else {
|
|
135
|
+
declared.push(p.id);
|
|
136
|
+
}
|
|
137
|
+
if (!isText(p.label, manifest_1.PLUGIN_DISPLAY_NAME_MAX))
|
|
138
|
+
issue("permission-label", `${at}.label`, `1-${manifest_1.PLUGIN_DISPLAY_NAME_MAX} characters`);
|
|
139
|
+
if (p.description !== undefined && (typeof p.description !== "string" || p.description.length > manifest_1.PLUGIN_DESCRIPTION_MAX))
|
|
140
|
+
issue("description", `${at}.description`, `a string of at most ${manifest_1.PLUGIN_DESCRIPTION_MAX} characters`);
|
|
141
|
+
});
|
|
142
|
+
return declared;
|
|
143
|
+
}
|
|
144
|
+
function validateUi(ui, declared, issue) {
|
|
145
|
+
if (!isRecord(ui)) {
|
|
146
|
+
issue("ui-unknown-entry", "ui", "must be an object with user and/or admin entries");
|
|
147
|
+
return 0;
|
|
148
|
+
}
|
|
149
|
+
unknownKeys(ui, UI_KEYS, "ui", "ui-unknown-entry", issue);
|
|
150
|
+
let count = 0;
|
|
151
|
+
for (const kind of UI_KEYS) {
|
|
152
|
+
const entry = ui[kind];
|
|
153
|
+
if (entry === undefined)
|
|
154
|
+
continue;
|
|
155
|
+
count++;
|
|
156
|
+
const at = `ui.${kind}`;
|
|
157
|
+
if (!isRecord(entry)) {
|
|
158
|
+
issue("ui-entry-path", at, "must be an object with label and entry");
|
|
159
|
+
continue;
|
|
160
|
+
}
|
|
161
|
+
unknownKeys(entry, UI_ENTRY_KEYS, at, "unknown-field", issue);
|
|
162
|
+
if (!declared.includes(kind))
|
|
163
|
+
issue("ui-undeclared-permission", at, `a ${kind} entry needs the "${kind}" permission declared`);
|
|
164
|
+
if (!isText(entry.label, manifest_1.PLUGIN_DISPLAY_NAME_MAX))
|
|
165
|
+
issue("ui-label", `${at}.label`, `1-${manifest_1.PLUGIN_DISPLAY_NAME_MAX} characters`);
|
|
166
|
+
if (entry.icon !== undefined && (typeof entry.icon !== "string" || !manifest_1.PLUGIN_ICON_PATTERN.test(entry.icon)))
|
|
167
|
+
issue("ui-icon", `${at}.icon`, "a host icon identifier: lowercase letters, digits, hyphens");
|
|
168
|
+
if (entry.order !== undefined && !Number.isInteger(entry.order))
|
|
169
|
+
issue("ui-order", `${at}.order`, "must be an integer");
|
|
170
|
+
validateEntryPath(entry.entry, `${at}.entry`, issue);
|
|
171
|
+
}
|
|
172
|
+
if (count === 0)
|
|
173
|
+
issue("ui-empty", "ui", "omit ui or give it a user and/or admin entry");
|
|
174
|
+
return count;
|
|
175
|
+
}
|
|
176
|
+
/** The file part of an entry ("index.html#/user" → "index.html"). */
|
|
177
|
+
function pluginEntryFile(entry) {
|
|
178
|
+
const hash = entry.indexOf("#");
|
|
179
|
+
return hash === -1 ? entry : entry.slice(0, hash);
|
|
180
|
+
}
|
|
181
|
+
function validateEntryPath(entry, at, issue) {
|
|
182
|
+
if (typeof entry !== "string" || entry.length === 0) {
|
|
183
|
+
issue("ui-entry-path", at, `required: a file inside the asset directory, e.g. "index.html#/user"`);
|
|
184
|
+
return;
|
|
185
|
+
}
|
|
186
|
+
const file = pluginEntryFile(entry);
|
|
187
|
+
if (file === "")
|
|
188
|
+
issue("ui-entry-path", at, `must name a file before the "#"`);
|
|
189
|
+
else if (/^[a-z][a-z0-9+.-]*:/i.test(file) || file.startsWith("//"))
|
|
190
|
+
issue("ui-entry-path", at, "must be relative to the asset directory, not a URL");
|
|
191
|
+
else if (file.startsWith("/"))
|
|
192
|
+
issue("ui-entry-path", at, `must not start with "/"`);
|
|
193
|
+
else if (file.includes("\\") || file.includes("?"))
|
|
194
|
+
issue("ui-entry-path", at, `must not contain "\\" or "?"`);
|
|
195
|
+
else if (file.split("/").some((s) => s === "" || s === "." || s === ".."))
|
|
196
|
+
issue("ui-entry-path", at, `must not contain empty, "." or ".." segments`);
|
|
197
|
+
else if (!/^[A-Za-z0-9._~/-]+$/.test(file))
|
|
198
|
+
issue("ui-entry-path", at, "letters, digits, ., _, ~, - and / only");
|
|
199
|
+
}
|
|
200
|
+
function parseRoutePath(path, at, issue) {
|
|
201
|
+
if (typeof path !== "string" || !path.startsWith("/")) {
|
|
202
|
+
issue("route-path", at, `must start with "/"`);
|
|
203
|
+
return;
|
|
204
|
+
}
|
|
205
|
+
if (path === "/")
|
|
206
|
+
return { segments: [], shape: "/" };
|
|
207
|
+
if (path.endsWith("/")) {
|
|
208
|
+
issue("route-path", at, `must not end with "/"`);
|
|
209
|
+
return;
|
|
210
|
+
}
|
|
211
|
+
const segments = [];
|
|
212
|
+
const names = new Set();
|
|
213
|
+
let bad = false;
|
|
214
|
+
for (const part of path.slice(1).split("/")) {
|
|
215
|
+
if (part === "") {
|
|
216
|
+
issue("route-path", at, "empty segment");
|
|
217
|
+
bad = true;
|
|
218
|
+
continue;
|
|
219
|
+
}
|
|
220
|
+
const param = /^\{([A-Za-z][A-Za-z0-9]*)\}$/.exec(part);
|
|
221
|
+
if (param) {
|
|
222
|
+
const name = param[1];
|
|
223
|
+
if (name === manifest_1.PLUGIN_ACCOUNT_PARAM) {
|
|
224
|
+
issue("route-reserved-param", at, `{${manifest_1.PLUGIN_ACCOUNT_PARAM}} is the platform's account segment`);
|
|
225
|
+
bad = true;
|
|
226
|
+
}
|
|
227
|
+
if (names.has(name)) {
|
|
228
|
+
issue("route-param-duplicate", at, `{${name}} appears twice`);
|
|
229
|
+
bad = true;
|
|
230
|
+
}
|
|
231
|
+
names.add(name);
|
|
232
|
+
segments.push({ kind: "param", name });
|
|
233
|
+
continue;
|
|
234
|
+
}
|
|
235
|
+
if (part.includes("+") || part === "*") {
|
|
236
|
+
issue("route-greedy", at, `greedy segments like "{proxy+}" are not supported`);
|
|
237
|
+
bad = true;
|
|
238
|
+
continue;
|
|
239
|
+
}
|
|
240
|
+
if (part.startsWith("{")) {
|
|
241
|
+
issue("route-path", at, `malformed parameter "${part}": use {name} with letters and digits`);
|
|
242
|
+
bad = true;
|
|
243
|
+
continue;
|
|
244
|
+
}
|
|
245
|
+
if (!/^[A-Za-z0-9._~-]+$/.test(part)) {
|
|
246
|
+
issue("route-path", at, `segment "${part}" has characters outside letters, digits, ., _, ~, -`);
|
|
247
|
+
bad = true;
|
|
248
|
+
continue;
|
|
249
|
+
}
|
|
250
|
+
segments.push({ kind: "literal", value: part });
|
|
251
|
+
}
|
|
252
|
+
if (bad)
|
|
253
|
+
return;
|
|
254
|
+
return { segments, shape: "/" + segments.map((s) => (s.kind === "param" ? "{}" : s.value)).join("/") };
|
|
255
|
+
}
|
|
256
|
+
function validateRoutes(routes, declared, handlerKeys, issue) {
|
|
257
|
+
if (routes === undefined) {
|
|
258
|
+
issue("route-path", "routes", "required: an array (empty for a UI-only plugin)");
|
|
259
|
+
return 0;
|
|
260
|
+
}
|
|
261
|
+
if (!Array.isArray(routes)) {
|
|
262
|
+
issue("route-path", "routes", "must be an array");
|
|
263
|
+
return 0;
|
|
264
|
+
}
|
|
265
|
+
const ids = new Set();
|
|
266
|
+
const shapes = new Map();
|
|
267
|
+
const paramAt = new Map();
|
|
268
|
+
routes.forEach((r, i) => {
|
|
269
|
+
const at = `routes[${i}]`;
|
|
270
|
+
if (!isRecord(r)) {
|
|
271
|
+
issue("route-id", at, "must be an object with id, method, path, permission, handlerKey");
|
|
272
|
+
return;
|
|
273
|
+
}
|
|
274
|
+
unknownKeys(r, ROUTE_KEYS, at, "unknown-field", issue);
|
|
275
|
+
const routeId = typeof r.id === "string" ? r.id : `#${i}`;
|
|
276
|
+
if (typeof r.id !== "string" || !manifest_1.PLUGIN_ID_PATTERN.test(r.id))
|
|
277
|
+
issue("route-id", `${at}.id`, "lowercase letters, digits and hyphens, starting with a letter, 1-64 characters");
|
|
278
|
+
else if (ids.has(r.id))
|
|
279
|
+
issue("route-duplicate-id", `${at}.id`, `route id "${r.id}" is used twice`);
|
|
280
|
+
else
|
|
281
|
+
ids.add(r.id);
|
|
282
|
+
const method = typeof r.method === "string" && manifest_1.PLUGIN_ROUTE_METHODS.includes(r.method) ? r.method : undefined;
|
|
283
|
+
if (!method)
|
|
284
|
+
issue("route-method", `${at}.method`, `one of ${manifest_1.PLUGIN_ROUTE_METHODS.join(", ")} (no ANY)`);
|
|
285
|
+
if (typeof r.permission !== "string" || !manifest_1.PLUGIN_PERMISSIONS.includes(r.permission))
|
|
286
|
+
issue("route-undeclared-permission", `${at}.permission`, `must be "user" or "admin"`);
|
|
287
|
+
else if (!declared.includes(r.permission))
|
|
288
|
+
issue("route-undeclared-permission", `${at}.permission`, `"${r.permission}" is not declared in permissions`);
|
|
289
|
+
if (typeof r.handlerKey !== "string" || r.handlerKey.length === 0)
|
|
290
|
+
issue("route-handler-key", `${at}.handlerKey`, "required: the key of a backend handler");
|
|
291
|
+
else if (handlerKeys && !handlerKeys.includes(r.handlerKey))
|
|
292
|
+
issue("route-handler-key", `${at}.handlerKey`, `no handler named "${r.handlerKey}" (have: ${handlerKeys.join(", ") || "none"})`);
|
|
293
|
+
const parsed = parseRoutePath(r.path, `${at}.path`, issue);
|
|
294
|
+
if (!parsed || !method)
|
|
295
|
+
return;
|
|
296
|
+
const shapeKey = `${method} ${parsed.shape}`;
|
|
297
|
+
const dup = shapes.get(shapeKey);
|
|
298
|
+
if (dup)
|
|
299
|
+
issue("route-duplicate-shape", `${at}.path`, `${method} ${parsed.shape} is already registered by route "${dup}" (parameter names do not distinguish routes)`);
|
|
300
|
+
else
|
|
301
|
+
shapes.set(shapeKey, routeId);
|
|
302
|
+
let prefix = "";
|
|
303
|
+
for (const seg of parsed.segments) {
|
|
304
|
+
if (seg.kind === "param") {
|
|
305
|
+
const key = `${prefix}/{}`;
|
|
306
|
+
const prev = paramAt.get(key);
|
|
307
|
+
if (prev && prev.name !== seg.name) {
|
|
308
|
+
issue("route-param-conflict", `${at}.path`, `{${seg.name}} conflicts with {${prev.name}} in route "${prev.routeId}": API Gateway allows one parameter name per position`);
|
|
309
|
+
}
|
|
310
|
+
else if (!prev) {
|
|
311
|
+
paramAt.set(key, { name: seg.name, routeId });
|
|
312
|
+
}
|
|
313
|
+
prefix = key;
|
|
314
|
+
}
|
|
315
|
+
else {
|
|
316
|
+
prefix = `${prefix}/${seg.value}`;
|
|
317
|
+
}
|
|
318
|
+
}
|
|
319
|
+
});
|
|
320
|
+
return routes.length;
|
|
321
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { PluginAccountContext, PluginInfoContext, PluginSession, PluginUserContext } from "../contracts/messages";
|
|
2
|
+
import { PluginAppearance, PluginTheme } from "../contracts/theme";
|
|
3
|
+
import { PluginMessageListenerTarget } from "../contracts/transport";
|
|
4
|
+
import { PluginHost, PluginHostFrame, PluginSessionEndReason } from "../host/host";
|
|
5
|
+
export type DevHostEvent = {
|
|
6
|
+
readonly type: "ready";
|
|
7
|
+
readonly instanceId: string;
|
|
8
|
+
readonly sdkVersion: string;
|
|
9
|
+
readonly reconnect: boolean;
|
|
10
|
+
} | {
|
|
11
|
+
readonly type: "handshakeTimeout";
|
|
12
|
+
} | {
|
|
13
|
+
readonly type: "refresh";
|
|
14
|
+
readonly outcome: "renewed" | "failed";
|
|
15
|
+
} | {
|
|
16
|
+
readonly type: "accessRefresh";
|
|
17
|
+
readonly reason: "forbidden" | "manual";
|
|
18
|
+
} | {
|
|
19
|
+
readonly type: "incompatible";
|
|
20
|
+
readonly version: unknown;
|
|
21
|
+
} | {
|
|
22
|
+
readonly type: "ended";
|
|
23
|
+
readonly reason: PluginSessionEndReason;
|
|
24
|
+
};
|
|
25
|
+
export interface DevHostOptions {
|
|
26
|
+
readonly frame: PluginHostFrame;
|
|
27
|
+
readonly listenOn: PluginMessageListenerTarget;
|
|
28
|
+
readonly origin: string;
|
|
29
|
+
readonly plugin?: Partial<PluginInfoContext>;
|
|
30
|
+
readonly entry?: "user" | "admin";
|
|
31
|
+
readonly user?: Partial<PluginUserContext>;
|
|
32
|
+
readonly accounts?: readonly PluginAccountContext[];
|
|
33
|
+
readonly appearance?: PluginAppearance;
|
|
34
|
+
readonly theme?: PluginTheme;
|
|
35
|
+
/** How long a fixture token lives; default five minutes. */
|
|
36
|
+
readonly tokenLifetimeMs?: number;
|
|
37
|
+
readonly handshakeTimeoutMs?: number;
|
|
38
|
+
readonly onEvent?: (event: DevHostEvent) => void;
|
|
39
|
+
}
|
|
40
|
+
export interface DevHost extends PluginHost {
|
|
41
|
+
session(): PluginSession;
|
|
42
|
+
accounts(): readonly PluginAccountContext[];
|
|
43
|
+
/** Mint a new fixture token and push it, as the portal's renew timer would. */
|
|
44
|
+
renewSession(): PluginSession;
|
|
45
|
+
/** Push the current token with an expiry in the past: the plugin's next request asks to renew. */
|
|
46
|
+
expireSession(): void;
|
|
47
|
+
/** The next renewal request ends the session instead (the portal's 12 h wall). */
|
|
48
|
+
failNextRefresh(): void;
|
|
49
|
+
/** The page never loads (a wrong `entry`, an asset missing from the build, a frame sandboxed
|
|
50
|
+
* without `allow-same-origin`): reports `handshakeTimeout` now instead of after
|
|
51
|
+
* `handshakeTimeoutMs`, once, and keeps listening in case the frame connects after all. */
|
|
52
|
+
failLoad(): void;
|
|
53
|
+
grant(account: PluginAccountContext): void;
|
|
54
|
+
revoke(accountNumber: string): void;
|
|
55
|
+
setEntryAvailable(available: boolean): void;
|
|
56
|
+
setAppearance(appearance: PluginAppearance): void;
|
|
57
|
+
setTheme(theme: PluginTheme): void;
|
|
58
|
+
signOut(): void;
|
|
59
|
+
}
|
|
60
|
+
export declare function devHostTheme(appearance: PluginAppearance): PluginTheme;
|
|
61
|
+
export declare function createDevHost(options: DevHostOptions): DevHost;
|