taon 18.0.33 → 19.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/shared/shared_folder_info.txt +1 -1
- package/browser/fesm2022/taon.mjs +67 -84
- package/browser/fesm2022/taon.mjs.map +1 -1
- package/browser/lib/base-classes/base-context.d.ts +6 -6
- package/browser/lib/base-classes/base.d.ts +6 -6
- package/browser/lib/index.d.ts +6 -32
- package/browser/lib/ui/taon-progress-bar/taon-progress-bar.component.d.ts +1 -3
- package/browser/lib/ui/taon-progress-bar/taon-progress-bar.module.d.ts +1 -2
- package/client/fesm2022/taon.mjs +67 -84
- package/client/fesm2022/taon.mjs.map +1 -1
- package/client/lib/base-classes/base-context.d.ts +6 -6
- package/client/lib/base-classes/base.d.ts +6 -6
- package/client/lib/index.d.ts +6 -32
- package/client/lib/ui/taon-progress-bar/taon-progress-bar.component.d.ts +1 -3
- package/client/lib/ui/taon-progress-bar/taon-progress-bar.module.d.ts +1 -2
- package/lib/base-classes/base-context.d.ts +6 -6
- package/lib/base-classes/base-subscriber.d.ts +4 -0
- package/lib/base-classes/base-subscriber.js +25 -0
- package/lib/base-classes/base-subscriber.js.map +1 -0
- package/lib/base-classes/base.d.ts +6 -6
- package/lib/formly/formly-group-wrapper-component.js +1 -0
- package/lib/formly/formly-group-wrapper-component.js.map +1 -1
- package/lib/formly/formly-repeat-component.js +1 -0
- package/lib/formly/formly-repeat-component.js.map +1 -1
- package/lib/helpers/class-helpers.js +2 -2
- package/lib/helpers/class-helpers.js.map +1 -1
- package/lib/index.d.ts +6 -32
- package/lib/realtime/realtime-strategy/realtime-abstract-mock.d.ts +10 -0
- package/lib/realtime/realtime-strategy/realtime-abstract-mock.js +214 -0
- package/lib/realtime/realtime-strategy/realtime-abstract-mock.js.map +1 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.d.ts +0 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.js +5 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/index.js.map +1 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.d.ts +22 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.js +139 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-namespace.js.map +1 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.d.ts +16 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.js +68 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-main-wrapper.js.map +1 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.d.ts +10 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.js +56 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-namespace.js.map +1 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.d.ts +10 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.js +50 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc-renderer-wrapper.js.map +1 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.d.ts +13 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.js +3 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-ipc-models/realtime-strategy-ipc.models.js.map +1 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.d.ts +2 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.js +6 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/index.js.map +1 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.d.ts +16 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.js +54 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-client.js.map +1 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.d.ts +17 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.js +52 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-namespaces.js.map +1 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.d.ts +11 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.js +39 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-server.js.map +1 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.d.ts +13 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.js +46 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock-socket.js.map +1 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.d.ts +11 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.js +3 -0
- package/lib/realtime/realtime-strategy/realtime-strategy-mock-models/realtime-strategy-mock.models.js.map +1 -0
- package/lib/ui/directives/firedev-inject-html.directive.d.ts +6 -0
- package/lib/ui/directives/firedev-long-press.directive.d.ts +22 -0
- package/lib/ui/directives/index.js +2 -2
- package/lib/ui/index.js +2 -2
- package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.d.ts +2 -0
- package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.js +5 -0
- package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/index.js.map +1 -0
- package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/taon-admin-edit-mode.component.d.ts +29 -0
- package/lib/ui/taon-admin-mode-configuration/components/taon-admin-edit-mode/taon-admin-edit-mode.module.d.ts +2 -0
- package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.d.ts +1 -0
- package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.js +5 -0
- package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/index.js.map +1 -0
- package/lib/ui/taon-admin-mode-configuration/components/taon-db-admin/taon-db-admin.component.d.ts +8 -0
- package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.d.ts +2 -0
- package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.js +5 -0
- package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/index.js.map +1 -0
- package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/taon-file-general-opt.component.d.ts +13 -0
- package/lib/ui/taon-admin-mode-configuration/components/taon-file-general-opt/taon-file-general-opt.module.d.ts +2 -0
- package/lib/ui/taon-admin-mode-configuration/index.js +2 -2
- package/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.d.ts +5 -0
- package/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.js +3 -0
- package/lib/ui/taon-admin-mode-configuration/models/taon-admin-mode-tabs.js.map +1 -0
- package/lib/ui/taon-admin-mode-configuration/taon-admin-control.service.d.ts +14 -0
- package/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.module.d.ts +2 -0
- package/lib/ui/taon-github-fork-me-corner/index.js +2 -2
- package/lib/ui/taon-github-fork-me-ribbon/index.js +2 -2
- package/lib/ui/taon-notifications/taon-notifications.models.js +2 -2
- package/lib/ui/taon-progress-bar/index.js +2 -2
- package/lib/ui/taon-progress-bar/taon-progress-bar.component.d.ts +1 -3
- package/lib/ui/taon-session-passcode/index.js +2 -2
- package/lib/ui/taon-table/index.js +2 -2
- package/lib/ui/toan-full-material.module.d.ts +2 -0
- package/old-app .js +1 -0
- package/old-app .js.map +1 -1
- package/package.json +3 -3
- package/taon.jsonc +0 -5
- package/tmp-environment.json +24 -3
- package/websql/fesm2022/taon.mjs +67 -84
- package/websql/fesm2022/taon.mjs.map +1 -1
- package/websql/lib/base-classes/base-context.d.ts +6 -6
- package/websql/lib/base-classes/base.d.ts +6 -6
- package/websql/lib/index.d.ts +6 -32
- package/websql/lib/ui/taon-progress-bar/taon-progress-bar.component.d.ts +1 -3
- package/websql/lib/ui/taon-progress-bar/taon-progress-bar.module.d.ts +1 -2
- package/browser/esm2022/lib/base-classes/base-abstract-entity.mjs +0 -18
- package/browser/esm2022/lib/base-classes/base-class.mjs +0 -17
- package/browser/esm2022/lib/base-classes/base-context.mjs +0 -14
- package/browser/esm2022/lib/base-classes/base-controller.mjs +0 -19
- package/browser/esm2022/lib/base-classes/base-crud-controller.mjs +0 -279
- package/browser/esm2022/lib/base-classes/base-entity.mjs +0 -18
- package/browser/esm2022/lib/base-classes/base-injector.mjs +0 -167
- package/browser/esm2022/lib/base-classes/base-migration.mjs +0 -23
- package/browser/esm2022/lib/base-classes/base-provider.mjs +0 -6
- package/browser/esm2022/lib/base-classes/base-repository.mjs +0 -514
- package/browser/esm2022/lib/base-classes/base-subscriber-for-entity.mjs +0 -156
- package/browser/esm2022/lib/base-classes/base.mjs +0 -26
- package/browser/esm2022/lib/constants.mjs +0 -4
- package/browser/esm2022/lib/context-db-migrations.mjs +0 -425
- package/browser/esm2022/lib/create-context.mjs +0 -127
- package/browser/esm2022/lib/decorators/classes/controller-decorator.mjs +0 -18
- package/browser/esm2022/lib/decorators/classes/entity-decorator.mjs +0 -30
- package/browser/esm2022/lib/decorators/classes/migration-decorator.mjs +0 -18
- package/browser/esm2022/lib/decorators/classes/provider-decorator.mjs +0 -18
- package/browser/esm2022/lib/decorators/classes/repository-decorator.mjs +0 -18
- package/browser/esm2022/lib/decorators/classes/subscriber-decorator.mjs +0 -18
- package/browser/esm2022/lib/decorators/http/http-decorators.mjs +0 -24
- package/browser/esm2022/lib/decorators/http/http-methods-decorators.mjs +0 -78
- package/browser/esm2022/lib/decorators/http/http-params-decorators.mjs +0 -47
- package/browser/esm2022/lib/dependency-injection/di-container.mjs +0 -32
- package/browser/esm2022/lib/endpoint-context.mjs +0 -1705
- package/browser/esm2022/lib/entity-process.mjs +0 -198
- package/browser/esm2022/lib/env.mjs +0 -6
- package/browser/esm2022/lib/get-response-value.mjs +0 -27
- package/browser/esm2022/lib/helpers/class-helpers.mjs +0 -183
- package/browser/esm2022/lib/helpers/taon-helpers.mjs +0 -120
- package/browser/esm2022/lib/index.mjs +0 -70
- package/browser/esm2022/lib/inject.mjs +0 -36
- package/browser/esm2022/lib/models.mjs +0 -106
- package/browser/esm2022/lib/orm.mjs +0 -6
- package/browser/esm2022/lib/realtime/realtime-client.mjs +0 -141
- package/browser/esm2022/lib/realtime/realtime-core.mjs +0 -62
- package/browser/esm2022/lib/realtime/realtime-server.mjs +0 -292
- package/browser/esm2022/lib/realtime/realtime-strategy/index.mjs +0 -7
- package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc.mjs +0 -218
- package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock.mjs +0 -224
- package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy-socket-io.mjs +0 -29
- package/browser/esm2022/lib/realtime/realtime-strategy/realtime-strategy.mjs +0 -14
- package/browser/esm2022/lib/realtime/realtime-subs-manager.mjs +0 -81
- package/browser/esm2022/lib/realtime/realtime.models.mjs +0 -4
- package/browser/esm2022/lib/storage.mjs +0 -5
- package/browser/esm2022/lib/symbols.mjs +0 -97
- package/browser/esm2022/lib/ui/directives/index.mjs +0 -6
- package/browser/esm2022/lib/ui/directives/safe.pipe.mjs +0 -43
- package/browser/esm2022/lib/ui/directives/taon-inject-html.directive.mjs +0 -24
- package/browser/esm2022/lib/ui/directives/taon-long-press.directive.mjs +0 -120
- package/browser/esm2022/lib/ui/index.mjs +0 -12
- package/browser/esm2022/lib/ui/taon-admin-mode-configuration/index.mjs +0 -4
- package/browser/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.mjs +0 -194
- package/browser/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin.service.mjs +0 -55
- package/browser/esm2022/lib/ui/taon-full-material.module.mjs +0 -179
- package/browser/esm2022/lib/ui/taon-github-fork-me-corner/index.mjs +0 -5
- package/browser/esm2022/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.component.mjs +0 -18
- package/browser/esm2022/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.module.mjs +0 -21
- package/browser/esm2022/lib/ui/taon-notifications/index.mjs +0 -7
- package/browser/esm2022/lib/ui/taon-notifications/taon-notifications.component.mjs +0 -25
- package/browser/esm2022/lib/ui/taon-notifications/taon-notifications.models.mjs +0 -5
- package/browser/esm2022/lib/ui/taon-notifications/taon-notifications.module.mjs +0 -21
- package/browser/esm2022/lib/ui/taon-notifications/taon-notifications.service.mjs +0 -48
- package/browser/esm2022/lib/ui/taon-progress-bar/index.mjs +0 -5
- package/browser/esm2022/lib/ui/taon-progress-bar/taon-progress-bar.component.mjs +0 -98
- package/browser/esm2022/lib/ui/taon-progress-bar/taon-progress-bar.module.mjs +0 -22
- package/browser/esm2022/lib/ui/taon-session-passcode/index.mjs +0 -4
- package/browser/esm2022/lib/ui/taon-session-passcode/taon-session-passcode.component.mjs +0 -120
- package/browser/esm2022/lib/ui/taon-table/index.mjs +0 -5
- package/browser/esm2022/lib/ui/taon-table/taon-table.component.mjs +0 -160
- package/browser/esm2022/lib/ui/taon-table/taon-table.module.mjs +0 -57
- package/browser/esm2022/lib/validators.mjs +0 -76
- package/browser/esm2022/public-api.mjs +0 -2
- package/browser/esm2022/taon.mjs +0 -5
- package/client/esm2022/lib/base-classes/base-abstract-entity.mjs +0 -18
- package/client/esm2022/lib/base-classes/base-class.mjs +0 -17
- package/client/esm2022/lib/base-classes/base-context.mjs +0 -14
- package/client/esm2022/lib/base-classes/base-controller.mjs +0 -19
- package/client/esm2022/lib/base-classes/base-crud-controller.mjs +0 -279
- package/client/esm2022/lib/base-classes/base-entity.mjs +0 -18
- package/client/esm2022/lib/base-classes/base-injector.mjs +0 -167
- package/client/esm2022/lib/base-classes/base-migration.mjs +0 -23
- package/client/esm2022/lib/base-classes/base-provider.mjs +0 -6
- package/client/esm2022/lib/base-classes/base-repository.mjs +0 -514
- package/client/esm2022/lib/base-classes/base-subscriber-for-entity.mjs +0 -156
- package/client/esm2022/lib/base-classes/base.mjs +0 -26
- package/client/esm2022/lib/constants.mjs +0 -4
- package/client/esm2022/lib/context-db-migrations.mjs +0 -425
- package/client/esm2022/lib/create-context.mjs +0 -127
- package/client/esm2022/lib/decorators/classes/controller-decorator.mjs +0 -18
- package/client/esm2022/lib/decorators/classes/entity-decorator.mjs +0 -30
- package/client/esm2022/lib/decorators/classes/migration-decorator.mjs +0 -18
- package/client/esm2022/lib/decorators/classes/provider-decorator.mjs +0 -18
- package/client/esm2022/lib/decorators/classes/repository-decorator.mjs +0 -18
- package/client/esm2022/lib/decorators/classes/subscriber-decorator.mjs +0 -18
- package/client/esm2022/lib/decorators/http/http-decorators.mjs +0 -24
- package/client/esm2022/lib/decorators/http/http-methods-decorators.mjs +0 -78
- package/client/esm2022/lib/decorators/http/http-params-decorators.mjs +0 -47
- package/client/esm2022/lib/dependency-injection/di-container.mjs +0 -32
- package/client/esm2022/lib/endpoint-context.mjs +0 -1705
- package/client/esm2022/lib/entity-process.mjs +0 -198
- package/client/esm2022/lib/env.mjs +0 -6
- package/client/esm2022/lib/get-response-value.mjs +0 -27
- package/client/esm2022/lib/helpers/class-helpers.mjs +0 -183
- package/client/esm2022/lib/helpers/taon-helpers.mjs +0 -120
- package/client/esm2022/lib/index.mjs +0 -70
- package/client/esm2022/lib/inject.mjs +0 -36
- package/client/esm2022/lib/models.mjs +0 -106
- package/client/esm2022/lib/orm.mjs +0 -6
- package/client/esm2022/lib/realtime/realtime-client.mjs +0 -141
- package/client/esm2022/lib/realtime/realtime-core.mjs +0 -62
- package/client/esm2022/lib/realtime/realtime-server.mjs +0 -292
- package/client/esm2022/lib/realtime/realtime-strategy/index.mjs +0 -7
- package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc.mjs +0 -218
- package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock.mjs +0 -224
- package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy-socket-io.mjs +0 -29
- package/client/esm2022/lib/realtime/realtime-strategy/realtime-strategy.mjs +0 -14
- package/client/esm2022/lib/realtime/realtime-subs-manager.mjs +0 -81
- package/client/esm2022/lib/realtime/realtime.models.mjs +0 -4
- package/client/esm2022/lib/storage.mjs +0 -5
- package/client/esm2022/lib/symbols.mjs +0 -97
- package/client/esm2022/lib/ui/directives/index.mjs +0 -6
- package/client/esm2022/lib/ui/directives/safe.pipe.mjs +0 -43
- package/client/esm2022/lib/ui/directives/taon-inject-html.directive.mjs +0 -24
- package/client/esm2022/lib/ui/directives/taon-long-press.directive.mjs +0 -120
- package/client/esm2022/lib/ui/index.mjs +0 -12
- package/client/esm2022/lib/ui/taon-admin-mode-configuration/index.mjs +0 -4
- package/client/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.mjs +0 -194
- package/client/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin.service.mjs +0 -55
- package/client/esm2022/lib/ui/taon-full-material.module.mjs +0 -179
- package/client/esm2022/lib/ui/taon-github-fork-me-corner/index.mjs +0 -5
- package/client/esm2022/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.component.mjs +0 -18
- package/client/esm2022/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.module.mjs +0 -21
- package/client/esm2022/lib/ui/taon-notifications/index.mjs +0 -7
- package/client/esm2022/lib/ui/taon-notifications/taon-notifications.component.mjs +0 -25
- package/client/esm2022/lib/ui/taon-notifications/taon-notifications.models.mjs +0 -5
- package/client/esm2022/lib/ui/taon-notifications/taon-notifications.module.mjs +0 -21
- package/client/esm2022/lib/ui/taon-notifications/taon-notifications.service.mjs +0 -48
- package/client/esm2022/lib/ui/taon-progress-bar/index.mjs +0 -5
- package/client/esm2022/lib/ui/taon-progress-bar/taon-progress-bar.component.mjs +0 -98
- package/client/esm2022/lib/ui/taon-progress-bar/taon-progress-bar.module.mjs +0 -22
- package/client/esm2022/lib/ui/taon-session-passcode/index.mjs +0 -4
- package/client/esm2022/lib/ui/taon-session-passcode/taon-session-passcode.component.mjs +0 -120
- package/client/esm2022/lib/ui/taon-table/index.mjs +0 -5
- package/client/esm2022/lib/ui/taon-table/taon-table.component.mjs +0 -160
- package/client/esm2022/lib/ui/taon-table/taon-table.module.mjs +0 -57
- package/client/esm2022/lib/validators.mjs +0 -76
- package/client/esm2022/public-api.mjs +0 -2
- package/client/esm2022/taon.mjs +0 -5
- package/websql/esm2022/lib/base-classes/base-abstract-entity.mjs +0 -25
- package/websql/esm2022/lib/base-classes/base-class.mjs +0 -17
- package/websql/esm2022/lib/base-classes/base-context.mjs +0 -14
- package/websql/esm2022/lib/base-classes/base-controller.mjs +0 -19
- package/websql/esm2022/lib/base-classes/base-crud-controller.mjs +0 -238
- package/websql/esm2022/lib/base-classes/base-entity.mjs +0 -16
- package/websql/esm2022/lib/base-classes/base-injector.mjs +0 -167
- package/websql/esm2022/lib/base-classes/base-migration.mjs +0 -23
- package/websql/esm2022/lib/base-classes/base-provider.mjs +0 -6
- package/websql/esm2022/lib/base-classes/base-repository.mjs +0 -431
- package/websql/esm2022/lib/base-classes/base-subscriber-for-entity.mjs +0 -156
- package/websql/esm2022/lib/base-classes/base.mjs +0 -26
- package/websql/esm2022/lib/constants.mjs +0 -4
- package/websql/esm2022/lib/context-db-migrations.mjs +0 -274
- package/websql/esm2022/lib/create-context.mjs +0 -126
- package/websql/esm2022/lib/decorators/classes/controller-decorator.mjs +0 -18
- package/websql/esm2022/lib/decorators/classes/entity-decorator.mjs +0 -28
- package/websql/esm2022/lib/decorators/classes/migration-decorator.mjs +0 -18
- package/websql/esm2022/lib/decorators/classes/provider-decorator.mjs +0 -18
- package/websql/esm2022/lib/decorators/classes/repository-decorator.mjs +0 -18
- package/websql/esm2022/lib/decorators/classes/subscriber-decorator.mjs +0 -18
- package/websql/esm2022/lib/decorators/http/http-decorators.mjs +0 -24
- package/websql/esm2022/lib/decorators/http/http-methods-decorators.mjs +0 -78
- package/websql/esm2022/lib/decorators/http/http-params-decorators.mjs +0 -47
- package/websql/esm2022/lib/dependency-injection/di-container.mjs +0 -32
- package/websql/esm2022/lib/endpoint-context.mjs +0 -1586
- package/websql/esm2022/lib/entity-process.mjs +0 -198
- package/websql/esm2022/lib/env.mjs +0 -6
- package/websql/esm2022/lib/get-response-value.mjs +0 -25
- package/websql/esm2022/lib/helpers/class-helpers.mjs +0 -183
- package/websql/esm2022/lib/helpers/taon-helpers.mjs +0 -120
- package/websql/esm2022/lib/index.mjs +0 -72
- package/websql/esm2022/lib/inject.mjs +0 -36
- package/websql/esm2022/lib/models.mjs +0 -97
- package/websql/esm2022/lib/orm.mjs +0 -65
- package/websql/esm2022/lib/realtime/realtime-client.mjs +0 -141
- package/websql/esm2022/lib/realtime/realtime-core.mjs +0 -62
- package/websql/esm2022/lib/realtime/realtime-server.mjs +0 -176
- package/websql/esm2022/lib/realtime/realtime-strategy/index.mjs +0 -7
- package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-ipc.mjs +0 -218
- package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-mock.mjs +0 -224
- package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy-socket-io.mjs +0 -29
- package/websql/esm2022/lib/realtime/realtime-strategy/realtime-strategy.mjs +0 -14
- package/websql/esm2022/lib/realtime/realtime-subs-manager.mjs +0 -81
- package/websql/esm2022/lib/realtime/realtime.models.mjs +0 -4
- package/websql/esm2022/lib/storage.mjs +0 -5
- package/websql/esm2022/lib/symbols.mjs +0 -97
- package/websql/esm2022/lib/ui/directives/index.mjs +0 -6
- package/websql/esm2022/lib/ui/directives/safe.pipe.mjs +0 -43
- package/websql/esm2022/lib/ui/directives/taon-inject-html.directive.mjs +0 -24
- package/websql/esm2022/lib/ui/directives/taon-long-press.directive.mjs +0 -120
- package/websql/esm2022/lib/ui/index.mjs +0 -12
- package/websql/esm2022/lib/ui/taon-admin-mode-configuration/index.mjs +0 -4
- package/websql/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin-mode-configuration.component.mjs +0 -194
- package/websql/esm2022/lib/ui/taon-admin-mode-configuration/taon-admin.service.mjs +0 -55
- package/websql/esm2022/lib/ui/taon-full-material.module.mjs +0 -179
- package/websql/esm2022/lib/ui/taon-github-fork-me-corner/index.mjs +0 -5
- package/websql/esm2022/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.component.mjs +0 -18
- package/websql/esm2022/lib/ui/taon-github-fork-me-corner/taon-github-fork-me-corner.module.mjs +0 -21
- package/websql/esm2022/lib/ui/taon-notifications/index.mjs +0 -7
- package/websql/esm2022/lib/ui/taon-notifications/taon-notifications.component.mjs +0 -25
- package/websql/esm2022/lib/ui/taon-notifications/taon-notifications.models.mjs +0 -5
- package/websql/esm2022/lib/ui/taon-notifications/taon-notifications.module.mjs +0 -21
- package/websql/esm2022/lib/ui/taon-notifications/taon-notifications.service.mjs +0 -48
- package/websql/esm2022/lib/ui/taon-progress-bar/index.mjs +0 -5
- package/websql/esm2022/lib/ui/taon-progress-bar/taon-progress-bar.component.mjs +0 -50
- package/websql/esm2022/lib/ui/taon-progress-bar/taon-progress-bar.module.mjs +0 -22
- package/websql/esm2022/lib/ui/taon-session-passcode/index.mjs +0 -4
- package/websql/esm2022/lib/ui/taon-session-passcode/taon-session-passcode.component.mjs +0 -120
- package/websql/esm2022/lib/ui/taon-table/index.mjs +0 -5
- package/websql/esm2022/lib/ui/taon-table/taon-table.component.mjs +0 -160
- package/websql/esm2022/lib/ui/taon-table/taon-table.module.mjs +0 -57
- package/websql/esm2022/lib/validators.mjs +0 -76
- package/websql/esm2022/public-api.mjs +0 -2
- package/websql/esm2022/taon.mjs +0 -5
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import 'reflect-metadata'; // TODO this is needed for my decorators to work
|
|
2
|
-
import * as http from './decorators/http/http-decorators';
|
|
3
|
-
import * as base from './base-classes/base';
|
|
4
|
-
import * as controllerDecorator from './decorators/classes/controller-decorator';
|
|
5
|
-
import * as entityDecorator from './decorators/classes/entity-decorator';
|
|
6
|
-
import * as providerDecorator from './decorators/classes/provider-decorator';
|
|
7
|
-
import * as repositoryDecorator from './decorators/classes/repository-decorator';
|
|
8
|
-
import * as subscriberDecorator from './decorators/classes/subscriber-decorator';
|
|
9
|
-
import * as migrationDecorator from './decorators/classes/migration-decorator';
|
|
10
|
-
import * as createContextFn from './create-context';
|
|
11
|
-
import * as orm from './orm';
|
|
12
|
-
import * as coreHelpers from 'tnp-core/websql';
|
|
13
|
-
import * as injectFn from './inject';
|
|
14
|
-
import * as endpointContext from './endpoint-context';
|
|
15
|
-
import * as allSymbols from './symbols';
|
|
16
|
-
import * as getResponse from './get-response-value';
|
|
17
|
-
export * from './ui';
|
|
18
|
-
export { BaseRepository } from './base-classes/base-repository';
|
|
19
|
-
export { BaseController } from './base-classes/base-controller';
|
|
20
|
-
export { BaseProvider } from './base-classes/base-provider';
|
|
21
|
-
export { BaseEntity } from './base-classes/base-entity';
|
|
22
|
-
export { BaseContext } from './base-classes/base-context';
|
|
23
|
-
export { BaseMigration } from './base-classes/base-migration';
|
|
24
|
-
export { createContext } from './create-context';
|
|
25
|
-
export { inject } from './inject';
|
|
26
|
-
export { Models } from './models';
|
|
27
|
-
export * from './constants';
|
|
28
|
-
export { ClassHelpers } from './helpers/class-helpers';
|
|
29
|
-
export var Taon;
|
|
30
|
-
(function (Taon) {
|
|
31
|
-
Taon.Http = http.Http;
|
|
32
|
-
Taon.Base = base.Base;
|
|
33
|
-
Taon.Orm = orm.Orm;
|
|
34
|
-
Taon.getResponseValue = getResponse.getResponseValue;
|
|
35
|
-
Taon.Controller = controllerDecorator.TaonController;
|
|
36
|
-
Taon.Entity = entityDecorator.TaonEntity;
|
|
37
|
-
Taon.Provider = providerDecorator.TaonProvider;
|
|
38
|
-
Taon.Repository = repositoryDecorator.TaonRepository;
|
|
39
|
-
Taon.Subscriber = subscriberDecorator.TaonSubscriber;
|
|
40
|
-
Taon.Migration = migrationDecorator.TaonMigration;
|
|
41
|
-
Taon.isBrowser = coreHelpers.Helpers.isBrowser;
|
|
42
|
-
Taon.isNode = coreHelpers.Helpers.isNode;
|
|
43
|
-
Taon.isWebSQL = coreHelpers.Helpers.isWebSQL;
|
|
44
|
-
Taon.isElectron = coreHelpers.Helpers.isElectron;
|
|
45
|
-
Taon.createContext = createContextFn.createContext;
|
|
46
|
-
Taon.inject = injectFn.inject;
|
|
47
|
-
Taon.initNgZone = (ngZone) => {
|
|
48
|
-
endpointContext.EndpointContext.initNgZone(ngZone);
|
|
49
|
-
};
|
|
50
|
-
Taon.symbols = allSymbols.Symbols;
|
|
51
|
-
/**
|
|
52
|
-
* @deprecated
|
|
53
|
-
* use createContext instead
|
|
54
|
-
*/
|
|
55
|
-
Taon.init = async (options) => {
|
|
56
|
-
const BaseContext = (await import('./base-classes/base-context'))
|
|
57
|
-
.BaseContext;
|
|
58
|
-
const context = Taon.createContext(() => ({
|
|
59
|
-
contextName: 'default',
|
|
60
|
-
host: options.host,
|
|
61
|
-
contexts: { BaseContext },
|
|
62
|
-
database: true,
|
|
63
|
-
entities: Array.from(options.entities),
|
|
64
|
-
controllers: Array.from(options.controllers),
|
|
65
|
-
}));
|
|
66
|
-
await context.initialize();
|
|
67
|
-
return context;
|
|
68
|
-
};
|
|
69
|
-
})(Taon || (Taon = {}));
|
|
70
|
-
;
|
|
71
|
-
({}); // @--end-of-file-for-module=taon lib/index.ts
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC13ZWJzcWwvdGFvbi9wcm9qZWN0cy90YW9uL3NyYy9saWIvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxrQkFBa0IsQ0FBQyxDQUFDLGdEQUFnRDtBQUMzRSxPQUFPLEtBQUssSUFBSSxNQUFNLG1DQUFtQyxDQUFDO0FBQzFELE9BQU8sS0FBSyxJQUFJLE1BQU0scUJBQXFCLENBQUM7QUFDNUMsT0FBTyxLQUFLLG1CQUFtQixNQUFNLDJDQUEyQyxDQUFDO0FBQ2pGLE9BQU8sS0FBSyxlQUFlLE1BQU0sdUNBQXVDLENBQUM7QUFDekUsT0FBTyxLQUFLLGlCQUFpQixNQUFNLHlDQUF5QyxDQUFDO0FBQzdFLE9BQU8sS0FBSyxtQkFBbUIsTUFBTSwyQ0FBMkMsQ0FBQztBQUNqRixPQUFPLEtBQUssbUJBQW1CLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxLQUFLLGtCQUFrQixNQUFNLDBDQUEwQyxDQUFDO0FBQy9FLE9BQU8sS0FBSyxlQUFlLE1BQU0sa0JBQWtCLENBQUM7QUFDcEQsT0FBTyxLQUFLLEdBQUcsTUFBTSxPQUFPLENBQUM7QUFFN0IsT0FBTyxLQUFLLFdBQVcsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEtBQUssUUFBUSxNQUFNLFVBQVUsQ0FBQztBQUNyQyxPQUFPLEtBQUssZUFBZSxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sS0FBSyxVQUFVLE1BQU0sV0FBVyxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxXQUFXLE1BQU0sc0JBQXNCLENBQUM7QUFHcEQsY0FBYyxNQUFNLENBQUM7QUFHckIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbEMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUNsQyxjQUFjLGFBQWEsQ0FBQztBQUM1QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHdkQsTUFBTSxLQUFXLElBQUksQ0F5RHBCO0FBekRELFdBQWlCLElBQUk7SUFFTCxTQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztJQUNqQixTQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztJQUNqQixRQUFHLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQztJQUVmLHFCQUFnQixHQUFHLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQztJQUcvQyxlQUFVLEdBQUcsbUJBQW1CLENBQUMsY0FBYyxDQUFDO0lBQ2hELFdBQU0sR0FBRyxlQUFlLENBQUMsVUFBVSxDQUFDO0lBQ3BDLGFBQVEsR0FBRyxpQkFBaUIsQ0FBQyxZQUFZLENBQUM7SUFDMUMsZUFBVSxHQUFHLG1CQUFtQixDQUFDLGNBQWMsQ0FBQztJQUNoRCxlQUFVLEdBQUcsbUJBQW1CLENBQUMsY0FBYyxDQUFDO0lBQ2hELGNBQVMsR0FBRyxrQkFBa0IsQ0FBQyxhQUFhLENBQUM7SUFHOUMsY0FBUyxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO0lBQzFDLFdBQU0sR0FBRyxXQUFXLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQztJQUNwQyxhQUFRLEdBQUcsV0FBVyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7SUFDeEMsZUFBVSxHQUFHLFdBQVcsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDO0lBRTVDLGtCQUFhLEdBQUcsZUFBZSxDQUFDLGFBQWEsQ0FBQztJQUU5QyxXQUFNLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQztJQUd6QixlQUFVLEdBQUcsQ0FBQyxNQUFjLEVBQUUsRUFBRTtRQUMzQyxlQUFlLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyRCxDQUFDLENBQUM7SUFHVyxZQUFPLEdBQUcsVUFBVSxDQUFDLE9BQU8sQ0FBQztJQUUxQzs7O09BR0c7SUFDVSxTQUFJLEdBQUcsS0FBSyxFQUFFLE9BSTFCLEVBQUUsRUFBRTtRQUNILE1BQU0sV0FBVyxHQUFHLENBQUMsTUFBTSxNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQzthQUM5RCxXQUFXLENBQUM7UUFDZixNQUFNLE9BQU8sR0FBRyxLQUFBLGFBQWEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQ25DLFdBQVcsRUFBRSxTQUFTO1lBQ3RCLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTtZQUNsQixRQUFRLEVBQUUsRUFBRSxXQUFXLEVBQUU7WUFDekIsUUFBUSxFQUFFLElBQUk7WUFDZCxRQUFRLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFRO1lBQzdDLFdBQVcsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLENBQVE7U0FDcEQsQ0FBQyxDQUFDLENBQUM7UUFFSixNQUFNLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUMzQixPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDLENBQUM7QUFDSixDQUFDLEVBekRnQixJQUFJLEtBQUosSUFBSSxRQXlEcEI7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDhDQUE4QyIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5pbXBvcnQgJ3JlZmxlY3QtbWV0YWRhdGEnOyAvLyBUT0RPIHRoaXMgaXMgbmVlZGVkIGZvciBteSBkZWNvcmF0b3JzIHRvIHdvcmtcbmltcG9ydCAqIGFzIGh0dHAgZnJvbSAnLi9kZWNvcmF0b3JzL2h0dHAvaHR0cC1kZWNvcmF0b3JzJztcbmltcG9ydCAqIGFzIGJhc2UgZnJvbSAnLi9iYXNlLWNsYXNzZXMvYmFzZSc7XG5pbXBvcnQgKiBhcyBjb250cm9sbGVyRGVjb3JhdG9yIGZyb20gJy4vZGVjb3JhdG9ycy9jbGFzc2VzL2NvbnRyb2xsZXItZGVjb3JhdG9yJztcbmltcG9ydCAqIGFzIGVudGl0eURlY29yYXRvciBmcm9tICcuL2RlY29yYXRvcnMvY2xhc3Nlcy9lbnRpdHktZGVjb3JhdG9yJztcbmltcG9ydCAqIGFzIHByb3ZpZGVyRGVjb3JhdG9yIGZyb20gJy4vZGVjb3JhdG9ycy9jbGFzc2VzL3Byb3ZpZGVyLWRlY29yYXRvcic7XG5pbXBvcnQgKiBhcyByZXBvc2l0b3J5RGVjb3JhdG9yIGZyb20gJy4vZGVjb3JhdG9ycy9jbGFzc2VzL3JlcG9zaXRvcnktZGVjb3JhdG9yJztcbmltcG9ydCAqIGFzIHN1YnNjcmliZXJEZWNvcmF0b3IgZnJvbSAnLi9kZWNvcmF0b3JzL2NsYXNzZXMvc3Vic2NyaWJlci1kZWNvcmF0b3InO1xuaW1wb3J0ICogYXMgbWlncmF0aW9uRGVjb3JhdG9yIGZyb20gJy4vZGVjb3JhdG9ycy9jbGFzc2VzL21pZ3JhdGlvbi1kZWNvcmF0b3InO1xuaW1wb3J0ICogYXMgY3JlYXRlQ29udGV4dEZuIGZyb20gJy4vY3JlYXRlLWNvbnRleHQnO1xuaW1wb3J0ICogYXMgb3JtIGZyb20gJy4vb3JtJztcbmltcG9ydCAqIGFzIG1vZGVscyBmcm9tICcuL21vZGVscyc7XG5pbXBvcnQgKiBhcyBjb3JlSGVscGVycyBmcm9tICd0bnAtY29yZS93ZWJzcWwnO1xuaW1wb3J0ICogYXMgaW5qZWN0Rm4gZnJvbSAnLi9pbmplY3QnO1xuaW1wb3J0ICogYXMgZW5kcG9pbnRDb250ZXh0IGZyb20gJy4vZW5kcG9pbnQtY29udGV4dCc7XG5pbXBvcnQgKiBhcyBhbGxTeW1ib2xzIGZyb20gJy4vc3ltYm9scyc7XG5pbXBvcnQgKiBhcyBnZXRSZXNwb25zZSBmcm9tICcuL2dldC1yZXNwb25zZS12YWx1ZSc7XG5cbmltcG9ydCB7IE5nWm9uZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuZXhwb3J0ICogZnJvbSAnLi91aSc7XG5cblxuZXhwb3J0IHsgQmFzZVJlcG9zaXRvcnkgfSBmcm9tICcuL2Jhc2UtY2xhc3Nlcy9iYXNlLXJlcG9zaXRvcnknO1xuZXhwb3J0IHsgQmFzZUNvbnRyb2xsZXIgfSBmcm9tICcuL2Jhc2UtY2xhc3Nlcy9iYXNlLWNvbnRyb2xsZXInO1xuZXhwb3J0IHsgQmFzZVByb3ZpZGVyIH0gZnJvbSAnLi9iYXNlLWNsYXNzZXMvYmFzZS1wcm92aWRlcic7XG5leHBvcnQgeyBCYXNlRW50aXR5IH0gZnJvbSAnLi9iYXNlLWNsYXNzZXMvYmFzZS1lbnRpdHknO1xuZXhwb3J0IHsgQmFzZUNvbnRleHQgfSBmcm9tICcuL2Jhc2UtY2xhc3Nlcy9iYXNlLWNvbnRleHQnO1xuZXhwb3J0IHsgQmFzZU1pZ3JhdGlvbiB9IGZyb20gJy4vYmFzZS1jbGFzc2VzL2Jhc2UtbWlncmF0aW9uJztcbmV4cG9ydCB7IGNyZWF0ZUNvbnRleHQgfSBmcm9tICcuL2NyZWF0ZS1jb250ZXh0JztcbmV4cG9ydCB7IGluamVjdCB9IGZyb20gJy4vaW5qZWN0JztcbmV4cG9ydCB7IE1vZGVscyB9IGZyb20gJy4vbW9kZWxzJztcbmV4cG9ydCAqIGZyb20gJy4vY29uc3RhbnRzJztcbmV4cG9ydCB7IENsYXNzSGVscGVycyB9IGZyb20gJy4vaGVscGVycy9jbGFzcy1oZWxwZXJzJztcblxuXG5leHBvcnQgbmFtZXNwYWNlIFRhb24ge1xuICBleHBvcnQgaW1wb3J0IFJlc3BvbnNlID0gbW9kZWxzLk1vZGVscy5IdHRwLlJlc3BvbnNlO1xuICBleHBvcnQgaW1wb3J0IEh0dHAgPSBodHRwLkh0dHA7XG4gIGV4cG9ydCBpbXBvcnQgQmFzZSA9IGJhc2UuQmFzZTtcbiAgZXhwb3J0IGltcG9ydCBPcm0gPSBvcm0uT3JtO1xuICBleHBvcnQgaW1wb3J0IFN0YXJ0UGFyYW1zID0gbW9kZWxzLk1vZGVscy5TdGFydFBhcmFtcztcbiAgZXhwb3J0IGNvbnN0IGdldFJlc3BvbnNlVmFsdWUgPSBnZXRSZXNwb25zZS5nZXRSZXNwb25zZVZhbHVlO1xuXG5cbiAgZXhwb3J0IGltcG9ydCBDb250cm9sbGVyID0gY29udHJvbGxlckRlY29yYXRvci5UYW9uQ29udHJvbGxlcjtcbiAgZXhwb3J0IGltcG9ydCBFbnRpdHkgPSBlbnRpdHlEZWNvcmF0b3IuVGFvbkVudGl0eTtcbiAgZXhwb3J0IGltcG9ydCBQcm92aWRlciA9IHByb3ZpZGVyRGVjb3JhdG9yLlRhb25Qcm92aWRlcjtcbiAgZXhwb3J0IGltcG9ydCBSZXBvc2l0b3J5ID0gcmVwb3NpdG9yeURlY29yYXRvci5UYW9uUmVwb3NpdG9yeTtcbiAgZXhwb3J0IGltcG9ydCBTdWJzY3JpYmVyID0gc3Vic2NyaWJlckRlY29yYXRvci5UYW9uU3Vic2NyaWJlcjtcbiAgZXhwb3J0IGltcG9ydCBNaWdyYXRpb24gPSBtaWdyYXRpb25EZWNvcmF0b3IuVGFvbk1pZ3JhdGlvbjtcblxuXG4gIGV4cG9ydCBjb25zdCBpc0Jyb3dzZXIgPSBjb3JlSGVscGVycy5IZWxwZXJzLmlzQnJvd3NlcjtcbiAgZXhwb3J0IGNvbnN0IGlzTm9kZSA9IGNvcmVIZWxwZXJzLkhlbHBlcnMuaXNOb2RlO1xuICBleHBvcnQgY29uc3QgaXNXZWJTUUwgPSBjb3JlSGVscGVycy5IZWxwZXJzLmlzV2ViU1FMO1xuICBleHBvcnQgY29uc3QgaXNFbGVjdHJvbiA9IGNvcmVIZWxwZXJzLkhlbHBlcnMuaXNFbGVjdHJvbjtcblxuICBleHBvcnQgY29uc3QgY3JlYXRlQ29udGV4dCA9IGNyZWF0ZUNvbnRleHRGbi5jcmVhdGVDb250ZXh0O1xuXG4gIGV4cG9ydCBjb25zdCBpbmplY3QgPSBpbmplY3RGbi5pbmplY3Q7XG5cblxuICBleHBvcnQgY29uc3QgaW5pdE5nWm9uZSA9IChuZ1pvbmU6IE5nWm9uZSkgPT4ge1xuICAgIGVuZHBvaW50Q29udGV4dC5FbmRwb2ludENvbnRleHQuaW5pdE5nWm9uZShuZ1pvbmUpO1xuICB9O1xuXG5cbiAgZXhwb3J0IGNvbnN0IHN5bWJvbHMgPSBhbGxTeW1ib2xzLlN5bWJvbHM7XG5cbiAgLyoqXG4gICAqIEBkZXByZWNhdGVkXG4gICAqIHVzZSBjcmVhdGVDb250ZXh0IGluc3RlYWRcbiAgICovXG4gIGV4cG9ydCBjb25zdCBpbml0ID0gYXN5bmMgKG9wdGlvbnM6IHtcbiAgICBob3N0OiBzdHJpbmc7XG4gICAgZW50aXRpZXM6IEZ1bmN0aW9uW107XG4gICAgY29udHJvbGxlcnM6IEZ1bmN0aW9uW107XG4gIH0pID0+IHtcbiAgICBjb25zdCBCYXNlQ29udGV4dCA9IChhd2FpdCBpbXBvcnQoJy4vYmFzZS1jbGFzc2VzL2Jhc2UtY29udGV4dCcpKVxuICAgICAgLkJhc2VDb250ZXh0O1xuICAgIGNvbnN0IGNvbnRleHQgPSBjcmVhdGVDb250ZXh0KCgpID0+ICh7XG4gICAgICBjb250ZXh0TmFtZTogJ2RlZmF1bHQnLFxuICAgICAgaG9zdDogb3B0aW9ucy5ob3N0LFxuICAgICAgY29udGV4dHM6IHsgQmFzZUNvbnRleHQgfSxcbiAgICAgIGRhdGFiYXNlOiB0cnVlLFxuICAgICAgZW50aXRpZXM6IEFycmF5LmZyb20ob3B0aW9ucy5lbnRpdGllcykgYXMgYW55LFxuICAgICAgY29udHJvbGxlcnM6IEFycmF5LmZyb20ob3B0aW9ucy5jb250cm9sbGVycykgYXMgYW55LFxuICAgIH0pKTtcblxuICAgIGF3YWl0IGNvbnRleHQuaW5pdGlhbGl6ZSgpO1xuICAgIHJldHVybiBjb250ZXh0O1xuICB9O1xufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dGFvbiBsaWIvaW5kZXgudHMiXX0=
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { inject as angularInject } from '@angular/core';
|
|
2
|
-
import { Symbols } from './symbols';
|
|
3
|
-
export const inject = (entity) => {
|
|
4
|
-
return new Proxy({}, {
|
|
5
|
-
get: (_, propName) => {
|
|
6
|
-
if (propName === 'hasOwnProperty') {
|
|
7
|
-
return () => false;
|
|
8
|
-
}
|
|
9
|
-
const ctor = entity();
|
|
10
|
-
const contextFromClass = ctor[Symbols.ctxInClassOrClassObj];
|
|
11
|
-
const resultContext = contextFromClass;
|
|
12
|
-
if (resultContext) {
|
|
13
|
-
let instance = resultContext.inject(ctor);
|
|
14
|
-
if (propName === 'getOriginalPrototype') {
|
|
15
|
-
return () => Object.getPrototypeOf(instance);
|
|
16
|
-
}
|
|
17
|
-
if (propName === 'getOriginalConstructor') {
|
|
18
|
-
return () => instance.constructor;
|
|
19
|
-
}
|
|
20
|
-
const methods = ctor[Symbols.classMethodsNames] || [];
|
|
21
|
-
const isMethods = methods.includes(propName);
|
|
22
|
-
const methodOrProperty = isMethods
|
|
23
|
-
? instance[propName].bind(instance)
|
|
24
|
-
: instance[propName];
|
|
25
|
-
return methodOrProperty;
|
|
26
|
-
}
|
|
27
|
-
return angularInject(ctor)[propName];
|
|
28
|
-
},
|
|
29
|
-
});
|
|
30
|
-
};
|
|
31
|
-
/**
|
|
32
|
-
* TODO
|
|
33
|
-
*/
|
|
34
|
-
;
|
|
35
|
-
({}); // @--end-of-file-for-module=taon lib/inject.ts
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3Qtd2Vic3FsL3Rhb24vcHJvamVjdHMvdGFvbi9zcmMvbGliL2luamVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsTUFBTSxJQUFJLGFBQWEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sV0FBVyxDQUFDO0FBSXBDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sR0FBRyxDQUFJLE1BQXVDLEVBQUssRUFBRTtJQUN0RSxPQUFPLElBQUksS0FBSyxDQUNkLEVBQUUsRUFDRjtRQUNFLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRTtZQUNuQixJQUFJLFFBQVEsS0FBSyxnQkFBZ0IsRUFBRSxDQUFDO2dCQUNsQyxPQUFPLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQztZQUNyQixDQUFDO1lBRUQsTUFBTSxJQUFJLEdBQUcsTUFBTSxFQUFFLENBQUM7WUFDdEIsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQzNCLE9BQU8sQ0FBQyxvQkFBb0IsQ0FDVixDQUFDO1lBQ3JCLE1BQU0sYUFBYSxHQUFHLGdCQUFnQixDQUFDO1lBQ3ZDLElBQUksYUFBYSxFQUFFLENBQUM7Z0JBQ2xCLElBQUksUUFBUSxHQUFHLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFpQixDQUFDO2dCQUcxRCxJQUFJLFFBQVEsS0FBSyxzQkFBc0IsRUFBRSxDQUFDO29CQUN4QyxPQUFPLEdBQUcsRUFBRSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQy9DLENBQUM7Z0JBQ0QsSUFBSSxRQUFRLEtBQUssd0JBQXdCLEVBQUUsQ0FBQztvQkFDMUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDO2dCQUNwQyxDQUFDO2dCQUVELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLENBQUM7Z0JBQ3RELE1BQU0sU0FBUyxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBRTdDLE1BQU0sZ0JBQWdCLEdBQUcsU0FBUztvQkFDaEMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO29CQUNuQyxDQUFDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQU12QixPQUFPLGdCQUFnQixDQUFDO1lBQzFCLENBQUM7WUFHRCxPQUFPLGFBQWEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV2QyxDQUFDO0tBQ0YsQ0FDRyxDQUFDO0FBQ1QsQ0FBQyxDQUFDO0FBU0Y7O0dBRUc7QUF1REYsQ0FBQztBQUFBLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQywrQ0FBK0MiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuXG5pbXBvcnQgeyBpbmplY3QgYXMgYW5ndWxhckluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBTeW1ib2xzIH0gZnJvbSAnLi9zeW1ib2xzJztcbmltcG9ydCB0eXBlIHsgRW5kcG9pbnRDb250ZXh0IH0gZnJvbSAnLi9lbmRwb2ludC1jb250ZXh0JztcbmltcG9ydCB0eXBlIHsgQmFzZUluamVjdG9yIH0gZnJvbSAnLi9iYXNlLWNsYXNzZXMvYmFzZS1pbmplY3Rvcic7XG5cbmV4cG9ydCBjb25zdCBpbmplY3QgPSA8VD4oZW50aXR5OiAoKSA9PiBuZXcgKC4uLmFyZ3M6IGFueVtdKSA9PiBUKTogVCA9PiB7XG4gIHJldHVybiBuZXcgUHJveHkoXG4gICAge30sXG4gICAge1xuICAgICAgZ2V0OiAoXywgcHJvcE5hbWUpID0+IHtcbiAgICAgICAgaWYgKHByb3BOYW1lID09PSAnaGFzT3duUHJvcGVydHknKSB7XG4gICAgICAgICAgcmV0dXJuICgpID0+IGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY3RvciA9IGVudGl0eSgpO1xuICAgICAgICBjb25zdCBjb250ZXh0RnJvbUNsYXNzID0gY3RvcltcbiAgICAgICAgICBTeW1ib2xzLmN0eEluQ2xhc3NPckNsYXNzT2JqXG4gICAgICAgIF0gYXMgRW5kcG9pbnRDb250ZXh0O1xuICAgICAgICBjb25zdCByZXN1bHRDb250ZXh0ID0gY29udGV4dEZyb21DbGFzcztcbiAgICAgICAgaWYgKHJlc3VsdENvbnRleHQpIHtcbiAgICAgICAgICBsZXQgaW5zdGFuY2UgPSByZXN1bHRDb250ZXh0LmluamVjdChjdG9yKSBhcyBCYXNlSW5qZWN0b3I7XG5cblxuICAgICAgICAgIGlmIChwcm9wTmFtZSA9PT0gJ2dldE9yaWdpbmFsUHJvdG90eXBlJykge1xuICAgICAgICAgICAgcmV0dXJuICgpID0+IE9iamVjdC5nZXRQcm90b3R5cGVPZihpbnN0YW5jZSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGlmIChwcm9wTmFtZSA9PT0gJ2dldE9yaWdpbmFsQ29uc3RydWN0b3InKSB7XG4gICAgICAgICAgICByZXR1cm4gKCkgPT4gaW5zdGFuY2UuY29uc3RydWN0b3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgY29uc3QgbWV0aG9kcyA9IGN0b3JbU3ltYm9scy5jbGFzc01ldGhvZHNOYW1lc10gfHwgW107XG4gICAgICAgICAgY29uc3QgaXNNZXRob2RzID0gbWV0aG9kcy5pbmNsdWRlcyhwcm9wTmFtZSk7XG5cbiAgICAgICAgICBjb25zdCBtZXRob2RPclByb3BlcnR5ID0gaXNNZXRob2RzXG4gICAgICAgICAgICA/IGluc3RhbmNlW3Byb3BOYW1lXS5iaW5kKGluc3RhbmNlKVxuICAgICAgICAgICAgOiBpbnN0YW5jZVtwcm9wTmFtZV07XG5cblxuXG5cblxuICAgICAgICAgIHJldHVybiBtZXRob2RPclByb3BlcnR5O1xuICAgICAgICB9XG5cblxuICAgICAgICByZXR1cm4gYW5ndWxhckluamVjdChjdG9yKVtwcm9wTmFtZV07XG5cbiAgICAgIH0sXG4gICAgfSxcbiAgKSBhcyBUO1xufTtcblxuXG5cblxuXG5cblxuXG4vKipcbiAqIFRPRE9cbiAqL1xuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24gbGliL2luamVjdC50cyJdfQ==
|
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
/* */
|
|
2
|
-
/* */
|
|
3
|
-
import { _ } from 'tnp-core/websql';
|
|
4
|
-
import { Models as ModelsNg2Rest } from 'ng2-rest/websql';
|
|
5
|
-
import { ClassHelpers } from './helpers/class-helpers';
|
|
6
|
-
export var Models;
|
|
7
|
-
(function (Models) {
|
|
8
|
-
let ClassType;
|
|
9
|
-
(function (ClassType) {
|
|
10
|
-
ClassType["ENTITY"] = "ENTITY";
|
|
11
|
-
ClassType["CONTROLLER"] = "CONTROLLER";
|
|
12
|
-
ClassType["REPOSITORY"] = "REPOSITORY";
|
|
13
|
-
ClassType["PROVIDER"] = "PROVIDER";
|
|
14
|
-
ClassType["SUBSCRIBER"] = "SUBSCRIBER";
|
|
15
|
-
ClassType["MIGRATION"] = "MIGRATION";
|
|
16
|
-
})(ClassType = Models.ClassType || (Models.ClassType = {}));
|
|
17
|
-
Models.ClassTypeKey = {
|
|
18
|
-
[ClassType.ENTITY]: 'entities',
|
|
19
|
-
[ClassType.CONTROLLER]: 'controllers',
|
|
20
|
-
[ClassType.REPOSITORY]: 'repositories',
|
|
21
|
-
[ClassType.PROVIDER]: 'providers',
|
|
22
|
-
[ClassType.SUBSCRIBER]: 'subscribers',
|
|
23
|
-
[ClassType.MIGRATION]: 'migrations',
|
|
24
|
-
};
|
|
25
|
-
class DatabaseConfigTypeOrm {
|
|
26
|
-
}
|
|
27
|
-
Models.DatabaseConfigTypeOrm = DatabaseConfigTypeOrm;
|
|
28
|
-
class DatabaseConfig extends DatabaseConfigTypeOrm {
|
|
29
|
-
static from(databasePartialConfig) {
|
|
30
|
-
return _.merge(new DatabaseConfig(), databasePartialConfig);
|
|
31
|
-
}
|
|
32
|
-
get databaseConfigTypeORM() {
|
|
33
|
-
const result = _.cloneDeep(this);
|
|
34
|
-
if (result.recreateMode) {
|
|
35
|
-
if (result.recreateMode === 'DROP_DB+MIGRATIONS') {
|
|
36
|
-
result.synchronize = true;
|
|
37
|
-
result.dropSchema = true;
|
|
38
|
-
}
|
|
39
|
-
else if (result.recreateMode === 'PRESERVE_DATA+MIGRATIONS') {
|
|
40
|
-
result.synchronize = false;
|
|
41
|
-
result.dropSchema = false;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
delete result.recreateMode;
|
|
45
|
-
return result;
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
Models.DatabaseConfig = DatabaseConfig;
|
|
49
|
-
class DecoratorAbstractOpt {
|
|
50
|
-
}
|
|
51
|
-
Models.DecoratorAbstractOpt = DecoratorAbstractOpt;
|
|
52
|
-
class ParamConfig {
|
|
53
|
-
}
|
|
54
|
-
Models.ParamConfig = ParamConfig;
|
|
55
|
-
class MethodConfig {
|
|
56
|
-
constructor() {
|
|
57
|
-
this.parameters = {};
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
Models.MethodConfig = MethodConfig;
|
|
61
|
-
class ControllerConfig extends DecoratorAbstractOpt {
|
|
62
|
-
constructor() {
|
|
63
|
-
super(...arguments);
|
|
64
|
-
this.methods = {};
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
Models.ControllerConfig = ControllerConfig;
|
|
68
|
-
class RuntimeControllerConfig extends ControllerConfig {
|
|
69
|
-
}
|
|
70
|
-
Models.RuntimeControllerConfig = RuntimeControllerConfig;
|
|
71
|
-
let Http;
|
|
72
|
-
(function (Http) {
|
|
73
|
-
Http.Rest = ModelsNg2Rest;
|
|
74
|
-
class Errors {
|
|
75
|
-
constructor(message, code = 400) {
|
|
76
|
-
this.message = message;
|
|
77
|
-
this.code = code;
|
|
78
|
-
this.toString = () => {
|
|
79
|
-
return this.message;
|
|
80
|
-
};
|
|
81
|
-
}
|
|
82
|
-
static create(message, code = 400) {
|
|
83
|
-
return new Errors(message, code);
|
|
84
|
-
}
|
|
85
|
-
static entityNotFound(entity) {
|
|
86
|
-
return Errors.create(`Entity ${ClassHelpers.getName(entity)} not found`);
|
|
87
|
-
}
|
|
88
|
-
static custom(message, code = 400) {
|
|
89
|
-
return Errors.create(message, code);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
Http.Errors = Errors;
|
|
93
|
-
})(Http = Models.Http || (Models.Http = {}));
|
|
94
|
-
})(Models || (Models = {}));
|
|
95
|
-
;
|
|
96
|
-
({}); // @--end-of-file-for-module=taon lib/models.ts
|
|
97
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3Qtd2Vic3FsL3Rhb24vcHJvamVjdHMvdGFvbi9zcmMvbGliL21vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxLQUFLO0FBQ0wsS0FBSztBQUVMLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwQyxPQUFPLEVBQUUsTUFBTSxJQUFJLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzFELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUl2RCxNQUFNLEtBQVcsTUFBTSxDQTJWdEI7QUEzVkQsV0FBaUIsTUFBTTtJQVNyQixJQUFZLFNBT1g7SUFQRCxXQUFZLFNBQVM7UUFDbkIsOEJBQWlCLENBQUE7UUFDakIsc0NBQXlCLENBQUE7UUFDekIsc0NBQXlCLENBQUE7UUFDekIsa0NBQXFCLENBQUE7UUFDckIsc0NBQXlCLENBQUE7UUFDekIsb0NBQXVCLENBQUE7SUFDekIsQ0FBQyxFQVBXLFNBQVMsR0FBVCxnQkFBUyxLQUFULGdCQUFTLFFBT3BCO0lBRVksbUJBQVksR0FBRztRQUMxQixDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxVQUFVO1FBQzlCLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFLGFBQWE7UUFDckMsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLEVBQUUsY0FBYztRQUN0QyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsRUFBRSxXQUFXO1FBQ2pDLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxFQUFFLGFBQWE7UUFDckMsQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLEVBQUUsWUFBWTtLQUdwQyxDQUFDO0lBMEJGLE1BQWEscUJBQXFCO0tBMEJqQztJQTFCWSw0QkFBcUIsd0JBMEJqQyxDQUFBO0lBSUQsTUFBYSxjQUFlLFNBQVEscUJBQXFCO1FBU3ZELE1BQU0sQ0FBQyxJQUFJLENBQ1QscUJBS0M7WUFFRCxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxjQUFjLEVBQUUsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDO1FBQzlELENBQUM7UUFFRCxJQUFJLHFCQUFxQjtZQUV2QixNQUFNLE1BQU0sR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBbUIsQ0FBQztZQUNuRCxJQUFJLE1BQU0sQ0FBQyxZQUFZLEVBQUUsQ0FBQztnQkFDeEIsSUFBSSxNQUFNLENBQUMsWUFBWSxLQUFLLG9CQUFvQixFQUFFLENBQUM7b0JBQ2pELE1BQU0sQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO29CQUMxQixNQUFNLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztnQkFDM0IsQ0FBQztxQkFBTSxJQUFJLE1BQU0sQ0FBQyxZQUFZLEtBQUssMEJBQTBCLEVBQUUsQ0FBQztvQkFDOUQsTUFBTSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7b0JBQzNCLE1BQU0sQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO2dCQUM1QixDQUFDO1lBQ0gsQ0FBQztZQUNELE9BQU8sTUFBTSxDQUFDLFlBQVksQ0FBQztZQUUzQixPQUFPLE1BQWEsQ0FBQztRQUV2QixDQUFDO0tBQ0Y7SUFyQ1kscUJBQWMsaUJBcUMxQixDQUFBO0lBaUZELE1BQWEsb0JBQW9CO0tBRWhDO0lBRlksMkJBQW9CLHVCQUVoQyxDQUFBO0lBSUQsTUFBYSxXQUFXO0tBTXZCO0lBTlksa0JBQVcsY0FNdkIsQ0FBQTtJQUlELE1BQWEsWUFBWTtRQUF6QjtZQW9CRSxlQUFVLEdBQXlDLEVBQUUsQ0FBQztRQUN4RCxDQUFDO0tBQUE7SUFyQlksbUJBQVksZUFxQnhCLENBQUE7SUFJRCxNQUFhLGdCQUFpQixTQUFRLG9CQUFvQjtRQUExRDs7WUFJRSxZQUFPLEdBQTJDLEVBQUUsQ0FBQztRQUN2RCxDQUFDO0tBQUE7SUFMWSx1QkFBZ0IsbUJBSzVCLENBQUE7SUFJRCxNQUFhLHVCQUF3QixTQUFRLGdCQUFnQjtLQUc1RDtJQUhZLDhCQUF1QiwwQkFHbkMsQ0FBQTtJQUlELElBQWlCLElBQUksQ0E2RXBCO0lBN0VELFdBQWlCLElBQUk7UUFDTCxTQUFJLEdBQUcsYUFBYSxDQUFDO1FBdUNuQyxNQUFhLE1BQU07WUFLakIsWUFDUyxPQUFlLEVBQ2QsT0FBK0IsR0FBRztnQkFEbkMsWUFBTyxHQUFQLE9BQU8sQ0FBUTtnQkFDZCxTQUFJLEdBQUosSUFBSSxDQUE4QjtnQkFOckMsYUFBUSxHQUFHLEdBQVcsRUFBRTtvQkFDN0IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO2dCQUN0QixDQUFDLENBQUM7WUFLQyxDQUFDO1lBRUksTUFBTSxDQUFDLE1BQU0sQ0FDbkIsT0FBZSxFQUNmLE9BQStCLEdBQUc7Z0JBRWxDLE9BQU8sSUFBSSxNQUFNLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ25DLENBQUM7WUFFTSxNQUFNLENBQUMsY0FBYyxDQUFDLE1BQWlCO2dCQUM1QyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQ2xCLFVBQVUsWUFBWSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUNuRCxDQUFDO1lBQ0osQ0FBQztZQUVNLE1BQU0sQ0FBQyxNQUFNLENBQ2xCLE9BQWUsRUFDZixPQUErQixHQUFHO2dCQUVsQyxPQUFPLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3RDLENBQUM7U0FDRjtRQTdCWSxXQUFNLFNBNkJsQixDQUFBO0lBUUgsQ0FBQyxFQTdFZ0IsSUFBSSxHQUFKLFdBQUksS0FBSixXQUFJLFFBNkVwQjtBQVlILENBQUMsRUEzVmdCLE1BQU0sS0FBTixNQUFNLFFBMlZ0QjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsK0NBQStDIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IENvcmVNb2RlbHMgfSBmcm9tICd0bnAtY29yZS93ZWJzcWwnO1xuaW1wb3J0IHsgUmVzcG9uc2UsIFJlcXVlc3RIYW5kbGVyIH0gZnJvbSAnZXhwcmVzcyc7XG5pbXBvcnQgeyAgIFJlc3BvbnNlIGFzIEV4cHJlc3NSZXNwb25zZSwgICBSZXF1ZXN0IGFzIEV4cHJlc3NSZXF1ZXN0LCB9IGZyb20gJ2V4cHJlc3MnOy8qICovXG4vKiAqL1xuLyogKi9cblxuaW1wb3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL3dlYnNxbCc7XG5pbXBvcnQgeyBNb2RlbHMgYXMgTW9kZWxzTmcyUmVzdCB9IGZyb20gJ25nMi1yZXN0L3dlYnNxbCc7XG5pbXBvcnQgeyBDbGFzc0hlbHBlcnMgfSBmcm9tICcuL2hlbHBlcnMvY2xhc3MtaGVscGVycyc7XG5pbXBvcnQgdHlwZSB7IFRhb25Db250cm9sbGVyT3B0aW9ucyB9IGZyb20gJy4vZGVjb3JhdG9ycy9jbGFzc2VzL2NvbnRyb2xsZXItZGVjb3JhdG9yJztcbmltcG9ydCB0eXBlIHsgVGFvbkVudGl0eU9wdGlvbnMgfSBmcm9tICcuL2RlY29yYXRvcnMvY2xhc3Nlcy9lbnRpdHktZGVjb3JhdG9yJztcblxuZXhwb3J0IG5hbWVzcGFjZSBNb2RlbHMge1xuICBleHBvcnQgdHlwZSBGcmFtZXdvcmtNb2RlID1cbiAgICB8ICdiYWNrZW5kLWZyb250ZW5kKHRjcCt1ZHApJ1xuICAgIHwgJ3JlbW90ZS1iYWNrZW5kKHRjcCt1ZHApJ1xuICAgIHwgJ2JhY2tlbmQtZnJvbnRlbmQoaXBjLWVsZWN0cm9uKSdcbiAgICB8ICdiYWNrZW5kLWZyb250ZW5kKHdlYnNxbC1lbGVjdHJvbiknXG4gICAgfCAnYmFja2VuZC1mcm9udGVuZCh3ZWJzcWwpJztcblxuXG4gIGV4cG9ydCBlbnVtIENsYXNzVHlwZSB7XG4gICAgRU5USVRZID0gJ0VOVElUWScsXG4gICAgQ09OVFJPTExFUiA9ICdDT05UUk9MTEVSJyxcbiAgICBSRVBPU0lUT1JZID0gJ1JFUE9TSVRPUlknLFxuICAgIFBST1ZJREVSID0gJ1BST1ZJREVSJyxcbiAgICBTVUJTQ1JJQkVSID0gJ1NVQlNDUklCRVInLFxuICAgIE1JR1JBVElPTiA9ICdNSUdSQVRJT04nLFxuICB9XG5cbiAgZXhwb3J0IGNvbnN0IENsYXNzVHlwZUtleSA9IHtcbiAgICBbQ2xhc3NUeXBlLkVOVElUWV06ICdlbnRpdGllcycsXG4gICAgW0NsYXNzVHlwZS5DT05UUk9MTEVSXTogJ2NvbnRyb2xsZXJzJyxcbiAgICBbQ2xhc3NUeXBlLlJFUE9TSVRPUlldOiAncmVwb3NpdG9yaWVzJyxcbiAgICBbQ2xhc3NUeXBlLlBST1ZJREVSXTogJ3Byb3ZpZGVycycsXG4gICAgW0NsYXNzVHlwZS5TVUJTQ1JJQkVSXTogJ3N1YnNjcmliZXJzJyxcbiAgICBbQ2xhc3NUeXBlLk1JR1JBVElPTl06ICdtaWdyYXRpb25zJyxcbiAgfSBhcyB7XG4gICAgW2tleSBpbiBDbGFzc1R5cGVdOiBrZXlvZiBDb250ZXh0T3B0aW9uczxhbnksIGFueSwgYW55LCBhbnksIGFueSwgYW55LCBhbnk+O1xuICB9O1xuXG5cblxuXG4gIGV4cG9ydCB0eXBlIE1pZGRsZXdhcmVUeXBlID0gW0Z1bmN0aW9uLCBhbnlbXV07XG5cblxuXG4gIC8qKlxuICAgKiBEUk9QX0RCK01JR1JBVElPTlMgKGRlZmF1bHQgZm9yIGRldmVsb3BtZW50KVxuICAgKiBEcm9wIGFsbCB0YWJsZXMgKyByZWNyZWF0ZSB0aGVtICsgcnVuIG1pZ3JhdGlvbnNcbiAgICogc3luY2hyb25pemU6IHRydWUgLCBkcm9wU2NoZW1hOiB0cnVlXG4gICAqIHVzZSBtaWdyYXRpb25zOiB0cnVlXG4gICAqXG4gICAqIE1JR1JBVElPTlMgKGRlZmF1bHQgZm9yIHByb2R1Y3Rpb24pXG4gICAqIERvIG5vdCBkcm9wIHRhYmxlcywgb25seSBydW4gbWlncmF0aW9uc1xuICAgKiBzeW5jaHJvbml6ZTogZmFsc2UsIGRyb3BTY2hlbWE6IGZhbHNlXG4gICAqIHVzZSBtaWdyYXRpb25zOiB0cnVlXG4gICAqL1xuICBleHBvcnQgdHlwZSBEQlJlY3JlYXRlTW9kZSA9XG4gICAgfCAnRFJPUF9EQitNSUdSQVRJT05TJ1xuICAgIHwgJ1BSRVNFUlZFX0RBVEErTUlHUkFUSU9OUyc7XG5cblxuXG4gIGV4cG9ydCBjbGFzcyBEYXRhYmFzZUNvbmZpZ1R5cGVPcm0ge1xuICAgIC8qKlxuICAgICAqIGRhdGFiYXNlIG5hbWVcbiAgICAgKi9cbiAgICBkYXRhYmFzZT86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBvbmx5IGZvciBmaWxlIGJhc2UgZGI6IHNxbGl0ZSwgc3FsanNcbiAgICAgKi9cbiAgICBsb2NhdGlvbj86IHN0cmluZztcbiAgICBzeW5jaHJvbml6ZTogYm9vbGVhbjtcbiAgICBkcm9wU2NoZW1hOiBib29sZWFuO1xuICAgIHR5cGU/OiBDb3JlTW9kZWxzLkRhdGFiYXNlVHlwZTtcbiAgICAvKipcbiAgICAgKiBQZXJzaXN0cyBkYiBvbiBkaXNrL2xvY2FsLXN0b3JhZ2UgaWYgc2VydmVybGVzcyBkYlxuICAgICAqL1xuICAgIGF1dG9TYXZlPzogYm9vbGVhbjtcbiAgICAvKipcbiAgICAgKiBmb3Igd2Vic3FsIGRiIG1vZGVcbiAgICAgKiB0cnVlIGJ5IGRlZmF1bHRcbiAgICAgKi9cbiAgICB1c2VMb2NhbEZvcmFnZT86IGJvb2xlYW47XG4gICAgbG9nZ2luZzogYm9vbGVhbjtcbiAgICBkYXRhYmFzZVBvcnQ/OiBudW1iZXI7XG4gICAgZGF0YWJhc2VIb3N0Pzogc3RyaW5nO1xuICAgIGRhdGFiYXNlVXNlcm5hbWU/OiBzdHJpbmc7XG4gICAgZGF0YWJhc2VQYXNzd29yZD86IHN0cmluZztcbiAgfVxuXG5cblxuICBleHBvcnQgY2xhc3MgRGF0YWJhc2VDb25maWcgZXh0ZW5kcyBEYXRhYmFzZUNvbmZpZ1R5cGVPcm0ge1xuICAgIC8qKlxuICAgICAqIERlZmF1bHQgdmFsdWUgJ0RST1BfQUxMJy5cbiAgICAgKlxuICAgICAqIFRlbGwgZnJhbWV3b3JrIHdoYXQgaXMgaGFwcGVuaW5nIHdpdGggZGJcbiAgICAgKiB3aGVuIGNvbnRleHQgaXMgc3RhcnRpbmcuXG4gICAgICovXG4gICAgcHVibGljIHJlY3JlYXRlTW9kZT86IERCUmVjcmVhdGVNb2RlO1xuXG4gICAgc3RhdGljIGZyb20oXG4gICAgICBkYXRhYmFzZVBhcnRpYWxDb25maWc6IFBhcnRpYWw8XG4gICAgICAgIE9taXQ8XG4gICAgICAgICAgRGF0YWJhc2VDb25maWcsXG4gICAgICAgICAgJ3N5bmNocm9uaXplJyB8ICdkcm9wU2NoZW1hJyB8ICdkYXRhYmFzZUNvbmZpZ1R5cGVPUk0nXG4gICAgICAgID5cbiAgICAgID4sXG4gICAgKTogRGF0YWJhc2VDb25maWcge1xuICAgICAgcmV0dXJuIF8ubWVyZ2UobmV3IERhdGFiYXNlQ29uZmlnKCksIGRhdGFiYXNlUGFydGlhbENvbmZpZyk7XG4gICAgfVxuXG4gICAgZ2V0IGRhdGFiYXNlQ29uZmlnVHlwZU9STSgpOiBEYXRhYmFzZUNvbmZpZ1R5cGVPcm0ge1xuXG4gICAgICBjb25zdCByZXN1bHQgPSBfLmNsb25lRGVlcCh0aGlzKSBhcyBEYXRhYmFzZUNvbmZpZztcbiAgICAgIGlmIChyZXN1bHQucmVjcmVhdGVNb2RlKSB7XG4gICAgICAgIGlmIChyZXN1bHQucmVjcmVhdGVNb2RlID09PSAnRFJPUF9EQitNSUdSQVRJT05TJykge1xuICAgICAgICAgIHJlc3VsdC5zeW5jaHJvbml6ZSA9IHRydWU7XG4gICAgICAgICAgcmVzdWx0LmRyb3BTY2hlbWEgPSB0cnVlO1xuICAgICAgICB9IGVsc2UgaWYgKHJlc3VsdC5yZWNyZWF0ZU1vZGUgPT09ICdQUkVTRVJWRV9EQVRBK01JR1JBVElPTlMnKSB7XG4gICAgICAgICAgcmVzdWx0LnN5bmNocm9uaXplID0gZmFsc2U7XG4gICAgICAgICAgcmVzdWx0LmRyb3BTY2hlbWEgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgZGVsZXRlIHJlc3VsdC5yZWNyZWF0ZU1vZGU7XG5cbiAgICAgIHJldHVybiByZXN1bHQgYXMgYW55O1xuXG4gICAgfVxuICB9XG5cblxuXG5cbiAgZXhwb3J0IHR5cGUgSVNlc3Npb24gPSB7XG4gICAgc2VjcmV0Pzogc3RyaW5nO1xuICAgIHNhdmVVbmluaXRpYWxpemVkPzogYm9vbGVhbjtcbiAgICAvKipcbiAgICAgKiBtYXggYWdlIG9mIHNlc3Npb25cbiAgICAgKi9cbiAgICBjb29raWVNYXhBZ2U/OiBudW1iZXI7XG4gICAgc2VjdXJlPzogYm9vbGVhbjtcbiAgICByZXNhdmU/OiBib29sZWFuO1xuICB9O1xuXG5cblxuICBleHBvcnQgdHlwZSBDb25uZWN0aW9uT3B0aW9uc0xvZ3MgPSB7XG4gICAgaHR0cD86IGJvb2xlYW47XG4gICAgcmVhbHRpbWU/OiBib29sZWFuO1xuICAgIGZyYW1ld29yaz86IGJvb2xlYW47XG4gICAgZGI/OiBib29sZWFuO1xuICAgIG1pZ3JhdGlvbnM/OiBib29sZWFuO1xuICB9O1xuICBleHBvcnQgaW50ZXJmYWNlIENvbnRleHRPcHRpb25zPFxuICAgIENPTlRFWFRTLFxuICAgIENPTlRST0xMRVJTLFxuICAgIEVOVElUSUVTLFxuICAgIFJFUE9TSVRPUklFUyxcbiAgICBQUk9WSURFUlMsXG4gICAgU1VCU0NSSUJFUlMsXG4gICAgTUlHUkFUSU9OUyxcbiAgPiB7XG4gICAgY29udGV4dE5hbWU6IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBob3N0L3BvcnQgZm9yIGluaXRpbmcgYmFja2VuZCBzZXJ2ZXJcbiAgICAgKi9cbiAgICBob3N0Pzogc3RyaW5nO1xuICAgIC8qKlxuICAgICAqIGZyb250ZW5kIGhvc3Qgb25seSBuZWVkZWQgd2hlbiB3ZSBhcmVcbiAgICAgKiB1c2luZyB3aXRoQ3JlZGVudGlhbHMgZm9yIGF4aW9zXG4gICAgICogYW5kIHNlc3Npb24gY29va2llXG4gICAgICogb3IgcmVhbHRpbWUgY29tbXVuaWNhdGlvblxuICAgICAqL1xuICAgIGZyb250ZW5kSG9zdD86IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBiYWNrZW5kIHdheSBvZiBjb21tdW5pY2F0aW9uXG4gICAgICogYmV0d2VlbiB0YW9uIGJhY2tlbmRzL3Byb2Nlc3Nlc1xuICAgICAqL1xuICAgIHJlbW90ZUhvc3Q/OiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogVXNlciBpcGMgZm9yIGNvbW11bmljYXRpb24gYmV0d2VlbiBCRS9GRVxuICAgICAqIHdoZW4gZWxlY3Ryb24gaXMgdXNlZCBhcyBhIHBsYXRmb3JtXG4gICAgICogRGVmYXVsdDogdHJ1ZVxuICAgICAqL1xuICAgIHVzZUlwY1doZW5FbGVjdHJvbj86IGJvb2xlYW47XG4gICAgY29udGV4dHM/OiBDT05URVhUUztcbiAgICBjb250cm9sbGVycz86IENPTlRST0xMRVJTO1xuICAgIGVudGl0aWVzPzogRU5USVRJRVM7XG4gICAgcmVwb3NpdG9yaWVzPzogUkVQT1NJVE9SSUVTO1xuICAgIHByb3ZpZGVycz86IFBST1ZJREVSUztcbiAgICBzdWJzY3JpYmVycz86IFNVQlNDUklCRVJTO1xuICAgIG1pZ3JhdGlvbnM/OiBNSUdSQVRJT05TO1xuICAgIHNlc3Npb24/OiBJU2Vzc2lvbjtcbiAgICBza2lwV3JpdGluZ1NlcnZlclJvdXRlcz86IGJvb2xlYW47XG4gICAgcHJvZHVjdGlvbk1vZGU/OiBib29sZWFuO1xuICAgIGFic3RyYWN0PzogYm9vbGVhbjtcbiAgICBsb2dzPzogYm9vbGVhbiB8IENvbm5lY3Rpb25PcHRpb25zTG9ncztcbiAgICBkYXRhYmFzZT86IGJvb2xlYW4gfCBQYXJ0aWFsPERhdGFiYXNlQ29uZmlnPjtcbiAgICBkaXNhYmxlZFJlYWx0aW1lPzogYm9vbGVhbjtcbiAgICBodHRwcz86IHtcbiAgICAgIGtleTogc3RyaW5nO1xuICAgICAgY2VydDogc3RyaW5nO1xuICAgIH07XG4gICAgcHVibGljQXNzZXRzPzogeyBzZXJ2ZXJQYXRoOiBzdHJpbmc7IGxvY2F0aW9uT25EaXNrOiBzdHJpbmcgfVtdO1xuICAgIG1pZGRsZXdhcmVzPzogTWlkZGxld2FyZVR5cGVbXTtcbiAgfVxuXG5cblxuICBleHBvcnQgY2xhc3MgRGVjb3JhdG9yQWJzdHJhY3RPcHQge1xuICAgIGNsYXNzTmFtZTogc3RyaW5nO1xuICB9XG5cblxuXG4gIGV4cG9ydCBjbGFzcyBQYXJhbUNvbmZpZyB7XG4gICAgcGFyYW1OYW1lOiBzdHJpbmc7XG4gICAgcGFyYW1UeXBlOiBDb3JlTW9kZWxzLlBhcmFtVHlwZTtcbiAgICBpbmRleDogbnVtYmVyO1xuICAgIGRlZmF1bHRUeXBlOiBhbnk7XG4gICAgZXhwaXJlSW5TZWNvbmRzPzogbnVtYmVyO1xuICB9XG5cblxuXG4gIGV4cG9ydCBjbGFzcyBNZXRob2RDb25maWcge1xuICAgIG1ldGhvZE5hbWU6IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBwYXRoIGlzIGdsb2JhbCBpbiBleHByZXNzIGFwcFxuICAgICAqL1xuICAgIGdsb2JhbD86IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogb3ZlcnJpZGUgZGVmYXVsdCBjb250ZW50IHR5cGVcbiAgICAgKi9cbiAgICBjb250ZW50VHlwZT86IGFueTtcbiAgICAvKipcbiAgICAgKiBvdmVycmlkZSBkZWZhdWx0IGF4aXNvIHJlc3BvbnNlIHR5cGVcbiAgICAgKi9cbiAgICByZXNwb25zZVR5cGU/OiBhbnk7XG4gICAgcGF0aDogc3RyaW5nO1xuICAgIGRlc2NyaXB0b3I6IFByb3BlcnR5RGVzY3JpcHRvcjtcbiAgICB0eXBlOiBDb3JlTW9kZWxzLkh0dHBNZXRob2Q7XG5cbiAgICByZXF1ZXN0SGFuZGxlcjogYW55O1xuXG4gICAgcGFyYW1ldGVyczogeyBbcGFyYW1OYW1lOiBzdHJpbmddOiBQYXJhbUNvbmZpZyB9ID0ge307XG4gIH1cblxuXG5cbiAgZXhwb3J0IGNsYXNzIENvbnRyb2xsZXJDb25maWcgZXh0ZW5kcyBEZWNvcmF0b3JBYnN0cmFjdE9wdCB7XG4gICAgcmVhbHRpbWU/OiBib29sZWFuO1xuICAgIHBhdGg6IHN0cmluZztcbiAgICB1bmlxdWVLZXk/OiBzdHJpbmc7XG4gICAgbWV0aG9kczogeyBbbWV0aG9kTmFtZTogc3RyaW5nXTogTWV0aG9kQ29uZmlnIH0gPSB7fTtcbiAgfVxuXG5cblxuICBleHBvcnQgY2xhc3MgUnVudGltZUNvbnRyb2xsZXJDb25maWcgZXh0ZW5kcyBDb250cm9sbGVyQ29uZmlnIHtcbiAgICBjYWxjdWxhdGVkUGF0aD86IHN0cmluZztcbiAgICBicm93c2VyVHJhbnNmb3JtRm4/OiAoZW50aXR5OiBhbnkpID0+IGFueTtcbiAgfVxuXG5cblxuICBleHBvcnQgbmFtZXNwYWNlIEh0dHAge1xuICAgIGV4cG9ydCBpbXBvcnQgUmVzdCA9IE1vZGVsc05nMlJlc3Q7XG5cbiAgICBleHBvcnQgdHlwZSBDb250ZXh0RU5EUE9JTlQgPSB7IHRhcmdldDogRnVuY3Rpb247IGluaXRGTjogRnVuY3Rpb24gfTtcblxuICAgIGV4cG9ydCB0eXBlIEZvcm1seUZyb21UeXBlID0gJ21hdGVyaWFsJyB8ICdib290c3RyYXAnO1xuXG4gICAgZXhwb3J0IHR5cGUgRXhwcmVzc0NvbnRleHQ8VD4gPSAoXG4gICAgICByZXE6IEV4cHJlc3NSZXF1ZXN0LFxuICAgICAgcmVzOiBFeHByZXNzUmVzcG9uc2UsXG4gICAgKSA9PiBUO1xuXG4gICAgZXhwb3J0IHR5cGUgU3luY1Jlc3BvbnNlPFQ+ID0gc3RyaW5nIHwgVDtcblxuICAgIGV4cG9ydCB0eXBlIFJlc3BvbnNlRnVuY09wdDxUPiA9IHtcbiAgICAgIGxpbWl0U2l6ZT86IChcbiAgICAgICAgZW50aWVzOiBGdW5jdGlvbiB8IEZ1bmN0aW9uW10sXG4gICAgICAgIGluY2x1ZGU6IHN0cmluZ1tdLFxuICAgICAgICBleGNsdWRlOiBzdHJpbmdbXSxcbiAgICAgICkgPT4gdm9pZDtcbiAgICB9O1xuXG4gICAgZXhwb3J0IHR5cGUgU3luY1Jlc3BvbnNlRnVuYzxUPiA9IChcbiAgICAgIG9wdGlvbnM/OiBSZXNwb25zZUZ1bmNPcHQ8VD4sXG4gICAgKSA9PiBTeW5jUmVzcG9uc2U8VD47XG4gICAgZXhwb3J0IHR5cGUgTWl4UmVzcG9uc2U8VD4gPSBTeW5jUmVzcG9uc2U8VD4gfCBFeHByZXNzQ29udGV4dDxUPjtcblxuICAgIGV4cG9ydCBpbnRlcmZhY2UgQ2xpZW50QWN0aW9uPFQ+IHtcbiAgICAgIHJlY2VpdmVkPzogUmVzdC5Qcm9taXNlT2JzZXJ2YWJsZU1peDxSZXN0Lkh0dHBSZXNwb25zZTxUPj47XG4gICAgfVxuXG4gICAgZXhwb3J0IGludGVyZmFjZSBBc3luY1Jlc3BvbnNlPFQ+IHtcbiAgICAgIChcbiAgICAgICAgcmVxPzogRXhwcmVzc1JlcXVlc3QsXG4gICAgICAgIHJlcz86IEV4cHJlc3NSZXNwb25zZSxcbiAgICAgICk6IFByb21pc2U8U3luY1Jlc3BvbnNlPFQ+IHwgU3luY1Jlc3BvbnNlRnVuYzxUPj47XG4gICAgfVxuXG4gICAgZXhwb3J0IHR5cGUgUmVzcG9uc2U8VCA9IHN0cmluZz4gPSBBc3luY1Jlc3BvbnNlPFQ+ICYgQ2xpZW50QWN0aW9uPFQ+O1xuXG4gICAgZXhwb3J0IGNsYXNzIEVycm9ycyB7XG4gICAgICBwdWJsaWMgdG9TdHJpbmcgPSAoKTogc3RyaW5nID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWVzc2FnZTtcbiAgICAgIH07XG5cbiAgICAgIHByaXZhdGUgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBtZXNzYWdlOiBzdHJpbmcsXG4gICAgICAgIHByaXZhdGUgY29kZTogTW9kZWxzTmcyUmVzdC5IdHRwQ29kZSA9IDQwMCxcbiAgICAgICkge31cblxuICAgICAgcHJpdmF0ZSBzdGF0aWMgY3JlYXRlKFxuICAgICAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgICAgIGNvZGU6IE1vZGVsc05nMlJlc3QuSHR0cENvZGUgPSA0MDAsXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIG5ldyBFcnJvcnMobWVzc2FnZSwgY29kZSk7XG4gICAgICB9XG5cbiAgICAgIHB1YmxpYyBzdGF0aWMgZW50aXR5Tm90Rm91bmQoZW50aXR5PzogRnVuY3Rpb24pIHtcbiAgICAgICAgcmV0dXJuIEVycm9ycy5jcmVhdGUoXG4gICAgICAgICAgYEVudGl0eSAke0NsYXNzSGVscGVycy5nZXROYW1lKGVudGl0eSl9IG5vdCBmb3VuZGAsXG4gICAgICAgICk7XG4gICAgICB9XG5cbiAgICAgIHB1YmxpYyBzdGF0aWMgY3VzdG9tKFxuICAgICAgICBtZXNzYWdlOiBzdHJpbmcsXG4gICAgICAgIGNvZGU6IE1vZGVsc05nMlJlc3QuSHR0cENvZGUgPSA0MDAsXG4gICAgICApIHtcbiAgICAgICAgcmV0dXJuIEVycm9ycy5jcmVhdGUobWVzc2FnZSwgY29kZSk7XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICBleHBvcnQgaW50ZXJmYWNlIEF1dGhDYWxsQmFjayB7XG4gICAgICAobWV0aG9kUmVmZXJlbmNlOiBGdW5jdGlvbik6IFJlcXVlc3RIYW5kbGVyO1xuICAgIH1cblxuXG4gIH1cblxuXG5cbiAgZXhwb3J0IGludGVyZmFjZSBTdGFydFBhcmFtcyB7XG4gICAgcG9ydDogbnVtYmVyO1xuICAgIGFyZ3M6IHN0cmluZ1tdO1xuICAgIG9ubHlNaWdyYXRpb25SdW4/OiBib29sZWFuO1xuICAgIG9ubHlNaWdyYXRpb25SZXZlcnRUb1RpbWVzdGFtcD86IG51bWJlcjtcbiAgfVxuXG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24gbGliL21vZGVscy50cyJdfQ==
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import * as tsorm from 'taon-typeorm/websql';
|
|
2
|
-
import { _ } from 'tnp-core/websql';
|
|
3
|
-
export var Orm;
|
|
4
|
-
(function (Orm) {
|
|
5
|
-
Orm.Repository = tsorm.Repository;
|
|
6
|
-
Orm.Connection = tsorm.Connection;
|
|
7
|
-
let ListenEvent;
|
|
8
|
-
(function (ListenEvent) {
|
|
9
|
-
ListenEvent.AfterInsert = tsorm.AfterInsert;
|
|
10
|
-
ListenEvent.AfterLoad = tsorm.AfterLoad;
|
|
11
|
-
ListenEvent.AfterRecover = tsorm.AfterRecover;
|
|
12
|
-
ListenEvent.AfterRemove = tsorm.AfterRemove;
|
|
13
|
-
ListenEvent.AfterSoftRemove = tsorm.AfterSoftRemove;
|
|
14
|
-
ListenEvent.AfterUpdate = tsorm.AfterUpdate;
|
|
15
|
-
ListenEvent.BeforeInsert = tsorm.BeforeInsert;
|
|
16
|
-
ListenEvent.BeforeRecover = tsorm.BeforeRecover;
|
|
17
|
-
ListenEvent.BeforeRemove = tsorm.BeforeRemove;
|
|
18
|
-
ListenEvent.BeforeSoftRemove = tsorm.BeforeSoftRemove;
|
|
19
|
-
ListenEvent.BeforeUpdate = tsorm.BeforeUpdate;
|
|
20
|
-
})(ListenEvent = Orm.ListenEvent || (Orm.ListenEvent = {}));
|
|
21
|
-
let Tree;
|
|
22
|
-
(function (Tree) {
|
|
23
|
-
Tree.Children = tsorm.TreeChildren;
|
|
24
|
-
Tree.Parent = tsorm.TreeParent;
|
|
25
|
-
})(Tree = Orm.Tree || (Orm.Tree = {}));
|
|
26
|
-
let Column;
|
|
27
|
-
(function (Column) {
|
|
28
|
-
Column.Generated = tsorm.PrimaryGeneratedColumn;
|
|
29
|
-
Column.Primary = tsorm.PrimaryColumn;
|
|
30
|
-
Column.Index = tsorm.Index;
|
|
31
|
-
Column.CreateDate = tsorm.CreateDateColumn;
|
|
32
|
-
Column.UpdateDate = tsorm.UpdateDateColumn;
|
|
33
|
-
Column.DeleteDate = tsorm.DeleteDateColumn;
|
|
34
|
-
Column.Custom = tsorm.Column;
|
|
35
|
-
/**
|
|
36
|
-
* 100 characters varchar
|
|
37
|
-
*/
|
|
38
|
-
Column.String = (defaultValue = null) => tsorm.Column({ type: 'varchar', length: 100, nullable: _.isNil(defaultValue), default: defaultValue });
|
|
39
|
-
/**
|
|
40
|
-
* 500 characters varchar
|
|
41
|
-
*/
|
|
42
|
-
Column.String500 = (defaultValue = null) => tsorm.Column({ type: 'varchar', length: 500, nullable: _.isNil(defaultValue), default: defaultValue });
|
|
43
|
-
Column.Number = () => tsorm.Column({ type: 'int', nullable: true });
|
|
44
|
-
Column.DecimalNumber = () => tsorm.Column({ type: 'float', nullable: true });
|
|
45
|
-
Column.SimpleJson = () => tsorm.Column({ type: 'simple-json', nullable: true });
|
|
46
|
-
Column.Boolean = (defaultValue) => tsorm.Column({ type: 'boolean', default: defaultValue });
|
|
47
|
-
Column.Version = tsorm.VersionColumn;
|
|
48
|
-
Column.Virtual = tsorm.VirtualColumn;
|
|
49
|
-
})(Column = Orm.Column || (Orm.Column = {}));
|
|
50
|
-
let Join;
|
|
51
|
-
(function (Join) {
|
|
52
|
-
Join.Table = tsorm.JoinTable;
|
|
53
|
-
Join.Column = tsorm.JoinColumn;
|
|
54
|
-
})(Join = Orm.Join || (Orm.Join = {}));
|
|
55
|
-
let Relation;
|
|
56
|
-
(function (Relation) {
|
|
57
|
-
Relation.OneToMany = tsorm.OneToMany;
|
|
58
|
-
Relation.OneToOne = tsorm.OneToOne;
|
|
59
|
-
Relation.ManyToMany = tsorm.ManyToMany;
|
|
60
|
-
Relation.ManyToOne = tsorm.ManyToOne;
|
|
61
|
-
})(Relation = Orm.Relation || (Orm.Relation = {}));
|
|
62
|
-
})(Orm || (Orm = {}));
|
|
63
|
-
;
|
|
64
|
-
({}); // @--end-of-file-for-module=taon lib/orm.ts
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3Qtd2Vic3FsL3Rhb24vcHJvamVjdHMvdGFvbi9zcmMvbGliL29ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEtBQUssS0FBSyxNQUFNLHFCQUFxQixDQUFDO0FBRTdDLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUdwQyxNQUFNLEtBQVcsR0FBRyxDQXlFbkI7QUF6RUQsV0FBaUIsR0FBRztJQUVMLGNBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDO0lBQzdCLGNBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDO0lBQzVDLElBQWlCLFdBQVcsQ0FZM0I7SUFaRCxXQUFpQixXQUFXO1FBQ1osdUJBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDO1FBQ2hDLHFCQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUM1Qix3QkFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDbEMsdUJBQVcsR0FBRyxLQUFLLENBQUMsV0FBVyxDQUFDO1FBQ2hDLDJCQUFlLEdBQUcsS0FBSyxDQUFDLGVBQWUsQ0FBQztRQUN4Qyx1QkFBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLENBQUM7UUFDaEMsd0JBQVksR0FBRyxLQUFLLENBQUMsWUFBWSxDQUFDO1FBQ2xDLHlCQUFhLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQztRQUNwQyx3QkFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDbEMsNEJBQWdCLEdBQUcsS0FBSyxDQUFDLGdCQUFnQixDQUFDO1FBQzFDLHdCQUFZLEdBQUcsS0FBSyxDQUFDLFlBQVksQ0FBQztJQUNsRCxDQUFDLEVBWmdCLFdBQVcsR0FBWCxlQUFXLEtBQVgsZUFBVyxRQVkzQjtJQUVELElBQWlCLElBQUksQ0FHcEI7SUFIRCxXQUFpQixJQUFJO1FBQ0wsYUFBUSxHQUFHLEtBQUssQ0FBQyxZQUFZLENBQUM7UUFDOUIsV0FBTSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUM7SUFDMUMsQ0FBQyxFQUhnQixJQUFJLEdBQUosUUFBSSxLQUFKLFFBQUksUUFHcEI7SUFDRCxJQUFpQixNQUFNLENBc0N0QjtJQXRDRCxXQUFpQixNQUFNO1FBQ1AsZ0JBQVMsR0FBRyxLQUFLLENBQUMsc0JBQXNCLENBQUM7UUFDekMsY0FBTyxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7UUFDOUIsWUFBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDcEIsaUJBQVUsR0FBRyxLQUFLLENBQUMsZ0JBQWdCLENBQUM7UUFDcEMsaUJBQVUsR0FBRyxLQUFLLENBQUMsZ0JBQWdCLENBQUM7UUFDcEMsaUJBQVUsR0FBRyxLQUFLLENBQUMsZ0JBQWdCLENBQUM7UUFDcEMsYUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFFcEM7O1dBRUc7UUFDVSxhQUFNLEdBQUcsQ0FBYSxlQUFpQixJQUFJLEVBQUUsRUFBRSxDQUMxRCxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxFQUFLLE9BQU8sRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO1FBRTVHOztXQUVHO1FBQ1UsZ0JBQVMsR0FBRyxDQUFhLGVBQWlCLElBQUksRUFBRSxFQUFFLENBQzdELEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLEVBQUssT0FBTyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7UUFFL0YsYUFBTSxHQUFHLEdBQUcsRUFBRSxDQUN6QixLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRyxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVwQyxvQkFBYSxHQUFHLEdBQUcsRUFBRSxDQUNoQyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRyxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUd0QyxpQkFBVSxHQUFHLEdBQUcsRUFBRSxDQUM3QixLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUUzQyxjQUFPLEdBQUcsQ0FBQyxZQUFxQixFQUFFLEVBQUUsQ0FDL0MsS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFlBQVksRUFBRSxDQUFDLENBQUM7UUFJN0MsY0FBTyxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7UUFDOUIsY0FBTyxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7SUFDOUMsQ0FBQyxFQXRDZ0IsTUFBTSxHQUFOLFVBQU0sS0FBTixVQUFNLFFBc0N0QjtJQUVELElBQWlCLElBQUksQ0FHcEI7SUFIRCxXQUFpQixJQUFJO1FBQ0wsVUFBSyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUM7UUFDeEIsV0FBTSxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUM7SUFDMUMsQ0FBQyxFQUhnQixJQUFJLEdBQUosUUFBSSxLQUFKLFFBQUksUUFHcEI7SUFDRCxJQUFpQixRQUFRLENBS3hCO0lBTEQsV0FBaUIsUUFBUTtRQUNULGtCQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztRQUM1QixpQkFBUSxHQUFHLEtBQUssQ0FBQyxRQUFRLENBQUM7UUFDMUIsbUJBQVUsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDO1FBQzlCLGtCQUFTLEdBQUcsS0FBSyxDQUFDLFNBQVMsQ0FBQztJQUM1QyxDQUFDLEVBTGdCLFFBQVEsR0FBUixZQUFRLEtBQVIsWUFBUSxRQUt4QjtBQUVILENBQUMsRUF6RWdCLEdBQUcsS0FBSCxHQUFHLFFBeUVuQjtBQUlBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsNENBQTRDIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuaW1wb3J0ICogYXMgdHNvcm0gZnJvbSAndGFvbi10eXBlb3JtL3dlYnNxbCc7XG5cbmltcG9ydCB7IF8gfSBmcm9tICd0bnAtY29yZS93ZWJzcWwnO1xuXG5cbmV4cG9ydCBuYW1lc3BhY2UgT3JtIHtcblxuICBleHBvcnQgY29uc3QgUmVwb3NpdG9yeSA9IHRzb3JtLlJlcG9zaXRvcnk7XG4gIGV4cG9ydCBpbXBvcnQgQ29ubmVjdGlvbiA9IHRzb3JtLkNvbm5lY3Rpb247XG4gIGV4cG9ydCBuYW1lc3BhY2UgTGlzdGVuRXZlbnQge1xuICAgIGV4cG9ydCBpbXBvcnQgQWZ0ZXJJbnNlcnQgPSB0c29ybS5BZnRlckluc2VydDtcbiAgICBleHBvcnQgaW1wb3J0IEFmdGVyTG9hZCA9IHRzb3JtLkFmdGVyTG9hZDtcbiAgICBleHBvcnQgaW1wb3J0IEFmdGVyUmVjb3ZlciA9IHRzb3JtLkFmdGVyUmVjb3ZlcjtcbiAgICBleHBvcnQgaW1wb3J0IEFmdGVyUmVtb3ZlID0gdHNvcm0uQWZ0ZXJSZW1vdmU7XG4gICAgZXhwb3J0IGltcG9ydCBBZnRlclNvZnRSZW1vdmUgPSB0c29ybS5BZnRlclNvZnRSZW1vdmU7XG4gICAgZXhwb3J0IGltcG9ydCBBZnRlclVwZGF0ZSA9IHRzb3JtLkFmdGVyVXBkYXRlO1xuICAgIGV4cG9ydCBpbXBvcnQgQmVmb3JlSW5zZXJ0ID0gdHNvcm0uQmVmb3JlSW5zZXJ0O1xuICAgIGV4cG9ydCBpbXBvcnQgQmVmb3JlUmVjb3ZlciA9IHRzb3JtLkJlZm9yZVJlY292ZXI7XG4gICAgZXhwb3J0IGltcG9ydCBCZWZvcmVSZW1vdmUgPSB0c29ybS5CZWZvcmVSZW1vdmU7XG4gICAgZXhwb3J0IGltcG9ydCBCZWZvcmVTb2Z0UmVtb3ZlID0gdHNvcm0uQmVmb3JlU29mdFJlbW92ZTtcbiAgICBleHBvcnQgaW1wb3J0IEJlZm9yZVVwZGF0ZSA9IHRzb3JtLkJlZm9yZVVwZGF0ZTtcbiAgfVxuXG4gIGV4cG9ydCBuYW1lc3BhY2UgVHJlZSB7XG4gICAgZXhwb3J0IGltcG9ydCBDaGlsZHJlbiA9IHRzb3JtLlRyZWVDaGlsZHJlbjtcbiAgICBleHBvcnQgaW1wb3J0IFBhcmVudCA9IHRzb3JtLlRyZWVQYXJlbnQ7XG4gIH1cbiAgZXhwb3J0IG5hbWVzcGFjZSBDb2x1bW4ge1xuICAgIGV4cG9ydCBpbXBvcnQgR2VuZXJhdGVkID0gdHNvcm0uUHJpbWFyeUdlbmVyYXRlZENvbHVtbjtcbiAgICBleHBvcnQgaW1wb3J0IFByaW1hcnkgPSB0c29ybS5QcmltYXJ5Q29sdW1uO1xuICAgIGV4cG9ydCBpbXBvcnQgSW5kZXggPSB0c29ybS5JbmRleDtcbiAgICBleHBvcnQgaW1wb3J0IENyZWF0ZURhdGUgPSB0c29ybS5DcmVhdGVEYXRlQ29sdW1uO1xuICAgIGV4cG9ydCBpbXBvcnQgVXBkYXRlRGF0ZSA9IHRzb3JtLlVwZGF0ZURhdGVDb2x1bW47XG4gICAgZXhwb3J0IGltcG9ydCBEZWxldGVEYXRlID0gdHNvcm0uRGVsZXRlRGF0ZUNvbHVtbjtcbiAgICBleHBvcnQgaW1wb3J0IEN1c3RvbSA9IHRzb3JtLkNvbHVtbjtcblxuICAgIC8qKlxuICAgICAqIDEwMCBjaGFyYWN0ZXJzIHZhcmNoYXJcbiAgICAgKi9cbiAgICBleHBvcnQgY29uc3QgU3RyaW5nID0gPFQgPSBzdHJpbmc+KGRlZmF1bHRWYWx1ZTpUID0gbnVsbCkgPT5cbiAgICAgIHRzb3JtLkNvbHVtbih7IHR5cGU6ICd2YXJjaGFyJywgbGVuZ3RoOiAxMDAsIG51bGxhYmxlOiBfLmlzTmlsKGRlZmF1bHRWYWx1ZSkgICAsIGRlZmF1bHQ6IGRlZmF1bHRWYWx1ZSB9KTtcblxuICAgIC8qKlxuICAgICAqIDUwMCBjaGFyYWN0ZXJzIHZhcmNoYXJcbiAgICAgKi9cbiAgICBleHBvcnQgY29uc3QgU3RyaW5nNTAwID0gPFQgPSBzdHJpbmc+KGRlZmF1bHRWYWx1ZTpUID0gbnVsbCkgPT5cbiAgICAgIHRzb3JtLkNvbHVtbih7IHR5cGU6ICd2YXJjaGFyJywgbGVuZ3RoOiA1MDAsIG51bGxhYmxlOiBfLmlzTmlsKGRlZmF1bHRWYWx1ZSkgICAsIGRlZmF1bHQ6IGRlZmF1bHRWYWx1ZSB9KTtcblxuICAgIGV4cG9ydCBjb25zdCBOdW1iZXIgPSAoKSA9PlxuICAgICAgdHNvcm0uQ29sdW1uKHsgdHlwZTogJ2ludCcsICBudWxsYWJsZTogdHJ1ZSB9KTtcblxuICAgIGV4cG9ydCBjb25zdCBEZWNpbWFsTnVtYmVyID0gKCkgPT5cbiAgICAgIHRzb3JtLkNvbHVtbih7IHR5cGU6ICdmbG9hdCcsICBudWxsYWJsZTogdHJ1ZSB9KTtcblxuXG4gICAgZXhwb3J0IGNvbnN0IFNpbXBsZUpzb24gPSAoKSA9PlxuICAgICAgdHNvcm0uQ29sdW1uKHsgdHlwZTogJ3NpbXBsZS1qc29uJywgbnVsbGFibGU6IHRydWUgfSk7XG5cbiAgICBleHBvcnQgY29uc3QgQm9vbGVhbiA9IChkZWZhdWx0VmFsdWU6IGJvb2xlYW4pID0+XG4gICAgICB0c29ybS5Db2x1bW4oeyB0eXBlOiAnYm9vbGVhbicsIGRlZmF1bHQ6IGRlZmF1bHRWYWx1ZSB9KTtcblxuXG5cbiAgICBleHBvcnQgaW1wb3J0IFZlcnNpb24gPSB0c29ybS5WZXJzaW9uQ29sdW1uO1xuICAgIGV4cG9ydCBpbXBvcnQgVmlydHVhbCA9IHRzb3JtLlZpcnR1YWxDb2x1bW47XG4gIH1cblxuICBleHBvcnQgbmFtZXNwYWNlIEpvaW4ge1xuICAgIGV4cG9ydCBpbXBvcnQgVGFibGUgPSB0c29ybS5Kb2luVGFibGU7XG4gICAgZXhwb3J0IGltcG9ydCBDb2x1bW4gPSB0c29ybS5Kb2luQ29sdW1uO1xuICB9XG4gIGV4cG9ydCBuYW1lc3BhY2UgUmVsYXRpb24ge1xuICAgIGV4cG9ydCBpbXBvcnQgT25lVG9NYW55ID0gdHNvcm0uT25lVG9NYW55O1xuICAgIGV4cG9ydCBpbXBvcnQgT25lVG9PbmUgPSB0c29ybS5PbmVUb09uZTtcbiAgICBleHBvcnQgaW1wb3J0IE1hbnlUb01hbnkgPSB0c29ybS5NYW55VG9NYW55O1xuICAgIGV4cG9ydCBpbXBvcnQgTWFueVRvT25lID0gdHNvcm0uTWFueVRvT25lO1xuICB9XG5cbn1cblxuXG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10YW9uIGxpYi9vcm0udHMiXX0=
|
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
import { _ } from 'tnp-core/websql';
|
|
2
|
-
import { Symbols } from '../symbols';
|
|
3
|
-
import { Observable } from 'rxjs';
|
|
4
|
-
import { ClassHelpers } from '../helpers/class-helpers';
|
|
5
|
-
import { RealtimeSubsManager } from './realtime-subs-manager';
|
|
6
|
-
export class RealtimeClient {
|
|
7
|
-
constructor(core) {
|
|
8
|
-
this.core = core;
|
|
9
|
-
this.subsManagers = {};
|
|
10
|
-
this.core = core;
|
|
11
|
-
if (!core.ctx.disabledRealtime) {
|
|
12
|
-
this.init();
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
init() {
|
|
16
|
-
const nspPath = {
|
|
17
|
-
global: this.core.pathFor(),
|
|
18
|
-
realtime: this.core.pathFor(Symbols.REALTIME.NAMESPACE(this.core.ctx.contextName)),
|
|
19
|
-
};
|
|
20
|
-
this.core.ctx.logRealtime &&
|
|
21
|
-
console.info('[CLIENT] NAMESPACE GLOBAL ', nspPath.global.href + ` host: ${this.core.ctx.host}`);
|
|
22
|
-
this.core.ctx.logRealtime &&
|
|
23
|
-
console.info('[CLIENT] NAMESPACE REALTIME', nspPath.realtime.href + ` host: ${this.core.ctx.host}`);
|
|
24
|
-
this.core.conectSocketFE = this.core.strategy.ioClient(nspPath.global.origin, {
|
|
25
|
-
path: nspPath.global.pathname,
|
|
26
|
-
});
|
|
27
|
-
if (this.core.conectSocketFE.on) {
|
|
28
|
-
this.core.conectSocketFE.on('connect', () => {
|
|
29
|
-
this.core.ctx.logRealtime &&
|
|
30
|
-
console.info(`[CLIENT] connected to GLOBAL namespace ${nspPath.global.pathname}` +
|
|
31
|
-
` of host: ${this.core.ctx.host}`);
|
|
32
|
-
});
|
|
33
|
-
}
|
|
34
|
-
this.core.socketFE = this.core.strategy.ioClient(nspPath.realtime.origin, {
|
|
35
|
-
path: nspPath.realtime.pathname,
|
|
36
|
-
});
|
|
37
|
-
if (this.core.socketFE.on) {
|
|
38
|
-
this.core.socketFE.on('connect', () => {
|
|
39
|
-
this.core.ctx.logRealtime &&
|
|
40
|
-
console.info(`[CLIENT] connected to REALTIME namespace ${nspPath.realtime.pathname}` +
|
|
41
|
-
` host: ${this.core.ctx.host}`);
|
|
42
|
-
});
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
/**
|
|
46
|
-
* Changes trigger on backend needs to be done manually.. example code:
|
|
47
|
-
*
|
|
48
|
-
* ...
|
|
49
|
-
* Context.Realtime.Server.TrigggerEntityChanges(myEntityInstance);
|
|
50
|
-
* ...
|
|
51
|
-
*/
|
|
52
|
-
listenChangesEntity(entityClassFn, idOrUniqValue, options) {
|
|
53
|
-
options = options || {};
|
|
54
|
-
const { property, customEvent } = options;
|
|
55
|
-
const className = !customEvent && ClassHelpers.getName(entityClassFn);
|
|
56
|
-
if (_.isString(property)) {
|
|
57
|
-
if (property.trim() === '') {
|
|
58
|
-
throw new Error(`[Taon][listenChangesEntity.. incorect property '' for ${className}`);
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
return new Observable(observer => {
|
|
62
|
-
if (this.core.ctx.disabledRealtime) {
|
|
63
|
-
console.error(`[Taon][realtime rxjs] remove taon config flag:
|
|
64
|
-
|
|
65
|
-
...
|
|
66
|
-
disabledRealtime: true
|
|
67
|
-
...
|
|
68
|
-
|
|
69
|
-
to use socket realtime connection;
|
|
70
|
-
`);
|
|
71
|
-
return () => {
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
let roomName;
|
|
75
|
-
if (customEvent) {
|
|
76
|
-
roomName = Symbols.REALTIME.ROOM_NAME_CUSTOM(this.core.ctx.contextName, customEvent);
|
|
77
|
-
}
|
|
78
|
-
else {
|
|
79
|
-
roomName = _.isString(property)
|
|
80
|
-
? Symbols.REALTIME.ROOM_NAME_UPDATE_ENTITY_PROPERTY(this.core.ctx.contextName, className, property, idOrUniqValue)
|
|
81
|
-
: Symbols.REALTIME.ROOM_NAME_UPDATE_ENTITY(this.core.ctx.contextName, className, idOrUniqValue);
|
|
82
|
-
}
|
|
83
|
-
const roomSubOptions = {
|
|
84
|
-
core: this.core,
|
|
85
|
-
property,
|
|
86
|
-
roomName,
|
|
87
|
-
customEvent,
|
|
88
|
-
};
|
|
89
|
-
const subManagerId = this.getUniqueIdentifierForConnection(roomSubOptions);
|
|
90
|
-
if (!this.subsManagers[subManagerId]) {
|
|
91
|
-
this.subsManagers[subManagerId] = new RealtimeSubsManager(roomSubOptions);
|
|
92
|
-
}
|
|
93
|
-
const inst = this.subsManagers[subManagerId];
|
|
94
|
-
inst.add(observer);
|
|
95
|
-
inst.startListenIfNotStarted(this.core.socketFE);
|
|
96
|
-
return () => {
|
|
97
|
-
inst.remove(observer);
|
|
98
|
-
};
|
|
99
|
-
});
|
|
100
|
-
}
|
|
101
|
-
listenChangesEntityTable(entityClassFn) {
|
|
102
|
-
const className = ClassHelpers.getName(entityClassFn);
|
|
103
|
-
return this.listenChangesEntity(entityClassFn, void 0, {
|
|
104
|
-
customEvent: Symbols.REALTIME.TABLE_CHANGE(this.core.ctx.contextName, className),
|
|
105
|
-
});
|
|
106
|
-
}
|
|
107
|
-
/**
|
|
108
|
-
* Changes trigger on backend needs to be done manually.. example code:
|
|
109
|
-
*
|
|
110
|
-
* ...
|
|
111
|
-
* Context.Realtime.Server.TrigggerEntityChanges(myEntityInstance);
|
|
112
|
-
* // or
|
|
113
|
-
* Context.Realtime.Server.TrigggerEntityPropertyChanges(myEntityInstance,{ property: 'geolocationX' });
|
|
114
|
-
* ...
|
|
115
|
-
*/
|
|
116
|
-
listenChangesEntityObj(entity, options) {
|
|
117
|
-
const classFn = ClassHelpers.getClassFnFromObject(entity);
|
|
118
|
-
const uniqueKey = ClassHelpers.getUniqueKey(classFn);
|
|
119
|
-
return this.listenChangesEntity(classFn, entity[uniqueKey], options);
|
|
120
|
-
}
|
|
121
|
-
listenChangesCustomEvent(customEvent) {
|
|
122
|
-
return this.listenChangesEntity(void 0, void 0, {
|
|
123
|
-
customEvent,
|
|
124
|
-
});
|
|
125
|
-
}
|
|
126
|
-
/**
|
|
127
|
-
* Trigger custom event on backend
|
|
128
|
-
* @param customEvent global event name
|
|
129
|
-
* @param dataToPush
|
|
130
|
-
*/
|
|
131
|
-
triggerCustomEvent(customEvent, dataToPush) {
|
|
132
|
-
this.core.socketFE.emit(customEvent, dataToPush);
|
|
133
|
-
}
|
|
134
|
-
getUniqueIdentifierForConnection(options) {
|
|
135
|
-
const url = new URL(options.core.ctx.host);
|
|
136
|
-
return `${this.core.ctx.contextName}:${url.origin}|${options.roomName}|${options.property}|${options.customEvent}`;
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
;
|
|
140
|
-
({}); // @--end-of-file-for-module=taon lib/realtime/realtime-client.ts
|
|
141
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhbHRpbWUtY2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3Qtd2Vic3FsL3Rhb24vcHJvamVjdHMvdGFvbi9zcmMvbGliL3JlYWx0aW1lL3JlYWx0aW1lLWNsaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFcEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQztBQUNyQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQU05RCxNQUFNLE9BQU8sY0FBYztJQUV6QixZQUFvQixJQUFrQjtRQUFsQixTQUFJLEdBQUosSUFBSSxDQUFjO1FBRDlCLGlCQUFZLEdBQTRDLEVBQUUsQ0FBQztRQUVqRSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBRS9CLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUVkLENBQUM7SUFDSCxDQUFDO0lBR08sSUFBSTtRQUVWLE1BQU0sT0FBTyxHQUFHO1lBQ2QsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQzNCLFFBQVEsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FDekIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQ3REO1NBQ0YsQ0FBQztRQUdGLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVc7WUFDdkIsT0FBTyxDQUFDLElB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QUFXLEVBQUUsVUFBVSxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUlPLGdDQUFnQyxDQUFDLE9BQXNDO1FBQzdFLE1BQU0sR0FBRyxHQUFHLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNDLE9BQU8sR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxXQUFXLElBQUksR0FBRyxDQUFDLE1BQU0sSUFBSSxPQUFPLENBQUMsUUFBUSxJQUFJLE9BQU8sQ0FBQyxRQUFRLElBQUksT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3JILENBQUM7Q0FFRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsaUVBQWlFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuaW1wb3J0IHsgXyB9IGZyb20gJ3RucC1jb3JlL3dlYnNxbCc7XG5pbXBvcnQgeyBSZWFsdGltZUNvcmUgfSBmcm9tICcuL3JlYWx0aW1lLWNvcmUnO1xuaW1wb3J0IHsgU3ltYm9scyB9IGZyb20gJy4uL3N5bWJvbHMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ2xhc3NIZWxwZXJzIH0gZnJvbSAnLi4vaGVscGVycy9jbGFzcy1oZWxwZXJzJztcbmltcG9ydCB7IFJlYWx0aW1lU3Vic01hbmFnZXIgfSBmcm9tICcuL3JlYWx0aW1lLXN1YnMtbWFuYWdlcic7XG5pbXBvcnQgeyBSZWFsdGltZU1vZGVscyB9IGZyb20gJy4vcmVhbHRpbWUubW9kZWxzJztcbmltcG9ydCB0eXBlIHsgQmFzZUVudGl0eSB9IGZyb20gJy4uL2Jhc2UtY2xhc3Nlcy9iYXNlLWVudGl0eSc7XG5pbXBvcnQgeyBIZWxwZXJzIH0gZnJvbSAndG5wLWNvcmUvd2Vic3FsJztcblxuXG5leHBvcnQgY2xhc3MgUmVhbHRpbWVDbGllbnQge1xuICBwcml2YXRlIHN1YnNNYW5hZ2VyczogeyBbcGF0aDogc3RyaW5nXTogUmVhbHRpbWVTdWJzTWFuYWdlciB9ID0ge307XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY29yZTogUmVhbHRpbWVDb3JlKSB7XG4gICAgdGhpcy5jb3JlID0gY29yZTtcbiAgICBpZiAoIWNvcmUuY3R4LmRpc2FibGVkUmVhbHRpbWUpIHtcblxuICAgICAgdGhpcy5pbml0KCk7XG5cbiAgICB9XG4gIH1cblxuXG4gIHByaXZhdGUgaW5pdCgpIHtcblxuICAgIGNvbnN0IG5zcFBhdGggPSB7XG4gICAgICBnbG9iYWw6IHRoaXMuY29yZS5wYXRoRm9yKCksXG4gICAgICByZWFsdGltZTogdGhpcy5jb3JlLnBhdGhGb3IoXG4gICAgICAgIFN5bWJvbHMuUkVBTFRJTUUuTkFNRVNQQUNFKHRoaXMuY29yZS5jdHguY29udGV4dE5hbWUpLFxuICAgICAgKSxcbiAgICB9O1xuXG5cbiAgICB0aGlzLmNvcmUuY3R4LmxvZ1JlYWx0aW1lICYmXG4gICAgICBjb25zb2xlLmluZm8oXG4gICAgICAgICdbQ0xJRU5UXSBOQU1FU1BBQ0UgR0xPQkFMICcsXG4gICAgICAgIG5zcFBhdGguZ2xvYmFsLmhyZWYgKyBgIGhvc3Q6ICR7dGhpcy5jb3JlLmN0eC5ob3N0fWAsXG4gICAgICApO1xuXG4gICAgdGhpcy5jb3JlLmN0eC5sb2dSZWFsdGltZSAmJlxuICAgICAgY29uc29sZS5pbmZvKFxuICAgICAgICAnW0NMSUVOVF0gTkFNRVNQQUNFIFJFQUxUSU1FJyxcbiAgICAgICAgbnNwUGF0aC5yZWFsdGltZS5ocmVmICsgYCBob3N0OiAke3RoaXMuY29yZS5jdHguaG9zdH1gLFxuICAgICAgKTtcblxuXG5cbiAgICB0aGlzLmNvcmUuY29uZWN0U29ja2V0RkUgPSB0aGlzLmNvcmUuc3RyYXRlZ3kuaW9DbGllbnQoXG4gICAgICBuc3BQYXRoLmdsb2JhbC5vcmlnaW4sXG4gICAgICB7XG4gICAgICAgIHBhdGg6IG5zcFBhdGguZ2xvYmFsLnBhdGhuYW1lLFxuICAgICAgfSxcbiAgICApO1xuXG4gICAgaWYgKHRoaXMuY29yZS5jb25lY3RTb2NrZXRGRS5vbikge1xuICAgICAgdGhpcy5jb3JlLmNvbmVjdFNvY2tldEZFLm9uKCdjb25uZWN0JywgKCkgPT4ge1xuXG5cblxuICAgICAgICB0aGlzLmNvcmUuY3R4LmxvZ1JlYWx0aW1lICYmXG4gICAgICAgICAgY29uc29sZS5pbmZvKFxuICAgICAgICAgICAgYFtDTElFTlRdIGNvbm5lY3RlZCB0byBHTE9CQUwgbmFtZXNwYWNlICR7bnNwUGF0aC5nbG9iYWwucGF0aG5hbWV9YCArXG4gICAgICAgICAgICAgIGAgb2YgaG9zdDogJHt0aGlzLmNvcmUuY3R4Lmhvc3R9YCxcbiAgICAgICAgICApO1xuICAgICAgfSk7XG4gICAgfVxuXG5cblxuXG4gICAgdGhpcy5jb3JlLnNvY2tldEZFID0gdGhpcy5jb3JlLnN0cmF0ZWd5LmlvQ2xpZW50KG5zcFBhdGgucmVhbHRpbWUub3JpZ2luLCB7XG4gICAgICBwYXRoOiBuc3BQYXRoLnJlYWx0aW1lLnBhdGhuYW1lLFxuICAgIH0pO1xuXG4gICAgaWYgKHRoaXMuY29yZS5zb2NrZXRGRS5vbikge1xuICAgICAgdGhpcy5jb3JlLnNvY2tldEZFLm9uKCdjb25uZWN0JywgKCkgPT4ge1xuXG5cblxuICAgICAgICB0aGlzLmNvcmUuY3R4LmxvZ1JlYWx0aW1lICYmXG4gICAgICAgICAgY29uc29sZS5pbmZvKFxuICAgICAgICAgICAgYFtDTElFTlRdIGNvbm5lY3RlZCB0byBSRUFMVElNRSBuYW1lc3BhY2UgJHtuc3BQYXRoLnJlYWx0aW1lLnBhdGhuYW1lfWAgK1xuICAgICAgICAgICAgICBgIGhvc3Q6ICR7dGhpcy5jb3JlLmN0eC5ob3N0fWAsXG4gICAgICAgICAgKTtcbiAgICAgIH0pO1xuICAgIH1cblxuXG4gIH1cblxuXG5cbiAgLyoqXG4gICAqIENoYW5nZXMgdHJpZ2dlciBvbiBiYWNrZW5kIG5lZWRzIHRvIGJlIGRvbmUgbWFudWFsbHkuLiBleGFtcGxlIGNvZGU6XG4gICAqXG4gICAqIC4uLlxuICAgKiBDb250ZXh0LlJlYWx0aW1lLlNlcnZlci5UcmlnZ2dlckVudGl0eUNoYW5nZXMobXlFbnRpdHlJbnN0YW5jZSk7XG4gICAqIC4uLlxuICAgKi9cbiAgbGlzdGVuQ2hhbmdlc0VudGl0eShcbiAgICBlbnRpdHlDbGFzc0ZuOiBGdW5jdGlvbixcbiAgICBpZE9yVW5pcVZhbHVlOiBhbnksXG4gICAgb3B0aW9uczogUmVhbHRpbWVNb2RlbHMuQ2hhbmdlT3B0aW9uLFxuICApIHtcbiAgICBvcHRpb25zID0gb3B0aW9ucyB8fCAoe30gYXMgYW55KTtcblxuXG4gICAgY29uc3QgeyBwcm9wZXJ0eSwgY3VzdG9tRXZlbnQgfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgY2xhc3NOYW1lID0gIWN1c3RvbUV2ZW50ICYmIENsYXNzSGVscGVycy5nZXROYW1lKGVudGl0eUNsYXNzRm4pO1xuXG4gICAgaWYgKF8uaXNTdHJpbmcocHJvcGVydHkpKSB7XG4gICAgICBpZiAocHJvcGVydHkudHJpbSgpID09PSAnJykge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgYFtUYW9uXVtsaXN0ZW5DaGFuZ2VzRW50aXR5Li4gaW5jb3JlY3QgcHJvcGVydHkgJycgZm9yICR7Y2xhc3NOYW1lfWAsXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICByZXR1cm4gbmV3IE9ic2VydmFibGUob2JzZXJ2ZXIgPT4ge1xuXG5cbiAgICAgIGlmICh0aGlzLmNvcmUuY3R4LmRpc2FibGVkUmVhbHRpbWUpIHtcbiAgICAgICAgY29uc29sZS5lcnJvcihgW1Rhb25dW3JlYWx0aW1lIHJ4anNdIHJlbW92ZSB0YW9uIGNvbmZpZyBmbGFnOlxuXG4gICAgICAgIC4uLlxuICAgICAgICBkaXNhYmxlZFJlYWx0aW1lOiB0cnVlXG4gICAgICAgIC4uLlxuXG50byB1c2Ugc29ja2V0IHJlYWx0aW1lIGNvbm5lY3Rpb247XG4gICAgICAgIGApO1xuICAgICAgICByZXR1cm4gKCkgPT4ge1xuXG4gICAgICAgIH07XG4gICAgICB9XG5cbiAgICAgIGxldCByb29tTmFtZTogc3RyaW5nO1xuXG4gICAgICBpZiAoY3VzdG9tRXZlbnQpIHtcbiAgICAgICAgcm9vbU5hbWUgPSBTeW1ib2xzLlJFQUxUSU1FLlJPT01fTkFNRV9DVVNUT00oXG4gICAgICAgICAgdGhpcy5jb3JlLmN0eC5jb250ZXh0TmFtZSxcbiAgICAgICAgICBjdXN0b21FdmVudCxcbiAgICAgICAgKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJvb21OYW1lID0gXy5pc1N0cmluZyhwcm9wZXJ0eSlcbiAgICAgICAgICA/IFN5bWJvbHMuUkVBTFRJTUUuUk9PTV9OQU1FX1VQREFURV9FTlRJVFlfUFJPUEVSVFkoXG4gICAgICAgICAgICAgIHRoaXMuY29yZS5jdHguY29udGV4dE5hbWUsXG4gICAgICAgICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICAgICAgICAgcHJvcGVydHksXG4gICAgICAgICAgICAgIGlkT3JVbmlxVmFsdWUsXG4gICAgICAgICAgICApXG4gICAgICAgICAgOiBTeW1ib2xzLlJFQUxUSU1FLlJPT01fTkFNRV9VUERBVEVfRU5USVRZKFxuICAgICAgICAgICAgICB0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lLFxuICAgICAgICAgICAgICBjbGFzc05hbWUsXG4gICAgICAgICAgICAgIGlkT3JVbmlxVmFsdWUsXG4gICAgICAgICAgICApO1xuICAgICAgfVxuXG4gICAgICBjb25zdCByb29tU3ViT3B0aW9uczogUmVhbHRpbWVNb2RlbHMuU3Vic01hbmFnZXJPcHQgPSB7XG4gICAgICAgIGNvcmU6IHRoaXMuY29yZSxcbiAgICAgICAgcHJvcGVydHksXG4gICAgICAgIHJvb21OYW1lLFxuICAgICAgICBjdXN0b21FdmVudCxcbiAgICAgIH07XG5cblxuICAgICAgY29uc3Qgc3ViTWFuYWdlcklkID0gdGhpcy5nZXRVbmlxdWVJZGVudGlmaWVyRm9yQ29ubmVjdGlvbihyb29tU3ViT3B0aW9ucyk7XG4gICAgICBpZiAoIXRoaXMuc3Vic01hbmFnZXJzW3N1Yk1hbmFnZXJJZF0pIHtcbiAgICAgICAgdGhpcy5zdWJzTWFuYWdlcnNbc3ViTWFuYWdlcklkXSA9IG5ldyBSZWFsdGltZVN1YnNNYW5hZ2VyKFxuICAgICAgICAgIHJvb21TdWJPcHRpb25zLFxuICAgICAgICApO1xuICAgICAgfVxuICAgICAgY29uc3QgaW5zdCA9IHRoaXMuc3Vic01hbmFnZXJzW3N1Yk1hbmFnZXJJZF07XG4gICAgICBpbnN0LmFkZChvYnNlcnZlcik7XG5cbiAgICAgIGluc3Quc3RhcnRMaXN0ZW5JZk5vdFN0YXJ0ZWQodGhpcy5jb3JlLnNvY2tldEZFKTtcblxuICAgICAgcmV0dXJuICgpID0+IHtcbiAgICAgICAgaW5zdC5yZW1vdmUob2JzZXJ2ZXIpO1xuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG5cblxuXG4gIGxpc3RlbkNoYW5nZXNFbnRpdHlUYWJsZShlbnRpdHlDbGFzc0ZuOiBGdW5jdGlvbikge1xuICAgIGNvbnN0IGNsYXNzTmFtZSA9IENsYXNzSGVscGVycy5nZXROYW1lKGVudGl0eUNsYXNzRm4pO1xuICAgIHJldHVybiB0aGlzLmxpc3RlbkNoYW5nZXNFbnRpdHkoZW50aXR5Q2xhc3NGbiwgdm9pZCAwLCB7XG4gICAgICBjdXN0b21FdmVudDogU3ltYm9scy5SRUFMVElNRS5UQUJMRV9DSEFOR0UoXG4gICAgICAgIHRoaXMuY29yZS5jdHguY29udGV4dE5hbWUsXG4gICAgICAgIGNsYXNzTmFtZSxcbiAgICAgICksXG4gICAgfSk7XG4gIH1cblxuXG5cblxuICAvKipcbiAgICogQ2hhbmdlcyB0cmlnZ2VyIG9uIGJhY2tlbmQgbmVlZHMgdG8gYmUgZG9uZSBtYW51YWxseS4uIGV4YW1wbGUgY29kZTpcbiAgICpcbiAgICogLi4uXG4gICAqIENvbnRleHQuUmVhbHRpbWUuU2VydmVyLlRyaWdnZ2VyRW50aXR5Q2hhbmdlcyhteUVudGl0eUluc3RhbmNlKTtcbiAgICogLy8gb3JcbiAgICogQ29udGV4dC5SZWFsdGltZS5TZXJ2ZXIuVHJpZ2dnZXJFbnRpdHlQcm9wZXJ0eUNoYW5nZXMobXlFbnRpdHlJbnN0YW5jZSx7IHByb3BlcnR5OiAnZ2VvbG9jYXRpb25YJyB9KTtcbiAgICogLi4uXG4gICAqL1xuICBsaXN0ZW5DaGFuZ2VzRW50aXR5T2JqPFQgZXh0ZW5kcyBCYXNlRW50aXR5PihcbiAgICBlbnRpdHk6IFQsXG4gICAgb3B0aW9ucz86IFJlYWx0aW1lTW9kZWxzLkNoYW5nZU9wdGlvbixcbiAgKSB7XG4gICAgY29uc3QgY2xhc3NGbiA9IENsYXNzSGVscGVycy5nZXRDbGFzc0ZuRnJvbU9iamVjdChlbnRpdHkpO1xuICAgIGNvbnN0IHVuaXF1ZUtleSA9IENsYXNzSGVscGVycy5nZXRVbmlxdWVLZXkoY2xhc3NGbik7XG4gICAgcmV0dXJuIHRoaXMubGlzdGVuQ2hhbmdlc0VudGl0eShjbGFzc0ZuLCBlbnRpdHlbdW5pcXVlS2V5XSwgb3B0aW9ucyk7XG4gIH1cblxuXG5cbiAgbGlzdGVuQ2hhbmdlc0N1c3RvbUV2ZW50KGN1c3RvbUV2ZW50OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5saXN0ZW5DaGFuZ2VzRW50aXR5KHZvaWQgMCwgdm9pZCAwLCB7XG4gICAgICBjdXN0b21FdmVudCxcbiAgICB9KTtcbiAgfVxuXG5cblxuICAvKipcbiAgICogVHJpZ2dlciBjdXN0b20gZXZlbnQgb24gYmFja2VuZFxuICAgKiBAcGFyYW0gY3VzdG9tRXZlbnQgZ2xvYmFsIGV2ZW50IG5hbWVcbiAgICogQHBhcmFtIGRhdGFUb1B1c2hcbiAgICovXG4gIHB1YmxpYyB0cmlnZ2VyQ3VzdG9tRXZlbnQoY3VzdG9tRXZlbnQ6IHN0cmluZywgZGF0YVRvUHVzaD86IGFueSkge1xuICAgIHRoaXMuY29yZS5zb2NrZXRGRS5lbWl0KGN1c3RvbUV2ZW50LCBkYXRhVG9QdXNoKTtcbiAgfVxuXG5cblxuICBwcml2YXRlIGdldFVuaXF1ZUlkZW50aWZpZXJGb3JDb25uZWN0aW9uKG9wdGlvbnM6IFJlYWx0aW1lTW9kZWxzLlN1YnNNYW5hZ2VyT3B0KSB7XG4gICAgY29uc3QgdXJsID0gbmV3IFVSTChvcHRpb25zLmNvcmUuY3R4Lmhvc3QpO1xuICAgIHJldHVybiBgJHt0aGlzLmNvcmUuY3R4LmNvbnRleHROYW1lfToke3VybC5vcmlnaW59fCR7b3B0aW9ucy5yb29tTmFtZX18JHtvcHRpb25zLnByb3BlcnR5fXwke29wdGlvbnMuY3VzdG9tRXZlbnR9YDtcbiAgfVxuXG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10YW9uIGxpYi9yZWFsdGltZS9yZWFsdGltZS1jbGllbnQudHMiXX0=
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import { RealtimeClient } from './realtime-client';
|
|
2
|
-
import { RealtimeServer } from './realtime-server';
|
|
3
|
-
import { RealtimeStrategyIpc, RealtimeStrategyMock, RealtimeStrategySocketIO, } from './realtime-strategy'; /* */
|
|
4
|
-
import { Helpers } from 'tnp-core/websql';
|
|
5
|
-
/**
|
|
6
|
-
* Realtime class
|
|
7
|
-
* - mock (when browser-browser)
|
|
8
|
-
* - sockets (from socket io when backend-browser)
|
|
9
|
-
* - ipc (when electron is used or between processes)
|
|
10
|
-
* - webworker (when webworker is used in browser or nodejs)
|
|
11
|
-
*/
|
|
12
|
-
export class RealtimeCore {
|
|
13
|
-
constructor(ctx) {
|
|
14
|
-
this.ctx = ctx;
|
|
15
|
-
this.allHttpMethods = [
|
|
16
|
-
'GET',
|
|
17
|
-
'POST',
|
|
18
|
-
'PUT',
|
|
19
|
-
'DELETE',
|
|
20
|
-
'PATCH',
|
|
21
|
-
'OPTIONS',
|
|
22
|
-
'HEAD',
|
|
23
|
-
];
|
|
24
|
-
this.ctx = ctx;
|
|
25
|
-
this.strategy = this.resolveStrategy();
|
|
26
|
-
this.ctx.logRealtime &&
|
|
27
|
-
console.log(`[taon] realtime strategy: ${this.strategy}`);
|
|
28
|
-
if (Helpers.isWebSQL) {
|
|
29
|
-
this.server = new RealtimeServer(this);
|
|
30
|
-
this.client = new RealtimeClient(this);
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
this.client = new RealtimeClient(this);
|
|
34
|
-
this.server = new RealtimeServer(this);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
resolveStrategy() {
|
|
38
|
-
if (this.ctx.mode === 'backend-frontend(websql)' ||
|
|
39
|
-
this.ctx.mode === 'backend-frontend(websql-electron)') {
|
|
40
|
-
return new RealtimeStrategyMock(this.ctx);
|
|
41
|
-
}
|
|
42
|
-
if (this.ctx.mode === 'backend-frontend(ipc-electron)') {
|
|
43
|
-
return new RealtimeStrategyIpc(this.ctx);
|
|
44
|
-
}
|
|
45
|
-
return new RealtimeStrategySocketIO(this.ctx);
|
|
46
|
-
}
|
|
47
|
-
pathFor(namespace) {
|
|
48
|
-
const uri = this.ctx.uri;
|
|
49
|
-
let nsp = namespace ? namespace : '';
|
|
50
|
-
nsp = nsp === '/' ? '' : nsp;
|
|
51
|
-
const pathname = uri.pathname !== '/' ? uri.pathname : '';
|
|
52
|
-
let prefix = `taonContext`;
|
|
53
|
-
if (Helpers.isElectron) {
|
|
54
|
-
prefix = ``;
|
|
55
|
-
}
|
|
56
|
-
const href = `${uri.origin}${pathname}/${prefix}${prefix && nsp ? '-' + nsp : nsp}`;
|
|
57
|
-
return new URL(href);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
;
|
|
61
|
-
({}); // @--end-of-file-for-module=taon lib/realtime/realtime-core.ts
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhbHRpbWUtY29yZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0LXdlYnNxbC90YW9uL3Byb2plY3RzL3Rhb24vc3JjL2xpYi9yZWFsdGltZS9yZWFsdGltZS1jb3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFbkQsT0FBTyxFQUFJLG1CQUFtQixFQUFJLG9CQUFvQixFQUFJLHdCQUF3QixHQUFHLE1BQU0scUJBQXFCLENBQUMsQ0FBQSxLQUFLO0FBT3RILE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUcxQzs7Ozs7O0dBTUc7QUFDSCxNQUFNLE9BQU8sWUFBWTtJQTRDdkIsWUFBbUIsR0FBb0I7UUFBcEIsUUFBRyxHQUFILEdBQUcsQ0FBaUI7UUExQzlCLG1CQUFjLEdBQUc7WUFDeEIsS0FBSztZQUNMLE1BQU07WUFDTixLQUFLO1lBQ0wsUUFBUTtZQUNSLE9BQU87WUFDUCxTQUFTO1lBQ1QsTUFBTTtTQUNQLENBQUM7UUFtQ0EsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUV2QyxJQUFJLENBQUMsR0FBRyxDQUFDLFdBQVc7WUFDbEIsT0FBTyxDQUFDLEdBQUcsQ0FBQyw2QkFBNkIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFDNUQsSUFBSSxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDckIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUV2QyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXpDLENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN2QyxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3pDLENBQUM7SUFDSCxDQUFDO0lBSU8sZUFBZTtRQUNyQixJQUNFLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxLQUFLLDBCQUEwQjtZQUM1QyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxtQ0FBbUMsRUFDckQsQ0FBQztZQUVELE9BQU8sSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUMsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLEtBQUssZ0NBQWdDLEVBQUUsQ0FBQztZQUN2RCxPQUFPLElBQUksbUJBQW1CLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzNDLENBQUM7UUFPRCxPQUFPLElBQUksd0JBQXdCLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFJTSxPQUFPLENBQUMsU0FBa0I7UUFDL0IsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUM7UUFFekIsSUFBSSxHQUFHLEdBQUcsU0FBUyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNyQyxHQUFHLEdBQUcsR0FBRyxLQUFLLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7UUFDN0IsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLFFBQVEsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMxRCxJQUFJLE1BQU0sR0FBRyxhQUFhLENBQUM7UUFDM0IsSUFBSSxPQUFPLENBQUMsVUFBVSxFQUFFLENBQUM7WUFDdkIsTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNkLENBQUM7UUFDRCxNQUFNLElBQUksR0FBRyxHQUFHLEdBQUcsQ0FBQyxNQUFNLEdBQUcsUUFBUSxJQUFJLE1BQU0sR0FBRyxNQUFNLElBQUksR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQztRQUVwRixPQUFPLElBQUksR0FBRyxDQUFDLElBQUksQ0FBUSxDQUFDO0lBQzlCLENBQUM7Q0FFRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsK0RBQStEIiwic291cmNlc0NvbnRlbnQiOlsiXG5cblxuaW1wb3J0IHsgU29ja2V0IGFzIFNvY2tldENsaWVudCB9IGZyb20gJ3NvY2tldC5pby1jbGllbnQnO1xuaW1wb3J0IHR5cGUgeyBFbmRwb2ludENvbnRleHQgfSBmcm9tICcuLi9lbmRwb2ludC1jb250ZXh0JztcbmltcG9ydCB7IFJlYWx0aW1lQ2xpZW50IH0gZnJvbSAnLi9yZWFsdGltZS1jbGllbnQnO1xuaW1wb3J0IHsgUmVhbHRpbWVTZXJ2ZXIgfSBmcm9tICcuL3JlYWx0aW1lLXNlcnZlcic7XG5pbXBvcnQgdHlwZSB7IFJlYWx0aW1lU3RyYXRlZ3kgfSBmcm9tICcuL3JlYWx0aW1lLXN0cmF0ZWd5JztcbmltcG9ydCB7ICAgUmVhbHRpbWVTdHJhdGVneUlwYywgICBSZWFsdGltZVN0cmF0ZWd5TW9jaywgICBSZWFsdGltZVN0cmF0ZWd5U29ja2V0SU8sIH0gZnJvbSAnLi9yZWFsdGltZS1zdHJhdGVneSc7LyogKi9cbi8qICovXG4vKiAqL1xuLyogKi9cblxuaW1wb3J0IHsgRGVmYXVsdEV2ZW50c01hcCB9IGZyb20gJ3NvY2tldC5pby9kaXN0L3R5cGVkLWV2ZW50cyc7XG5pbXBvcnQgeyBTZXJ2ZXIgfSBmcm9tICdzb2NrZXQuaW8nO1xuaW1wb3J0IHsgSGVscGVycyB9IGZyb20gJ3RucC1jb3JlL3dlYnNxbCc7XG5cblxuLyoqXG4gKiBSZWFsdGltZSBjbGFzc1xuICogLSBtb2NrICh3aGVuIGJyb3dzZXItYnJvd3NlcilcbiAqIC0gc29ja2V0cyAoZnJvbSBzb2NrZXQgaW8gd2hlbiBiYWNrZW5kLWJyb3dzZXIpXG4gKiAtIGlwYyAod2hlbiBlbGVjdHJvbiBpcyB1c2VkIG9yIGJldHdlZW4gcHJvY2Vzc2VzKVxuICogLSB3ZWJ3b3JrZXIgKHdoZW4gd2Vid29ya2VyIGlzIHVzZWQgaW4gYnJvd3NlciBvciBub2RlanMpXG4gKi9cbmV4cG9ydCBjbGFzcyBSZWFsdGltZUNvcmUge1xuXG4gIHJlYWRvbmx5IGFsbEh0dHBNZXRob2RzID0gW1xuICAgICdHRVQnLFxuICAgICdQT1NUJyxcbiAgICAnUFVUJyxcbiAgICAnREVMRVRFJyxcbiAgICAnUEFUQ0gnLFxuICAgICdPUFRJT05TJyxcbiAgICAnSEVBRCcsXG4gIF07XG4gIHB1YmxpYyByZWFkb25seSBjbGllbnQ6IFJlYWx0aW1lQ2xpZW50O1xuICBwdWJsaWMgcmVhZG9ubHkgc2VydmVyOiBSZWFsdGltZVNlcnZlcjtcbiAgcHVibGljIHJlYWRvbmx5IHN0cmF0ZWd5OiBSZWFsdGltZVN0cmF0ZWd5O1xuXG4gIC8qKlxuICAgKiBnbG9iYWwgRkUgc29ja2V0IC0gb25seSBmb3IgZXN0YWJsaXNoZWQgY29ubmVjdGlvblxuICAgKi9cbiAgcHVibGljIGNvbmVjdFNvY2tldEZFOiBTb2NrZXRDbGllbnQ8RGVmYXVsdEV2ZW50c01hcCwgRGVmYXVsdEV2ZW50c01hcD47XG4gIC8qKlxuICAgKiBzb2NrZXQgZm9yIG5hbWVzcGFjZXMgYW5kIHJvb21zXG4gICAqL1xuICBwdWJsaWMgc29ja2V0RkU6IFNvY2tldENsaWVudDxEZWZhdWx0RXZlbnRzTWFwLCBEZWZhdWx0RXZlbnRzTWFwPjtcbiAgLyoqXG4gICAqIGdsb2JhbCBCRSBzb2NrZXQgLSBvbmx5IGZvciBlc3RhYmxpc2hlZCBjb25uZWN0aW9uXG4gICAqL1xuICBwdWJsaWMgY29ubmVjdFNvY2tldEJFOiBTZXJ2ZXI8XG4gICAgRGVmYXVsdEV2ZW50c01hcCxcbiAgICBEZWZhdWx0RXZlbnRzTWFwLFxuICAgIERlZmF1bHRFdmVudHNNYXAsXG4gICAgYW55XG4gID47XG4gIC8qKlxuICAgKiBzb2NrZXQgZm9yIG5hbWVzcGFjZXMgYW5kIHJvb21zXG4gICAqL1xuICBwdWJsaWMgc29ja2V0QkU6IFNlcnZlcjxcbiAgICBEZWZhdWx0RXZlbnRzTWFwLFxuICAgIERlZmF1bHRFdmVudHNNYXAsXG4gICAgRGVmYXVsdEV2ZW50c01hcCxcbiAgICBhbnlcbiAgPjtcblxuXG5cbiAgY29uc3RydWN0b3IocHVibGljIGN0eDogRW5kcG9pbnRDb250ZXh0KSB7XG4gICAgdGhpcy5jdHggPSBjdHg7XG4gICAgdGhpcy5zdHJhdGVneSA9IHRoaXMucmVzb2x2ZVN0cmF0ZWd5KCk7XG5cbiAgICB0aGlzLmN0eC5sb2dSZWFsdGltZSAmJlxuICAgICAgY29uc29sZS5sb2coYFt0YW9uXSByZWFsdGltZSBzdHJhdGVneTogJHt0aGlzLnN0cmF0ZWd5fWApO1xuICAgIGlmIChIZWxwZXJzLmlzV2ViU1FMKSB7XG4gICAgICB0aGlzLnNlcnZlciA9IG5ldyBSZWFsdGltZVNlcnZlcih0aGlzKTtcblxuICAgICAgdGhpcy5jbGllbnQgPSBuZXcgUmVhbHRpbWVDbGllbnQodGhpcyk7XG5cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5jbGllbnQgPSBuZXcgUmVhbHRpbWVDbGllbnQodGhpcyk7XG4gICAgICB0aGlzLnNlcnZlciA9IG5ldyBSZWFsdGltZVNlcnZlcih0aGlzKTtcbiAgICB9XG4gIH1cblxuXG5cbiAgcHJpdmF0ZSByZXNvbHZlU3RyYXRlZ3koKTogUmVhbHRpbWVTdHJhdGVneSB7XG4gICAgaWYgKFxuICAgICAgdGhpcy5jdHgubW9kZSA9PT0gJ2JhY2tlbmQtZnJvbnRlbmQod2Vic3FsKScgfHxcbiAgICAgIHRoaXMuY3R4Lm1vZGUgPT09ICdiYWNrZW5kLWZyb250ZW5kKHdlYnNxbC1lbGVjdHJvbiknXG4gICAgKSB7XG5cbiAgICAgIHJldHVybiBuZXcgUmVhbHRpbWVTdHJhdGVneU1vY2sodGhpcy5jdHgpO1xuICAgIH1cbiAgICBpZiAodGhpcy5jdHgubW9kZSA9PT0gJ2JhY2tlbmQtZnJvbnRlbmQoaXBjLWVsZWN0cm9uKScpIHtcbiAgICAgIHJldHVybiBuZXcgUmVhbHRpbWVTdHJhdGVneUlwYyh0aGlzLmN0eCk7XG4gICAgfVxuXG5cblxuXG5cblxuICAgIHJldHVybiBuZXcgUmVhbHRpbWVTdHJhdGVneVNvY2tldElPKHRoaXMuY3R4KTtcbiAgfVxuXG5cblxuICBwdWJsaWMgcGF0aEZvcihuYW1lc3BhY2U/OiBzdHJpbmcpIHtcbiAgICBjb25zdCB1cmkgPSB0aGlzLmN0eC51cmk7XG5cbiAgICBsZXQgbnNwID0gbmFtZXNwYWNlID8gbmFtZXNwYWNlIDogJyc7XG4gICAgbnNwID0gbnNwID09PSAnLycgPyAnJyA6IG5zcDtcbiAgICBjb25zdCBwYXRobmFtZSA9IHVyaS5wYXRobmFtZSAhPT0gJy8nID8gdXJpLnBhdGhuYW1lIDogJyc7XG4gICAgbGV0IHByZWZpeCA9IGB0YW9uQ29udGV4dGA7XG4gICAgaWYgKEhlbHBlcnMuaXNFbGVjdHJvbikge1xuICAgICAgcHJlZml4ID0gYGA7XG4gICAgfVxuICAgIGNvbnN0IGhyZWYgPSBgJHt1cmkub3JpZ2lufSR7cGF0aG5hbWV9LyR7cHJlZml4fSR7cHJlZml4ICYmIG5zcCA/ICctJyArIG5zcCA6IG5zcH1gO1xuXG4gICAgcmV0dXJuIG5ldyBVUkwoaHJlZikgYXMgVVJMO1xuICB9XG5cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24gbGliL3JlYWx0aW1lL3JlYWx0aW1lLWNvcmUudHMiXX0=
|