gina 0.3.16-alpha.2 → 0.4.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 +38 -0
- package/CONVENTIONS.md +1 -1
- package/README.md +11 -7
- package/ROADMAP.md +7 -6
- package/bin/cli +1 -0
- package/framework/v0.4.0/VERSION +1 -0
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/html/statusbar.html +1 -1
- package/framework/v0.4.0/core/asset/plugin/dist/vendor/gina/html/statusbar.html.br +0 -0
- package/framework/v0.4.0/core/asset/plugin/dist/vendor/gina/html/statusbar.html.gz +0 -0
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/inspector/index.html +1 -0
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/inspector/inspector.css +27 -2
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/inspector/inspector.js +202 -72
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/couchbase/index.js +152 -274
- package/framework/v0.4.0/core/connectors/couchbase/lib/connector.js +30 -0
- package/framework/v0.4.0/core/connectors/couchbase/lib/session-store.js +29 -0
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/mongodb/index.js +2 -1
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/mysql/index.js +30 -13
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/postgresql/index.js +14 -4
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/scylladb/index.js +2 -1
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/sql-parser.js +149 -11
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/sqlite/index.js +27 -4
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/controller/controller.js +183 -4
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/controller/controller.render-json.js +20 -5
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/controller/controller.render-nunjucks.js +188 -5
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/controller/controller.render-stream.js +14 -1
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/controller/controller.render-swig.js +171 -28
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/controller/controller.render-v1.js +5 -1
- package/framework/v0.4.0/core/controller/inspector-window-emit.js +157 -0
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/gna.js +81 -0
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/README.md +3 -2
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/coop/README.md +1 -0
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/csp/README.md +37 -12
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/csp/src/main.js +133 -12
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/server.isaac.js +235 -6
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/server.js +205 -4
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle/index.js +4 -4
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/conf/settings.json +55 -4
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/mcp.js +1 -1
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/msg.json +1 -1
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/gina-dev.1.md +2 -2
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/gina-framework.1.md +2 -2
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/gina.1.md +2 -2
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/msg.json +1 -1
- package/framework/v0.4.0/lib/cmd/secrets/arguments.json +6 -0
- package/framework/v0.4.0/lib/cmd/secrets/check.js +507 -0
- package/framework/v0.4.0/lib/cmd/secrets/help.js +46 -0
- package/framework/v0.4.0/lib/cmd/secrets/help.txt +71 -0
- package/framework/v0.4.0/lib/cmd/secrets/scan.js +448 -0
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/index.js +16 -0
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/inherits/README.md +1 -1
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/inherits/package.json +1 -1
- package/framework/v0.4.0/lib/instrument/package.json +8 -0
- package/framework/v0.4.0/lib/instrument/src/main.js +240 -0
- package/framework/v0.4.0/lib/job/package.json +19 -0
- package/framework/v0.4.0/lib/job/src/main.js +806 -0
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/merge/README.md +1 -1
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/secrets/src/main.js +85 -0
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/swig-resolver/src/main.js +8 -5
- package/framework/{v0.3.16-alpha.2 → v0.4.0}/package.json +2 -2
- package/gna.js +4 -4
- package/llms.txt +46 -3
- package/package.json +3 -3
- package/resources/home/framework/project.json +1 -13
- package/resources/package.json.template +2 -2
- package/schema/locales.json +1 -1
- package/script/post_install.js +17 -0
- package/types/index.d.ts +2 -0
- package/framework/v0.3.16-alpha.2/VERSION +0 -1
- package/framework/v0.3.16-alpha.2/core/asset/plugin/dist/vendor/gina/html/statusbar.html.br +0 -0
- package/framework/v0.3.16-alpha.2/core/asset/plugin/dist/vendor/gina/html/statusbar.html.gz +0 -0
- package/framework/v0.3.16-alpha.2/core/connectors/couchbase/lib/connector.js +0 -22
- package/framework/v0.3.16-alpha.2/core/connectors/couchbase/lib/connector.v2.js +0 -468
- package/framework/v0.3.16-alpha.2/core/connectors/couchbase/lib/session-store.js +0 -22
- package/framework/v0.3.16-alpha.2/core/connectors/couchbase/lib/session-store.v2.js +0 -259
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/AUTHORS +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/LICENSE +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/html/nolayout.html +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/html/static.html +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/img/android-chrome-192x192.png +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/img/android-chrome-512x512.png +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/img/apple-touch-icon.png +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/img/favicon-16x16.png +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/img/favicon-32x32.png +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/img/favicon.ico +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.css +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/beemaster/beemaster.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/beemaster/index.html +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/css/gina.min.css +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.br +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/css/gina.min.css.gz +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/inspector/have_heart_one-webfont.woff2 +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/inspector/logo.svg +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/js/gina.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/js/gina.min.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/js/gina.min.js.br +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/js/gina.min.js.gz +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.br +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.gz +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/config.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/ai/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/ai/lib/connector.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/couchbase/lib/connector.v3.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/couchbase/lib/connector.v4.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/couchbase/lib/n1ql.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/mongodb/lib/connector.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/mongodb/lib/pipeline-loader.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/mongodb/lib/session-store.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/mysql/lib/connector.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/postgresql/lib/connector.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/redis/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/redis/lib/session-store.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/scylladb/lib/connector.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/scylladb/lib/session-store.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/sqlite/lib/connector.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/connectors/sqlite/lib/session-store.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/content.encoding +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/controller/controller.framework.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/controller/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/deps/busboy-1.6.0/LICENSE +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/deps/busboy-1.6.0/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/deps/busboy-1.6.0/lib/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/deps/busboy-1.6.0/lib/types/multipart.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/deps/busboy-1.6.0/lib/types/urlencoded.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/deps/busboy-1.6.0/lib/utils.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/deps/busboy-1.6.0/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/deps/streamsearch-1.1.0/LICENSE +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/deps/streamsearch-1.1.0/lib/sbmh.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/deps/streamsearch-1.1.0/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/dev/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/dev/lib/class.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/dev/lib/factory.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/dev/lib/tools.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/locales/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/locales/currency.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/locales/dist/language/en.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/locales/dist/language/fr.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/locales/dist/region/en.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/locales/dist/region/fr.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/locales/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/mime.types +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/model/entity.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/model/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/model/template/entityFactory.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/model/template/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/csrf/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/csrf/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/csrf/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/coep/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/coep/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/coep/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/coop/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/coop/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/corp/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/corp/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/corp/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/csp/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/hide-powered-by/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/hide-powered-by/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/hide-powered-by/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/hsts/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/hsts/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/hsts/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/origin-agent-cluster/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/origin-agent-cluster/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/origin-agent-cluster/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/referrer-policy/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/referrer-policy/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/referrer-policy/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-content-type-options/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-content-type-options/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-content-type-options/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-dns-prefetch-control/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-dns-prefetch-control/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-dns-prefetch-control/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-download-options/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-download-options/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-download-options/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-frame-options/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-frame-options/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-frame-options/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-permitted-cross-domain-policies/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-xss-protection/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-xss-protection/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/security-headers/x-xss-protection/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/session/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/session/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/session/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/storage/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/storage/build.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/storage/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/storage/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/validator/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/validator/build.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/validator/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/validator/src/form-validator.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/plugins/lib/validator/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/router.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/server.express.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/status.codes +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/_gitignore +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle/config/app.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle/config/connectors.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle/config/routing.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle/config/settings.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle/config/templates.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle/config/watchers.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle/controllers/setup.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle/locales/en.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle_public/css/default.css +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle_public/css/home.css +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle_public/manifest.webmanifest +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle_public/readme.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle_public/sw.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/command/gina.bat.tpl +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/command/gina.tpl +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/conf/env.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/conf/manifest.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/conf/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/conf/statics.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/conf/templates.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/error/client/json/401.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/error/client/json/403.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/error/client/json/404.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/error/server/html/50x.html +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/error/server/json/500.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/error/server/json/503.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/core/template/extensions/logger/config.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/console.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/context.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/data/LICENSE +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/data/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/data/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/data/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/dateFormat.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/json/LICENSE +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/json/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/json/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/json/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/path.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/plugins/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/plugins/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/plugins/src/api-error.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/plugins/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/prototypes.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/task.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/helpers/text.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/archiver/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/archiver/build.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/archiver/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/archiver/src/dep/jszip.min.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/archiver/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/async/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/async/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cache/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cache/build.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cache/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cache/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/aliases.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/add.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/arguments.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/build.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/copy.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/cp.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/help.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/help.txt +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/list.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/mcp-start.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/oas.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/openapi.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/remove.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/rename.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/restart.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/rm.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/start.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/status.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/bundle/stop.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/cache/stats.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/connector/add.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/connector/arguments.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/connector/help.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/connector/help.txt +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/connector/list.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/connector/migrate.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/connector/remove.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/connector/rm.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/env/add.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/env/get.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/env/help.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/env/help.txt +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/env/link-dev.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/env/list.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/env/remove.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/env/rm.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/env/set.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/env/unset.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/env/use.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/arguments.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/build.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/dot.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/get.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/help.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/help.txt +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/init.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/link-node-modules.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/link.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/open.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/restart.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/set.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/start.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/status.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/stop.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/tail.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/update.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/framework/version.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/helper.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/i18n/add.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/i18n/arguments.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/i18n/export.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/i18n/help.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/i18n/help.txt +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/i18n/import.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/i18n/scan.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/inspector/help.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/inspector/help.txt +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/inspector/open.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/minion/help.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/minion/help.txt +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/port/help.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/port/help.txt +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/port/inc/scan.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/port/list.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/port/reset.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/port/set.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/add.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/arguments.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/build.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/help.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/help.txt +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/import.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/list.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/move.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/remove.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/rename.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/restart.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/rm.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/start.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/status.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/project/stop.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/protocol/help.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/protocol/help.txt +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/protocol/list.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/protocol/set.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/scope/add.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/scope/help.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/scope/help.txt +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/scope/link-local.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/scope/link-production.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/scope/list.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/scope/remove.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/scope/rm.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/scope/use.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/service/help.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/service/help.txt +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/service/list.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cmd/view/add.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/collection/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/collection/build.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/collection/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/collection/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/config.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/connector-registry/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/connector-registry/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cron/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cron/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/cron/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/domain/LICENSE +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/domain/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/domain/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/domain/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/generator/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/i18n/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/i18n/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/inherits/LICENSE +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/inherits/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/inspector-redact/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/inspector-redact/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/logger/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/logger/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/logger/src/containers/default/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/logger/src/containers/file/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/logger/src/containers/mq/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/logger/src/containers/mq/listener.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/logger/src/containers/mq/speaker.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/logger/src/helper.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/logger/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/math/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/mcp-dispatch/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/mcp-dispatch/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/mcp-http/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/mcp-http/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/mcp-server/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/mcp-server/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/merge/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/merge/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/metrics/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/metrics/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/model.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/nunjucks-filters/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/nunjucks-filters/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/nunjucks-filters/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/nunjucks-resolver/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/nunjucks-resolver/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/proc.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/routing/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/routing/build.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/routing/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/routing/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/routing/src/radix.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/routing-introspect/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/routing-introspect/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/secrets/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/secrets/src/backends/env.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/session-store.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/shell.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/state.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/swig-filters/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/swig-filters/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/swig-filters/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/swig-resolver/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/url/README.md +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/url/index.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/url/routing.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/uuid/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/uuid/src/main.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/validator.js +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/watcher/package.json +0 -0
- /package/framework/{v0.3.16-alpha.2 → v0.4.0}/lib/watcher/src/main.js +0 -0
|
@@ -675,32 +675,40 @@
|
|
|
675
675
|
// ── Engine badge ──────────────────────────────────────────────────────
|
|
676
676
|
|
|
677
677
|
/**
|
|
678
|
-
* Detect the template engine
|
|
679
|
-
*
|
|
680
|
-
*
|
|
681
|
-
*
|
|
678
|
+
* Detect the template engine and version from server-emitted environment
|
|
679
|
+
* data, with a heuristic fallback from view layout/ext when the field is
|
|
680
|
+
* absent (legacy renders, test stubs, render-v1.js path).
|
|
681
|
+
*
|
|
682
|
+
* Does NOT use `env.engine` — that is the HTTP server engine (isaac/express),
|
|
683
|
+
* not the template engine.
|
|
684
|
+
*
|
|
682
685
|
* @inner
|
|
683
|
-
* @param
|
|
684
|
-
* @param
|
|
685
|
-
* @returns {
|
|
686
|
+
* @param {Object} view - View data from `__ginaData.user.view`
|
|
687
|
+
* @param {Object} env - Environment data from `__ginaData.user.environment`
|
|
688
|
+
* @returns {{name: (string|null), version: (string|null)}}
|
|
686
689
|
*/
|
|
687
690
|
function detectEngine(view, env) {
|
|
688
|
-
//
|
|
689
|
-
// env.
|
|
690
|
-
//
|
|
691
|
+
// Server-emitted field wins — render-swig.js / render-nunjucks.js
|
|
692
|
+
// populate env.templateEngine = { name, version } from the resolver
|
|
693
|
+
// decision cache.
|
|
694
|
+
if (env && env.templateEngine && typeof env.templateEngine === 'object') {
|
|
695
|
+
return {
|
|
696
|
+
name: env.templateEngine.name || null,
|
|
697
|
+
version: env.templateEngine.version || null
|
|
698
|
+
};
|
|
699
|
+
}
|
|
691
700
|
|
|
692
|
-
//
|
|
701
|
+
// Fallback heuristic — view.layout path then view.ext.
|
|
702
|
+
var name = null;
|
|
693
703
|
if (view && typeof view.layout === 'string') {
|
|
694
|
-
if (/swig[\/\\]/i.test(view.layout))
|
|
695
|
-
if (/nunjucks[\/\\]|njk[\/\\]/i.test(view.layout))
|
|
704
|
+
if (/swig[\/\\]/i.test(view.layout)) name = 'Swig';
|
|
705
|
+
else if (/nunjucks[\/\\]|njk[\/\\]/i.test(view.layout)) name = 'Nunjucks';
|
|
696
706
|
}
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
if (view.ext === '.
|
|
700
|
-
if (view.ext === '.html') return 'Swig';
|
|
707
|
+
if (!name && view && typeof view.ext === 'string') {
|
|
708
|
+
if (view.ext === '.njk') name = 'Nunjucks';
|
|
709
|
+
else if (view.ext === '.html') name = 'Swig';
|
|
701
710
|
}
|
|
702
|
-
|
|
703
|
-
return 'Swig';
|
|
711
|
+
return { name: name || 'Swig', version: null };
|
|
704
712
|
}
|
|
705
713
|
|
|
706
714
|
// ── Page metrics (weight, load time, paint time) ───────────────────────
|
|
@@ -732,7 +740,22 @@
|
|
|
732
740
|
* @returns {PageMetrics} Metrics object (all numeric fields may be `null`)
|
|
733
741
|
*/
|
|
734
742
|
function getPageMetrics(isXhr) {
|
|
735
|
-
var m = {
|
|
743
|
+
var m = {
|
|
744
|
+
weight: null, resourceSize: null, loadMs: null, transferMs: null, fcpMs: null, source: 'page',
|
|
745
|
+
// Server-emitted fallback values (populated below from env.metrics).
|
|
746
|
+
// These survive the COOP/no-opener case where window.opener is null
|
|
747
|
+
// and the Performance API path returns the all-null skeleton.
|
|
748
|
+
serverWeight: null, serverLoadMs: null
|
|
749
|
+
};
|
|
750
|
+
// Read server-side metrics from the env payload first — independent of
|
|
751
|
+
// whether the opener is reachable.
|
|
752
|
+
try {
|
|
753
|
+
var _envMetrics = (ginaData && ginaData.user && ginaData.user.environment && ginaData.user.environment.metrics) || null;
|
|
754
|
+
if (_envMetrics) {
|
|
755
|
+
if (typeof _envMetrics.weightBytes === 'number') m.serverWeight = _envMetrics.weightBytes;
|
|
756
|
+
if (typeof _envMetrics.serverMs === 'number') m.serverLoadMs = _envMetrics.serverMs;
|
|
757
|
+
}
|
|
758
|
+
} catch (e) { /* defensive — leave server values null */ }
|
|
736
759
|
try {
|
|
737
760
|
var win = (source && source !== 'localStorage') ? source : null;
|
|
738
761
|
if (!win || !win.performance) return m;
|
|
@@ -964,12 +987,20 @@
|
|
|
964
987
|
var keys = Object.keys(view);
|
|
965
988
|
keys.sort();
|
|
966
989
|
|
|
967
|
-
// Empty state — no view data and no page metrics (JSON-only API)
|
|
990
|
+
// Empty state — no view data and no page metrics (JSON-only API).
|
|
991
|
+
// Server-side metrics survive the COOP/no-opener case, so the
|
|
992
|
+
// empty-state guard must also consider env.metrics; otherwise the
|
|
993
|
+
// View tab would falsely render "No views attached" when only the
|
|
994
|
+
// server-side fallback values are populated.
|
|
968
995
|
var _emptyMetrics = true;
|
|
969
996
|
try {
|
|
970
997
|
if (source && source !== 'localStorage' && source.performance) {
|
|
971
998
|
_emptyMetrics = false;
|
|
972
999
|
}
|
|
1000
|
+
var _emSrvMet = (ginaData && ginaData.user && ginaData.user.environment && ginaData.user.environment.metrics) || null;
|
|
1001
|
+
if (_emSrvMet && (typeof _emSrvMet.weightBytes === 'number' || typeof _emSrvMet.serverMs === 'number')) {
|
|
1002
|
+
_emptyMetrics = false;
|
|
1003
|
+
}
|
|
973
1004
|
} catch (e) {}
|
|
974
1005
|
if (keys.length === 0 && _emptyMetrics) {
|
|
975
1006
|
return '<div class="bm-tab-empty">'
|
|
@@ -1019,7 +1050,9 @@
|
|
|
1019
1050
|
|
|
1020
1051
|
// Engine + metrics badges (floating right row)
|
|
1021
1052
|
var env = (ginaData && ginaData.user && ginaData.user.environment) || {};
|
|
1022
|
-
var
|
|
1053
|
+
var engineInfo = detectEngine(view, env);
|
|
1054
|
+
var engine = engineInfo.name;
|
|
1055
|
+
var engineVersion = engineInfo.version;
|
|
1023
1056
|
var u = ginaData && ginaData.user ? ginaData.user : {};
|
|
1024
1057
|
var isXhr = typeof u['view-xhr'] !== 'undefined';
|
|
1025
1058
|
var metrics = getPageMetrics(isXhr);
|
|
@@ -1030,58 +1063,96 @@
|
|
|
1030
1063
|
var _anomMap = {};
|
|
1031
1064
|
for (var _ai = 0; _ai < _anomalies.length; _ai++) _anomMap[_anomalies[_ai].metric] = _anomalies[_ai];
|
|
1032
1065
|
updateViewDot(_anomalies);
|
|
1033
|
-
var hasBadges = engine
|
|
1066
|
+
var hasBadges = engine
|
|
1067
|
+
|| metrics.weight || metrics.serverWeight
|
|
1068
|
+
|| metrics.loadMs || metrics.transferMs || metrics.serverLoadMs
|
|
1069
|
+
|| metrics.fcpMs;
|
|
1034
1070
|
if (hasBadges) {
|
|
1035
1071
|
h += '<div class="bm-view-badges">';
|
|
1036
1072
|
if (engine) {
|
|
1037
|
-
|
|
1073
|
+
var _engineTitle = 'Template engine'
|
|
1074
|
+
+ (engineVersion ? ': ' + engine + ' ' + engineVersion : '');
|
|
1075
|
+
h += '<span class="bm-vbadge bm-vbadge-engine" title="' + escHtml(_engineTitle) + '">'
|
|
1038
1076
|
+ '<svg viewBox="0 0 16 16"><path d="M5.854 4.854a.5.5 0 10-.708-.708l-3.5 3.5a.5.5 0 000 .708l3.5 3.5a.5.5 0 00.708-.708L2.707 8l3.147-3.146zm4.292 0a.5.5 0 01.708-.708l3.5 3.5a.5.5 0 010 .708l-3.5 3.5a.5.5 0 01-.708-.708L13.293 8l-3.147-3.146z"/></svg>'
|
|
1039
|
-
+ escHtml(engine)
|
|
1077
|
+
+ escHtml(engine);
|
|
1078
|
+
if (engineVersion) {
|
|
1079
|
+
h += '<span class="bm-vbadge-sep">|</span>'
|
|
1080
|
+
+ '<span class="bm-vbadge-ver">' + escHtml(engineVersion) + '</span>';
|
|
1081
|
+
}
|
|
1082
|
+
h += '</span>';
|
|
1040
1083
|
}
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
var
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1084
|
+
// Weight badge \u2014 dual rendering rules:
|
|
1085
|
+
// 1. server + client \u2192 server dimmed | client primary (most informative)
|
|
1086
|
+
// 2. client only with differing resourceSize \u2192 resource | transfer (legacy)
|
|
1087
|
+
// 3. server only \u2192 server primary (COOP / no-opener fallback)
|
|
1088
|
+
// 4. client only (no resource diff) \u2192 transfer single
|
|
1089
|
+
if (metrics.weight || metrics.serverWeight) {
|
|
1090
|
+
var _clientW = metrics.weight;
|
|
1091
|
+
var _serverW = metrics.serverWeight;
|
|
1092
|
+
var _res = metrics.resourceSize;
|
|
1093
|
+
var _aw = _anomMap['weight'];
|
|
1094
|
+
var _wtTitle, _wtBody;
|
|
1095
|
+
if (_clientW && _serverW) {
|
|
1096
|
+
_wtTitle = 'Server: ' + formatBytes(_serverW) + ' (response body) | Client: ' + formatBytes(_clientW) + ' (browser transferSize)';
|
|
1097
|
+
_wtBody = '<span class="bm-vbadge-svr">' + formatBytes(_serverW) + '</span>'
|
|
1098
|
+
+ '<span class="bm-vbadge-sep">|</span>'
|
|
1099
|
+
+ formatBytes(_clientW);
|
|
1100
|
+
} else if (_clientW && _res && _res !== _clientW) {
|
|
1101
|
+
_wtTitle = 'Resource: ' + formatBytes(_res) + ' | Transfer: ' + formatBytes(_clientW);
|
|
1102
|
+
var _rp = splitBytes(_res), _xp = splitBytes(_clientW);
|
|
1053
1103
|
if (_rp.unit === _xp.unit) {
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
|
|
1104
|
+
_wtBody = '<span class="bm-vbadge-res">' + _rp.num + '</span>'
|
|
1105
|
+
+ '<span class="bm-vbadge-sep">|</span>'
|
|
1106
|
+
+ _xp.num + _xp.unit;
|
|
1057
1107
|
} else {
|
|
1058
|
-
|
|
1059
|
-
|
|
1060
|
-
|
|
1108
|
+
_wtBody = '<span class="bm-vbadge-res">' + formatBytes(_res) + '</span>'
|
|
1109
|
+
+ '<span class="bm-vbadge-sep">|</span>'
|
|
1110
|
+
+ formatBytes(_clientW);
|
|
1061
1111
|
}
|
|
1112
|
+
} else if (_clientW) {
|
|
1113
|
+
_wtTitle = isXhr ? 'XHR response transfer size' : 'Page transfer size (document)';
|
|
1114
|
+
_wtBody = formatBytes(_clientW);
|
|
1062
1115
|
} else {
|
|
1063
|
-
|
|
1116
|
+
_wtTitle = 'Server response body size (client transferSize unavailable \u2014 window.opener.performance is null, e.g. under Cross-Origin-Opener-Policy)';
|
|
1117
|
+
_wtBody = formatBytes(_serverW);
|
|
1064
1118
|
}
|
|
1065
|
-
h += '
|
|
1119
|
+
h += '<span class="bm-vbadge bm-vbadge-weight' + (_aw ? ' bm-perf-' + _aw.level : '') + '" title="' + _wtTitle + (_aw ? '\n\u26a0 ' + _aw.label : '') + '">'
|
|
1120
|
+
+ '<svg viewBox="0 0 16 16"><path d="M3.5 1h9l2.5 14H1zM4.8 2.5h6.4l2 11H2.8z"/></svg>'
|
|
1121
|
+
+ _wtBody
|
|
1122
|
+
+ '</span>';
|
|
1066
1123
|
}
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
var
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1124
|
+
// Load badge \u2014 same four-way rules, applied to load time:
|
|
1125
|
+
// 1. server + client load \u2192 server dimmed | client primary
|
|
1126
|
+
// 2. client load + differing transfer time \u2192 load | transfer (legacy)
|
|
1127
|
+
// 3. server only \u2192 server primary (COOP / no-opener fallback)
|
|
1128
|
+
// 4. client only \u2192 load OR transfer single
|
|
1129
|
+
if (metrics.loadMs || metrics.transferMs || metrics.serverLoadMs) {
|
|
1130
|
+
var _ld = metrics.loadMs;
|
|
1131
|
+
var _tf = metrics.transferMs;
|
|
1132
|
+
var _srvLd = metrics.serverLoadMs;
|
|
1133
|
+
var _al = _anomMap['load'];
|
|
1134
|
+
var _ltTitle, _ltBody;
|
|
1135
|
+
if (_ld && _srvLd) {
|
|
1136
|
+
_ltTitle = 'Server: ' + fmtMs(_srvLd) + ' (backend processing) | Client: ' + fmtMs(_ld) + ' (full page load: network + parse + paint)';
|
|
1137
|
+
_ltBody = '<span class="bm-vbadge-svr">' + fmtMs(_srvLd) + '</span>'
|
|
1138
|
+
+ '<span class="bm-vbadge-sep">|</span>'
|
|
1139
|
+
+ fmtMs(_ld);
|
|
1140
|
+
} else if (_ld && _tf && _ld !== _tf) {
|
|
1141
|
+
_ltTitle = 'Load: ' + fmtMs(_ld) + ' | Transfer: ' + fmtMs(_tf);
|
|
1142
|
+
_ltBody = '<span class="bm-vbadge-res">' + fmtMs(_ld) + '</span>'
|
|
1143
|
+
+ '<span class="bm-vbadge-sep">|</span>'
|
|
1144
|
+
+ fmtMs(_tf);
|
|
1145
|
+
} else if (_ld || _tf) {
|
|
1146
|
+
_ltTitle = isXhr ? 'XHR round-trip duration' : (_ld ? 'Page load time' : 'Document transfer time (requestStart \u2192 responseEnd)');
|
|
1147
|
+
_ltBody = fmtMs(_ld || _tf);
|
|
1081
1148
|
} else {
|
|
1082
|
-
|
|
1149
|
+
_ltTitle = 'Server processing time (client load time unavailable \u2014 window.opener.performance is null, e.g. under Cross-Origin-Opener-Policy)';
|
|
1150
|
+
_ltBody = fmtMs(_srvLd);
|
|
1083
1151
|
}
|
|
1084
|
-
h += '
|
|
1152
|
+
h += '<span class="bm-vbadge bm-vbadge-load' + (_al ? ' bm-perf-' + _al.level : '') + '" title="' + _ltTitle + (_al ? '\n\u26a0 ' + _al.label : '') + '">'
|
|
1153
|
+
+ '<svg viewBox="0 0 16 16"><path d="M8 3.5a.5.5 0 00-1 0V8a.5.5 0 00.252.434l3.5 2a.5.5 0 00.496-.868L8 7.71V3.5z"/><path d="M8 16A8 8 0 108 0a8 8 0 000 16zm7-8A7 7 0 111 8a7 7 0 0114 0z"/></svg>'
|
|
1154
|
+
+ _ltBody
|
|
1155
|
+
+ '</span>';
|
|
1085
1156
|
}
|
|
1086
1157
|
if (metrics.fcpMs) {
|
|
1087
1158
|
var _af = _anomMap['fcp'];
|
|
@@ -1836,9 +1907,15 @@
|
|
|
1836
1907
|
* Looks up the connector:database key in _liveIndexes, then resolves by
|
|
1837
1908
|
* extracting the target table from the statement.
|
|
1838
1909
|
*
|
|
1910
|
+
* #QI Phase C.3 — descriptors are CLONED and stamped with a per-query
|
|
1911
|
+
* `covers` flag (leftmost-prefix vs `q.whereColumns`), mirroring the
|
|
1912
|
+
* server-side sql-parser annotateCoverage so the live (no indexes.sql) path
|
|
1913
|
+
* renders the same bm-idx-uncovered badge as the declared-index path. The
|
|
1914
|
+
* shared _liveIndexes cache is never mutated.
|
|
1915
|
+
*
|
|
1839
1916
|
* @inner
|
|
1840
1917
|
* @param {object} q - Query entry with `q.indexes === null`
|
|
1841
|
-
* @returns {?Array<{name: string, primary: boolean}>} Resolved indexes, or null
|
|
1918
|
+
* @returns {?Array<{name: string, primary: boolean, columns: Array<string>, covers: boolean}>} Resolved indexes (cloned), [] when the table has none, or null when unresolvable
|
|
1842
1919
|
*/
|
|
1843
1920
|
function resolveLiveIndexes(q) {
|
|
1844
1921
|
if (!_liveIndexes || !_liveIndexes.connectors) return null;
|
|
@@ -1857,7 +1934,24 @@
|
|
|
1857
1934
|
// Use the table field if available; otherwise extract from statement
|
|
1858
1935
|
var tbl = q.table || extractTableFromStatement(q.statement);
|
|
1859
1936
|
if (!tbl) return null;
|
|
1860
|
-
|
|
1937
|
+
var live = tables[tbl];
|
|
1938
|
+
if (!live) return [];
|
|
1939
|
+
// Clone each descriptor (never mutate the shared cache — two queries on the
|
|
1940
|
+
// same table may filter different columns) and stamp `covers` via the
|
|
1941
|
+
// leftmost-prefix rule: an index serves the filter only if its FIRST column
|
|
1942
|
+
// is among the query's WHERE columns. Same logic as sql-parser annotateCoverage.
|
|
1943
|
+
var wc = q.whereColumns || [];
|
|
1944
|
+
var out = [];
|
|
1945
|
+
for (var i = 0; i < live.length; i++) {
|
|
1946
|
+
var cols = live[i].columns || [];
|
|
1947
|
+
out.push({
|
|
1948
|
+
name : live[i].name,
|
|
1949
|
+
primary : !!live[i].primary,
|
|
1950
|
+
columns : cols.slice(),
|
|
1951
|
+
covers : (cols.length > 0 && wc.length > 0 && wc.indexOf(cols[0]) > -1)
|
|
1952
|
+
});
|
|
1953
|
+
}
|
|
1954
|
+
return out;
|
|
1861
1955
|
}
|
|
1862
1956
|
|
|
1863
1957
|
/**
|
|
@@ -2321,15 +2415,34 @@
|
|
|
2321
2415
|
indexHtml = '<span class="bm-query-idx bm-idx-none" title="No index used — full bucket scan">'
|
|
2322
2416
|
+ _svgIdxWarn + ' no index</span>';
|
|
2323
2417
|
} else {
|
|
2324
|
-
|
|
2325
|
-
|
|
2326
|
-
|
|
2327
|
-
|
|
2328
|
-
|
|
2329
|
-
|
|
2330
|
-
|
|
2331
|
-
|
|
2332
|
-
|
|
2418
|
+
// #QI Phase C — the table has indexes; if none lead with a
|
|
2419
|
+
// filtered column (leftmost-prefix), this query's filter
|
|
2420
|
+
// cannot use them — surface that gap rather than implying
|
|
2421
|
+
// coverage. covers/whereColumns are heuristic (declared
|
|
2422
|
+
// indexes vs WHERE columns), not a planner verdict.
|
|
2423
|
+
var _hasWhere = q.whereColumns && q.whereColumns.length > 0;
|
|
2424
|
+
var _anyCovers = false;
|
|
2425
|
+
if (_hasWhere) {
|
|
2426
|
+
for (var _ci = 0; _ci < q.indexes.length; _ci++) {
|
|
2427
|
+
if (q.indexes[_ci].covers) { _anyCovers = true; break; }
|
|
2428
|
+
}
|
|
2429
|
+
}
|
|
2430
|
+
if (_hasWhere && !_anyCovers) {
|
|
2431
|
+
var _wc = q.whereColumns.join(', ');
|
|
2432
|
+
indexHtml = '<span class="bm-query-idx bm-idx-uncovered" title="Indexes exist on this table, but none lead with a filtered column ('
|
|
2433
|
+
+ escHtml(_wc) + ') — this query cannot use them. Add an index starting with one of these columns.">'
|
|
2434
|
+
+ _svgIdxWarn + ' no index for filter</span>';
|
|
2435
|
+
} else {
|
|
2436
|
+
for (var ix = 0; ix < q.indexes.length; ix++) {
|
|
2437
|
+
var idx = q.indexes[ix];
|
|
2438
|
+
var idxCls = idx.primary ? 'bm-idx-primary' : 'bm-idx-secondary';
|
|
2439
|
+
var idxTip = (idx.primary ? 'Primary index scan (consider adding a secondary index)' : 'Secondary index')
|
|
2440
|
+
+ ' — click to copy';
|
|
2441
|
+
indexHtml += '<span class="bm-query-idx bm-idx-copy ' + idxCls + '" title="' + idxTip
|
|
2442
|
+
+ '" data-idx-name="' + escHtml(idx.name) + '">'
|
|
2443
|
+
+ (idx.primary ? _svgIdxWarn : _svgIdx) + ' '
|
|
2444
|
+
+ escHtml(idx.name) + '</span>';
|
|
2445
|
+
}
|
|
2333
2446
|
}
|
|
2334
2447
|
}
|
|
2335
2448
|
} else if (q.connector) {
|
|
@@ -3648,6 +3761,15 @@
|
|
|
3648
3761
|
target = target.replace(/\/+$/, '');
|
|
3649
3762
|
var url = target + '/_gina/agent';
|
|
3650
3763
|
|
|
3764
|
+
// #INS9b — when the target bundle's agent endpoint is auth-gated
|
|
3765
|
+
// (settings.json inspector.agent.enabled outside dev mode), pass the key
|
|
3766
|
+
// via ?key=. EventSource cannot set request headers, so the browser path
|
|
3767
|
+
// is the query param. Optional — omitted when no key was supplied.
|
|
3768
|
+
var agentKey = params.get('key');
|
|
3769
|
+
if (agentKey) {
|
|
3770
|
+
url += '?key=' + encodeURIComponent(agentKey);
|
|
3771
|
+
}
|
|
3772
|
+
|
|
3651
3773
|
source = 'agent';
|
|
3652
3774
|
qs('#bm-dot').className = 'bm-dot warn';
|
|
3653
3775
|
qs('#bm-label').textContent = 'Connecting\u2026';
|
|
@@ -4812,6 +4934,14 @@
|
|
|
4812
4934
|
raw = raw.replace(/\/+$/, '');
|
|
4813
4935
|
// Navigate with ?target= to activate agent mode
|
|
4814
4936
|
var loc = window.location.pathname + '?target=' + encodeURIComponent(raw);
|
|
4937
|
+
// #INS9b — append the optional inspector key (?key=) for an
|
|
4938
|
+
// auth-gated agent endpoint. Kept in the URL only (ephemeral);
|
|
4939
|
+
// never persisted to localStorage.
|
|
4940
|
+
var keyInput = qs('#bm-connect-key');
|
|
4941
|
+
var keyRaw = keyInput ? (keyInput.value || '').trim() : '';
|
|
4942
|
+
if (keyRaw) {
|
|
4943
|
+
loc += '&key=' + encodeURIComponent(keyRaw);
|
|
4944
|
+
}
|
|
4815
4945
|
window.location.href = loc;
|
|
4816
4946
|
});
|
|
4817
4947
|
}
|