@wavemaker/app-ng-runtime 11.10.5-rc.6096 → 11.11.0-next.27920
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/build-task/bundles/index.umd.js +94 -68
- package/build-task/esm2022/advanced/carousel/carousel-template/carousel-template.build.mjs +8 -8
- package/build-task/esm2022/containers/repeat-template.build.mjs +5 -5
- package/build-task/esm2022/containers/wizard/wizard-step/wizard-step.build.mjs +2 -2
- package/build-task/esm2022/containers/wizard/wizard.build.mjs +33 -4
- package/build-task/esm2022/data/form/form-field/form-field.build.mjs +10 -10
- package/build-task/esm2022/data/table/table-column/table-column.build.mjs +15 -11
- package/build-task/esm2022/page/page.build.mjs +2 -8
- package/build-task/esm2022/public_api.mjs +1 -1
- package/build-task/fesm2022/index.mjs +95 -69
- package/build-task/fesm2022/index.mjs.map +1 -1
- package/components/advanced/carousel/bundles/index.umd.js +8 -36
- package/components/advanced/carousel/carousel-template/carousel-template.directive.d.ts +1 -1
- package/components/advanced/carousel/carousel.directive.d.ts +1 -1
- package/components/advanced/carousel/esm2022/carousel-template/carousel-template.directive.mjs +3 -2
- package/components/advanced/carousel/esm2022/carousel.directive.mjs +3 -2
- package/components/advanced/carousel/esm2022/public_api.mjs +1 -2
- package/components/advanced/carousel/fesm2022/index.mjs +8 -36
- package/components/advanced/carousel/fesm2022/index.mjs.map +1 -1
- package/components/advanced/carousel/public_api.d.ts +0 -1
- package/components/advanced/custom/bundles/index.umd.js +8 -33
- package/components/advanced/custom/custom-widget-container/custom-widget-container.directive.d.ts +1 -1
- package/components/advanced/custom/custom-widget.directive.d.ts +1 -1
- package/components/advanced/custom/esm2022/custom-widget-container/custom-widget-container.directive.mjs +3 -2
- package/components/advanced/custom/esm2022/custom-widget.directive.mjs +3 -2
- package/components/advanced/custom/esm2022/public_api.mjs +1 -2
- package/components/advanced/custom/fesm2022/index.mjs +7 -32
- package/components/advanced/custom/fesm2022/index.mjs.map +1 -1
- package/components/advanced/custom/public_api.d.ts +0 -1
- package/components/advanced/login/bundles/index.umd.js +10 -34
- package/components/advanced/login/esm2022/login.component.mjs +7 -6
- package/components/advanced/login/esm2022/public_api.mjs +1 -2
- package/components/advanced/login/fesm2022/index.mjs +8 -32
- package/components/advanced/login/fesm2022/index.mjs.map +1 -1
- package/components/advanced/login/login.component.d.ts +1 -1
- package/components/advanced/login/public_api.d.ts +0 -1
- package/components/advanced/marquee/bundles/index.umd.js +6 -29
- package/components/advanced/marquee/esm2022/marquee.directive.mjs +3 -2
- package/components/advanced/marquee/esm2022/public_api.mjs +1 -2
- package/components/advanced/marquee/fesm2022/index.mjs +5 -28
- package/components/advanced/marquee/fesm2022/index.mjs.map +1 -1
- package/components/advanced/marquee/marquee.directive.d.ts +1 -1
- package/components/advanced/marquee/public_api.d.ts +0 -1
- package/components/base/bundles/index.umd.js +76 -274
- package/components/base/components.module.d.ts +13 -15
- package/components/base/directives/show-in-device.directive.d.ts +1 -1
- package/components/base/esm2022/components.module.mjs +7 -13
- package/components/base/esm2022/directives/show-in-device.directive.mjs +3 -2
- package/components/base/esm2022/pipes/custom-pipes.mjs +32 -16
- package/components/base/esm2022/pipes/image.pipe.mjs +3 -2
- package/components/base/esm2022/pipes/sanitize.pipe.mjs +3 -2
- package/components/base/esm2022/pipes/trust-as.pipe.mjs +3 -2
- package/components/base/esm2022/public_api.mjs +1 -2
- package/components/base/esm2022/utils/form-utils.mjs +2 -1
- package/components/base/esm2022/utils/live-utils.mjs +3 -7
- package/components/base/esm2022/widgets/common/base/base.component.mjs +3 -5
- package/components/base/esm2022/widgets/common/base/custom-widget-container.directive.mjs +3 -2
- package/components/base/esm2022/widgets/common/base/partial-container.directive.mjs +3 -2
- package/components/base/esm2022/widgets/common/base/text-content.directive.mjs +3 -2
- package/components/base/esm2022/widgets/common/container/container.directive.mjs +3 -2
- package/components/base/esm2022/widgets/common/dialog/dialog.service.mjs +3 -3
- package/components/base/esm2022/widgets/common/item-template/item-template.directive.mjs +3 -2
- package/components/base/esm2022/widgets/common/lazy-load/lazy-load.directive.mjs +3 -2
- package/components/base/esm2022/widgets/common/message/message.component.mjs +5 -5
- package/components/base/esm2022/widgets/common/partial/partial.directive.mjs +3 -2
- package/components/base/esm2022/widgets/common/partial-param/partial-param.directive.mjs +5 -3
- package/components/base/esm2022/widgets/common/redraw/redrawable.directive.mjs +3 -2
- package/components/base/esm2022/widgets/common/repeat-template/repeat-template.directive.mjs +3 -2
- package/components/base/fesm2022/index.mjs +76 -272
- package/components/base/fesm2022/index.mjs.map +1 -1
- package/components/base/pipes/custom-pipes.d.ts +16 -16
- package/components/base/pipes/image.pipe.d.ts +1 -1
- package/components/base/pipes/sanitize.pipe.d.ts +1 -1
- package/components/base/pipes/trust-as.pipe.d.ts +1 -1
- package/components/base/public_api.d.ts +0 -1
- package/components/base/widgets/common/base/custom-widget-container.directive.d.ts +1 -1
- package/components/base/widgets/common/base/partial-container.directive.d.ts +1 -1
- package/components/base/widgets/common/base/text-content.directive.d.ts +1 -1
- package/components/base/widgets/common/container/container.directive.d.ts +1 -1
- package/components/base/widgets/common/item-template/item-template.directive.d.ts +1 -1
- package/components/base/widgets/common/lazy-load/lazy-load.directive.d.ts +1 -1
- package/components/base/widgets/common/message/message.component.d.ts +1 -1
- package/components/base/widgets/common/partial/partial.directive.d.ts +1 -1
- package/components/base/widgets/common/partial-param/partial-param.directive.d.ts +2 -2
- package/components/base/widgets/common/redraw/redrawable.directive.d.ts +1 -1
- package/components/base/widgets/common/repeat-template/repeat-template.directive.d.ts +1 -1
- package/components/basic/default/anchor/anchor.component.d.ts +1 -1
- package/components/basic/default/audio/audio.component.d.ts +1 -1
- package/components/basic/default/bundles/index.umd.js +100 -148
- package/components/basic/default/esm2022/anchor/anchor.component.mjs +23 -21
- package/components/basic/default/esm2022/audio/audio.component.mjs +7 -6
- package/components/basic/default/esm2022/html/html.directive.mjs +3 -2
- package/components/basic/default/esm2022/icon/icon.component.mjs +17 -16
- package/components/basic/default/esm2022/iframe/iframe.component.mjs +14 -13
- package/components/basic/default/esm2022/label/label.directive.mjs +3 -2
- package/components/basic/default/esm2022/picture/picture.directive.mjs +3 -2
- package/components/basic/default/esm2022/picture/picture.props.mjs +1 -5
- package/components/basic/default/esm2022/public_api.mjs +1 -2
- package/components/basic/default/esm2022/spinner/spinner.component.mjs +26 -24
- package/components/basic/default/esm2022/video/video.component.mjs +19 -18
- package/components/basic/default/fesm2022/index.mjs +101 -148
- package/components/basic/default/fesm2022/index.mjs.map +1 -1
- package/components/basic/default/html/html.directive.d.ts +1 -1
- package/components/basic/default/icon/icon.component.d.ts +1 -1
- package/components/basic/default/iframe/iframe.component.d.ts +1 -1
- package/components/basic/default/label/label.directive.d.ts +1 -1
- package/components/basic/default/picture/picture.directive.d.ts +1 -1
- package/components/basic/default/public_api.d.ts +0 -1
- package/components/basic/default/spinner/spinner.component.d.ts +1 -1
- package/components/basic/default/video/video.component.d.ts +1 -1
- package/components/basic/progress/bundles/index.umd.js +20 -51
- package/components/basic/progress/esm2022/progress-bar/progress-bar.component.mjs +12 -11
- package/components/basic/progress/esm2022/progress-circle/progress-circle.component.mjs +8 -6
- package/components/basic/progress/esm2022/public_api.mjs +1 -2
- package/components/basic/progress/fesm2022/index.mjs +19 -49
- package/components/basic/progress/fesm2022/index.mjs.map +1 -1
- package/components/basic/progress/progress-bar/progress-bar.component.d.ts +1 -1
- package/components/basic/progress/progress-circle/progress-circle.component.d.ts +1 -1
- package/components/basic/progress/public_api.d.ts +0 -1
- package/components/basic/rich-text-editor/bundles/index.umd.js +15 -40
- package/components/basic/rich-text-editor/esm2022/public_api.mjs +1 -2
- package/components/basic/rich-text-editor/esm2022/rich-text-editor.component.mjs +13 -12
- package/components/basic/rich-text-editor/fesm2022/index.mjs +13 -37
- package/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -1
- package/components/basic/rich-text-editor/public_api.d.ts +0 -1
- package/components/basic/rich-text-editor/rich-text-editor.component.d.ts +1 -1
- package/components/basic/search/bundles/index.umd.js +170 -207
- package/components/basic/search/esm2022/public_api.mjs +1 -2
- package/components/basic/search/esm2022/scrollable.directive.mjs +3 -2
- package/components/basic/search/esm2022/search.component.mjs +76 -72
- package/components/basic/search/fesm2022/index.mjs +107 -143
- package/components/basic/search/fesm2022/index.mjs.map +1 -1
- package/components/basic/search/public_api.d.ts +0 -1
- package/components/basic/search/scrollable.directive.d.ts +1 -1
- package/components/basic/search/search.component.d.ts +1 -1
- package/components/basic/tree/bundles/index.umd.js +9 -33
- package/components/basic/tree/esm2022/public_api.mjs +1 -2
- package/components/basic/tree/esm2022/tree.component.mjs +7 -6
- package/components/basic/tree/fesm2022/index.mjs +8 -32
- package/components/basic/tree/fesm2022/index.mjs.map +1 -1
- package/components/basic/tree/public_api.d.ts +0 -1
- package/components/basic/tree/tree.component.d.ts +1 -1
- package/components/chart/bundles/index.umd.js +25 -53
- package/components/chart/chart.component.d.ts +1 -1
- package/components/chart/esm2022/chart.component.mjs +26 -24
- package/components/chart/esm2022/chart.utils.mjs +2 -1
- package/components/chart/esm2022/public_api.mjs +1 -2
- package/components/chart/fesm2022/index.mjs +26 -52
- package/components/chart/fesm2022/index.mjs.map +1 -1
- package/components/chart/public_api.d.ts +0 -1
- package/components/containers/accordion/accordion-pane/accordion-pane.component.d.ts +1 -1
- package/components/containers/accordion/accordion.directive.d.ts +1 -1
- package/components/containers/accordion/bundles/index.umd.js +208 -237
- package/components/containers/accordion/esm2022/accordion-pane/accordion-pane.component.mjs +10 -11
- package/components/containers/accordion/esm2022/accordion.directive.mjs +5 -4
- package/components/containers/accordion/esm2022/public_api.mjs +1 -2
- package/components/containers/accordion/fesm2022/index.mjs +189 -217
- package/components/containers/accordion/fesm2022/index.mjs.map +1 -1
- package/components/containers/accordion/public_api.d.ts +0 -1
- package/components/containers/layout-grid/bundles/index.umd.js +13 -43
- package/components/containers/layout-grid/esm2022/layout-grid-column/layout-grid-column.directive.mjs +7 -9
- package/components/containers/layout-grid/esm2022/layout-grid-row/layout-grid-row.directive.mjs +3 -2
- package/components/containers/layout-grid/esm2022/layout-grid.directive.mjs +3 -2
- package/components/containers/layout-grid/esm2022/public_api.mjs +1 -2
- package/components/containers/layout-grid/fesm2022/index.mjs +13 -43
- package/components/containers/layout-grid/fesm2022/index.mjs.map +1 -1
- package/components/containers/layout-grid/layout-grid-column/layout-grid-column.directive.d.ts +1 -1
- package/components/containers/layout-grid/layout-grid-row/layout-grid-row.directive.d.ts +1 -1
- package/components/containers/layout-grid/layout-grid.directive.d.ts +1 -1
- package/components/containers/layout-grid/public_api.d.ts +0 -1
- package/components/containers/linear-layout/bundles/index.umd.js +8 -33
- package/components/containers/linear-layout/esm2022/linear-layout-item/linear-layout-item.directive.mjs +3 -2
- package/components/containers/linear-layout/esm2022/linear-layout.directive.mjs +3 -2
- package/components/containers/linear-layout/esm2022/public_api.mjs +1 -2
- package/components/containers/linear-layout/fesm2022/index.mjs +7 -32
- package/components/containers/linear-layout/fesm2022/index.mjs.map +1 -1
- package/components/containers/linear-layout/linear-layout-item/linear-layout-item.directive.d.ts +1 -1
- package/components/containers/linear-layout/linear-layout.directive.d.ts +1 -1
- package/components/containers/linear-layout/public_api.d.ts +0 -1
- package/components/containers/panel/bundles/index.umd.js +87 -118
- package/components/containers/panel/esm2022/panel.component.mjs +48 -46
- package/components/containers/panel/esm2022/public_api.mjs +1 -2
- package/components/containers/panel/fesm2022/index.mjs +49 -79
- package/components/containers/panel/fesm2022/index.mjs.map +1 -1
- package/components/containers/panel/panel.component.d.ts +1 -1
- package/components/containers/panel/public_api.d.ts +0 -1
- package/components/containers/tabs/bundles/index.umd.js +84 -116
- package/components/containers/tabs/esm2022/public_api.mjs +1 -2
- package/components/containers/tabs/esm2022/tab-pane/tab-pane.component.mjs +8 -10
- package/components/containers/tabs/esm2022/tabs.component.mjs +35 -33
- package/components/containers/tabs/esm2022/tabs.props.mjs +1 -5
- package/components/containers/tabs/fesm2022/index.mjs +45 -76
- package/components/containers/tabs/fesm2022/index.mjs.map +1 -1
- package/components/containers/tabs/public_api.d.ts +0 -1
- package/components/containers/tabs/tab-pane/tab-pane.component.d.ts +1 -1
- package/components/containers/tabs/tabs.component.d.ts +1 -1
- package/components/containers/tile/bundles/index.umd.js +6 -29
- package/components/containers/tile/esm2022/public_api.mjs +1 -2
- package/components/containers/tile/esm2022/tile.directive.mjs +3 -2
- package/components/containers/tile/fesm2022/index.mjs +5 -28
- package/components/containers/tile/fesm2022/index.mjs.map +1 -1
- package/components/containers/tile/public_api.d.ts +0 -1
- package/components/containers/tile/tile.directive.d.ts +1 -1
- package/components/containers/wizard/bundles/index.umd.js +355 -186
- package/components/containers/wizard/esm2022/public_api.mjs +2 -3
- package/components/containers/wizard/esm2022/wizard-action/wizard-action.directive.mjs +3 -2
- package/components/containers/wizard/esm2022/wizard-step/wizard-step.component.mjs +176 -0
- package/components/containers/wizard/esm2022/wizard-step/wizard-step.props.mjs +8 -5
- package/components/containers/wizard/esm2022/wizard.component.mjs +264 -102
- package/components/containers/wizard/esm2022/wizard.props.mjs +8 -4
- package/components/containers/wizard/fesm2022/index.mjs +323 -152
- package/components/containers/wizard/fesm2022/index.mjs.map +1 -1
- package/components/containers/wizard/public_api.d.ts +1 -2
- package/components/containers/wizard/wizard-action/wizard-action.directive.d.ts +1 -1
- package/components/containers/wizard/wizard-step/{wizard-step.directive.d.ts → wizard-step.component.d.ts} +12 -6
- package/components/containers/wizard/wizard.component.d.ts +64 -18
- package/components/data/card/bundles/index.umd.js +92 -135
- package/components/data/card/card-actions/card-actions.directive.d.ts +1 -1
- package/components/data/card/card-content/card-content.component.d.ts +1 -1
- package/components/data/card/card-footer/card-footer.directive.d.ts +1 -1
- package/components/data/card/card.component.d.ts +1 -1
- package/components/data/card/esm2022/card-actions/card-actions.directive.mjs +3 -2
- package/components/data/card/esm2022/card-content/card-content.component.mjs +7 -6
- package/components/data/card/esm2022/card-footer/card-footer.directive.mjs +3 -2
- package/components/data/card/esm2022/card.component.mjs +39 -38
- package/components/data/card/esm2022/public_api.mjs +1 -2
- package/components/data/card/fesm2022/index.mjs +49 -92
- package/components/data/card/fesm2022/index.mjs.map +1 -1
- package/components/data/card/public_api.d.ts +0 -1
- package/components/data/form/bundles/index.umd.js +115 -182
- package/components/data/form/esm2022/form-action/form-action.directive.mjs +3 -2
- package/components/data/form/esm2022/form-field/form-field.directive.mjs +3 -2
- package/components/data/form/esm2022/form-widget.directive.mjs +3 -2
- package/components/data/form/esm2022/form.component.mjs +101 -104
- package/components/data/form/esm2022/form.props.mjs +1 -11
- package/components/data/form/esm2022/live-actions/dependson.directive.mjs +3 -2
- package/components/data/form/esm2022/live-actions/live-actions.directive.mjs +3 -2
- package/components/data/form/esm2022/live-filter/live-filter.directive.mjs +3 -2
- package/components/data/form/esm2022/live-form/live-form.directive.mjs +3 -6
- package/components/data/form/esm2022/public_api.mjs +1 -2
- package/components/data/form/fesm2022/index.mjs +117 -184
- package/components/data/form/fesm2022/index.mjs.map +1 -1
- package/components/data/form/form-action/form-action.directive.d.ts +1 -1
- package/components/data/form/form-field/form-field.directive.d.ts +1 -1
- package/components/data/form/form-widget.directive.d.ts +1 -1
- package/components/data/form/form.component.d.ts +1 -1
- package/components/data/form/live-actions/dependson.directive.d.ts +1 -1
- package/components/data/form/live-actions/live-actions.directive.d.ts +1 -1
- package/components/data/form/live-filter/live-filter.directive.d.ts +1 -1
- package/components/data/form/live-form/live-form.directive.d.ts +1 -1
- package/components/data/form/public_api.d.ts +0 -1
- package/components/data/list/bundles/index.umd.js +195 -504
- package/components/data/list/esm2022/list-item.directive.mjs +4 -3
- package/components/data/list/esm2022/list.component.mjs +187 -232
- package/components/data/list/esm2022/list.props.mjs +2 -3
- package/components/data/list/esm2022/public_api.mjs +1 -2
- package/components/data/list/fesm2022/index.mjs +193 -502
- package/components/data/list/fesm2022/index.mjs.map +1 -1
- package/components/data/list/list-item.directive.d.ts +1 -1
- package/components/data/list/list.component.d.ts +1 -1
- package/components/data/list/public_api.d.ts +0 -1
- package/components/data/live-table/bundles/index.umd.js +9 -33
- package/components/data/live-table/esm2022/live-table.component.mjs +7 -6
- package/components/data/live-table/esm2022/public_api.mjs +1 -2
- package/components/data/live-table/fesm2022/index.mjs +8 -32
- package/components/data/live-table/fesm2022/index.mjs.map +1 -1
- package/components/data/live-table/live-table.component.d.ts +1 -1
- package/components/data/live-table/public_api.d.ts +0 -1
- package/components/data/pagination/bundles/index.umd.js +80 -110
- package/components/data/pagination/esm2022/pagination.component.mjs +80 -76
- package/components/data/pagination/esm2022/public_api.mjs +1 -2
- package/components/data/pagination/fesm2022/index.mjs +81 -110
- package/components/data/pagination/fesm2022/index.mjs.map +1 -1
- package/components/data/pagination/pagination.component.d.ts +1 -1
- package/components/data/pagination/public_api.d.ts +0 -1
- package/components/data/table/bundles/index.umd.js +66 -135
- package/components/data/table/esm2022/public_api.mjs +1 -2
- package/components/data/table/esm2022/table-action/table-action.directive.mjs +3 -2
- package/components/data/table/esm2022/table-column/table-column.directive.mjs +3 -2
- package/components/data/table/esm2022/table-column-group/table-column-group.directive.mjs +3 -2
- package/components/data/table/esm2022/table-cud.directive.mjs +3 -2
- package/components/data/table/esm2022/table-filter.directive.mjs +4 -2
- package/components/data/table/esm2022/table-row/table-row.directive.mjs +3 -2
- package/components/data/table/esm2022/table-row-action/table-row-action.directive.mjs +3 -2
- package/components/data/table/esm2022/table.component.mjs +50 -49
- package/components/data/table/fesm2022/index.mjs +70 -140
- package/components/data/table/fesm2022/index.mjs.map +1 -1
- package/components/data/table/public_api.d.ts +0 -1
- package/components/data/table/table-action/table-action.directive.d.ts +1 -1
- package/components/data/table/table-column/table-column.directive.d.ts +1 -1
- package/components/data/table/table-column-group/table-column-group.directive.d.ts +1 -1
- package/components/data/table/table-cud.directive.d.ts +1 -1
- package/components/data/table/table-filter.directive.d.ts +1 -1
- package/components/data/table/table-row/table-row.directive.d.ts +1 -1
- package/components/data/table/table-row-action/table-row-action.directive.d.ts +1 -1
- package/components/data/table/table.component.d.ts +1 -1
- package/components/dialogs/alert-dialog/alert-dialog.component.d.ts +1 -1
- package/components/dialogs/alert-dialog/bundles/index.umd.js +32 -64
- package/components/dialogs/alert-dialog/esm2022/alert-dialog.component.mjs +10 -10
- package/components/dialogs/alert-dialog/esm2022/public_api.mjs +1 -2
- package/components/dialogs/alert-dialog/fesm2022/index.mjs +11 -43
- package/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/alert-dialog/public_api.d.ts +0 -1
- package/components/dialogs/confirm-dialog/bundles/index.umd.js +10 -42
- package/components/dialogs/confirm-dialog/confirm-dialog.component.d.ts +1 -1
- package/components/dialogs/confirm-dialog/esm2022/confirm-dialog.component.mjs +9 -9
- package/components/dialogs/confirm-dialog/esm2022/public_api.mjs +1 -2
- package/components/dialogs/confirm-dialog/fesm2022/index.mjs +10 -42
- package/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/confirm-dialog/public_api.d.ts +0 -1
- package/components/dialogs/default/bundles/index.umd.js +76 -136
- package/components/dialogs/default/dialog-body/dialog-body.directive.d.ts +1 -1
- package/components/dialogs/default/dialog-footer/dialog-footer.directive.d.ts +1 -1
- package/components/dialogs/default/dialog-header/dialog-header.component.d.ts +1 -1
- package/components/dialogs/default/esm2022/base-dialog.mjs +3 -3
- package/components/dialogs/default/esm2022/dialog-body/dialog-body.directive.mjs +3 -2
- package/components/dialogs/default/esm2022/dialog-footer/dialog-footer.directive.mjs +3 -2
- package/components/dialogs/default/esm2022/dialog-header/dialog-header.component.mjs +70 -97
- package/components/dialogs/default/esm2022/public_api.mjs +1 -2
- package/components/dialogs/default/fesm2022/index.mjs +78 -137
- package/components/dialogs/default/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/default/public_api.d.ts +0 -1
- package/components/dialogs/design-dialog/bundles/index.umd.js +16 -47
- package/components/dialogs/design-dialog/dialog.component.d.ts +1 -1
- package/components/dialogs/design-dialog/esm2022/dialog.component.mjs +14 -13
- package/components/dialogs/design-dialog/esm2022/public_api.mjs +1 -2
- package/components/dialogs/design-dialog/fesm2022/index.mjs +14 -45
- package/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/design-dialog/public_api.d.ts +0 -1
- package/components/dialogs/iframe-dialog/bundles/index.umd.js +20 -57
- package/components/dialogs/iframe-dialog/esm2022/iframe-dialog.component.mjs +21 -21
- package/components/dialogs/iframe-dialog/esm2022/public_api.mjs +1 -2
- package/components/dialogs/iframe-dialog/fesm2022/index.mjs +21 -57
- package/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/iframe-dialog/iframe-dialog.component.d.ts +1 -1
- package/components/dialogs/iframe-dialog/public_api.d.ts +0 -1
- package/components/dialogs/login-dialog/bundles/index.umd.js +6 -38
- package/components/dialogs/login-dialog/esm2022/login-dialog.directive.mjs +3 -2
- package/components/dialogs/login-dialog/esm2022/public_api.mjs +1 -2
- package/components/dialogs/login-dialog/fesm2022/index.mjs +6 -41
- package/components/dialogs/login-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/login-dialog/login-dialog.directive.d.ts +1 -1
- package/components/dialogs/login-dialog/public_api.d.ts +0 -1
- package/components/dialogs/partial-dialog/bundles/index.umd.js +17 -49
- package/components/dialogs/partial-dialog/esm2022/partial-dialog.component.mjs +16 -15
- package/components/dialogs/partial-dialog/esm2022/public_api.mjs +1 -2
- package/components/dialogs/partial-dialog/fesm2022/index.mjs +16 -47
- package/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/partial-dialog/partial-dialog.component.d.ts +1 -1
- package/components/dialogs/partial-dialog/public_api.d.ts +0 -1
- package/components/input/calendar/bundles/index.umd.js +19 -46
- package/components/input/calendar/calendar.component.d.ts +1 -1
- package/components/input/calendar/esm2022/calendar.component.mjs +24 -10
- package/components/input/calendar/esm2022/calendar.props.mjs +1 -1
- package/components/input/calendar/esm2022/public_api.mjs +1 -2
- package/components/input/calendar/fesm2022/index.mjs +26 -48
- package/components/input/calendar/fesm2022/index.mjs.map +1 -1
- package/components/input/calendar/public_api.d.ts +0 -1
- package/components/input/chips/bundles/index.umd.js +86 -114
- package/components/input/chips/chips.component.d.ts +1 -1
- package/components/input/chips/esm2022/chips.component.mjs +28 -27
- package/components/input/chips/esm2022/public_api.mjs +1 -2
- package/components/input/chips/fesm2022/index.mjs +29 -56
- package/components/input/chips/fesm2022/index.mjs.map +1 -1
- package/components/input/chips/public_api.d.ts +0 -1
- package/components/input/color-picker/bundles/index.umd.js +10 -40
- package/components/input/color-picker/color-picker.component.d.ts +1 -1
- package/components/input/color-picker/esm2022/color-picker.component.mjs +10 -6
- package/components/input/color-picker/esm2022/public_api.mjs +1 -2
- package/components/input/color-picker/fesm2022/index.mjs +11 -40
- package/components/input/color-picker/fesm2022/index.mjs.map +1 -1
- package/components/input/color-picker/public_api.d.ts +0 -1
- package/components/input/currency/bundles/index.umd.js +11 -41
- package/components/input/currency/currency.component.d.ts +1 -1
- package/components/input/currency/esm2022/currency.component.mjs +8 -6
- package/components/input/currency/esm2022/public_api.mjs +1 -2
- package/components/input/currency/fesm2022/index.mjs +11 -41
- package/components/input/currency/fesm2022/index.mjs.map +1 -1
- package/components/input/currency/public_api.d.ts +0 -1
- package/components/input/default/bundles/index.umd.js +2183 -2263
- package/components/input/default/button/button.component.d.ts +1 -1
- package/components/input/default/button-group/button-group.directive.d.ts +1 -1
- package/components/input/default/caption-position.directive.d.ts +1 -1
- package/components/input/default/checkbox/checkbox.component.d.ts +1 -1
- package/components/input/default/checkboxset/checkboxset.component.d.ts +1 -1
- package/components/input/default/composite/composite.directive.d.ts +1 -1
- package/components/input/default/esm2022/button/button.component.mjs +23 -21
- package/components/input/default/esm2022/button-group/button-group.directive.mjs +3 -2
- package/components/input/default/esm2022/caption-position.directive.mjs +3 -2
- package/components/input/default/esm2022/checkbox/checkbox.component.mjs +9 -6
- package/components/input/default/esm2022/checkboxset/checkboxset.component.mjs +73 -72
- package/components/input/default/esm2022/composite/composite.directive.mjs +3 -2
- package/components/input/default/esm2022/number/number.component.mjs +9 -6
- package/components/input/default/esm2022/public_api.mjs +1 -2
- package/components/input/default/esm2022/radioset/radioset.component.mjs +73 -72
- package/components/input/default/esm2022/select/select.component.mjs +29 -32
- package/components/input/default/esm2022/switch/switch.component.mjs +29 -27
- package/components/input/default/esm2022/text/calendar/input-calendar.component.mjs +9 -6
- package/components/input/default/esm2022/text/color/input-color.component.mjs +9 -6
- package/components/input/default/esm2022/text/email/input-email.component.mjs +9 -6
- package/components/input/default/esm2022/text/number/input-number.component.mjs +9 -6
- package/components/input/default/esm2022/text/text/input-text.component.mjs +10 -6
- package/components/input/default/esm2022/textarea/textarea.component.mjs +14 -11
- package/components/input/default/fesm2022/index.mjs +2198 -2277
- package/components/input/default/fesm2022/index.mjs.map +1 -1
- package/components/input/default/number/number.component.d.ts +1 -1
- package/components/input/default/public_api.d.ts +0 -1
- package/components/input/default/radioset/radioset.component.d.ts +1 -1
- package/components/input/default/select/select.component.d.ts +1 -1
- package/components/input/default/switch/switch.component.d.ts +1 -1
- package/components/input/default/text/calendar/input-calendar.component.d.ts +1 -1
- package/components/input/default/text/color/input-color.component.d.ts +1 -1
- package/components/input/default/text/email/input-email.component.d.ts +1 -1
- package/components/input/default/text/number/input-number.component.d.ts +1 -1
- package/components/input/default/text/text/input-text.component.d.ts +1 -1
- package/components/input/default/textarea/textarea.component.d.ts +1 -1
- package/components/input/epoch/base-date-time.component.d.ts +0 -1
- package/components/input/epoch/bundles/index.umd.js +181 -229
- package/components/input/epoch/date/date.component.d.ts +1 -1
- package/components/input/epoch/date/imaskUtil.d.ts +2 -2
- package/components/input/epoch/date-time/date-time-picker.component.d.ts +6 -6
- package/components/input/epoch/date-time/date-time.component.d.ts +1 -1
- package/components/input/epoch/esm2022/base-date-time.component.mjs +5 -9
- package/components/input/epoch/esm2022/date/date.component.mjs +19 -18
- package/components/input/epoch/esm2022/date/imaskUtil.mjs +2 -1
- package/components/input/epoch/esm2022/date-time/date-time-picker.component.mjs +75 -62
- package/components/input/epoch/esm2022/date-time/date-time.component.mjs +27 -24
- package/components/input/epoch/esm2022/picker/picker.component.mjs +33 -28
- package/components/input/epoch/esm2022/public_api.mjs +1 -2
- package/components/input/epoch/esm2022/time/time.component.mjs +24 -21
- package/components/input/epoch/fesm2022/index.mjs +158 -204
- package/components/input/epoch/fesm2022/index.mjs.map +1 -1
- package/components/input/epoch/picker/picker.component.d.ts +2 -2
- package/components/input/epoch/public_api.d.ts +0 -1
- package/components/input/epoch/time/time.component.d.ts +1 -1
- package/components/input/file-upload/bundles/index.umd.js +135 -178
- package/components/input/file-upload/esm2022/file-upload.component.mjs +133 -150
- package/components/input/file-upload/esm2022/public_api.mjs +1 -2
- package/components/input/file-upload/fesm2022/index.mjs +133 -175
- package/components/input/file-upload/fesm2022/index.mjs.map +1 -1
- package/components/input/file-upload/file-upload.component.d.ts +1 -2
- package/components/input/file-upload/public_api.d.ts +0 -1
- package/components/input/rating/bundles/index.umd.js +50 -77
- package/components/input/rating/esm2022/public_api.mjs +1 -2
- package/components/input/rating/esm2022/rating.component.mjs +23 -20
- package/components/input/rating/fesm2022/index.mjs +23 -49
- package/components/input/rating/fesm2022/index.mjs.map +1 -1
- package/components/input/rating/public_api.d.ts +0 -1
- package/components/input/rating/rating.component.d.ts +1 -1
- package/components/input/slider/bundles/index.umd.js +35 -63
- package/components/input/slider/esm2022/public_api.mjs +1 -2
- package/components/input/slider/esm2022/slider.component.mjs +15 -13
- package/components/input/slider/fesm2022/index.mjs +15 -42
- package/components/input/slider/fesm2022/index.mjs.map +1 -1
- package/components/input/slider/public_api.d.ts +0 -1
- package/components/input/slider/slider.component.d.ts +1 -1
- package/components/navigation/breadcrumb/breadcrumb.component.d.ts +1 -1
- package/components/navigation/breadcrumb/bundles/index.umd.js +40 -67
- package/components/navigation/breadcrumb/esm2022/breadcrumb.component.mjs +23 -21
- package/components/navigation/breadcrumb/esm2022/public_api.mjs +1 -2
- package/components/navigation/breadcrumb/fesm2022/index.mjs +23 -50
- package/components/navigation/breadcrumb/fesm2022/index.mjs.map +1 -1
- package/components/navigation/breadcrumb/public_api.d.ts +0 -1
- package/components/navigation/menu/bundles/index.umd.js +642 -696
- package/components/navigation/menu/esm2022/menu-adapator.component.mjs +1 -1
- package/components/navigation/menu/esm2022/menu-dropdown/menu-dropdown.component.mjs +11 -9
- package/components/navigation/menu/esm2022/menu-dropdown-item/menu-dropdown-item.component.mjs +24 -18
- package/components/navigation/menu/esm2022/menu.component.mjs +34 -31
- package/components/navigation/menu/esm2022/nav/nav-item/nav-item.directive.mjs +3 -2
- package/components/navigation/menu/esm2022/nav/nav.component.mjs +39 -29
- package/components/navigation/menu/esm2022/nav/navigation-control.directive.mjs +6 -3
- package/components/navigation/menu/esm2022/public_api.mjs +1 -2
- package/components/navigation/menu/fesm2022/index.mjs +534 -587
- package/components/navigation/menu/fesm2022/index.mjs.map +1 -1
- package/components/navigation/menu/menu-dropdown/menu-dropdown.component.d.ts +1 -1
- package/components/navigation/menu/menu-dropdown-item/menu-dropdown-item.component.d.ts +1 -1
- package/components/navigation/menu/menu.component.d.ts +1 -1
- package/components/navigation/menu/nav/nav-item/nav-item.directive.d.ts +1 -1
- package/components/navigation/menu/nav/nav.component.d.ts +1 -1
- package/components/navigation/menu/nav/navigation-control.directive.d.ts +1 -1
- package/components/navigation/menu/public_api.d.ts +0 -1
- package/components/navigation/navbar/bundles/index.umd.js +20 -44
- package/components/navigation/navbar/esm2022/navbar.component.mjs +18 -16
- package/components/navigation/navbar/esm2022/public_api.mjs +1 -2
- package/components/navigation/navbar/fesm2022/index.mjs +18 -41
- package/components/navigation/navbar/fesm2022/index.mjs.map +1 -1
- package/components/navigation/navbar/navbar.component.d.ts +1 -1
- package/components/navigation/navbar/public_api.d.ts +0 -1
- package/components/navigation/popover/bundles/index.umd.js +12 -43
- package/components/navigation/popover/esm2022/popover.component.mjs +11 -9
- package/components/navigation/popover/esm2022/public_api.mjs +1 -2
- package/components/navigation/popover/fesm2022/index.mjs +11 -41
- package/components/navigation/popover/fesm2022/index.mjs.map +1 -1
- package/components/navigation/popover/popover.component.d.ts +1 -1
- package/components/navigation/popover/public_api.d.ts +0 -1
- package/components/page/default/bundles/index.umd.js +96 -138
- package/components/page/default/content/content.component.d.ts +1 -1
- package/components/page/default/esm2022/content/content.component.mjs +7 -6
- package/components/page/default/esm2022/layout.directive.mjs +3 -2
- package/components/page/default/esm2022/page-content/page-content.component.mjs +7 -6
- package/components/page/default/esm2022/page-content/page-content.props.mjs +2 -3
- package/components/page/default/esm2022/page.directive.mjs +3 -2
- package/components/page/default/esm2022/public_api.mjs +1 -2
- package/components/page/default/esm2022/router-outlet.directive.mjs +3 -2
- package/components/page/default/esm2022/spa-page.directive.mjs +3 -2
- package/components/page/default/fesm2022/index.mjs +96 -138
- package/components/page/default/fesm2022/index.mjs.map +1 -1
- package/components/page/default/layout.directive.d.ts +1 -1
- package/components/page/default/page-content/page-content.component.d.ts +1 -1
- package/components/page/default/page.directive.d.ts +1 -1
- package/components/page/default/public_api.d.ts +0 -1
- package/components/page/default/router-outlet.directive.d.ts +1 -1
- package/components/page/default/spa-page.directive.d.ts +1 -1
- package/components/page/footer/bundles/index.umd.js +6 -29
- package/components/page/footer/esm2022/footer.directive.mjs +3 -2
- package/components/page/footer/esm2022/public_api.mjs +1 -2
- package/components/page/footer/fesm2022/index.mjs +5 -28
- package/components/page/footer/fesm2022/index.mjs.map +1 -1
- package/components/page/footer/footer.directive.d.ts +1 -1
- package/components/page/footer/public_api.d.ts +0 -1
- package/components/page/header/bundles/index.umd.js +9 -33
- package/components/page/header/esm2022/header.component.mjs +7 -6
- package/components/page/header/esm2022/public_api.mjs +1 -2
- package/components/page/header/fesm2022/index.mjs +8 -32
- package/components/page/header/fesm2022/index.mjs.map +1 -1
- package/components/page/header/header.component.d.ts +1 -1
- package/components/page/header/public_api.d.ts +0 -1
- package/components/page/left-panel/bundles/index.umd.js +6 -29
- package/components/page/left-panel/esm2022/left-panel.directive.mjs +3 -2
- package/components/page/left-panel/esm2022/public_api.mjs +1 -2
- package/components/page/left-panel/fesm2022/index.mjs +5 -28
- package/components/page/left-panel/fesm2022/index.mjs.map +1 -1
- package/components/page/left-panel/left-panel.directive.d.ts +1 -1
- package/components/page/left-panel/public_api.d.ts +0 -1
- package/components/page/right-panel/bundles/index.umd.js +6 -29
- package/components/page/right-panel/esm2022/public_api.mjs +1 -2
- package/components/page/right-panel/esm2022/right-panel.directive.mjs +3 -2
- package/components/page/right-panel/fesm2022/index.mjs +5 -28
- package/components/page/right-panel/fesm2022/index.mjs.map +1 -1
- package/components/page/right-panel/public_api.d.ts +0 -1
- package/components/page/right-panel/right-panel.directive.d.ts +1 -1
- package/components/page/top-nav/bundles/index.umd.js +6 -29
- package/components/page/top-nav/esm2022/public_api.mjs +1 -2
- package/components/page/top-nav/esm2022/top-nav.directive.mjs +3 -2
- package/components/page/top-nav/fesm2022/index.mjs +5 -28
- package/components/page/top-nav/fesm2022/index.mjs.map +1 -1
- package/components/page/top-nav/public_api.d.ts +0 -1
- package/components/page/top-nav/top-nav.directive.d.ts +1 -1
- package/components/prefab/bundles/index.umd.js +8 -33
- package/components/prefab/esm2022/prefab-container/prefab-container.directive.mjs +3 -2
- package/components/prefab/esm2022/prefab.directive.mjs +3 -2
- package/components/prefab/esm2022/public_api.mjs +1 -2
- package/components/prefab/fesm2022/index.mjs +7 -32
- package/components/prefab/fesm2022/index.mjs.map +1 -1
- package/components/prefab/prefab-container/prefab-container.directive.d.ts +1 -1
- package/components/prefab/prefab.directive.d.ts +1 -1
- package/components/prefab/public_api.d.ts +0 -1
- package/core/bundles/index.umd.js +30 -85
- package/core/esm2022/public_api.mjs +2 -3
- package/core/esm2022/utils/build-utils.mjs +9 -5
- package/core/esm2022/utils/utils.mjs +11 -40
- package/core/fesm2022/index.mjs +31 -81
- package/core/fesm2022/index.mjs.map +1 -1
- package/core/public_api.d.ts +1 -2
- package/core/utils/utils.d.ts +1 -3
- package/http/bundles/index.umd.js +9 -34
- package/http/esm2022/http.service.mjs +6 -3
- package/http/esm2022/public_api.mjs +4 -2
- package/http/fesm2022/index.mjs +9 -34
- package/http/fesm2022/index.mjs.map +1 -1
- package/http/public_api.d.ts +3 -1
- package/npm-shrinkwrap.json +2 -2
- package/oAuth/bundles/index.umd.js +7 -42
- package/oAuth/esm2022/oAuth.utils.mjs +6 -23
- package/oAuth/esm2022/public_api.mjs +1 -2
- package/oAuth/fesm2022/index.mjs +7 -40
- package/oAuth/fesm2022/index.mjs.map +1 -1
- package/oAuth/public_api.d.ts +0 -1
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/runtime/base/bundles/index.umd.js +681 -596
- package/runtime/base/components/app-component/app.component.d.ts +1 -1
- package/runtime/base/components/app-spinner.component.d.ts +1 -1
- package/runtime/base/components/custom-toaster.component.d.ts +1 -1
- package/runtime/base/components/empty-component/empty-page.component.d.ts +1 -1
- package/runtime/base/components/prefab-preview.component.d.ts +1 -1
- package/runtime/base/directives/accessroles.directive.d.ts +1 -1
- package/runtime/base/directives/prefab.directive.d.ts +1 -1
- package/runtime/base/esm2022/components/app-component/app.component.mjs +42 -49
- package/runtime/base/esm2022/components/app-spinner.component.mjs +29 -21
- package/runtime/base/esm2022/components/base-page.component.mjs +3 -11
- package/runtime/base/esm2022/components/base-spa-page.component.mjs +3 -11
- package/runtime/base/esm2022/components/custom-toaster.component.mjs +20 -14
- package/runtime/base/esm2022/components/empty-component/empty-page.component.mjs +4 -3
- package/runtime/base/esm2022/components/prefab-preview.component.mjs +8 -6
- package/runtime/base/esm2022/directives/accessroles.directive.mjs +3 -2
- package/runtime/base/esm2022/directives/prefab.directive.mjs +3 -2
- package/runtime/base/esm2022/public_api.mjs +1 -1
- package/runtime/base/esm2022/resolves/security-config.resolve.mjs +4 -6
- package/runtime/base/esm2022/runtime-base.module.mjs +486 -337
- package/runtime/base/esm2022/services/app.manager.service.mjs +31 -48
- package/runtime/base/esm2022/services/i18n.service.mjs +37 -72
- package/runtime/base/fesm2022/index.mjs +689 -605
- package/runtime/base/fesm2022/index.mjs.map +1 -1
- package/runtime/base/runtime-base.module.d.ts +115 -84
- package/runtime/base/services/i18n.service.d.ts +1 -1
- package/runtime/dynamic/app/components/page-wrapper.component.d.ts +1 -1
- package/runtime/dynamic/bundles/index.umd.js +113 -69
- package/runtime/dynamic/esm2022/app/app.module.mjs +151 -105
- package/runtime/dynamic/esm2022/app/components/page-wrapper.component.mjs +7 -4
- package/runtime/dynamic/esm2022/app/services/component-ref-provider.service.mjs +4 -2
- package/runtime/dynamic/esm2022/main.mjs +2 -7
- package/runtime/dynamic/fesm2022/index.mjs +159 -114
- package/runtime/dynamic/fesm2022/index.mjs.map +1 -1
- package/security/bundles/index.umd.js +3 -34
- package/security/esm2022/public_api.mjs +1 -2
- package/security/esm2022/security.service.mjs +4 -15
- package/security/fesm2022/index.mjs +5 -32
- package/security/fesm2022/index.mjs.map +1 -1
- package/security/public_api.d.ts +0 -1
- package/transpiler/bundles/index.umd.js +271 -168
- package/transpiler/esm2022/build.mjs +1 -6
- package/transpiler/esm2022/imports.mjs +268 -161
- package/transpiler/fesm2022/index.mjs +267 -165
- package/transpiler/fesm2022/index.mjs.map +1 -1
- package/variables/bundles/index.umd.js +14 -198
- package/variables/constants/variables.constants.d.ts +0 -2
- package/variables/esm2022/constants/variables.constants.mjs +1 -3
- package/variables/esm2022/factory/variable-manager.factory.mjs +1 -3
- package/variables/esm2022/factory/variable.factory.mjs +1 -5
- package/variables/esm2022/manager/action/logout-action.manager.mjs +5 -7
- package/variables/esm2022/manager/variable/web-socket-variable.manager.mjs +3 -3
- package/variables/esm2022/public_api.mjs +1 -5
- package/variables/esm2022/service/metadata-service/metadata.service.mjs +6 -11
- package/variables/esm2022/util/variable/service-variable.utils.mjs +1 -4
- package/variables/esm2022/util/variable/variables.utils.mjs +4 -19
- package/variables/fesm2022/index.mjs +15 -198
- package/variables/fesm2022/index.mjs.map +1 -1
- package/variables/public_api.d.ts +0 -4
- package/components/advanced/carousel/carousel.module.d.ts +0 -11
- package/components/advanced/carousel/esm2022/carousel.module.mjs +0 -36
- package/components/advanced/custom/custom-widget.module.d.ts +0 -10
- package/components/advanced/custom/esm2022/custom-widget.module.mjs +0 -32
- package/components/advanced/login/esm2022/login.module.mjs +0 -28
- package/components/advanced/login/login.module.d.ts +0 -9
- package/components/advanced/marquee/esm2022/marquee.module.mjs +0 -28
- package/components/advanced/marquee/marquee.module.d.ts +0 -9
- package/components/base/esm2022/widgets/common/smooth-scroll/smooth-scroll.directive.mjs +0 -221
- package/components/base/widgets/common/smooth-scroll/smooth-scroll.directive.d.ts +0 -22
- package/components/basic/default/basic.module.d.ts +0 -17
- package/components/basic/default/esm2022/basic.module.mjs +0 -60
- package/components/basic/progress/esm2022/progress.module.mjs +0 -36
- package/components/basic/progress/progress.module.d.ts +0 -11
- package/components/basic/rich-text-editor/esm2022/rich-text-editor.module.mjs +0 -28
- package/components/basic/rich-text-editor/rich-text-editor.module.d.ts +0 -9
- package/components/basic/search/esm2022/search.module.mjs +0 -45
- package/components/basic/search/search.module.d.ts +0 -12
- package/components/basic/tree/esm2022/tree.module.mjs +0 -28
- package/components/basic/tree/tree.module.d.ts +0 -9
- package/components/chart/chart.module.d.ts +0 -10
- package/components/chart/esm2022/chart.module.mjs +0 -32
- package/components/containers/accordion/accordion.module.d.ts +0 -10
- package/components/containers/accordion/esm2022/accordion.module.mjs +0 -32
- package/components/containers/layout-grid/esm2022/layout-grid.module.mjs +0 -36
- package/components/containers/layout-grid/layout-grid.module.d.ts +0 -11
- package/components/containers/linear-layout/esm2022/linear-layout.module.mjs +0 -32
- package/components/containers/linear-layout/linear-layout.module.d.ts +0 -10
- package/components/containers/panel/esm2022/panel.module.mjs +0 -36
- package/components/containers/panel/panel.module.d.ts +0 -11
- package/components/containers/tabs/esm2022/tabs.module.mjs +0 -32
- package/components/containers/tabs/tabs.module.d.ts +0 -10
- package/components/containers/tile/esm2022/tile.module.mjs +0 -28
- package/components/containers/tile/tile.module.d.ts +0 -9
- package/components/containers/wizard/esm2022/wizard-step/wizard-step.directive.mjs +0 -140
- package/components/containers/wizard/esm2022/wizard.module.mjs +0 -40
- package/components/containers/wizard/wizard.module.d.ts +0 -12
- package/components/data/card/card.module.d.ts +0 -15
- package/components/data/card/esm2022/card.module.mjs +0 -52
- package/components/data/form/esm2022/form.module.mjs +0 -68
- package/components/data/form/form.module.d.ts +0 -19
- package/components/data/list/esm2022/list.module.mjs +0 -40
- package/components/data/list/list.module.d.ts +0 -11
- package/components/data/live-table/esm2022/live-table.module.mjs +0 -28
- package/components/data/live-table/live-table.module.d.ts +0 -9
- package/components/data/pagination/esm2022/pagination.module.mjs +0 -36
- package/components/data/pagination/pagination.module.d.ts +0 -11
- package/components/data/table/esm2022/table.module.mjs +0 -91
- package/components/data/table/table.module.d.ts +0 -24
- package/components/dialogs/alert-dialog/alert-dialog.module.d.ts +0 -11
- package/components/dialogs/alert-dialog/esm2022/alert-dialog.module.mjs +0 -36
- package/components/dialogs/confirm-dialog/confirm-dialog.module.d.ts +0 -11
- package/components/dialogs/confirm-dialog/esm2022/confirm-dialog.module.mjs +0 -36
- package/components/dialogs/default/dialog.module.d.ts +0 -12
- package/components/dialogs/default/esm2022/dialog.module.mjs +0 -40
- package/components/dialogs/design-dialog/design-dialog.module.d.ts +0 -11
- package/components/dialogs/design-dialog/esm2022/design-dialog.module.mjs +0 -36
- package/components/dialogs/iframe-dialog/esm2022/iframe-dialog.module.mjs +0 -40
- package/components/dialogs/iframe-dialog/iframe-dialog.module.d.ts +0 -12
- package/components/dialogs/login-dialog/esm2022/login-dialog.module.mjs +0 -40
- package/components/dialogs/login-dialog/login-dialog.module.d.ts +0 -12
- package/components/dialogs/partial-dialog/esm2022/partial-dialog.module.mjs +0 -36
- package/components/dialogs/partial-dialog/partial-dialog.module.d.ts +0 -11
- package/components/input/calendar/calendar.module.d.ts +0 -12
- package/components/input/calendar/esm2022/calendar.module.mjs +0 -40
- package/components/input/chips/chips.module.d.ts +0 -10
- package/components/input/chips/esm2022/chips.module.mjs +0 -32
- package/components/input/color-picker/color-picker.module.d.ts +0 -11
- package/components/input/color-picker/esm2022/color-picker.module.mjs +0 -36
- package/components/input/currency/currency.module.d.ts +0 -11
- package/components/input/currency/esm2022/currency.module.mjs +0 -36
- package/components/input/default/esm2022/input.module.mjs +0 -96
- package/components/input/default/input.module.d.ts +0 -26
- package/components/input/epoch/epoch.module.d.ts +0 -18
- package/components/input/epoch/esm2022/epoch.module.mjs +0 -70
- package/components/input/file-upload/esm2022/file-upload.module.mjs +0 -28
- package/components/input/file-upload/file-upload.module.d.ts +0 -9
- package/components/input/rating/esm2022/rating.module.mjs +0 -32
- package/components/input/rating/rating.module.d.ts +0 -10
- package/components/input/slider/esm2022/slider.module.mjs +0 -32
- package/components/input/slider/slider.module.d.ts +0 -10
- package/components/navigation/breadcrumb/breadcrumb.module.d.ts +0 -10
- package/components/navigation/breadcrumb/esm2022/breadcrumb.module.mjs +0 -32
- package/components/navigation/menu/esm2022/menu.module.mjs +0 -71
- package/components/navigation/menu/menu.module.d.ts +0 -17
- package/components/navigation/navbar/esm2022/navbar.module.mjs +0 -28
- package/components/navigation/navbar/navbar.module.d.ts +0 -9
- package/components/navigation/popover/esm2022/popover.module.mjs +0 -36
- package/components/navigation/popover/popover.module.d.ts +0 -11
- package/components/page/default/esm2022/page.module.mjs +0 -55
- package/components/page/default/page.module.d.ts +0 -14
- package/components/page/footer/esm2022/footer.module.mjs +0 -28
- package/components/page/footer/footer.module.d.ts +0 -9
- package/components/page/header/esm2022/header.module.mjs +0 -28
- package/components/page/header/header.module.d.ts +0 -9
- package/components/page/left-panel/esm2022/left-panel.module.mjs +0 -28
- package/components/page/left-panel/left-panel.module.d.ts +0 -9
- package/components/page/right-panel/esm2022/right-panel.module.mjs +0 -28
- package/components/page/right-panel/right-panel.module.d.ts +0 -9
- package/components/page/top-nav/esm2022/top-nav.module.mjs +0 -28
- package/components/page/top-nav/top-nav.module.d.ts +0 -9
- package/components/prefab/esm2022/prefab.module.mjs +0 -32
- package/components/prefab/prefab.module.d.ts +0 -10
- package/core/core.module.d.ts +0 -9
- package/core/esm2022/core.module.mjs +0 -27
- package/http/esm2022/http-service.module.mjs +0 -36
- package/http/http-service.module.d.ts +0 -14
- package/locales/fullcalendar/af.js +0 -27
- package/locales/fullcalendar/ar-dz.js +0 -28
- package/locales/fullcalendar/ar-kw.js +0 -28
- package/locales/fullcalendar/ar-ly.js +0 -28
- package/locales/fullcalendar/ar-ma.js +0 -28
- package/locales/fullcalendar/ar-sa.js +0 -28
- package/locales/fullcalendar/ar-tn.js +0 -28
- package/locales/fullcalendar/ar.js +0 -28
- package/locales/fullcalendar/az.js +0 -29
- package/locales/fullcalendar/bg.js +0 -28
- package/locales/fullcalendar/bs.js +0 -29
- package/locales/fullcalendar/ca.js +0 -27
- package/locales/fullcalendar/cs.js +0 -29
- package/locales/fullcalendar/da.js +0 -27
- package/locales/fullcalendar/de.js +0 -30
- package/locales/fullcalendar/el.js +0 -27
- package/locales/fullcalendar/en-au.js +0 -14
- package/locales/fullcalendar/en-gb.js +0 -14
- package/locales/fullcalendar/en-nz.js +0 -14
- package/locales/fullcalendar/es-us.js +0 -27
- package/locales/fullcalendar/es.js +0 -27
- package/locales/fullcalendar/et.js +0 -29
- package/locales/fullcalendar/eu.js +0 -27
- package/locales/fullcalendar/fa.js +0 -30
- package/locales/fullcalendar/fi.js +0 -27
- package/locales/fullcalendar/fr-ca.js +0 -24
- package/locales/fullcalendar/fr-ch.js +0 -28
- package/locales/fullcalendar/fr.js +0 -28
- package/locales/fullcalendar/gl.js +0 -27
- package/locales/fullcalendar/he.js +0 -24
- package/locales/fullcalendar/hi.js +0 -29
- package/locales/fullcalendar/hr.js +0 -29
- package/locales/fullcalendar/hu.js +0 -27
- package/locales/fullcalendar/id.js +0 -27
- package/locales/fullcalendar/is.js +0 -27
- package/locales/fullcalendar/it.js +0 -29
- package/locales/fullcalendar/ja.js +0 -25
- package/locales/fullcalendar/ka.js +0 -29
- package/locales/fullcalendar/kk.js +0 -29
- package/locales/fullcalendar/ko.js +0 -23
- package/locales/fullcalendar/lb.js +0 -27
- package/locales/fullcalendar/lt.js +0 -27
- package/locales/fullcalendar/lv.js +0 -29
- package/locales/fullcalendar/mk.js +0 -25
- package/locales/fullcalendar/ms.js +0 -29
- package/locales/fullcalendar/nb.js +0 -27
- package/locales/fullcalendar/ne.js +0 -27
- package/locales/fullcalendar/nl.js +0 -27
- package/locales/fullcalendar/nn.js +0 -27
- package/locales/fullcalendar/pl.js +0 -27
- package/locales/fullcalendar/pt-br.js +0 -25
- package/locales/fullcalendar/pt.js +0 -27
- package/locales/fullcalendar/ro.js +0 -29
- package/locales/fullcalendar/ru.js +0 -29
- package/locales/fullcalendar/sk.js +0 -29
- package/locales/fullcalendar/sl.js +0 -27
- package/locales/fullcalendar/sq.js +0 -29
- package/locales/fullcalendar/sr-cyrl.js +0 -29
- package/locales/fullcalendar/sr.js +0 -29
- package/locales/fullcalendar/sv.js +0 -27
- package/locales/fullcalendar/th.js +0 -30
- package/locales/fullcalendar/tr.js +0 -27
- package/locales/fullcalendar/ug.js +0 -17
- package/locales/fullcalendar/uk.js +0 -29
- package/locales/fullcalendar/uz.js +0 -21
- package/locales/fullcalendar/vi.js +0 -29
- package/locales/fullcalendar/zh-cn.js +0 -30
- package/locales/fullcalendar/zh-tw.js +0 -23
- package/mobile/components/basic/default/.npmignore +0 -2
- package/mobile/components/basic/default/anchor/anchor.directive.d.ts +0 -8
- package/mobile/components/basic/default/app-update/app-update.component.d.ts +0 -26
- package/mobile/components/basic/default/basic.module.d.ts +0 -15
- package/mobile/components/basic/default/bundles/index.umd.js +0 -980
- package/mobile/components/basic/default/esm2022/anchor/anchor.directive.mjs +0 -44
- package/mobile/components/basic/default/esm2022/app-update/app-update.component.mjs +0 -116
- package/mobile/components/basic/default/esm2022/basic.module.mjs +0 -52
- package/mobile/components/basic/default/esm2022/file-browser/file-browser.component.mjs +0 -236
- package/mobile/components/basic/default/esm2022/file-browser/file-selector.service.mjs +0 -85
- package/mobile/components/basic/default/esm2022/image-cache/image-cache.directive.mjs +0 -61
- package/mobile/components/basic/default/esm2022/index.mjs +0 -5
- package/mobile/components/basic/default/esm2022/network-info-toaster/network-info-toaster.component.mjs +0 -183
- package/mobile/components/basic/default/esm2022/network-info-toaster/network-info-toaster.props.mjs +0 -5
- package/mobile/components/basic/default/esm2022/process-manager/process-management.service.mjs +0 -47
- package/mobile/components/basic/default/esm2022/process-manager/process-manager.component.mjs +0 -175
- package/mobile/components/basic/default/esm2022/public_api.mjs +0 -10
- package/mobile/components/basic/default/fesm2022/index.mjs +0 -958
- package/mobile/components/basic/default/fesm2022/index.mjs.map +0 -1
- package/mobile/components/basic/default/file-browser/file-browser.component.d.ts +0 -39
- package/mobile/components/basic/default/file-browser/file-selector.service.d.ts +0 -27
- package/mobile/components/basic/default/image-cache/image-cache.directive.d.ts +0 -18
- package/mobile/components/basic/default/index.d.ts +0 -5
- package/mobile/components/basic/default/network-info-toaster/network-info-toaster.component.d.ts +0 -28
- package/mobile/components/basic/default/network-info-toaster/network-info-toaster.props.d.ts +0 -1
- package/mobile/components/basic/default/package.json +0 -23
- package/mobile/components/basic/default/process-manager/process-management.service.d.ts +0 -36
- package/mobile/components/basic/default/process-manager/process-manager.component.d.ts +0 -33
- package/mobile/components/basic/default/public_api.d.ts +0 -9
- package/mobile/components/basic/search/.npmignore +0 -2
- package/mobile/components/basic/search/bundles/index.umd.js +0 -66
- package/mobile/components/basic/search/esm2022/index.mjs +0 -5
- package/mobile/components/basic/search/esm2022/public_api.mjs +0 -3
- package/mobile/components/basic/search/esm2022/search.directive.mjs +0 -17
- package/mobile/components/basic/search/esm2022/search.module.mjs +0 -28
- package/mobile/components/basic/search/fesm2022/index.mjs +0 -49
- package/mobile/components/basic/search/fesm2022/index.mjs.map +0 -1
- package/mobile/components/basic/search/index.d.ts +0 -5
- package/mobile/components/basic/search/package.json +0 -23
- package/mobile/components/basic/search/public_api.d.ts +0 -2
- package/mobile/components/basic/search/search.directive.d.ts +0 -7
- package/mobile/components/basic/search/search.module.d.ts +0 -9
- package/mobile/components/containers/segmented-control/.npmignore +0 -2
- package/mobile/components/containers/segmented-control/bundles/index.umd.js +0 -281
- package/mobile/components/containers/segmented-control/esm2022/index.mjs +0 -5
- package/mobile/components/containers/segmented-control/esm2022/public_api.mjs +0 -4
- package/mobile/components/containers/segmented-control/esm2022/segment-content/segment-content.component.mjs +0 -70
- package/mobile/components/containers/segmented-control/esm2022/segment-content/segment-content.props.mjs +0 -14
- package/mobile/components/containers/segmented-control/esm2022/segmented-control.component.mjs +0 -147
- package/mobile/components/containers/segmented-control/esm2022/segmented-control.module.mjs +0 -32
- package/mobile/components/containers/segmented-control/esm2022/segmented-control.props.mjs +0 -9
- package/mobile/components/containers/segmented-control/fesm2022/index.mjs +0 -264
- package/mobile/components/containers/segmented-control/fesm2022/index.mjs.map +0 -1
- package/mobile/components/containers/segmented-control/index.d.ts +0 -5
- package/mobile/components/containers/segmented-control/package.json +0 -23
- package/mobile/components/containers/segmented-control/public_api.d.ts +0 -3
- package/mobile/components/containers/segmented-control/segment-content/segment-content.component.d.ts +0 -18
- package/mobile/components/containers/segmented-control/segment-content/segment-content.props.d.ts +0 -1
- package/mobile/components/containers/segmented-control/segmented-control.component.d.ts +0 -20
- package/mobile/components/containers/segmented-control/segmented-control.module.d.ts +0 -10
- package/mobile/components/containers/segmented-control/segmented-control.props.d.ts +0 -1
- package/mobile/components/data/media-list/.npmignore +0 -2
- package/mobile/components/data/media-list/bundles/index.umd.js +0 -310
- package/mobile/components/data/media-list/esm2022/index.mjs +0 -5
- package/mobile/components/data/media-list/esm2022/media-list-item/media-list-item.directive.mjs +0 -24
- package/mobile/components/data/media-list/esm2022/media-list.component.mjs +0 -213
- package/mobile/components/data/media-list/esm2022/media-list.module.mjs +0 -48
- package/mobile/components/data/media-list/esm2022/media-list.props.mjs +0 -16
- package/mobile/components/data/media-list/esm2022/public_api.mjs +0 -4
- package/mobile/components/data/media-list/fesm2022/index.mjs +0 -297
- package/mobile/components/data/media-list/fesm2022/index.mjs.map +0 -1
- package/mobile/components/data/media-list/index.d.ts +0 -5
- package/mobile/components/data/media-list/media-list-item/media-list-item.directive.d.ts +0 -8
- package/mobile/components/data/media-list/media-list.component.d.ts +0 -33
- package/mobile/components/data/media-list/media-list.module.d.ts +0 -14
- package/mobile/components/data/media-list/media-list.props.d.ts +0 -1
- package/mobile/components/data/media-list/package.json +0 -23
- package/mobile/components/data/media-list/public_api.d.ts +0 -3
- package/mobile/components/device/barcode-scanner/.npmignore +0 -2
- package/mobile/components/device/barcode-scanner/barcode-scanner.component.d.ts +0 -18
- package/mobile/components/device/barcode-scanner/barcode-scanner.module.d.ts +0 -9
- package/mobile/components/device/barcode-scanner/barcode-scanner.props.d.ts +0 -1
- package/mobile/components/device/barcode-scanner/bundles/index.umd.js +0 -129
- package/mobile/components/device/barcode-scanner/esm2022/barcode-scanner.component.mjs +0 -69
- package/mobile/components/device/barcode-scanner/esm2022/barcode-scanner.module.mjs +0 -28
- package/mobile/components/device/barcode-scanner/esm2022/barcode-scanner.props.mjs +0 -15
- package/mobile/components/device/barcode-scanner/esm2022/index.mjs +0 -5
- package/mobile/components/device/barcode-scanner/esm2022/public_api.mjs +0 -3
- package/mobile/components/device/barcode-scanner/fesm2022/index.mjs +0 -112
- package/mobile/components/device/barcode-scanner/fesm2022/index.mjs.map +0 -1
- package/mobile/components/device/barcode-scanner/index.d.ts +0 -5
- package/mobile/components/device/barcode-scanner/package.json +0 -23
- package/mobile/components/device/barcode-scanner/public_api.d.ts +0 -2
- package/mobile/components/device/camera/.npmignore +0 -2
- package/mobile/components/device/camera/bundles/index.umd.js +0 -170
- package/mobile/components/device/camera/camera.component.d.ts +0 -37
- package/mobile/components/device/camera/camera.module.d.ts +0 -9
- package/mobile/components/device/camera/camera.props.d.ts +0 -1
- package/mobile/components/device/camera/esm2022/camera.component.mjs +0 -101
- package/mobile/components/device/camera/esm2022/camera.module.mjs +0 -28
- package/mobile/components/device/camera/esm2022/camera.props.mjs +0 -25
- package/mobile/components/device/camera/esm2022/index.mjs +0 -5
- package/mobile/components/device/camera/esm2022/public_api.mjs +0 -3
- package/mobile/components/device/camera/fesm2022/index.mjs +0 -153
- package/mobile/components/device/camera/fesm2022/index.mjs.map +0 -1
- package/mobile/components/device/camera/index.d.ts +0 -5
- package/mobile/components/device/camera/package.json +0 -23
- package/mobile/components/device/camera/public_api.d.ts +0 -2
- package/mobile/components/input/file-upload/.npmignore +0 -2
- package/mobile/components/input/file-upload/bundles/index.umd.js +0 -88
- package/mobile/components/input/file-upload/esm2022/file-upload.directive.mjs +0 -41
- package/mobile/components/input/file-upload/esm2022/file-upload.module.mjs +0 -28
- package/mobile/components/input/file-upload/esm2022/index.mjs +0 -5
- package/mobile/components/input/file-upload/esm2022/public_api.mjs +0 -3
- package/mobile/components/input/file-upload/fesm2022/index.mjs +0 -71
- package/mobile/components/input/file-upload/fesm2022/index.mjs.map +0 -1
- package/mobile/components/input/file-upload/file-upload.directive.d.ts +0 -11
- package/mobile/components/input/file-upload/file-upload.module.d.ts +0 -9
- package/mobile/components/input/file-upload/index.d.ts +0 -5
- package/mobile/components/input/file-upload/package.json +0 -23
- package/mobile/components/input/file-upload/public_api.d.ts +0 -2
- package/mobile/components/page/default/.npmignore +0 -2
- package/mobile/components/page/default/bundles/index.umd.js +0 -127
- package/mobile/components/page/default/esm2022/index.mjs +0 -5
- package/mobile/components/page/default/esm2022/page-content-loader/page-content-loader.component.mjs +0 -24
- package/mobile/components/page/default/esm2022/page.directive.mjs +0 -58
- package/mobile/components/page/default/esm2022/page.module.mjs +0 -32
- package/mobile/components/page/default/esm2022/public_api.mjs +0 -4
- package/mobile/components/page/default/fesm2022/index.mjs +0 -110
- package/mobile/components/page/default/fesm2022/index.mjs.map +0 -1
- package/mobile/components/page/default/index.d.ts +0 -5
- package/mobile/components/page/default/package.json +0 -23
- package/mobile/components/page/default/page-content-loader/page-content-loader.component.d.ts +0 -7
- package/mobile/components/page/default/page.directive.d.ts +0 -19
- package/mobile/components/page/default/page.module.d.ts +0 -10
- package/mobile/components/page/default/public_api.d.ts +0 -3
- package/mobile/components/page/left-panel/.npmignore +0 -2
- package/mobile/components/page/left-panel/bundles/index.umd.js +0 -91
- package/mobile/components/page/left-panel/esm2022/index.mjs +0 -5
- package/mobile/components/page/left-panel/esm2022/left-panel.directive.mjs +0 -45
- package/mobile/components/page/left-panel/esm2022/left-panel.module.mjs +0 -28
- package/mobile/components/page/left-panel/esm2022/public_api.mjs +0 -3
- package/mobile/components/page/left-panel/fesm2022/index.mjs +0 -74
- package/mobile/components/page/left-panel/fesm2022/index.mjs.map +0 -1
- package/mobile/components/page/left-panel/index.d.ts +0 -5
- package/mobile/components/page/left-panel/left-panel.directive.d.ts +0 -16
- package/mobile/components/page/left-panel/left-panel.module.d.ts +0 -9
- package/mobile/components/page/left-panel/package.json +0 -23
- package/mobile/components/page/left-panel/public_api.d.ts +0 -2
- package/mobile/components/page/mobile-navbar/.npmignore +0 -2
- package/mobile/components/page/mobile-navbar/bundles/index.umd.js +0 -332
- package/mobile/components/page/mobile-navbar/esm2022/index.mjs +0 -5
- package/mobile/components/page/mobile-navbar/esm2022/mobile-navbar.component.mjs +0 -247
- package/mobile/components/page/mobile-navbar/esm2022/mobile-navbar.module.mjs +0 -32
- package/mobile/components/page/mobile-navbar/esm2022/mobile-navbar.props.mjs +0 -41
- package/mobile/components/page/mobile-navbar/esm2022/public_api.mjs +0 -3
- package/mobile/components/page/mobile-navbar/fesm2022/index.mjs +0 -317
- package/mobile/components/page/mobile-navbar/fesm2022/index.mjs.map +0 -1
- package/mobile/components/page/mobile-navbar/index.d.ts +0 -5
- package/mobile/components/page/mobile-navbar/mobile-navbar.component.d.ts +0 -50
- package/mobile/components/page/mobile-navbar/mobile-navbar.module.d.ts +0 -10
- package/mobile/components/page/mobile-navbar/mobile-navbar.props.d.ts +0 -2
- package/mobile/components/page/mobile-navbar/package.json +0 -23
- package/mobile/components/page/mobile-navbar/public_api.d.ts +0 -2
- package/mobile/components/page/tab-bar/.npmignore +0 -2
- package/mobile/components/page/tab-bar/bundles/index.umd.js +0 -279
- package/mobile/components/page/tab-bar/esm2022/index.mjs +0 -5
- package/mobile/components/page/tab-bar/esm2022/public_api.mjs +0 -3
- package/mobile/components/page/tab-bar/esm2022/tab-bar.module.mjs +0 -28
- package/mobile/components/page/tab-bar/esm2022/tabbar.component.mjs +0 -219
- package/mobile/components/page/tab-bar/esm2022/tabbar.props.mjs +0 -15
- package/mobile/components/page/tab-bar/fesm2022/index.mjs +0 -262
- package/mobile/components/page/tab-bar/fesm2022/index.mjs.map +0 -1
- package/mobile/components/page/tab-bar/index.d.ts +0 -5
- package/mobile/components/page/tab-bar/package.json +0 -23
- package/mobile/components/page/tab-bar/public_api.d.ts +0 -2
- package/mobile/components/page/tab-bar/tab-bar.module.d.ts +0 -9
- package/mobile/components/page/tab-bar/tabbar.component.d.ts +0 -40
- package/mobile/components/page/tab-bar/tabbar.props.d.ts +0 -1
- package/mobile/core/.npmignore +0 -2
- package/mobile/core/bundles/index.umd.js +0 -1658
- package/mobile/core/core.module.d.ts +0 -15
- package/mobile/core/esm2022/core.module.mjs +0 -79
- package/mobile/core/esm2022/index.mjs +0 -5
- package/mobile/core/esm2022/native.xhr.mjs +0 -340
- package/mobile/core/esm2022/public_api.mjs +0 -12
- package/mobile/core/esm2022/services/device-file-cache.service.mjs +0 -92
- package/mobile/core/esm2022/services/device-file-download.service.mjs +0 -154
- package/mobile/core/esm2022/services/device-file-opener.service.mjs +0 -112
- package/mobile/core/esm2022/services/device-file-upload.service.mjs +0 -91
- package/mobile/core/esm2022/services/device-file.service.mjs +0 -237
- package/mobile/core/esm2022/services/device-start-up-service.mjs +0 -2
- package/mobile/core/esm2022/services/device.service.mjs +0 -150
- package/mobile/core/esm2022/services/ext-app-message.service.mjs +0 -114
- package/mobile/core/esm2022/services/network.service.mjs +0 -358
- package/mobile/core/fesm2022/index.mjs +0 -1660
- package/mobile/core/fesm2022/index.mjs.map +0 -1
- package/mobile/core/index.d.ts +0 -5
- package/mobile/core/native.xhr.d.ts +0 -36
- package/mobile/core/package.json +0 -28
- package/mobile/core/public_api.d.ts +0 -11
- package/mobile/core/services/device-file-cache.service.d.ts +0 -24
- package/mobile/core/services/device-file-download.service.d.ts +0 -36
- package/mobile/core/services/device-file-opener.service.d.ts +0 -25
- package/mobile/core/services/device-file-upload.service.d.ts +0 -27
- package/mobile/core/services/device-file.service.d.ts +0 -45
- package/mobile/core/services/device-start-up-service.d.ts +0 -4
- package/mobile/core/services/device.service.d.ts +0 -52
- package/mobile/core/services/ext-app-message.service.d.ts +0 -24
- package/mobile/core/services/network.service.d.ts +0 -118
- package/mobile/offline/.npmignore +0 -2
- package/mobile/offline/bundles/index.umd.js +0 -3512
- package/mobile/offline/esm2022/index.mjs +0 -5
- package/mobile/offline/esm2022/models/config.mjs +0 -64
- package/mobile/offline/esm2022/models/local-db-store.mjs +0 -412
- package/mobile/offline/esm2022/offline.module.mjs +0 -100
- package/mobile/offline/esm2022/public_api.mjs +0 -7
- package/mobile/offline/esm2022/services/change-log.service.mjs +0 -332
- package/mobile/offline/esm2022/services/local-db-data-pull.service.mjs +0 -525
- package/mobile/offline/esm2022/services/local-db-management.service.mjs +0 -855
- package/mobile/offline/esm2022/services/local-db.service.mjs +0 -193
- package/mobile/offline/esm2022/services/local-key-value.service.mjs +0 -87
- package/mobile/offline/esm2022/services/push.service.mjs +0 -49
- package/mobile/offline/esm2022/services/workers/error-blocker.mjs +0 -115
- package/mobile/offline/esm2022/services/workers/file-handler.mjs +0 -162
- package/mobile/offline/esm2022/services/workers/id-resolver.mjs +0 -154
- package/mobile/offline/esm2022/services/workers/multi-part-param-transformer.mjs +0 -63
- package/mobile/offline/esm2022/utils/file-upload.utils.mjs +0 -59
- package/mobile/offline/esm2022/utils/live-variable.utils.mjs +0 -232
- package/mobile/offline/esm2022/utils/query-executor.utils.mjs +0 -82
- package/mobile/offline/esm2022/utils/security.utils.mjs +0 -119
- package/mobile/offline/esm2022/utils/utils.mjs +0 -8
- package/mobile/offline/fesm2022/index.mjs +0 -3529
- package/mobile/offline/fesm2022/index.mjs.map +0 -1
- package/mobile/offline/index.d.ts +0 -5
- package/mobile/offline/models/config.d.ts +0 -80
- package/mobile/offline/models/local-db-store.d.ts +0 -119
- package/mobile/offline/offline.module.d.ts +0 -17
- package/mobile/offline/package.json +0 -28
- package/mobile/offline/public_api.d.ts +0 -6
- package/mobile/offline/services/change-log.service.d.ts +0 -112
- package/mobile/offline/services/local-db-data-pull.service.d.ts +0 -139
- package/mobile/offline/services/local-db-management.service.d.ts +0 -179
- package/mobile/offline/services/local-db.service.d.ts +0 -83
- package/mobile/offline/services/local-key-value.service.d.ts +0 -38
- package/mobile/offline/services/push.service.d.ts +0 -11
- package/mobile/offline/services/workers/error-blocker.d.ts +0 -26
- package/mobile/offline/services/workers/file-handler.d.ts +0 -56
- package/mobile/offline/services/workers/id-resolver.d.ts +0 -26
- package/mobile/offline/services/workers/multi-part-param-transformer.d.ts +0 -11
- package/mobile/offline/utils/file-upload.utils.d.ts +0 -14
- package/mobile/offline/utils/live-variable.utils.d.ts +0 -24
- package/mobile/offline/utils/query-executor.utils.d.ts +0 -15
- package/mobile/offline/utils/security.utils.d.ts +0 -19
- package/mobile/offline/utils/utils.d.ts +0 -2
- package/mobile/placeholder/runtime/.npmignore +0 -2
- package/mobile/placeholder/runtime/bundles/index.umd.js +0 -70
- package/mobile/placeholder/runtime/components/app-ext.component.d.ts +0 -5
- package/mobile/placeholder/runtime/esm2022/components/app-ext.component.mjs +0 -19
- package/mobile/placeholder/runtime/esm2022/index.mjs +0 -5
- package/mobile/placeholder/runtime/esm2022/mobile-runtime.module.mjs +0 -27
- package/mobile/placeholder/runtime/esm2022/public_api.mjs +0 -3
- package/mobile/placeholder/runtime/fesm2022/index.mjs +0 -50
- package/mobile/placeholder/runtime/fesm2022/index.mjs.map +0 -1
- package/mobile/placeholder/runtime/index.d.ts +0 -5
- package/mobile/placeholder/runtime/mobile-runtime.module.d.ts +0 -9
- package/mobile/placeholder/runtime/package.json +0 -27
- package/mobile/placeholder/runtime/public_api.d.ts +0 -2
- package/mobile/placeholder/runtime-dynamic/.npmignore +0 -2
- package/mobile/placeholder/runtime-dynamic/bundles/index.umd.js +0 -40
- package/mobile/placeholder/runtime-dynamic/esm2022/index.mjs +0 -5
- package/mobile/placeholder/runtime-dynamic/esm2022/mobile-runtime-dynamic.module.mjs +0 -13
- package/mobile/placeholder/runtime-dynamic/esm2022/public_api.mjs +0 -2
- package/mobile/placeholder/runtime-dynamic/fesm2022/index.mjs +0 -20
- package/mobile/placeholder/runtime-dynamic/fesm2022/index.mjs.map +0 -1
- package/mobile/placeholder/runtime-dynamic/index.d.ts +0 -5
- package/mobile/placeholder/runtime-dynamic/mobile-runtime-dynamic.module.d.ts +0 -7
- package/mobile/placeholder/runtime-dynamic/package.json +0 -23
- package/mobile/placeholder/runtime-dynamic/public_api.d.ts +0 -1
- package/mobile/runtime/.npmignore +0 -2
- package/mobile/runtime/bundles/index.umd.js +0 -732
- package/mobile/runtime/components/app-ext.component.d.ts +0 -14
- package/mobile/runtime/esm2022/components/app-ext.component.mjs +0 -59
- package/mobile/runtime/esm2022/index.mjs +0 -5
- package/mobile/runtime/esm2022/mobile-runtime.module.mjs +0 -351
- package/mobile/runtime/esm2022/public_api.mjs +0 -6
- package/mobile/runtime/esm2022/services/cookie.service.mjs +0 -135
- package/mobile/runtime/esm2022/services/http-interceptor.service.mjs +0 -147
- package/mobile/runtime/esm2022/services/webprocess.service.mjs +0 -76
- package/mobile/runtime/fesm2022/index.mjs +0 -742
- package/mobile/runtime/fesm2022/index.mjs.map +0 -1
- package/mobile/runtime/index.d.ts +0 -5
- package/mobile/runtime/mobile-runtime.module.d.ts +0 -51
- package/mobile/runtime/package.json +0 -28
- package/mobile/runtime/public_api.d.ts +0 -5
- package/mobile/runtime/services/cookie.service.d.ts +0 -31
- package/mobile/runtime/services/http-interceptor.service.d.ts +0 -19
- package/mobile/runtime/services/webprocess.service.d.ts +0 -15
- package/mobile/runtime-dynamic/.npmignore +0 -2
- package/mobile/runtime-dynamic/bundles/index.umd.js +0 -461
- package/mobile/runtime-dynamic/esm2022/index.mjs +0 -5
- package/mobile/runtime-dynamic/esm2022/mobile-runtime-dynamic.module.mjs +0 -48
- package/mobile/runtime-dynamic/esm2022/public_api.mjs +0 -2
- package/mobile/runtime-dynamic/esm2022/services/live-sync.service.mjs +0 -404
- package/mobile/runtime-dynamic/fesm2022/index.mjs +0 -454
- package/mobile/runtime-dynamic/fesm2022/index.mjs.map +0 -1
- package/mobile/runtime-dynamic/index.d.ts +0 -5
- package/mobile/runtime-dynamic/mobile-runtime-dynamic.module.d.ts +0 -8
- package/mobile/runtime-dynamic/package.json +0 -23
- package/mobile/runtime-dynamic/public_api.d.ts +0 -1
- package/mobile/runtime-dynamic/services/live-sync.service.d.ts +0 -38
- package/mobile/variables/.npmignore +0 -2
- package/mobile/variables/bundles/index.umd.js +0 -1166
- package/mobile/variables/esm2022/index.mjs +0 -5
- package/mobile/variables/esm2022/public_api.mjs +0 -10
- package/mobile/variables/esm2022/services/calendar-service.mjs +0 -77
- package/mobile/variables/esm2022/services/camera-service.mjs +0 -70
- package/mobile/variables/esm2022/services/contacts-service.mjs +0 -74
- package/mobile/variables/esm2022/services/datasync-service.mjs +0 -363
- package/mobile/variables/esm2022/services/device-service/device-service.mjs +0 -161
- package/mobile/variables/esm2022/services/device-service/location-service.mjs +0 -200
- package/mobile/variables/esm2022/services/file-service.mjs +0 -87
- package/mobile/variables/esm2022/services/scan-service.mjs +0 -60
- package/mobile/variables/esm2022/variables.module.mjs +0 -78
- package/mobile/variables/fesm2022/index.mjs +0 -1143
- package/mobile/variables/fesm2022/index.mjs.map +0 -1
- package/mobile/variables/index.d.ts +0 -5
- package/mobile/variables/package.json +0 -28
- package/mobile/variables/public_api.d.ts +0 -9
- package/mobile/variables/services/calendar-service.d.ts +0 -10
- package/mobile/variables/services/camera-service.d.ts +0 -8
- package/mobile/variables/services/contacts-service.d.ts +0 -6
- package/mobile/variables/services/datasync-service.d.ts +0 -11
- package/mobile/variables/services/device-service/device-service.d.ts +0 -17
- package/mobile/variables/services/device-service/location-service.d.ts +0 -63
- package/mobile/variables/services/file-service.d.ts +0 -7
- package/mobile/variables/services/scan-service.d.ts +0 -7
- package/mobile/variables/variables.module.d.ts +0 -25
- package/oAuth/esm2022/oAuth.module.mjs +0 -19
- package/oAuth/oAuth.module.d.ts +0 -8
- package/scripts/fullcalendar/main.min.js +0 -6
- package/security/esm2022/security.module.mjs +0 -19
- package/security/security.module.d.ts +0 -8
- package/variables/esm2022/manager/variable/device-variable-manager.mjs +0 -48
- package/variables/esm2022/manager/variable/device-variable-operation.mjs +0 -2
- package/variables/esm2022/manager/variable/device-variable-service.mjs +0 -45
- package/variables/esm2022/model/variable/device-variable.mjs +0 -19
- package/variables/esm2022/variables.module.mjs +0 -52
- package/variables/manager/variable/device-variable-manager.d.ts +0 -26
- package/variables/manager/variable/device-variable-operation.d.ts +0 -37
- package/variables/manager/variable/device-variable-service.d.ts +0 -6
- package/variables/model/variable/device-variable.d.ts +0 -6
- package/variables/variables.module.d.ts +0 -16
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
import { noop } from '@wm/core';
|
|
2
|
-
import { assignIn, isEmpty, isEqual, isObject, isString, mapValues, replace } from "lodash-es";
|
|
3
|
-
const STORE_KEY = 'offlineFileUpload';
|
|
4
|
-
export class FileHandler {
|
|
5
|
-
constructor() {
|
|
6
|
-
this.logger = window.console;
|
|
7
|
-
}
|
|
8
|
-
preFlush(context) {
|
|
9
|
-
this.fileStore = context.get(STORE_KEY);
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* Replaces all local paths with the remote path using mappings created during 'uploadToServer'.
|
|
13
|
-
*/
|
|
14
|
-
preCall(change) {
|
|
15
|
-
if (change.service === 'DatabaseService') {
|
|
16
|
-
change.params.data = mapValues(change.params.data, v => {
|
|
17
|
-
const remoteUrl = this.fileStore[v];
|
|
18
|
-
if (remoteUrl) {
|
|
19
|
-
this.logger.debug('swapped file path from %s -> %s', v, remoteUrl);
|
|
20
|
-
return remoteUrl;
|
|
21
|
-
}
|
|
22
|
-
return v;
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
postCallSuccess(change, response) {
|
|
27
|
-
if (change.service === 'OfflineFileUploadService'
|
|
28
|
-
&& change.operation === 'uploadToServer') {
|
|
29
|
-
const remoteFile = JSON.parse(response[0].text)[0];
|
|
30
|
-
/*
|
|
31
|
-
* A mapping will be created between local path and remote path.
|
|
32
|
-
* This will be used to resolve local paths in entities.
|
|
33
|
-
*/
|
|
34
|
-
this.fileStore[change.params.file] = remoteFile.path;
|
|
35
|
-
this.fileStore[change.params.file + '?inline'] = remoteFile.inlinePath;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
export class UploadedFilesImportAndExportService {
|
|
40
|
-
constructor(changeLogService, deviceFileService, localDBManagementService, file) {
|
|
41
|
-
this.changeLogService = changeLogService;
|
|
42
|
-
this.deviceFileService = deviceFileService;
|
|
43
|
-
this.localDBManagementService = localDBManagementService;
|
|
44
|
-
this.file = file;
|
|
45
|
-
}
|
|
46
|
-
preExport(folderToExport, meta) {
|
|
47
|
-
// copy offline uploads
|
|
48
|
-
const uploadFullPath = this.deviceFileService.getUploadDirectory(), lastIndexOfSep = uploadFullPath.lastIndexOf('/'), uploadParentDir = uploadFullPath.substring(0, lastIndexOfSep + 1), uploadDirName = uploadFullPath.substring(lastIndexOfSep + 1);
|
|
49
|
-
meta.uploadDir = uploadFullPath;
|
|
50
|
-
return this.file.copyDir(uploadParentDir, uploadDirName, folderToExport, 'uploads');
|
|
51
|
-
}
|
|
52
|
-
postImport(importedFolder, meta) {
|
|
53
|
-
const uploadFullPath = this.deviceFileService.getUploadDirectory(), lastIndexOfSep = uploadFullPath.lastIndexOf('/'), uploadParentDir = uploadFullPath.substring(0, lastIndexOfSep + 1), uploadDirName = uploadFullPath.substring(lastIndexOfSep + 1);
|
|
54
|
-
this.uploadDir = uploadFullPath;
|
|
55
|
-
return this.file.checkDir(importedFolder, 'uploads')
|
|
56
|
-
.then(() => {
|
|
57
|
-
return this.deviceFileService.removeDir(uploadFullPath)
|
|
58
|
-
.then(() => this.file.copyDir(importedFolder, 'uploads', uploadParentDir, uploadDirName))
|
|
59
|
-
.then(() => this.updateChanges(meta));
|
|
60
|
-
}, noop);
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* returns back the changes that were logged.
|
|
64
|
-
* @param page page number
|
|
65
|
-
* @param size size of page
|
|
66
|
-
* @returns {*}
|
|
67
|
-
*/
|
|
68
|
-
getChanges(page, size) {
|
|
69
|
-
return this.changeLogService.getStore().then(strore => {
|
|
70
|
-
return (strore.filter([], 'id', {
|
|
71
|
-
offset: (page - 1) * size,
|
|
72
|
-
limit: size
|
|
73
|
-
}));
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* If this is a database change, then it will replace old upload directory with the current upload directory
|
|
78
|
-
* and its corresponding owner object, if it has primary key.
|
|
79
|
-
*
|
|
80
|
-
* @param change
|
|
81
|
-
* @param oldUploadDir
|
|
82
|
-
* @param uploadDir
|
|
83
|
-
* @returns {*}
|
|
84
|
-
*/
|
|
85
|
-
updateDBChange(change, oldUploadDir, uploadDir) {
|
|
86
|
-
const modifiedProperties = {}, entityName = change.params.entityName, dataModelName = change.params.dataModelName;
|
|
87
|
-
change.params.data = mapValues(change.params.data, function (v, k) {
|
|
88
|
-
let mv = v, isModified = false;
|
|
89
|
-
if (isString(v)) {
|
|
90
|
-
mv = replace(v, oldUploadDir, uploadDir);
|
|
91
|
-
isModified = !isEqual(mv, v);
|
|
92
|
-
}
|
|
93
|
-
else { // @ts-ignore
|
|
94
|
-
if (isObject(v) && v.wmLocalPath) {
|
|
95
|
-
// insertMultiPartData and updateMultiPartData
|
|
96
|
-
// @ts-ignore
|
|
97
|
-
mv = replace(v.wmLocalPath, oldUploadDir, uploadDir);
|
|
98
|
-
// @ts-ignore
|
|
99
|
-
isModified = !isEqual(mv, v.wmLocalPath);
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
if (isModified) {
|
|
103
|
-
modifiedProperties[k] = mv;
|
|
104
|
-
}
|
|
105
|
-
return mv;
|
|
106
|
-
});
|
|
107
|
-
if (!isEmpty(modifiedProperties)) {
|
|
108
|
-
this.localDBManagementService.getStore(dataModelName, entityName)
|
|
109
|
-
.then(store => {
|
|
110
|
-
// If there is a primary for the entity, then update actual row with the modifications
|
|
111
|
-
if (store.primaryKeyField && store.primaryKeyField.generatorType === 'identity') {
|
|
112
|
-
const primaryKeyName = store.primaryKeyName;
|
|
113
|
-
const primaryKey = change.params.data[primaryKeyName];
|
|
114
|
-
return store.get(primaryKey)
|
|
115
|
-
.then(obj => store.save(assignIn(obj, modifiedProperties)));
|
|
116
|
-
}
|
|
117
|
-
}).then(() => {
|
|
118
|
-
change.params = JSON.stringify(change.params);
|
|
119
|
-
return this.changeLogService.getStore().then(store => store.save(change));
|
|
120
|
-
});
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
/**
|
|
124
|
-
* This function check this change to update old upload directory path.
|
|
125
|
-
*
|
|
126
|
-
* @param change
|
|
127
|
-
* @param metaInfo
|
|
128
|
-
* @returns {*}
|
|
129
|
-
*/
|
|
130
|
-
updateChange(change, metaInfo) {
|
|
131
|
-
change.params = JSON.parse(change.params);
|
|
132
|
-
if (change.service === 'OfflineFileUploadService'
|
|
133
|
-
&& change.operation === 'uploadToServer') {
|
|
134
|
-
change.params.file = replace(change.params.file, metaInfo.uploadDir, this.uploadDir);
|
|
135
|
-
change.params = JSON.stringify(change.params);
|
|
136
|
-
return this.changeLogService.getStore().then(store => store.save(change));
|
|
137
|
-
}
|
|
138
|
-
if (change.service === 'DatabaseService') {
|
|
139
|
-
return this.updateDBChange(change, metaInfo.uploadDir, this.uploadDir);
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
/**
|
|
143
|
-
* This function will visit all the changes and modify them, if necessary.
|
|
144
|
-
* @param metaInfo
|
|
145
|
-
* @param page
|
|
146
|
-
* @returns {*}
|
|
147
|
-
*/
|
|
148
|
-
updateChanges(metaInfo, page = 1) {
|
|
149
|
-
const size = 10;
|
|
150
|
-
return this.getChanges(page, size)
|
|
151
|
-
.then(changes => {
|
|
152
|
-
if (changes && changes.length > 0) {
|
|
153
|
-
return Promise.all(changes.map(change => this.updateChange(change, metaInfo)));
|
|
154
|
-
}
|
|
155
|
-
}).then(result => {
|
|
156
|
-
if (result && result.length === size) {
|
|
157
|
-
return this.updateChanges(metaInfo, page + 1);
|
|
158
|
-
}
|
|
159
|
-
});
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1oYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbW9iaWxlL29mZmxpbmUvc3JjL3NlcnZpY2VzL3dvcmtlcnMvZmlsZS1oYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFLaEMsT0FBTyxFQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBQyxNQUFNLFdBQVcsQ0FBQztBQUU3RixNQUFNLFNBQVMsR0FBRyxtQkFBbUIsQ0FBQztBQUV0QyxNQUFNLE9BQU8sV0FBVztJQUF4QjtRQUdZLFdBQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO0lBbUNwQyxDQUFDO0lBakNVLFFBQVEsQ0FBQyxPQUFxQjtRQUNqQyxJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksT0FBTyxDQUFDLE1BQWM7UUFDekIsSUFBSSxNQUFNLENBQUMsT0FBTyxLQUFLLGlCQUFpQixFQUFFLENBQUM7WUFDdkMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxFQUFFO2dCQUNuRCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUNwQyxJQUFJLFNBQVMsRUFBRSxDQUFDO29CQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGlDQUFpQyxFQUFFLENBQUMsRUFBRSxTQUFTLENBQUMsQ0FBQztvQkFDbkUsT0FBTyxTQUFTLENBQUM7Z0JBQ3JCLENBQUM7Z0JBQ0QsT0FBTyxDQUFDLENBQUM7WUFDYixD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QU8sQ0FBQyxFQUFFO1lBQ1osSUFBSSxPQUFPLElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztnQkFDaEMsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDbkYsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNiLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssSUFBSSxFQUFFLENBQUM7Z0JBQ25DLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLEVBQUUsSUFBSSxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQ2xELENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpbGUgfSBmcm9tICdAYXdlc29tZS1jb3Jkb3ZhLXBsdWdpbnMvZmlsZS9uZ3gnO1xuXG5pbXBvcnQgeyBub29wIH0gZnJvbSAnQHdtL2NvcmUnO1xuaW1wb3J0IHsgRGV2aWNlRmlsZVNlcnZpY2UgfSBmcm9tICdAd20vbW9iaWxlL2NvcmUnO1xuXG5pbXBvcnQgeyBDaGFuZ2UsIENoYW5nZUxvZ1NlcnZpY2UsIEZsdXNoQ29udGV4dCwgV29ya2VyIH0gZnJvbSAnLi4vY2hhbmdlLWxvZy5zZXJ2aWNlJztcbmltcG9ydCB7IENhbGxCYWNrLCBMb2NhbERCTWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tICcuLi9sb2NhbC1kYi1tYW5hZ2VtZW50LnNlcnZpY2UnO1xuaW1wb3J0IHthc3NpZ25JbiwgaXNFbXB0eSwgaXNFcXVhbCwgaXNPYmplY3QsIGlzU3RyaW5nLCBtYXBWYWx1ZXMsIHJlcGxhY2V9IGZyb20gXCJsb2Rhc2gtZXNcIjtcblxuY29uc3QgU1RPUkVfS0VZID0gJ29mZmxpbmVGaWxlVXBsb2FkJztcblxuZXhwb3J0IGNsYXNzIEZpbGVIYW5kbGVyIGltcGxlbWVudHMgV29ya2VyIHtcblxuICAgIHByaXZhdGUgZmlsZVN0b3JlO1xuICAgIHByaXZhdGUgbG9nZ2VyID0gd2luZG93LmNvbnNvbGU7XG5cbiAgICBwdWJsaWMgcHJlRmx1c2goY29udGV4dDogRmx1c2hDb250ZXh0KSB7XG4gICAgICAgIHRoaXMuZmlsZVN0b3JlID0gY29udGV4dC5nZXQoU1RPUkVfS0VZKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXBsYWNlcyBhbGwgbG9jYWwgcGF0aHMgd2l0aCB0aGUgcmVtb3RlIHBhdGggdXNpbmcgbWFwcGluZ3MgY3JlYXRlZCBkdXJpbmcgJ3VwbG9hZFRvU2VydmVyJy5cbiAgICAgKi9cbiAgICBwdWJsaWMgcHJlQ2FsbChjaGFuZ2U6IENoYW5nZSkge1xuICAgICAgICBpZiAoY2hhbmdlLnNlcnZpY2UgPT09ICdEYXRhYmFzZVNlcnZpY2UnKSB7XG4gICAgICAgICAgICBjaGFuZ2UucGFyYW1zLmRhdGEgPSBtYXBWYWx1ZXMoY2hhbmdlLnBhcmFtcy5kYXRhLCB2ID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCByZW1vdGVVcmwgPSB0aGlzLmZpbGVTdG9yZVt2XTtcbiAgICAgICAgICAgICAgICBpZiAocmVtb3RlVXJsKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdzd2FwcGVkIGZpbGUgcGF0aCBmcm9tICVzIC0+ICVzJywgdiwgcmVtb3RlVXJsKTtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlbW90ZVVybDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHY7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBwb3N0Q2FsbFN1Y2Nlc3MoY2hhbmdlOiBDaGFuZ2UsIHJlc3BvbnNlOiBhbnkpIHtcbiAgICAgICAgaWYgKGNoYW5nZS5zZXJ2aWNlID09PSAnT2ZmbGluZUZpbGVVcGxvYWRTZXJ2aWNlJ1xuICAgICAgICAgICAgJiYgY2hhbmdlLm9wZXJhdGlvbiA9PT0gJ3VwbG9hZFRvU2VydmVyJykge1xuICAgICAgICAgICAgY29uc3QgcmVtb3RlRmlsZSA9IEpTT04ucGFyc2UocmVzcG9uc2VbMF0udGV4dClbMF07XG4gICAgICAgICAgICAvKlxuICAgICAgICAgICAgICogQSBtYXBwaW5nIHdpbGwgYmUgY3JlYXRlZCBiZXR3ZWVuIGxvY2FsIHBhdGggYW5kIHJlbW90ZSBwYXRoLlxuICAgICAgICAgICAgICogVGhpcyB3aWxsIGJlIHVzZWQgdG8gcmVzb2x2ZSBsb2NhbCBwYXRocyBpbiBlbnRpdGllcy5cbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgdGhpcy5maWxlU3RvcmVbY2hhbmdlLnBhcmFtcy5maWxlXSAgICAgICAgICAgICA9IHJlbW90ZUZpbGUucGF0aDtcbiAgICAgICAgICAgIHRoaXMuZmlsZVN0b3JlW2NoYW5nZS5wYXJhbXMuZmlsZSArICc/aW5saW5lJ10gPSByZW1vdGVGaWxlLmlubGluZVBhdGg7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuZXhwb3J0IGNsYXNzIFVwbG9hZGVkRmlsZXNJbXBvcnRBbmRFeHBvcnRTZXJ2aWNlIGltcGxlbWVudHMgQ2FsbEJhY2sge1xuICAgIHByaXZhdGUgdXBsb2FkRGlyO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgY2hhbmdlTG9nU2VydmljZTogQ2hhbmdlTG9nU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBkZXZpY2VGaWxlU2VydmljZTogRGV2aWNlRmlsZVNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbG9jYWxEQk1hbmFnZW1lbnRTZXJ2aWNlOiBMb2NhbERCTWFuYWdlbWVudFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZmlsZTogRmlsZVxuICAgICkge1xuXG4gICAgfVxuXG4gICAgcHVibGljIHByZUV4cG9ydChmb2xkZXJUb0V4cG9ydDogc3RyaW5nLCBtZXRhOiBhbnkpOiBQcm9taXNlPGFueT4ge1xuICAgICAgICAvLyBjb3B5IG9mZmxpbmUgdXBsb2Fkc1xuICAgICAgICBjb25zdCB1cGxvYWRGdWxsUGF0aCA9IHRoaXMuZGV2aWNlRmlsZVNlcnZpY2UuZ2V0VXBsb2FkRGlyZWN0b3J5KCksXG4gICAgICAgICAgICBsYXN0SW5kZXhPZlNlcCA9IHVwbG9hZEZ1bGxQYXRoLmxhc3RJbmRleE9mKCcvJyksXG4gICAgICAgICAgICB1cGxvYWRQYXJlbnREaXIgPSB1cGxvYWRGdWxsUGF0aC5zdWJzdHJpbmcoMCwgbGFzdEluZGV4T2ZTZXAgKyAxKSxcbiAgICAgICAgICAgIHVwbG9hZERpck5hbWUgPSB1cGxvYWRGdWxsUGF0aC5zdWJzdHJpbmcobGFzdEluZGV4T2ZTZXAgKyAxKTtcbiAgICAgICAgbWV0YS51cGxvYWREaXIgPSB1cGxvYWRGdWxsUGF0aDtcbiAgICAgICAgcmV0dXJuIHRoaXMuZmlsZS5jb3B5RGlyKHVwbG9hZFBhcmVudERpciwgdXBsb2FkRGlyTmFtZSwgZm9sZGVyVG9FeHBvcnQsICd1cGxvYWRzJyk7XG4gICAgfVxuXG4gICAgcHVibGljIHBvc3RJbXBvcnQoaW1wb3J0ZWRGb2xkZXI6IHN0cmluZywgbWV0YTogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICAgICAgY29uc3QgdXBsb2FkRnVsbFBhdGggPSB0aGlzLmRldmljZUZpbGVTZXJ2aWNlLmdldFVwbG9hZERpcmVjdG9yeSgpLFxuICAgICAgICAgICAgbGFzdEluZGV4T2ZTZXAgPSB1cGxvYWRGdWxsUGF0aC5sYXN0SW5kZXhPZignLycpLFxuICAgICAgICAgICAgdXBsb2FkUGFyZW50RGlyID0gdXBsb2FkRnVsbFBhdGguc3Vic3RyaW5nKDAsIGxhc3RJbmRleE9mU2VwICsgMSksXG4gICAgICAgICAgICB1cGxvYWREaXJOYW1lID0gdXBsb2FkRnVsbFBhdGguc3Vic3RyaW5nKGxhc3RJbmRleE9mU2VwICsgMSk7XG4gICAgICAgIHRoaXMudXBsb2FkRGlyID0gdXBsb2FkRnVsbFBhdGg7XG4gICAgICAgIHJldHVybiB0aGlzLmZpbGUuY2hlY2tEaXIoaW1wb3J0ZWRGb2xkZXIsICd1cGxvYWRzJylcbiAgICAgICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5kZXZpY2VGaWxlU2VydmljZS5yZW1vdmVEaXIodXBsb2FkRnVsbFBhdGgpXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKCgpID0+IHRoaXMuZmlsZS5jb3B5RGlyKGltcG9ydGVkRm9sZGVyLCAndXBsb2FkcycsIHVwbG9hZFBhcmVudERpciwgdXBsb2FkRGlyTmFtZSkpXG4gICAgICAgICAgICAgICAgICAgIC50aGVuKCgpID0+IHRoaXMudXBkYXRlQ2hhbmdlcyhtZXRhKSk7XG4gICAgICAgICAgICB9LCBub29wKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiByZXR1cm5zIGJhY2sgdGhlIGNoYW5nZXMgdGhhdCB3ZXJlIGxvZ2dlZC5cbiAgICAgKiBAcGFyYW0gcGFnZSBwYWdlIG51bWJlclxuICAgICAqIEBwYXJhbSBzaXplIHNpemUgb2YgcGFnZVxuICAgICAqIEByZXR1cm5zIHsqfVxuICAgICAqL1xuICAgIHByaXZhdGUgZ2V0Q2hhbmdlcyhwYWdlOiBudW1iZXIsIHNpemU6IG51bWJlcik6IFByb21pc2U8Q2hhbmdlW10+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2hhbmdlTG9nU2VydmljZS5nZXRTdG9yZSgpLnRoZW4oc3Ryb3JlID0+IHtcbiAgICAgICAgICAgIHJldHVybiAoc3Ryb3JlLmZpbHRlcihbXSwgJ2lkJywge1xuICAgICAgICAgICAgICAgIG9mZnNldDogKHBhZ2UgLSAxKSAqIHNpemUsXG4gICAgICAgICAgICAgICAgbGltaXQ6IHNpemVcbiAgICAgICAgICAgIH0pKSBhcyBQcm9taXNlPENoYW5nZVtdPjtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSWYgdGhpcyBpcyBhIGRhdGFiYXNlIGNoYW5nZSwgdGhlbiBpdCB3aWxsIHJlcGxhY2Ugb2xkIHVwbG9hZCBkaXJlY3Rvcnkgd2l0aCB0aGUgY3VycmVudCB1cGxvYWQgZGlyZWN0b3J5XG4gICAgICogYW5kIGl0cyBjb3JyZXNwb25kaW5nIG93bmVyIG9iamVjdCwgaWYgIGl0IGhhcyBwcmltYXJ5IGtleS5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBjaGFuZ2VcbiAgICAgKiBAcGFyYW0gb2xkVXBsb2FkRGlyXG4gICAgICogQHBhcmFtIHVwbG9hZERpclxuICAgICAqIEByZXR1cm5zIHsqfVxuICAgICAqL1xuICAgIHByaXZhdGUgdXBkYXRlREJDaGFuZ2UoY2hhbmdlOiBDaGFuZ2UsIG9sZFVwbG9hZERpcjogc3RyaW5nLCB1cGxvYWREaXI6IHN0cmluZykge1xuICAgICAgICBjb25zdCBtb2RpZmllZFByb3BlcnRpZXMgPSB7fSxcbiAgICAgICAgICAgIGVudGl0eU5hbWUgPSBjaGFuZ2UucGFyYW1zLmVudGl0eU5hbWUsXG4gICAgICAgICAgICBkYXRhTW9kZWxOYW1lID0gY2hhbmdlLnBhcmFtcy5kYXRhTW9kZWxOYW1lO1xuICAgICAgICBjaGFuZ2UucGFyYW1zLmRhdGEgPSBtYXBWYWx1ZXMoY2hhbmdlLnBhcmFtcy5kYXRhLCBmdW5jdGlvbiAodiwgaykge1xuICAgICAgICAgICAgbGV0IG12ID0gdiwgaXNNb2RpZmllZCA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKGlzU3RyaW5nKHYpKSB7XG4gICAgICAgICAgICAgICAgbXYgPSByZXBsYWNlKHYsIG9sZFVwbG9hZERpciwgdXBsb2FkRGlyKTtcbiAgICAgICAgICAgICAgICBpc01vZGlmaWVkID0gIWlzRXF1YWwobXYsIHYpO1xuICAgICAgICAgICAgfSBlbHNlIHsgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICAgIGlmIChpc09iamVjdCh2KSAmJiB2LndtTG9jYWxQYXRoKSB7XG4gICAgICAgICAgICAgICAgICAgIC8vIGluc2VydE11bHRpUGFydERhdGEgYW5kIHVwZGF0ZU11bHRpUGFydERhdGFcbiAgICAgICAgICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgICAgICAgICBtdiA9IHJlcGxhY2Uodi53bUxvY2FsUGF0aCwgb2xkVXBsb2FkRGlyLCB1cGxvYWREaXIpO1xuICAgICAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgICAgICAgIGlzTW9kaWZpZWQgPSAhaXNFcXVhbChtdiwgdi53bUxvY2FsUGF0aCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKGlzTW9kaWZpZWQpIHtcbiAgICAgICAgICAgICAgICBtb2RpZmllZFByb3BlcnRpZXNba10gPSBtdjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBtdjtcbiAgICAgICAgfSk7XG4gICAgICAgIGlmICghaXNFbXB0eShtb2RpZmllZFByb3BlcnRpZXMpKSB7XG4gICAgICAgICAgICB0aGlzLmxvY2FsREJNYW5hZ2VtZW50U2VydmljZS5nZXRTdG9yZShkYXRhTW9kZWxOYW1lLCBlbnRpdHlOYW1lKVxuICAgICAgICAgICAgICAgIC50aGVuKHN0b3JlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgLy8gSWYgdGhlcmUgaXMgYSBwcmltYXJ5IGZvciB0aGUgZW50aXR5LCB0aGVuIHVwZGF0ZSBhY3R1YWwgcm93IHdpdGggdGhlIG1vZGlmaWNhdGlvbnNcbiAgICAgICAgICAgICAgICAgICAgaWYgKHN0b3JlLnByaW1hcnlLZXlGaWVsZCAmJiBzdG9yZS5wcmltYXJ5S2V5RmllbGQuZ2VuZXJhdG9yVHlwZSA9PT0gJ2lkZW50aXR5Jykge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcHJpbWFyeUtleU5hbWUgPSBzdG9yZS5wcmltYXJ5S2V5TmFtZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHByaW1hcnlLZXkgPSBjaGFuZ2UucGFyYW1zLmRhdGFbcHJpbWFyeUtleU5hbWVdO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHN0b3JlLmdldChwcmltYXJ5S2V5KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKG9iaiA9PiBzdG9yZS5zYXZlKGFzc2lnbkluKG9iaiwgbW9kaWZpZWRQcm9wZXJ0aWVzKSkpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSkudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgY2hhbmdlLnBhcmFtcyA9IEpTT04uc3RyaW5naWZ5KGNoYW5nZS5wYXJhbXMpO1xuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmNoYW5nZUxvZ1NlcnZpY2UuZ2V0U3RvcmUoKS50aGVuKCBzdG9yZSA9PiBzdG9yZS5zYXZlKGNoYW5nZSkpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGlzIGZ1bmN0aW9uIGNoZWNrIHRoaXMgY2hhbmdlIHRvIHVwZGF0ZSBvbGQgdXBsb2FkIGRpcmVjdG9yeSBwYXRoLlxuICAgICAqXG4gICAgICogQHBhcmFtIGNoYW5nZVxuICAgICAqIEBwYXJhbSBtZXRhSW5mb1xuICAgICAqIEByZXR1cm5zIHsqfVxuICAgICAqL1xuICAgIHByaXZhdGUgdXBkYXRlQ2hhbmdlKGNoYW5nZTogQ2hhbmdlLCBtZXRhSW5mbzogYW55KSB7XG4gICAgICAgIGNoYW5nZS5wYXJhbXMgPSBKU09OLnBhcnNlKGNoYW5nZS5wYXJhbXMpO1xuICAgICAgICBpZiAoY2hhbmdlLnNlcnZpY2UgPT09ICdPZmZsaW5lRmlsZVVwbG9hZFNlcnZpY2UnXG4gICAgICAgICAgICAmJiBjaGFuZ2Uub3BlcmF0aW9uID09PSAndXBsb2FkVG9TZXJ2ZXInKSB7XG4gICAgICAgICAgICBjaGFuZ2UucGFyYW1zLmZpbGUgPSByZXBsYWNlKGNoYW5nZS5wYXJhbXMuZmlsZSwgbWV0YUluZm8udXBsb2FkRGlyLCB0aGlzLnVwbG9hZERpcik7XG4gICAgICAgICAgICBjaGFuZ2UucGFyYW1zID0gSlNPTi5zdHJpbmdpZnkoY2hhbmdlLnBhcmFtcyk7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jaGFuZ2VMb2dTZXJ2aWNlLmdldFN0b3JlKCkudGhlbiggc3RvcmUgPT4gc3RvcmUuc2F2ZShjaGFuZ2UpKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoY2hhbmdlLnNlcnZpY2UgPT09ICdEYXRhYmFzZVNlcnZpY2UnKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy51cGRhdGVEQkNoYW5nZShjaGFuZ2UsIG1ldGFJbmZvLnVwbG9hZERpciwgdGhpcy51cGxvYWREaXIpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBmdW5jdGlvbiB3aWxsIHZpc2l0IGFsbCB0aGUgY2hhbmdlcyBhbmQgbW9kaWZ5IHRoZW0sIGlmIG5lY2Vzc2FyeS5cbiAgICAgKiBAcGFyYW0gbWV0YUluZm9cbiAgICAgKiBAcGFyYW0gcGFnZVxuICAgICAqIEByZXR1cm5zIHsqfVxuICAgICAqL1xuICAgIHByaXZhdGUgdXBkYXRlQ2hhbmdlcyhtZXRhSW5mbzogYW55LCBwYWdlID0gMSk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIGNvbnN0IHNpemUgPSAxMDtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0Q2hhbmdlcyhwYWdlLCBzaXplKVxuICAgICAgICAgICAgLnRoZW4oY2hhbmdlcyA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGNoYW5nZXMgJiYgY2hhbmdlcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBQcm9taXNlLmFsbChjaGFuZ2VzLm1hcChjaGFuZ2UgPT4gdGhpcy51cGRhdGVDaGFuZ2UoY2hhbmdlLCBtZXRhSW5mbykpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KS50aGVuKHJlc3VsdCA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdCAmJiByZXN1bHQubGVuZ3RoID09PSBzaXplKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnVwZGF0ZUNoYW5nZXMobWV0YUluZm8sIHBhZ2UgKyAxKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { isDefined, noop } from '@wm/core';
|
|
3
|
-
import { LocalDBManagementService } from './../local-db-management.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "./../local-db-management.service";
|
|
6
|
-
const STORE_KEY = 'idConflictResolution';
|
|
7
|
-
/**
|
|
8
|
-
* In offline database, a insert could generate the Id of an entity. During flush, id of that entity might get changed.
|
|
9
|
-
* Due to that, relationship inconsistency arises. To prevent that, wherever this entity is referred in the next flush
|
|
10
|
-
* call, Id has to be replaced with that of new one.
|
|
11
|
-
*/
|
|
12
|
-
export class IdResolver {
|
|
13
|
-
constructor(localDBManagementService) {
|
|
14
|
-
this.localDBManagementService = localDBManagementService;
|
|
15
|
-
this.logger = window.console;
|
|
16
|
-
}
|
|
17
|
-
preFlush(context) {
|
|
18
|
-
this.idStore = context.get(STORE_KEY);
|
|
19
|
-
}
|
|
20
|
-
// Exchane Ids, Before any database operation.
|
|
21
|
-
preCall(change) {
|
|
22
|
-
if (change && change.service === 'DatabaseService') {
|
|
23
|
-
const entityName = change.params.entityName;
|
|
24
|
-
const dataModelName = change.params.dataModelName;
|
|
25
|
-
switch (change.operation) {
|
|
26
|
-
case 'insertTableData':
|
|
27
|
-
case 'insertMultiPartTableData':
|
|
28
|
-
change.params.skipLocalDB = true;
|
|
29
|
-
return this.localDBManagementService.getStore(dataModelName, entityName)
|
|
30
|
-
.then(store => {
|
|
31
|
-
const primaryKeyName = store.primaryKeyName;
|
|
32
|
-
if (primaryKeyName) {
|
|
33
|
-
this.transactionLocalId = change.params.data[primaryKeyName];
|
|
34
|
-
change['dataLocalId'] = this.transactionLocalId;
|
|
35
|
-
}
|
|
36
|
-
return this.exchangeIds(store, dataModelName, entityName, change.params.data)
|
|
37
|
-
.then(() => {
|
|
38
|
-
if (store.primaryKeyField && store.primaryKeyField.generatorType === 'identity') {
|
|
39
|
-
delete change.params.data[primaryKeyName];
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
const relationalPrimaryKeyValue = store.getValue(change.params.data, store.primaryKeyName);
|
|
43
|
-
// for the data referring to the relational table based on primary key assign the primaryField values to the relationalPrimaryKeyValue
|
|
44
|
-
if (isDefined(relationalPrimaryKeyValue)) {
|
|
45
|
-
change.params.data[primaryKeyName] = relationalPrimaryKeyValue;
|
|
46
|
-
if (this.transactionLocalId !== null) {
|
|
47
|
-
this.pushIdToStore(dataModelName, entityName, this.transactionLocalId, relationalPrimaryKeyValue);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
this.transactionLocalId = null;
|
|
51
|
-
}
|
|
52
|
-
});
|
|
53
|
-
});
|
|
54
|
-
case 'updateTableData':
|
|
55
|
-
case 'updateMultiPartTableData':
|
|
56
|
-
case 'deleteTableData':
|
|
57
|
-
return this.localDBManagementService.getStore(dataModelName, entityName).then(store => {
|
|
58
|
-
// on update call, passing id to exchangeId as change.params id(local value 10000000+) is not updated with the latest id from db
|
|
59
|
-
this.exchangeId(store, dataModelName, entityName, change.params, 'id');
|
|
60
|
-
if (change.params.data) {
|
|
61
|
-
return this.exchangeIds(store, dataModelName, entityName, change.params.data);
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
// After every database insert, track the Id change.
|
|
68
|
-
postCallSuccess(change, response) {
|
|
69
|
-
if (change && change.service === 'DatabaseService'
|
|
70
|
-
&& (change.operation === 'insertTableData' || change.operation === 'insertMultiPartTableData')
|
|
71
|
-
&& this.transactionLocalId) {
|
|
72
|
-
const data = response[0].body;
|
|
73
|
-
const entityName = change.params.entityName;
|
|
74
|
-
const dataModelName = change.params.dataModelName;
|
|
75
|
-
return this.localDBManagementService.getStore(dataModelName, entityName).then(store => {
|
|
76
|
-
this.pushIdToStore(dataModelName, entityName, this.transactionLocalId, data[store.primaryKeyName]);
|
|
77
|
-
return store.delete(this.transactionLocalId).catch(noop).then(() => {
|
|
78
|
-
this.transactionLocalId = null;
|
|
79
|
-
return store.save(data);
|
|
80
|
-
});
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
// store error entity id
|
|
85
|
-
postCallError(change) {
|
|
86
|
-
if (change && change.service === 'DatabaseService'
|
|
87
|
-
&& (change.operation === 'insertTableData' || change.operation === 'insertMultiPartTableData')
|
|
88
|
-
&& this.transactionLocalId) {
|
|
89
|
-
const entityName = change.params.entityName;
|
|
90
|
-
const dataModelName = change.params.dataModelName;
|
|
91
|
-
return this.localDBManagementService.getStore(dataModelName, entityName).then(store => {
|
|
92
|
-
change.params.data[store.primaryKeyName] = this.transactionLocalId;
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
getEntityIdStore(dataModelName, entityName) {
|
|
97
|
-
this.idStore[dataModelName] = this.idStore[dataModelName] || {};
|
|
98
|
-
this.idStore[dataModelName][entityName] = this.idStore[dataModelName][entityName] || {};
|
|
99
|
-
return this.idStore[dataModelName][entityName];
|
|
100
|
-
}
|
|
101
|
-
// if local id is different, then create a mapping for exchange.
|
|
102
|
-
pushIdToStore(dataModelName, entityName, transactionLocalId, remoteId) {
|
|
103
|
-
if (transactionLocalId !== remoteId) {
|
|
104
|
-
this.getEntityIdStore(dataModelName, entityName)[transactionLocalId] = remoteId;
|
|
105
|
-
this.logger.debug('Conflict found for entity (%s) with local id (%i) and remote Id (%i)', entityName, transactionLocalId, remoteId);
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
logResolution(entityName, localId, remoteId) {
|
|
109
|
-
this.logger.debug('Conflict resolved found for entity (%s) with local id (%i) and remote Id (%i)', entityName, localId, remoteId);
|
|
110
|
-
}
|
|
111
|
-
// Exchange primary key of the given entity
|
|
112
|
-
exchangeId(store, dataModelName, entityName, data, keyName) {
|
|
113
|
-
const primaryKeyName = keyName || store.primaryKeyName;
|
|
114
|
-
const entityIdStore = this.getEntityIdStore(dataModelName, entityName);
|
|
115
|
-
if (data && primaryKeyName) {
|
|
116
|
-
const localId = data[primaryKeyName];
|
|
117
|
-
let remoteId = localId;
|
|
118
|
-
while (entityIdStore[remoteId]) {
|
|
119
|
-
remoteId = entityIdStore[remoteId];
|
|
120
|
-
}
|
|
121
|
-
if (remoteId !== localId) {
|
|
122
|
-
data[primaryKeyName] = remoteId;
|
|
123
|
-
this.logResolution(entityName, localId, remoteId);
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
// Looks primary key changes in the given entity or in the relations
|
|
128
|
-
exchangeIds(store, dataModelName, entityName, data) {
|
|
129
|
-
this.exchangeId(store, dataModelName, entityName, data);
|
|
130
|
-
const exchangeIdPromises = [];
|
|
131
|
-
store.entitySchema.columns.forEach(col => {
|
|
132
|
-
if (col.foreignRelations) {
|
|
133
|
-
col.foreignRelations.forEach(foreignRelation => {
|
|
134
|
-
if (data[col.fieldName]) { // if id value
|
|
135
|
-
this.exchangeId(store, dataModelName, foreignRelation.targetEntity, data, col.fieldName);
|
|
136
|
-
}
|
|
137
|
-
if (data[foreignRelation.sourceFieldName]) { // if object reference
|
|
138
|
-
exchangeIdPromises.push(this.localDBManagementService.getStore(dataModelName, foreignRelation.targetEntity)
|
|
139
|
-
.then(refStore => {
|
|
140
|
-
return this.exchangeIds(refStore, dataModelName, foreignRelation.targetEntity, data[foreignRelation.sourceFieldName]);
|
|
141
|
-
}));
|
|
142
|
-
}
|
|
143
|
-
});
|
|
144
|
-
}
|
|
145
|
-
});
|
|
146
|
-
return Promise.all(exchangeIdPromises);
|
|
147
|
-
}
|
|
148
|
-
static { this.ɵfac = function IdResolver_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || IdResolver)(i0.ɵɵinject(i1.LocalDBManagementService)); }; }
|
|
149
|
-
static { this.ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: IdResolver, factory: IdResolver.ɵfac }); }
|
|
150
|
-
}
|
|
151
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IdResolver, [{
|
|
152
|
-
type: Injectable
|
|
153
|
-
}], () => [{ type: i1.LocalDBManagementService }], null); })();
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWQtcmVzb2x2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb2JpbGUvb2ZmbGluZS9zcmMvc2VydmljZXMvd29ya2Vycy9pZC1yZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBRzNDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFHNUUsTUFBTSxTQUFTLEdBQUksc0JBQXNCLENBQUM7QUFFMUM7Ozs7R0FJRztBQUVILE1BQU0sT0FBTyxVQUFVO0lBTW5CLFlBQW9CLHdCQUFrRDtRQUFsRCw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTBCO1FBQ2xFLElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQztJQUNqQyxDQUFDO0lBRU0sUUFBUSxDQUFDLE9BQXFCO1FBQ2pDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsOENBQThDO0lBQ3ZDLE9BQU8sQ0FBQyxNQUFjO1FBQ3pCLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxPQUFPLEtBQUssaUJBQWlCLEVBQUUsQ0FBQztZQUNqRCxNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztZQUM1QyxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQztZQUNsRCxRQUFRLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDdkIsS0FBSyxpQkFBaUIsQ0FBQztnQkFDdkIsS0FBSywwQkFBMEI7b0JBQzNCLE1BQU0sQ0FBQyxNQUFNLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBRTtvQkFDbEMsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUM7eUJBQ25FLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTt3QkFDVixNQUFNLGNBQWMsR0FBRyxLQUFLLENBQUMsY0FBYyxDQUFDO3dCQUM1QyxJQUFJLGNBQWMsRUFBRSxDQUFDOzRCQUNqQixJQUFJLENBQUMsa0JBQWtCLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7NEJBQzdELE1BQU0sQ0FBQyxhQUFhLENBQUMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUM7d0JBQ3BELENBQUM7d0JBQ0QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDOzZCQUN4RSxJQUFJLENBQUMsR0FBRyxFQUFFOzRCQUNQLElBQUksS0FBSyxDQUFDLGVBQWUsSUFBSSxLQUFLLENBQUMsZUFBZSxDQUFDLGFBQWEsS0FBSyxVQUFVLEVBQUUsQ0FBQztnQ0FDOUUsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQzs0QkFDOUMsQ0FBQztpQ0FBTSxDQUFDO2dDQUNKLE1BQU0seUJBQXlCLEdBQUcsS0FBSyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7Z0NBQzNGLHNJQUFzSTtnQ0FDdEksSUFBSSxTQUFTLENBQUMseUJBQXlCLENBQUMsRUFBRSxDQUFDO29DQUN2QyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyx5QkFBeUIsQ0FBQztvQ0FDL0QsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEtBQUssSUFBSSxFQUFFLENBQUM7d0NBQ25DLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsa0JBQWtCLEVBQUUseUJBQXlCLENBQUMsQ0FBQztvQ0FDdEcsQ0FBQztnQ0FDTCxDQUFDO2dDQUNELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxJQUFJLENBQUM7NEJBQ25DLENBQUM7d0JBQ0wsQ0FBQyxDQUFDLENBQUM7b0JBQ2YsQ0FBQyxDQUFDLENBQUM7Z0JBQ1AsS0FBSyxpQkFBaUIsQ0FBQztnQkFDdkIsS0FBSywwQkFBMEIsQ0FBQztnQkFDaEMsS0FBSyxpQkFBaUI7b0JBQ2xCLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO3dCQUNsRixnSUFBZ0k7d0JBQ2hJLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQzt3QkFDdkUsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDOzRCQUNyQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQzt3QkFDbEYsQ0FBQztvQkFDTCxDQUFDLENBQUMsQ0FBQztZQUNYLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUNELG9EQUFvRDtJQUM3QyxlQUFlLENBQUMsTUFBYyxFQUFFLFFBQWE7UUFDaEQsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxpQkFBaUI7ZUFDM0MsQ0FBQyxNQUFNLENBQUMsU0FBUyxLQUFLLGlCQUFpQixJQUFJLE1BQU0sQ0FBQyxTQUFTLEtBQUssMEJBQTBCLENBQUM7ZUFDM0YsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDN0IsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUM5QixNQUFNLFVBQVUsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQztZQUM1QyxNQUFNLGFBQWEsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQztZQUNsRCxPQUFPLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDbEYsSUFBSSxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7Z0JBQ25HLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtvQkFDL0QsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQztvQkFDL0IsT0FBTyxLQUFLLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUM1QixDQUFDLENBQUMsQ0FBQztZQUNQLENBQUMsQ0FBQyxDQUFDO1FBQ1AsQ0FBQztJQUNMLENBQUM7SUFDRCx3QkFBd0I7SUFDakIsYUFBYSxDQUFDLE1BQWM7UUFDL0IsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxpQkFBaUI7ZUFDM0MsQ0FBQyxNQUFNLENBQUMsU0FBUyxLQUFLLGlCQUFpQixJQUFJLE1BQU0sQ0FBQyxTQUFTLEtBQUssMEJBQTBCLENBQUM7ZUFDM0YsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7WUFDN0IsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUM7WUFDNUMsTUFBTSxhQUFhLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUM7WUFDbEQsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ2xGLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUM7WUFDdkUsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO0lBQ0wsQ0FBQztJQUVPLGdCQUFnQixDQUFDLGFBQXFCLEVBQUUsVUFBa0I7UUFDOUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNoRSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3hGLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxhQUFhLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQsZ0VBQWdFO0lBQ3hELGFBQWEsQ0FBQyxhQUFxQixFQUFFLFVBQWtCLEVBQUUsa0JBQXVCLEVBQUUsUUFBYTtRQUNuRyxJQUFJLGtCQUFrQixLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ2xDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsVUFBVSxDQUFDLENBQUMsa0JBQWtCLENBQUMsR0FBRyxRQUFRLENBQUM7WUFDaEYsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsc0VBQXNFLEVBQUUsVUFBVSxFQUFFLGtCQUFrQixFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQ3hJLENBQUM7SUFDTCxDQUFDO0lBRU8sYUFBYSxDQUFDLFVBQWtCLEVBQUUsT0FBWSxFQUFFLFFBQWE7UUFDakUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsK0VBQStFLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQztJQUN0SSxDQUFDO0lBRUQsNENBQTRDO0lBQ3BDLFVBQVUsQ0FBQyxLQUFtQixFQUFFLGFBQXFCLEVBQUUsVUFBa0IsRUFBRSxJQUFVLEVBQUUsT0FBZ0I7UUFDM0csTUFBTSxjQUFjLEdBQUcsT0FBTyxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUM7UUFDdkQsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUMsQ0FBQztRQUN2RSxJQUFJLElBQUksSUFBSSxjQUFjLEVBQUUsQ0FBQztZQUN6QixNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDckMsSUFBSSxRQUFRLEdBQUcsT0FBTyxDQUFDO1lBQ3ZCLE9BQU8sYUFBYSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7Z0JBQzdCLFFBQVEsR0FBRyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDdkMsQ0FBQztZQUNELElBQUksUUFBUSxLQUFLLE9BQU8sRUFBRSxDQUFDO2dCQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsUUFBUSxDQUFDO2dCQUNoQyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDdEQsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0lBRUQsb0VBQW9FO0lBQzVELFdBQVcsQ0FBQyxLQUFtQixFQUFFLGFBQXFCLEVBQUUsVUFBa0IsRUFBRSxJQUFTO1FBQ3pGLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDeEQsTUFBTSxrQkFBa0IsR0FBRyxFQUFFLENBQUM7UUFDOUIsS0FBSyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3JDLElBQUksR0FBRyxDQUFDLGdCQUFnQixFQUFFLENBQUM7Z0JBQ3ZCLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUUsZUFBZSxDQUFDLEVBQUU7b0JBQzVDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUEsY0FBYzt3QkFDcEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEVBQUUsYUFBYSxFQUFFLGVBQWUsQ0FBQyxZQUFZLEVBQUUsSUFBSSxFQUFFLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztvQkFDN0YsQ0FBQztvQkFDRCxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLEVBQUUsQ0FBQyxDQUFBLHNCQUFzQjt3QkFDOUQsa0JBQWtCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFLGVBQWUsQ0FBQyxZQUFZLENBQUM7NkJBQ3RHLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTs0QkFDYixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLGFBQWEsRUFBRSxlQUFlLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQzt3QkFDMUgsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDWixDQUFDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO1lBQ1AsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLGtCQUFrQixDQUFDLENBQUM7SUFDM0MsQ0FBQzsyR0FqSlEsVUFBVTt1RUFBVixVQUFVLFdBQVYsVUFBVTs7aUZBQVYsVUFBVTtjQUR0QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBpc0RlZmluZWQsIG5vb3AgfSBmcm9tICdAd20vY29yZSc7XG5cbmltcG9ydCB7IENoYW5nZSwgRmx1c2hDb250ZXh0LCBXb3JrZXIgfSBmcm9tICcuLy4uL2NoYW5nZS1sb2cuc2VydmljZSc7XG5pbXBvcnQgeyBMb2NhbERCTWFuYWdlbWVudFNlcnZpY2UgfSBmcm9tICcuLy4uL2xvY2FsLWRiLW1hbmFnZW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBMb2NhbERCU3RvcmUgfSBmcm9tICcuLy4uLy4uL21vZGVscy9sb2NhbC1kYi1zdG9yZSc7XG5cbmNvbnN0IFNUT1JFX0tFWSAgPSAnaWRDb25mbGljdFJlc29sdXRpb24nO1xuXG4vKipcbiAqIEluIG9mZmxpbmUgZGF0YWJhc2UsIGEgaW5zZXJ0IGNvdWxkIGdlbmVyYXRlIHRoZSBJZCBvZiBhbiBlbnRpdHkuIER1cmluZyBmbHVzaCwgaWQgb2YgdGhhdCBlbnRpdHkgbWlnaHQgZ2V0IGNoYW5nZWQuXG4gKiBEdWUgdG8gdGhhdCwgcmVsYXRpb25zaGlwIGluY29uc2lzdGVuY3kgYXJpc2VzLiBUbyBwcmV2ZW50IHRoYXQsIHdoZXJldmVyIHRoaXMgZW50aXR5IGlzIHJlZmVycmVkIGluIHRoZSBuZXh0IGZsdXNoXG4gKiBjYWxsLCBJZCBoYXMgdG8gYmUgcmVwbGFjZWQgd2l0aCB0aGF0IG9mIG5ldyBvbmUuXG4gKi9cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBJZFJlc29sdmVyIGltcGxlbWVudHMgV29ya2VyIHtcblxuICAgIHByaXZhdGUgaWRTdG9yZTtcbiAgICBwcml2YXRlIGxvZ2dlcjtcbiAgICBwcml2YXRlIHRyYW5zYWN0aW9uTG9jYWxJZDtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgbG9jYWxEQk1hbmFnZW1lbnRTZXJ2aWNlOiBMb2NhbERCTWFuYWdlbWVudFNlcnZpY2UpIHtcbiAgICAgICAgdGhpcy5sb2dnZXIgPSB3aW5kb3cuY29uc29sZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcHJlRmx1c2goY29udGV4dDogRmx1c2hDb250ZXh0KSB7XG4gICAgICAgIHRoaXMuaWRTdG9yZSA9IGNvbnRleHQuZ2V0KFNUT1JFX0tFWSk7XG4gICAgfVxuXG4gICAgLy8gRXhjaGFuZSBJZHMsIEJlZm9yZSBhbnkgZGF0YWJhc2Ugb3BlcmF0aW9uLlxuICAgIHB1YmxpYyBwcmVDYWxsKGNoYW5nZTogQ2hhbmdlKSB7XG4gICAgICAgIGlmIChjaGFuZ2UgJiYgY2hhbmdlLnNlcnZpY2UgPT09ICdEYXRhYmFzZVNlcnZpY2UnKSB7XG4gICAgICAgICAgICBjb25zdCBlbnRpdHlOYW1lID0gY2hhbmdlLnBhcmFtcy5lbnRpdHlOYW1lO1xuICAgICAgICAgICAgY29uc3QgZGF0YU1vZGVsTmFtZSA9IGNoYW5nZS5wYXJhbXMuZGF0YU1vZGVsTmFtZTtcbiAgICAgICAgICAgIHN3aXRjaCAoY2hhbmdlLm9wZXJhdGlvbikge1xuICAgICAgICAgICAgICAgIGNhc2UgJ2luc2VydFRhYmxlRGF0YSc6XG4gICAgICAgICAgICAgICAgY2FzZSAnaW5zZXJ0TXVsdGlQYXJ0VGFibGVEYXRhJzpcbiAgICAgICAgICAgICAgICAgICAgY2hhbmdlLnBhcmFtcy5za2lwTG9jYWxEQiA9IHRydWUgO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5sb2NhbERCTWFuYWdlbWVudFNlcnZpY2UuZ2V0U3RvcmUoZGF0YU1vZGVsTmFtZSwgZW50aXR5TmFtZSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKHN0b3JlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwcmltYXJ5S2V5TmFtZSA9IHN0b3JlLnByaW1hcnlLZXlOYW1lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChwcmltYXJ5S2V5TmFtZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRyYW5zYWN0aW9uTG9jYWxJZCA9IGNoYW5nZS5wYXJhbXMuZGF0YVtwcmltYXJ5S2V5TmFtZV07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZVsnZGF0YUxvY2FsSWQnXSA9IHRoaXMudHJhbnNhY3Rpb25Mb2NhbElkO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5leGNoYW5nZUlkcyhzdG9yZSwgZGF0YU1vZGVsTmFtZSwgZW50aXR5TmFtZSwgY2hhbmdlLnBhcmFtcy5kYXRhKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoc3RvcmUucHJpbWFyeUtleUZpZWxkICYmIHN0b3JlLnByaW1hcnlLZXlGaWVsZC5nZW5lcmF0b3JUeXBlID09PSAnaWRlbnRpdHknKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIGNoYW5nZS5wYXJhbXMuZGF0YVtwcmltYXJ5S2V5TmFtZV07XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlbGF0aW9uYWxQcmltYXJ5S2V5VmFsdWUgPSBzdG9yZS5nZXRWYWx1ZShjaGFuZ2UucGFyYW1zLmRhdGEsIHN0b3JlLnByaW1hcnlLZXlOYW1lKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBmb3IgdGhlIGRhdGEgcmVmZXJyaW5nIHRvIHRoZSByZWxhdGlvbmFsIHRhYmxlIGJhc2VkIG9uIHByaW1hcnkga2V5IGFzc2lnbiB0aGUgcHJpbWFyeUZpZWxkIHZhbHVlcyB0byB0aGUgcmVsYXRpb25hbFByaW1hcnlLZXlWYWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc0RlZmluZWQocmVsYXRpb25hbFByaW1hcnlLZXlWYWx1ZSkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hhbmdlLnBhcmFtcy5kYXRhW3ByaW1hcnlLZXlOYW1lXSA9IHJlbGF0aW9uYWxQcmltYXJ5S2V5VmFsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uTG9jYWxJZCAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wdXNoSWRUb1N0b3JlKGRhdGFNb2RlbE5hbWUsIGVudGl0eU5hbWUsIHRoaXMudHJhbnNhY3Rpb25Mb2NhbElkLCByZWxhdGlvbmFsUHJpbWFyeUtleVZhbHVlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRyYW5zYWN0aW9uTG9jYWxJZCA9IG51bGw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBjYXNlICd1cGRhdGVUYWJsZURhdGEnOlxuICAgICAgICAgICAgICAgIGNhc2UgJ3VwZGF0ZU11bHRpUGFydFRhYmxlRGF0YSc6XG4gICAgICAgICAgICAgICAgY2FzZSAnZGVsZXRlVGFibGVEYXRhJzpcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9jYWxEQk1hbmFnZW1lbnRTZXJ2aWNlLmdldFN0b3JlKGRhdGFNb2RlbE5hbWUsIGVudGl0eU5hbWUpLnRoZW4oc3RvcmUgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gb24gdXBkYXRlIGNhbGwsIHBhc3NpbmcgaWQgdG8gZXhjaGFuZ2VJZCBhcyBjaGFuZ2UucGFyYW1zIGlkKGxvY2FsIHZhbHVlIDEwMDAwMDAwKykgaXMgbm90IHVwZGF0ZWQgd2l0aCB0aGUgbGF0ZXN0IGlkIGZyb20gZGJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZXhjaGFuZ2VJZChzdG9yZSwgZGF0YU1vZGVsTmFtZSwgZW50aXR5TmFtZSwgY2hhbmdlLnBhcmFtcywgJ2lkJyk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2hhbmdlLnBhcmFtcy5kYXRhKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZXhjaGFuZ2VJZHMoc3RvcmUsIGRhdGFNb2RlbE5hbWUsIGVudGl0eU5hbWUsIGNoYW5nZS5wYXJhbXMuZGF0YSk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC8vIEFmdGVyIGV2ZXJ5IGRhdGFiYXNlIGluc2VydCwgdHJhY2sgdGhlIElkIGNoYW5nZS5cbiAgICBwdWJsaWMgcG9zdENhbGxTdWNjZXNzKGNoYW5nZTogQ2hhbmdlLCByZXNwb25zZTogYW55KSB7XG4gICAgICAgIGlmIChjaGFuZ2UgJiYgY2hhbmdlLnNlcnZpY2UgPT09ICdEYXRhYmFzZVNlcnZpY2UnXG4gICAgICAgICAgICAmJiAoY2hhbmdlLm9wZXJhdGlvbiA9PT0gJ2luc2VydFRhYmxlRGF0YScgfHwgY2hhbmdlLm9wZXJhdGlvbiA9PT0gJ2luc2VydE11bHRpUGFydFRhYmxlRGF0YScpXG4gICAgICAgICAgICAmJiB0aGlzLnRyYW5zYWN0aW9uTG9jYWxJZCkge1xuICAgICAgICAgICAgY29uc3QgZGF0YSA9IHJlc3BvbnNlWzBdLmJvZHk7XG4gICAgICAgICAgICBjb25zdCBlbnRpdHlOYW1lID0gY2hhbmdlLnBhcmFtcy5lbnRpdHlOYW1lO1xuICAgICAgICAgICAgY29uc3QgZGF0YU1vZGVsTmFtZSA9IGNoYW5nZS5wYXJhbXMuZGF0YU1vZGVsTmFtZTtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmxvY2FsREJNYW5hZ2VtZW50U2VydmljZS5nZXRTdG9yZShkYXRhTW9kZWxOYW1lLCBlbnRpdHlOYW1lKS50aGVuKHN0b3JlID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnB1c2hJZFRvU3RvcmUoZGF0YU1vZGVsTmFtZSwgZW50aXR5TmFtZSwgdGhpcy50cmFuc2FjdGlvbkxvY2FsSWQsIGRhdGFbc3RvcmUucHJpbWFyeUtleU5hbWVdKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gc3RvcmUuZGVsZXRlKHRoaXMudHJhbnNhY3Rpb25Mb2NhbElkKS5jYXRjaChub29wKS50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50cmFuc2FjdGlvbkxvY2FsSWQgPSBudWxsO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3RvcmUuc2F2ZShkYXRhKTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8vIHN0b3JlIGVycm9yIGVudGl0eSBpZFxuICAgIHB1YmxpYyBwb3N0Q2FsbEVycm9yKGNoYW5nZTogQ2hhbmdlKSB7XG4gICAgICAgIGlmIChjaGFuZ2UgJiYgY2hhbmdlLnNlcnZpY2UgPT09ICdEYXRhYmFzZVNlcnZpY2UnXG4gICAgICAgICAgICAmJiAoY2hhbmdlLm9wZXJhdGlvbiA9PT0gJ2luc2VydFRhYmxlRGF0YScgfHwgY2hhbmdlLm9wZXJhdGlvbiA9PT0gJ2luc2VydE11bHRpUGFydFRhYmxlRGF0YScpXG4gICAgICAgICAgICAmJiB0aGlzLnRyYW5zYWN0aW9uTG9jYWxJZCkge1xuICAgICAgICAgICAgY29uc3QgZW50aXR5TmFtZSA9IGNoYW5nZS5wYXJhbXMuZW50aXR5TmFtZTtcbiAgICAgICAgICAgIGNvbnN0IGRhdGFNb2RlbE5hbWUgPSBjaGFuZ2UucGFyYW1zLmRhdGFNb2RlbE5hbWU7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5sb2NhbERCTWFuYWdlbWVudFNlcnZpY2UuZ2V0U3RvcmUoZGF0YU1vZGVsTmFtZSwgZW50aXR5TmFtZSkudGhlbihzdG9yZSA9PiB7XG4gICAgICAgICAgICAgICAgY2hhbmdlLnBhcmFtcy5kYXRhW3N0b3JlLnByaW1hcnlLZXlOYW1lXSA9IHRoaXMudHJhbnNhY3Rpb25Mb2NhbElkO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEVudGl0eUlkU3RvcmUoZGF0YU1vZGVsTmFtZTogc3RyaW5nLCBlbnRpdHlOYW1lOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5pZFN0b3JlW2RhdGFNb2RlbE5hbWVdID0gdGhpcy5pZFN0b3JlW2RhdGFNb2RlbE5hbWVdIHx8IHt9O1xuICAgICAgICB0aGlzLmlkU3RvcmVbZGF0YU1vZGVsTmFtZV1bZW50aXR5TmFtZV0gPSB0aGlzLmlkU3RvcmVbZGF0YU1vZGVsTmFtZV1bZW50aXR5TmFtZV0gfHwge307XG4gICAgICAgIHJldHVybiB0aGlzLmlkU3RvcmVbZGF0YU1vZGVsTmFtZV1bZW50aXR5TmFtZV07XG4gICAgfVxuXG4gICAgLy8gaWYgbG9jYWwgaWQgaXMgZGlmZmVyZW50LCB0aGVuIGNyZWF0ZSBhIG1hcHBpbmcgZm9yIGV4Y2hhbmdlLlxuICAgIHByaXZhdGUgcHVzaElkVG9TdG9yZShkYXRhTW9kZWxOYW1lOiBzdHJpbmcsIGVudGl0eU5hbWU6IHN0cmluZywgdHJhbnNhY3Rpb25Mb2NhbElkOiBhbnksIHJlbW90ZUlkOiBhbnkpIHtcbiAgICAgICAgaWYgKHRyYW5zYWN0aW9uTG9jYWxJZCAhPT0gcmVtb3RlSWQpIHtcbiAgICAgICAgICAgIHRoaXMuZ2V0RW50aXR5SWRTdG9yZShkYXRhTW9kZWxOYW1lLCBlbnRpdHlOYW1lKVt0cmFuc2FjdGlvbkxvY2FsSWRdID0gcmVtb3RlSWQ7XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnQ29uZmxpY3QgZm91bmQgZm9yIGVudGl0eSAoJXMpIHdpdGggbG9jYWwgaWQgKCVpKSBhbmQgcmVtb3RlIElkICglaSknLCBlbnRpdHlOYW1lLCB0cmFuc2FjdGlvbkxvY2FsSWQsIHJlbW90ZUlkKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgbG9nUmVzb2x1dGlvbihlbnRpdHlOYW1lOiBzdHJpbmcsIGxvY2FsSWQ6IGFueSwgcmVtb3RlSWQ6IGFueSkge1xuICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1ZygnQ29uZmxpY3QgcmVzb2x2ZWQgZm91bmQgZm9yIGVudGl0eSAoJXMpIHdpdGggbG9jYWwgaWQgKCVpKSBhbmQgcmVtb3RlIElkICglaSknLCBlbnRpdHlOYW1lLCBsb2NhbElkLCByZW1vdGVJZCk7XG4gICAgfVxuXG4gICAgLy8gRXhjaGFuZ2UgcHJpbWFyeSBrZXkgIG9mIHRoZSBnaXZlbiBlbnRpdHlcbiAgICBwcml2YXRlIGV4Y2hhbmdlSWQoc3RvcmU6IExvY2FsREJTdG9yZSwgZGF0YU1vZGVsTmFtZTogc3RyaW5nLCBlbnRpdHlOYW1lOiBzdHJpbmcsIGRhdGE/OiBhbnksIGtleU5hbWU/OiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgcHJpbWFyeUtleU5hbWUgPSBrZXlOYW1lIHx8IHN0b3JlLnByaW1hcnlLZXlOYW1lO1xuICAgICAgICBjb25zdCBlbnRpdHlJZFN0b3JlID0gdGhpcy5nZXRFbnRpdHlJZFN0b3JlKGRhdGFNb2RlbE5hbWUsIGVudGl0eU5hbWUpO1xuICAgICAgICBpZiAoZGF0YSAmJiBwcmltYXJ5S2V5TmFtZSkge1xuICAgICAgICAgICAgY29uc3QgbG9jYWxJZCA9IGRhdGFbcHJpbWFyeUtleU5hbWVdO1xuICAgICAgICAgICAgbGV0IHJlbW90ZUlkID0gbG9jYWxJZDtcbiAgICAgICAgICAgIHdoaWxlIChlbnRpdHlJZFN0b3JlW3JlbW90ZUlkXSkge1xuICAgICAgICAgICAgICAgIHJlbW90ZUlkID0gZW50aXR5SWRTdG9yZVtyZW1vdGVJZF07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpZiAocmVtb3RlSWQgIT09IGxvY2FsSWQpIHtcbiAgICAgICAgICAgICAgICBkYXRhW3ByaW1hcnlLZXlOYW1lXSA9IHJlbW90ZUlkO1xuICAgICAgICAgICAgICAgIHRoaXMubG9nUmVzb2x1dGlvbihlbnRpdHlOYW1lLCBsb2NhbElkLCByZW1vdGVJZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBMb29rcyBwcmltYXJ5IGtleSBjaGFuZ2VzIGluIHRoZSBnaXZlbiBlbnRpdHkgb3IgaW4gdGhlIHJlbGF0aW9uc1xuICAgIHByaXZhdGUgZXhjaGFuZ2VJZHMoc3RvcmU6IExvY2FsREJTdG9yZSwgZGF0YU1vZGVsTmFtZTogc3RyaW5nLCBlbnRpdHlOYW1lOiBzdHJpbmcsIGRhdGE6IGFueSk6IFByb21pc2U8YW55PiB7XG4gICAgICAgIHRoaXMuZXhjaGFuZ2VJZChzdG9yZSwgZGF0YU1vZGVsTmFtZSwgZW50aXR5TmFtZSwgZGF0YSk7XG4gICAgICAgIGNvbnN0IGV4Y2hhbmdlSWRQcm9taXNlcyA9IFtdO1xuICAgICAgICBzdG9yZS5lbnRpdHlTY2hlbWEuY29sdW1ucy5mb3JFYWNoKGNvbCA9PiB7XG4gICAgICAgICAgICBpZiAoY29sLmZvcmVpZ25SZWxhdGlvbnMpIHtcbiAgICAgICAgICAgICAgICBjb2wuZm9yZWlnblJlbGF0aW9ucy5mb3JFYWNoKCBmb3JlaWduUmVsYXRpb24gPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YVtjb2wuZmllbGROYW1lXSkgey8vIGlmIGlkIHZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmV4Y2hhbmdlSWQoc3RvcmUsIGRhdGFNb2RlbE5hbWUsIGZvcmVpZ25SZWxhdGlvbi50YXJnZXRFbnRpdHksIGRhdGEsIGNvbC5maWVsZE5hbWUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGlmIChkYXRhW2ZvcmVpZ25SZWxhdGlvbi5zb3VyY2VGaWVsZE5hbWVdKSB7Ly8gaWYgb2JqZWN0IHJlZmVyZW5jZVxuICAgICAgICAgICAgICAgICAgICAgICAgZXhjaGFuZ2VJZFByb21pc2VzLnB1c2godGhpcy5sb2NhbERCTWFuYWdlbWVudFNlcnZpY2UuZ2V0U3RvcmUoZGF0YU1vZGVsTmFtZSwgZm9yZWlnblJlbGF0aW9uLnRhcmdldEVudGl0eSlcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGhlbihyZWZTdG9yZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmV4Y2hhbmdlSWRzKHJlZlN0b3JlLCBkYXRhTW9kZWxOYW1lLCBmb3JlaWduUmVsYXRpb24udGFyZ2V0RW50aXR5LCBkYXRhW2ZvcmVpZ25SZWxhdGlvbi5zb3VyY2VGaWVsZE5hbWVdKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIHJldHVybiBQcm9taXNlLmFsbChleGNoYW5nZUlkUHJvbWlzZXMpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
import { forEach, isObject, mapValues } from "lodash-es";
|
|
2
|
-
export class MultiPartParamTransformer {
|
|
3
|
-
constructor(deviceFileService, localDBManagementService) {
|
|
4
|
-
this.deviceFileService = deviceFileService;
|
|
5
|
-
this.localDBManagementService = localDBManagementService;
|
|
6
|
-
}
|
|
7
|
-
postCallSuccess(change) {
|
|
8
|
-
if (change && change.service === 'DatabaseService') {
|
|
9
|
-
switch (change.operation) {
|
|
10
|
-
case 'insertMultiPartTableData':
|
|
11
|
-
case 'updateMultiPartTableData':
|
|
12
|
-
// clean up files
|
|
13
|
-
forEach(change.params.data, v => {
|
|
14
|
-
// @ts-ignore
|
|
15
|
-
if (isObject(v) && v.wmLocalPath) {
|
|
16
|
-
// @ts-ignore
|
|
17
|
-
this.deviceFileService.removeFile(v.wmLocalPath);
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
break;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
transformParamsFromMap(change) {
|
|
25
|
-
if (change && change.service === 'DatabaseService') {
|
|
26
|
-
switch (change.operation) {
|
|
27
|
-
case 'insertMultiPartTableData':
|
|
28
|
-
case 'updateMultiPartTableData':
|
|
29
|
-
return this.localDBManagementService.getStore(change.params.dataModelName, change.params.entityName)
|
|
30
|
-
.then(store => {
|
|
31
|
-
// construct Form data
|
|
32
|
-
return store.deserialize(change.params.data).then(function (formData) {
|
|
33
|
-
change.params.data = formData;
|
|
34
|
-
});
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
transformParamsToMap(change) {
|
|
40
|
-
if (change && change.service === 'DatabaseService') {
|
|
41
|
-
switch (change.operation) {
|
|
42
|
-
case 'insertMultiPartTableData':
|
|
43
|
-
case 'updateMultiPartTableData':
|
|
44
|
-
return this.localDBManagementService.getStore(change.params.dataModelName, change.params.entityName)
|
|
45
|
-
.then(store => {
|
|
46
|
-
return store.serialize(change.params.data).then(function (map) {
|
|
47
|
-
change.params.data = map;
|
|
48
|
-
/**
|
|
49
|
-
* As save method called with FormData object, empty row is inserted.
|
|
50
|
-
* Since FormData is converted to map, update the record details now.
|
|
51
|
-
*/
|
|
52
|
-
store.save(mapValues(map, function (v) {
|
|
53
|
-
// @ts-ignore
|
|
54
|
-
return (isObject(v) && v.wmLocalPath) || v;
|
|
55
|
-
}));
|
|
56
|
-
return map;
|
|
57
|
-
});
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktcGFydC1wYXJhbS10cmFuc2Zvcm1lci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21vYmlsZS9vZmZsaW5lL3NyYy9zZXJ2aWNlcy93b3JrZXJzL211bHRpLXBhcnQtcGFyYW0tdHJhbnNmb3JtZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQUFDLE9BQU8sRUFBRSxRQUFRLEVBQUUsU0FBUyxFQUFDLE1BQU0sV0FBVyxDQUFDO0FBRXZELE1BQU0sT0FBTyx5QkFBeUI7SUFFbEMsWUFDWSxpQkFBb0MsRUFDcEMsd0JBQWtEO1FBRGxELHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtJQUMzRCxDQUFDO0lBRUcsZUFBZSxDQUFDLE1BQWM7UUFDakMsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxpQkFBaUIsRUFBRSxDQUFDO1lBQ2pELFFBQVEsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUN2QixLQUFLLDBCQUEwQixDQUFDO2dCQUNoQyxLQUFLLDBCQUEwQjtvQkFDM0IsaUJBQWlCO29CQUNqQixPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLEVBQUU7d0JBQzVCLGFBQWE7d0JBQ2IsSUFBSSxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDOzRCQUMvQixhQUFhOzRCQUNiLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO3dCQUNyRCxDQUFDO29CQUNMLENBQUMsQ0FBQyxDQUFDO29CQUNILE1BQU07WUFDZCxDQUFDO1FBQ0wsQ0FBQztJQUNMLENBQUM7SUFFTSxzQkFBc0IsQ0FBQyxNQUFjO1FBQ3hDLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxPQUFPLEtBQUssaUJBQWlCLEVBQUUsQ0FBQztZQUNqRCxRQUFRLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQztnQkFDdkIsS0FBSywwQkFBMEIsQ0FBQztnQkFDaEMsS0FBSywwQkFBMEI7b0JBQzNCLE9BQU8sSUFBSSxDQUFDLHdCQUF3QixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQzt5QkFDL0YsSUFBSSxDQUFFLEtBQUssQ0FBQyxFQUFFO3dCQUNYLHNCQUFzQjt3QkFDdEIsT0FBTyxLQUFLLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsUUFBUTs0QkFDaEUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsUUFBUSxDQUFDO3dCQUNsQyxDQUFDLENBQUMsQ0FBQztvQkFDUCxDQUFDLENBQUMsQ0FBQztZQUNmLENBQUM7UUFDTCxDQUFDO0lBQ0wsQ0FBQztJQUVNLG9CQUFvQixDQUFDLE1BQWM7UUFDdEMsSUFBSSxNQUFNLElBQUksTUFBTSxDQUFDLE9BQU8sS0FBSyxpQkFBaUIsRUFBRSxDQUFDO1lBQ2pELFFBQVEsTUFBTSxDQUFDLFNBQVMsRUFBRSxDQUFDO2dCQUN2QixLQUFLLDBCQUEwQixDQUFDO2dCQUNoQyxLQUFLLDBCQUEwQjtvQkFDM0IsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDO3lCQUMvRixJQUFJLENBQUUsS0FBSyxDQUFDLEVBQUU7d0JBQ1gsT0FBTyxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsR0FBRzs0QkFDekQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEdBQUcsR0FBRyxDQUFDOzRCQUN6Qjs7OytCQUdHOzRCQUNILEtBQUssQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRSxVQUFVLENBQUM7Z0NBQ2pDLGFBQWE7Z0NBQ2IsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDOzRCQUMvQyxDQUFDLENBQUMsQ0FBQyxDQUFDOzRCQUNKLE9BQU8sR0FBRyxDQUFDO3dCQUNmLENBQUMsQ0FBQyxDQUFDO29CQUNQLENBQUMsQ0FBQyxDQUFDO1lBQ2YsQ0FBQztRQUNMLENBQUM7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXZpY2VGaWxlU2VydmljZSB9IGZyb20gJ0B3bS9tb2JpbGUvY29yZSc7XG5cbmltcG9ydCB7IENoYW5nZSwgV29ya2VyIH0gZnJvbSAnLi4vY2hhbmdlLWxvZy5zZXJ2aWNlJztcbmltcG9ydCB7IExvY2FsREJNYW5hZ2VtZW50U2VydmljZSB9IGZyb20gJy4uL2xvY2FsLWRiLW1hbmFnZW1lbnQuc2VydmljZSc7XG5pbXBvcnQge2ZvckVhY2gsIGlzT2JqZWN0LCBtYXBWYWx1ZXN9IGZyb20gXCJsb2Rhc2gtZXNcIjtcblxuZXhwb3J0IGNsYXNzIE11bHRpUGFydFBhcmFtVHJhbnNmb3JtZXIgaW1wbGVtZW50cyBXb3JrZXIge1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZGV2aWNlRmlsZVNlcnZpY2U6IERldmljZUZpbGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGxvY2FsREJNYW5hZ2VtZW50U2VydmljZTogTG9jYWxEQk1hbmFnZW1lbnRTZXJ2aWNlXG4gICAgKSB7fVxuXG4gICAgcHVibGljIHBvc3RDYWxsU3VjY2VzcyhjaGFuZ2U6IENoYW5nZSkge1xuICAgICAgICBpZiAoY2hhbmdlICYmIGNoYW5nZS5zZXJ2aWNlID09PSAnRGF0YWJhc2VTZXJ2aWNlJykge1xuICAgICAgICAgICAgc3dpdGNoIChjaGFuZ2Uub3BlcmF0aW9uKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAnaW5zZXJ0TXVsdGlQYXJ0VGFibGVEYXRhJzpcbiAgICAgICAgICAgICAgICBjYXNlICd1cGRhdGVNdWx0aVBhcnRUYWJsZURhdGEnOlxuICAgICAgICAgICAgICAgICAgICAvLyBjbGVhbiB1cCBmaWxlc1xuICAgICAgICAgICAgICAgICAgICBmb3JFYWNoKGNoYW5nZS5wYXJhbXMuZGF0YSwgdiA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaXNPYmplY3QodikgJiYgdi53bUxvY2FsUGF0aCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmRldmljZUZpbGVTZXJ2aWNlLnJlbW92ZUZpbGUodi53bUxvY2FsUGF0aCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyB0cmFuc2Zvcm1QYXJhbXNGcm9tTWFwKGNoYW5nZTogQ2hhbmdlKSB7XG4gICAgICAgIGlmIChjaGFuZ2UgJiYgY2hhbmdlLnNlcnZpY2UgPT09ICdEYXRhYmFzZVNlcnZpY2UnKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKGNoYW5nZS5vcGVyYXRpb24pIHtcbiAgICAgICAgICAgICAgICBjYXNlICdpbnNlcnRNdWx0aVBhcnRUYWJsZURhdGEnOlxuICAgICAgICAgICAgICAgIGNhc2UgJ3VwZGF0ZU11bHRpUGFydFRhYmxlRGF0YSc6XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmxvY2FsREJNYW5hZ2VtZW50U2VydmljZS5nZXRTdG9yZShjaGFuZ2UucGFyYW1zLmRhdGFNb2RlbE5hbWUsIGNoYW5nZS5wYXJhbXMuZW50aXR5TmFtZSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC50aGVuKCBzdG9yZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gY29uc3RydWN0IEZvcm0gZGF0YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBzdG9yZS5kZXNlcmlhbGl6ZShjaGFuZ2UucGFyYW1zLmRhdGEpLnRoZW4oZnVuY3Rpb24gKGZvcm1EYXRhKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZS5wYXJhbXMuZGF0YSA9IGZvcm1EYXRhO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgdHJhbnNmb3JtUGFyYW1zVG9NYXAoY2hhbmdlOiBDaGFuZ2UpIHtcbiAgICAgICAgaWYgKGNoYW5nZSAmJiBjaGFuZ2Uuc2VydmljZSA9PT0gJ0RhdGFiYXNlU2VydmljZScpIHtcbiAgICAgICAgICAgIHN3aXRjaCAoY2hhbmdlLm9wZXJhdGlvbikge1xuICAgICAgICAgICAgICAgIGNhc2UgJ2luc2VydE11bHRpUGFydFRhYmxlRGF0YSc6XG4gICAgICAgICAgICAgICAgY2FzZSAndXBkYXRlTXVsdGlQYXJ0VGFibGVEYXRhJzpcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9jYWxEQk1hbmFnZW1lbnRTZXJ2aWNlLmdldFN0b3JlKGNoYW5nZS5wYXJhbXMuZGF0YU1vZGVsTmFtZSwgY2hhbmdlLnBhcmFtcy5lbnRpdHlOYW1lKVxuICAgICAgICAgICAgICAgICAgICAgICAgLnRoZW4oIHN0b3JlID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3RvcmUuc2VyaWFsaXplKGNoYW5nZS5wYXJhbXMuZGF0YSkudGhlbihmdW5jdGlvbiAobWFwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoYW5nZS5wYXJhbXMuZGF0YSA9IG1hcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLyoqXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqIEFzIHNhdmUgbWV0aG9kIGNhbGxlZCB3aXRoIEZvcm1EYXRhIG9iamVjdCwgZW1wdHkgcm93IGlzIGluc2VydGVkLlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKiBTaW5jZSBGb3JtRGF0YSBpcyBjb252ZXJ0ZWQgdG8gbWFwLCB1cGRhdGUgdGhlIHJlY29yZCBkZXRhaWxzIG5vdy5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICovXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0b3JlLnNhdmUobWFwVmFsdWVzKG1hcCwgZnVuY3Rpb24gKHYpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoaXNPYmplY3QodikgJiYgdi53bUxvY2FsUGF0aCkgfHwgdjtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbWFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
let isOfflineBehaviourAdded = false;
|
|
2
|
-
export class FileUploadOfflineBehaviour {
|
|
3
|
-
constructor(changeLogService, deviceFileService, deviceFileUploadService, file, networkService, uploadDir) {
|
|
4
|
-
this.changeLogService = changeLogService;
|
|
5
|
-
this.deviceFileService = deviceFileService;
|
|
6
|
-
this.deviceFileUploadService = deviceFileUploadService;
|
|
7
|
-
this.file = file;
|
|
8
|
-
this.networkService = networkService;
|
|
9
|
-
this.uploadDir = uploadDir;
|
|
10
|
-
}
|
|
11
|
-
add() {
|
|
12
|
-
if (isOfflineBehaviourAdded) {
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
isOfflineBehaviourAdded = true;
|
|
16
|
-
const orig = this.deviceFileUploadService.upload;
|
|
17
|
-
this.deviceFileUploadService['uploadToServer'] = orig;
|
|
18
|
-
this.deviceFileUploadService.upload = (url, fileParamName, localPath, fileName, params, headers) => {
|
|
19
|
-
if (this.networkService.isConnected()) {
|
|
20
|
-
return orig.call(this.deviceFileUploadService, url, fileParamName, localPath, fileName, params, headers);
|
|
21
|
-
}
|
|
22
|
-
else {
|
|
23
|
-
return this.uploadLater(url, fileParamName, localPath, fileName, params, headers).then(response => {
|
|
24
|
-
return {
|
|
25
|
-
text: JSON.stringify(response),
|
|
26
|
-
headers: null,
|
|
27
|
-
response: response
|
|
28
|
-
};
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
}
|
|
33
|
-
uploadLater(url, fileParamName, localPath, fileName, params, headers) {
|
|
34
|
-
const i = localPath.lastIndexOf('/'), soureDir = localPath.substring(0, i), soureFile = localPath.substring(i + 1), destFile = this.deviceFileService.appendToFileName(soureFile), filePath = this.uploadDir + '/' + destFile;
|
|
35
|
-
return this.file.copyFile(soureDir, soureFile, this.uploadDir, destFile)
|
|
36
|
-
.then(() => {
|
|
37
|
-
return this.changeLogService.add('OfflineFileUploadService', 'uploadToServer', {
|
|
38
|
-
file: filePath,
|
|
39
|
-
ftOptions: {
|
|
40
|
-
fileKey: fileParamName,
|
|
41
|
-
fileName: fileName
|
|
42
|
-
},
|
|
43
|
-
params: params,
|
|
44
|
-
headers: headers,
|
|
45
|
-
serverUrl: url,
|
|
46
|
-
deleteOnUpload: true
|
|
47
|
-
});
|
|
48
|
-
}).then(() => {
|
|
49
|
-
return [{
|
|
50
|
-
fileName: soureFile,
|
|
51
|
-
path: filePath,
|
|
52
|
-
length: 0,
|
|
53
|
-
success: true,
|
|
54
|
-
inlinePath: filePath + '?inline'
|
|
55
|
-
}];
|
|
56
|
-
});
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS11cGxvYWQudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9tb2JpbGUvb2ZmbGluZS9zcmMvdXRpbHMvZmlsZS11cGxvYWQudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsSUFBSSx1QkFBdUIsR0FBRyxLQUFLLENBQUM7QUFFcEMsTUFBTSxPQUFPLDBCQUEwQjtJQUVuQyxZQUNZLGdCQUFrQyxFQUNsQyxpQkFBb0MsRUFDcEMsdUJBQWdELEVBQ2hELElBQVUsRUFDVixjQUE4QixFQUM5QixTQUFpQjtRQUxqQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ2xDLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsNEJBQXVCLEdBQXZCLHVCQUF1QixDQUF5QjtRQUNoRCxTQUFJLEdBQUosSUFBSSxDQUFNO1FBQ1YsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLGNBQVMsR0FBVCxTQUFTLENBQVE7SUFHN0IsQ0FBQztJQUVNLEdBQUc7UUFDTixJQUFJLHVCQUF1QixFQUFFLENBQUM7WUFDMUIsT0FBTztRQUNYLENBQUM7UUFDRCx1QkFBdUIsR0FBRyxJQUFJLENBQUM7UUFDL0IsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLE1BQU0sQ0FBQztRQUNqRCxJQUFJLENBQUMsdUJBQXVCLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxJQUFJLENBQUM7UUFDdEQsSUFBSSxDQUFDLHVCQUF1QixDQUFDLE1BQU0sR0FBRyxDQUFDLEdBQVcsRUFBRSxhQUFxQixFQUFFLFNBQWlCLEVBQUUsUUFBaUIsRUFBRSxNQUFZLEVBQUUsT0FBYSxFQUE0QixFQUFFO1lBQ3RLLElBQUksSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO2dCQUNwQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHVCQUF1QixFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDN0csQ0FBQztpQkFBTSxDQUFDO2dCQUNKLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRTtvQkFDOUYsT0FBTzt3QkFDSCxJQUFJLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUM7d0JBQzlCLE9BQU8sRUFBRSxJQUFJO3dCQUNiLFFBQVEsRUFBRSxRQUFRO3FCQUNyQixDQUFDO2dCQUNOLENBQUMsQ0FBQyxDQUFDO1lBQ1AsQ0FBQztRQUNMLENBQUMsQ0FBQztJQUNOLENBQUM7SUFFTSxXQUFXLENBQUMsR0FBVyxFQUFFLGFBQXFCLEVBQUUsU0FBaUIsRUFBRSxRQUFpQixFQUFFLE1BQVksRUFBRSxPQUFhO1FBQ3BILE1BQU0sQ0FBQyxHQUFHLFNBQVMsQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQ2hDLFFBQVEsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFDcEMsU0FBUyxHQUFHLFNBQVMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUN0QyxRQUFRLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxFQUM3RCxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsR0FBRyxHQUFHLEdBQUcsUUFBUSxDQUFDO1FBQy9DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQzthQUNuRSxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ1AsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLDBCQUEwQixFQUFFLGdCQUFnQixFQUFFO2dCQUMzRSxJQUFJLEVBQUUsUUFBUTtnQkFDZCxTQUFTLEVBQUU7b0JBQ1AsT0FBTyxFQUFFLGFBQWE7b0JBQ3RCLFFBQVEsRUFBRSxRQUFRO2lCQUNyQjtnQkFDRCxNQUFNLEVBQUUsTUFBTTtnQkFDZCxPQUFPLEVBQUUsT0FBTztnQkFDaEIsU0FBUyxFQUFFLEdBQUc7Z0JBQ2QsY0FBYyxFQUFFLElBQUk7YUFDdkIsQ0FBQyxDQUFDO1FBQ1AsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNULE9BQU8sQ0FBQztvQkFDSixRQUFRLEVBQUUsU0FBUztvQkFDbkIsSUFBSSxFQUFFLFFBQVE7b0JBQ2QsTUFBTSxFQUFFLENBQUM7b0JBQ1QsT0FBTyxFQUFFLElBQUk7b0JBQ2IsVUFBVSxFQUFFLFFBQVEsR0FBRyxTQUFTO2lCQUNuQyxDQUFDLENBQUM7UUFDUCxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpbGUgfSBmcm9tICdAYXdlc29tZS1jb3Jkb3ZhLXBsdWdpbnMvZmlsZS9uZ3gnO1xuXG5pbXBvcnQgeyBEZXZpY2VGaWxlU2VydmljZSwgRGV2aWNlRmlsZVVwbG9hZFNlcnZpY2UsIElVcGxvYWRSZXNwb25zZSwgTmV0d29ya1NlcnZpY2UsIFVwbG9hZFJlcXVlc3QgfSBmcm9tICdAd20vbW9iaWxlL2NvcmUnO1xuXG5pbXBvcnQgeyBDaGFuZ2VMb2dTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvY2hhbmdlLWxvZy5zZXJ2aWNlJztcblxubGV0IGlzT2ZmbGluZUJlaGF2aW91ckFkZGVkID0gZmFsc2U7XG5cbmV4cG9ydCBjbGFzcyBGaWxlVXBsb2FkT2ZmbGluZUJlaGF2aW91ciB7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBjaGFuZ2VMb2dTZXJ2aWNlOiBDaGFuZ2VMb2dTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGRldmljZUZpbGVTZXJ2aWNlOiBEZXZpY2VGaWxlU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBkZXZpY2VGaWxlVXBsb2FkU2VydmljZTogRGV2aWNlRmlsZVVwbG9hZFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZmlsZTogRmlsZSxcbiAgICAgICAgcHJpdmF0ZSBuZXR3b3JrU2VydmljZTogTmV0d29ya1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgdXBsb2FkRGlyOiBzdHJpbmdcbiAgICApIHtcblxuICAgIH1cblxuICAgIHB1YmxpYyBhZGQoKSB7XG4gICAgICAgIGlmIChpc09mZmxpbmVCZWhhdmlvdXJBZGRlZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGlzT2ZmbGluZUJlaGF2aW91ckFkZGVkID0gdHJ1ZTtcbiAgICAgICAgY29uc3Qgb3JpZyA9IHRoaXMuZGV2aWNlRmlsZVVwbG9hZFNlcnZpY2UudXBsb2FkO1xuICAgICAgICB0aGlzLmRldmljZUZpbGVVcGxvYWRTZXJ2aWNlWyd1cGxvYWRUb1NlcnZlciddID0gb3JpZztcbiAgICAgICAgdGhpcy5kZXZpY2VGaWxlVXBsb2FkU2VydmljZS51cGxvYWQgPSAodXJsOiBzdHJpbmcsIGZpbGVQYXJhbU5hbWU6IHN0cmluZywgbG9jYWxQYXRoOiBzdHJpbmcsIGZpbGVOYW1lPzogc3RyaW5nLCBwYXJhbXM/OiBhbnksIGhlYWRlcnM/OiBhbnkpOiBQcm9taXNlPElVcGxvYWRSZXNwb25zZT4gPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMubmV0d29ya1NlcnZpY2UuaXNDb25uZWN0ZWQoKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBvcmlnLmNhbGwodGhpcy5kZXZpY2VGaWxlVXBsb2FkU2VydmljZSwgdXJsLCBmaWxlUGFyYW1OYW1lLCBsb2NhbFBhdGgsIGZpbGVOYW1lLCBwYXJhbXMsIGhlYWRlcnMpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy51cGxvYWRMYXRlcih1cmwsIGZpbGVQYXJhbU5hbWUsIGxvY2FsUGF0aCwgZmlsZU5hbWUsIHBhcmFtcywgaGVhZGVycykudGhlbihyZXNwb25zZSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiBKU09OLnN0cmluZ2lmeShyZXNwb25zZSksXG4gICAgICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiBudWxsLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVzcG9uc2U6IHJlc3BvbnNlXG4gICAgICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHVibGljIHVwbG9hZExhdGVyKHVybDogc3RyaW5nLCBmaWxlUGFyYW1OYW1lOiBzdHJpbmcsIGxvY2FsUGF0aDogc3RyaW5nLCBmaWxlTmFtZT86IHN0cmluZywgcGFyYW1zPzogYW55LCBoZWFkZXJzPzogYW55KTogUHJvbWlzZTxhbnk+IHtcbiAgICAgICAgY29uc3QgaSA9IGxvY2FsUGF0aC5sYXN0SW5kZXhPZignLycpLFxuICAgICAgICAgICAgc291cmVEaXIgPSBsb2NhbFBhdGguc3Vic3RyaW5nKDAsIGkpLFxuICAgICAgICAgICAgc291cmVGaWxlID0gbG9jYWxQYXRoLnN1YnN0cmluZyhpICsgMSksXG4gICAgICAgICAgICBkZXN0RmlsZSA9IHRoaXMuZGV2aWNlRmlsZVNlcnZpY2UuYXBwZW5kVG9GaWxlTmFtZShzb3VyZUZpbGUpLFxuICAgICAgICAgICAgZmlsZVBhdGggPSB0aGlzLnVwbG9hZERpciArICcvJyArIGRlc3RGaWxlO1xuICAgICAgICByZXR1cm4gdGhpcy5maWxlLmNvcHlGaWxlKHNvdXJlRGlyLCBzb3VyZUZpbGUsIHRoaXMudXBsb2FkRGlyLCBkZXN0RmlsZSlcbiAgICAgICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5jaGFuZ2VMb2dTZXJ2aWNlLmFkZCgnT2ZmbGluZUZpbGVVcGxvYWRTZXJ2aWNlJywgJ3VwbG9hZFRvU2VydmVyJywge1xuICAgICAgICAgICAgICAgICAgICBmaWxlOiBmaWxlUGF0aCxcbiAgICAgICAgICAgICAgICAgICAgZnRPcHRpb25zOiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmaWxlS2V5OiBmaWxlUGFyYW1OYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgZmlsZU5hbWU6IGZpbGVOYW1lXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIHBhcmFtczogcGFyYW1zLFxuICAgICAgICAgICAgICAgICAgICBoZWFkZXJzOiBoZWFkZXJzLFxuICAgICAgICAgICAgICAgICAgICBzZXJ2ZXJVcmw6IHVybCxcbiAgICAgICAgICAgICAgICAgICAgZGVsZXRlT25VcGxvYWQ6IHRydWVcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pLnRoZW4oKCkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBbe1xuICAgICAgICAgICAgICAgICAgICBmaWxlTmFtZTogc291cmVGaWxlLFxuICAgICAgICAgICAgICAgICAgICBwYXRoOiBmaWxlUGF0aCxcbiAgICAgICAgICAgICAgICAgICAgbGVuZ3RoOiAwLFxuICAgICAgICAgICAgICAgICAgICBzdWNjZXNzOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICBpbmxpbmVQYXRoOiBmaWxlUGF0aCArICc/aW5saW5lJ1xuICAgICAgICAgICAgICAgIH1dO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
|