gina 0.6.33 → 0.7.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 +31 -0
- package/CONVENTIONS.md +1 -1
- package/README.md +61 -79
- package/ROADMAP.md +21 -16
- package/SECURITY.md +37 -0
- package/bin/gina +11 -7
- package/framework/v0.7.0/VERSION +1 -0
- package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/js/gina.js +124 -90
- package/framework/v0.7.0/core/asset/plugin/dist/vendor/gina/js/gina.min.js +720 -0
- package/framework/v0.7.0/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
- package/framework/v0.7.0/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
- package/framework/{v0.6.33 → v0.7.0}/core/config.js +15 -0
- package/framework/v0.7.0/core/config.requirements-anchor.js +218 -0
- package/framework/{v0.6.33 → v0.7.0}/core/controller/controller.js +101 -7
- package/framework/{v0.6.33 → v0.7.0}/core/controller/controller.render-swig-async.js +7 -3
- package/framework/{v0.6.33 → v0.7.0}/core/controller/controller.render-swig.js +53 -13
- package/framework/{v0.6.33 → v0.7.0}/core/gna.js +16 -3
- package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/validator/src/form-validator.js +74 -16
- package/framework/{v0.6.33 → v0.7.0}/core/server.express.js +143 -10
- package/framework/{v0.6.33 → v0.7.0}/core/server.isaac.js +6 -1
- package/framework/{v0.6.33 → v0.7.0}/core/server.js +240 -255
- package/framework/v0.7.0/core/server.route-candidates.js +326 -0
- package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle/config/connectors.json +1 -1
- package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle/config/settings.json +6 -0
- package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle/controllers/setup.js +9 -2
- package/framework/{v0.6.33 → v0.7.0}/helpers/path.js +36 -6
- package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/restart.js +100 -31
- package/framework/{v0.6.33 → v0.7.0}/lib/cmd/connector/list.js +20 -2
- package/framework/{v0.6.33 → v0.7.0}/lib/cmd/env/add.js +34 -7
- package/framework/{v0.6.33 → v0.7.0}/lib/cmd/env/set.js +4 -0
- package/framework/{v0.6.33 → v0.7.0}/lib/cmd/env/unset.js +4 -0
- package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/init.js +76 -19
- package/framework/{v0.6.33 → v0.7.0}/lib/cmd/helper.js +16 -4
- package/framework/{v0.6.33 → v0.7.0}/lib/cmd/port/list.js +13 -4
- package/framework/{v0.6.33 → v0.7.0}/lib/cmd/port/reset.js +28 -7
- package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/add.js +63 -20
- package/framework/v0.7.0/lib/cmd/project/rename.js +285 -0
- package/framework/{v0.6.33 → v0.7.0}/lib/cmd/protocol/set.js +3 -0
- package/framework/{v0.6.33 → v0.7.0}/lib/logger/src/containers/mq/listener.js +20 -5
- package/framework/{v0.6.33 → v0.7.0}/lib/routing/src/main.js +48 -71
- package/framework/{v0.6.33 → v0.7.0}/lib/swig-filters/src/main.js +85 -0
- package/framework/{v0.6.33 → v0.7.0}/package.json +1 -1
- package/gna.js +5 -4
- package/llms.txt +36 -34
- package/package.json +4 -4
- package/schema/routing.json +2 -2
- package/schema/settings.json +3 -3
- package/script/generate_gna_types.js +1 -1
- package/script/post_install.js +100 -26
- package/script/pre_install.js +49 -8
- package/types/globals.d.ts +3 -1
- package/types/gna.d.ts +8 -2
- package/types/index.d.ts +1 -0
- package/utils/helper.js +60 -10
- package/framework/v0.6.33/VERSION +0 -1
- package/framework/v0.6.33/core/asset/plugin/dist/vendor/gina/js/gina.min.js +0 -721
- package/framework/v0.6.33/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
- package/framework/v0.6.33/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
- package/framework/v0.6.33/lib/cmd/project/rename.js +0 -199
- package/framework/v0.6.33/lib/routing/src/radix.js +0 -114
- /package/framework/{v0.6.33 → v0.7.0}/AUTHORS +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/LICENSE +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/html/nolayout.html +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/html/static.html +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/img/android-chrome-192x192.png +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/img/android-chrome-512x512.png +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/img/apple-touch-icon.png +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/img/favicon-16x16.png +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/img/favicon-32x32.png +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/img/favicon.ico +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.css +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/beemaster/index.html +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/css/gina.min.css +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.br +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.gz +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/html/statusbar.html +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.br +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/html/statusbar.html.gz +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/inspector/have_heart_one-webfont.woff2 +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/inspector/index.html +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/inspector/inspector.css +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/inspector/inspector.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/inspector/logo.svg +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.br +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.gz +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/ai/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/ai/lib/connector.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/couchbase/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/couchbase/lib/connector.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/couchbase/lib/connector.v3.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/couchbase/lib/connector.v4.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/couchbase/lib/n1ql.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/couchbase/lib/session-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/couchbase/lib/storage-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/duckdb/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/duckdb/lib/connector.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/mongodb/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/mongodb/lib/connector.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/mongodb/lib/job-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/mongodb/lib/pipeline-loader.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/mongodb/lib/session-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/mysql/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/mysql/lib/connector.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/param-redact.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/postgresql/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/postgresql/lib/connector.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/redis/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/redis/lib/connector.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/redis/lib/job-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/redis/lib/kv-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/redis/lib/render-cache-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/redis/lib/session-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/scylladb/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/scylladb/lib/connector.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/scylladb/lib/session-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/settle-once.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/sql-parser.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/sqlite/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/sqlite/lib/connector.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/sqlite/lib/job-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/sqlite/lib/kv-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/connectors/sqlite/lib/session-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/content.encoding +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/controller/controller.framework.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/controller/controller.render-json.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/controller/controller.render-nunjucks-async.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/controller/controller.render-nunjucks.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/controller/controller.render-stream.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/controller/controller.render-v1.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/controller/controller.render-xml.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/controller/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/controller/inline-script.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/controller/inspector-window-emit.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/controller/release-banner.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/dev/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/dev/lib/class.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/dev/lib/factory.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/dev/lib/tools.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/locales/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/locales/currency.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/locales/dist/language/en.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/locales/dist/language/fr.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/locales/dist/region/en.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/locales/dist/region/fr.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/locales/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/mime.types +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/model/entity.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/model/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/model/template/entityFactory.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/model/template/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/csrf/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/csrf/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/csrf/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/coep/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/coep/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/coep/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/coop/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/coop/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/coop/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/corp/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/corp/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/corp/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/csp/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/csp/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/csp/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/hide-powered-by/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/hide-powered-by/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/hide-powered-by/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/hsts/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/hsts/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/hsts/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/origin-agent-cluster/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/origin-agent-cluster/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/origin-agent-cluster/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/referrer-policy/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/referrer-policy/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/referrer-policy/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-content-type-options/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-content-type-options/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-content-type-options/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-dns-prefetch-control/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-dns-prefetch-control/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-dns-prefetch-control/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-download-options/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-download-options/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-download-options/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-frame-options/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-frame-options/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-frame-options/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-xss-protection/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-xss-protection/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/security-headers/x-xss-protection/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/session/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/session/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/session/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/storage/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/storage/build.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/storage/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/storage/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/validator/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/validator/build.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/validator/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/plugins/lib/validator/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/router.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/server.isaac.rapid-reset.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/status.codes +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/_gitignore +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle/config/app.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle/config/routing.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle/config/templates.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle/config/watchers.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle/locales/en.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_public/css/default.css +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_public/css/home.css +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_public/js/components/x-checklist.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_public/manifest.webmanifest +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_public/readme.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_public/sw.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_templates/html/includes/x-checklist.html +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/command/gina.bat.tpl +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/command/gina.tpl +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/conf/env.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/conf/manifest.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/conf/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/conf/settings.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/conf/statics.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/conf/templates.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/error/client/json/401.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/error/client/json/403.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/error/client/json/404.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/error/server/html/50x.html +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/error/server/json/500.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/error/server/json/503.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/core/template/extensions/logger/config.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/console.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/context.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/data/LICENSE +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/data/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/data/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/data/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/dateFormat.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/json/LICENSE +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/json/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/json/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/json/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/plugins/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/plugins/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/plugins/src/api-error.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/plugins/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/prototypes.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/task.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/helpers/text.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/admin/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/admin/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/archiver/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/archiver/build.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/archiver/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/archiver/src/dep/jszip.min.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/archiver/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/async/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/async/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/audit/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/audit/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/audit-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/authn/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/authn/src/lockout.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/authn/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/authn/src/totp.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/authz-gate/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/authz-gate/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cache/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cache/build.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cache/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cache/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/aliases.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/audit/arguments.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/audit/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/audit/verify.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/add.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/arguments.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/build.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/copy.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/cp.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/inc/name-rewrite.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/list.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/man.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/mcp-start.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/mcp.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/oas.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/openapi.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/remove.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/rename.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/rm.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/start.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/status.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/stop.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/bundle/types.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/cache/arguments.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/cache/clear.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/cache/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/cache/stats.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/connector/add.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/connector/arguments.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/connector/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/connector/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/connector/infer.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/connector/migrate.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/connector/models.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/connector/remove.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/connector/rm.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/connector/test.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/container/arguments.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/container/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/container/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/container/man.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/container/ps.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/container/stop.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/controller/add.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/controller/arguments.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/controller/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/controller/inc/args.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/controller/inc/namespace.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/controller/inc/reference-rewrite.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/controller/inc/reference-scan.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/controller/inc/scaffold.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/controller/remove.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/controller/rename.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/controller/rm.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/env/get.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/env/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/env/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/env/inc/name.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/env/link-dev.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/env/list.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/env/remove.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/env/rm.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/env/use.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/add.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/arguments.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/build.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/dot.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/get.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/link-node-modules.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/link.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/list.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/man.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/msg.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/open.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/remove.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/reset.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/restart.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/set.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/start.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/status.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/stop.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/tail.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/update.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/framework/version.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/gina-dev.1.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/gina-framework.1.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/gina.1.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/i18n/add.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/i18n/arguments.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/i18n/export.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/i18n/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/i18n/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/i18n/import.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/i18n/scan.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/image/_host.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/image/arguments.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/image/build.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/image/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/image/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/image/list.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/image/man.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/image/rm.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/image/run.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/inspector/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/inspector/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/inspector/open.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/man-render.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/minion/arguments.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/minion/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/minion/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/minion/kill.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/minion/list.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/msg.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/port/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/port/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/port/inc/scan.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/port/set.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/arguments.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/backup.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/build.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/import.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/list.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/man.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/move.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/remove.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/restart.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/restore.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/rm.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/start.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/status.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/project/stop.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/protocol/arguments.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/protocol/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/protocol/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/protocol/list.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/protocol/remove.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/scope/add.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/scope/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/scope/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/scope/inc/name.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/scope/link-local.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/scope/link-production.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/scope/list.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/scope/remove.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/scope/rm.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/scope/use.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/secrets/arguments.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/secrets/check.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/secrets/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/secrets/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/secrets/scan.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/service/help.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/service/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/service/list.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/service/man.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/service/start.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/storage/arguments.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/storage/gc.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/storage/help.txt +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/storage/stats.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/storage/verify.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd/view/add.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd-status-format/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cmd-status-format/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/collection/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/collection/build.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/collection/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/collection/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/conf-view/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/conf-view/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/config.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/connector-config/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/connector-config/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/connector-error/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/connector-error/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/connector-registry/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/connector-registry/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cron/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cron/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/cron/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/domain/LICENSE +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/domain/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/domain/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/domain/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/dto/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/dto/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/dto-pipe/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/dto-pipe/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/dto-types/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/dto-types/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/duration/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/duration/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/generator/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/i18n/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/i18n/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/idempotency/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/idempotency/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/image-build/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/image-build/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/inherits/LICENSE +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/inherits/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/inherits/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/inherits/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/inspector-events/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/inspector-events/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/inspector-redact/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/inspector-redact/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/instrument/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/instrument/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/job/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/job/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/job-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/json-config-header/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/json-config-header/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/kv/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/kv/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/kv-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/loading-state/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/loading-state/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/logger/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/logger/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/logger/src/containers/default/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/logger/src/containers/file/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/logger/src/containers/mq/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/logger/src/containers/mq/speaker.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/logger/src/helper.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/logger/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/logger/src/redact.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/maintenance/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/maintenance/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/math/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/mcp-dispatch/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/mcp-dispatch/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/mcp-http/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/mcp-http/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/mcp-server/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/mcp-server/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/merge/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/merge/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/merge/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/message-validator/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/message-validator/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/metrics/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/metrics/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/model.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/money/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/money/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/multipart/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/multipart/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/net-locality/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/net-locality/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/nunjucks-filters/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/nunjucks-filters/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/nunjucks-filters/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/nunjucks-resolver/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/nunjucks-resolver/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/priority/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/priority/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/proc.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/push/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/push/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/rate-limit/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/rate-limit/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/release-watch/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/release-watch/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/render-cache/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/render-cache/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/render-cache-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/routing/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/routing/build.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/routing/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/routing-introspect/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/routing-introspect/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/secrets/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/secrets/src/backends/env.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/secrets/src/backends/exec.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/secrets/src/backends/file.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/secrets/src/declaration.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/secrets/src/env-file.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/secrets/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/secrets/src/sources.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/security-headers-emitter/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/security-headers-emitter/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/session-lifetime/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/session-lifetime/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/session-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/shell.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/sqlite-driver.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/sri/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/sri/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/state.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/storage/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/storage/src/local-cas.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/storage/src/local-stream.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/storage/src/local.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/storage/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/storage/src/meta-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/storage/src/s3.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/storage/src/util.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/storage-store.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/swig-filters/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/swig-filters/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/swig-resolver/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/swig-resolver/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/template-loaders/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/template-loaders/src/loaders/http.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/template-loaders/src/loaders/memory.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/template-loaders/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/url/README.md +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/url/index.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/url/routing.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/uuid/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/uuid/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/validator.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/watcher/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/watcher/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/ws-framing/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/ws-framing/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/ws-query/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/ws-query/src/main.js +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/ws-session/package.json +0 -0
- /package/framework/{v0.6.33 → v0.7.0}/lib/ws-session/src/main.js +0 -0
package/SECURITY.md
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Security policy
|
|
2
|
+
|
|
3
|
+
## Supported versions
|
|
4
|
+
|
|
5
|
+
Security fixes are released in the latest version of gina only; earlier versions are not patched. To upgrade:
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
npm install gina@latest
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
Published advisories are listed at <https://github.com/gina-io/gina/security/advisories>.
|
|
12
|
+
|
|
13
|
+
## Reporting a vulnerability
|
|
14
|
+
|
|
15
|
+
Please report security issues privately through GitHub, not in a public issue:
|
|
16
|
+
<https://github.com/gina-io/gina/security/advisories/new>
|
|
17
|
+
|
|
18
|
+
We aim to respond within 72 hours.
|
|
19
|
+
|
|
20
|
+
## Snyk advisory SNYK-JS-GINA-5406434 is a false positive
|
|
21
|
+
|
|
22
|
+
Snyk's page for gina shows a "This is a malicious package" banner. It comes from a single Snyk record, [SNYK-JS-GINA-5406434](https://security.snyk.io/vuln/SNYK-JS-GINA-5406434), which applies only to version `0.1.1-alpha.234`, a prerelease published in March 2023. Snyk's own page states that the record does not affect the latest version.
|
|
23
|
+
|
|
24
|
+
- **That version no longer exists.** We removed `0.1.1-alpha.234` from the npm registry on 2026-08-20, so no installable version of gina is covered by the record.
|
|
25
|
+
- **It was never malicious.** Its install scripts only did local setup: they found the npm install prefix and added a directory to the user's `PATH` in `~/.profile`. They made no network requests, downloaded nothing, and read no credentials. The flag most likely came from an `eval()` that the scripts used to call their own setup functions; since April 2026 the install scripts call those functions directly.
|
|
26
|
+
- **It is not a dependency-confusion package.** The record describes a package that copies a company's internal package name to trick employees into installing it. gina is the original package under this name, first published on npm in October 2014.
|
|
27
|
+
- **No other database lists gina as malicious.** As of September 2026, neither OSV, the GitHub Advisory Database, nor the OpenSSF malicious-packages dataset lists it.
|
|
28
|
+
|
|
29
|
+
We asked Snyk to withdraw the record in July and August 2026 and have not had a reply. We will update this section when they respond.
|
|
30
|
+
|
|
31
|
+
To check for yourself:
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
npm view gina time.created # 2014-10-26
|
|
35
|
+
npm view gina@0.1.1-alpha.234 version # E404 "No match found": the version is no longer published
|
|
36
|
+
npm view gina maintainers # the gina.io maintainer account
|
|
37
|
+
```
|
package/bin/gina
CHANGED
|
@@ -210,8 +210,13 @@ function runCMD() {
|
|
|
210
210
|
&& /\@/.test(process.argv[4])
|
|
211
211
|
) {
|
|
212
212
|
var help = require(__dirname + '/../utils/helper.js');
|
|
213
|
-
|
|
214
|
-
|
|
213
|
+
// #B676 — was: the file went to the shared tmp dir, where another user of the host could
|
|
214
|
+
// create it first (this write then fails, and `gina tail --follow` later runs their file).
|
|
215
|
+
// It now goes to the user-owned argv dir, mode 0600; the reader refuses any other owner.
|
|
216
|
+
// var tmpPath = getTmpDir();
|
|
217
|
+
// var argFilename = tmpPath +'/'+ process.env.NODE_BUNDLE +'@'+ process.env.NODE_PROJECT +'.argv';
|
|
218
|
+
var argvDir = getArgvDir();
|
|
219
|
+
var argFilename = argvDir +'/'+ process.env.NODE_BUNDLE +'@'+ process.env.NODE_PROJECT +'.argv';
|
|
215
220
|
|
|
216
221
|
// Bun-safety: Node coerces an array assigned to an env var to a comma-
|
|
217
222
|
// joined string; Bun leaves it a real array (object), so the writeFileSync
|
|
@@ -224,15 +229,14 @@ function runCMD() {
|
|
|
224
229
|
}
|
|
225
230
|
|
|
226
231
|
try {
|
|
227
|
-
fs.writeFileSync(argFilename, process.env.NODE_ARGV );
|
|
232
|
+
fs.writeFileSync(argFilename, process.env.NODE_ARGV, { mode: 0o600 });
|
|
228
233
|
} catch (err) {
|
|
229
|
-
//
|
|
230
|
-
//
|
|
231
|
-
// catch is unreachable on Node, where the write above never throws.)
|
|
234
|
+
// global console here (no `.emerg` on either runtime). Reachable: EACCES/EPERM when the
|
|
235
|
+
// file exists and this user cannot write it — the crash restart then finds no usable file.
|
|
232
236
|
console.error(err);
|
|
233
237
|
}
|
|
234
238
|
help = null;
|
|
235
|
-
|
|
239
|
+
argvDir = null;
|
|
236
240
|
}
|
|
237
241
|
|
|
238
242
|
require(cliBin);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
0.7.0
|
|
@@ -2137,8 +2137,7 @@ var requirejs, require, define;
|
|
|
2137
2137
|
* @param {String} text the text to execute/evaluate.
|
|
2138
2138
|
*/
|
|
2139
2139
|
req.exec = function (text) {
|
|
2140
|
-
|
|
2141
|
-
return eval(text);
|
|
2140
|
+
throw new Error('require.exec() is disabled in this build: gina ships no transpiler loader plugins');
|
|
2142
2141
|
};
|
|
2143
2142
|
|
|
2144
2143
|
//Set up with config info.
|
|
@@ -6050,29 +6049,39 @@ function FormValidatorUtil(data, $fields, xhrOptions, fieldsSet, culture) {
|
|
|
6050
6049
|
if ( typeof(local.errorLabels[v]) == 'undefined' ) {
|
|
6051
6050
|
local.errorLabels[v] = 'Condition not satisfied';
|
|
6052
6051
|
}
|
|
6053
|
-
//
|
|
6054
|
-
if ( isGFFCtx ) {
|
|
6055
|
-
//userValidatorError = String.fromCharCode.apply(null, new Uint16Array(gina.forms.validators[v].data));
|
|
6056
|
-
userValidator = bufferToString(gina.forms.validators[v].data); // ok
|
|
6057
|
-
var passedContext = 'var validationContext = this.getValidationContext(),isGFFCtx = validationContext.isGFFCtx,self = validationContext.self,local = validationContext.local,replace = validationContext.replace;';
|
|
6058
|
-
userValidator = userValidator.replace(/(\)\s+\{|\)\{){1}/, '$&\n\t'+ passedContext);
|
|
6059
|
-
|
|
6060
|
-
//userValidator += '\n//#sourceURL='+ v +'.js';
|
|
6061
|
-
} else {
|
|
6062
|
-
userValidator = gina.forms.validators[v].toString();
|
|
6063
|
-
}
|
|
6064
|
-
|
|
6065
|
-
// #M21c — Pattern B eval surface (trust-model invariant)
|
|
6052
|
+
// #M21c — Pattern B trust-model invariant, kept by #M21d
|
|
6066
6053
|
// Load-bearing: user-defined validator function bodies are registered on
|
|
6067
6054
|
// `gina.forms.validators` from disk-loaded `bundle/validators/<name>/main.js`
|
|
6068
6055
|
// files at framework boot. Trust assumption: the source of `userValidator`
|
|
6069
6056
|
// is always disk-sourced at boot — never request-time input (req.*, request.*,
|
|
6070
|
-
// form values, URL params). End-user data MUST NOT reach this
|
|
6057
|
+
// form values, URL params). End-user data MUST NOT reach this compile step.
|
|
6071
6058
|
// Invariant pinned by test/lib/validator-scs1i.test.js (zero write sites for
|
|
6072
6059
|
// `gina.forms.validators` in framework source; zero request-time identifiers
|
|
6073
6060
|
// around the userValidator source chain).
|
|
6074
|
-
|
|
6075
|
-
|
|
6061
|
+
if ( isGFFCtx ) {
|
|
6062
|
+
// converting Buffer to string
|
|
6063
|
+
userValidator = bufferToString(gina.forms.validators[v].data); // ok
|
|
6064
|
+
var passedContext = 'var validationContext = this.getValidationContext(),isGFFCtx = validationContext.isGFFCtx,self = validationContext.self,local = validationContext.local,replace = validationContext.replace;';
|
|
6065
|
+
userValidator = userValidator.replace(/(\)\s+\{|\)\{){1}/, '$&\n\t'+ passedContext);
|
|
6066
|
+
// #M21d — compiled by the browser as an inline <script>, the way the
|
|
6067
|
+
// bootstrap that delivered the source was; no dynamic-code call remains.
|
|
6068
|
+
// The prologue spliced above hands the body self/local/isGFFCtx/replace
|
|
6069
|
+
// through this.getValidationContext(), so the function needs no lexical
|
|
6070
|
+
// scope from this file. Compiled once per validator per page.
|
|
6071
|
+
self[el][v] = compileUserValidator(v, userValidator);
|
|
6072
|
+
} else if ( typeof(gina.forms.validators[v]) === 'function' ) {
|
|
6073
|
+
// A function registered on the context is used as it is: the former
|
|
6074
|
+
// source round-trip (toString, then a dynamic compile) produced an
|
|
6075
|
+
// equivalent function minus its closure.
|
|
6076
|
+
self[el][v] = gina.forms.validators[v];
|
|
6077
|
+
} else {
|
|
6078
|
+
// Custom validators run in the browser only: the server-side
|
|
6079
|
+
// registration path is not wired (`hasUserValidators()` reads
|
|
6080
|
+
// `getContext('gina').forms`, which nothing sets server-side), so a
|
|
6081
|
+
// source-shaped registration cannot be compiled here — stated instead
|
|
6082
|
+
// of a dead compile step.
|
|
6083
|
+
throw new Error('[UserFormValidator] custom validators run in the browser only — the server-side registration path is not wired (see the validation-rules reference, "Custom validators")');
|
|
6084
|
+
}
|
|
6076
6085
|
}
|
|
6077
6086
|
} catch (userValidatorError) {
|
|
6078
6087
|
throw new Error('[UserFormValidator] Could not evaluate: `'+ filename +'`\n'+userValidatorError.stack);
|
|
@@ -6080,6 +6089,54 @@ function FormValidatorUtil(data, $fields, xhrOptions, fieldsSet, culture) {
|
|
|
6080
6089
|
}
|
|
6081
6090
|
} // EO addField(el, value)
|
|
6082
6091
|
|
|
6092
|
+
/**
|
|
6093
|
+
* Compiles one custom validator's source into a function by inserting it into the
|
|
6094
|
+
* document as an inline `<script>` (#M21d) — the same channel that delivered the
|
|
6095
|
+
* source to the page (`gina.forms` is parsed from the framework's inline bootstrap),
|
|
6096
|
+
* so a page that renders at all can compile it: with no CSP, under `'unsafe-inline'`,
|
|
6097
|
+
* or under a nonce policy (the script copies the nonce off an existing nonced script
|
|
6098
|
+
* element). No `'unsafe-eval'` is needed, and no dynamic-code call remains in the
|
|
6099
|
+
* bundle. The compiled function lands on `gina.forms.compiledValidators[name]`, a
|
|
6100
|
+
* sibling of the source registry that stays read-only for the framework (#M21c).
|
|
6101
|
+
* Browser-side only: the server branch above throws before reaching it.
|
|
6102
|
+
*
|
|
6103
|
+
* The script element executes synchronously on insertion and is removed right after,
|
|
6104
|
+
* so nothing stays in the DOM. `//# sourceURL=<name>.js` keeps the validator visible
|
|
6105
|
+
* in DevTools under its own name (the "Extra Scripts" affordance noted above).
|
|
6106
|
+
*
|
|
6107
|
+
* @param {string} name - Validator name (`gina.forms.validators` key).
|
|
6108
|
+
* @param {string} source - The function source, prologue already spliced in.
|
|
6109
|
+
* @returns {function} The compiled validator.
|
|
6110
|
+
* @throws {Error} When the browser did not compile it — a SyntaxError in the file
|
|
6111
|
+
* (reported on the console by the browser, with the file's own name) or a CSP
|
|
6112
|
+
* that refuses inline scripts, in which case nothing gina renders runs either.
|
|
6113
|
+
* @inner
|
|
6114
|
+
*
|
|
6115
|
+
* @example
|
|
6116
|
+
* // a page seeded with gina.forms.validators.isSiren (a Buffer-shaped source)
|
|
6117
|
+
* var fn = compileUserValidator('isSiren', 'function FormValidateIsSiren(errorMessage, errorStack) { ... }');
|
|
6118
|
+
* typeof fn; // 'function'
|
|
6119
|
+
* gina.forms.compiledValidators.isSiren === fn; // true — reused for every field on the page
|
|
6120
|
+
*/
|
|
6121
|
+
function compileUserValidator(name, source) {
|
|
6122
|
+
var registry = gina.forms.compiledValidators = gina.forms.compiledValidators || {};
|
|
6123
|
+
if ( typeof(registry[name]) !== 'function' ) {
|
|
6124
|
+
var doc = document;
|
|
6125
|
+
var script = doc.createElement('script');
|
|
6126
|
+
var nonced = doc.querySelector('script[nonce]');
|
|
6127
|
+
if ( nonced && nonced.nonce ) {
|
|
6128
|
+
script.nonce = nonced.nonce;
|
|
6129
|
+
}
|
|
6130
|
+
script.text = 'gina.forms.compiledValidators[' + JSON.stringify(name) + '] = (' + source + ');\n//# sourceURL=' + name + '.js';
|
|
6131
|
+
(doc.head || doc.documentElement).appendChild(script);
|
|
6132
|
+
script.parentNode.removeChild(script);
|
|
6133
|
+
if ( typeof(registry[name]) !== 'function' ) {
|
|
6134
|
+
throw new Error('the browser did not compile it — look for a SyntaxError or a Content-Security-Policy report in the console');
|
|
6135
|
+
}
|
|
6136
|
+
}
|
|
6137
|
+
return registry[name];
|
|
6138
|
+
}
|
|
6139
|
+
|
|
6083
6140
|
|
|
6084
6141
|
for (let el in self) {
|
|
6085
6142
|
// Adding fields & validators to context
|
|
@@ -6343,9 +6400,9 @@ function Routing() {
|
|
|
6343
6400
|
if ( typeof(Routing.initialized) == 'undefined' ) {
|
|
6344
6401
|
Routing.initialized = true;
|
|
6345
6402
|
Routing.instance = self;
|
|
6346
|
-
|
|
6347
|
-
|
|
6348
|
-
Routing.
|
|
6403
|
+
// Warm route cache: routeId (`METHOD:pathname`) -> { name, routing }, kept in
|
|
6404
|
+
// insertion order — see self.cache() for the eviction rule.
|
|
6405
|
+
Routing._cached = new Map();
|
|
6349
6406
|
} else {
|
|
6350
6407
|
self = self.getInstance();
|
|
6351
6408
|
return self;
|
|
@@ -6489,42 +6546,57 @@ function Routing() {
|
|
|
6489
6546
|
// }
|
|
6490
6547
|
|
|
6491
6548
|
/**
|
|
6492
|
-
* Cache route
|
|
6549
|
+
* Cache a matched route so that later requests with the same `METHOD:pathname`
|
|
6550
|
+
* take the warm path. One `Map`: a lookup and an eviction cost O(1) at any size.
|
|
6551
|
+
*
|
|
6552
|
+
* The first write to a key wins — a key already cached is left untouched, so a
|
|
6553
|
+
* key a legitimate request warmed keeps answering later requests. At
|
|
6554
|
+
* `MAX_CACHED_ROUTES` entries the OLDEST key is evicted first (FIFO by insertion
|
|
6555
|
+
* order; a hit never moves an entry). Only the rule's name and object are kept:
|
|
6556
|
+
* `params` and `methodParams` — the request's route params and data bag, a POST
|
|
6557
|
+
* body included — are accepted for the call signature and not stored.
|
|
6493
6558
|
*
|
|
6494
|
-
* @param {string} routeId - e.g
|
|
6559
|
+
* @param {string} routeId - `METHOD:pathname`, e.g. `GET:/index`
|
|
6495
6560
|
* @param {string} name - route name
|
|
6496
6561
|
* @param {object} routeObject - routing[name]
|
|
6497
|
-
* @param {object} params - route params
|
|
6498
|
-
* @param {object} methodParams -
|
|
6562
|
+
* @param {object} [params] - the matched request's route params (not stored)
|
|
6563
|
+
* @param {object} [methodParams] - the matched request's data bag (not stored)
|
|
6564
|
+
* @returns {void}
|
|
6565
|
+
*
|
|
6566
|
+
* @example
|
|
6567
|
+
* routingLib.cache('GET:/invoice/42', 'invoice@api', routing['invoice@api']);
|
|
6499
6568
|
*/
|
|
6500
6569
|
self.cache = function(routeId, name, routeObject, params, methodParams) {
|
|
6501
|
-
if ( Routing._cached.
|
|
6570
|
+
if ( !Routing._cached.has(routeId) ) {
|
|
6502
6571
|
// FIFO eviction: when at capacity, drop the oldest entry before inserting
|
|
6503
|
-
if ( Routing._cached.
|
|
6504
|
-
self.invalidateCached(Routing._cached
|
|
6572
|
+
if ( Routing._cached.size >= MAX_CACHED_ROUTES ) {
|
|
6573
|
+
self.invalidateCached( Routing._cached.keys().next().value );
|
|
6505
6574
|
}
|
|
6506
|
-
Routing._cached.
|
|
6507
|
-
Routing._cachedRoutes[routeId] = {
|
|
6575
|
+
Routing._cached.set(routeId, {
|
|
6508
6576
|
name : name,
|
|
6509
|
-
routing : routeObject
|
|
6510
|
-
|
|
6511
|
-
methodParams : methodParams
|
|
6512
|
-
};
|
|
6577
|
+
routing : routeObject
|
|
6578
|
+
});
|
|
6513
6579
|
}
|
|
6514
6580
|
}
|
|
6515
6581
|
|
|
6516
6582
|
/**
|
|
6517
|
-
*
|
|
6583
|
+
* Look a request up in the warm route cache. A hit re-runs `compareUrls()`
|
|
6584
|
+
* against a clone of the cached rule, so requirements are re-evaluated on every
|
|
6585
|
+
* hit (#B422: an entry is a candidate; the verdict is the result's `.past`). A
|
|
6586
|
+
* miss returns `null` synchronously.
|
|
6518
6587
|
*
|
|
6519
|
-
* @param {string} routeId - e.g
|
|
6520
|
-
* @param {
|
|
6521
|
-
* @
|
|
6522
|
-
*
|
|
6588
|
+
* @param {string} routeId - `METHOD:pathname`, e.g. `GET:/index`
|
|
6589
|
+
* @param {object} req - the incoming request
|
|
6590
|
+
* @returns {Promise<object>|null} `compareUrls()`'s result on a hit, `null` on a miss
|
|
6591
|
+
*
|
|
6592
|
+
* @example
|
|
6593
|
+
* var found = routingLib.getCached(req.method + ':' + pathname, req);
|
|
6594
|
+
* if ( found ) { found = await found; if ( found.past ) { dispatch(req.routing); } }
|
|
6523
6595
|
*/
|
|
6524
6596
|
self.getCached = function(routeId, req) {
|
|
6525
|
-
|
|
6597
|
+
var cachedRoute = Routing._cached.get(routeId);
|
|
6598
|
+
if ( cachedRoute ) {
|
|
6526
6599
|
|
|
6527
|
-
var cachedRoute = Routing._cachedRoutes[routeId];
|
|
6528
6600
|
var method = req.method.toLowerCase();
|
|
6529
6601
|
|
|
6530
6602
|
|
|
@@ -6596,12 +6668,17 @@ function Routing() {
|
|
|
6596
6668
|
return null
|
|
6597
6669
|
}
|
|
6598
6670
|
|
|
6671
|
+
/**
|
|
6672
|
+
* Remove one key from the warm route cache; a key that is not cached is a no-op.
|
|
6673
|
+
*
|
|
6674
|
+
* @param {string} routeId - `METHOD:pathname`
|
|
6675
|
+
* @returns {void}
|
|
6676
|
+
*
|
|
6677
|
+
* @example
|
|
6678
|
+
* routingLib.invalidateCached('GET:/invoice/42');
|
|
6679
|
+
*/
|
|
6599
6680
|
self.invalidateCached = function(routeId) {
|
|
6600
|
-
|
|
6601
|
-
// routeObject
|
|
6602
|
-
Routing._cached.splice( Routing._cached.indexOf(routeId), 1);
|
|
6603
|
-
delete Routing._cachedRoutes[routeId];
|
|
6604
|
-
}
|
|
6681
|
+
Routing._cached.delete(routeId);
|
|
6605
6682
|
}
|
|
6606
6683
|
|
|
6607
6684
|
/**
|
|
@@ -8225,49 +8302,6 @@ function Routing() {
|
|
|
8225
8302
|
}
|
|
8226
8303
|
}
|
|
8227
8304
|
|
|
8228
|
-
// ── Radix trie — O(m) route candidate lookup ─────────────────────────────
|
|
8229
|
-
|
|
8230
|
-
/**
|
|
8231
|
-
* Build a radix trie for fast route lookup for the given bundle.
|
|
8232
|
-
* Called from onRoutesLoaded() once the routing config is ready.
|
|
8233
|
-
* Safe to call multiple times — each call replaces the previous trie.
|
|
8234
|
-
*
|
|
8235
|
-
* @param {object} routing - full routing map (all bundles)
|
|
8236
|
-
* @param {string} bundle - bundle name to index
|
|
8237
|
-
*/
|
|
8238
|
-
self.buildTrie = function(routing, bundle) {
|
|
8239
|
-
if (isGFFCtx) return; // trie is server-side only
|
|
8240
|
-
var radix = require('./radix');
|
|
8241
|
-
var root = radix.createNode();
|
|
8242
|
-
for (var name in routing) {
|
|
8243
|
-
var r = routing[name];
|
|
8244
|
-
if (!r || typeof r !== 'object') continue;
|
|
8245
|
-
if (r.bundle !== bundle) continue;
|
|
8246
|
-
// url can be a string ("url1, url2") or an array
|
|
8247
|
-
var rawUrls = Array.isArray(r.url) ? r.url : String(r.url).split(',');
|
|
8248
|
-
for (var i = 0; i < rawUrls.length; i++) {
|
|
8249
|
-
var u = rawUrls[i].trim();
|
|
8250
|
-
if (u) radix.insert(root, u, name);
|
|
8251
|
-
}
|
|
8252
|
-
}
|
|
8253
|
-
Routing._tries[bundle] = root;
|
|
8254
|
-
};
|
|
8255
|
-
|
|
8256
|
-
/**
|
|
8257
|
-
* Return candidate route names for a pathname using the pre-built radix trie.
|
|
8258
|
-
* Returns null when no trie is available for the bundle (safe fall-through
|
|
8259
|
-
* to the linear scan in that case).
|
|
8260
|
-
*
|
|
8261
|
-
* @param {string} pathname - decoded request pathname
|
|
8262
|
-
* @param {string} bundle - bundle name
|
|
8263
|
-
* @returns {string[]|null}
|
|
8264
|
-
*/
|
|
8265
|
-
self.lookupTrie = function(pathname, bundle) {
|
|
8266
|
-
if (!Routing._tries || !Routing._tries[bundle]) return null;
|
|
8267
|
-
var radix = require('./radix');
|
|
8268
|
-
return radix.lookup(Routing._tries[bundle], pathname);
|
|
8269
|
-
};
|
|
8270
|
-
|
|
8271
8305
|
return self
|
|
8272
8306
|
}
|
|
8273
8307
|
|
|
@@ -10782,7 +10816,7 @@ define('gina', [ 'require', 'lib/merge', 'lib/uuid', 'lib/routing', 'lib/money',
|
|
|
10782
10816
|
* (c) 2014-2025 Guillermo Rauch
|
|
10783
10817
|
* Released under the MIT License.
|
|
10784
10818
|
*/
|
|
10785
|
-
!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define('vendor/engine.io',n):(t="undefined"!=typeof globalThis?globalThis:t||self).eio=n()}(this,(function(){"use strict";function t(t,n){for(var i=0;i<n.length;i++){var r=n[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,u(r.key),r)}}function n(n,i,r){return i&&t(n.prototype,i),r&&t(n,r),Object.defineProperty(n,"prototype",{writable:!1}),n}function i(){return i=Object.assign?Object.assign.bind():function(t){for(var n=1;n<arguments.length;n++){var i=arguments[n];for(var r in i)({}).hasOwnProperty.call(i,r)&&(t[r]=i[r])}return t},i.apply(null,arguments)}function r(t){return r=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},r(t)}function e(t,n){t.prototype=Object.create(n.prototype),t.prototype.constructor=t,s(t,n)}function o(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(o=function(){return!!t})()}function s(t,n){return s=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,n){return t.__proto__=n,t},s(t,n)}function u(t){var n=function(t,n){if("object"!=typeof t||!t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var r=i.call(t,n||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(t)}(t,"string");return"symbol"==typeof n?n:n+""}function f(t){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},f(t)}function h(t){var n="function"==typeof Map?new Map:void 0;return h=function(t){if(null===t||!function(t){try{return-1!==Function.toString.call(t).indexOf("[native code]")}catch(n){return"function"==typeof t}}(t))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==n){if(n.has(t))return n.get(t);n.set(t,i)}function i(){return function(t,n,i){if(o())return Reflect.construct.apply(null,arguments);var r=[null];r.push.apply(r,n);var e=new(t.bind.apply(t,r));return i&&s(e,i.prototype),e}(t,arguments,r(this).constructor)}return i.prototype=Object.create(t.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),s(i,t)},h(t)}var c=Object.create(null);c.open="0",c.close="1",c.ping="2",c.pong="3",c.message="4",c.upgrade="5",c.noop="6";var a=Object.create(null);Object.keys(c).forEach((function(t){a[c[t]]=t}));var p,l={type:"error",data:"parser error"},v="function"==typeof Blob||"undefined"!=typeof Blob&&"[object BlobConstructor]"===Object.prototype.toString.call(Blob),d="function"==typeof ArrayBuffer,y=function(t){return"function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer instanceof ArrayBuffer},b=function(t,n,i){var r=t.type,e=t.data;return v&&e instanceof Blob?n?i(e):g(e,i):d&&(e instanceof ArrayBuffer||y(e))?n?i(e):g(new Blob([e]),i):i(c[r]+(e||""))},g=function(t,n){var i=new FileReader;return i.onload=function(){var t=i.result.split(",")[1];n("b"+(t||""))},i.readAsDataURL(t)};function w(t){return t instanceof Uint8Array?t:t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}for(var m="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",k="undefined"==typeof Uint8Array?[]:new Uint8Array(256),A=0;A<64;A++)k[m.charCodeAt(A)]=A;var j,B="function"==typeof ArrayBuffer,E=function(t,n){if("string"!=typeof t)return{type:"message",data:U(t,n)};var i=t.charAt(0);return"b"===i?{type:"message",data:O(t.substring(1),n)}:a[i]?t.length>1?{type:a[i],data:t.substring(1)}:{type:a[i]}:l},O=function(t,n){if(B){var i=function(t){var n,i,r,e,o,s=.75*t.length,u=t.length,f=0;"="===t[t.length-1]&&(s--,"="===t[t.length-2]&&s--);var h=new ArrayBuffer(s),c=new Uint8Array(h);for(n=0;n<u;n+=4)i=k[t.charCodeAt(n)],r=k[t.charCodeAt(n+1)],e=k[t.charCodeAt(n+2)],o=k[t.charCodeAt(n+3)],c[f++]=i<<2|r>>4,c[f++]=(15&r)<<4|e>>2,c[f++]=(3&e)<<6|63&o;return h}(t);return U(i,n)}return{base64:!0,data:t}},U=function(t,n){return"blob"===n?t instanceof Blob?t:new Blob([t]):t instanceof ArrayBuffer?t:t.buffer},T=String.fromCharCode(30);function S(){return new TransformStream({transform:function(t,n){!function(t,n){v&&t.data instanceof Blob?t.data.arrayBuffer().then(w).then(n):d&&(t.data instanceof ArrayBuffer||y(t.data))?n(w(t.data)):b(t,!1,(function(t){p||(p=new TextEncoder),n(p.encode(t))}))}(t,(function(i){var r,e=i.length;if(e<126)r=new Uint8Array(1),new DataView(r.buffer).setUint8(0,e);else if(e<65536){r=new Uint8Array(3);var o=new DataView(r.buffer);o.setUint8(0,126),o.setUint16(1,e)}else{r=new Uint8Array(9);var s=new DataView(r.buffer);s.setUint8(0,127),s.setBigUint64(1,BigInt(e))}t.data&&"string"!=typeof t.data&&(r[0]|=128),n.enqueue(r),n.enqueue(i)}))}})}function M(t){return t.reduce((function(t,n){return t+n.length}),0)}function x(t,n){if(t[0].length===n)return t.shift();for(var i=new Uint8Array(n),r=0,e=0;e<n;e++)i[e]=t[0][r++],r===t[0].length&&(t.shift(),r=0);return t.length&&r<t[0].length&&(t[0]=t[0].slice(r)),i}function C(t){if(t)return function(t){for(var n in C.prototype)t[n]=C.prototype[n];return t}(t)}C.prototype.on=C.prototype.addEventListener=function(t,n){return this.t=this.t||{},(this.t["$"+t]=this.t["$"+t]||[]).push(n),this},C.prototype.once=function(t,n){function i(){this.off(t,i),n.apply(this,arguments)}return i.fn=n,this.on(t,i),this},C.prototype.off=C.prototype.removeListener=C.prototype.removeAllListeners=C.prototype.removeEventListener=function(t,n){if(this.t=this.t||{},0==arguments.length)return this.t={},this;var i,r=this.t["$"+t];if(!r)return this;if(1==arguments.length)return delete this.t["$"+t],this;for(var e=0;e<r.length;e++)if((i=r[e])===n||i.fn===n){r.splice(e,1);break}return 0===r.length&&delete this.t["$"+t],this},C.prototype.emit=function(t){this.t=this.t||{};for(var n=new Array(arguments.length-1),i=this.t["$"+t],r=1;r<arguments.length;r++)n[r-1]=arguments[r];if(i){r=0;for(var e=(i=i.slice(0)).length;r<e;++r)i[r].apply(this,n)}return this},C.prototype.emitReserved=C.prototype.emit,C.prototype.listeners=function(t){return this.t=this.t||{},this.t["$"+t]||[]},C.prototype.hasListeners=function(t){return!!this.listeners(t).length};var L="function"==typeof Promise&&"function"==typeof Promise.resolve?function(t){return Promise.resolve().then(t)}:function(t,n){return n(t,0)},R="undefined"!=typeof self?self:"undefined"!=typeof window?window:Function("return this")();function D(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];return i.reduce((function(n,i){return t.hasOwnProperty(i)&&(n[i]=t[i]),n}),{})}var P=R.setTimeout,I=R.clearTimeout;function $(t,n){n.useNativeTimers?(t.setTimeoutFn=P.bind(R),t.clearTimeoutFn=I.bind(R)):(t.setTimeoutFn=R.setTimeout.bind(R),t.clearTimeoutFn=R.clearTimeout.bind(R))}function q(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}var N=function(t){function n(n,i,r){var e;return(e=t.call(this,n)||this).description=i,e.context=r,e.type="TransportError",e}return e(n,t),n}(h(Error)),V=function(t){function n(n){var i;return(i=t.call(this)||this).writable=!1,$(i,n),i.opts=n,i.query=n.query,i.socket=n.socket,i.supportsBinary=!n.forceBase64,i}e(n,t);var i=n.prototype;return i.onError=function(n,i,r){return t.prototype.emitReserved.call(this,"error",new N(n,i,r)),this},i.open=function(){return this.readyState="opening",this.doOpen(),this},i.close=function(){return"opening"!==this.readyState&&"open"!==this.readyState||(this.doClose(),this.onClose()),this},i.send=function(t){"open"===this.readyState&&this.write(t)},i.onOpen=function(){this.readyState="open",this.writable=!0,t.prototype.emitReserved.call(this,"open")},i.onData=function(t){var n=E(t,this.socket.binaryType);this.onPacket(n)},i.onPacket=function(n){t.prototype.emitReserved.call(this,"packet",n)},i.onClose=function(n){this.readyState="closed",t.prototype.emitReserved.call(this,"close",n)},i.pause=function(t){},i.createUri=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return t+"://"+this.i()+this.o()+this.opts.path+this.u(n)},i.i=function(){var t=this.opts.hostname;return-1===t.indexOf(":")?t:"["+t+"]"},i.o=function(){return this.opts.port&&(this.opts.secure&&443!==Number(this.opts.port)||!this.opts.secure&&80!==Number(this.opts.port))?":"+this.opts.port:""},i.u=function(t){var n=function(t){var n="";for(var i in t)t.hasOwnProperty(i)&&(n.length&&(n+="&"),n+=encodeURIComponent(i)+"="+encodeURIComponent(t[i]));return n}(t);return n.length?"?"+n:""},n}(C),X=function(t){function i(){var n;return(n=t.apply(this,arguments)||this).h=!1,n}e(i,t);var r=i.prototype;return r.doOpen=function(){this.p()},r.pause=function(t){var n=this;this.readyState="pausing";var i=function(){n.readyState="paused",t()};if(this.h||!this.writable){var r=0;this.h&&(r++,this.once("pollComplete",(function(){--r||i()}))),this.writable||(r++,this.once("drain",(function(){--r||i()})))}else i()},r.p=function(){this.h=!0,this.doPoll(),this.emitReserved("poll")},r.onData=function(t){var n=this;(function(t,n){for(var i=t.split(T),r=[],e=0;e<i.length;e++){var o=E(i[e],n);if(r.push(o),"error"===o.type)break}return r})(t,this.socket.binaryType).forEach((function(t){if("opening"===n.readyState&&"open"===t.type&&n.onOpen(),"close"===t.type)return n.onClose({description:"transport closed by the server"}),!1;n.onPacket(t)})),"closed"!==this.readyState&&(this.h=!1,this.emitReserved("pollComplete"),"open"===this.readyState&&this.p())},r.doClose=function(){var t=this,n=function(){t.write([{type:"close"}])};"open"===this.readyState?n():this.once("open",n)},r.write=function(t){var n=this;this.writable=!1,function(t,n){var i=t.length,r=new Array(i),e=0;t.forEach((function(t,o){b(t,!1,(function(t){r[o]=t,++e===i&&n(r.join(T))}))}))}(t,(function(t){n.doWrite(t,(function(){n.writable=!0,n.emitReserved("drain")}))}))},r.uri=function(){var t=this.opts.secure?"https":"http",n=this.query||{};return!1!==this.opts.timestampRequests&&(n[this.opts.timestampParam]=q()),this.supportsBinary||n.sid||(n.b64=1),this.createUri(t,n)},n(i,[{key:"name",get:function(){return"polling"}}])}(V),H=!1;try{H="undefined"!=typeof XMLHttpRequest&&"withCredentials"in new XMLHttpRequest}catch(t){}var F=H;function z(){}var G=function(t){function n(n){var i;if(i=t.call(this,n)||this,"undefined"!=typeof location){var r="https:"===location.protocol,e=location.port;e||(e=r?"443":"80"),i.xd="undefined"!=typeof location&&n.hostname!==location.hostname||e!==n.port}return i}e(n,t);var i=n.prototype;return i.doWrite=function(t,n){var i=this,r=this.request({method:"POST",data:t});r.on("success",n),r.on("error",(function(t,n){i.onError("xhr post error",t,n)}))},i.doPoll=function(){var t=this,n=this.request();n.on("data",this.onData.bind(this)),n.on("error",(function(n,i){t.onError("xhr poll error",n,i)})),this.pollXhr=n},n}(X),J=function(t){function n(n,i,r){var e;return(e=t.call(this)||this).createRequest=n,$(e,r),e.l=r,e.v=r.method||"GET",e.m=i,e.k=void 0!==r.data?r.data:null,e.A(),e}e(n,t);var i=n.prototype;return i.A=function(){var t,i=this,r=D(this.l,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");r.xdomain=!!this.l.xd;var e=this.j=this.createRequest(r);try{e.open(this.v,this.m,!0);try{if(this.l.extraHeaders)for(var o in e.setDisableHeaderCheck&&e.setDisableHeaderCheck(!0),this.l.extraHeaders)this.l.extraHeaders.hasOwnProperty(o)&&e.setRequestHeader(o,this.l.extraHeaders[o])}catch(t){}if("POST"===this.v)try{e.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch(t){}try{e.setRequestHeader("Accept","*/*")}catch(t){}null===(t=this.l.cookieJar)||void 0===t||t.addCookies(e),"withCredentials"in e&&(e.withCredentials=this.l.withCredentials),this.l.requestTimeout&&(e.timeout=this.l.requestTimeout),e.onreadystatechange=function(){var t;3===e.readyState&&(null===(t=i.l.cookieJar)||void 0===t||t.parseCookies(e.getResponseHeader("set-cookie"))),4===e.readyState&&(200===e.status||1223===e.status?i.B():i.setTimeoutFn((function(){i.O("number"==typeof e.status?e.status:0)}),0))},e.send(this.k)}catch(t){return void this.setTimeoutFn((function(){i.O(t)}),0)}"undefined"!=typeof document&&(this.U=n.requestsCount++,n.requests[this.U]=this)},i.O=function(t){this.emitReserved("error",t,this.j),this.T(!0)},i.T=function(t){if(void 0!==this.j&&null!==this.j){if(this.j.onreadystatechange=z,t)try{this.j.abort()}catch(t){}"undefined"!=typeof document&&delete n.requests[this.U],this.j=null}},i.B=function(){var t=this.j.responseText;null!==t&&(this.emitReserved("data",t),this.emitReserved("success"),this.T())},i.abort=function(){this.T()},n}(C);if(J.requestsCount=0,J.requests={},"undefined"!=typeof document)if("function"==typeof attachEvent)attachEvent("onunload",W);else if("function"==typeof addEventListener){addEventListener("onpagehide"in R?"pagehide":"unload",W,!1)}function W(){for(var t in J.requests)J.requests.hasOwnProperty(t)&&J.requests[t].abort()}var K,Q=(K=Z({xdomain:!1}))&&null!==K.responseType,Y=function(t){function n(n){var i;i=t.call(this,n)||this;var r=n&&n.forceBase64;return i.supportsBinary=Q&&!r,i}return e(n,t),n.prototype.request=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i(t,{xd:this.xd},this.opts),new J(Z,this.uri(),t)},n}(G);function Z(t){var n=t.xdomain;try{if("undefined"!=typeof XMLHttpRequest&&(!n||F))return new XMLHttpRequest}catch(t){}if(!n)try{return new(R[["Active"].concat("Object").join("X")])("Microsoft.XMLHTTP")}catch(t){}}var _="undefined"!=typeof navigator&&"string"==typeof navigator.product&&"reactnative"===navigator.product.toLowerCase(),tt=function(t){function i(){return t.apply(this,arguments)||this}e(i,t);var r=i.prototype;return r.doOpen=function(){var t=this.uri(),n=this.opts.protocols,i=_?{}:D(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(i.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(t,n,i)}catch(t){return this.emitReserved("error",t)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()},r.addEventListeners=function(){var t=this;this.ws.onopen=function(){t.opts.autoUnref&&t.ws.S.unref(),t.onOpen()},this.ws.onclose=function(n){return t.onClose({description:"websocket connection closed",context:n})},this.ws.onmessage=function(n){return t.onData(n.data)},this.ws.onerror=function(n){return t.onError("websocket error",n)}},r.write=function(t){var n=this;this.writable=!1;for(var i=function(){var i=t[r],e=r===t.length-1;b(i,n.supportsBinary,(function(t){try{n.doWrite(i,t)}catch(t){}e&&L((function(){n.writable=!0,n.emitReserved("drain")}),n.setTimeoutFn)}))},r=0;r<t.length;r++)i()},r.doClose=function(){void 0!==this.ws&&(this.ws.onerror=function(){},this.ws.close(),this.ws=null)},r.uri=function(){var t=this.opts.secure?"wss":"ws",n=this.query||{};return this.opts.timestampRequests&&(n[this.opts.timestampParam]=q()),this.supportsBinary||(n.b64=1),this.createUri(t,n)},n(i,[{key:"name",get:function(){return"websocket"}}])}(V),nt=R.WebSocket||R.MozWebSocket,it=function(t){function n(){return t.apply(this,arguments)||this}e(n,t);var i=n.prototype;return i.createSocket=function(t,n,i){return _?new nt(t,n,i):n?new nt(t,n):new nt(t)},i.doWrite=function(t,n){this.ws.send(n)},n}(tt),rt=function(t){function i(){return t.apply(this,arguments)||this}e(i,t);var r=i.prototype;return r.doOpen=function(){var t=this;try{this.M=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(t){return this.emitReserved("error",t)}this.M.closed.then((function(){t.onClose()})).catch((function(n){t.onError("webtransport error",n)})),this.M.ready.then((function(){t.M.createBidirectionalStream().then((function(n){var i=function(t,n){j||(j=new TextDecoder);var i=[],r=0,e=-1,o=!1;return new TransformStream({transform:function(s,u){for(i.push(s);;){if(0===r){if(M(i)<1)break;var f=x(i,1);o=!(128&~f[0]),e=127&f[0],r=e<126?3:126===e?1:2}else if(1===r){if(M(i)<2)break;var h=x(i,2);e=new DataView(h.buffer,h.byteOffset,h.length).getUint16(0),r=3}else if(2===r){if(M(i)<8)break;var c=x(i,8),a=new DataView(c.buffer,c.byteOffset,c.length),p=a.getUint32(0);if(p>Math.pow(2,21)-1){u.enqueue(l);break}e=p*Math.pow(2,32)+a.getUint32(4),r=3}else{if(M(i)<e)break;var v=x(i,e);u.enqueue(E(o?v:j.decode(v),n)),r=0}if(0===e||e>t){u.enqueue(l);break}}}})}(Number.MAX_SAFE_INTEGER,t.socket.binaryType),r=n.readable.pipeThrough(i).getReader(),e=S();e.readable.pipeTo(n.writable),t.C=e.writable.getWriter();!function n(){r.read().then((function(i){var r=i.done,e=i.value;r||(t.onPacket(e),n())})).catch((function(t){}))}();var o={type:"open"};t.query.sid&&(o.data='{"sid":"'.concat(t.query.sid,'"}')),t.C.write(o).then((function(){return t.onOpen()}))}))}))},r.write=function(t){var n=this;this.writable=!1;for(var i=function(){var i=t[r],e=r===t.length-1;n.C.write(i).then((function(){e&&L((function(){n.writable=!0,n.emitReserved("drain")}),n.setTimeoutFn)}))},r=0;r<t.length;r++)i()},r.doClose=function(){var t;null===(t=this.M)||void 0===t||t.close()},n(i,[{key:"name",get:function(){return"webtransport"}}])}(V),et={websocket:it,webtransport:rt,polling:Y},ot=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,st=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function ut(t){if(t.length>8e3)throw"URI too long";var n=t,i=t.indexOf("["),r=t.indexOf("]");-1!=i&&-1!=r&&(t=t.substring(0,i)+t.substring(i,r).replace(/:/g,";")+t.substring(r,t.length));for(var e,o,s=ot.exec(t||""),u={},f=14;f--;)u[st[f]]=s[f]||"";return-1!=i&&-1!=r&&(u.source=n,u.host=u.host.substring(1,u.host.length-1).replace(/;/g,":"),u.authority=u.authority.replace("[","").replace("]","").replace(/;/g,":"),u.ipv6uri=!0),u.pathNames=function(t,n){var i=/\/{2,9}/g,r=n.replace(i,"/").split("/");"/"!=n.slice(0,1)&&0!==n.length||r.splice(0,1);"/"==n.slice(-1)&&r.splice(r.length-1,1);return r}(0,u.path),u.queryKey=(e=u.query,o={},e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,(function(t,n,i){n&&(o[n]=i)})),o),u}var ft="function"==typeof addEventListener&&"function"==typeof removeEventListener,ht=[];ft&&addEventListener("offline",(function(){ht.forEach((function(t){return t()}))}),!1);var ct=function(t){function n(n,r){var e;if((e=t.call(this)||this).binaryType="arraybuffer",e.writeBuffer=[],e.L=0,e.R=-1,e.D=-1,e.P=-1,e.I=1/0,n&&"object"===f(n)&&(r=n,n=null),n){var o=ut(n);r.hostname=o.host,r.secure="https"===o.protocol||"wss"===o.protocol,r.port=o.port,o.query&&(r.query=o.query)}else r.host&&(r.hostname=ut(r.host).host);return $(e,r),e.secure=null!=r.secure?r.secure:"undefined"!=typeof location&&"https:"===location.protocol,r.hostname&&!r.port&&(r.port=e.secure?"443":"80"),e.hostname=r.hostname||("undefined"!=typeof location?location.hostname:"localhost"),e.port=r.port||("undefined"!=typeof location&&location.port?location.port:e.secure?"443":"80"),e.transports=[],e.$={},r.transports.forEach((function(t){var n=t.prototype.name;e.transports.push(n),e.$[n]=t})),e.opts=i({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},r),e.opts.path=e.opts.path.replace(/\/$/,"")+(e.opts.addTrailingSlash?"/":""),"string"==typeof e.opts.query&&(e.opts.query=function(t){for(var n={},i=t.split("&"),r=0,e=i.length;r<e;r++){var o=i[r].split("=");n[decodeURIComponent(o[0])]=decodeURIComponent(o[1])}return n}(e.opts.query)),ft&&(e.opts.closeOnBeforeunload&&(e.q=function(){e.transport&&(e.transport.removeAllListeners(),e.transport.close())},addEventListener("beforeunload",e.q,!1)),"localhost"!==e.hostname&&(e.N=function(){e.V("transport close",{description:"network connection lost"})},ht.push(e.N))),e.opts.withCredentials&&(e.X=void 0),e.H(),e}e(n,t);var r=n.prototype;return r.createTransport=function(t){var n=i({},this.opts.query);n.EIO=4,n.transport=t,this.id&&(n.sid=this.id);var r=i({},this.opts,{query:n,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[t]);return new this.$[t](r)},r.H=function(){var t=this;if(0!==this.transports.length){var i=this.opts.rememberUpgrade&&n.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket")?"websocket":this.transports[0];this.readyState="opening";var r=this.createTransport(i);r.open(),this.setTransport(r)}else this.setTimeoutFn((function(){t.emitReserved("error","No transports available")}),0)},r.setTransport=function(t){var n=this;this.transport&&this.transport.removeAllListeners(),this.transport=t,t.on("drain",this.F.bind(this)).on("packet",this.G.bind(this)).on("error",this.O.bind(this)).on("close",(function(t){return n.V("transport close",t)}))},r.onOpen=function(){this.readyState="open",n.priorWebsocketSuccess="websocket"===this.transport.name,this.emitReserved("open"),this.flush()},r.G=function(t){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState)switch(this.emitReserved("packet",t),this.emitReserved("heartbeat"),t.type){case"open":this.onHandshake(JSON.parse(t.data));break;case"ping":this.J("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this.W();break;case"error":var n=new Error("server error");n.code=t.data,this.O(n);break;case"message":this.emitReserved("data",t.data),this.emitReserved("message",t.data)}},r.onHandshake=function(t){this.emitReserved("handshake",t),this.id=t.sid,this.transport.query.sid=t.sid,this.R=t.pingInterval,this.D=t.pingTimeout,this.P=t.maxPayload,this.onOpen(),"closed"!==this.readyState&&this.W()},r.W=function(){var t=this;this.clearTimeoutFn(this.K);var n=this.R+this.D;this.I=Date.now()+n,this.K=this.setTimeoutFn((function(){t.V("ping timeout")}),n),this.opts.autoUnref&&this.K.unref()},r.F=function(){this.writeBuffer.splice(0,this.L),this.L=0,0===this.writeBuffer.length?this.emitReserved("drain"):this.flush()},r.flush=function(){if("closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){var t=this.Y();this.transport.send(t),this.L=t.length,this.emitReserved("flush")}},r.Y=function(){if(!(this.P&&"polling"===this.transport.name&&this.writeBuffer.length>1))return this.writeBuffer;for(var t,n=1,i=0;i<this.writeBuffer.length;i++){var r=this.writeBuffer[i].data;if(r&&(n+="string"==typeof(t=r)?function(t){for(var n=0,i=0,r=0,e=t.length;r<e;r++)(n=t.charCodeAt(r))<128?i+=1:n<2048?i+=2:n<55296||n>=57344?i+=3:(r++,i+=4);return i}(t):Math.ceil(1.33*(t.byteLength||t.size))),i>0&&n>this.P)return this.writeBuffer.slice(0,i);n+=2}return this.writeBuffer},r.Z=function(){var t=this;if(!this.I)return!0;var n=Date.now()>this.I;return n&&(this.I=0,L((function(){t.V("ping timeout")}),this.setTimeoutFn)),n},r.write=function(t,n,i){return this.J("message",t,n,i),this},r.send=function(t,n,i){return this.J("message",t,n,i),this},r.J=function(t,n,i,r){if("function"==typeof n&&(r=n,n=void 0),"function"==typeof i&&(r=i,i=null),"closing"!==this.readyState&&"closed"!==this.readyState){(i=i||{}).compress=!1!==i.compress;var e={type:t,data:n,options:i};this.emitReserved("packetCreate",e),this.writeBuffer.push(e),r&&this.once("flush",r),this.flush()}},r.close=function(){var t=this,n=function(){t.V("forced close"),t.transport.close()},i=function i(){t.off("upgrade",i),t.off("upgradeError",i),n()},r=function(){t.once("upgrade",i),t.once("upgradeError",i)};return"opening"!==this.readyState&&"open"!==this.readyState||(this.readyState="closing",this.writeBuffer.length?this.once("drain",(function(){t.upgrading?r():n()})):this.upgrading?r():n()),this},r.O=function(t){if(n.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&"opening"===this.readyState)return this.transports.shift(),this.H();this.emitReserved("error",t),this.V("transport error",t)},r.V=function(t,n){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState){if(this.clearTimeoutFn(this.K),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),ft&&(this.q&&removeEventListener("beforeunload",this.q,!1),this.N)){var i=ht.indexOf(this.N);-1!==i&&ht.splice(i,1)}this.readyState="closed",this.id=null,this.emitReserved("close",t,n),this.writeBuffer=[],this.L=0}},n}(C);ct.protocol=4;var at=function(t){function n(){var n;return(n=t.apply(this,arguments)||this)._=[],n}e(n,t);var i=n.prototype;return i.onOpen=function(){if(t.prototype.onOpen.call(this),"open"===this.readyState&&this.opts.upgrade)for(var n=0;n<this._.length;n++)this.tt(this._[n])},i.tt=function(t){var n=this,i=this.createTransport(t),r=!1;ct.priorWebsocketSuccess=!1;var e=function(){r||(i.send([{type:"ping",data:"probe"}]),i.once("packet",(function(t){if(!r)if("pong"===t.type&&"probe"===t.data){if(n.upgrading=!0,n.emitReserved("upgrading",i),!i)return;ct.priorWebsocketSuccess="websocket"===i.name,n.transport.pause((function(){r||"closed"!==n.readyState&&(c(),n.setTransport(i),i.send([{type:"upgrade"}]),n.emitReserved("upgrade",i),i=null,n.upgrading=!1,n.flush())}))}else{var e=new Error("probe error");e.transport=i.name,n.emitReserved("upgradeError",e)}})))};function o(){r||(r=!0,c(),i.close(),i=null)}var s=function(t){var r=new Error("probe error: "+t);r.transport=i.name,o(),n.emitReserved("upgradeError",r)};function u(){s("transport closed")}function f(){s("socket closed")}function h(t){i&&t.name!==i.name&&o()}var c=function(){i.removeListener("open",e),i.removeListener("error",s),i.removeListener("close",u),n.off("close",f),n.off("upgrading",h)};i.once("open",e),i.once("error",s),i.once("close",u),this.once("close",f),this.once("upgrading",h),-1!==this._.indexOf("webtransport")&&"webtransport"!==t?this.setTimeoutFn((function(){r||i.open()}),200):i.open()},i.onHandshake=function(n){this._=this.nt(n.upgrades),t.prototype.onHandshake.call(this,n)},i.nt=function(t){for(var n=[],i=0;i<t.length;i++)~this.transports.indexOf(t[i])&&n.push(t[i]);return n},n}(ct),pt=function(t){function n(n){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r="object"===f(n)?n:i;return(!r.transports||r.transports&&"string"==typeof r.transports[0])&&(r.transports=(r.transports||["polling","websocket","webtransport"]).map((function(t){return et[t]})).filter((function(t){return!!t}))),t.call(this,n,r)||this}return e(n,t),n}(at);return function(t,n){return new pt(t,n)}}));
|
|
10819
|
+
!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define('vendor/engine.io',n):(t="undefined"!=typeof globalThis?globalThis:t||self).eio=n()}(this,(function(){"use strict";function t(t,n){for(var i=0;i<n.length;i++){var r=n[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,u(r.key),r)}}function n(n,i,r){return i&&t(n.prototype,i),r&&t(n,r),Object.defineProperty(n,"prototype",{writable:!1}),n}function i(){return i=Object.assign?Object.assign.bind():function(t){for(var n=1;n<arguments.length;n++){var i=arguments[n];for(var r in i)({}).hasOwnProperty.call(i,r)&&(t[r]=i[r])}return t},i.apply(null,arguments)}function r(t){return r=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},r(t)}function e(t,n){t.prototype=Object.create(n.prototype),t.prototype.constructor=t,s(t,n)}function o(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(o=function(){return!!t})()}function s(t,n){return s=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,n){return t.__proto__=n,t},s(t,n)}function u(t){var n=function(t,n){if("object"!=typeof t||!t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var r=i.call(t,n||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(t)}(t,"string");return"symbol"==typeof n?n:n+""}function f(t){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},f(t)}function h(t){var n="function"==typeof Map?new Map:void 0;return h=function(t){if(null===t||!function(t){try{return-1!==Function.toString.call(t).indexOf("[native code]")}catch(n){return"function"==typeof t}}(t))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==n){if(n.has(t))return n.get(t);n.set(t,i)}function i(){return function(t,n,i){if(o())return Reflect.construct.apply(null,arguments);var r=[null];r.push.apply(r,n);var e=new(t.bind.apply(t,r));return i&&s(e,i.prototype),e}(t,arguments,r(this).constructor)}return i.prototype=Object.create(t.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),s(i,t)},h(t)}var c=Object.create(null);c.open="0",c.close="1",c.ping="2",c.pong="3",c.message="4",c.upgrade="5",c.noop="6";var a=Object.create(null);Object.keys(c).forEach((function(t){a[c[t]]=t}));var p,l={type:"error",data:"parser error"},v="function"==typeof Blob||"undefined"!=typeof Blob&&"[object BlobConstructor]"===Object.prototype.toString.call(Blob),d="function"==typeof ArrayBuffer,y=function(t){return"function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer instanceof ArrayBuffer},b=function(t,n,i){var r=t.type,e=t.data;return v&&e instanceof Blob?n?i(e):g(e,i):d&&(e instanceof ArrayBuffer||y(e))?n?i(e):g(new Blob([e]),i):i(c[r]+(e||""))},g=function(t,n){var i=new FileReader;return i.onload=function(){var t=i.result.split(",")[1];n("b"+(t||""))},i.readAsDataURL(t)};function w(t){return t instanceof Uint8Array?t:t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}for(var m="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",k="undefined"==typeof Uint8Array?[]:new Uint8Array(256),A=0;A<64;A++)k[m.charCodeAt(A)]=A;var j,B="function"==typeof ArrayBuffer,E=function(t,n){if("string"!=typeof t)return{type:"message",data:U(t,n)};var i=t.charAt(0);return"b"===i?{type:"message",data:O(t.substring(1),n)}:a[i]?t.length>1?{type:a[i],data:t.substring(1)}:{type:a[i]}:l},O=function(t,n){if(B){var i=function(t){var n,i,r,e,o,s=.75*t.length,u=t.length,f=0;"="===t[t.length-1]&&(s--,"="===t[t.length-2]&&s--);var h=new ArrayBuffer(s),c=new Uint8Array(h);for(n=0;n<u;n+=4)i=k[t.charCodeAt(n)],r=k[t.charCodeAt(n+1)],e=k[t.charCodeAt(n+2)],o=k[t.charCodeAt(n+3)],c[f++]=i<<2|r>>4,c[f++]=(15&r)<<4|e>>2,c[f++]=(3&e)<<6|63&o;return h}(t);return U(i,n)}return{base64:!0,data:t}},U=function(t,n){return"blob"===n?t instanceof Blob?t:new Blob([t]):t instanceof ArrayBuffer?t:t.buffer},T=String.fromCharCode(30);function S(){return new TransformStream({transform:function(t,n){!function(t,n){v&&t.data instanceof Blob?t.data.arrayBuffer().then(w).then(n):d&&(t.data instanceof ArrayBuffer||y(t.data))?n(w(t.data)):b(t,!1,(function(t){p||(p=new TextEncoder),n(p.encode(t))}))}(t,(function(i){var r,e=i.length;if(e<126)r=new Uint8Array(1),new DataView(r.buffer).setUint8(0,e);else if(e<65536){r=new Uint8Array(3);var o=new DataView(r.buffer);o.setUint8(0,126),o.setUint16(1,e)}else{r=new Uint8Array(9);var s=new DataView(r.buffer);s.setUint8(0,127),s.setBigUint64(1,BigInt(e))}t.data&&"string"!=typeof t.data&&(r[0]|=128),n.enqueue(r),n.enqueue(i)}))}})}function M(t){return t.reduce((function(t,n){return t+n.length}),0)}function x(t,n){if(t[0].length===n)return t.shift();for(var i=new Uint8Array(n),r=0,e=0;e<n;e++)i[e]=t[0][r++],r===t[0].length&&(t.shift(),r=0);return t.length&&r<t[0].length&&(t[0]=t[0].slice(r)),i}function C(t){if(t)return function(t){for(var n in C.prototype)t[n]=C.prototype[n];return t}(t)}C.prototype.on=C.prototype.addEventListener=function(t,n){return this.t=this.t||{},(this.t["$"+t]=this.t["$"+t]||[]).push(n),this},C.prototype.once=function(t,n){function i(){this.off(t,i),n.apply(this,arguments)}return i.fn=n,this.on(t,i),this},C.prototype.off=C.prototype.removeListener=C.prototype.removeAllListeners=C.prototype.removeEventListener=function(t,n){if(this.t=this.t||{},0==arguments.length)return this.t={},this;var i,r=this.t["$"+t];if(!r)return this;if(1==arguments.length)return delete this.t["$"+t],this;for(var e=0;e<r.length;e++)if((i=r[e])===n||i.fn===n){r.splice(e,1);break}return 0===r.length&&delete this.t["$"+t],this},C.prototype.emit=function(t){this.t=this.t||{};for(var n=new Array(arguments.length-1),i=this.t["$"+t],r=1;r<arguments.length;r++)n[r-1]=arguments[r];if(i){r=0;for(var e=(i=i.slice(0)).length;r<e;++r)i[r].apply(this,n)}return this},C.prototype.emitReserved=C.prototype.emit,C.prototype.listeners=function(t){return this.t=this.t||{},this.t["$"+t]||[]},C.prototype.hasListeners=function(t){return!!this.listeners(t).length};var L="function"==typeof Promise&&"function"==typeof Promise.resolve?function(t){return Promise.resolve().then(t)}:function(t,n){return n(t,0)},R="undefined"!=typeof self?self:"undefined"!=typeof window?window:globalThis;function D(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];return i.reduce((function(n,i){return t.hasOwnProperty(i)&&(n[i]=t[i]),n}),{})}var P=R.setTimeout,I=R.clearTimeout;function $(t,n){n.useNativeTimers?(t.setTimeoutFn=P.bind(R),t.clearTimeoutFn=I.bind(R)):(t.setTimeoutFn=R.setTimeout.bind(R),t.clearTimeoutFn=R.clearTimeout.bind(R))}function q(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}var N=function(t){function n(n,i,r){var e;return(e=t.call(this,n)||this).description=i,e.context=r,e.type="TransportError",e}return e(n,t),n}(h(Error)),V=function(t){function n(n){var i;return(i=t.call(this)||this).writable=!1,$(i,n),i.opts=n,i.query=n.query,i.socket=n.socket,i.supportsBinary=!n.forceBase64,i}e(n,t);var i=n.prototype;return i.onError=function(n,i,r){return t.prototype.emitReserved.call(this,"error",new N(n,i,r)),this},i.open=function(){return this.readyState="opening",this.doOpen(),this},i.close=function(){return"opening"!==this.readyState&&"open"!==this.readyState||(this.doClose(),this.onClose()),this},i.send=function(t){"open"===this.readyState&&this.write(t)},i.onOpen=function(){this.readyState="open",this.writable=!0,t.prototype.emitReserved.call(this,"open")},i.onData=function(t){var n=E(t,this.socket.binaryType);this.onPacket(n)},i.onPacket=function(n){t.prototype.emitReserved.call(this,"packet",n)},i.onClose=function(n){this.readyState="closed",t.prototype.emitReserved.call(this,"close",n)},i.pause=function(t){},i.createUri=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return t+"://"+this.i()+this.o()+this.opts.path+this.u(n)},i.i=function(){var t=this.opts.hostname;return-1===t.indexOf(":")?t:"["+t+"]"},i.o=function(){return this.opts.port&&(this.opts.secure&&443!==Number(this.opts.port)||!this.opts.secure&&80!==Number(this.opts.port))?":"+this.opts.port:""},i.u=function(t){var n=function(t){var n="";for(var i in t)t.hasOwnProperty(i)&&(n.length&&(n+="&"),n+=encodeURIComponent(i)+"="+encodeURIComponent(t[i]));return n}(t);return n.length?"?"+n:""},n}(C),X=function(t){function i(){var n;return(n=t.apply(this,arguments)||this).h=!1,n}e(i,t);var r=i.prototype;return r.doOpen=function(){this.p()},r.pause=function(t){var n=this;this.readyState="pausing";var i=function(){n.readyState="paused",t()};if(this.h||!this.writable){var r=0;this.h&&(r++,this.once("pollComplete",(function(){--r||i()}))),this.writable||(r++,this.once("drain",(function(){--r||i()})))}else i()},r.p=function(){this.h=!0,this.doPoll(),this.emitReserved("poll")},r.onData=function(t){var n=this;(function(t,n){for(var i=t.split(T),r=[],e=0;e<i.length;e++){var o=E(i[e],n);if(r.push(o),"error"===o.type)break}return r})(t,this.socket.binaryType).forEach((function(t){if("opening"===n.readyState&&"open"===t.type&&n.onOpen(),"close"===t.type)return n.onClose({description:"transport closed by the server"}),!1;n.onPacket(t)})),"closed"!==this.readyState&&(this.h=!1,this.emitReserved("pollComplete"),"open"===this.readyState&&this.p())},r.doClose=function(){var t=this,n=function(){t.write([{type:"close"}])};"open"===this.readyState?n():this.once("open",n)},r.write=function(t){var n=this;this.writable=!1,function(t,n){var i=t.length,r=new Array(i),e=0;t.forEach((function(t,o){b(t,!1,(function(t){r[o]=t,++e===i&&n(r.join(T))}))}))}(t,(function(t){n.doWrite(t,(function(){n.writable=!0,n.emitReserved("drain")}))}))},r.uri=function(){var t=this.opts.secure?"https":"http",n=this.query||{};return!1!==this.opts.timestampRequests&&(n[this.opts.timestampParam]=q()),this.supportsBinary||n.sid||(n.b64=1),this.createUri(t,n)},n(i,[{key:"name",get:function(){return"polling"}}])}(V),H=!1;try{H="undefined"!=typeof XMLHttpRequest&&"withCredentials"in new XMLHttpRequest}catch(t){}var F=H;function z(){}var G=function(t){function n(n){var i;if(i=t.call(this,n)||this,"undefined"!=typeof location){var r="https:"===location.protocol,e=location.port;e||(e=r?"443":"80"),i.xd="undefined"!=typeof location&&n.hostname!==location.hostname||e!==n.port}return i}e(n,t);var i=n.prototype;return i.doWrite=function(t,n){var i=this,r=this.request({method:"POST",data:t});r.on("success",n),r.on("error",(function(t,n){i.onError("xhr post error",t,n)}))},i.doPoll=function(){var t=this,n=this.request();n.on("data",this.onData.bind(this)),n.on("error",(function(n,i){t.onError("xhr poll error",n,i)})),this.pollXhr=n},n}(X),J=function(t){function n(n,i,r){var e;return(e=t.call(this)||this).createRequest=n,$(e,r),e.l=r,e.v=r.method||"GET",e.m=i,e.k=void 0!==r.data?r.data:null,e.A(),e}e(n,t);var i=n.prototype;return i.A=function(){var t,i=this,r=D(this.l,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");r.xdomain=!!this.l.xd;var e=this.j=this.createRequest(r);try{e.open(this.v,this.m,!0);try{if(this.l.extraHeaders)for(var o in e.setDisableHeaderCheck&&e.setDisableHeaderCheck(!0),this.l.extraHeaders)this.l.extraHeaders.hasOwnProperty(o)&&e.setRequestHeader(o,this.l.extraHeaders[o])}catch(t){}if("POST"===this.v)try{e.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch(t){}try{e.setRequestHeader("Accept","*/*")}catch(t){}null===(t=this.l.cookieJar)||void 0===t||t.addCookies(e),"withCredentials"in e&&(e.withCredentials=this.l.withCredentials),this.l.requestTimeout&&(e.timeout=this.l.requestTimeout),e.onreadystatechange=function(){var t;3===e.readyState&&(null===(t=i.l.cookieJar)||void 0===t||t.parseCookies(e.getResponseHeader("set-cookie"))),4===e.readyState&&(200===e.status||1223===e.status?i.B():i.setTimeoutFn((function(){i.O("number"==typeof e.status?e.status:0)}),0))},e.send(this.k)}catch(t){return void this.setTimeoutFn((function(){i.O(t)}),0)}"undefined"!=typeof document&&(this.U=n.requestsCount++,n.requests[this.U]=this)},i.O=function(t){this.emitReserved("error",t,this.j),this.T(!0)},i.T=function(t){if(void 0!==this.j&&null!==this.j){if(this.j.onreadystatechange=z,t)try{this.j.abort()}catch(t){}"undefined"!=typeof document&&delete n.requests[this.U],this.j=null}},i.B=function(){var t=this.j.responseText;null!==t&&(this.emitReserved("data",t),this.emitReserved("success"),this.T())},i.abort=function(){this.T()},n}(C);if(J.requestsCount=0,J.requests={},"undefined"!=typeof document)if("function"==typeof attachEvent)attachEvent("onunload",W);else if("function"==typeof addEventListener){addEventListener("onpagehide"in R?"pagehide":"unload",W,!1)}function W(){for(var t in J.requests)J.requests.hasOwnProperty(t)&&J.requests[t].abort()}var K,Q=(K=Z({xdomain:!1}))&&null!==K.responseType,Y=function(t){function n(n){var i;i=t.call(this,n)||this;var r=n&&n.forceBase64;return i.supportsBinary=Q&&!r,i}return e(n,t),n.prototype.request=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i(t,{xd:this.xd},this.opts),new J(Z,this.uri(),t)},n}(G);function Z(t){var n=t.xdomain;try{if("undefined"!=typeof XMLHttpRequest&&(!n||F))return new XMLHttpRequest}catch(t){}if(!n)try{return new(R[["Active"].concat("Object").join("X")])("Microsoft.XMLHTTP")}catch(t){}}var _="undefined"!=typeof navigator&&"string"==typeof navigator.product&&"reactnative"===navigator.product.toLowerCase(),tt=function(t){function i(){return t.apply(this,arguments)||this}e(i,t);var r=i.prototype;return r.doOpen=function(){var t=this.uri(),n=this.opts.protocols,i=_?{}:D(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(i.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(t,n,i)}catch(t){return this.emitReserved("error",t)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()},r.addEventListeners=function(){var t=this;this.ws.onopen=function(){t.opts.autoUnref&&t.ws.S.unref(),t.onOpen()},this.ws.onclose=function(n){return t.onClose({description:"websocket connection closed",context:n})},this.ws.onmessage=function(n){return t.onData(n.data)},this.ws.onerror=function(n){return t.onError("websocket error",n)}},r.write=function(t){var n=this;this.writable=!1;for(var i=function(){var i=t[r],e=r===t.length-1;b(i,n.supportsBinary,(function(t){try{n.doWrite(i,t)}catch(t){}e&&L((function(){n.writable=!0,n.emitReserved("drain")}),n.setTimeoutFn)}))},r=0;r<t.length;r++)i()},r.doClose=function(){void 0!==this.ws&&(this.ws.onerror=function(){},this.ws.close(),this.ws=null)},r.uri=function(){var t=this.opts.secure?"wss":"ws",n=this.query||{};return this.opts.timestampRequests&&(n[this.opts.timestampParam]=q()),this.supportsBinary||(n.b64=1),this.createUri(t,n)},n(i,[{key:"name",get:function(){return"websocket"}}])}(V),nt=R.WebSocket||R.MozWebSocket,it=function(t){function n(){return t.apply(this,arguments)||this}e(n,t);var i=n.prototype;return i.createSocket=function(t,n,i){return _?new nt(t,n,i):n?new nt(t,n):new nt(t)},i.doWrite=function(t,n){this.ws.send(n)},n}(tt),rt=function(t){function i(){return t.apply(this,arguments)||this}e(i,t);var r=i.prototype;return r.doOpen=function(){var t=this;try{this.M=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(t){return this.emitReserved("error",t)}this.M.closed.then((function(){t.onClose()})).catch((function(n){t.onError("webtransport error",n)})),this.M.ready.then((function(){t.M.createBidirectionalStream().then((function(n){var i=function(t,n){j||(j=new TextDecoder);var i=[],r=0,e=-1,o=!1;return new TransformStream({transform:function(s,u){for(i.push(s);;){if(0===r){if(M(i)<1)break;var f=x(i,1);o=!(128&~f[0]),e=127&f[0],r=e<126?3:126===e?1:2}else if(1===r){if(M(i)<2)break;var h=x(i,2);e=new DataView(h.buffer,h.byteOffset,h.length).getUint16(0),r=3}else if(2===r){if(M(i)<8)break;var c=x(i,8),a=new DataView(c.buffer,c.byteOffset,c.length),p=a.getUint32(0);if(p>Math.pow(2,21)-1){u.enqueue(l);break}e=p*Math.pow(2,32)+a.getUint32(4),r=3}else{if(M(i)<e)break;var v=x(i,e);u.enqueue(E(o?v:j.decode(v),n)),r=0}if(0===e||e>t){u.enqueue(l);break}}}})}(Number.MAX_SAFE_INTEGER,t.socket.binaryType),r=n.readable.pipeThrough(i).getReader(),e=S();e.readable.pipeTo(n.writable),t.C=e.writable.getWriter();!function n(){r.read().then((function(i){var r=i.done,e=i.value;r||(t.onPacket(e),n())})).catch((function(t){}))}();var o={type:"open"};t.query.sid&&(o.data='{"sid":"'.concat(t.query.sid,'"}')),t.C.write(o).then((function(){return t.onOpen()}))}))}))},r.write=function(t){var n=this;this.writable=!1;for(var i=function(){var i=t[r],e=r===t.length-1;n.C.write(i).then((function(){e&&L((function(){n.writable=!0,n.emitReserved("drain")}),n.setTimeoutFn)}))},r=0;r<t.length;r++)i()},r.doClose=function(){var t;null===(t=this.M)||void 0===t||t.close()},n(i,[{key:"name",get:function(){return"webtransport"}}])}(V),et={websocket:it,webtransport:rt,polling:Y},ot=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,st=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function ut(t){if(t.length>8e3)throw"URI too long";var n=t,i=t.indexOf("["),r=t.indexOf("]");-1!=i&&-1!=r&&(t=t.substring(0,i)+t.substring(i,r).replace(/:/g,";")+t.substring(r,t.length));for(var e,o,s=ot.exec(t||""),u={},f=14;f--;)u[st[f]]=s[f]||"";return-1!=i&&-1!=r&&(u.source=n,u.host=u.host.substring(1,u.host.length-1).replace(/;/g,":"),u.authority=u.authority.replace("[","").replace("]","").replace(/;/g,":"),u.ipv6uri=!0),u.pathNames=function(t,n){var i=/\/{2,9}/g,r=n.replace(i,"/").split("/");"/"!=n.slice(0,1)&&0!==n.length||r.splice(0,1);"/"==n.slice(-1)&&r.splice(r.length-1,1);return r}(0,u.path),u.queryKey=(e=u.query,o={},e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,(function(t,n,i){n&&(o[n]=i)})),o),u}var ft="function"==typeof addEventListener&&"function"==typeof removeEventListener,ht=[];ft&&addEventListener("offline",(function(){ht.forEach((function(t){return t()}))}),!1);var ct=function(t){function n(n,r){var e;if((e=t.call(this)||this).binaryType="arraybuffer",e.writeBuffer=[],e.L=0,e.R=-1,e.D=-1,e.P=-1,e.I=1/0,n&&"object"===f(n)&&(r=n,n=null),n){var o=ut(n);r.hostname=o.host,r.secure="https"===o.protocol||"wss"===o.protocol,r.port=o.port,o.query&&(r.query=o.query)}else r.host&&(r.hostname=ut(r.host).host);return $(e,r),e.secure=null!=r.secure?r.secure:"undefined"!=typeof location&&"https:"===location.protocol,r.hostname&&!r.port&&(r.port=e.secure?"443":"80"),e.hostname=r.hostname||("undefined"!=typeof location?location.hostname:"localhost"),e.port=r.port||("undefined"!=typeof location&&location.port?location.port:e.secure?"443":"80"),e.transports=[],e.$={},r.transports.forEach((function(t){var n=t.prototype.name;e.transports.push(n),e.$[n]=t})),e.opts=i({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},r),e.opts.path=e.opts.path.replace(/\/$/,"")+(e.opts.addTrailingSlash?"/":""),"string"==typeof e.opts.query&&(e.opts.query=function(t){for(var n={},i=t.split("&"),r=0,e=i.length;r<e;r++){var o=i[r].split("=");n[decodeURIComponent(o[0])]=decodeURIComponent(o[1])}return n}(e.opts.query)),ft&&(e.opts.closeOnBeforeunload&&(e.q=function(){e.transport&&(e.transport.removeAllListeners(),e.transport.close())},addEventListener("beforeunload",e.q,!1)),"localhost"!==e.hostname&&(e.N=function(){e.V("transport close",{description:"network connection lost"})},ht.push(e.N))),e.opts.withCredentials&&(e.X=void 0),e.H(),e}e(n,t);var r=n.prototype;return r.createTransport=function(t){var n=i({},this.opts.query);n.EIO=4,n.transport=t,this.id&&(n.sid=this.id);var r=i({},this.opts,{query:n,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[t]);return new this.$[t](r)},r.H=function(){var t=this;if(0!==this.transports.length){var i=this.opts.rememberUpgrade&&n.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket")?"websocket":this.transports[0];this.readyState="opening";var r=this.createTransport(i);r.open(),this.setTransport(r)}else this.setTimeoutFn((function(){t.emitReserved("error","No transports available")}),0)},r.setTransport=function(t){var n=this;this.transport&&this.transport.removeAllListeners(),this.transport=t,t.on("drain",this.F.bind(this)).on("packet",this.G.bind(this)).on("error",this.O.bind(this)).on("close",(function(t){return n.V("transport close",t)}))},r.onOpen=function(){this.readyState="open",n.priorWebsocketSuccess="websocket"===this.transport.name,this.emitReserved("open"),this.flush()},r.G=function(t){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState)switch(this.emitReserved("packet",t),this.emitReserved("heartbeat"),t.type){case"open":this.onHandshake(JSON.parse(t.data));break;case"ping":this.J("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this.W();break;case"error":var n=new Error("server error");n.code=t.data,this.O(n);break;case"message":this.emitReserved("data",t.data),this.emitReserved("message",t.data)}},r.onHandshake=function(t){this.emitReserved("handshake",t),this.id=t.sid,this.transport.query.sid=t.sid,this.R=t.pingInterval,this.D=t.pingTimeout,this.P=t.maxPayload,this.onOpen(),"closed"!==this.readyState&&this.W()},r.W=function(){var t=this;this.clearTimeoutFn(this.K);var n=this.R+this.D;this.I=Date.now()+n,this.K=this.setTimeoutFn((function(){t.V("ping timeout")}),n),this.opts.autoUnref&&this.K.unref()},r.F=function(){this.writeBuffer.splice(0,this.L),this.L=0,0===this.writeBuffer.length?this.emitReserved("drain"):this.flush()},r.flush=function(){if("closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){var t=this.Y();this.transport.send(t),this.L=t.length,this.emitReserved("flush")}},r.Y=function(){if(!(this.P&&"polling"===this.transport.name&&this.writeBuffer.length>1))return this.writeBuffer;for(var t,n=1,i=0;i<this.writeBuffer.length;i++){var r=this.writeBuffer[i].data;if(r&&(n+="string"==typeof(t=r)?function(t){for(var n=0,i=0,r=0,e=t.length;r<e;r++)(n=t.charCodeAt(r))<128?i+=1:n<2048?i+=2:n<55296||n>=57344?i+=3:(r++,i+=4);return i}(t):Math.ceil(1.33*(t.byteLength||t.size))),i>0&&n>this.P)return this.writeBuffer.slice(0,i);n+=2}return this.writeBuffer},r.Z=function(){var t=this;if(!this.I)return!0;var n=Date.now()>this.I;return n&&(this.I=0,L((function(){t.V("ping timeout")}),this.setTimeoutFn)),n},r.write=function(t,n,i){return this.J("message",t,n,i),this},r.send=function(t,n,i){return this.J("message",t,n,i),this},r.J=function(t,n,i,r){if("function"==typeof n&&(r=n,n=void 0),"function"==typeof i&&(r=i,i=null),"closing"!==this.readyState&&"closed"!==this.readyState){(i=i||{}).compress=!1!==i.compress;var e={type:t,data:n,options:i};this.emitReserved("packetCreate",e),this.writeBuffer.push(e),r&&this.once("flush",r),this.flush()}},r.close=function(){var t=this,n=function(){t.V("forced close"),t.transport.close()},i=function i(){t.off("upgrade",i),t.off("upgradeError",i),n()},r=function(){t.once("upgrade",i),t.once("upgradeError",i)};return"opening"!==this.readyState&&"open"!==this.readyState||(this.readyState="closing",this.writeBuffer.length?this.once("drain",(function(){t.upgrading?r():n()})):this.upgrading?r():n()),this},r.O=function(t){if(n.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&"opening"===this.readyState)return this.transports.shift(),this.H();this.emitReserved("error",t),this.V("transport error",t)},r.V=function(t,n){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState){if(this.clearTimeoutFn(this.K),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),ft&&(this.q&&removeEventListener("beforeunload",this.q,!1),this.N)){var i=ht.indexOf(this.N);-1!==i&&ht.splice(i,1)}this.readyState="closed",this.id=null,this.emitReserved("close",t,n),this.writeBuffer=[],this.L=0}},n}(C);ct.protocol=4;var at=function(t){function n(){var n;return(n=t.apply(this,arguments)||this)._=[],n}e(n,t);var i=n.prototype;return i.onOpen=function(){if(t.prototype.onOpen.call(this),"open"===this.readyState&&this.opts.upgrade)for(var n=0;n<this._.length;n++)this.tt(this._[n])},i.tt=function(t){var n=this,i=this.createTransport(t),r=!1;ct.priorWebsocketSuccess=!1;var e=function(){r||(i.send([{type:"ping",data:"probe"}]),i.once("packet",(function(t){if(!r)if("pong"===t.type&&"probe"===t.data){if(n.upgrading=!0,n.emitReserved("upgrading",i),!i)return;ct.priorWebsocketSuccess="websocket"===i.name,n.transport.pause((function(){r||"closed"!==n.readyState&&(c(),n.setTransport(i),i.send([{type:"upgrade"}]),n.emitReserved("upgrade",i),i=null,n.upgrading=!1,n.flush())}))}else{var e=new Error("probe error");e.transport=i.name,n.emitReserved("upgradeError",e)}})))};function o(){r||(r=!0,c(),i.close(),i=null)}var s=function(t){var r=new Error("probe error: "+t);r.transport=i.name,o(),n.emitReserved("upgradeError",r)};function u(){s("transport closed")}function f(){s("socket closed")}function h(t){i&&t.name!==i.name&&o()}var c=function(){i.removeListener("open",e),i.removeListener("error",s),i.removeListener("close",u),n.off("close",f),n.off("upgrading",h)};i.once("open",e),i.once("error",s),i.once("close",u),this.once("close",f),this.once("upgrading",h),-1!==this._.indexOf("webtransport")&&"webtransport"!==t?this.setTimeoutFn((function(){r||i.open()}),200):i.open()},i.onHandshake=function(n){this._=this.nt(n.upgrades),t.prototype.onHandshake.call(this,n)},i.nt=function(t){for(var n=[],i=0;i<t.length;i++)~this.transports.indexOf(t[i])&&n.push(t[i]);return n},n}(ct),pt=function(t){function n(n){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r="object"===f(n)?n:i;return(!r.transports||r.transports&&"string"==typeof r.transports[0])&&(r.transports=(r.transports||["polling","websocket","webtransport"]).map((function(t){return et[t]})).filter((function(t){return!!t}))),t.call(this,n,r)||this}return e(n,t),n}(at);return function(t,n){return new pt(t,n)}}));
|
|
10786
10820
|
//# sourceMappingURL=engine.io.min.js.map
|
|
10787
10821
|
;
|
|
10788
10822
|
function BindingHelper(handlerContext) {
|