gina 0.1.1-alpha.17 → 0.1.1-alpha.171
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/AUTHORS +2 -1
- package/LICENSE +1 -1
- package/README-4Contributors.md +30 -0
- package/README.md +202 -32
- package/bin/cli +165 -68
- package/bin/cli-debug +49 -18
- package/bin/cmd +40 -18
- package/bin/gina +48 -37
- package/{framework/v0.1.1-alpha.17/core/template/command/gina.bat.tpl → bin/gina.bat} +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/AUTHORS +0 -0
- package/framework/{v0.1.1-alpha.17/lib/inherits → v0.1.1-alpha.171}/LICENSE +1 -1
- package/framework/v0.1.1-alpha.171/VERSION +1 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/html/nolayout.html +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/html/static.html +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/img/android-chrome-192x192.png +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/img/android-chrome-512x512.png +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/img/apple-touch-icon.png +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/img/favicon-16x16.png +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/img/favicon-32x32.png +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/asset/img/favicon.ico +0 -0
- package/framework/{v0.1.1-alpha.17/core/asset/js/plugin/readme.md → v0.1.1-alpha.171/core/asset/plugin/README.md} +31 -9
- package/framework/v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/css/gina.min.css +1 -0
- package/framework/v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/css/gina.min.css.map +1 -0
- package/framework/v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/html/toolbar.html +251 -0
- package/framework/{v0.1.1-alpha.17/core/asset/js/plugin/dist → v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/js}/gina.js +3786 -3007
- package/framework/v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/js/gina.min.js +756 -0
- package/framework/v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/js/gina.min.js.map +8 -0
- package/framework/v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +5 -0
- package/framework/v0.1.1-alpha.171/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.map +8 -0
- package/framework/{v0.1.1-alpha.17/core/asset/js → v0.1.1-alpha.171/core/asset}/plugin/uuid.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/config.js +95 -39
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/connectors/couchbase/index.js +332 -223
- package/framework/v0.1.1-alpha.171/core/connectors/couchbase/lib/connector.js +22 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/connectors/couchbase/lib/connector.v2.js +51 -51
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/connectors/couchbase/lib/connector.v3.js +51 -51
- package/framework/v0.1.1-alpha.171/core/connectors/couchbase/lib/connector.v4.js +384 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/connectors/couchbase/lib/n1ql.js +3 -2
- package/framework/v0.1.1-alpha.171/core/connectors/couchbase/lib/session-store.js +22 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/connectors/couchbase/lib/session-store.v2.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/connectors/couchbase/lib/session-store.v3.js +12 -12
- package/framework/v0.1.1-alpha.171/core/connectors/couchbase/lib/session-store.v4.js +361 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/controller/controller.framework.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/controller/controller.js +787 -743
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/controller/index.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/.travis.yml +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/LICENSE +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/deps/encoding/encoding-indexes.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/deps/encoding/encoding.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/lib/main.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/lib/types/multipart.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/lib/types/urlencoded.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/lib/utils.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/busboy/package.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/deps/swig-client/swig-2.0.0.min.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/dev/index.js +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/dev/lib/class.js +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/dev/lib/factory.js +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/dev/lib/tools.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/gna.js +13 -9
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/README.md +5 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/currency.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/dist/language/en.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/dist/language/fr.json +0 -0
- package/framework/v0.1.1-alpha.171/core/locales/dist/region/en.json +5727 -0
- package/framework/v0.1.1-alpha.171/core/locales/dist/region/fr.json +11452 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/index.js +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/src/make.js +39 -41
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/src/resources/currency.csv +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/locales/src/resources/region.csv +0 -0
- package/framework/v0.1.1-alpha.171/core/locales/src/resources/region.mapping.json +43 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/mime.types +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/model/entity.js +87 -67
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/model/index.js +16 -16
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/model/template/entityFactory.js +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/model/template/index.js +15 -14
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/index.js +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/file/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/file/build.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/file/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/intl/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/intl/build.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/intl/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/intl/src/main.js +5 -5
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/storage/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/storage/build.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/storage/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/storage/src/main.js +4 -4
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/validator/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/validator/build.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/validator/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/validator/src/form-validator.js +397 -296
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/plugins/lib/validator/src/main.js +1279 -1256
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/router.js +95 -79
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/server.express.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/server.isaac.js +118 -109
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/server.js +230 -57
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/status.codes +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/config/app.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/config/routing.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/config/settings.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/config/settings.server.json +4 -4
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/config/templates.json +4 -4
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/controllers/controller.content.js +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
- package/framework/v0.1.1-alpha.171/core/template/boilerplate/bundle/controllers/setup.js +111 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle/index.js +13 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle_public/css/default.css +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle_public/readme.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
- package/framework/v0.1.1-alpha.171/core/template/boilerplate/bundle_templates/html/content/homepage.html +8 -0
- package/framework/v0.1.1-alpha.171/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +11 -0
- package/framework/v0.1.1-alpha.171/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +8 -0
- package/framework/{v0.1.1-alpha.17/core/template/boilerplate/bundle_templates/html/layout → v0.1.1-alpha.171/core/template/boilerplate/bundle_templates/html/layouts}/main.html +10 -3
- package/framework/v0.1.1-alpha.171/core/template/command/gina.bat.tpl +8 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/command/gina.tpl +4 -4
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/conf/env.json +11 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/conf/manifest.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/conf/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/conf/settings.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/conf/statics.json +3 -3
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/conf/templates.json +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/error/client/json/401.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/error/client/json/403.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/error/client/json/404.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/error/server/html/50x.html +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/error/server/json/500.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/error/server/json/503.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/core/template/extensions/logger/config.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/console.js +3 -3
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/context.js +146 -6
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/dateFormat.js +9 -7
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/index.js +13 -8
- package/framework/v0.1.1-alpha.171/helpers/json/LICENSE +9 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/json/README.md +0 -0
- package/framework/{v0.1.1-alpha.17/helpers/plugins → v0.1.1-alpha.171/helpers/json}/package.json +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/json/src/main.js +25 -25
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/path.js +163 -96
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/plugins/README.md +0 -0
- package/framework/{v0.1.1-alpha.17/helpers/json → v0.1.1-alpha.171/helpers/plugins}/package.json +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/plugins/src/api-error.js +23 -23
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/plugins/src/main.js +3 -3
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/prototypes.js +46 -38
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/task.js +21 -14
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/helpers/text.js +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/archiver/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/archiver/build.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/archiver/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/archiver/src/dep/jszip.min.js +3 -3
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/archiver/src/main.js +168 -168
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/aliases.json +4 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/add.js +43 -17
- package/framework/v0.1.1-alpha.171/lib/cmd/bundle/arguments.json +6 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/copy.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/cp.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/help.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/help.txt +2 -2
- package/framework/v0.1.1-alpha.171/lib/cmd/bundle/list.js +176 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/remove.js +22 -22
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/rename.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/restart.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/rm.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/start.js +264 -46
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/status.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/bundle/stop.js +93 -74
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/add.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/get.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/help.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/help.txt +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/link-dev.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/list.js +20 -4
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/remove.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/rm.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/set.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/env/unset.js +0 -0
- package/framework/{v0.1.1-alpha.17/lib/cmd/scope → v0.1.1-alpha.171/lib/cmd/env}/use.js +21 -1
- package/framework/v0.1.1-alpha.171/lib/cmd/framework/build.js +85 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/dot.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/get.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/help.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/help.txt +0 -0
- package/framework/v0.1.1-alpha.171/lib/cmd/framework/init.js +798 -0
- package/framework/v0.1.1-alpha.171/lib/cmd/framework/link-node-modules.js +86 -0
- package/framework/v0.1.1-alpha.171/lib/cmd/framework/link.js +110 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/msg.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/open.js +15 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/restart.js +58 -26
- package/framework/v0.1.1-alpha.171/lib/cmd/framework/set.js +264 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/start.js +43 -20
- package/framework/v0.1.1-alpha.171/lib/cmd/framework/status.js +138 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/stop.js +44 -28
- package/framework/v0.1.1-alpha.171/lib/cmd/framework/tail.js +299 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/update.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/framework/version.js +12 -3
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/gina-dev.1.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/gina-framework.1.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/gina.1.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/helper.js +74 -5
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/index.js +23 -23
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/msg.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/port/help.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/port/help.txt +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/port/inc/scan.js +32 -17
- package/framework/v0.1.1-alpha.171/lib/cmd/port/list.js +459 -0
- package/framework/v0.1.1-alpha.171/lib/cmd/port/reset.js +426 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/port/set.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/add.js +146 -122
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/arguments.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/build.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/help.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/help.txt +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/import.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/list.js +16 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/move.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/remove.js +17 -17
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/rename.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/restart.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/rm.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/start.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/status.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/project/stop.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/protocol/help.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/protocol/help.txt +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/protocol/list.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/protocol/set.js +239 -201
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/help.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/help.txt +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/link-local.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/list.js +24 -8
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/remove.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/rm.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/set.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/scope/unset.js +0 -0
- package/framework/{v0.1.1-alpha.17/lib/cmd/env → v0.1.1-alpha.171/lib/cmd/scope}/use.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cmd/view/add.js +34 -9
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/collection/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/collection/build.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/collection/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/collection/src/main.js +241 -241
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/config.js +31 -30
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cron/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cron/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/cron/src/main.js +10 -9
- package/framework/v0.1.1-alpha.171/lib/domain/LICENSE +9 -0
- package/framework/v0.1.1-alpha.171/lib/domain/README.md +46 -0
- package/framework/v0.1.1-alpha.171/lib/domain/dist/public_suffix_list.dat +14186 -0
- package/framework/{v0.1.1-alpha.17/lib/routing/README.md → v0.1.1-alpha.171/lib/domain/exemples/backend.js} +0 -0
- package/framework/{v0.1.1-alpha.17/lib/routing/build.json → v0.1.1-alpha.171/lib/domain/exemples/frontend.html} +0 -0
- package/framework/v0.1.1-alpha.171/lib/domain/package.json +20 -0
- package/framework/v0.1.1-alpha.171/lib/domain/src/main.js +442 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/generator/index.js +4 -4
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/index.js +3 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171/lib/inherits}/LICENSE +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/inherits/README.md +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/inherits/example/inheriting_eventemitter.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/inherits/example/protected_inheritance.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/inherits/example/simple_inheritance.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/inherits/example/super_attribute_overridden_by_child_on_init.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/inherits/package.json +3 -4
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/inherits/src/main.js +3 -3
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/package.json +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/containers/default/index.js +13 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/containers/file/index.js +105 -14
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/containers/mq/index.js +7 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/containers/mq/listener.js +16 -14
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/containers/mq/speaker.js +32 -3
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/helper.js +21 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/logger/src/main.js +27 -7
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/math/index.js +9 -9
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/merge/README.md +2 -2
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/merge/example/merge.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/merge/example/merge_2_literal objects.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/merge/example/merge_and_preserve_first.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/merge/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/merge/src/main.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/model.js +10 -10
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/proc.js +87 -49
- package/framework/{v0.1.1-alpha.17/lib/swig-filters → v0.1.1-alpha.171/lib/routing}/README.md +0 -0
- package/framework/{v0.1.1-alpha.17/lib/url/README.md → v0.1.1-alpha.171/lib/routing/build.json} +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/routing/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/routing/src/main.js +270 -264
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/session-store.js +6 -6
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/shell.js +3 -3
- package/framework/v0.1.1-alpha.171/lib/swig-filters/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/swig-filters/package.json +1 -1
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/swig-filters/src/main.js +55 -52
- package/framework/v0.1.1-alpha.171/lib/url/README.md +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/url/index.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/url/mocks.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/url/routing.json +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/url/test.js +0 -0
- package/framework/{v0.1.1-alpha.17 → v0.1.1-alpha.171}/lib/validator.js +2 -2
- package/framework/v0.1.1-alpha.171/package.json +14 -0
- package/package.json +33 -24
- package/resources/home/main.json +44 -1
- package/resources/home/settings.json +7 -0
- package/resources/home/user/extensions/logger/default/config.json +1 -1
- package/resources/package.json.template +29 -18
- package/script/post_install.js +411 -123
- package/script/post_publish.js +186 -0
- package/script/pre_install.js +425 -77
- package/script/prepare_version.js +275 -98
- package/services/.gna/67fdf1b224a2ed5597e63d4b64283834468e05e3.txt +0 -0
- package/services/.gna/arch +1 -0
- package/services/.gna/locals.json +14 -0
- package/services/.gna/platform +1 -0
- package/services/configure +6 -0
- package/services/env.json +10 -0
- package/services/manifest.json +18 -0
- package/services/package.json +11 -0
- package/services/src/proxy/config/app.json +6 -0
- package/services/src/proxy/config/routing.json +11 -0
- package/services/src/proxy/config/settings.json +9 -0
- package/services/src/proxy/config/settings.server.json +31 -0
- package/services/src/proxy/config/statics.json +3 -0
- package/services/src/proxy/controllers/controller.content.js +58 -0
- package/services/src/proxy/controllers/controller.js +30 -0
- package/{framework/v0.1.1-alpha.17/core/template/boilerplate/bundle → services/src/proxy}/controllers/setup.js +14 -14
- package/services/src/proxy/index.js +31 -0
- package/services/src/proxy/lib/domain/README.md +48 -0
- package/services/src/proxy/lib/domain/src/config/public_suffix_list.dat +14186 -0
- package/utils/helper.js +236 -185
- package/utils/prototypes.js +9 -9
- package/utils/prototypes.json_clone.js +36 -35
- package/doc/framework/cli/doc.json +0 -9
- package/doc/framework/index.md +0 -60
- package/framework/v0.1.1-alpha.17/VERSION +0 -1
- package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.js.map +0 -56
- package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.min.css +0 -1
- package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.min.css.map +0 -1
- package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.min.js +0 -736
- package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.min.js.map +0 -56
- package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.onload.min.js +0 -5
- package/framework/v0.1.1-alpha.17/core/asset/js/plugin/dist/gina.onload.min.js.map +0 -8
- package/framework/v0.1.1-alpha.17/core/connectors/couchbase/lib/connector.js +0 -20
- package/framework/v0.1.1-alpha.17/core/connectors/couchbase/lib/session-store.js +0 -21
- package/framework/v0.1.1-alpha.17/core/locales/dist/region/en.json +0 -9492
- package/framework/v0.1.1-alpha.17/core/locales/dist/region/fr.json +0 -9492
- package/framework/v0.1.1-alpha.17/core/locales/src/resources/region.mapping.json +0 -28
- package/framework/v0.1.1-alpha.17/core/template/boilerplate/bundle_templates/html/homepage.html +0 -4
- package/framework/v0.1.1-alpha.17/lib/cmd/bundle/arguments.json +0 -4
- package/framework/v0.1.1-alpha.17/lib/cmd/bundle/list.js +0 -129
- package/framework/v0.1.1-alpha.17/lib/cmd/framework/init.js +0 -514
- package/framework/v0.1.1-alpha.17/lib/cmd/framework/set.js +0 -161
- package/framework/v0.1.1-alpha.17/lib/cmd/framework/status.js +0 -72
- package/framework/v0.1.1-alpha.17/lib/cmd/framework/tail.js +0 -183
- package/framework/v0.1.1-alpha.17/lib/cmd/port/list.js +0 -176
- package/framework/v0.1.1-alpha.17/package.json +0 -14
|
@@ -15,7 +15,7 @@ const swig = require( _(GINA_FRAMEWORK_DIR +'/node_modules/swig', true)
|
|
|
15
15
|
var Config = require('./config');
|
|
16
16
|
var Router = require('./router');
|
|
17
17
|
var lib = require('./../lib');
|
|
18
|
-
var
|
|
18
|
+
var routingLib = lib.routing;
|
|
19
19
|
var inherits = lib.inherits;
|
|
20
20
|
var merge = lib.merge;
|
|
21
21
|
var Proc = lib.Proc;
|
|
@@ -227,13 +227,56 @@ function Server(options) {
|
|
|
227
227
|
})
|
|
228
228
|
});
|
|
229
229
|
} catch (err) {
|
|
230
|
-
|
|
231
|
-
|
|
230
|
+
if (!sslDetails) {
|
|
231
|
+
throw new Error('DNS issue ? Did you check your `/etc/hosts` or your DNS configuration ?\n'+ err.stack);
|
|
232
|
+
}
|
|
233
|
+
throw new Error(sslDetails +'\n'+ err.stack);
|
|
232
234
|
}
|
|
233
235
|
|
|
234
236
|
|
|
235
237
|
const failed = !sslDetails.valid;
|
|
236
238
|
const humanView = JSON.stringify(sslDetails, null, ' ');
|
|
239
|
+
|
|
240
|
+
// Wildcard exception - See https://github.com/dyaa/ssl-checker/issues/381
|
|
241
|
+
// Date of the test: 2022-12-18T00:00:00.000Z
|
|
242
|
+
// container-87546.dev.sample.app -> not valid when it should return true.
|
|
243
|
+
// {
|
|
244
|
+
// "daysRemaining": 290,
|
|
245
|
+
// "valid": false,
|
|
246
|
+
// "validFrom": "2022-10-03T00:00:00.000Z",
|
|
247
|
+
// "validTo": "2023-10-03T23:59:59.000Z",
|
|
248
|
+
// "validFor": [
|
|
249
|
+
// "*.sample.app",
|
|
250
|
+
// "sample.app"
|
|
251
|
+
// ]
|
|
252
|
+
// }
|
|
253
|
+
|
|
254
|
+
const isHandleByWildcardCert = function(endpoint, hv) {
|
|
255
|
+
var isAllowed = false;
|
|
256
|
+
const start = new Date(hv.validFrom).format('longIsoDateTime');
|
|
257
|
+
const end = new Date(hv.validTo).format('longIsoDateTime');
|
|
258
|
+
const today = new Date().format('longIsoDateTime');
|
|
259
|
+
const allowed = hv.validFor;
|
|
260
|
+
|
|
261
|
+
for (let i=0, len=allowed.length; i<len; ++i ) {
|
|
262
|
+
// skip if not a wildcard
|
|
263
|
+
if ( ! /^[*]\./.test(allowed[i]) ) continue;
|
|
264
|
+
|
|
265
|
+
let re = new RegExp( allowed[i].replace(/^[*]/, '')+'$' );
|
|
266
|
+
if ( ! re.test(endpoint) ) continue;
|
|
267
|
+
|
|
268
|
+
if ( today >= start && today < end) {
|
|
269
|
+
isAllowed = true;
|
|
270
|
+
break
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
return isAllowed;
|
|
274
|
+
}
|
|
275
|
+
if ( failed && Array.isArray(sslDetails.validFor) && isHandleByWildcardCert(endpoint, sslDetails) ) {
|
|
276
|
+
return;
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
|
|
237
280
|
if (failed) {
|
|
238
281
|
if (sslDetails.daysRemaining > -1) {
|
|
239
282
|
console.emerg(`[Certificate] ${endpoint} : It is like there is a problem with your CA certificate${'\n'} ${humanView}`);
|
|
@@ -1128,7 +1171,12 @@ function Server(options) {
|
|
|
1128
1171
|
|
|
1129
1172
|
var headerValue = null;
|
|
1130
1173
|
for (var h in resHeaders) {
|
|
1131
|
-
if (
|
|
1174
|
+
if (
|
|
1175
|
+
// typeof(response.finished) != 'undefined' && !response.finished
|
|
1176
|
+
// || typeof(response.writableEnded) != 'undefined' && !response.writableEnded
|
|
1177
|
+
// ||
|
|
1178
|
+
!response.headersSent
|
|
1179
|
+
) {
|
|
1132
1180
|
// handles multiple origins
|
|
1133
1181
|
if ( /access\-control\-allow\-origin/i.test(h) ) { // re.test(resHeaders[h]
|
|
1134
1182
|
if (sameOrigin) {
|
|
@@ -1151,13 +1199,26 @@ function Server(options) {
|
|
|
1151
1199
|
origin = sameOrigin;
|
|
1152
1200
|
|
|
1153
1201
|
|
|
1154
|
-
|
|
1202
|
+
// if (
|
|
1203
|
+
// typeof(response.finished) != 'undefined' && !response.finished
|
|
1204
|
+
// || typeof(response.writableEnded) != 'undefined' && !response.writableEnded
|
|
1205
|
+
// || !response.headersSent
|
|
1206
|
+
// ) {
|
|
1207
|
+
response.setHeader(h, origin);
|
|
1208
|
+
// }
|
|
1209
|
+
|
|
1155
1210
|
}
|
|
1156
1211
|
sameOrigin = false;
|
|
1157
1212
|
} else {
|
|
1158
1213
|
headerValue = resHeaders[h];
|
|
1159
1214
|
try {
|
|
1160
|
-
|
|
1215
|
+
// if (
|
|
1216
|
+
// typeof(response.finished) != 'undefined' && !response.finished
|
|
1217
|
+
// || typeof(response.writableEnded) != 'undefined' && !response.writableEnded
|
|
1218
|
+
// || !response.headersSent
|
|
1219
|
+
// ) {
|
|
1220
|
+
response.setHeader(h, headerValue)
|
|
1221
|
+
// }
|
|
1161
1222
|
} catch (headerError) {
|
|
1162
1223
|
console.error(headerError)
|
|
1163
1224
|
}
|
|
@@ -1178,11 +1239,88 @@ function Server(options) {
|
|
|
1178
1239
|
}
|
|
1179
1240
|
|
|
1180
1241
|
this.onHttp2Stream = function(stream, headers, response) {
|
|
1242
|
+
var header = null
|
|
1243
|
+
, isWebroot = false
|
|
1244
|
+
, pathname = null
|
|
1245
|
+
, asset = null
|
|
1246
|
+
, assets = this._options.template.assets
|
|
1247
|
+
, conf = this._options.conf
|
|
1248
|
+
, cacheless = conf.cacheless
|
|
1249
|
+
;
|
|
1250
|
+
|
|
1251
|
+
|
|
1252
|
+
if (
|
|
1253
|
+
headers[':path'] == '/'
|
|
1254
|
+
|| headers[':path'] == this._options.conf.server.webroot
|
|
1255
|
+
) {
|
|
1256
|
+
|
|
1257
|
+
if (
|
|
1258
|
+
this._options.conf.server.webroot != headers[':path']
|
|
1259
|
+
&& this._options.conf.server.webrootAutoredirect
|
|
1260
|
+
|| headers[':path'] == this._options.conf.server.webroot
|
|
1261
|
+
&& this._options.conf.server.webrootAutoredirect
|
|
1262
|
+
) {
|
|
1263
|
+
isWebroot = true
|
|
1264
|
+
}
|
|
1265
|
+
}
|
|
1266
|
+
|
|
1267
|
+
var url = (isWebroot) ? this._referrer : headers[':path'];
|
|
1268
|
+
|
|
1269
|
+
var hanlersPath = conf.handlersPath
|
|
1270
|
+
, isHandler = ( new RegExp('^'+ hanlersPath).test(assets[ url ].filename) ) ? true: false
|
|
1271
|
+
;
|
|
1181
1272
|
|
|
1182
1273
|
if (!stream.pushAllowed) {
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1274
|
+
asset = {
|
|
1275
|
+
url : url,
|
|
1276
|
+
filename : assets[ url ].filename,
|
|
1277
|
+
file : null,
|
|
1278
|
+
isAvailable : assets[ url ].isAvailable,
|
|
1279
|
+
mime : assets[ url ].mime,
|
|
1280
|
+
encoding : conf.encoding,
|
|
1281
|
+
isBinary : assets[ url ].isBinary,
|
|
1282
|
+
isHandler : assets[ url ].isHandler
|
|
1283
|
+
};
|
|
1284
|
+
header = merge({ ':status': 200 }, response.getHeaders());
|
|
1285
|
+
header['content-type'] = ( !/charset/.test(asset.mime ) ) ? asset.mime + '; charset='+ asset.encoding : asset.mime;
|
|
1286
|
+
header = completeHeaders(header, local.request, response);
|
|
1287
|
+
if (asset.isBinary || asset.isHandler ) {
|
|
1288
|
+
|
|
1289
|
+
|
|
1290
|
+
if (asset.isHandler) {
|
|
1291
|
+
// adding handler `gina.ready(...)` wrapper
|
|
1292
|
+
var file = null;
|
|
1293
|
+
if ( !fs.existsSync(asset.filename) ) {
|
|
1294
|
+
throwError({stream: stream}, 404, 'Page not found: \n' + headers[':path']);
|
|
1295
|
+
return;
|
|
1296
|
+
}
|
|
1297
|
+
|
|
1298
|
+
if (!assets[ url ].file) {
|
|
1299
|
+
file = fs.readFileSync(asset.filename, asset.encoding).toString();
|
|
1300
|
+
file = '(gina.ready(function onGinaReady($){\n'+ file + '\n},window["originalContext"]));';
|
|
1301
|
+
this._options.template.assets[ headers[':path'] ].file = file;
|
|
1302
|
+
} else {
|
|
1303
|
+
file = assets[ url ].file;
|
|
1304
|
+
}
|
|
1305
|
+
|
|
1306
|
+
// header['content-length'] = fs.statSync(file).size;
|
|
1307
|
+
stream.respond(header);
|
|
1308
|
+
stream.end(file);
|
|
1309
|
+
|
|
1310
|
+
return;
|
|
1311
|
+
}
|
|
1312
|
+
|
|
1313
|
+
header['content-length'] = fs.statSync(asset.filename).size;
|
|
1314
|
+
stream.respondWithFile(
|
|
1315
|
+
asset.filename
|
|
1316
|
+
, header
|
|
1317
|
+
//, { onError }
|
|
1318
|
+
);
|
|
1319
|
+
} else {
|
|
1320
|
+
stream.respond(header);
|
|
1321
|
+
stream.end();
|
|
1322
|
+
}
|
|
1323
|
+
|
|
1186
1324
|
return;
|
|
1187
1325
|
}
|
|
1188
1326
|
|
|
@@ -1193,18 +1331,18 @@ function Server(options) {
|
|
|
1193
1331
|
return;
|
|
1194
1332
|
}
|
|
1195
1333
|
|
|
1196
|
-
var header = null, isWebroot = false, pathname = null;
|
|
1197
1334
|
if (
|
|
1198
|
-
headers[':path'] == '/'
|
|
1199
|
-
|| headers[':path'] == this._options.conf.server.webroot
|
|
1335
|
+
// headers[':path'] == '/'
|
|
1336
|
+
// || headers[':path'] == this._options.conf.server.webroot
|
|
1337
|
+
/^true$/i.test(isWebroot)
|
|
1200
1338
|
) {
|
|
1201
1339
|
|
|
1202
|
-
if (
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
) {
|
|
1340
|
+
// if (
|
|
1341
|
+
// this._options.conf.server.webroot != headers[':path']
|
|
1342
|
+
// && this._options.conf.server.webrootAutoredirect
|
|
1343
|
+
// || headers[':path'] == this._options.conf.server.webroot
|
|
1344
|
+
// && this._options.conf.server.webrootAutoredirect
|
|
1345
|
+
// ) {
|
|
1208
1346
|
|
|
1209
1347
|
header = {
|
|
1210
1348
|
':status': 301
|
|
@@ -1220,9 +1358,10 @@ function Server(options) {
|
|
|
1220
1358
|
stream.respond(header);
|
|
1221
1359
|
stream.end();
|
|
1222
1360
|
return;
|
|
1223
|
-
}
|
|
1224
|
-
|
|
1225
|
-
|
|
1361
|
+
// }
|
|
1362
|
+
// else {
|
|
1363
|
+
// isWebroot = true;
|
|
1364
|
+
// }
|
|
1226
1365
|
}
|
|
1227
1366
|
|
|
1228
1367
|
if (
|
|
@@ -1235,21 +1374,19 @@ function Server(options) {
|
|
|
1235
1374
|
header = {
|
|
1236
1375
|
':status': 200
|
|
1237
1376
|
};
|
|
1238
|
-
var
|
|
1239
|
-
var
|
|
1377
|
+
// var assets = this._options.template.assets;
|
|
1378
|
+
// var url = (isWebroot) ? this._referrer : headers[':path'];
|
|
1240
1379
|
var responseHeaders = ( typeof(this._responseHeaders) != 'undefined') ? this._responseHeaders : null;
|
|
1241
|
-
var conf = this._options.conf;
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
, cacheless = conf.cacheless
|
|
1252
|
-
;
|
|
1380
|
+
// var conf = this._options.conf;
|
|
1381
|
+
asset = {
|
|
1382
|
+
url : url,
|
|
1383
|
+
filename : assets[ url ].filename,
|
|
1384
|
+
file : null,
|
|
1385
|
+
isAvailable : assets[ url ].isAvailable,
|
|
1386
|
+
mime : assets[ url ].mime,
|
|
1387
|
+
encoding : conf.encoding,
|
|
1388
|
+
isHandler : isHandler
|
|
1389
|
+
};
|
|
1253
1390
|
|
|
1254
1391
|
console.debug('h2 pushing: '+ headers[':path'] + ' -> '+ asset.filename);
|
|
1255
1392
|
|
|
@@ -1261,7 +1398,7 @@ function Server(options) {
|
|
|
1261
1398
|
return;
|
|
1262
1399
|
}
|
|
1263
1400
|
|
|
1264
|
-
asset.isHandler = true;
|
|
1401
|
+
asset.isHandler = this._options.template.assets[ headers[':path'] ].isHandler = true;
|
|
1265
1402
|
asset.file = fs.readFileSync(asset.filename, asset.encoding).toString();
|
|
1266
1403
|
asset.file = '(gina.ready(function onGinaReady($){\n'+ asset.file + '\n},window["originalContext"]));';
|
|
1267
1404
|
|
|
@@ -1287,6 +1424,9 @@ function Server(options) {
|
|
|
1287
1424
|
|
|
1288
1425
|
|
|
1289
1426
|
header['content-type'] = ( !/charset/.test(asset.mime ) ) ? asset.mime + '; charset='+ asset.encoding : asset.mime;
|
|
1427
|
+
if (assets[ url ].isBinary) {
|
|
1428
|
+
header['content-length'] = fs.statSync(assets[ url ].filename).size;
|
|
1429
|
+
}
|
|
1290
1430
|
|
|
1291
1431
|
if (cacheless) {
|
|
1292
1432
|
// source maps integration for javascript & css
|
|
@@ -1382,6 +1522,7 @@ function Server(options) {
|
|
|
1382
1522
|
var isFilenameDir = null
|
|
1383
1523
|
, dirname = null
|
|
1384
1524
|
, isBinary = null
|
|
1525
|
+
, isHandler = null
|
|
1385
1526
|
, hanlersPath = null
|
|
1386
1527
|
;
|
|
1387
1528
|
|
|
@@ -1458,17 +1599,24 @@ function Server(options) {
|
|
|
1458
1599
|
}
|
|
1459
1600
|
|
|
1460
1601
|
|
|
1461
|
-
if (cacheless)
|
|
1602
|
+
if (cacheless) {
|
|
1462
1603
|
delete require.cache[require.resolve(filename)];
|
|
1604
|
+
}
|
|
1463
1605
|
|
|
1464
|
-
|
|
1606
|
+
if (response.headersSent) {
|
|
1607
|
+
// May be sent by http/2 push
|
|
1608
|
+
return
|
|
1609
|
+
}
|
|
1465
1610
|
fs.readFile(filename, bundleConf.encoding, function onStaticFileRead(err, file) {
|
|
1466
1611
|
if (err) {
|
|
1467
1612
|
throwError(response, 404, 'Page not found: \n' + pathname, next);
|
|
1468
1613
|
return;
|
|
1469
|
-
}
|
|
1614
|
+
}
|
|
1615
|
+
|
|
1616
|
+
if (!response.headersSent) {
|
|
1470
1617
|
|
|
1471
|
-
isBinary
|
|
1618
|
+
isBinary = true;
|
|
1619
|
+
isHandler = false;
|
|
1472
1620
|
|
|
1473
1621
|
try {
|
|
1474
1622
|
contentType = getHead(response, filename);
|
|
@@ -1488,7 +1636,8 @@ function Server(options) {
|
|
|
1488
1636
|
hanlersPath = bundleConf.handlersPath;
|
|
1489
1637
|
|
|
1490
1638
|
if ( new RegExp('^'+ hanlersPath).test(filename) ) {
|
|
1491
|
-
isBinary
|
|
1639
|
+
isBinary = false;
|
|
1640
|
+
isHandler = true;
|
|
1492
1641
|
file = '(gina.ready(function onGinaReady($){\n'+ file + '\n},window["originalContext"]));'
|
|
1493
1642
|
}
|
|
1494
1643
|
}
|
|
@@ -1513,7 +1662,9 @@ function Server(options) {
|
|
|
1513
1662
|
isAvailable: true,
|
|
1514
1663
|
mime: contentType,
|
|
1515
1664
|
url: request.url,
|
|
1516
|
-
filename: filename
|
|
1665
|
+
filename: filename,
|
|
1666
|
+
isBinary: isBinary,
|
|
1667
|
+
isHandler: isHandler
|
|
1517
1668
|
}
|
|
1518
1669
|
}
|
|
1519
1670
|
|
|
@@ -1592,12 +1743,15 @@ function Server(options) {
|
|
|
1592
1743
|
isAvailable: (!/404\.html/.test(filename)) ? true : false,
|
|
1593
1744
|
mime: contentType,
|
|
1594
1745
|
url: request.url,
|
|
1595
|
-
filename: filename
|
|
1746
|
+
filename: filename,
|
|
1747
|
+
isBinary: isBinary,
|
|
1748
|
+
isHandler: isHandler
|
|
1596
1749
|
}
|
|
1597
1750
|
}
|
|
1598
1751
|
|
|
1599
1752
|
if (!fs.existsSync(filename)) return;
|
|
1600
|
-
isBinary
|
|
1753
|
+
isBinary = ( /text\/html/i.test(contentType) ) ? false : true;
|
|
1754
|
+
isHandler = ( new RegExp('^'+ bundleConf.handlersPath).test(filename) ) ? true : false;
|
|
1601
1755
|
if ( isBinary ) {
|
|
1602
1756
|
// override
|
|
1603
1757
|
self._options.template.assets[request.url] = {
|
|
@@ -1605,7 +1759,19 @@ function Server(options) {
|
|
|
1605
1759
|
isAvailable: true,
|
|
1606
1760
|
mime: contentType,
|
|
1607
1761
|
url: request.url,
|
|
1608
|
-
filename: filename
|
|
1762
|
+
filename: filename,
|
|
1763
|
+
isBinary: isBinary,
|
|
1764
|
+
isHandler: isHandler
|
|
1765
|
+
}
|
|
1766
|
+
}
|
|
1767
|
+
|
|
1768
|
+
if ( isHandler ) {
|
|
1769
|
+
// adding handler `gina.ready(...)` wrapper
|
|
1770
|
+
var file = null;
|
|
1771
|
+
if (!self._options.template.assets[request.url].file) {
|
|
1772
|
+
file = fs.readFileSync(filename, bundleConf.encoding).toString();
|
|
1773
|
+
file = '(gina.ready(function onGinaReady($){\n'+ file + '\n},window["originalContext"]));';
|
|
1774
|
+
self._options.template.assets[request.url].file = file;
|
|
1609
1775
|
}
|
|
1610
1776
|
}
|
|
1611
1777
|
self.onHttp2Stream(stream, headers, response);
|
|
@@ -2155,16 +2321,16 @@ function Server(options) {
|
|
|
2155
2321
|
|
|
2156
2322
|
});//EO this.instance
|
|
2157
2323
|
|
|
2158
|
-
|
|
2159
2324
|
self.instance.listen(self.conf[self.appName][self.env].server.port);//By Default 3100
|
|
2160
2325
|
self.instance.timeout = (1000 * 300); // e.g.: 1000x60 => 60 sec
|
|
2161
2326
|
|
|
2327
|
+
|
|
2162
2328
|
self.emit('started', self.conf[self.appName][self.env], true);
|
|
2163
2329
|
}
|
|
2164
2330
|
|
|
2165
2331
|
var processRequestData = function(request, response, next) {
|
|
2166
2332
|
|
|
2167
|
-
var bodyStr = null, obj = null;
|
|
2333
|
+
var bodyStr = null, obj = null, exception = null;
|
|
2168
2334
|
// to compare with /core/controller/controller.js -> getParams()
|
|
2169
2335
|
switch( request.method.toLowerCase() ) {
|
|
2170
2336
|
case 'post':
|
|
@@ -2194,6 +2360,11 @@ function Server(options) {
|
|
|
2194
2360
|
|
|
2195
2361
|
try {
|
|
2196
2362
|
obj = parseBody(bodyStr);
|
|
2363
|
+
if ( !obj) {
|
|
2364
|
+
exception = new Error('Could not convert POST::BODY_STRING to POST::OBJECT. Possible JSON error in `bodyStr`');
|
|
2365
|
+
throwError(response, 500, exception, next);
|
|
2366
|
+
return;
|
|
2367
|
+
}
|
|
2197
2368
|
request.post = obj;
|
|
2198
2369
|
isPostSet = true;
|
|
2199
2370
|
} catch (err) {
|
|
@@ -2226,7 +2397,8 @@ function Server(options) {
|
|
|
2226
2397
|
if (request.body.count() == 0 && typeof(request.query) != 'string' && request.query.count() > 0 ) {
|
|
2227
2398
|
request.body = request.query
|
|
2228
2399
|
}
|
|
2229
|
-
|
|
2400
|
+
// 2023-01-31: fixed `request.body` might not be an `object`
|
|
2401
|
+
bodyStr = ( typeof(request.body) == 'object') ? JSON.stringify(request.body) : request.body;
|
|
2230
2402
|
// false & true case
|
|
2231
2403
|
if ( /(\"false\"|\"true\"|\"on\")/.test(bodyStr) )
|
|
2232
2404
|
bodyStr = bodyStr.replace(/\"false\"/g, false).replace(/\"true\"/g, true).replace(/\"on\"/g, true);
|
|
@@ -2235,7 +2407,7 @@ function Server(options) {
|
|
|
2235
2407
|
}
|
|
2236
2408
|
|
|
2237
2409
|
try {
|
|
2238
|
-
if ( obj.count() > 0 ) {
|
|
2410
|
+
if ( typeof(obj) == 'object' && obj.count() > 0 ) {
|
|
2239
2411
|
// still need this to allow compatibility with express & connect middlewares
|
|
2240
2412
|
request.body = request.post = obj;
|
|
2241
2413
|
}
|
|
@@ -2430,7 +2602,7 @@ function Server(options) {
|
|
|
2430
2602
|
} else {
|
|
2431
2603
|
console.warn('[ '+file+' ] extension: `'+s[2]+'` not supported by gina: `core/mime.types`. Replacing with `plain/text` ')
|
|
2432
2604
|
}
|
|
2433
|
-
return type ||
|
|
2605
|
+
return type || 'plain/text'
|
|
2434
2606
|
} catch (err) {
|
|
2435
2607
|
console.error('Error while trying to getHead('+ file +') extention. Replacing with `plain/text` '+ err.stack);
|
|
2436
2608
|
return 'plain/text'
|
|
@@ -2531,13 +2703,13 @@ function Server(options) {
|
|
|
2531
2703
|
}
|
|
2532
2704
|
|
|
2533
2705
|
expressMiddlewares[nextMiddleware._index](nextMiddleware._request, nextMiddleware._response, function onNextMiddleware(err, request, response) {
|
|
2534
|
-
++nextMiddleware._index;
|
|
2535
2706
|
|
|
2536
2707
|
if (err) {
|
|
2537
2708
|
throwError(nextMiddleware._response, 500, (err.stack||err.message||err), nextMiddleware._next, nextMiddleware._nextAction);
|
|
2538
2709
|
return;
|
|
2539
2710
|
}
|
|
2540
2711
|
|
|
2712
|
+
++nextMiddleware._index;
|
|
2541
2713
|
if (request)
|
|
2542
2714
|
nextMiddleware._request = request;
|
|
2543
2715
|
|
|
@@ -2632,7 +2804,7 @@ function Server(options) {
|
|
|
2632
2804
|
, wroot = null
|
|
2633
2805
|
;
|
|
2634
2806
|
|
|
2635
|
-
//matched =
|
|
2807
|
+
//matched = routingLib.getRouteByUrl(req.url, bundle, (req.method||req[':method']), req);
|
|
2636
2808
|
|
|
2637
2809
|
req = checkPreflightRequest(req);
|
|
2638
2810
|
var params = {}
|
|
@@ -2657,9 +2829,10 @@ function Server(options) {
|
|
|
2657
2829
|
}
|
|
2658
2830
|
var isMethodAllowed = null, hostname = null;
|
|
2659
2831
|
out:
|
|
2660
|
-
for (
|
|
2661
|
-
if (typeof(routing[name]['param']) == 'undefined')
|
|
2832
|
+
for (let name in routing) {
|
|
2833
|
+
if ( typeof(routing[name]['param']) == 'undefined' ) {
|
|
2662
2834
|
break;
|
|
2835
|
+
}
|
|
2663
2836
|
|
|
2664
2837
|
// updating hostname
|
|
2665
2838
|
// if (
|
|
@@ -2698,7 +2871,7 @@ function Server(options) {
|
|
|
2698
2871
|
|
|
2699
2872
|
//Parsing for the right url.
|
|
2700
2873
|
try {
|
|
2701
|
-
isRoute = await
|
|
2874
|
+
isRoute = await routingLib.compareUrls(params, routing[name].url, req, res, next);
|
|
2702
2875
|
} catch (err) {
|
|
2703
2876
|
var msg = 'Internal server error.\nRule [ '+name+' ] needs your attention.\n';
|
|
2704
2877
|
// TODO - Refactor `ApiError`to handle the following param
|
|
@@ -2818,7 +2991,7 @@ function Server(options) {
|
|
|
2818
2991
|
}
|
|
2819
2992
|
|
|
2820
2993
|
if (!res.headersSent) {
|
|
2821
|
-
res.headersSent = true;
|
|
2994
|
+
// res.headersSent = true;
|
|
2822
2995
|
local.request = checkPreflightRequest(local.request);
|
|
2823
2996
|
// updated filter on controller.js : 2020/09/25
|
|
2824
2997
|
//if (isXMLRequest || !withViews || !isUsingTemplate ) {
|
|
@@ -2937,7 +3110,7 @@ function Server(options) {
|
|
|
2937
3110
|
}
|
|
2938
3111
|
|
|
2939
3112
|
var eRule = 'custom-error-page@'+ self.appName;
|
|
2940
|
-
var routeObj =
|
|
3113
|
+
var routeObj = routingLib.getRoute(eRule);
|
|
2941
3114
|
routeObj.rule = eRule;
|
|
2942
3115
|
routeObj.url = url;
|
|
2943
3116
|
routeObj.param.title = ( typeof(eData.title) != 'undefined' ) ? eData.title : 'Error ' + eData.status;
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -6,19 +6,19 @@
|
|
|
6
6
|
* Default is `true`: set to false if you have describe a redirection rule from your `routing.json`
|
|
7
7
|
*/
|
|
8
8
|
// "webrootAutoredirect": false,
|
|
9
|
-
|
|
9
|
+
|
|
10
10
|
/**
|
|
11
11
|
* `template` settings
|
|
12
12
|
* Default is `false`: will automatically be set to `true` when you add a view/template (`false` is right for APIs only)
|
|
13
13
|
*/
|
|
14
|
-
// "template": false
|
|
15
|
-
|
|
14
|
+
// "template": false,
|
|
15
|
+
|
|
16
16
|
/**
|
|
17
17
|
* `response` settings
|
|
18
18
|
* This section is mostly used to setup CORS
|
|
19
19
|
*/
|
|
20
20
|
// "response": {
|
|
21
|
-
|
|
21
|
+
// // CORS settings sample
|
|
22
22
|
// "header": {
|
|
23
23
|
// "access-control-allow-origin": "{bundle}@{project}, https://checkout.stripe.com",
|
|
24
24
|
// "access-control-allow-headers": "X-Requested-With", // To allow AJAX request
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
// common definitions : will apply for all templates
|
|
4
4
|
"_common": {
|
|
5
5
|
// by default, or it will load `layout.html` if exists or `nolayout.html`(from the framework assets)
|
|
6
|
-
"layout": "{templatesPath}/html/
|
|
6
|
+
"layout": "{templatesPath}/html/layouts/main.html",
|
|
7
7
|
// means that the file name of the template is the same as the route name
|
|
8
8
|
// You can override it through the routing.json
|
|
9
9
|
"routeNameAsFilenameEnabled": true,
|
|
@@ -26,16 +26,16 @@
|
|
|
26
26
|
|
|
27
27
|
"home": {
|
|
28
28
|
// If you want to exclude all global css
|
|
29
|
-
//"stylesheetsExcluded": "*",
|
|
29
|
+
//"stylesheetsExcluded": "*",
|
|
30
30
|
// If you also want to get rid of `gina` definitions, use "**" while excluding
|
|
31
|
-
|
|
31
|
+
|
|
32
32
|
// local css - Will fetch from {bundle}/public
|
|
33
33
|
"stylesheets": [
|
|
34
34
|
{
|
|
35
35
|
"url": "/css/home.css"
|
|
36
36
|
}
|
|
37
37
|
]
|
|
38
|
-
|
|
38
|
+
|
|
39
39
|
// If you want to exclude all global js
|
|
40
40
|
//"javascriptsExcluded": "*"
|
|
41
41
|
}
|
|
File without changes
|