gina 0.1.6-alpha.9 → 0.1.6-alpha.91
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/LICENSE +1 -1
- package/README-4Contributors.md +14 -8
- package/README.md +4 -4
- package/bin/cli +14 -0
- package/bin/gina +29 -1
- package/framework/{v0.1.6-alpha.9/lib/inherits → v0.1.6-alpha.91}/LICENSE +1 -1
- package/framework/v0.1.6-alpha.91/VERSION +1 -0
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/asset/plugin/README.md +1 -0
- package/framework/v0.1.6-alpha.91/core/asset/plugin/dist/vendor/gina/css/gina.min.css.map +1 -0
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/asset/plugin/dist/vendor/gina/html/toolbar.html +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/asset/plugin/dist/vendor/gina/js/gina.js +582 -217
- package/framework/v0.1.6-alpha.91/core/asset/plugin/dist/vendor/gina/js/gina.min.js +777 -0
- package/framework/v0.1.6-alpha.91/core/asset/plugin/dist/vendor/gina/js/gina.min.js.map +8 -0
- package/framework/v0.1.6-alpha.91/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +8 -0
- package/framework/v0.1.6-alpha.91/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.map +8 -0
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/config.js +157 -76
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/connectors/couchbase/index.js +92 -22
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/connectors/couchbase/lib/connector.v4.js +28 -22
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/controller/controller.js +431 -111
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/controller/index.js +2 -2
- package/framework/v0.1.6-alpha.91/core/deps/busboy-1.6.0/.github/workflows/ci.yml +24 -0
- package/framework/v0.1.6-alpha.91/core/deps/busboy-1.6.0/.github/workflows/lint.yml +23 -0
- package/framework/v0.1.6-alpha.91/core/deps/busboy-1.6.0/README.md +191 -0
- package/framework/v0.1.6-alpha.91/core/deps/busboy-1.6.0/bench/bench-multipart-fields-100mb-big.js +149 -0
- package/framework/v0.1.6-alpha.91/core/deps/busboy-1.6.0/bench/bench-multipart-fields-100mb-small.js +143 -0
- package/framework/v0.1.6-alpha.91/core/deps/busboy-1.6.0/bench/bench-multipart-files-100mb-big.js +154 -0
- package/framework/v0.1.6-alpha.91/core/deps/busboy-1.6.0/bench/bench-multipart-files-100mb-small.js +148 -0
- package/framework/v0.1.6-alpha.91/core/deps/busboy-1.6.0/bench/bench-urlencoded-fields-100pairs-small.js +101 -0
- package/framework/v0.1.6-alpha.91/core/deps/busboy-1.6.0/bench/bench-urlencoded-fields-900pairs-small-alt.js +84 -0
- package/framework/v0.1.6-alpha.91/core/deps/busboy-1.6.0/lib/index.js +57 -0
- package/framework/v0.1.6-alpha.91/core/deps/busboy-1.6.0/lib/types/multipart.js +680 -0
- package/framework/v0.1.6-alpha.91/core/deps/busboy-1.6.0/lib/types/urlencoded.js +350 -0
- package/framework/v0.1.6-alpha.91/core/deps/busboy-1.6.0/lib/utils.js +596 -0
- package/framework/v0.1.6-alpha.91/core/deps/busboy-1.6.0/package.json +22 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/.travis.yml +4 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/LICENSE +21 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/bool.js +10 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/boolean_double.js +7 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/boolean_single.js +7 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/default_hash.js +8 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/default_singles.js +7 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/divide.js +8 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/line_count.js +20 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/line_count_options.js +29 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/line_count_wrap.js +29 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/nonopt.js +4 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/reflect.js +2 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/short.js +3 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/string.js +11 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/usage-options.js +19 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/example/xup.js +10 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/index.js +343 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/package.json +31 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/package.json.dist +39 -0
- package/framework/v0.1.6-alpha.91/core/deps/optimist-0.6.1/readme.markdown +513 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/HISTORY.md +498 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/LICENSE +7 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/README.md +88 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/bin/swig.js +161 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/bin/swig.js.dist +161 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/dist/swig.min.js +7 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/dist/swig.min.js.map +8 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/index.js +1 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/dateformatter.js +198 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/filters.js +630 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/lexer.js +306 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/loaders/filesystem.js +59 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/loaders/index.js +53 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/loaders/memory.js +63 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/parser.js +744 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/swig.js +740 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/autoescape.js +37 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/block.js +25 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/else.js +25 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/elseif.js +28 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/extends.js +19 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/filter.js +68 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/for.js +130 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/if.js +86 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/import.js +91 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/include.js +100 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/index.js +16 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/macro.js +79 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/parent.js +51 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/raw.js +23 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/set.js +109 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/tags/spaceless.js +42 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/lib/utils.js +184 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/package.json +57 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-1.4.2/package.json.dist +61 -0
- package/framework/v0.1.6-alpha.91/core/deps/swig-client/swig.js +5031 -0
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/dev/index.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/dev/lib/factory.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/gna.js +101 -22
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/locales/index.js +3 -3
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/locales/src/make.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/mime.types +1 -0
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/model/entity.js +5 -5
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/model/index.js +30 -26
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/model/template/entityFactory.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/model/template/index.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/index.js +3 -3
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/file/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/intl/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/storage/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/validator/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/validator/src/form-validator.js +39 -27
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/validator/src/main.js +360 -85
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/router.js +92 -47
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/server.isaac.js +96 -10
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/server.js +283 -129
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/status.codes +1 -11
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle/controllers/setup.js +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/command/gina.tpl +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/conf/env.json +2 -0
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/conf/templates.json +4 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/console.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/context.js +29 -12
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/data/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/data/src/main.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/dateFormat.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/index.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/json/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/json/src/main.js +6 -4
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/path.js +31 -15
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/plugins/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/plugins/src/api-error.js +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/plugins/src/main.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/text.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/archiver/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/archiver/src/main.js +11 -11
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/bundle/add.js +2 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/bundle/start.js +21 -8
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/env/get.js +1 -1
- package/framework/v0.1.6-alpha.91/lib/cmd/env/help.js +30 -0
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/build.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/init.js +18 -0
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/link-node-modules.js +2 -3
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/link.js +1 -0
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/tail.js +28 -11
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/version.js +15 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/helper.js +6 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/index.js +1 -1
- package/framework/v0.1.6-alpha.91/lib/cmd/minion/help.txt +18 -0
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/add.js +3 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/build.js +4 -4
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/list.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/protocol/list.js +71 -50
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/collection/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/collection/src/main.js +20 -14
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/config.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cron/package.json +2 -2
- package/framework/v0.1.6-alpha.91/lib/domain/dist/2025-03-14_13-41-20_UTC.dat +15754 -0
- package/framework/v0.1.6-alpha.91/lib/domain/dist/public_suffix_list.dat +15754 -0
- package/framework/v0.1.6-alpha.91/lib/domain/exemples/backend.js +12 -0
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/domain/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/domain/src/main.js +20 -6
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/generator/index.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/index.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91/lib/inherits}/LICENSE +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/inherits/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/inherits/src/main.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/logger/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/logger/src/containers/mq/listener.js +10 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/logger/src/helper.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/logger/src/main.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/math/index.js +1 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/merge/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/model.js +3 -3
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/proc.js +9 -1
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/routing/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/routing/src/main.js +72 -25
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/session-store.js +3 -3
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/swig-filters/package.json +2 -2
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/swig-filters/src/main.js +70 -15
- package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/validator.js +2 -2
- package/framework/v0.1.6-alpha.91/package.json +11 -0
- package/package.json +3 -3
- package/resources/package.json.template +1 -1
- package/script/post_install.js +1 -1
- package/script/pre_install.js +1 -1
- package/utils/helper.js +24 -0
- package/framework/v0.1.6-alpha.9/VERSION +0 -1
- package/framework/v0.1.6-alpha.9/core/asset/plugin/dist/vendor/gina/css/gina.min.css.map +0 -1
- package/framework/v0.1.6-alpha.9/core/asset/plugin/dist/vendor/gina/js/gina.min.js +0 -766
- package/framework/v0.1.6-alpha.9/core/asset/plugin/dist/vendor/gina/js/gina.min.js.map +0 -8
- package/framework/v0.1.6-alpha.9/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js +0 -7
- package/framework/v0.1.6-alpha.9/core/asset/plugin/dist/vendor/gina/js/gina.onload.min.js.map +0 -8
- package/framework/v0.1.6-alpha.9/core/deps/busboy/.travis.yml +0 -17
- package/framework/v0.1.6-alpha.9/core/deps/busboy/README.md +0 -225
- package/framework/v0.1.6-alpha.9/core/deps/busboy/deps/encoding/encoding-indexes.js +0 -73
- package/framework/v0.1.6-alpha.9/core/deps/busboy/deps/encoding/encoding.js +0 -2391
- package/framework/v0.1.6-alpha.9/core/deps/busboy/lib/main.js +0 -89
- package/framework/v0.1.6-alpha.9/core/deps/busboy/lib/types/multipart.js +0 -328
- package/framework/v0.1.6-alpha.9/core/deps/busboy/lib/types/urlencoded.js +0 -214
- package/framework/v0.1.6-alpha.9/core/deps/busboy/lib/utils.js +0 -191
- package/framework/v0.1.6-alpha.9/core/deps/busboy/package.json +0 -69
- package/framework/v0.1.6-alpha.9/lib/domain/dist/public_suffix_list.dat +0 -14186
- package/framework/v0.1.6-alpha.9/lib/domain/exemples/backend.js +0 -0
- package/framework/v0.1.6-alpha.9/package.json +0 -14
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/AUTHORS +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/asset/html/nolayout.html +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/asset/html/static.html +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/asset/img/android-chrome-192x192.png +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/asset/img/android-chrome-512x512.png +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/asset/img/apple-touch-icon.png +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/asset/img/favicon-16x16.png +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/asset/img/favicon-32x32.png +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/asset/img/favicon.ico +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/asset/plugin/dist/vendor/gina/css/gina.min.css +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/asset/plugin/uuid.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/connectors/couchbase/lib/connector.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/connectors/couchbase/lib/connector.v2.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/connectors/couchbase/lib/connector.v3.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/connectors/couchbase/lib/n1ql.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/connectors/couchbase/lib/session-store.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/connectors/couchbase/lib/session-store.v2.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/connectors/couchbase/lib/session-store.v3.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/connectors/couchbase/lib/session-store.v4.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/controller/controller.framework.js +0 -0
- /package/framework/{v0.1.6-alpha.9/core/deps/busboy → v0.1.6-alpha.91/core/deps/busboy-1.6.0}/LICENSE +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/deps/swig-client/swig-2.0.0.min.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/dev/lib/class.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/dev/lib/tools.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/locales/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/locales/currency.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/locales/dist/language/en.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/locales/dist/language/fr.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/locales/dist/region/en.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/locales/dist/region/fr.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/locales/src/resources/currency.csv +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/locales/src/resources/region.csv +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/locales/src/resources/region.mapping.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/file/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/file/build.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/intl/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/intl/build.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/intl/src/main.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/storage/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/storage/build.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/storage/src/main.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/validator/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/plugins/lib/validator/build.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/server.express.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/_gitignore +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle/config/app.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle/config/routing.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle/config/settings.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle/config/settings.server.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle/config/templates.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle/controllers/controller.content.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle/controllers/controller.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle/index.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle_namespace/controllers/controller.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle_public/css/default.css +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle_public/css/vendor/readme.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle_public/favicon.ico +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle_public/js/vendor/readme.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle_public/readme.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle_templates/handlers/main.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle_templates/html/content/homepage.html +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle_templates/html/includes/error-msg-noscript.html +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle_templates/html/includes/error-msg-outdated-browser.html +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/boilerplate/bundle_templates/html/layouts/main.html +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/command/gina.bat.tpl +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/conf/manifest.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/conf/package.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/conf/settings.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/conf/statics.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/error/client/json/401.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/error/client/json/403.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/error/client/json/404.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/error/server/html/50x.html +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/error/server/json/500.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/error/server/json/503.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/template/extensions/logger/config.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/data/LICENSE +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/data/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/json/LICENSE +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/json/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/plugins/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/prototypes.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/helpers/task.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/archiver/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/archiver/build.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/archiver/src/dep/jszip.min.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/aliases.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/bundle/arguments.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/bundle/copy.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/bundle/cp.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/bundle/help.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/bundle/help.txt +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/bundle/list.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/bundle/remove.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/bundle/rename.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/bundle/restart.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/bundle/rm.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/bundle/status.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/bundle/stop.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/env/add.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/env/help.txt +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/env/link-dev.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/env/list.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/env/remove.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/env/rm.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/env/set.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/env/unset.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/env/use.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/dot.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/get.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/help.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/help.txt +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/msg.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/open.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/restart.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/set.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/start.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/status.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/stop.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/framework/update.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/gina-dev.1.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/gina-framework.1.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/gina.1.md +0 -0
- /package/framework/{v0.1.6-alpha.9/lib/cmd/env → v0.1.6-alpha.91/lib/cmd/minion}/help.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/msg.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/port/help.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/port/help.txt +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/port/inc/scan.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/port/list.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/port/reset.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/port/set.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/arguments.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/help.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/help.txt +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/import.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/move.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/remove.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/rename.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/restart.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/rm.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/start.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/status.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/project/stop.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/protocol/help.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/protocol/help.txt +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/protocol/set.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/scope/add.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/scope/help.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/scope/help.txt +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/scope/link-local.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/scope/link-production.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/scope/list.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/scope/remove.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/scope/rm.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/scope/use.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cmd/view/add.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/collection/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/collection/build.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cron/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/cron/src/main.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/domain/LICENSE +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/domain/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/domain/exemples/frontend.html +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/inherits/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/inherits/example/inheriting_eventemitter.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/inherits/example/protected_inheritance.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/inherits/example/simple_inheritance.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/inherits/example/super_attribute_overridden_by_child_on_init.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/logger/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/logger/src/containers/default/index.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/logger/src/containers/file/index.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/logger/src/containers/file/lib/logrotator/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/logger/src/containers/file/lib/logrotator/index.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/logger/src/containers/mq/index.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/logger/src/containers/mq/speaker.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/merge/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/merge/example/merge.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/merge/example/merge_2_literal objects.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/merge/example/merge_and_preserve_first.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/merge/src/main.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/routing/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/routing/build.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/shell.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/swig-filters/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/url/README.md +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/url/index.js +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/url/mocks.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/url/routing.json +0 -0
- /package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/lib/url/test.js +0 -0
package/framework/{v0.1.6-alpha.9 → v0.1.6-alpha.91}/core/asset/plugin/dist/vendor/gina/js/gina.js
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** vim: et:ts=4:sw=4:sts=4
|
|
2
|
-
* @license RequireJS 2.3.
|
|
2
|
+
* @license RequireJS 2.3.7 Copyright jQuery Foundation and other contributors.
|
|
3
3
|
* Released under MIT license, https://github.com/requirejs/requirejs/blob/master/LICENSE
|
|
4
4
|
*/
|
|
5
5
|
//Not using strict: uneven strict support in browsers, #392, and causes
|
|
@@ -11,7 +11,7 @@ var requirejs, require, define;
|
|
|
11
11
|
(function (global, setTimeout) {
|
|
12
12
|
var req, s, head, baseElement, dataMain, src,
|
|
13
13
|
interactiveScript, currentlyAddingScript, mainScript, subPath,
|
|
14
|
-
version = '2.3.
|
|
14
|
+
version = '2.3.7',
|
|
15
15
|
commentRegExp = /\/\*[\s\S]*?\*\/|([^:"'=]|^)\/\/.*$/mg,
|
|
16
16
|
cjsRequireRegExp = /[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,
|
|
17
17
|
jsSuffixRegExp = /\.js$/,
|
|
@@ -33,7 +33,8 @@ var requirejs, require, define;
|
|
|
33
33
|
contexts = {},
|
|
34
34
|
cfg = {},
|
|
35
35
|
globalDefQueue = [],
|
|
36
|
-
useInteractive = false
|
|
36
|
+
useInteractive = false,
|
|
37
|
+
disallowedProps = ['__proto__', 'constructor'];
|
|
37
38
|
|
|
38
39
|
//Could match something like ')//comment', do not lose the prefix to comment.
|
|
39
40
|
function commentReplace(match, singlePrefix) {
|
|
@@ -94,7 +95,7 @@ var requirejs, require, define;
|
|
|
94
95
|
function eachProp(obj, func) {
|
|
95
96
|
var prop;
|
|
96
97
|
for (prop in obj) {
|
|
97
|
-
if (hasProp(obj, prop)) {
|
|
98
|
+
if (hasProp(obj, prop) && disallowedProps.indexOf(prop) == -1) {
|
|
98
99
|
if (func(obj[prop], prop)) {
|
|
99
100
|
break;
|
|
100
101
|
}
|
|
@@ -3108,7 +3109,7 @@ function handleXhr(xhr, $el, options, require) {
|
|
|
3108
3109
|
var url = window.URL.createObjectURL(blob);
|
|
3109
3110
|
a.href = url;
|
|
3110
3111
|
var contentDisposition = xhr.getResponseHeader('Content-Disposition');
|
|
3111
|
-
a.download = contentDisposition.match('\=(.*)')[0].
|
|
3112
|
+
a.download = contentDisposition.match('\=(.*)')[0].substring(1);
|
|
3112
3113
|
//programatically click the link to trigger the download
|
|
3113
3114
|
a.click();
|
|
3114
3115
|
//release the reference to the file by revoking the Object URL
|
|
@@ -3848,7 +3849,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
3848
3849
|
;
|
|
3849
3850
|
/*
|
|
3850
3851
|
* This file is part of the gina package.
|
|
3851
|
-
* Copyright (c) 2009-
|
|
3852
|
+
* Copyright (c) 2009-2025 Rhinostone <contact@gina.io>
|
|
3852
3853
|
*
|
|
3853
3854
|
* For the full copyright and license information, please view the LICENSE
|
|
3854
3855
|
* file that was distributed with this source code.
|
|
@@ -4629,10 +4630,9 @@ function Collection(content, options) {
|
|
|
4629
4630
|
*/
|
|
4630
4631
|
var search = function(filter, field, _content, matched, searchOptionRules) {
|
|
4631
4632
|
var reValidCount = null, searchOptCount = null;
|
|
4632
|
-
|
|
4633
|
-
|
|
4633
|
+
// null case
|
|
4634
|
+
if (filter === null && _content === null) {
|
|
4634
4635
|
++matched;
|
|
4635
|
-
|
|
4636
4636
|
} else if (
|
|
4637
4637
|
filter
|
|
4638
4638
|
&& keywords.indexOf(localeLowerCase) > -1
|
|
@@ -4698,7 +4698,6 @@ function Collection(content, options) {
|
|
|
4698
4698
|
&& searchOptions
|
|
4699
4699
|
&& typeof(searchOptions[field]) != 'undefined'
|
|
4700
4700
|
) {
|
|
4701
|
-
|
|
4702
4701
|
reValidCount = 0;
|
|
4703
4702
|
searchOptCount = searchOptions[field].count();
|
|
4704
4703
|
for ( var rule in searchOptions[field]) {
|
|
@@ -4797,7 +4796,7 @@ function Collection(content, options) {
|
|
|
4797
4796
|
|
|
4798
4797
|
field = arr[1];
|
|
4799
4798
|
if (/^\./.test(field) )
|
|
4800
|
-
field = field.
|
|
4799
|
+
field = field.substring(1);
|
|
4801
4800
|
|
|
4802
4801
|
var subMatched = 0;
|
|
4803
4802
|
if (collection) {
|
|
@@ -5124,15 +5123,15 @@ function Collection(content, options) {
|
|
|
5124
5123
|
}
|
|
5125
5124
|
|
|
5126
5125
|
// fast search with key
|
|
5127
|
-
var r
|
|
5128
|
-
, rLen
|
|
5129
|
-
, c
|
|
5130
|
-
, cLen
|
|
5131
|
-
, f
|
|
5132
|
-
, fLen
|
|
5133
|
-
, keyLen
|
|
5134
|
-
, matched
|
|
5135
|
-
, fullFiltersMatched
|
|
5126
|
+
var r = 0
|
|
5127
|
+
, rLen = foundResults.length
|
|
5128
|
+
, c = 0
|
|
5129
|
+
, cLen = currentResult.length
|
|
5130
|
+
, f = 0
|
|
5131
|
+
, fLen = filters.count()
|
|
5132
|
+
, keyLen = null
|
|
5133
|
+
, matched = 0
|
|
5134
|
+
, fullFiltersMatched = 0
|
|
5136
5135
|
;
|
|
5137
5136
|
if ( uuidSearchModeEnabled && typeof(currentResult[c]) != 'undefined' && currentResult[c].hasOwnProperty(key) ) {
|
|
5138
5137
|
// for every single result found
|
|
@@ -5593,6 +5592,13 @@ function Collection(content, options) {
|
|
|
5593
5592
|
|
|
5594
5593
|
|
|
5595
5594
|
if ( typeof(a) == 'string' && a != '' || typeof(b) == 'string' ) {
|
|
5595
|
+
// Fixed on 2025-03-08: allowed to compare with one of the fields being NULL or not defined
|
|
5596
|
+
if ( typeof(a) == 'undefined' || a == null) {
|
|
5597
|
+
a = ''; // cast to string
|
|
5598
|
+
}
|
|
5599
|
+
if ( typeof(b) == 'undefined' || b == null) {
|
|
5600
|
+
b = ''; // cast to string
|
|
5601
|
+
}
|
|
5596
5602
|
|
|
5597
5603
|
if ( typeof(a) == 'number' ) {
|
|
5598
5604
|
a = ''+a; // cast to string
|
|
@@ -5601,6 +5607,7 @@ function Collection(content, options) {
|
|
|
5601
5607
|
b = ''+b; // cast to string
|
|
5602
5608
|
}
|
|
5603
5609
|
|
|
5610
|
+
|
|
5604
5611
|
return a.localeCompare(b, undefined, {sensitivity: 'case', caseFirst: 'upper'})
|
|
5605
5612
|
}
|
|
5606
5613
|
|
|
@@ -6230,11 +6237,12 @@ function FormValidatorUtil(data, $fields, xhrOptions, fieldsSet) {
|
|
|
6230
6237
|
// system error
|
|
6231
6238
|
systemError = result.error;
|
|
6232
6239
|
}
|
|
6233
|
-
// Fixed on 2023-01-10
|
|
6240
|
+
// Fixed added on 2023-01-10
|
|
6234
6241
|
// We want `local.errorLabels['query']` before the generic|user defined `rule` error
|
|
6235
6242
|
var optionError = ( typeof(options['error']) != 'undefined' ) ? options['error'] : null;
|
|
6236
6243
|
errors['query'] = replace(systemError || _this['error'] || optionError || local.errorLabels['query'], _this);
|
|
6237
|
-
|
|
6244
|
+
|
|
6245
|
+
console.debug('[1] query error detected !! ', result, errorFields, errors['query']);
|
|
6238
6246
|
}
|
|
6239
6247
|
|
|
6240
6248
|
if ( !errors['query'] && _this.value == '' ) {
|
|
@@ -6304,6 +6312,7 @@ function FormValidatorUtil(data, $fields, xhrOptions, fieldsSet) {
|
|
|
6304
6312
|
|
|
6305
6313
|
var id = _this.target.id || _this.target.getAttribute('id');
|
|
6306
6314
|
console.debug('prematurely completed event `'+ 'asyncCompleted.' + id +'`');
|
|
6315
|
+
|
|
6307
6316
|
return triggerEvent(gina, _this.target, 'asyncCompleted.' + id, self[_this['name']]);
|
|
6308
6317
|
} // EO onResult
|
|
6309
6318
|
|
|
@@ -6526,7 +6535,7 @@ function FormValidatorUtil(data, $fields, xhrOptions, fieldsSet) {
|
|
|
6526
6535
|
//instance: self.serverInstance,
|
|
6527
6536
|
//template: (routeHasViews) ? conf.content.templates[templateName] : undefined,
|
|
6528
6537
|
//isUsingTemplate: local.isUsingTemplate,
|
|
6529
|
-
|
|
6538
|
+
isCacheless: conf.isCacheless //,
|
|
6530
6539
|
//path: params.param.path || null, // user custom path : namespace should be ignored | left blank
|
|
6531
6540
|
//assets: {}
|
|
6532
6541
|
};
|
|
@@ -6699,7 +6708,7 @@ function FormValidatorUtil(data, $fields, xhrOptions, fieldsSet) {
|
|
|
6699
6708
|
isValid = condition;
|
|
6700
6709
|
} else if (!isValid) {
|
|
6701
6710
|
var re = null, flags = null;
|
|
6702
|
-
// Fixed on 2021-03-13: $variable now replaced with real value beafore validation
|
|
6711
|
+
// Fixed added on 2021-03-13: $variable now replaced with real value beafore validation
|
|
6703
6712
|
if ( /[\!\=>\>\<a-z 0-9]+/i.test(condition) ) {
|
|
6704
6713
|
var variables = condition.match(/\${0}[-_,.\[\]a-z0-9]+/ig); // without space(s)
|
|
6705
6714
|
if (variables && variables.length > 0) {
|
|
@@ -7075,24 +7084,26 @@ function FormValidatorUtil(data, $fields, xhrOptions, fieldsSet) {
|
|
|
7075
7084
|
|
|
7076
7085
|
|
|
7077
7086
|
self[el]['toFloat'] = function(decimals) {
|
|
7078
|
-
|
|
7079
|
-
|
|
7080
|
-
|
|
7081
|
-
|
|
7082
|
-
|
|
7083
|
-
|
|
7084
|
-
|
|
7085
|
-
|
|
7086
|
-
|
|
7087
|
-
|
|
7088
|
-
|
|
7089
|
-
}
|
|
7090
|
-
|
|
7087
|
+
// Fixed on 2025-03-12
|
|
7088
|
+
// In case we are dealing with a filtered value (swig::formatNumber())
|
|
7089
|
+
var val = document.getElementById(this.target.getAttribute('id')).value || this.value
|
|
7090
|
+
isFloatingWithCommas = false
|
|
7091
|
+
;
|
|
7092
|
+
if ( typeof(val) == 'string' ) {
|
|
7093
|
+
val = val.replace(/\s+/g, '');
|
|
7094
|
+
// Fixed on 2025-03-12
|
|
7095
|
+
// thousand separator ?
|
|
7096
|
+
if ( /\,/.test(val) && /\./.test(val) ) {
|
|
7097
|
+
val = val.replace(/\,/g,'');
|
|
7098
|
+
}
|
|
7099
|
+
else if ( /\,/.test(val) ) {
|
|
7100
|
+
val = val.replace(/\,/g,'.');
|
|
7101
|
+
isFloatingWithCommas = true;
|
|
7091
7102
|
}
|
|
7092
7103
|
}
|
|
7093
7104
|
|
|
7094
|
-
|
|
7095
|
-
|
|
7105
|
+
local.data[this.name] = val;
|
|
7106
|
+
var errors = self[this['name']]['errors'] || {}
|
|
7096
7107
|
, isValid = true
|
|
7097
7108
|
;
|
|
7098
7109
|
|
|
@@ -7107,32 +7118,40 @@ function FormValidatorUtil(data, $fields, xhrOptions, fieldsSet) {
|
|
|
7107
7118
|
} else {
|
|
7108
7119
|
if ( this['isNumber']().valid ) {
|
|
7109
7120
|
try {
|
|
7110
|
-
|
|
7111
7121
|
if ( !Number.isFinite(val) ) {
|
|
7112
|
-
|
|
7122
|
+
// Number <> number
|
|
7123
|
+
val = new Number(parseFloat(val.match(/[0-9.,]+/g).join('').replace(/,/, '.')));
|
|
7113
7124
|
}
|
|
7114
|
-
if (isGFFCtx)
|
|
7115
|
-
this.target.setAttribute('value', val);
|
|
7116
7125
|
} catch(err) {
|
|
7117
7126
|
isValid = false;
|
|
7118
|
-
errors['toFloat'] = replace(this.error ||
|
|
7127
|
+
errors['toFloat'] = replace(this.error || local.errorLabels['toFloat'], this);
|
|
7119
7128
|
this.valid = false;
|
|
7120
7129
|
if ( errors.count() > 0 )
|
|
7121
7130
|
this['errors'] = errors;
|
|
7122
7131
|
}
|
|
7123
7132
|
} else {
|
|
7124
7133
|
isValid = false;
|
|
7125
|
-
errors['toFloat'] = replace(this.error ||
|
|
7134
|
+
errors['toFloat'] = replace(this.error || local.errorLabels['toFloatNAN'], this)
|
|
7126
7135
|
}
|
|
7127
7136
|
}
|
|
7128
7137
|
|
|
7129
7138
|
if (this['decimals'] && val && !errors['toFloat']) {
|
|
7130
|
-
|
|
7139
|
+
val = parseFloat(val.toFixed(this['decimals']));
|
|
7140
|
+
}
|
|
7141
|
+
|
|
7142
|
+
this.value = local.data[this.name] = val;
|
|
7143
|
+
if (isGFFCtx) {
|
|
7144
|
+
// restore original input format for display
|
|
7145
|
+
if (isFloatingWithCommas) {
|
|
7146
|
+
val = (''+val).replace(/\./g,',');
|
|
7147
|
+
}
|
|
7148
|
+
this.target.setAttribute('value', val);
|
|
7131
7149
|
}
|
|
7132
7150
|
|
|
7133
7151
|
this.valid = isValid;
|
|
7134
|
-
if ( errors.count() > 0 )
|
|
7152
|
+
if ( errors.count() > 0 ) {
|
|
7135
7153
|
this['errors'] = errors;
|
|
7154
|
+
}
|
|
7136
7155
|
|
|
7137
7156
|
return self[this.name]
|
|
7138
7157
|
}
|
|
@@ -7711,7 +7730,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
7711
7730
|
};
|
|
7712
7731
|
/*
|
|
7713
7732
|
* This file is part of the gina package.
|
|
7714
|
-
* Copyright (c) 2009-
|
|
7733
|
+
* Copyright (c) 2009-2025 Rhinostone <contact@gina.io>
|
|
7715
7734
|
*
|
|
7716
7735
|
* For the full copyright and license information, please view the LICENSE
|
|
7717
7736
|
* file that was distributed with this source code.
|
|
@@ -7727,7 +7746,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
7727
7746
|
|
|
7728
7747
|
function Routing() {
|
|
7729
7748
|
|
|
7730
|
-
var isGFFCtx = ((typeof (module) !== 'undefined') && module.exports) ? false :
|
|
7749
|
+
var isGFFCtx = ((typeof (module) !== 'undefined') && module.exports) ? false : true;
|
|
7731
7750
|
var self = {
|
|
7732
7751
|
allowedMethods: ['get', 'post', 'put', 'delete'],
|
|
7733
7752
|
reservedParams: ['controle', 'file','title', 'namespace', 'path'],
|
|
@@ -7782,7 +7801,7 @@ function Routing() {
|
|
|
7782
7801
|
urlProps.hostname = config.hostname;
|
|
7783
7802
|
if ( typeof(bundle) != 'undefined' ) {
|
|
7784
7803
|
// get from webroot
|
|
7785
|
-
_route =
|
|
7804
|
+
_route = this.getRoute('webroot@'+ bundle);
|
|
7786
7805
|
urlProps.hostname = _route.hostname;
|
|
7787
7806
|
urlProps.host = _route.host;
|
|
7788
7807
|
urlProps.webroot = _route.webroot;
|
|
@@ -7883,9 +7902,11 @@ function Routing() {
|
|
|
7883
7902
|
return foundRoute;
|
|
7884
7903
|
}
|
|
7885
7904
|
|
|
7905
|
+
|
|
7886
7906
|
return await parseRouting(params, url, request, response, next);
|
|
7887
7907
|
};
|
|
7888
7908
|
|
|
7909
|
+
|
|
7889
7910
|
/**
|
|
7890
7911
|
* Check if rule has params
|
|
7891
7912
|
*
|
|
@@ -7969,13 +7990,13 @@ function Routing() {
|
|
|
7969
7990
|
++score;
|
|
7970
7991
|
continue;
|
|
7971
7992
|
}
|
|
7972
|
-
let _key = uRo[p].
|
|
7993
|
+
let _key = uRo[p].substring(1);
|
|
7973
7994
|
if ( typeof(params.requirements[_key]) == 'undefined' ) {
|
|
7974
7995
|
continue;
|
|
7975
7996
|
}
|
|
7976
7997
|
let condition = params.requirements[_key];
|
|
7977
7998
|
if ( /^\//.test(condition) ) {
|
|
7978
|
-
condition = condition.
|
|
7999
|
+
condition = condition.substring(1, condition.lastIndexOf('/')-1);
|
|
7979
8000
|
} else if ( /^validator\:\:/.test(condition) && await fitsWithRequirements(uRo[p], uRe[p], params, request, response, next) ) {
|
|
7980
8001
|
++score;
|
|
7981
8002
|
continue;
|
|
@@ -7986,7 +8007,7 @@ function Routing() {
|
|
|
7986
8007
|
&& new RegExp(condition).test(uRe[p])
|
|
7987
8008
|
) {
|
|
7988
8009
|
++score;
|
|
7989
|
-
request[method][uRo[p].
|
|
8010
|
+
request[method][uRo[p].substring(1)] = uRe[p];
|
|
7990
8011
|
}
|
|
7991
8012
|
}
|
|
7992
8013
|
hasAlreadyBeenScored = true;
|
|
@@ -8264,7 +8285,7 @@ function Routing() {
|
|
|
8264
8285
|
request[requestMethod] = {}
|
|
8265
8286
|
}
|
|
8266
8287
|
|
|
8267
|
-
key = _param[matched].
|
|
8288
|
+
key = _param[matched].substring(1);
|
|
8268
8289
|
// escaping `\` characters
|
|
8269
8290
|
// TODO - remove comment : all regex requirement must start with `/`
|
|
8270
8291
|
//regex = ( /\\/.test(params.requirements[key]) ) ? params.requirements[key].replace(/\\/, '') : params.requirements[key];
|
|
@@ -8366,7 +8387,7 @@ function Routing() {
|
|
|
8366
8387
|
} else if (c > (tplUrl.indexOf(keys[0]) + keys[0].length)) {
|
|
8367
8388
|
|
|
8368
8389
|
regex = params.requirements[keys[0]];
|
|
8369
|
-
urlVal = strVal.
|
|
8390
|
+
urlVal = strVal.substring(0, strVal.length);
|
|
8370
8391
|
|
|
8371
8392
|
if (/^\//.test(regex)) {
|
|
8372
8393
|
re = regex.match(/\/(.*)\//).pop();
|
|
@@ -8403,7 +8424,7 @@ function Routing() {
|
|
|
8403
8424
|
}
|
|
8404
8425
|
|
|
8405
8426
|
if (tested) {
|
|
8406
|
-
values[keys[0].
|
|
8427
|
+
values[keys[0].substring(1)] = urlVal
|
|
8407
8428
|
} else {
|
|
8408
8429
|
return false
|
|
8409
8430
|
}
|
|
@@ -8422,7 +8443,7 @@ function Routing() {
|
|
|
8422
8443
|
if (c == posLen - 1) {
|
|
8423
8444
|
|
|
8424
8445
|
regex = params.requirements[keys[0]];
|
|
8425
|
-
urlVal = strVal.
|
|
8446
|
+
urlVal = strVal.substring(0, strVal.length);
|
|
8426
8447
|
|
|
8427
8448
|
if (/^\//.test(regex)) {
|
|
8428
8449
|
re = regex.match(/\/(.*)\//).pop();
|
|
@@ -8435,7 +8456,7 @@ function Routing() {
|
|
|
8435
8456
|
}
|
|
8436
8457
|
|
|
8437
8458
|
if (tested) {
|
|
8438
|
-
values[keys[0].
|
|
8459
|
+
values[keys[0].substring(1)] = urlVal
|
|
8439
8460
|
} else {
|
|
8440
8461
|
return false
|
|
8441
8462
|
}
|
|
@@ -8471,7 +8492,7 @@ function Routing() {
|
|
|
8471
8492
|
if ( typeof(params) != 'undefined' && typeof(params[p]) == 'undefined' ) continue;
|
|
8472
8493
|
|
|
8473
8494
|
if ( /^:/.test(route.param[p]) ) {
|
|
8474
|
-
variable = route.param[p].
|
|
8495
|
+
variable = route.param[p].substring(1);
|
|
8475
8496
|
|
|
8476
8497
|
if ( typeof(params) != 'undefined' && typeof(params[variable]) != 'undefined' ) {
|
|
8477
8498
|
|
|
@@ -8526,7 +8547,7 @@ function Routing() {
|
|
|
8526
8547
|
p = 0;
|
|
8527
8548
|
pLen = rawUrlVars.length;
|
|
8528
8549
|
for (; p < pLen; p++) {
|
|
8529
|
-
pKey = rawUrlVars[p].
|
|
8550
|
+
pKey = rawUrlVars[p].substring(1);
|
|
8530
8551
|
if ( typeof(params[ pKey ]) != 'undefined' && params[ pKey ] ) {
|
|
8531
8552
|
rawUrlScore++;
|
|
8532
8553
|
}
|
|
@@ -8553,14 +8574,24 @@ function Routing() {
|
|
|
8553
8574
|
* */
|
|
8554
8575
|
self.getRoute = function(rule, params, urlIndex) {
|
|
8555
8576
|
|
|
8556
|
-
var config = null;
|
|
8577
|
+
var config = null, isProxyHost = false;
|
|
8557
8578
|
if (isGFFCtx) {
|
|
8579
|
+
if (
|
|
8580
|
+
!window.location.port
|
|
8581
|
+
&& window.location.hostname == window.gina.config.hostname.replace(/^(https|http|wss|ws)\:\/\//, '').replace(/\:\d+$/, '')
|
|
8582
|
+
) {
|
|
8583
|
+
isProxyHost = true;
|
|
8584
|
+
window.gina.config.hostname = window.gina.config.hostname.replace(/^(https|http|wss|ws)\:\/\//, '').replace(/\:\d+$/, '')
|
|
8585
|
+
}
|
|
8558
8586
|
config = window.gina.config;
|
|
8559
8587
|
} else {
|
|
8588
|
+
|
|
8560
8589
|
config = getContext('gina').config;
|
|
8561
8590
|
if ( typeof(getContext('argvFilename')) != 'undefined' ) {
|
|
8562
8591
|
config.getRouting = getContext('gina').Config.instance.getRouting;
|
|
8563
8592
|
}
|
|
8593
|
+
|
|
8594
|
+
isProxyHost = getContext('isProxyHost');
|
|
8564
8595
|
}
|
|
8565
8596
|
|
|
8566
8597
|
var env = config.env || GINA_ENV // by default, takes the current bundle
|
|
@@ -8605,6 +8636,23 @@ function Routing() {
|
|
|
8605
8636
|
var msg = null;
|
|
8606
8637
|
route = checkRouteParams(route, params);
|
|
8607
8638
|
|
|
8639
|
+
route.isProxyHost = isProxyHost;
|
|
8640
|
+
if (isProxyHost) {
|
|
8641
|
+
if (isGFFCtx) {
|
|
8642
|
+
route.proxy_hostname = window.location.protocol +'//'+ document.location.hostname;
|
|
8643
|
+
} else {
|
|
8644
|
+
route.proxy_hostname = process.gina.PROXY_HOSTNAME || config.envConf._proxyHostname;
|
|
8645
|
+
}
|
|
8646
|
+
route.proxy_host = route.proxy_hostname.replace(/^(https|http)\:\/\//, '');
|
|
8647
|
+
|
|
8648
|
+
} else if (
|
|
8649
|
+
!isGFFCtx
|
|
8650
|
+
&& typeof(process.gina.PROXY_HOSTNAME) != 'undefined'
|
|
8651
|
+
) {
|
|
8652
|
+
route.proxy_hostname = process.gina.PROXY_HOSTNAME;
|
|
8653
|
+
route.proxy_host = route.proxy_hostname.replace(/^(https|http)\:\/\//, '');
|
|
8654
|
+
}
|
|
8655
|
+
|
|
8608
8656
|
if ( /\,/.test(route.url) ) {
|
|
8609
8657
|
if ( typeof(route.urlIndex) != 'undefined' ) {
|
|
8610
8658
|
urlIndex = route.urlIndex; // set by checkRouteParams(route, params)
|
|
@@ -8617,7 +8665,7 @@ function Routing() {
|
|
|
8617
8665
|
// to prevent having a folder.
|
|
8618
8666
|
// eg.: {..., id: '/^\\s*$/'} => {..., id: ''} => /path/to/ becoming /path/to
|
|
8619
8667
|
if ( /\/$/.test(route.url) && route.url != '/' )
|
|
8620
|
-
route.url = route.url.
|
|
8668
|
+
route.url = route.url.substring(0, route.url.length-1);
|
|
8621
8669
|
|
|
8622
8670
|
// Completeting url with extra params e.g.: ?param1=val1¶m2=val2
|
|
8623
8671
|
if ( /GET/i.test(route.method) && typeof(params) != 'undefined' ) {
|
|
@@ -8674,11 +8722,23 @@ function Routing() {
|
|
|
8674
8722
|
}
|
|
8675
8723
|
|
|
8676
8724
|
var wroot = this.webroot || urlProps.webroot
|
|
8677
|
-
, hostname = this.hostname || urlProps.hostname
|
|
8678
|
-
, path = this.url
|
|
8725
|
+
, hostname = ''+this.hostname || ''+urlProps.hostname
|
|
8726
|
+
, path = ''+this.url
|
|
8679
8727
|
;
|
|
8728
|
+
if (this.isProxyHost) {
|
|
8729
|
+
hostname = ''+this.proxy_hostname;
|
|
8730
|
+
}
|
|
8731
|
+
|
|
8732
|
+
this.url = (
|
|
8733
|
+
typeof(ignoreWebRoot) != 'undefined'
|
|
8734
|
+
&& /^true$/i.test(ignoreWebRoot)
|
|
8735
|
+
) ? path.replace( new RegExp('^'+ wroot), '/') : path.replace( new RegExp('^('+wroot +'|\/$)'), wroot);
|
|
8736
|
+
|
|
8737
|
+
// this.url = (
|
|
8738
|
+
// typeof(ignoreWebRoot) != 'undefined'
|
|
8739
|
+
// && /^true$/i.test(ignoreWebRoot)
|
|
8740
|
+
// ) ? path.replace( new RegExp('\/'+ wroot), '/') : path;
|
|
8680
8741
|
|
|
8681
|
-
this.url = ( typeof(ignoreWebRoot) != 'undefined' && ignoreWebRoot == true ) ? path.replace(wroot, '/') : path;
|
|
8682
8742
|
|
|
8683
8743
|
return hostname + this.url
|
|
8684
8744
|
};
|
|
@@ -8710,6 +8770,10 @@ function Routing() {
|
|
|
8710
8770
|
, url = ( typeof(ignoreWebRoot) != 'undefined' && ignoreWebRoot == true ) ? path.replace(wroot, '/') : this.url || _this.url
|
|
8711
8771
|
;
|
|
8712
8772
|
|
|
8773
|
+
if ( /^\//.test(url) ) {
|
|
8774
|
+
url = hostname + url;
|
|
8775
|
+
}
|
|
8776
|
+
|
|
8713
8777
|
var scheme = ( /^https/.test(hostname) ) ? 'https' : 'http';
|
|
8714
8778
|
|
|
8715
8779
|
if (isGFFCtx) {
|
|
@@ -8792,12 +8856,13 @@ function Routing() {
|
|
|
8792
8856
|
return route
|
|
8793
8857
|
};
|
|
8794
8858
|
|
|
8859
|
+
// TODO - Remove this : deprecated && not used
|
|
8795
8860
|
var getFormatedRoute = function(route, url, hash) {
|
|
8796
8861
|
// fix url in case of empty param value allowed by the routing rule
|
|
8797
8862
|
// to prevent having a folder.
|
|
8798
8863
|
// eg.: {..., id: '/^\\s*$/'} => {..., id: ''} => /path/to/ becoming /path/to
|
|
8799
8864
|
if ( /\/$/.test(url) && url != '/' )
|
|
8800
|
-
url = url.
|
|
8865
|
+
url = url.substring(0, url.length-1);
|
|
8801
8866
|
// adding hash if found
|
|
8802
8867
|
if (hash)
|
|
8803
8868
|
url += hash;
|
|
@@ -8822,12 +8887,13 @@ function Routing() {
|
|
|
8822
8887
|
/**
|
|
8823
8888
|
* Get route by url
|
|
8824
8889
|
* N.B.: this will only work with rules declared with `GET` method property
|
|
8890
|
+
* ATTENTION !!! Not fully working for frontend because of unresolved promises !!!!
|
|
8825
8891
|
*
|
|
8826
8892
|
* @function getRouteByUrl
|
|
8827
8893
|
*
|
|
8828
8894
|
* @param {string} url e.g.: /webroot/some/url/path or http
|
|
8829
8895
|
* @param {string} [bundle] targeted bundle
|
|
8830
|
-
* @param {string} [method] request method (GET|PUT|PUT|DELETE) - GET is set by default
|
|
8896
|
+
* @param {string} [method] 2nd or 3rd - request method (GET|PUT|PUT|DELETE) - GET is set by default
|
|
8831
8897
|
* @param {object} [request]
|
|
8832
8898
|
* @param {boolean} [isOverridinMethod] // will replace request.method by the provided method - Used for redirections
|
|
8833
8899
|
*
|
|
@@ -8922,6 +8988,9 @@ function Routing() {
|
|
|
8922
8988
|
params: {},
|
|
8923
8989
|
url: url
|
|
8924
8990
|
};
|
|
8991
|
+
if (bundle) {
|
|
8992
|
+
request.bundle = bundle;
|
|
8993
|
+
}
|
|
8925
8994
|
} else {
|
|
8926
8995
|
|
|
8927
8996
|
var gnaCtx = getContext('gina');
|
|
@@ -9009,11 +9078,8 @@ function Routing() {
|
|
|
9009
9078
|
// normal case
|
|
9010
9079
|
//Parsing for the right url.
|
|
9011
9080
|
try {
|
|
9012
|
-
|
|
9013
9081
|
isRoute = self.compareUrls(params, routing[name].url, request);
|
|
9014
|
-
|
|
9015
9082
|
if (isRoute.past) {
|
|
9016
|
-
|
|
9017
9083
|
route = JSON.clone(routing[name]);
|
|
9018
9084
|
route.name = name;
|
|
9019
9085
|
|
|
@@ -9035,7 +9101,7 @@ function Routing() {
|
|
|
9035
9101
|
url == '#'
|
|
9036
9102
|
&& /GET/i.test(method)
|
|
9037
9103
|
&& isMethodProvidedByDefault
|
|
9038
|
-
||
|
|
9104
|
+
|| /^404\:/.test(url)
|
|
9039
9105
|
) {
|
|
9040
9106
|
url = location.pathname;
|
|
9041
9107
|
urlHasChanged = true;
|
|
@@ -9125,7 +9191,7 @@ function Routing() {
|
|
|
9125
9191
|
// to prevent having a folder.
|
|
9126
9192
|
// eg.: {..., id: '/^\\s*$/'} => {..., id: ''} => /path/to/ becoming /path/to
|
|
9127
9193
|
if ( /\/$/.test(url) && url != '/' )
|
|
9128
|
-
url = url.
|
|
9194
|
+
url = url.substring(0, url.length-1);
|
|
9129
9195
|
// adding hash if found
|
|
9130
9196
|
if (hash)
|
|
9131
9197
|
url += hash;
|
|
@@ -9689,7 +9755,7 @@ define("utils/effects", function(){});
|
|
|
9689
9755
|
|
|
9690
9756
|
/*
|
|
9691
9757
|
* This file is part of the gina package.
|
|
9692
|
-
* Copyright (c) 2009-
|
|
9758
|
+
* Copyright (c) 2009-2025 Rhinostone <contact@gina.io>
|
|
9693
9759
|
*
|
|
9694
9760
|
* For the full copyright and license information, please view the LICENSE
|
|
9695
9761
|
* file that was distributed with this source code.
|
|
@@ -10002,7 +10068,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
10002
10068
|
* @param {object} [ data ] // from request
|
|
10003
10069
|
* @param {string} [ formId ]
|
|
10004
10070
|
* */
|
|
10005
|
-
|
|
10071
|
+
function ValidatorPlugin(rules, data, formId) {
|
|
10006
10072
|
|
|
10007
10073
|
this.plugin = 'validator';
|
|
10008
10074
|
|
|
@@ -10112,6 +10178,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
10112
10178
|
'eventData' : {},
|
|
10113
10179
|
'target' : (isGFFCtx) ? document : null, // by default
|
|
10114
10180
|
'cachedErrors' : {},
|
|
10181
|
+
'lastFocused' : (isGFFCtx) ? [] : null,
|
|
10115
10182
|
'binded' : false,
|
|
10116
10183
|
'unbinded' : false,
|
|
10117
10184
|
'withUserBindings' : false,
|
|
@@ -10392,22 +10459,34 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
10392
10459
|
}
|
|
10393
10460
|
|
|
10394
10461
|
var refreshWarning = function($el) {
|
|
10395
|
-
var formId = $el.form.getAttribute('id');
|
|
10462
|
+
var formId = $el.form.id || $el.form.getAttribute('id');
|
|
10463
|
+
var elName = $el.name || $el.form.getAttribute('name');
|
|
10464
|
+
var currentElName = document.activeElement.name;
|
|
10396
10465
|
if ( /^true$/i.test(instance.$forms[formId].isValidating) ) {
|
|
10397
10466
|
return;
|
|
10398
10467
|
}
|
|
10399
10468
|
|
|
10400
|
-
var $parent
|
|
10401
|
-
|
|
10469
|
+
var $parent = $el.parentNode
|
|
10470
|
+
, isErrorMessageHidden = false
|
|
10471
|
+
, $children = $parent.getElementsByTagName('div')
|
|
10472
|
+
;
|
|
10402
10473
|
|
|
10403
|
-
if ( /form\-item\-warning/.test($parent.className) ) {
|
|
10474
|
+
if ( /form\-item\-warning/.test($parent.className) && currentElName != elName ) {
|
|
10404
10475
|
$parent.className = $parent.className.replace(/form\-item\-warning/, 'form-item-error');
|
|
10405
10476
|
|
|
10406
|
-
} else if (/form\-item\-error/.test($parent.className) ) {
|
|
10477
|
+
} else if (/form\-item\-error/.test($parent.className) && currentElName == elName ) {
|
|
10407
10478
|
$parent.className = $parent.className.replace(/form\-item\-error/, 'form-item-warning');
|
|
10408
10479
|
isErrorMessageHidden = true;
|
|
10409
10480
|
}
|
|
10410
10481
|
|
|
10482
|
+
// Fixed on 2025-03-16
|
|
10483
|
+
if (
|
|
10484
|
+
/^true$/i.test(instance.$forms[formId].isValidating)
|
|
10485
|
+
&& !isErrorMessageHidden
|
|
10486
|
+
) {
|
|
10487
|
+
return;
|
|
10488
|
+
}
|
|
10489
|
+
|
|
10411
10490
|
|
|
10412
10491
|
for (var c = 0, cLen = $children.length; c<cLen; ++c) {
|
|
10413
10492
|
if ( /form\-item\-error\-message/.test($children[c].className) ) {
|
|
@@ -10429,7 +10508,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
10429
10508
|
* @param {object} $form - Target (HTMLFormElement)
|
|
10430
10509
|
* @param {object} errors
|
|
10431
10510
|
* @param {object|null} data
|
|
10432
|
-
* @param {
|
|
10511
|
+
* @param {string|null} [fileName]
|
|
10433
10512
|
*/
|
|
10434
10513
|
var liveCheckErrors = {}; // Per Form & Per Element
|
|
10435
10514
|
var handleErrorsDisplay = function($form, errors, data, fieldName) {
|
|
@@ -10460,7 +10539,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
10460
10539
|
if ( typeof(liveCheckErrors[formId]) == 'undefined') {
|
|
10461
10540
|
liveCheckErrors[formId] = {};
|
|
10462
10541
|
}
|
|
10463
|
-
if (errors.count() > 0) {
|
|
10542
|
+
if (errors && errors.count() > 0) {
|
|
10464
10543
|
// reset field name
|
|
10465
10544
|
liveCheckErrors[formId][fieldName] = {};
|
|
10466
10545
|
// override
|
|
@@ -10470,8 +10549,29 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
10470
10549
|
}
|
|
10471
10550
|
errors = liveCheckErrors[formId];
|
|
10472
10551
|
// only if the form has not been sent yet
|
|
10473
|
-
if (
|
|
10552
|
+
if (
|
|
10553
|
+
!instance.$forms[formId].sent
|
|
10554
|
+
||
|
|
10555
|
+
instance.$forms[formId].isValidating
|
|
10556
|
+
) {
|
|
10474
10557
|
isWarning = true;
|
|
10558
|
+
// Fixed on 2025-03-16
|
|
10559
|
+
var lastFocused = instance.$forms[formId].lastFocused;
|
|
10560
|
+
// console.debug('fieldName: '+ fieldName + '\nactiveElement: '+ document.activeElement.getAttribute('name') +'\nlastFocused: ', lastFocused);
|
|
10561
|
+
if (
|
|
10562
|
+
lastFocused.length > 0
|
|
10563
|
+
&& typeof(lastFocused[1]) != 'undefined'
|
|
10564
|
+
&& lastFocused[1].name == fieldName
|
|
10565
|
+
||
|
|
10566
|
+
lastFocused.length > 0
|
|
10567
|
+
&& !lastFocused[1]
|
|
10568
|
+
&& document.activeElement.getAttribute('name') != lastFocused[0].name
|
|
10569
|
+
||
|
|
10570
|
+
document.activeElement.getAttribute('name') != fieldName
|
|
10571
|
+
) {
|
|
10572
|
+
isWarning = false;
|
|
10573
|
+
}
|
|
10574
|
+
// console.debug('isWarning: '+isWarning);
|
|
10475
10575
|
}
|
|
10476
10576
|
} else {
|
|
10477
10577
|
if ( typeof(liveCheckErrors[formId][fieldName]) != 'undefined') {
|
|
@@ -10535,7 +10635,11 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
10535
10635
|
|
|
10536
10636
|
if (!name) continue;
|
|
10537
10637
|
|
|
10538
|
-
if (
|
|
10638
|
+
if (
|
|
10639
|
+
errors
|
|
10640
|
+
&& typeof(errors[name]) != 'undefined'
|
|
10641
|
+
&& !/(form\-item\-error|form\-item\-warning)/.test($parent.className)
|
|
10642
|
+
) {
|
|
10539
10643
|
|
|
10540
10644
|
if (isWarning) {
|
|
10541
10645
|
// adding warning class
|
|
@@ -10576,7 +10680,24 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
10576
10680
|
|
|
10577
10681
|
|
|
10578
10682
|
|
|
10579
|
-
} else if (
|
|
10683
|
+
} else if (
|
|
10684
|
+
errors
|
|
10685
|
+
&& typeof(errors[name]) == 'undefined'
|
|
10686
|
+
&& /(form\-item\-error|form\-item\-warning)/.test($parent.className)
|
|
10687
|
+
||
|
|
10688
|
+
errors
|
|
10689
|
+
&& typeof(errors[name]) != 'undefined' && errors[name].count() == 0
|
|
10690
|
+
&& /(form\-item\-error|form\-item\-warning)/.test($parent.className)
|
|
10691
|
+
) {
|
|
10692
|
+
// Fixed on 2025-03-10
|
|
10693
|
+
// targeted field must be the active element
|
|
10694
|
+
// if (
|
|
10695
|
+
// document.activeElement.getAttribute('name') != fieldName
|
|
10696
|
+
// && errors.count() > 0
|
|
10697
|
+
// ) {
|
|
10698
|
+
// break
|
|
10699
|
+
// }
|
|
10700
|
+
console.debug('[handleErrorsDisplay] Resetting when not in error');
|
|
10580
10701
|
// reset when not in error
|
|
10581
10702
|
// remove child elements
|
|
10582
10703
|
var $children = $parent.getElementsByTagName('div');
|
|
@@ -10590,16 +10711,34 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
10590
10711
|
|
|
10591
10712
|
$parent.className = $parent.className.replace(/(\s+form\-item\-error|form\-item\-error|\s+form\-item\-warning|form\-item\-warning)/, '');
|
|
10592
10713
|
|
|
10593
|
-
} else if (
|
|
10714
|
+
} else if (
|
|
10715
|
+
errors.count() > 0
|
|
10716
|
+
&& typeof(errors[name]) != 'undefined'
|
|
10717
|
+
&& errAttr
|
|
10718
|
+
) {
|
|
10594
10719
|
// refreshing already displayed error on msg update
|
|
10595
10720
|
var $divs = $parent.getElementsByTagName('div');
|
|
10596
10721
|
for (var d = 0, dLen = $divs.length; d<dLen; ++d) {
|
|
10597
|
-
|
|
10722
|
+
// Fixed on 2025-03-05: className can have more than one !!
|
|
10723
|
+
let foundMessage = $divs[d].className.match("form-item-error-message");
|
|
10724
|
+
if (
|
|
10725
|
+
foundMessage
|
|
10726
|
+
&& typeof(foundMessage.length) != 'undefined'
|
|
10727
|
+
&& foundMessage.length > 0
|
|
10728
|
+
) {
|
|
10598
10729
|
|
|
10599
10730
|
$divs[d].parentElement.removeChild($divs[d]);
|
|
10600
10731
|
$err = document.createElement('div');
|
|
10601
10732
|
$err.setAttribute('class', 'form-item-error-message');
|
|
10602
10733
|
|
|
10734
|
+
// Fixed on 2025-03-09: className cleanup
|
|
10735
|
+
if (
|
|
10736
|
+
!isWarning
|
|
10737
|
+
&& /(\s+form\-item\-warning|form\-item\-warning)/.test($parent.className)
|
|
10738
|
+
) {
|
|
10739
|
+
$parent.className = $parent.className.replace(/(\s+form\-item\-warning|form\-item\-warning)/, ' form-item-error');
|
|
10740
|
+
}
|
|
10741
|
+
|
|
10603
10742
|
// injecting error messages
|
|
10604
10743
|
// {
|
|
10605
10744
|
// field: {
|
|
@@ -10624,12 +10763,17 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
10624
10763
|
}
|
|
10625
10764
|
}
|
|
10626
10765
|
|
|
10627
|
-
if ($err && $target.type != 'hidden')
|
|
10766
|
+
if ($err && $target.type != 'hidden') {
|
|
10628
10767
|
insertAfter($target, $err);
|
|
10629
|
-
|
|
10768
|
+
}
|
|
10630
10769
|
}
|
|
10631
10770
|
|
|
10632
|
-
if (
|
|
10771
|
+
if (
|
|
10772
|
+
typeof(fieldName) != 'undefined'
|
|
10773
|
+
&& fieldName === $el.name
|
|
10774
|
+
) {
|
|
10775
|
+
break;
|
|
10776
|
+
}
|
|
10633
10777
|
}
|
|
10634
10778
|
|
|
10635
10779
|
|
|
@@ -10965,7 +11109,8 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
10965
11109
|
// In case the user is also redirecting
|
|
10966
11110
|
var redirectDelay = (/Google Inc/i.test(navigator.vendor)) ? 50 : 0;
|
|
10967
11111
|
|
|
10968
|
-
|
|
11112
|
+
// responseType interception
|
|
11113
|
+
if (xhr.readyState == 2) {
|
|
10969
11114
|
isAttachment = ( /^attachment\;/.test( xhr.getResponseHeader("Content-Disposition") ) ) ? true : false;
|
|
10970
11115
|
// force blob response type
|
|
10971
11116
|
if ( !xhr.responseType && isAttachment ) {
|
|
@@ -10999,7 +11144,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
10999
11144
|
var url = window.URL.createObjectURL(blob);
|
|
11000
11145
|
a.href = url;
|
|
11001
11146
|
var contentDisposition = xhr.getResponseHeader("Content-Disposition");
|
|
11002
|
-
a.download = contentDisposition.match('\=(.*)')[0].
|
|
11147
|
+
a.download = contentDisposition.match('\=(.*)')[0].substring(1);
|
|
11003
11148
|
//programatically click the link to trigger the download
|
|
11004
11149
|
a.click();
|
|
11005
11150
|
|
|
@@ -11018,7 +11163,9 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
11018
11163
|
size : blob.size
|
|
11019
11164
|
}
|
|
11020
11165
|
|
|
11021
|
-
}
|
|
11166
|
+
}
|
|
11167
|
+
// normal case
|
|
11168
|
+
else {
|
|
11022
11169
|
result = xhr.responseText;
|
|
11023
11170
|
}
|
|
11024
11171
|
|
|
@@ -11027,9 +11174,14 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
11027
11174
|
if ( /\/json/.test( contentType ) ) {
|
|
11028
11175
|
result = JSON.parse(xhr.responseText);
|
|
11029
11176
|
|
|
11030
|
-
if ( typeof(result.status) == 'undefined' )
|
|
11177
|
+
if ( typeof(result.status) == 'undefined' ) {
|
|
11031
11178
|
result.status = xhr.status;
|
|
11032
|
-
|
|
11179
|
+
}
|
|
11180
|
+
// Fixed on 2025-03-13 Allowing toolbar to ubdate after xhr results
|
|
11181
|
+
// TODO - Allowing to revert to previously loaded data via a close button
|
|
11182
|
+
if (gina && envIsDev && typeof(window.ginaToolbar) && typeof(result) != 'undefined') {
|
|
11183
|
+
window.ginaToolbar.update('data-xhr', result);
|
|
11184
|
+
}
|
|
11033
11185
|
}
|
|
11034
11186
|
|
|
11035
11187
|
if ( /\/html/.test( contentType ) ) {
|
|
@@ -11260,6 +11412,13 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
11260
11412
|
// } else { // external - need to remove `X-Requested-With` from `options.headers`
|
|
11261
11413
|
result.location = (!/^http/.test(result.location) && !/^\//.test(result.location) ) ? location.protocol +'//' + result.location : result.location;
|
|
11262
11414
|
//}
|
|
11415
|
+
// isProxyHost ?
|
|
11416
|
+
if (
|
|
11417
|
+
result.location.replace(/^http(.*)\:\d+/, '$1').replace(/^\:\/\//, '').split(/\//g)[0] == gina.config.hostname
|
|
11418
|
+
&& gina.config.hostname == window.location.host
|
|
11419
|
+
) {
|
|
11420
|
+
result.location = location.protocol + result.location.replace(/^http(.*)\:\d+/, '$1').replace(/^\:/, '')
|
|
11421
|
+
}
|
|
11263
11422
|
|
|
11264
11423
|
return setTimeout(() => {
|
|
11265
11424
|
window.location.href = result.location;
|
|
@@ -11889,7 +12048,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
11889
12048
|
filesToBeRemoved.push(childNodeFilePreview);
|
|
11890
12049
|
}
|
|
11891
12050
|
} else {
|
|
11892
|
-
let file = childNodes[i].src.
|
|
12051
|
+
let file = childNodes[i].src.substring(childNodes[i].src.lastIndexOf('/')+1);
|
|
11893
12052
|
childNodeFile = file;
|
|
11894
12053
|
filesToBeRemoved.push(childNodeFile);
|
|
11895
12054
|
}
|
|
@@ -12325,7 +12484,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
12325
12484
|
for (let m = 0, mLen = mergingRules.length; m < mLen; m++) {
|
|
12326
12485
|
if ( re.test(mergingRules[m]) ) {
|
|
12327
12486
|
let tmpStr = JSON.stringify(rule);
|
|
12328
|
-
tmpStr = tmpStr.
|
|
12487
|
+
tmpStr = tmpStr.substring(1, tmpStr.length-1);// removing ->{ ... }<-
|
|
12329
12488
|
// is last ?
|
|
12330
12489
|
if (m < mLen-1) {
|
|
12331
12490
|
tmpStr += ','
|
|
@@ -13110,7 +13269,6 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13110
13269
|
} else {
|
|
13111
13270
|
handleErrorsDisplay(event.target.form, errors, null, event.target.name);
|
|
13112
13271
|
}
|
|
13113
|
-
//return cancelEvent(event);
|
|
13114
13272
|
}
|
|
13115
13273
|
|
|
13116
13274
|
|
|
@@ -13120,7 +13278,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13120
13278
|
|
|
13121
13279
|
instance.$forms[event.target.form.getAttribute('id')].isValidating = true;
|
|
13122
13280
|
validate(event.target, localField, $localField, $form.rules, function onLiveValidation(result){
|
|
13123
|
-
instance.$forms[event.target.form.getAttribute('id')].isValidating = false;
|
|
13281
|
+
// instance.$forms[event.target.form.getAttribute('id')].isValidating = false;
|
|
13124
13282
|
//console.debug('validation on processEvent(...) ', result);
|
|
13125
13283
|
|
|
13126
13284
|
var isFormValid = result.isValid();
|
|
@@ -13146,8 +13304,10 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13146
13304
|
instance.$forms[formId].isValidating = true;
|
|
13147
13305
|
validate($gForm, gFields, $gFields, gRules, function onSilentGlobalLiveValidation(gResult){
|
|
13148
13306
|
instance.$forms[formId].isValidating = false;
|
|
13149
|
-
console.debug('['+ formId +'] onSilentGlobalLiveValidation: '+ gResult.isValid(), gResult);
|
|
13307
|
+
console.debug('['+ formId +'] onSilentGlobalLiveValidation: '+ gResult.isValid(), gResult, gFields);
|
|
13308
|
+
// var isFormValid = ( gResult.isValid() && instance.$forms[formId].errors && instance.$forms[formId].errors.count() == 0 )? true : false;
|
|
13150
13309
|
var isFormValid = gResult.isValid();
|
|
13310
|
+
// var isFormValid = gResult.isValid();
|
|
13151
13311
|
if ( envIsDev && isGFFCtx && typeof(window.ginaToolbar) != 'undefined' && window.ginaToolbar ) {
|
|
13152
13312
|
// update toolbar
|
|
13153
13313
|
if (!gina.forms.errors)
|
|
@@ -13162,6 +13322,27 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13162
13322
|
}
|
|
13163
13323
|
|
|
13164
13324
|
|
|
13325
|
+
if ( !isFormValid && gResult.error ) {
|
|
13326
|
+
// Fixed on 2025-03-16 - we need past and live errors
|
|
13327
|
+
instance.$forms[ $el.form.getAttribute('id') ].errors = merge(result.error, gResult.error);
|
|
13328
|
+
// Fixed on 2025-03-16
|
|
13329
|
+
for (let eField in gResult.error) {
|
|
13330
|
+
refreshWarning($gFields[eField]);
|
|
13331
|
+
handleErrorsDisplay($gForm, gResult.error, gResult.data, eField);
|
|
13332
|
+
}
|
|
13333
|
+
}
|
|
13334
|
+
// Fixed on 2025-03-16
|
|
13335
|
+
// Eg.: input select change impacting another element: solve `no more errors`
|
|
13336
|
+
else if ( instance.$forms[formId].errors && !instance.$forms[formId].errors.count() ) {
|
|
13337
|
+
// recheck if valid
|
|
13338
|
+
//resetting error display
|
|
13339
|
+
instance.$forms[ formId ].errors = {};
|
|
13340
|
+
console.debug('resetting field: '+ $el.name);
|
|
13341
|
+
liveCheckErrors[formId] = {};
|
|
13342
|
+
// $form.dataset.ginaFormIsResetting = true;
|
|
13343
|
+
handleErrorsDisplay($gForm, {}, null, $el.name);
|
|
13344
|
+
}
|
|
13345
|
+
|
|
13165
13346
|
updateSubmitTriggerState( $gForm, isFormValid);
|
|
13166
13347
|
|
|
13167
13348
|
once = false;
|
|
@@ -13195,13 +13376,16 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13195
13376
|
// other inputs & textareas
|
|
13196
13377
|
else if ( /^focusin\./i.test(event.type) ) {
|
|
13197
13378
|
if ( /\-error/.test($el.parentNode.className) ) {
|
|
13198
|
-
console.debug('#1 you just focusin ....'+$el.id, $el.value);
|
|
13379
|
+
console.debug('#1 you just focusin ....'+$el.id, $el.value, instance.$forms[ $el.form.getAttribute('id') ].isValidating);
|
|
13199
13380
|
refreshWarning($el);
|
|
13200
13381
|
}
|
|
13201
13382
|
}
|
|
13202
13383
|
else if ( /^focusout\./i.test(event.type) ) {
|
|
13203
13384
|
if ( /\-warning/.test($el.parentNode.className) ) {
|
|
13204
13385
|
console.debug('#1 you just focusout ....'+$el.id, $el.value);
|
|
13386
|
+
// Removed on 2025-03-16
|
|
13387
|
+
instance.$forms[ $el.form.getAttribute('id') ].isValidating = false;
|
|
13388
|
+
|
|
13205
13389
|
refreshWarning($el);
|
|
13206
13390
|
// in case error context is changed by another task
|
|
13207
13391
|
handleErrorsDisplay($el.form, instance.$forms[ $el.form.getAttribute('id') ].errors, null, $el.name);
|
|
@@ -13210,12 +13394,86 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13210
13394
|
else if ( /^keyup\./i.test(event.type) ) {
|
|
13211
13395
|
$el.ginaFormValidatorTestedValue = $el.value;
|
|
13212
13396
|
liveCheckTimer = setTimeout( function onLiveCheckTimer() {
|
|
13213
|
-
//
|
|
13214
|
-
if ( ['91', '17'].indexOf(''+event.keyCode) > -1 && keyboardMapping.count() == 0) {
|
|
13397
|
+
// Do not trigger for copy/paste event
|
|
13398
|
+
if ( ['91', '17', '16'].indexOf(''+event.keyCode) > -1 && keyboardMapping.count() == 0) {
|
|
13215
13399
|
//console.debug('mapping ', keyboardMapping);
|
|
13216
13400
|
return;
|
|
13217
13401
|
}
|
|
13218
|
-
|
|
13402
|
+
|
|
13403
|
+
// Fixed on 2025-03-16:
|
|
13404
|
+
// Treat TAB as focus in/out
|
|
13405
|
+
// if ( ['9'].indexOf(''+event.keyCode) > -1 ) {
|
|
13406
|
+
|
|
13407
|
+
// console.debug('[TAB] you just focusout from "'+ instance.$forms[ $el.form.getAttribute('id') ].lastFocused[1].id +'" to "'+ $el.id +'"');
|
|
13408
|
+
// var $gForm = event.target.form, gFields = null, $gFields = null, gRules = null;
|
|
13409
|
+
// var gValidatorInfos = getFormValidationInfos($gForm, rules);
|
|
13410
|
+
// gFields = gValidatorInfos.fields;
|
|
13411
|
+
// $gFields = gValidatorInfos.$fields;
|
|
13412
|
+
// var formId = $gForm.getAttribute('id');
|
|
13413
|
+
// gRules = instance.$forms[formId].rules;
|
|
13414
|
+
// // Don't be tempted to revome fields that has already been validated
|
|
13415
|
+
// instance.$forms[formId].isValidating = true;
|
|
13416
|
+
// validate($gForm, gFields, $gFields, gRules, function onSilentGlobalLiveValidation(gResult){
|
|
13417
|
+
// instance.$forms[formId].isValidating = false;
|
|
13418
|
+
// console.debug('['+ formId +'] [9] onSilentGlobalLiveValidation: '+ gResult.isValid(), gResult, gFields);
|
|
13419
|
+
// var isFormValid = ( gResult.isValid() && instance.$forms[formId].errors && instance.$forms[formId].errors.count() == 0 )? true : false;
|
|
13420
|
+
// // var isFormValid = gResult.isValid();
|
|
13421
|
+
// if ( envIsDev && isGFFCtx && typeof(window.ginaToolbar) != 'undefined' && window.ginaToolbar ) {
|
|
13422
|
+
// // update toolbar
|
|
13423
|
+
// if (!gina.forms.errors)
|
|
13424
|
+
// gina.forms.errors = {};
|
|
13425
|
+
|
|
13426
|
+
// var objCallback = {
|
|
13427
|
+
// id : formId,
|
|
13428
|
+
// errors : gResult.error || {}
|
|
13429
|
+
// };
|
|
13430
|
+
|
|
13431
|
+
// window.ginaToolbar.update('forms', objCallback);
|
|
13432
|
+
// }
|
|
13433
|
+
|
|
13434
|
+
|
|
13435
|
+
// if ( !isFormValid && gResult.error ) {
|
|
13436
|
+
// // Fixed on 2025-03-16 - we need past and live errors
|
|
13437
|
+
// instance.$forms[ $el.form.getAttribute('id') ].errors = merge(result.error, gResult.error);
|
|
13438
|
+
// // Fixed on 2025-03-16
|
|
13439
|
+
// for (let eField in instance.$forms[ $el.form.getAttribute('id') ].errors) {
|
|
13440
|
+
// refreshWarning($gFields[eField]);
|
|
13441
|
+
// handleErrorsDisplay($gForm, instance.$forms[ $el.form.getAttribute('id') ].errors, gResult.data, eField);
|
|
13442
|
+
// }
|
|
13443
|
+
// }
|
|
13444
|
+
// // Fixed on 2025-03-16
|
|
13445
|
+
// // Eg.: input select change impacting another element: solve `no more errors`
|
|
13446
|
+
// else if ( instance.$forms[formId].errors && !instance.$forms[formId].errors.count() ) {
|
|
13447
|
+
// // recheck if valid
|
|
13448
|
+
// //resetting error display
|
|
13449
|
+
// instance.$forms[ formId ].errors = {};
|
|
13450
|
+
// console.debug('resetting field: '+ $el.name);
|
|
13451
|
+
// liveCheckErrors[formId] = {};
|
|
13452
|
+
// // $form.dataset.ginaFormIsResetting = true;
|
|
13453
|
+
// handleErrorsDisplay($gForm, {}, null, $el.name);
|
|
13454
|
+
// }
|
|
13455
|
+
|
|
13456
|
+
// updateSubmitTriggerState( $gForm, isFormValid);
|
|
13457
|
+
|
|
13458
|
+
// once = false;
|
|
13459
|
+
// });
|
|
13460
|
+
// // var $previeousEl = document.getElementById(instance.$forms[ $el.form.getAttribute('id') ].lastFocused[1].id);
|
|
13461
|
+
// // var errors = instance.$forms[ $previeousEl.form.getAttribute('id') ].errors;
|
|
13462
|
+
// // var isFormValid = (!errors[$previeousEl.name]) ? true : false;
|
|
13463
|
+
// // console.debug('[TAB] you just focusout from "'+ instance.$forms[ $el.form.getAttribute('id') ].lastFocused[1].id +'" to "'+ $el.id +'"', "errors: ", errors);
|
|
13464
|
+
// // if (errors && errors.count() > 0 ) {
|
|
13465
|
+
// // instance.$forms[ $previeousEl.form.getAttribute('id') ].isValidating = false;
|
|
13466
|
+
// // isFormValid = false;
|
|
13467
|
+
// // }
|
|
13468
|
+
// // refreshWarning($previeousEl);
|
|
13469
|
+
// // // // in case error context is changed by another task
|
|
13470
|
+
// // handleErrorsDisplay($previeousEl.form, errors, null, $previeousEl.name);
|
|
13471
|
+
// // updateSubmitTriggerState( $el.form, isFormValid);
|
|
13472
|
+
// return;
|
|
13473
|
+
// }
|
|
13474
|
+
|
|
13475
|
+
|
|
13476
|
+
console.debug('[A]['+keyboardMapping.count()+'] keyup ('+ event.keyCode +') .... '+$el.id, $el.value, ' VS ',$el.ginaFormValidatorTestedValue + '(old)');
|
|
13219
13477
|
processEvent();
|
|
13220
13478
|
}, 1000);
|
|
13221
13479
|
}
|
|
@@ -13317,14 +13575,14 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13317
13575
|
case 46: //Delete
|
|
13318
13576
|
case 8: //Backspace
|
|
13319
13577
|
if (posStart != posEnd) {
|
|
13320
|
-
$_el.value = str.
|
|
13578
|
+
$_el.value = str.substring(0, posStart) + str.substring(posEnd);
|
|
13321
13579
|
if (posStart == 0) {
|
|
13322
|
-
$_el.value = str.
|
|
13580
|
+
$_el.value = str.substring(posEnd);
|
|
13323
13581
|
}
|
|
13324
13582
|
} else if (posStart == 0) {
|
|
13325
13583
|
$_el.value = str.substring(posStart+1);
|
|
13326
13584
|
} else {
|
|
13327
|
-
$_el.value = str.
|
|
13585
|
+
$_el.value = str.substring(0, posStart-1) + str.substring(posEnd);
|
|
13328
13586
|
}
|
|
13329
13587
|
|
|
13330
13588
|
e.currentTarget.setAttribute('readonly', 'readonly');
|
|
@@ -13412,14 +13670,14 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13412
13670
|
default:
|
|
13413
13671
|
// Replace selection
|
|
13414
13672
|
if (posStart != posEnd) {
|
|
13415
|
-
$_el.value = str.
|
|
13673
|
+
$_el.value = str.substring(0, posStart) + e.key;
|
|
13416
13674
|
if (posEnd-1 < str.length) {
|
|
13417
13675
|
$_el.value += str.substring(posEnd)
|
|
13418
13676
|
}
|
|
13419
13677
|
} else if (posStart == 0) {
|
|
13420
13678
|
$_el.value = e.key + str.substring(posStart);
|
|
13421
13679
|
} else {
|
|
13422
|
-
$_el.value = str.
|
|
13680
|
+
$_el.value = str.substring(0, posStart) + e.key + str.substring(posEnd);
|
|
13423
13681
|
}
|
|
13424
13682
|
e.currentTarget.setAttribute('readonly', 'readonly');
|
|
13425
13683
|
// Force restore last caret position
|
|
@@ -13561,24 +13819,53 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13561
13819
|
}
|
|
13562
13820
|
|
|
13563
13821
|
/**
|
|
13564
|
-
* reBindForm
|
|
13822
|
+
* reBindForm
|
|
13823
|
+
* Allows form rebinding: it is like reseting validation
|
|
13565
13824
|
*
|
|
13566
|
-
*
|
|
13567
|
-
*
|
|
13568
|
-
*
|
|
13825
|
+
* E.g.:
|
|
13826
|
+
* $validator
|
|
13827
|
+
* .getFormById('my-form-id')
|
|
13828
|
+
* .reBind();
|
|
13829
|
+
*
|
|
13830
|
+
* @param {string} [formId]
|
|
13831
|
+
* @param {string} [rules]
|
|
13832
|
+
* @param {callback} [cb]
|
|
13569
13833
|
*/
|
|
13570
|
-
var reBindForm = function(
|
|
13571
|
-
|
|
13572
|
-
|
|
13834
|
+
var reBindForm = function(formId, rules, cb) {
|
|
13835
|
+
var $form = null
|
|
13836
|
+
, _id = null
|
|
13837
|
+
;
|
|
13838
|
+
if (
|
|
13839
|
+
typeof(this.target) != 'undefined'
|
|
13840
|
+
&& /FORM/i.test(this.target.tagName)
|
|
13841
|
+
) {
|
|
13842
|
+
_id = formId = this.target.getAttribute('id')
|
|
13843
|
+
} else if ( /string/i.test(typeof(formId)) ) {
|
|
13844
|
+
_id = formId
|
|
13845
|
+
}
|
|
13846
|
+
|
|
13847
|
+
if ( typeof(instance.$forms[_id]) != 'undefined') {
|
|
13848
|
+
$form = instance.$forms[_id];
|
|
13849
|
+
} else {
|
|
13850
|
+
throw new Error('form instance `'+ _id +'` not found');
|
|
13851
|
+
}
|
|
13852
|
+
|
|
13573
13853
|
// reset errors
|
|
13574
|
-
|
|
13854
|
+
resetErrorsDisplay(_id);
|
|
13855
|
+
// Unbind form
|
|
13856
|
+
unbindForm($form.target);
|
|
13575
13857
|
// Bind
|
|
13576
|
-
|
|
13858
|
+
if ( typeof(rule) != 'undefined' ) {
|
|
13859
|
+
bindForm($form.target, rules);
|
|
13860
|
+
} else {
|
|
13861
|
+
bindForm($form.target);
|
|
13862
|
+
}
|
|
13577
13863
|
|
|
13578
13864
|
if ( cb ) {
|
|
13579
|
-
return cb(
|
|
13865
|
+
return cb($form);
|
|
13580
13866
|
}
|
|
13581
|
-
|
|
13867
|
+
|
|
13868
|
+
return $form;
|
|
13582
13869
|
}
|
|
13583
13870
|
|
|
13584
13871
|
var unbindForm = function($target) {
|
|
@@ -13596,7 +13883,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13596
13883
|
|
|
13597
13884
|
} else if ( typeof($target.target) != 'undefined' ) {
|
|
13598
13885
|
$form = $target;
|
|
13599
|
-
_id = $form.id;
|
|
13886
|
+
_id = ( $target.getAttribute && $target.getAttribute('id') ) ? $form.getAttribute('id') : $form.id;
|
|
13600
13887
|
} else {
|
|
13601
13888
|
throw new Error('Validator::unbindForm($target): `$target` must be a DOM element\n'+err.stack )
|
|
13602
13889
|
}
|
|
@@ -13635,7 +13922,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13635
13922
|
// submit buttons
|
|
13636
13923
|
$elTMP = $form.target.getElementsByTagName('button');
|
|
13637
13924
|
if ( $elTMP.length > 0 ) {
|
|
13638
|
-
for(let i = 0, len = $elTMP.length; i < len; ++i) {
|
|
13925
|
+
for (let i = 0, len = $elTMP.length; i < len; ++i) {
|
|
13639
13926
|
// if button is != type="submit", you will need to provide : data-gina-form-submit
|
|
13640
13927
|
// TODO - On button binding, you can then provide data-gina-form-action & data-gina-form-method
|
|
13641
13928
|
$els.push($elTMP[i])
|
|
@@ -13645,7 +13932,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13645
13932
|
// submit links
|
|
13646
13933
|
$elTMP = $form.target.getElementsByTagName('a');
|
|
13647
13934
|
if ( $elTMP.length > 0 ) {
|
|
13648
|
-
for(let i = 0, len = $elTMP.length; i < len; ++i) {
|
|
13935
|
+
for (let i = 0, len = $elTMP.length; i < len; ++i) {
|
|
13649
13936
|
$els.push($elTMP[i])
|
|
13650
13937
|
}
|
|
13651
13938
|
}
|
|
@@ -13701,7 +13988,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13701
13988
|
// textarea
|
|
13702
13989
|
$elTMP = $form.target.getElementsByTagName('textarea');
|
|
13703
13990
|
if ( $elTMP.length > 0 ) {
|
|
13704
|
-
for(let i = 0, len = $elTMP.length; i < len; ++i) {
|
|
13991
|
+
for (let i = 0, len = $elTMP.length; i < len; ++i) {
|
|
13705
13992
|
$els.push( $elTMP[i] )
|
|
13706
13993
|
}
|
|
13707
13994
|
}
|
|
@@ -13710,7 +13997,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13710
13997
|
// forms inside main form
|
|
13711
13998
|
$elTMP = $form.target.getElementsByTagName('form');
|
|
13712
13999
|
if ( $elTMP.length > 0 ) {
|
|
13713
|
-
for(let i = 0, len = $elTMP.length; i < len; ++i) {
|
|
14000
|
+
for (let i = 0, len = $elTMP.length; i < len; ++i) {
|
|
13714
14001
|
$els.push( $elTMP[i] )
|
|
13715
14002
|
}
|
|
13716
14003
|
}
|
|
@@ -13795,8 +14082,10 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13795
14082
|
/**
|
|
13796
14083
|
* bindForm
|
|
13797
14084
|
*
|
|
13798
|
-
* @param {object} $target - DOM element
|
|
13799
|
-
* @param {object} [customRule]
|
|
14085
|
+
* @param {object} [$target] - DOM element
|
|
14086
|
+
* @param {object|string} [customRule]
|
|
14087
|
+
*
|
|
14088
|
+
* @return {object} bindedForm
|
|
13800
14089
|
* */
|
|
13801
14090
|
var bindForm = function($target, customRule) {
|
|
13802
14091
|
|
|
@@ -13805,23 +14094,32 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
13805
14094
|
, rules = ( typeof(local.rules.count() > 0 ) ) ? local.rules : instance.rules
|
|
13806
14095
|
;
|
|
13807
14096
|
|
|
13808
|
-
|
|
13809
|
-
|
|
13810
|
-
|
|
13811
|
-
|
|
13812
|
-
|
|
13813
|
-
|
|
13814
|
-
|
|
14097
|
+
if (
|
|
14098
|
+
typeof($target) == 'undefined'
|
|
14099
|
+
&& typeof(this.target) != 'undefined'
|
|
14100
|
+
&& /FORM/i.test(this.target.tagName)
|
|
14101
|
+
||
|
|
14102
|
+
!/object/i.test( typeof($target) )
|
|
14103
|
+
) {
|
|
14104
|
+
_id = this.target.id || this.target.getAttribute('id');
|
|
14105
|
+
} else if ( /string/i.test(typeof($target)) ) {
|
|
14106
|
+
_id = $target
|
|
14107
|
+
} else {
|
|
14108
|
+
_id = $target.getAttribute('id')
|
|
14109
|
+
}
|
|
13815
14110
|
|
|
14111
|
+
try {
|
|
14112
|
+
if ( typeof(instance.$forms[_id]) != 'undefined') {
|
|
14113
|
+
$form = instance.$forms[_id];
|
|
14114
|
+
if ( typeof($form.target) == 'undefined' ) {
|
|
14115
|
+
throw new Error('Validator::bindForm($target, customRule): `$target` must be a DOM element\n');
|
|
14116
|
+
}
|
|
14117
|
+
$target = $form.target;
|
|
13816
14118
|
} else {
|
|
13817
|
-
throw new Error('
|
|
14119
|
+
throw new Error('form instance `'+ _id +'` not found');
|
|
13818
14120
|
}
|
|
13819
14121
|
} catch(err) {
|
|
13820
|
-
throw new Error('Validator::bindForm($target, customRule) could not bind form `'+ $target +'`\n'+err.stack )
|
|
13821
|
-
}
|
|
13822
|
-
|
|
13823
|
-
if ( typeof($form) != 'undefined' && $form.binded) {
|
|
13824
|
-
return false
|
|
14122
|
+
throw new Error('Validator::bindForm($target, customRule) could not bind form `'+ $target +'`\n'+err.stack );
|
|
13825
14123
|
}
|
|
13826
14124
|
|
|
13827
14125
|
console.debug('binding for: '+ _id);
|
|
@@ -14127,7 +14425,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
14127
14425
|
} else if ( /img/i.test($els[i].tagName) ) {
|
|
14128
14426
|
$img = $els[i];
|
|
14129
14427
|
deleteLinkId = uploadTriggerId + '-'+index+'-delete-trigger';
|
|
14130
|
-
let file = $img.src.
|
|
14428
|
+
let file = $img.src.substring($img.src.lastIndexOf('/')+1);
|
|
14131
14429
|
$uploadTrigger.customFiles.push({
|
|
14132
14430
|
name: file,
|
|
14133
14431
|
deleteLinkId: deleteLinkId
|
|
@@ -14519,7 +14817,16 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
14519
14817
|
validate($gForm, gFields, $gFields, gRules, function onSilentGlobalLiveValidation(gResult){
|
|
14520
14818
|
instance.$forms[formId].isValidating = false;
|
|
14521
14819
|
console.debug('[updateSelect]: onSilentGlobalLiveValidation: '+ gResult.isValid(), gResult);
|
|
14820
|
+
// Fixed on 2025-03-16
|
|
14522
14821
|
var isFormValid = gResult.isValid();
|
|
14822
|
+
if (!isFormValid) {
|
|
14823
|
+
instance.$forms[formId].errors = gResult.error;
|
|
14824
|
+
for (let eField in gResult.error) {
|
|
14825
|
+
// refreshWarning($gFields[eField]);
|
|
14826
|
+
handleErrorsDisplay($gForm, gResult.error, gResult.data, eField);
|
|
14827
|
+
}
|
|
14828
|
+
}
|
|
14829
|
+
|
|
14523
14830
|
updateSubmitTriggerState( $gForm, isFormValid);
|
|
14524
14831
|
once = false;
|
|
14525
14832
|
})
|
|
@@ -15113,6 +15420,25 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
15113
15420
|
if (gina.events[_evt]) {
|
|
15114
15421
|
cancelEvent(event);
|
|
15115
15422
|
|
|
15423
|
+
// Fixed on 2025-03-05 - "last focus" vs "current focus"
|
|
15424
|
+
// To get active element: document.activeElement
|
|
15425
|
+
var formId = event.target.form.getAttribute('id') || event.currentTarget.getAttribute('id');
|
|
15426
|
+
var lastFocused = {
|
|
15427
|
+
id : $el.id,
|
|
15428
|
+
name: $el.name
|
|
15429
|
+
};
|
|
15430
|
+
if (!instance.$forms[formId].lastFocused.length) {
|
|
15431
|
+
instance.$forms[formId].lastFocused[0] = lastFocused;
|
|
15432
|
+
} else {
|
|
15433
|
+
instance.$forms[formId].lastFocused.splice(0,0,lastFocused);
|
|
15434
|
+
}
|
|
15435
|
+
lastFocused = ( typeof(instance.$forms[formId].lastFocused[1]) != 'undefined' ) ? instance.$forms[formId].lastFocused[1].id : null;
|
|
15436
|
+
|
|
15437
|
+
// cleanup
|
|
15438
|
+
instance.$forms[formId].lastFocused.splice(2);
|
|
15439
|
+
|
|
15440
|
+
// console.debug('lastFocused: ', lastFocused, ' VS current: ', $el.id);
|
|
15441
|
+
|
|
15116
15442
|
triggerEvent(gina, $el, _evt, event.detail);
|
|
15117
15443
|
}
|
|
15118
15444
|
});
|
|
@@ -15429,7 +15755,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
15429
15755
|
;
|
|
15430
15756
|
$buttonsTMP = $target.getElementsByTagName('button');
|
|
15431
15757
|
if ( $buttonsTMP.length > 0 ) {
|
|
15432
|
-
for(let b = 0, len = $buttonsTMP.length; b < len; ++b) {
|
|
15758
|
+
for (let b = 0, len = $buttonsTMP.length; b < len; ++b) {
|
|
15433
15759
|
if ($buttonsTMP[b].type == 'submit') {
|
|
15434
15760
|
$buttons.push($buttonsTMP[b])
|
|
15435
15761
|
}
|
|
@@ -15439,7 +15765,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
15439
15765
|
// binding links
|
|
15440
15766
|
$buttonsTMP = $target.getElementsByTagName('a');
|
|
15441
15767
|
if ( $buttonsTMP.length > 0 ) {
|
|
15442
|
-
for(let b = 0, len = $buttonsTMP.length; b < len; ++b) {
|
|
15768
|
+
for (let b = 0, len = $buttonsTMP.length; b < len; ++b) {
|
|
15443
15769
|
if ( $buttonsTMP[b].attributes.getNamedItem('data-gina-form-submit') ) {
|
|
15444
15770
|
$buttons.push($buttonsTMP[b])
|
|
15445
15771
|
} else if (
|
|
@@ -15696,7 +16022,8 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
15696
16022
|
}
|
|
15697
16023
|
updateSubmitTriggerState( $form, result.isValid() );
|
|
15698
16024
|
});
|
|
15699
|
-
}
|
|
16025
|
+
}
|
|
16026
|
+
else if (!/^(true)$/i.test($form.target.dataset.ginaFormLiveCheckEnabled) ) {
|
|
15700
16027
|
updateSubmitTriggerState( $form , true );
|
|
15701
16028
|
}
|
|
15702
16029
|
|
|
@@ -16159,7 +16486,8 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
16159
16486
|
if ( !/^form$/i.test($formOrElement.tagName) ) {
|
|
16160
16487
|
$currentForm = $formOrElement.form;
|
|
16161
16488
|
}
|
|
16162
|
-
var formId
|
|
16489
|
+
var formId = $currentForm.getAttribute('id');
|
|
16490
|
+
var isFormValid = null;
|
|
16163
16491
|
|
|
16164
16492
|
if (
|
|
16165
16493
|
hasParsedAllRules
|
|
@@ -16180,10 +16508,16 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
16180
16508
|
if ( typeof(instance.$forms[formId].errors) == 'undefined' ) {
|
|
16181
16509
|
instance.$forms[formId].errors = {}
|
|
16182
16510
|
}
|
|
16511
|
+
// Fixed on 2025-03-16
|
|
16512
|
+
if ( typeof(cb._errors[field]) != 'undefined' ) {
|
|
16513
|
+
instance.$forms[formId].errors[field] = cb._errors[field];
|
|
16514
|
+
}
|
|
16515
|
+
console.debug('[A] Refreshing warning/error on field '+ field);
|
|
16516
|
+
if (
|
|
16517
|
+
!isFormValid && /^true|false$/i.test(instance.$forms[formId].isValidating)
|
|
16518
|
+
|| d[field].target.value != ''
|
|
16183
16519
|
|
|
16184
|
-
|
|
16185
|
-
|
|
16186
|
-
if (!isFormValid && /^true|false$/i.test(instance.$forms[formId].isValidating) || d[field].target.value != '' ) {
|
|
16520
|
+
) {
|
|
16187
16521
|
refreshWarning($allFields[field]);
|
|
16188
16522
|
handleErrorsDisplay($currentForm, cb._errors, cb._data, field);
|
|
16189
16523
|
updateSubmitTriggerState( $currentForm, isFormValid);
|
|
@@ -16191,8 +16525,9 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
16191
16525
|
|
|
16192
16526
|
if ( envIsDev && isGFFCtx && typeof(window.ginaToolbar) != 'undefined' && window.ginaToolbar ) {
|
|
16193
16527
|
// update toolbar
|
|
16194
|
-
if (!gina.forms.errors)
|
|
16528
|
+
if (!gina.forms.errors) {
|
|
16195
16529
|
gina.forms.errors = {};
|
|
16530
|
+
}
|
|
16196
16531
|
|
|
16197
16532
|
var objCallback = {
|
|
16198
16533
|
id : formId,
|
|
@@ -16209,13 +16544,13 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
16209
16544
|
}
|
|
16210
16545
|
|
|
16211
16546
|
// is this the last or the only field to be validated ?
|
|
16212
|
-
var needsGlobalReValidation = false
|
|
16547
|
+
var needsGlobalReValidation = false;
|
|
16213
16548
|
if ( listedFields.length == 1 || listedFields[listedFields.length-1] == field) {
|
|
16214
16549
|
// trigger end of validation
|
|
16215
16550
|
// console.debug(field +' is the last element to be validated for formId: '+ formId, cb._errors, instance.$forms[formId].errors);
|
|
16216
16551
|
isFormValid = ( cb._errors.count() > 0 ) ? false : true;
|
|
16217
16552
|
if (!isFormValid && /^true|false$/i.test(instance.$forms[formId].isValidating)) {
|
|
16218
|
-
|
|
16553
|
+
console.debug('[1] Should update error display now ', cb._errors);
|
|
16219
16554
|
instance.$forms[formId].errors = merge(cb._errors, instance.$forms[formId].errors);
|
|
16220
16555
|
refreshWarning($allFields[field]);
|
|
16221
16556
|
handleErrorsDisplay($currentForm, cb._errors, cb._data, field);
|
|
@@ -16247,8 +16582,6 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
16247
16582
|
window.ginaToolbar.update('forms', objCallback);
|
|
16248
16583
|
}
|
|
16249
16584
|
|
|
16250
|
-
|
|
16251
|
-
|
|
16252
16585
|
handleErrorsDisplay($currentForm, gResult.error, gResult.data, field);
|
|
16253
16586
|
updateSubmitTriggerState( $currentForm, isFormValid);
|
|
16254
16587
|
})
|
|
@@ -16392,7 +16725,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
16392
16725
|
|
|
16393
16726
|
for (var c in rules) {
|
|
16394
16727
|
if (!/^\_case\_/.test(c) ) continue;
|
|
16395
|
-
if ( typeof(rules[c].conditions) == 'undefined' ||
|
|
16728
|
+
if ( typeof(rules[c].conditions) == 'undefined' || Array.isArray(rules[c].conditions) && !rules[c].conditions.length ) continue;
|
|
16396
16729
|
if ( typeof(rules[c].conditions[0].rules) == 'undefined' ) continue;
|
|
16397
16730
|
|
|
16398
16731
|
|
|
@@ -16574,7 +16907,14 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
16574
16907
|
// filtering conditions
|
|
16575
16908
|
for (var _c = 0, _cLen = rules[c].conditions.length; _c < _cLen; ++_c) {
|
|
16576
16909
|
|
|
16577
|
-
if (
|
|
16910
|
+
if (
|
|
16911
|
+
Array.isArray(rules[c].conditions[_c].case)
|
|
16912
|
+
&& rules[c].conditions[_c].case.indexOf(caseValue) == -1
|
|
16913
|
+
||
|
|
16914
|
+
!Array.isArray(rules[c].conditions[_c].case)
|
|
16915
|
+
&& rules[c].conditions[_c].case != caseValue
|
|
16916
|
+
|
|
16917
|
+
) {
|
|
16578
16918
|
continue;
|
|
16579
16919
|
}
|
|
16580
16920
|
|
|
@@ -16719,7 +17059,8 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
16719
17059
|
if (
|
|
16720
17060
|
conditions[c]['case'] === caseValue
|
|
16721
17061
|
||
|
|
16722
|
-
Array.isArray(conditions[c]['case'])
|
|
17062
|
+
Array.isArray(conditions[c]['case'])
|
|
17063
|
+
&& conditions[c]['case'].indexOf(caseValue) > -1
|
|
16723
17064
|
||
|
|
16724
17065
|
/^\//.test(conditions[c]['case'])
|
|
16725
17066
|
) {
|
|
@@ -16836,8 +17177,6 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
16836
17177
|
}
|
|
16837
17178
|
--i;
|
|
16838
17179
|
}
|
|
16839
|
-
|
|
16840
|
-
|
|
16841
17180
|
} // EO for
|
|
16842
17181
|
}
|
|
16843
17182
|
|
|
@@ -16858,7 +17197,7 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
16858
17197
|
}
|
|
16859
17198
|
|
|
16860
17199
|
if (isGFFCtx)
|
|
16861
|
-
$fields[field].setAttribute('data-gina-form-errors', fieldErrorsAttributes[field].
|
|
17200
|
+
$fields[field].setAttribute('data-gina-form-errors', fieldErrorsAttributes[field].substring(0, fieldErrorsAttributes[field].length-1))
|
|
16862
17201
|
}
|
|
16863
17202
|
|
|
16864
17203
|
//calling back
|
|
@@ -16929,6 +17268,8 @@ if ( ( typeof(module) !== 'undefined' ) && module.exports ) {
|
|
|
16929
17268
|
'data' : formatData( _data )
|
|
16930
17269
|
});
|
|
16931
17270
|
removeListener(gina, event.target, 'validated.' + event.target.id);
|
|
17271
|
+
|
|
17272
|
+
|
|
16932
17273
|
return
|
|
16933
17274
|
}
|
|
16934
17275
|
});
|
|
@@ -17157,6 +17498,11 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
17157
17498
|
try {
|
|
17158
17499
|
|
|
17159
17500
|
txt = ($json) ? $json.text() : '';
|
|
17501
|
+
// txt = txt
|
|
17502
|
+
// .replace(/:null/gi, ':\"null\"')
|
|
17503
|
+
// .replace(/:true/gi, ':\"true\"')
|
|
17504
|
+
// .replace(/:false/gi, ':\"false\"');
|
|
17505
|
+
|
|
17160
17506
|
if (txt == '' || txt == 'null' ) {
|
|
17161
17507
|
// $json.text('Empty')
|
|
17162
17508
|
$json.text('{}')
|
|
@@ -17180,8 +17526,9 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
17180
17526
|
|
|
17181
17527
|
var sectionStr = ( section ) ? ' [ '+ section + ' ] ' : ' ';
|
|
17182
17528
|
// var _err = 'Could not load'+ sectionStr +'json\n' + (err.stack||err.message||err);
|
|
17183
|
-
var _err = 'Could not load'+ sectionStr +'json\n' + err.message +'\n'+ err.stack;
|
|
17529
|
+
var _err = 'Could not load ['+ sectionStr +'] json\n' + err.message +'\n'+ err.stack;
|
|
17184
17530
|
console.error(_err);
|
|
17531
|
+
return;
|
|
17185
17532
|
// if ($json) {
|
|
17186
17533
|
// $json.text(_err);
|
|
17187
17534
|
// } else {
|
|
@@ -17806,7 +18153,7 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
17806
18153
|
|
|
17807
18154
|
foldingStateName += name
|
|
17808
18155
|
} else {
|
|
17809
|
-
foldingStateName = foldingStateName.
|
|
18156
|
+
foldingStateName = foldingStateName.substring(0, foldingStateName.length-1)
|
|
17810
18157
|
}
|
|
17811
18158
|
|
|
17812
18159
|
return foldingStateName.trim()
|
|
@@ -17843,8 +18190,8 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
17843
18190
|
html += '<ul class="gina-toolbar-object">' + parseObject(obj[i], ginaObj[i], id, elIsXHR, elSection) +'</ul>';
|
|
17844
18191
|
html += '</li>';
|
|
17845
18192
|
// clear one level
|
|
17846
|
-
//id = id.
|
|
17847
|
-
id = id.
|
|
18193
|
+
//id = id.substring(0, id.length - i.length - 1);
|
|
18194
|
+
id = id.substring(0, id.length - i.length);
|
|
17848
18195
|
} else if ( Array.isArray(obj[i]) ) {
|
|
17849
18196
|
//id += i + '-';
|
|
17850
18197
|
id += '-' + i.replace(/[^A-Za-z0-9_-]/g, '_');
|
|
@@ -17855,8 +18202,8 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
17855
18202
|
html += '<ul class="gina-toolbar-collection">' + parseCollection(obj[i], ginaObj[i], id, elIsXHR, elSection) +'</ul>';
|
|
17856
18203
|
html += '</li>';
|
|
17857
18204
|
// clear one level
|
|
17858
|
-
//id = id.
|
|
17859
|
-
id = id.
|
|
18205
|
+
//id = id.substring(0, id.length - i.length - 1);
|
|
18206
|
+
id = id.substring(0, id.length - i.length);
|
|
17860
18207
|
} else {
|
|
17861
18208
|
objType = (ginaObj[i] === null) ? 'null' : typeof(ginaObj[i]);
|
|
17862
18209
|
if ( objType == 'undefined' ) { // new key declaration added by user
|
|
@@ -17913,7 +18260,7 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
17913
18260
|
html += '<ul class="gina-toolbar-object">' + parseObject(arr[i], ginaArr[i], id, elIsXHR, elSection) +'</ul>';
|
|
17914
18261
|
html += '</li>';
|
|
17915
18262
|
// clear one level
|
|
17916
|
-
id = id.
|
|
18263
|
+
id = id.substring(0, id.length - i.toString().length - 1);
|
|
17917
18264
|
|
|
17918
18265
|
} else if ( Array.isArray(arr[i]) ) {
|
|
17919
18266
|
//id += i + '-';
|
|
@@ -17926,8 +18273,8 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
17926
18273
|
html += '<ul class="gina-toolbar-collection">' + parseCollection(arr[i], ginaArr[i], id, elIsXHR, elSection) +'</ul>';
|
|
17927
18274
|
html += '</li>';
|
|
17928
18275
|
// clear one level
|
|
17929
|
-
//id = id.
|
|
17930
|
-
id = id.
|
|
18276
|
+
//id = id.substring(0, id.length - i.toString().length - 1);
|
|
18277
|
+
id = id.substring(0, id.length - i.toString().length);
|
|
17931
18278
|
} else {
|
|
17932
18279
|
html += '<li class="gina-toolbar-key-value"><span class="gina-toolbar-key">'+ i +':</span> <span class="gina-toolbar-value">'+ arr[i] +'</span></li>';
|
|
17933
18280
|
}
|
|
@@ -17956,16 +18303,16 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
17956
18303
|
section = i;
|
|
17957
18304
|
if ( typeof(obj[i]) == 'object' && !Array.isArray(obj[i]) && obj[i] !== null ) { // parse
|
|
17958
18305
|
|
|
17959
|
-
$parent = $('#gina-toolbar-view-' + id.
|
|
18306
|
+
$parent = $('#gina-toolbar-view-' + id.substring(0, id.length - 1));
|
|
17960
18307
|
hasParent = ( $parent.length ) ? true : false;
|
|
17961
18308
|
|
|
17962
18309
|
if (!hasParent ) {
|
|
17963
18310
|
id += i.replace(/[^A-Za-z0-9_-]/g, '_') + '-';
|
|
17964
18311
|
|
|
17965
18312
|
if (i == 'params') { // force to top
|
|
17966
|
-
var htmlParams = '<div id="gina-toolbar-view-'+ id.
|
|
17967
|
-
'<h2 class="gina-toolbar-section-title">'+ id.
|
|
17968
|
-
'<ul class="'+ id.
|
|
18313
|
+
var htmlParams = '<div id="gina-toolbar-view-'+ id.substring(0, id.length - 1) +'" class="gina-toolbar-section">' +
|
|
18314
|
+
'<h2 class="gina-toolbar-section-title">'+ id.substring(0, id.length - 1) +'</h2>' +
|
|
18315
|
+
'<ul class="'+ id.substring(0, id.length - 1) +'"></ul>' +
|
|
17969
18316
|
'</div>';
|
|
17970
18317
|
|
|
17971
18318
|
$('#gina-toolbar-view-html-properties')
|
|
@@ -17974,9 +18321,9 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
17974
18321
|
|
|
17975
18322
|
if ( !/^html/.test(id) ) {
|
|
17976
18323
|
|
|
17977
|
-
var htmlOther = '<div id="gina-toolbar-view-'+ id.
|
|
17978
|
-
'<h2 class="gina-toolbar-section-title">'+ id.
|
|
17979
|
-
'<ul class="'+ id.
|
|
18324
|
+
var htmlOther = '<div id="gina-toolbar-view-'+ id.substring(0, id.length - 1) +'" class="gina-toolbar-section">' +
|
|
18325
|
+
'<h2 class="gina-toolbar-section-title">'+ id.substring(0, id.length - 1) +'</h2>' +
|
|
18326
|
+
'<ul class="'+ id.substring(0, id.length - 1) +'"></ul>' +
|
|
17980
18327
|
'</div>';
|
|
17981
18328
|
|
|
17982
18329
|
$html
|
|
@@ -17984,36 +18331,36 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
17984
18331
|
}/** else { // add to properties section
|
|
17985
18332
|
$root
|
|
17986
18333
|
.find('.gina-toolbar-properties')
|
|
17987
|
-
.append('ul.' + id.
|
|
18334
|
+
.append('ul.' + id.substring(0, id.length - 1))
|
|
17988
18335
|
}*/
|
|
17989
18336
|
|
|
17990
18337
|
}
|
|
17991
18338
|
|
|
17992
|
-
parseView(obj[i], ginaObj[i], id, elIsXHR, $html.find('ul.'+ id.
|
|
18339
|
+
parseView(obj[i], ginaObj[i], id, elIsXHR, $html.find('ul.'+ id.substring(0, id.length - 1)), $root );
|
|
17993
18340
|
|
|
17994
18341
|
} else {
|
|
17995
18342
|
|
|
17996
18343
|
parentId = id + i.replace(/[^A-Za-z0-9_-]/g, '_') + '-';
|
|
17997
18344
|
|
|
17998
18345
|
$parent
|
|
17999
|
-
.find('ul.'+ id.
|
|
18000
|
-
.append('<li class="gina-toolbar-object"><a href="#" class="gina-toolbar-key gina-toolbar'+ isXHR +'-folding-state-'+ normalizeFoldingStateName( i.replace(/[^A-Za-z0-9_-]/g, '_'), parentId.
|
|
18346
|
+
.find('ul.'+ id.substring(0, id.length - 1))
|
|
18347
|
+
.append('<li class="gina-toolbar-object"><a href="#" class="gina-toolbar-key gina-toolbar'+ isXHR +'-folding-state-'+ normalizeFoldingStateName( i.replace(/[^A-Za-z0-9_-]/g, '_'), parentId.substring(0, parentId.length - 1) ) +'">'+ i +' <span>{ }</span></a><ul class="gina-toolbar-object '+ parentId.substring(0, parentId.length - 1) +'"></ul></li>');
|
|
18001
18348
|
|
|
18002
|
-
parseView(obj[i], ginaObj[i], parentId, elIsXHR, $parent.find('ul.'+ id.
|
|
18349
|
+
parseView(obj[i], ginaObj[i], parentId, elIsXHR, $parent.find('ul.'+ id.substring(0, id.length - 1)), $root );
|
|
18003
18350
|
|
|
18004
18351
|
id += i.replace(/[^A-Za-z0-9_-]/g, '_') + '-';
|
|
18005
18352
|
}
|
|
18006
18353
|
|
|
18007
18354
|
|
|
18008
18355
|
// clear one level
|
|
18009
|
-
id = id.
|
|
18356
|
+
id = id.substring(0, id.length - i.length - 1);
|
|
18010
18357
|
|
|
18011
18358
|
|
|
18012
18359
|
} else if ( Array.isArray(obj[i]) ) { // parse collection
|
|
18013
18360
|
|
|
18014
18361
|
|
|
18015
18362
|
|
|
18016
|
-
$parent = $('#gina-toolbar-view-' + id.
|
|
18363
|
+
$parent = $('#gina-toolbar-view-' + id.substring(0, id.length - 1));
|
|
18017
18364
|
|
|
18018
18365
|
hasParent = ( $parent.length ) ? true : false;
|
|
18019
18366
|
|
|
@@ -18023,16 +18370,16 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
18023
18370
|
parentId = id + i.replace(/[^A-Za-z0-9_-]/g, '_') + '-';
|
|
18024
18371
|
|
|
18025
18372
|
$parent
|
|
18026
|
-
//.find('ul.'+ id.
|
|
18027
|
-
.append('<li class="gina-toolbar-collection"><a href="#" class="gina-toolbar-key gina-toolbar'+ isXHR +'-folding-state-'+ normalizeFoldingStateName( i.replace(/[^A-Za-z0-9_-]/g, '_'), parentId.
|
|
18373
|
+
//.find('ul.'+ id.substring(0, id.length - 1))
|
|
18374
|
+
.append('<li class="gina-toolbar-collection"><a href="#" class="gina-toolbar-key gina-toolbar'+ isXHR +'-folding-state-'+ normalizeFoldingStateName( i.replace(/[^A-Za-z0-9_-]/g, '_'), parentId.substring(0, parentId.length - 1) ) +'">'+ i +' <span>['+ obj[i].length +']</span></a><ul> '+ parseCollection(obj[i], ginaObj[i], parentId, $parent.find('li ul.'+ id.substring(0, id.length - 1)), section )+'</ul></li>');
|
|
18028
18375
|
|
|
18029
18376
|
|
|
18030
|
-
//parentId = parentId.
|
|
18031
|
-
//parentId = id.
|
|
18032
|
-
//parseView(obj[i], ginaObj[i], parentId, elIsXHR, $parent.find('ul.'+ parentId.
|
|
18377
|
+
//parentId = parentId.substring(0, parentId.length - 1)+ '-';
|
|
18378
|
+
//parentId = id.substring(0, id.length - i.length - 1);
|
|
18379
|
+
//parseView(obj[i], ginaObj[i], parentId, elIsXHR, $parent.find('ul.'+ parentId.substring(0, parentId.length - 1)), $root );
|
|
18033
18380
|
|
|
18034
18381
|
//id += i.replace(/[^A-Za-z0-9_-]/g, '_') + '-';
|
|
18035
|
-
//$parent = $('#gina-toolbar-view-' + id.
|
|
18382
|
+
//$parent = $('#gina-toolbar-view-' + id.substring(0, id.length - 1));
|
|
18036
18383
|
id += i.replace(/[^A-Za-z0-9_-]/g, '_') + '-';
|
|
18037
18384
|
} else {
|
|
18038
18385
|
|
|
@@ -18040,8 +18387,8 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
18040
18387
|
parentId = id + i.replace(/[^A-Za-z0-9_-]/g, '_') + '-';
|
|
18041
18388
|
|
|
18042
18389
|
$parent
|
|
18043
|
-
.find('li.'+ id.
|
|
18044
|
-
.append('<li class="gina-toolbar-collection"><a class="gina-toolbar-key gina-toolbar'+ isXHR +'-folding-state-'+ normalizeFoldingStateName( i.replace(/[^A-Za-z0-9_-]/g, '_'), parentId.
|
|
18390
|
+
.find('li.'+ id.substring(0, id.length - 1) +' ul')
|
|
18391
|
+
.append('<li class="gina-toolbar-collection"><a class="gina-toolbar-key gina-toolbar'+ isXHR +'-folding-state-'+ normalizeFoldingStateName( i.replace(/[^A-Za-z0-9_-]/g, '_'), parentId.substring(0, parentId.length - 1) ) +'">'+ i +' <span>['+ obj[i].length +']</span></a><ul>'+ parseCollection(obj[i], ginaObj[i], parentId, $parent.find('li ul.'+ id.substring(0, id.length - 1)), section ) +'</ul></li>');
|
|
18045
18392
|
|
|
18046
18393
|
id += i.replace(/[^A-Za-z0-9_-]/g, '_') + '-';
|
|
18047
18394
|
|
|
@@ -18052,7 +18399,7 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
18052
18399
|
// id = id + i.replace(/[^A-Za-z0-9_-]/g, '_') + '-';
|
|
18053
18400
|
// $root
|
|
18054
18401
|
// .find('.gina-toolbar-properties')
|
|
18055
|
-
// .append('<li class="gina-toolbar-collection"><a class="gina-toolbar-key gina-toolbar'+ isXHR +'-folding-state-'+ normalizeFoldingStateName( i.replace(/[^A-Za-z0-9_-]/g, '_'), id.
|
|
18402
|
+
// .append('<li class="gina-toolbar-collection"><a class="gina-toolbar-key gina-toolbar'+ isXHR +'-folding-state-'+ normalizeFoldingStateName( i.replace(/[^A-Za-z0-9_-]/g, '_'), id.substring(0, id.length - 1) ) +'">'+ i +' <span>['+ obj[i].length +']</span></a><ul>'+ parseCollection(obj[i], ginaObj[i], parentId, $root.find('.gina-toolbar-properties'), section) +'</ul></li>');
|
|
18056
18403
|
|
|
18057
18404
|
|
|
18058
18405
|
// } else {
|
|
@@ -18061,14 +18408,14 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
18061
18408
|
// parentId = id + i.replace(/[^A-Za-z0-9_-]/g, '_') + '-';
|
|
18062
18409
|
|
|
18063
18410
|
// $parent
|
|
18064
|
-
// .find('li.'+ id.
|
|
18065
|
-
// .append('<li class="gina-toolbar-collection"><a class="gina-toolbar-key gina-toolbar'+ isXHR +'-folding-state-'+ normalizeFoldingStateName( i.replace(/[^A-Za-z0-9_-]/g, '_'), parentId.
|
|
18411
|
+
// .find('li.'+ id.substring(0, id.length - 1) +' ul')
|
|
18412
|
+
// .append('<li class="gina-toolbar-collection"><a class="gina-toolbar-key gina-toolbar'+ isXHR +'-folding-state-'+ normalizeFoldingStateName( i.replace(/[^A-Za-z0-9_-]/g, '_'), parentId.substring(0, parentId.length - 1) ) +'">'+ i +' <span>['+ obj[i].length +']</span></a><ul>'+ parseCollection(obj[i], ginaObj[i], parentId, $parent.find('li ul.'+ id.substring(0, id.length - 1)), section ) +'</ul></li>');
|
|
18066
18413
|
|
|
18067
18414
|
// id += i.replace(/[^A-Za-z0-9_-]/g, '_') + '-';
|
|
18068
18415
|
// }
|
|
18069
18416
|
|
|
18070
18417
|
// clear one level
|
|
18071
|
-
id = id.
|
|
18418
|
+
id = id.substring(0, id.length - i.length - 1);
|
|
18072
18419
|
} else {
|
|
18073
18420
|
|
|
18074
18421
|
|
|
@@ -18076,7 +18423,7 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
18076
18423
|
objType = (ginaObj[i] === null) ? 'null' : typeof(ginaObj[i]);
|
|
18077
18424
|
if ( objType == 'undefined' ) { // new key declaration added by user
|
|
18078
18425
|
if (/\-$/.test(id)) {
|
|
18079
|
-
id = id.
|
|
18426
|
+
id = id.substring(0, id.length - 1);
|
|
18080
18427
|
}
|
|
18081
18428
|
|
|
18082
18429
|
if (!id) continue;
|
|
@@ -18123,7 +18470,7 @@ define('gina/toolbar', ['require', 'jquery', 'vendor/uuid'/**, 'lib/merge'*/, 'l
|
|
|
18123
18470
|
} else {
|
|
18124
18471
|
|
|
18125
18472
|
$root
|
|
18126
|
-
.find('ul.' + id.
|
|
18473
|
+
.find('ul.' + id.substring(0, id.length - 1))
|
|
18127
18474
|
.append('<li class="gina-toolbar-key-value"><span class="gina-toolbar-key">'+ i +':</span> <span class="gina-toolbar-value gina-toolbar-value-type-is-'+ objType +'">'+ obj[i] +'</span></li>')
|
|
18128
18475
|
}
|
|
18129
18476
|
}
|
|
@@ -18643,11 +18990,11 @@ define('gina', [ 'require', 'vendor/uuid', 'lib/merge', 'utils/events', 'helpers
|
|
|
18643
18990
|
return construct
|
|
18644
18991
|
});
|
|
18645
18992
|
/*!
|
|
18646
|
-
* Engine.IO v6.
|
|
18647
|
-
* (c) 2014-
|
|
18993
|
+
* Engine.IO v6.6.3
|
|
18994
|
+
* (c) 2014-2025 Guillermo Rauch
|
|
18648
18995
|
* Released under the MIT License.
|
|
18649
18996
|
*/
|
|
18650
|
-
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define('vendor/engine.io',e):(t="undefined"!=typeof globalThis?globalThis:t||self).eio=e()}(this,(function(){"use strict";function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t(e)}function e(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function r(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}function n(t,e,n){return e&&r(t.prototype,e),n&&r(t,n),t}function o(){return o=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},o.apply(this,arguments)}function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function");t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,writable:!0,configurable:!0}}),e&&a(t,e)}function s(t){return s=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},s(t)}function a(t,e){return a=Object.setPrototypeOf||function(t,e){return t.__proto__=e,t},a(t,e)}function u(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],(function(){}))),!0}catch(t){return!1}}function c(t,e,r){return c=u()?Reflect.construct:function(t,e,r){var n=[null];n.push.apply(n,e);var o=new(Function.bind.apply(t,n));return r&&a(o,r.prototype),o},c.apply(null,arguments)}function p(t){var e="function"==typeof Map?new Map:void 0;return p=function(t){if(null===t||(r=t,-1===Function.toString.call(r).indexOf("[native code]")))return t;var r;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==e){if(e.has(t))return e.get(t);e.set(t,n)}function n(){return c(t,arguments,s(this).constructor)}return n.prototype=Object.create(t.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),a(n,t)},p(t)}function h(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}function l(t,e){return!e||"object"!=typeof e&&"function"!=typeof e?h(t):e}function f(t){var e=u();return function(){var r,n=s(t);if(e){var o=s(this).constructor;r=Reflect.construct(n,arguments,o)}else r=n.apply(this,arguments);return l(this,r)}}function d(t,e,r){return d="undefined"!=typeof Reflect&&Reflect.get?Reflect.get:function(t,e,r){var n=function(t,e){for(;!Object.prototype.hasOwnProperty.call(t,e)&&null!==(t=s(t)););return t}(t,e);if(n){var o=Object.getOwnPropertyDescriptor(n,e);return o.get?o.get.call(r):o.value}},d(t,e,r||t)}var y=Object.create(null);y.open="0",y.close="1",y.ping="2",y.pong="3",y.message="4",y.upgrade="5",y.noop="6";var v=Object.create(null);Object.keys(y).forEach((function(t){v[y[t]]=t}));for(var m={type:"error",data:"parser error"},g="function"==typeof Blob||"undefined"!=typeof Blob&&"[object BlobConstructor]"===Object.prototype.toString.call(Blob),b="function"==typeof ArrayBuffer,k=function(t,e,r){var n,o=t.type,i=t.data;return g&&i instanceof Blob?e?r(i):w(i,r):b&&(i instanceof ArrayBuffer||(n=i,"function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(n):n&&n.buffer instanceof ArrayBuffer))?e?r(i):w(new Blob([i]),r):r(y[o]+(i||""))},w=function(t,e){var r=new FileReader;return r.onload=function(){var t=r.result.split(",")[1];e("b"+t)},r.readAsDataURL(t)},T="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",S="undefined"==typeof Uint8Array?[]:new Uint8Array(256),R=0;R<T.length;R++)S[T.charCodeAt(R)]=R;var x="function"==typeof ArrayBuffer,O=function(t,e){if("string"!=typeof t)return{type:"message",data:P(t,e)};var r=t.charAt(0);return"b"===r?{type:"message",data:E(t.substring(1),e)}:v[r]?t.length>1?{type:v[r],data:t.substring(1)}:{type:v[r]}:m},E=function(t,e){if(x){var r=function(t){var e,r,n,o,i,s=.75*t.length,a=t.length,u=0;"="===t[t.length-1]&&(s--,"="===t[t.length-2]&&s--);var c=new ArrayBuffer(s),p=new Uint8Array(c);for(e=0;e<a;e+=4)r=S[t.charCodeAt(e)],n=S[t.charCodeAt(e+1)],o=S[t.charCodeAt(e+2)],i=S[t.charCodeAt(e+3)],p[u++]=r<<2|n>>4,p[u++]=(15&n)<<4|o>>2,p[u++]=(3&o)<<6|63&i;return c}(t);return P(r,e)}return{base64:!0,data:t}},P=function(t,e){return"blob"===e&&t instanceof ArrayBuffer?new Blob([t]):t},B=String.fromCharCode(30);function C(t){if(t)return function(t){for(var e in C.prototype)t[e]=C.prototype[e];return t}(t)}C.prototype.on=C.prototype.addEventListener=function(t,e){return this._callbacks=this._callbacks||{},(this._callbacks["$"+t]=this._callbacks["$"+t]||[]).push(e),this},C.prototype.once=function(t,e){function r(){this.off(t,r),e.apply(this,arguments)}return r.fn=e,this.on(t,r),this},C.prototype.off=C.prototype.removeListener=C.prototype.removeAllListeners=C.prototype.removeEventListener=function(t,e){if(this._callbacks=this._callbacks||{},0==arguments.length)return this._callbacks={},this;var r,n=this._callbacks["$"+t];if(!n)return this;if(1==arguments.length)return delete this._callbacks["$"+t],this;for(var o=0;o<n.length;o++)if((r=n[o])===e||r.fn===e){n.splice(o,1);break}return 0===n.length&&delete this._callbacks["$"+t],this},C.prototype.emit=function(t){this._callbacks=this._callbacks||{};for(var e=new Array(arguments.length-1),r=this._callbacks["$"+t],n=1;n<arguments.length;n++)e[n-1]=arguments[n];if(r){n=0;for(var o=(r=r.slice(0)).length;n<o;++n)r[n].apply(this,e)}return this},C.prototype.emitReserved=C.prototype.emit,C.prototype.listeners=function(t){return this._callbacks=this._callbacks||{},this._callbacks["$"+t]||[]},C.prototype.hasListeners=function(t){return!!this.listeners(t).length};var L="undefined"!=typeof self?self:"undefined"!=typeof window?window:Function("return this")();function q(t){for(var e=arguments.length,r=new Array(e>1?e-1:0),n=1;n<e;n++)r[n-1]=arguments[n];return r.reduce((function(e,r){return t.hasOwnProperty(r)&&(e[r]=t[r]),e}),{})}var A=setTimeout,j=clearTimeout;function _(t,e){e.useNativeTimers?(t.setTimeoutFn=A.bind(L),t.clearTimeoutFn=j.bind(L)):(t.setTimeoutFn=setTimeout.bind(L),t.clearTimeoutFn=clearTimeout.bind(L))}var U,H=function(t){i(n,t);var r=f(n);function n(t,o,i){var s;return e(this,n),(s=r.call(this,t)).description=o,s.context=i,s.type="TransportError",s}return n}(p(Error)),F=function(t){i(o,t);var r=f(o);function o(t){var n;return e(this,o),(n=r.call(this)).writable=!1,_(h(n),t),n.opts=t,n.query=t.query,n.readyState="",n.socket=t.socket,n}return n(o,[{key:"onError",value:function(t,e,r){return d(s(o.prototype),"emitReserved",this).call(this,"error",new H(t,e,r)),this}},{key:"open",value:function(){return"closed"!==this.readyState&&""!==this.readyState||(this.readyState="opening",this.doOpen()),this}},{key:"close",value:function(){return"opening"!==this.readyState&&"open"!==this.readyState||(this.doClose(),this.onClose()),this}},{key:"send",value:function(t){"open"===this.readyState&&this.write(t)}},{key:"onOpen",value:function(){this.readyState="open",this.writable=!0,d(s(o.prototype),"emitReserved",this).call(this,"open")}},{key:"onData",value:function(t){var e=O(t,this.socket.binaryType);this.onPacket(e)}},{key:"onPacket",value:function(t){d(s(o.prototype),"emitReserved",this).call(this,"packet",t)}},{key:"onClose",value:function(t){this.readyState="closed",d(s(o.prototype),"emitReserved",this).call(this,"close",t)}}]),o}(C),D="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-_".split(""),M={},I=0,W=0;function N(t){var e="";do{e=D[t%64]+e,t=Math.floor(t/64)}while(t>0);return e}function X(){var t=N(+new Date);return t!==U?(I=0,U=t):t+"."+N(I++)}for(;W<64;W++)M[D[W]]=W;function $(t){var e="";for(var r in t)t.hasOwnProperty(r)&&(e.length&&(e+="&"),e+=encodeURIComponent(r)+"="+encodeURIComponent(t[r]));return e}function z(t){for(var e={},r=t.split("&"),n=0,o=r.length;n<o;n++){var i=r[n].split("=");e[decodeURIComponent(i[0])]=decodeURIComponent(i[1])}return e}var V=!1;try{V="undefined"!=typeof XMLHttpRequest&&"withCredentials"in new XMLHttpRequest}catch(t){}var G=V;function J(t){var e=t.xdomain;try{if("undefined"!=typeof XMLHttpRequest&&(!e||G))return new XMLHttpRequest}catch(t){}if(!e)try{return new(L[["Active"].concat("Object").join("X")])("Microsoft.XMLHTTP")}catch(t){}}function K(){}var Q=null!=new J({xdomain:!1}).responseType,Y=function(t){i(s,t);var r=f(s);function s(t){var n;if(e(this,s),(n=r.call(this,t)).polling=!1,"undefined"!=typeof location){var o="https:"===location.protocol,i=location.port;i||(i=o?"443":"80"),n.xd="undefined"!=typeof location&&t.hostname!==location.hostname||i!==t.port,n.xs=t.secure!==o}var a=t&&t.forceBase64;return n.supportsBinary=Q&&!a,n}return n(s,[{key:"doOpen",value:function(){this.poll()}},{key:"pause",value:function(t){var e=this;this.readyState="pausing";var r=function(){e.readyState="paused",t()};if(this.polling||!this.writable){var n=0;this.polling&&(n++,this.once("pollComplete",(function(){--n||r()}))),this.writable||(n++,this.once("drain",(function(){--n||r()})))}else r()}},{key:"poll",value:function(){this.polling=!0,this.doPoll(),this.emitReserved("poll")}},{key:"onData",value:function(t){var e=this;(function(t,e){for(var r=t.split(B),n=[],o=0;o<r.length;o++){var i=O(r[o],e);if(n.push(i),"error"===i.type)break}return n})(t,this.socket.binaryType).forEach((function(t){if("opening"===e.readyState&&"open"===t.type&&e.onOpen(),"close"===t.type)return e.onClose({description:"transport closed by the server"}),!1;e.onPacket(t)})),"closed"!==this.readyState&&(this.polling=!1,this.emitReserved("pollComplete"),"open"===this.readyState&&this.poll())}},{key:"doClose",value:function(){var t=this,e=function(){t.write([{type:"close"}])};"open"===this.readyState?e():this.once("open",e)}},{key:"write",value:function(t){var e=this;this.writable=!1,function(t,e){var r=t.length,n=new Array(r),o=0;t.forEach((function(t,i){k(t,!1,(function(t){n[i]=t,++o===r&&e(n.join(B))}))}))}(t,(function(t){e.doWrite(t,(function(){e.writable=!0,e.emitReserved("drain")}))}))}},{key:"uri",value:function(){var t=this.query||{},e=this.opts.secure?"https":"http",r="";!1!==this.opts.timestampRequests&&(t[this.opts.timestampParam]=X()),this.supportsBinary||t.sid||(t.b64=1),this.opts.port&&("https"===e&&443!==Number(this.opts.port)||"http"===e&&80!==Number(this.opts.port))&&(r=":"+this.opts.port);var n=$(t);return e+"://"+(-1!==this.opts.hostname.indexOf(":")?"["+this.opts.hostname+"]":this.opts.hostname)+r+this.opts.path+(n.length?"?"+n:"")}},{key:"request",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return o(t,{xd:this.xd,xs:this.xs},this.opts),new Z(this.uri(),t)}},{key:"doWrite",value:function(t,e){var r=this,n=this.request({method:"POST",data:t});n.on("success",e),n.on("error",(function(t,e){r.onError("xhr post error",t,e)}))}},{key:"doPoll",value:function(){var t=this,e=this.request();e.on("data",this.onData.bind(this)),e.on("error",(function(e,r){t.onError("xhr poll error",e,r)})),this.pollXhr=e}},{key:"name",get:function(){return"polling"}}]),s}(F),Z=function(t){i(o,t);var r=f(o);function o(t,n){var i;return e(this,o),_(h(i=r.call(this)),n),i.opts=n,i.method=n.method||"GET",i.uri=t,i.async=!1!==n.async,i.data=void 0!==n.data?n.data:null,i.create(),i}return n(o,[{key:"create",value:function(){var t=this,e=q(this.opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");e.xdomain=!!this.opts.xd,e.xscheme=!!this.opts.xs;var r=this.xhr=new J(e);try{r.open(this.method,this.uri,this.async);try{if(this.opts.extraHeaders)for(var n in r.setDisableHeaderCheck&&r.setDisableHeaderCheck(!0),this.opts.extraHeaders)this.opts.extraHeaders.hasOwnProperty(n)&&r.setRequestHeader(n,this.opts.extraHeaders[n])}catch(t){}if("POST"===this.method)try{r.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch(t){}try{r.setRequestHeader("Accept","*/*")}catch(t){}"withCredentials"in r&&(r.withCredentials=this.opts.withCredentials),this.opts.requestTimeout&&(r.timeout=this.opts.requestTimeout),r.onreadystatechange=function(){4===r.readyState&&(200===r.status||1223===r.status?t.onLoad():t.setTimeoutFn((function(){t.onError("number"==typeof r.status?r.status:0)}),0))},r.send(this.data)}catch(e){return void this.setTimeoutFn((function(){t.onError(e)}),0)}"undefined"!=typeof document&&(this.index=o.requestsCount++,o.requests[this.index]=this)}},{key:"onError",value:function(t){this.emitReserved("error",t,this.xhr),this.cleanup(!0)}},{key:"cleanup",value:function(t){if(void 0!==this.xhr&&null!==this.xhr){if(this.xhr.onreadystatechange=K,t)try{this.xhr.abort()}catch(t){}"undefined"!=typeof document&&delete o.requests[this.index],this.xhr=null}}},{key:"onLoad",value:function(){var t=this.xhr.responseText;null!==t&&(this.emitReserved("data",t),this.emitReserved("success"),this.cleanup())}},{key:"abort",value:function(){this.cleanup()}}]),o}(C);if(Z.requestsCount=0,Z.requests={},"undefined"!=typeof document)if("function"==typeof attachEvent)attachEvent("onunload",tt);else if("function"==typeof addEventListener){addEventListener("onpagehide"in L?"pagehide":"unload",tt,!1)}function tt(){for(var t in Z.requests)Z.requests.hasOwnProperty(t)&&Z.requests[t].abort()}var et="function"==typeof Promise&&"function"==typeof Promise.resolve?function(t){return Promise.resolve().then(t)}:function(t,e){return e(t,0)},rt=L.WebSocket||L.MozWebSocket,nt="undefined"!=typeof navigator&&"string"==typeof navigator.product&&"reactnative"===navigator.product.toLowerCase(),ot=function(t){i(o,t);var r=f(o);function o(t){var n;return e(this,o),(n=r.call(this,t)).supportsBinary=!t.forceBase64,n}return n(o,[{key:"doOpen",value:function(){if(this.check()){var t=this.uri(),e=this.opts.protocols,r=nt?{}:q(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(r.headers=this.opts.extraHeaders);try{this.ws=nt?new rt(t,e,r):e?new rt(t,e):new rt(t)}catch(t){return this.emitReserved("error",t)}this.ws.binaryType=this.socket.binaryType||"arraybuffer",this.addEventListeners()}}},{key:"addEventListeners",value:function(){var t=this;this.ws.onopen=function(){t.opts.autoUnref&&t.ws._socket.unref(),t.onOpen()},this.ws.onclose=function(e){return t.onClose({description:"websocket connection closed",context:e})},this.ws.onmessage=function(e){return t.onData(e.data)},this.ws.onerror=function(e){return t.onError("websocket error",e)}}},{key:"write",value:function(t){var e=this;this.writable=!1;for(var r=function(r){var n=t[r],o=r===t.length-1;k(n,e.supportsBinary,(function(t){try{e.ws.send(t)}catch(t){}o&&et((function(){e.writable=!0,e.emitReserved("drain")}),e.setTimeoutFn)}))},n=0;n<t.length;n++)r(n)}},{key:"doClose",value:function(){void 0!==this.ws&&(this.ws.close(),this.ws=null)}},{key:"uri",value:function(){var t=this.query||{},e=this.opts.secure?"wss":"ws",r="";this.opts.port&&("wss"===e&&443!==Number(this.opts.port)||"ws"===e&&80!==Number(this.opts.port))&&(r=":"+this.opts.port),this.opts.timestampRequests&&(t[this.opts.timestampParam]=X()),this.supportsBinary||(t.b64=1);var n=$(t);return e+"://"+(-1!==this.opts.hostname.indexOf(":")?"["+this.opts.hostname+"]":this.opts.hostname)+r+this.opts.path+(n.length?"?"+n:"")}},{key:"check",value:function(){return!!rt}},{key:"name",get:function(){return"websocket"}}]),o}(F),it={websocket:ot,polling:Y},st=/^(?:(?![^:@]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@]*)(?::([^:@]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,at=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function ut(t){var e=t,r=t.indexOf("["),n=t.indexOf("]");-1!=r&&-1!=n&&(t=t.substring(0,r)+t.substring(r,n).replace(/:/g,";")+t.substring(n,t.length));for(var o,i,s=st.exec(t||""),a={},u=14;u--;)a[at[u]]=s[u]||"";return-1!=r&&-1!=n&&(a.source=e,a.host=a.host.substring(1,a.host.length-1).replace(/;/g,":"),a.authority=a.authority.replace("[","").replace("]","").replace(/;/g,":"),a.ipv6uri=!0),a.pathNames=function(t,e){var r=/\/{2,9}/g,n=e.replace(r,"/").split("/");"/"!=e.substr(0,1)&&0!==e.length||n.splice(0,1);"/"==e.substr(e.length-1,1)&&n.splice(n.length-1,1);return n}(0,a.path),a.queryKey=(o=a.query,i={},o.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,(function(t,e,r){e&&(i[e]=r)})),i),a}var ct=function(r){i(a,r);var s=f(a);function a(r){var n,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e(this,a),n=s.call(this),r&&"object"===t(r)&&(i=r,r=null),r?(r=ut(r),i.hostname=r.host,i.secure="https"===r.protocol||"wss"===r.protocol,i.port=r.port,r.query&&(i.query=r.query)):i.host&&(i.hostname=ut(i.host).host),_(h(n),i),n.secure=null!=i.secure?i.secure:"undefined"!=typeof location&&"https:"===location.protocol,i.hostname&&!i.port&&(i.port=n.secure?"443":"80"),n.hostname=i.hostname||("undefined"!=typeof location?location.hostname:"localhost"),n.port=i.port||("undefined"!=typeof location&&location.port?location.port:n.secure?"443":"80"),n.transports=i.transports||["polling","websocket"],n.readyState="",n.writeBuffer=[],n.prevBufferLen=0,n.opts=o({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!0},i),n.opts.path=n.opts.path.replace(/\/$/,"")+"/","string"==typeof n.opts.query&&(n.opts.query=z(n.opts.query)),n.id=null,n.upgrades=null,n.pingInterval=null,n.pingTimeout=null,n.pingTimeoutTimer=null,"function"==typeof addEventListener&&(n.opts.closeOnBeforeunload&&addEventListener("beforeunload",(function(){n.transport&&(n.transport.removeAllListeners(),n.transport.close())}),!1),"localhost"!==n.hostname&&(n.offlineEventListener=function(){n.onClose("transport close",{description:"network connection lost"})},addEventListener("offline",n.offlineEventListener,!1))),n.open(),n}return n(a,[{key:"createTransport",value:function(t){var e=o({},this.opts.query);e.EIO=4,e.transport=t,this.id&&(e.sid=this.id);var r=o({},this.opts.transportOptions[t],this.opts,{query:e,socket:this,hostname:this.hostname,secure:this.secure,port:this.port});return new it[t](r)}},{key:"open",value:function(){var t,e=this;if(this.opts.rememberUpgrade&&a.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket"))t="websocket";else{if(0===this.transports.length)return void this.setTimeoutFn((function(){e.emitReserved("error","No transports available")}),0);t=this.transports[0]}this.readyState="opening";try{t=this.createTransport(t)}catch(t){return this.transports.shift(),void this.open()}t.open(),this.setTransport(t)}},{key:"setTransport",value:function(t){var e=this;this.transport&&this.transport.removeAllListeners(),this.transport=t,t.on("drain",this.onDrain.bind(this)).on("packet",this.onPacket.bind(this)).on("error",this.onError.bind(this)).on("close",(function(t){return e.onClose("transport close",t)}))}},{key:"probe",value:function(t){var e=this,r=this.createTransport(t),n=!1;a.priorWebsocketSuccess=!1;var o=function(){n||(r.send([{type:"ping",data:"probe"}]),r.once("packet",(function(t){if(!n)if("pong"===t.type&&"probe"===t.data){if(e.upgrading=!0,e.emitReserved("upgrading",r),!r)return;a.priorWebsocketSuccess="websocket"===r.name,e.transport.pause((function(){n||"closed"!==e.readyState&&(h(),e.setTransport(r),r.send([{type:"upgrade"}]),e.emitReserved("upgrade",r),r=null,e.upgrading=!1,e.flush())}))}else{var o=new Error("probe error");o.transport=r.name,e.emitReserved("upgradeError",o)}})))};function i(){n||(n=!0,h(),r.close(),r=null)}var s=function(t){var n=new Error("probe error: "+t);n.transport=r.name,i(),e.emitReserved("upgradeError",n)};function u(){s("transport closed")}function c(){s("socket closed")}function p(t){r&&t.name!==r.name&&i()}var h=function(){r.removeListener("open",o),r.removeListener("error",s),r.removeListener("close",u),e.off("close",c),e.off("upgrading",p)};r.once("open",o),r.once("error",s),r.once("close",u),this.once("close",c),this.once("upgrading",p),r.open()}},{key:"onOpen",value:function(){if(this.readyState="open",a.priorWebsocketSuccess="websocket"===this.transport.name,this.emitReserved("open"),this.flush(),"open"===this.readyState&&this.opts.upgrade&&this.transport.pause)for(var t=0,e=this.upgrades.length;t<e;t++)this.probe(this.upgrades[t])}},{key:"onPacket",value:function(t){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState)switch(this.emitReserved("packet",t),this.emitReserved("heartbeat"),t.type){case"open":this.onHandshake(JSON.parse(t.data));break;case"ping":this.resetPingTimeout(),this.sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong");break;case"error":var e=new Error("server error");e.code=t.data,this.onError(e);break;case"message":this.emitReserved("data",t.data),this.emitReserved("message",t.data)}}},{key:"onHandshake",value:function(t){this.emitReserved("handshake",t),this.id=t.sid,this.transport.query.sid=t.sid,this.upgrades=this.filterUpgrades(t.upgrades),this.pingInterval=t.pingInterval,this.pingTimeout=t.pingTimeout,this.maxPayload=t.maxPayload,this.onOpen(),"closed"!==this.readyState&&this.resetPingTimeout()}},{key:"resetPingTimeout",value:function(){var t=this;this.clearTimeoutFn(this.pingTimeoutTimer),this.pingTimeoutTimer=this.setTimeoutFn((function(){t.onClose("ping timeout")}),this.pingInterval+this.pingTimeout),this.opts.autoUnref&&this.pingTimeoutTimer.unref()}},{key:"onDrain",value:function(){this.writeBuffer.splice(0,this.prevBufferLen),this.prevBufferLen=0,0===this.writeBuffer.length?this.emitReserved("drain"):this.flush()}},{key:"flush",value:function(){if("closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){var t=this.getWritablePackets();this.transport.send(t),this.prevBufferLen=t.length,this.emitReserved("flush")}}},{key:"getWritablePackets",value:function(){if(!(this.maxPayload&&"polling"===this.transport.name&&this.writeBuffer.length>1))return this.writeBuffer;for(var t,e=1,r=0;r<this.writeBuffer.length;r++){var n=this.writeBuffer[r].data;if(n&&(e+="string"==typeof(t=n)?function(t){for(var e=0,r=0,n=0,o=t.length;n<o;n++)(e=t.charCodeAt(n))<128?r+=1:e<2048?r+=2:e<55296||e>=57344?r+=3:(n++,r+=4);return r}(t):Math.ceil(1.33*(t.byteLength||t.size))),r>0&&e>this.maxPayload)return this.writeBuffer.slice(0,r);e+=2}return this.writeBuffer}},{key:"write",value:function(t,e,r){return this.sendPacket("message",t,e,r),this}},{key:"send",value:function(t,e,r){return this.sendPacket("message",t,e,r),this}},{key:"sendPacket",value:function(t,e,r,n){if("function"==typeof e&&(n=e,e=void 0),"function"==typeof r&&(n=r,r=null),"closing"!==this.readyState&&"closed"!==this.readyState){(r=r||{}).compress=!1!==r.compress;var o={type:t,data:e,options:r};this.emitReserved("packetCreate",o),this.writeBuffer.push(o),n&&this.once("flush",n),this.flush()}}},{key:"close",value:function(){var t=this,e=function(){t.onClose("forced close"),t.transport.close()},r=function r(){t.off("upgrade",r),t.off("upgradeError",r),e()},n=function(){t.once("upgrade",r),t.once("upgradeError",r)};return"opening"!==this.readyState&&"open"!==this.readyState||(this.readyState="closing",this.writeBuffer.length?this.once("drain",(function(){t.upgrading?n():e()})):this.upgrading?n():e()),this}},{key:"onError",value:function(t){a.priorWebsocketSuccess=!1,this.emitReserved("error",t),this.onClose("transport error",t)}},{key:"onClose",value:function(t,e){"opening"!==this.readyState&&"open"!==this.readyState&&"closing"!==this.readyState||(this.clearTimeoutFn(this.pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),"function"==typeof removeEventListener&&removeEventListener("offline",this.offlineEventListener,!1),this.readyState="closed",this.id=null,this.emitReserved("close",t,e),this.writeBuffer=[],this.prevBufferLen=0)}},{key:"filterUpgrades",value:function(t){for(var e=[],r=0,n=t.length;r<n;r++)~this.transports.indexOf(t[r])&&e.push(t[r]);return e}}]),a}(C);ct.protocol=4;return function(t,e){return new ct(t,e)}}));
|
|
18997
|
+
!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define('vendor/engine.io',n):(t="undefined"!=typeof globalThis?globalThis:t||self).eio=n()}(this,(function(){"use strict";function t(t,n){for(var i=0;i<n.length;i++){var r=n[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(t,u(r.key),r)}}function n(n,i,r){return i&&t(n.prototype,i),r&&t(n,r),Object.defineProperty(n,"prototype",{writable:!1}),n}function i(){return i=Object.assign?Object.assign.bind():function(t){for(var n=1;n<arguments.length;n++){var i=arguments[n];for(var r in i)({}).hasOwnProperty.call(i,r)&&(t[r]=i[r])}return t},i.apply(null,arguments)}function r(t){return r=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(t){return t.__proto__||Object.getPrototypeOf(t)},r(t)}function e(t,n){t.prototype=Object.create(n.prototype),t.prototype.constructor=t,s(t,n)}function o(){try{var t=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){})))}catch(t){}return(o=function(){return!!t})()}function s(t,n){return s=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,n){return t.__proto__=n,t},s(t,n)}function u(t){var n=function(t,n){if("object"!=typeof t||!t)return t;var i=t[Symbol.toPrimitive];if(void 0!==i){var r=i.call(t,n||"default");if("object"!=typeof r)return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===n?String:Number)(t)}(t,"string");return"symbol"==typeof n?n:n+""}function f(t){return f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},f(t)}function h(t){var n="function"==typeof Map?new Map:void 0;return h=function(t){if(null===t||!function(t){try{return-1!==Function.toString.call(t).indexOf("[native code]")}catch(n){return"function"==typeof t}}(t))return t;if("function"!=typeof t)throw new TypeError("Super expression must either be null or a function");if(void 0!==n){if(n.has(t))return n.get(t);n.set(t,i)}function i(){return function(t,n,i){if(o())return Reflect.construct.apply(null,arguments);var r=[null];r.push.apply(r,n);var e=new(t.bind.apply(t,r));return i&&s(e,i.prototype),e}(t,arguments,r(this).constructor)}return i.prototype=Object.create(t.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}}),s(i,t)},h(t)}var c=Object.create(null);c.open="0",c.close="1",c.ping="2",c.pong="3",c.message="4",c.upgrade="5",c.noop="6";var a=Object.create(null);Object.keys(c).forEach((function(t){a[c[t]]=t}));var p,l={type:"error",data:"parser error"},v="function"==typeof Blob||"undefined"!=typeof Blob&&"[object BlobConstructor]"===Object.prototype.toString.call(Blob),d="function"==typeof ArrayBuffer,y=function(t){return"function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(t):t&&t.buffer instanceof ArrayBuffer},b=function(t,n,i){var r=t.type,e=t.data;return v&&e instanceof Blob?n?i(e):g(e,i):d&&(e instanceof ArrayBuffer||y(e))?n?i(e):g(new Blob([e]),i):i(c[r]+(e||""))},g=function(t,n){var i=new FileReader;return i.onload=function(){var t=i.result.split(",")[1];n("b"+(t||""))},i.readAsDataURL(t)};function w(t){return t instanceof Uint8Array?t:t instanceof ArrayBuffer?new Uint8Array(t):new Uint8Array(t.buffer,t.byteOffset,t.byteLength)}for(var m="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",k="undefined"==typeof Uint8Array?[]:new Uint8Array(256),A=0;A<64;A++)k[m.charCodeAt(A)]=A;var j,B="function"==typeof ArrayBuffer,E=function(t,n){if("string"!=typeof t)return{type:"message",data:U(t,n)};var i=t.charAt(0);return"b"===i?{type:"message",data:O(t.substring(1),n)}:a[i]?t.length>1?{type:a[i],data:t.substring(1)}:{type:a[i]}:l},O=function(t,n){if(B){var i=function(t){var n,i,r,e,o,s=.75*t.length,u=t.length,f=0;"="===t[t.length-1]&&(s--,"="===t[t.length-2]&&s--);var h=new ArrayBuffer(s),c=new Uint8Array(h);for(n=0;n<u;n+=4)i=k[t.charCodeAt(n)],r=k[t.charCodeAt(n+1)],e=k[t.charCodeAt(n+2)],o=k[t.charCodeAt(n+3)],c[f++]=i<<2|r>>4,c[f++]=(15&r)<<4|e>>2,c[f++]=(3&e)<<6|63&o;return h}(t);return U(i,n)}return{base64:!0,data:t}},U=function(t,n){return"blob"===n?t instanceof Blob?t:new Blob([t]):t instanceof ArrayBuffer?t:t.buffer},T=String.fromCharCode(30);function S(){return new TransformStream({transform:function(t,n){!function(t,n){v&&t.data instanceof Blob?t.data.arrayBuffer().then(w).then(n):d&&(t.data instanceof ArrayBuffer||y(t.data))?n(w(t.data)):b(t,!1,(function(t){p||(p=new TextEncoder),n(p.encode(t))}))}(t,(function(i){var r,e=i.length;if(e<126)r=new Uint8Array(1),new DataView(r.buffer).setUint8(0,e);else if(e<65536){r=new Uint8Array(3);var o=new DataView(r.buffer);o.setUint8(0,126),o.setUint16(1,e)}else{r=new Uint8Array(9);var s=new DataView(r.buffer);s.setUint8(0,127),s.setBigUint64(1,BigInt(e))}t.data&&"string"!=typeof t.data&&(r[0]|=128),n.enqueue(r),n.enqueue(i)}))}})}function M(t){return t.reduce((function(t,n){return t+n.length}),0)}function x(t,n){if(t[0].length===n)return t.shift();for(var i=new Uint8Array(n),r=0,e=0;e<n;e++)i[e]=t[0][r++],r===t[0].length&&(t.shift(),r=0);return t.length&&r<t[0].length&&(t[0]=t[0].slice(r)),i}function C(t){if(t)return function(t){for(var n in C.prototype)t[n]=C.prototype[n];return t}(t)}C.prototype.on=C.prototype.addEventListener=function(t,n){return this.t=this.t||{},(this.t["$"+t]=this.t["$"+t]||[]).push(n),this},C.prototype.once=function(t,n){function i(){this.off(t,i),n.apply(this,arguments)}return i.fn=n,this.on(t,i),this},C.prototype.off=C.prototype.removeListener=C.prototype.removeAllListeners=C.prototype.removeEventListener=function(t,n){if(this.t=this.t||{},0==arguments.length)return this.t={},this;var i,r=this.t["$"+t];if(!r)return this;if(1==arguments.length)return delete this.t["$"+t],this;for(var e=0;e<r.length;e++)if((i=r[e])===n||i.fn===n){r.splice(e,1);break}return 0===r.length&&delete this.t["$"+t],this},C.prototype.emit=function(t){this.t=this.t||{};for(var n=new Array(arguments.length-1),i=this.t["$"+t],r=1;r<arguments.length;r++)n[r-1]=arguments[r];if(i){r=0;for(var e=(i=i.slice(0)).length;r<e;++r)i[r].apply(this,n)}return this},C.prototype.emitReserved=C.prototype.emit,C.prototype.listeners=function(t){return this.t=this.t||{},this.t["$"+t]||[]},C.prototype.hasListeners=function(t){return!!this.listeners(t).length};var L="function"==typeof Promise&&"function"==typeof Promise.resolve?function(t){return Promise.resolve().then(t)}:function(t,n){return n(t,0)},R="undefined"!=typeof self?self:"undefined"!=typeof window?window:Function("return this")();function D(t){for(var n=arguments.length,i=new Array(n>1?n-1:0),r=1;r<n;r++)i[r-1]=arguments[r];return i.reduce((function(n,i){return t.hasOwnProperty(i)&&(n[i]=t[i]),n}),{})}var P=R.setTimeout,I=R.clearTimeout;function $(t,n){n.useNativeTimers?(t.setTimeoutFn=P.bind(R),t.clearTimeoutFn=I.bind(R)):(t.setTimeoutFn=R.setTimeout.bind(R),t.clearTimeoutFn=R.clearTimeout.bind(R))}function q(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}var N=function(t){function n(n,i,r){var e;return(e=t.call(this,n)||this).description=i,e.context=r,e.type="TransportError",e}return e(n,t),n}(h(Error)),V=function(t){function n(n){var i;return(i=t.call(this)||this).writable=!1,$(i,n),i.opts=n,i.query=n.query,i.socket=n.socket,i.supportsBinary=!n.forceBase64,i}e(n,t);var i=n.prototype;return i.onError=function(n,i,r){return t.prototype.emitReserved.call(this,"error",new N(n,i,r)),this},i.open=function(){return this.readyState="opening",this.doOpen(),this},i.close=function(){return"opening"!==this.readyState&&"open"!==this.readyState||(this.doClose(),this.onClose()),this},i.send=function(t){"open"===this.readyState&&this.write(t)},i.onOpen=function(){this.readyState="open",this.writable=!0,t.prototype.emitReserved.call(this,"open")},i.onData=function(t){var n=E(t,this.socket.binaryType);this.onPacket(n)},i.onPacket=function(n){t.prototype.emitReserved.call(this,"packet",n)},i.onClose=function(n){this.readyState="closed",t.prototype.emitReserved.call(this,"close",n)},i.pause=function(t){},i.createUri=function(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return t+"://"+this.i()+this.o()+this.opts.path+this.u(n)},i.i=function(){var t=this.opts.hostname;return-1===t.indexOf(":")?t:"["+t+"]"},i.o=function(){return this.opts.port&&(this.opts.secure&&Number(443!==this.opts.port)||!this.opts.secure&&80!==Number(this.opts.port))?":"+this.opts.port:""},i.u=function(t){var n=function(t){var n="";for(var i in t)t.hasOwnProperty(i)&&(n.length&&(n+="&"),n+=encodeURIComponent(i)+"="+encodeURIComponent(t[i]));return n}(t);return n.length?"?"+n:""},n}(C),X=function(t){function i(){var n;return(n=t.apply(this,arguments)||this).h=!1,n}e(i,t);var r=i.prototype;return r.doOpen=function(){this.p()},r.pause=function(t){var n=this;this.readyState="pausing";var i=function(){n.readyState="paused",t()};if(this.h||!this.writable){var r=0;this.h&&(r++,this.once("pollComplete",(function(){--r||i()}))),this.writable||(r++,this.once("drain",(function(){--r||i()})))}else i()},r.p=function(){this.h=!0,this.doPoll(),this.emitReserved("poll")},r.onData=function(t){var n=this;(function(t,n){for(var i=t.split(T),r=[],e=0;e<i.length;e++){var o=E(i[e],n);if(r.push(o),"error"===o.type)break}return r})(t,this.socket.binaryType).forEach((function(t){if("opening"===n.readyState&&"open"===t.type&&n.onOpen(),"close"===t.type)return n.onClose({description:"transport closed by the server"}),!1;n.onPacket(t)})),"closed"!==this.readyState&&(this.h=!1,this.emitReserved("pollComplete"),"open"===this.readyState&&this.p())},r.doClose=function(){var t=this,n=function(){t.write([{type:"close"}])};"open"===this.readyState?n():this.once("open",n)},r.write=function(t){var n=this;this.writable=!1,function(t,n){var i=t.length,r=new Array(i),e=0;t.forEach((function(t,o){b(t,!1,(function(t){r[o]=t,++e===i&&n(r.join(T))}))}))}(t,(function(t){n.doWrite(t,(function(){n.writable=!0,n.emitReserved("drain")}))}))},r.uri=function(){var t=this.opts.secure?"https":"http",n=this.query||{};return!1!==this.opts.timestampRequests&&(n[this.opts.timestampParam]=q()),this.supportsBinary||n.sid||(n.b64=1),this.createUri(t,n)},n(i,[{key:"name",get:function(){return"polling"}}])}(V),H=!1;try{H="undefined"!=typeof XMLHttpRequest&&"withCredentials"in new XMLHttpRequest}catch(t){}var F=H;function z(){}var G=function(t){function n(n){var i;if(i=t.call(this,n)||this,"undefined"!=typeof location){var r="https:"===location.protocol,e=location.port;e||(e=r?"443":"80"),i.xd="undefined"!=typeof location&&n.hostname!==location.hostname||e!==n.port}return i}e(n,t);var i=n.prototype;return i.doWrite=function(t,n){var i=this,r=this.request({method:"POST",data:t});r.on("success",n),r.on("error",(function(t,n){i.onError("xhr post error",t,n)}))},i.doPoll=function(){var t=this,n=this.request();n.on("data",this.onData.bind(this)),n.on("error",(function(n,i){t.onError("xhr poll error",n,i)})),this.pollXhr=n},n}(X),J=function(t){function n(n,i,r){var e;return(e=t.call(this)||this).createRequest=n,$(e,r),e.l=r,e.v=r.method||"GET",e.m=i,e.k=void 0!==r.data?r.data:null,e.A(),e}e(n,t);var i=n.prototype;return i.A=function(){var t,i=this,r=D(this.l,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");r.xdomain=!!this.l.xd;var e=this.j=this.createRequest(r);try{e.open(this.v,this.m,!0);try{if(this.l.extraHeaders)for(var o in e.setDisableHeaderCheck&&e.setDisableHeaderCheck(!0),this.l.extraHeaders)this.l.extraHeaders.hasOwnProperty(o)&&e.setRequestHeader(o,this.l.extraHeaders[o])}catch(t){}if("POST"===this.v)try{e.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch(t){}try{e.setRequestHeader("Accept","*/*")}catch(t){}null===(t=this.l.cookieJar)||void 0===t||t.addCookies(e),"withCredentials"in e&&(e.withCredentials=this.l.withCredentials),this.l.requestTimeout&&(e.timeout=this.l.requestTimeout),e.onreadystatechange=function(){var t;3===e.readyState&&(null===(t=i.l.cookieJar)||void 0===t||t.parseCookies(e.getResponseHeader("set-cookie"))),4===e.readyState&&(200===e.status||1223===e.status?i.B():i.setTimeoutFn((function(){i.O("number"==typeof e.status?e.status:0)}),0))},e.send(this.k)}catch(t){return void this.setTimeoutFn((function(){i.O(t)}),0)}"undefined"!=typeof document&&(this.U=n.requestsCount++,n.requests[this.U]=this)},i.O=function(t){this.emitReserved("error",t,this.j),this.T(!0)},i.T=function(t){if(void 0!==this.j&&null!==this.j){if(this.j.onreadystatechange=z,t)try{this.j.abort()}catch(t){}"undefined"!=typeof document&&delete n.requests[this.U],this.j=null}},i.B=function(){var t=this.j.responseText;null!==t&&(this.emitReserved("data",t),this.emitReserved("success"),this.T())},i.abort=function(){this.T()},n}(C);if(J.requestsCount=0,J.requests={},"undefined"!=typeof document)if("function"==typeof attachEvent)attachEvent("onunload",W);else if("function"==typeof addEventListener){addEventListener("onpagehide"in R?"pagehide":"unload",W,!1)}function W(){for(var t in J.requests)J.requests.hasOwnProperty(t)&&J.requests[t].abort()}var K,Q=(K=Z({xdomain:!1}))&&null!==K.responseType,Y=function(t){function n(n){var i;i=t.call(this,n)||this;var r=n&&n.forceBase64;return i.supportsBinary=Q&&!r,i}return e(n,t),n.prototype.request=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return i(t,{xd:this.xd},this.opts),new J(Z,this.uri(),t)},n}(G);function Z(t){var n=t.xdomain;try{if("undefined"!=typeof XMLHttpRequest&&(!n||F))return new XMLHttpRequest}catch(t){}if(!n)try{return new(R[["Active"].concat("Object").join("X")])("Microsoft.XMLHTTP")}catch(t){}}var _="undefined"!=typeof navigator&&"string"==typeof navigator.product&&"reactnative"===navigator.product.toLowerCase(),tt=function(t){function i(){return t.apply(this,arguments)||this}e(i,t);var r=i.prototype;return r.doOpen=function(){var t=this.uri(),n=this.opts.protocols,i=_?{}:D(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(i.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(t,n,i)}catch(t){return this.emitReserved("error",t)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()},r.addEventListeners=function(){var t=this;this.ws.onopen=function(){t.opts.autoUnref&&t.ws.S.unref(),t.onOpen()},this.ws.onclose=function(n){return t.onClose({description:"websocket connection closed",context:n})},this.ws.onmessage=function(n){return t.onData(n.data)},this.ws.onerror=function(n){return t.onError("websocket error",n)}},r.write=function(t){var n=this;this.writable=!1;for(var i=function(){var i=t[r],e=r===t.length-1;b(i,n.supportsBinary,(function(t){try{n.doWrite(i,t)}catch(t){}e&&L((function(){n.writable=!0,n.emitReserved("drain")}),n.setTimeoutFn)}))},r=0;r<t.length;r++)i()},r.doClose=function(){void 0!==this.ws&&(this.ws.onerror=function(){},this.ws.close(),this.ws=null)},r.uri=function(){var t=this.opts.secure?"wss":"ws",n=this.query||{};return this.opts.timestampRequests&&(n[this.opts.timestampParam]=q()),this.supportsBinary||(n.b64=1),this.createUri(t,n)},n(i,[{key:"name",get:function(){return"websocket"}}])}(V),nt=R.WebSocket||R.MozWebSocket,it=function(t){function n(){return t.apply(this,arguments)||this}e(n,t);var i=n.prototype;return i.createSocket=function(t,n,i){return _?new nt(t,n,i):n?new nt(t,n):new nt(t)},i.doWrite=function(t,n){this.ws.send(n)},n}(tt),rt=function(t){function i(){return t.apply(this,arguments)||this}e(i,t);var r=i.prototype;return r.doOpen=function(){var t=this;try{this.M=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(t){return this.emitReserved("error",t)}this.M.closed.then((function(){t.onClose()})).catch((function(n){t.onError("webtransport error",n)})),this.M.ready.then((function(){t.M.createBidirectionalStream().then((function(n){var i=function(t,n){j||(j=new TextDecoder);var i=[],r=0,e=-1,o=!1;return new TransformStream({transform:function(s,u){for(i.push(s);;){if(0===r){if(M(i)<1)break;var f=x(i,1);o=!(128&~f[0]),e=127&f[0],r=e<126?3:126===e?1:2}else if(1===r){if(M(i)<2)break;var h=x(i,2);e=new DataView(h.buffer,h.byteOffset,h.length).getUint16(0),r=3}else if(2===r){if(M(i)<8)break;var c=x(i,8),a=new DataView(c.buffer,c.byteOffset,c.length),p=a.getUint32(0);if(p>Math.pow(2,21)-1){u.enqueue(l);break}e=p*Math.pow(2,32)+a.getUint32(4),r=3}else{if(M(i)<e)break;var v=x(i,e);u.enqueue(E(o?v:j.decode(v),n)),r=0}if(0===e||e>t){u.enqueue(l);break}}}})}(Number.MAX_SAFE_INTEGER,t.socket.binaryType),r=n.readable.pipeThrough(i).getReader(),e=S();e.readable.pipeTo(n.writable),t.C=e.writable.getWriter();!function n(){r.read().then((function(i){var r=i.done,e=i.value;r||(t.onPacket(e),n())})).catch((function(t){}))}();var o={type:"open"};t.query.sid&&(o.data='{"sid":"'.concat(t.query.sid,'"}')),t.C.write(o).then((function(){return t.onOpen()}))}))}))},r.write=function(t){var n=this;this.writable=!1;for(var i=function(){var i=t[r],e=r===t.length-1;n.C.write(i).then((function(){e&&L((function(){n.writable=!0,n.emitReserved("drain")}),n.setTimeoutFn)}))},r=0;r<t.length;r++)i()},r.doClose=function(){var t;null===(t=this.M)||void 0===t||t.close()},n(i,[{key:"name",get:function(){return"webtransport"}}])}(V),et={websocket:it,webtransport:rt,polling:Y},ot=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,st=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function ut(t){if(t.length>8e3)throw"URI too long";var n=t,i=t.indexOf("["),r=t.indexOf("]");-1!=i&&-1!=r&&(t=t.substring(0,i)+t.substring(i,r).replace(/:/g,";")+t.substring(r,t.length));for(var e,o,s=ot.exec(t||""),u={},f=14;f--;)u[st[f]]=s[f]||"";return-1!=i&&-1!=r&&(u.source=n,u.host=u.host.substring(1,u.host.length-1).replace(/;/g,":"),u.authority=u.authority.replace("[","").replace("]","").replace(/;/g,":"),u.ipv6uri=!0),u.pathNames=function(t,n){var i=/\/{2,9}/g,r=n.replace(i,"/").split("/");"/"!=n.slice(0,1)&&0!==n.length||r.splice(0,1);"/"==n.slice(-1)&&r.splice(r.length-1,1);return r}(0,u.path),u.queryKey=(e=u.query,o={},e.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,(function(t,n,i){n&&(o[n]=i)})),o),u}var ft="function"==typeof addEventListener&&"function"==typeof removeEventListener,ht=[];ft&&addEventListener("offline",(function(){ht.forEach((function(t){return t()}))}),!1);var ct=function(t){function n(n,r){var e;if((e=t.call(this)||this).binaryType="arraybuffer",e.writeBuffer=[],e.L=0,e.R=-1,e.D=-1,e.P=-1,e.I=1/0,n&&"object"===f(n)&&(r=n,n=null),n){var o=ut(n);r.hostname=o.host,r.secure="https"===o.protocol||"wss"===o.protocol,r.port=o.port,o.query&&(r.query=o.query)}else r.host&&(r.hostname=ut(r.host).host);return $(e,r),e.secure=null!=r.secure?r.secure:"undefined"!=typeof location&&"https:"===location.protocol,r.hostname&&!r.port&&(r.port=e.secure?"443":"80"),e.hostname=r.hostname||("undefined"!=typeof location?location.hostname:"localhost"),e.port=r.port||("undefined"!=typeof location&&location.port?location.port:e.secure?"443":"80"),e.transports=[],e.$={},r.transports.forEach((function(t){var n=t.prototype.name;e.transports.push(n),e.$[n]=t})),e.opts=i({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},r),e.opts.path=e.opts.path.replace(/\/$/,"")+(e.opts.addTrailingSlash?"/":""),"string"==typeof e.opts.query&&(e.opts.query=function(t){for(var n={},i=t.split("&"),r=0,e=i.length;r<e;r++){var o=i[r].split("=");n[decodeURIComponent(o[0])]=decodeURIComponent(o[1])}return n}(e.opts.query)),ft&&(e.opts.closeOnBeforeunload&&(e.q=function(){e.transport&&(e.transport.removeAllListeners(),e.transport.close())},addEventListener("beforeunload",e.q,!1)),"localhost"!==e.hostname&&(e.N=function(){e.V("transport close",{description:"network connection lost"})},ht.push(e.N))),e.opts.withCredentials&&(e.X=void 0),e.H(),e}e(n,t);var r=n.prototype;return r.createTransport=function(t){var n=i({},this.opts.query);n.EIO=4,n.transport=t,this.id&&(n.sid=this.id);var r=i({},this.opts,{query:n,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[t]);return new this.$[t](r)},r.H=function(){var t=this;if(0!==this.transports.length){var i=this.opts.rememberUpgrade&&n.priorWebsocketSuccess&&-1!==this.transports.indexOf("websocket")?"websocket":this.transports[0];this.readyState="opening";var r=this.createTransport(i);r.open(),this.setTransport(r)}else this.setTimeoutFn((function(){t.emitReserved("error","No transports available")}),0)},r.setTransport=function(t){var n=this;this.transport&&this.transport.removeAllListeners(),this.transport=t,t.on("drain",this.F.bind(this)).on("packet",this.G.bind(this)).on("error",this.O.bind(this)).on("close",(function(t){return n.V("transport close",t)}))},r.onOpen=function(){this.readyState="open",n.priorWebsocketSuccess="websocket"===this.transport.name,this.emitReserved("open"),this.flush()},r.G=function(t){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState)switch(this.emitReserved("packet",t),this.emitReserved("heartbeat"),t.type){case"open":this.onHandshake(JSON.parse(t.data));break;case"ping":this.J("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this.W();break;case"error":var n=new Error("server error");n.code=t.data,this.O(n);break;case"message":this.emitReserved("data",t.data),this.emitReserved("message",t.data)}},r.onHandshake=function(t){this.emitReserved("handshake",t),this.id=t.sid,this.transport.query.sid=t.sid,this.R=t.pingInterval,this.D=t.pingTimeout,this.P=t.maxPayload,this.onOpen(),"closed"!==this.readyState&&this.W()},r.W=function(){var t=this;this.clearTimeoutFn(this.K);var n=this.R+this.D;this.I=Date.now()+n,this.K=this.setTimeoutFn((function(){t.V("ping timeout")}),n),this.opts.autoUnref&&this.K.unref()},r.F=function(){this.writeBuffer.splice(0,this.L),this.L=0,0===this.writeBuffer.length?this.emitReserved("drain"):this.flush()},r.flush=function(){if("closed"!==this.readyState&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){var t=this.Y();this.transport.send(t),this.L=t.length,this.emitReserved("flush")}},r.Y=function(){if(!(this.P&&"polling"===this.transport.name&&this.writeBuffer.length>1))return this.writeBuffer;for(var t,n=1,i=0;i<this.writeBuffer.length;i++){var r=this.writeBuffer[i].data;if(r&&(n+="string"==typeof(t=r)?function(t){for(var n=0,i=0,r=0,e=t.length;r<e;r++)(n=t.charCodeAt(r))<128?i+=1:n<2048?i+=2:n<55296||n>=57344?i+=3:(r++,i+=4);return i}(t):Math.ceil(1.33*(t.byteLength||t.size))),i>0&&n>this.P)return this.writeBuffer.slice(0,i);n+=2}return this.writeBuffer},r.Z=function(){var t=this;if(!this.I)return!0;var n=Date.now()>this.I;return n&&(this.I=0,L((function(){t.V("ping timeout")}),this.setTimeoutFn)),n},r.write=function(t,n,i){return this.J("message",t,n,i),this},r.send=function(t,n,i){return this.J("message",t,n,i),this},r.J=function(t,n,i,r){if("function"==typeof n&&(r=n,n=void 0),"function"==typeof i&&(r=i,i=null),"closing"!==this.readyState&&"closed"!==this.readyState){(i=i||{}).compress=!1!==i.compress;var e={type:t,data:n,options:i};this.emitReserved("packetCreate",e),this.writeBuffer.push(e),r&&this.once("flush",r),this.flush()}},r.close=function(){var t=this,n=function(){t.V("forced close"),t.transport.close()},i=function i(){t.off("upgrade",i),t.off("upgradeError",i),n()},r=function(){t.once("upgrade",i),t.once("upgradeError",i)};return"opening"!==this.readyState&&"open"!==this.readyState||(this.readyState="closing",this.writeBuffer.length?this.once("drain",(function(){t.upgrading?r():n()})):this.upgrading?r():n()),this},r.O=function(t){if(n.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&"opening"===this.readyState)return this.transports.shift(),this.H();this.emitReserved("error",t),this.V("transport error",t)},r.V=function(t,n){if("opening"===this.readyState||"open"===this.readyState||"closing"===this.readyState){if(this.clearTimeoutFn(this.K),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),ft&&(this.q&&removeEventListener("beforeunload",this.q,!1),this.N)){var i=ht.indexOf(this.N);-1!==i&&ht.splice(i,1)}this.readyState="closed",this.id=null,this.emitReserved("close",t,n),this.writeBuffer=[],this.L=0}},n}(C);ct.protocol=4;var at=function(t){function n(){var n;return(n=t.apply(this,arguments)||this)._=[],n}e(n,t);var i=n.prototype;return i.onOpen=function(){if(t.prototype.onOpen.call(this),"open"===this.readyState&&this.opts.upgrade)for(var n=0;n<this._.length;n++)this.tt(this._[n])},i.tt=function(t){var n=this,i=this.createTransport(t),r=!1;ct.priorWebsocketSuccess=!1;var e=function(){r||(i.send([{type:"ping",data:"probe"}]),i.once("packet",(function(t){if(!r)if("pong"===t.type&&"probe"===t.data){if(n.upgrading=!0,n.emitReserved("upgrading",i),!i)return;ct.priorWebsocketSuccess="websocket"===i.name,n.transport.pause((function(){r||"closed"!==n.readyState&&(c(),n.setTransport(i),i.send([{type:"upgrade"}]),n.emitReserved("upgrade",i),i=null,n.upgrading=!1,n.flush())}))}else{var e=new Error("probe error");e.transport=i.name,n.emitReserved("upgradeError",e)}})))};function o(){r||(r=!0,c(),i.close(),i=null)}var s=function(t){var r=new Error("probe error: "+t);r.transport=i.name,o(),n.emitReserved("upgradeError",r)};function u(){s("transport closed")}function f(){s("socket closed")}function h(t){i&&t.name!==i.name&&o()}var c=function(){i.removeListener("open",e),i.removeListener("error",s),i.removeListener("close",u),n.off("close",f),n.off("upgrading",h)};i.once("open",e),i.once("error",s),i.once("close",u),this.once("close",f),this.once("upgrading",h),-1!==this._.indexOf("webtransport")&&"webtransport"!==t?this.setTimeoutFn((function(){r||i.open()}),200):i.open()},i.onHandshake=function(n){this._=this.nt(n.upgrades),t.prototype.onHandshake.call(this,n)},i.nt=function(t){for(var n=[],i=0;i<t.length;i++)~this.transports.indexOf(t[i])&&n.push(t[i]);return n},n}(ct),pt=function(t){function n(n){var i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r="object"===f(n)?n:i;return(!r.transports||r.transports&&"string"==typeof r.transports[0])&&(r.transports=(r.transports||["polling","websocket","webtransport"]).map((function(t){return et[t]})).filter((function(t){return!!t}))),t.call(this,n,r)||this}return e(n,t),n}(at);return function(t,n){return new pt(t,n)}}));
|
|
18651
18998
|
//# sourceMappingURL=engine.io.min.js.map
|
|
18652
18999
|
;
|
|
18653
19000
|
function BindingHelper(handlerContext) {
|
|
@@ -18743,12 +19090,13 @@ function BindingHelper(handlerContext) {
|
|
|
18743
19090
|
define( 'helpers/binding',[],function() { return BindingHelper });
|
|
18744
19091
|
/*
|
|
18745
19092
|
* This file is part of the gina package.
|
|
18746
|
-
* Copyright (c) 2009-
|
|
19093
|
+
* Copyright (c) 2009-2025 Rhinostone <contact@gina.io>
|
|
18747
19094
|
*
|
|
18748
19095
|
* For the full copyright and license information, please view the LICENSE
|
|
18749
19096
|
* file that was distributed with this source code.
|
|
18750
19097
|
*/
|
|
18751
19098
|
|
|
19099
|
+
|
|
18752
19100
|
// nodejs dependencies
|
|
18753
19101
|
if ( typeof(module) !== 'undefined' && module.exports) {
|
|
18754
19102
|
var fs = require('fs');
|
|
@@ -18786,8 +19134,10 @@ function Domain(options, cb) {
|
|
|
18786
19134
|
var isGFFCtx = ( ( typeof(module) !== 'undefined' ) && module.exports ) ? false : true;
|
|
18787
19135
|
// Detect if user is on IE browser
|
|
18788
19136
|
var isIE = false;
|
|
19137
|
+
var defaultUrl = "/_gina/assets/public_suffix_list.dat";
|
|
18789
19138
|
if (isGFFCtx) {
|
|
18790
19139
|
isIE = !!window.MSInputMethodContext && !!document.documentMode;
|
|
19140
|
+
defaultUrl = gina.config.webroot + defaultUrl.substring(1);
|
|
18791
19141
|
}
|
|
18792
19142
|
|
|
18793
19143
|
if ( typeof(arguments[0]) == 'function' ) {
|
|
@@ -18799,20 +19149,31 @@ function Domain(options, cb) {
|
|
|
18799
19149
|
// if isGFFCtx, should be place in the public folder to be served by your own host
|
|
18800
19150
|
// e.g.: "./public_suffix_list.dat" located under "/my-www-folder/"
|
|
18801
19151
|
filename : "../dist/public_suffix_list.dat",
|
|
18802
|
-
url :
|
|
19152
|
+
url : defaultUrl,
|
|
19153
|
+
// url : "https://publicsuffix.org/list/public_suffix_list.dat",
|
|
18803
19154
|
alternativeUrl : "https://raw.githubusercontent.com/publicsuffix/list/master/public_suffix_list.dat",
|
|
18804
19155
|
// only available from backend calls
|
|
18805
19156
|
isCachingRequired : false,
|
|
18806
19157
|
isUpdating : false
|
|
18807
19158
|
}
|
|
18808
19159
|
|
|
19160
|
+
if (
|
|
19161
|
+
!isGFFCtx
|
|
19162
|
+
&& typeof(options) != 'undefined'
|
|
19163
|
+
&& typeof(options.webroot) != 'undefined'
|
|
19164
|
+
) {
|
|
19165
|
+
defaultOptions.url = options.webroot + defaultUrl.substring(1);
|
|
19166
|
+
}
|
|
19167
|
+
|
|
19168
|
+
// Get the commit version
|
|
19169
|
+
// cat ./framework/v0.1.6-alpha.83/core/asset/data/public_suffix_list.dat|grep 'COMMIT:'|sed 's/^\/\/ COMMIT\: //'
|
|
19170
|
+
|
|
18809
19171
|
var self = {
|
|
18810
19172
|
options : null,
|
|
18811
19173
|
rawPSL : null,
|
|
18812
19174
|
PSL : [],
|
|
18813
19175
|
};
|
|
18814
19176
|
|
|
18815
|
-
|
|
18816
19177
|
var init = function(proto, options, cb) {
|
|
18817
19178
|
if ( typeof(options) == 'undefined' ) {
|
|
18818
19179
|
options = defaultOptions
|
|
@@ -18843,9 +19204,8 @@ function Domain(options, cb) {
|
|
|
18843
19204
|
return
|
|
18844
19205
|
}
|
|
18845
19206
|
|
|
18846
|
-
console.debug('[DOMAIN] PSL Loaded');
|
|
19207
|
+
console.debug('[DOMAIN][CB] PSL Loaded');
|
|
18847
19208
|
// return proto
|
|
18848
|
-
|
|
18849
19209
|
cb(err, proto)
|
|
18850
19210
|
});
|
|
18851
19211
|
}
|
|
@@ -19045,7 +19405,7 @@ function Domain(options, cb) {
|
|
|
19045
19405
|
return host
|
|
19046
19406
|
}
|
|
19047
19407
|
|
|
19048
|
-
console.debug('[DOMAIN][getFQDN]
|
|
19408
|
+
console.debug('[DOMAIN][getFQDN] FQDN: ' + host);
|
|
19049
19409
|
var ipObj = null
|
|
19050
19410
|
, err = null
|
|
19051
19411
|
;
|
|
@@ -19094,6 +19454,7 @@ function Domain(options, cb) {
|
|
|
19094
19454
|
if ( typeof(jsonFormat) == 'undefined' ) {
|
|
19095
19455
|
jsonFormat = false
|
|
19096
19456
|
}
|
|
19457
|
+
urlOrHostname = urlOrHostname.trim();
|
|
19097
19458
|
var isSLD = false
|
|
19098
19459
|
, isRegisteredTldOrSld = false
|
|
19099
19460
|
, rootDomain = urlOrHostname.replace(/^(.*)\:\/\/|\/(.*)/g, '')
|
|
@@ -19739,13 +20100,15 @@ define('gina/link', [ 'require', 'jquery', 'vendor/uuid', 'lib/domain', 'lib/mer
|
|
|
19739
20100
|
instance.getLinkByUrl = getLinkByUrl;
|
|
19740
20101
|
}
|
|
19741
20102
|
|
|
19742
|
-
|
|
19743
|
-
|
|
19744
|
-
|
|
19745
|
-
|
|
20103
|
+
if (!domainInstance) {
|
|
20104
|
+
new Domain( function onReady(err, _domainInstance) {
|
|
20105
|
+
if (err) {
|
|
20106
|
+
throw err
|
|
20107
|
+
}
|
|
19746
20108
|
|
|
19747
|
-
|
|
19748
|
-
|
|
20109
|
+
domainInstance = _domainInstance;
|
|
20110
|
+
});
|
|
20111
|
+
}
|
|
19749
20112
|
|
|
19750
20113
|
return init(options)
|
|
19751
20114
|
}
|
|
@@ -21528,13 +21891,15 @@ define('gina/popin', [ 'require', 'vendor/uuid', 'jquery', 'lib/domain', 'lib/me
|
|
|
21528
21891
|
popinGetContainer()
|
|
21529
21892
|
}
|
|
21530
21893
|
|
|
21531
|
-
|
|
21532
|
-
|
|
21533
|
-
|
|
21534
|
-
|
|
21894
|
+
if (!domainInstance) {
|
|
21895
|
+
new Domain( function onReady(err, _domainInstance) {
|
|
21896
|
+
if (err) {
|
|
21897
|
+
throw err
|
|
21898
|
+
}
|
|
21535
21899
|
|
|
21536
|
-
|
|
21537
|
-
|
|
21900
|
+
domainInstance = _domainInstance;
|
|
21901
|
+
});
|
|
21902
|
+
}
|
|
21538
21903
|
|
|
21539
21904
|
return init(options)
|
|
21540
21905
|
}
|
|
@@ -21654,7 +22019,7 @@ define("utils/polyfill", function(){});
|
|
|
21654
22019
|
|
|
21655
22020
|
/**
|
|
21656
22021
|
* This file is part of the gina package.
|
|
21657
|
-
* Copyright (c) 2009-
|
|
22022
|
+
* Copyright (c) 2009-2025 Rhinostone <contact@gina.io>
|
|
21658
22023
|
*
|
|
21659
22024
|
* For the full copyright and license information, please view the LICENSE
|
|
21660
22025
|
* file that was distributed with this source code.
|