@wavemaker/app-ng-runtime 11.14.1-rc.6310 → 11.14.2-1.245
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/components/advanced/carousel/bundles/index.umd.js +15 -1
- package/components/advanced/carousel/carousel.directive.d.ts +1 -0
- package/components/advanced/carousel/esm2022/carousel.directive.mjs +16 -2
- package/components/advanced/carousel/fesm2022/index.mjs +15 -1
- package/components/advanced/carousel/fesm2022/index.mjs.map +1 -1
- package/components/advanced/login/bundles/index.umd.js +24 -3
- package/components/advanced/login/esm2022/login.component.mjs +25 -4
- package/components/advanced/login/fesm2022/index.mjs +24 -3
- package/components/advanced/login/fesm2022/index.mjs.map +1 -1
- package/components/advanced/login/login.component.d.ts +5 -2
- package/components/base/bundles/index.umd.js +331 -36
- package/components/base/directives/show-in-device.directive.d.ts +2 -1
- package/components/base/esm2022/directives/show-in-device.directive.mjs +22 -4
- package/components/base/esm2022/pipes/custom-pipes.mjs +10 -10
- package/components/base/esm2022/utils/widget-utils.mjs +3 -3
- package/components/base/esm2022/widgets/common/base/base-container.component.mjs +27 -1
- package/components/base/esm2022/widgets/common/base/base-field-validations.mjs +18 -1
- package/components/base/esm2022/widgets/common/base/base.component.mjs +68 -7
- package/components/base/esm2022/widgets/common/base/custom-widget-container.directive.mjs +9 -1
- package/components/base/esm2022/widgets/common/base/dataset-aware-nav.component.mjs +44 -11
- package/components/base/esm2022/widgets/common/base/partial-container.directive.mjs +20 -1
- package/components/base/esm2022/widgets/common/item-template/item-template.directive.mjs +26 -1
- package/components/base/esm2022/widgets/common/lazy-load/lazy-load.directive.mjs +44 -4
- package/components/base/esm2022/widgets/common/partial-param/partial-param.directive.mjs +16 -1
- package/components/base/esm2022/widgets/common/pull-to-refresh/pull-to-refresh.mjs +22 -1
- package/components/base/esm2022/widgets/framework/property-change-handler.mjs +7 -2
- package/components/base/esm2022/widgets/framework/widget-proxy-provider.mjs +5 -3
- package/components/base/esm2022/widgets/framework/widget-registry.mjs +6 -3
- package/components/base/fesm2022/index.mjs +327 -34
- package/components/base/fesm2022/index.mjs.map +1 -1
- package/components/base/pipes/custom-pipes.d.ts +5 -5
- package/components/base/widgets/common/base/base-container.component.d.ts +3 -2
- package/components/base/widgets/common/base/base-field-validations.d.ts +1 -0
- package/components/base/widgets/common/base/custom-widget-container.directive.d.ts +3 -2
- package/components/base/widgets/common/base/dataset-aware-nav.component.d.ts +6 -2
- package/components/base/widgets/common/base/partial-container.directive.d.ts +3 -2
- package/components/base/widgets/common/item-template/item-template.directive.d.ts +3 -2
- package/components/base/widgets/common/lazy-load/lazy-load.directive.d.ts +1 -1
- package/components/base/widgets/common/partial-param/partial-param.directive.d.ts +3 -2
- package/components/base/widgets/common/pull-to-refresh/pull-to-refresh.d.ts +3 -2
- package/components/basic/anchor/bundles/index.umd.js +13 -1
- package/components/basic/anchor/esm2022/anchor.component.mjs +14 -2
- package/components/basic/anchor/fesm2022/index.mjs +13 -1
- package/components/basic/anchor/fesm2022/index.mjs.map +1 -1
- package/components/basic/html/bundles/index.umd.js +13 -1
- package/components/basic/html/esm2022/html.directive.mjs +14 -2
- package/components/basic/html/fesm2022/index.mjs +13 -1
- package/components/basic/html/fesm2022/index.mjs.map +1 -1
- package/components/basic/label/bundles/index.umd.js +17 -1
- package/components/basic/label/esm2022/label.directive.mjs +18 -2
- package/components/basic/label/fesm2022/index.mjs +17 -1
- package/components/basic/label/fesm2022/index.mjs.map +1 -1
- package/components/basic/label/label.directive.d.ts +3 -2
- package/components/basic/progress/progress-circle/bundles/index.umd.js +10 -0
- package/components/basic/progress/progress-circle/esm2022/progress-circle.component.mjs +11 -1
- package/components/basic/progress/progress-circle/fesm2022/index.mjs +10 -0
- package/components/basic/progress/progress-circle/fesm2022/index.mjs.map +1 -1
- package/components/basic/progress/progress-circle/progress-circle.component.d.ts +3 -2
- package/components/basic/search/bundles/index.umd.js +42 -14
- package/components/basic/search/esm2022/scrollable.directive.mjs +13 -4
- package/components/basic/search/esm2022/search.component.mjs +31 -12
- package/components/basic/search/fesm2022/index.mjs +42 -14
- package/components/basic/search/fesm2022/index.mjs.map +1 -1
- package/components/basic/search/scrollable.directive.d.ts +5 -3
- package/components/basic/search/search.component.d.ts +3 -2
- package/components/basic/spinner/bundles/index.umd.js +9 -1
- package/components/basic/spinner/esm2022/spinner.component.mjs +10 -2
- package/components/basic/spinner/fesm2022/index.mjs +9 -1
- package/components/basic/spinner/fesm2022/index.mjs.map +1 -1
- package/components/basic/spinner/spinner.component.d.ts +4 -2
- package/components/chart/bundles/index.umd.js +21 -3
- package/components/chart/esm2022/chart.component.mjs +22 -4
- package/components/chart/fesm2022/index.mjs +21 -3
- package/components/chart/fesm2022/index.mjs.map +1 -1
- package/components/containers/accordion/accordion-pane/accordion-pane.component.d.ts +3 -2
- package/components/containers/accordion/accordion.directive.d.ts +5 -2
- package/components/containers/accordion/bundles/index.umd.js +49 -2
- package/components/containers/accordion/esm2022/accordion-pane/accordion-pane.component.mjs +10 -1
- package/components/containers/accordion/esm2022/accordion.directive.mjs +41 -3
- package/components/containers/accordion/fesm2022/index.mjs +49 -2
- package/components/containers/accordion/fesm2022/index.mjs.map +1 -1
- package/components/containers/panel/bundles/index.umd.js +13 -0
- package/components/containers/panel/esm2022/panel.component.mjs +14 -1
- package/components/containers/panel/fesm2022/index.mjs +13 -0
- package/components/containers/panel/fesm2022/index.mjs.map +1 -1
- package/components/containers/panel/panel.component.d.ts +3 -2
- package/components/containers/tabs/bundles/index.umd.js +54 -2
- package/components/containers/tabs/esm2022/tab-pane/tab-pane.component.mjs +10 -1
- package/components/containers/tabs/esm2022/tabs.component.mjs +46 -3
- package/components/containers/tabs/fesm2022/index.mjs +54 -2
- package/components/containers/tabs/fesm2022/index.mjs.map +1 -1
- package/components/containers/tabs/tab-pane/tab-pane.component.d.ts +3 -2
- package/components/containers/tabs/tabs.component.d.ts +5 -2
- package/components/containers/wizard/bundles/index.umd.js +47 -3
- package/components/containers/wizard/esm2022/wizard-step/wizard-step.component.mjs +16 -3
- package/components/containers/wizard/esm2022/wizard.component.mjs +33 -2
- package/components/containers/wizard/fesm2022/index.mjs +47 -3
- package/components/containers/wizard/fesm2022/index.mjs.map +1 -1
- package/components/containers/wizard/wizard-step/wizard-step.component.d.ts +3 -2
- package/components/containers/wizard/wizard.component.d.ts +4 -2
- package/components/data/card/bundles/index.umd.js +17 -1
- package/components/data/card/card-content/card-content.component.d.ts +3 -2
- package/components/data/card/card.component.d.ts +4 -2
- package/components/data/card/esm2022/card-content/card-content.component.mjs +6 -1
- package/components/data/card/esm2022/card.component.mjs +13 -2
- package/components/data/card/fesm2022/index.mjs +17 -1
- package/components/data/card/fesm2022/index.mjs.map +1 -1
- package/components/data/form/bundles/index.umd.js +92 -0
- package/components/data/form/esm2022/form-action/form-action.directive.mjs +7 -1
- package/components/data/form/esm2022/form-field/form-field.directive.mjs +28 -1
- package/components/data/form/esm2022/form-widget.directive.mjs +8 -1
- package/components/data/form/esm2022/form.component.mjs +27 -1
- package/components/data/form/esm2022/live-actions/live-actions.directive.mjs +7 -1
- package/components/data/form/esm2022/live-filter/live-filter.directive.mjs +12 -1
- package/components/data/form/esm2022/live-form/live-form.directive.mjs +10 -1
- package/components/data/form/fesm2022/index.mjs +92 -0
- package/components/data/form/fesm2022/index.mjs.map +1 -1
- package/components/data/form/form-action/form-action.directive.d.ts +3 -2
- package/components/data/form/form-field/form-field.directive.d.ts +3 -2
- package/components/data/form/form-widget.directive.d.ts +3 -2
- package/components/data/form/live-actions/live-actions.directive.d.ts +3 -1
- package/components/data/form/live-filter/live-filter.directive.d.ts +3 -1
- package/components/data/form/live-form/live-form.directive.d.ts +3 -1
- package/components/data/list/bundles/index.umd.js +213 -19
- package/components/data/list/esm2022/list-item.directive.mjs +95 -11
- package/components/data/list/esm2022/list.component.mjs +120 -10
- package/components/data/list/fesm2022/index.mjs +213 -19
- package/components/data/list/fesm2022/index.mjs.map +1 -1
- package/components/data/list/list-item.directive.d.ts +7 -2
- package/components/data/list/list.component.d.ts +7 -0
- package/components/data/live-table/bundles/index.umd.js +13 -1
- package/components/data/live-table/esm2022/live-table.component.mjs +14 -2
- package/components/data/live-table/fesm2022/index.mjs +13 -1
- package/components/data/live-table/fesm2022/index.mjs.map +1 -1
- package/components/data/live-table/live-table.component.d.ts +4 -2
- package/components/data/pagination/bundles/index.umd.js +57 -4
- package/components/data/pagination/esm2022/pagination.component.mjs +58 -5
- package/components/data/pagination/fesm2022/index.mjs +57 -4
- package/components/data/pagination/fesm2022/index.mjs.map +1 -1
- package/components/data/pagination/pagination.component.d.ts +4 -2
- package/components/data/table/bundles/index.umd.js +345 -15
- package/components/data/table/esm2022/table-action/table-action.directive.mjs +8 -1
- package/components/data/table/esm2022/table-column/table-column.directive.mjs +107 -3
- package/components/data/table/esm2022/table-column-group/table-column-group.directive.mjs +9 -1
- package/components/data/table/esm2022/table-cud.directive.mjs +8 -2
- package/components/data/table/esm2022/table-filter.directive.mjs +12 -2
- package/components/data/table/esm2022/table-row/table-row.directive.mjs +8 -1
- package/components/data/table/esm2022/table-row-action/table-row-action.directive.mjs +8 -1
- package/components/data/table/esm2022/table.component.mjs +193 -12
- package/components/data/table/fesm2022/index.mjs +345 -15
- package/components/data/table/fesm2022/index.mjs.map +1 -1
- package/components/data/table/table-action/table-action.directive.d.ts +3 -2
- package/components/data/table/table-column/table-column.directive.d.ts +3 -2
- package/components/data/table/table-column-group/table-column-group.directive.d.ts +3 -2
- package/components/data/table/table-cud.directive.d.ts +3 -1
- package/components/data/table/table-filter.directive.d.ts +3 -1
- package/components/data/table/table-row/table-row.directive.d.ts +3 -2
- package/components/data/table/table-row-action/table-row-action.directive.d.ts +3 -2
- package/components/data/table/table.component.d.ts +6 -2
- package/components/dialogs/alert-dialog/alert-dialog.component.d.ts +3 -2
- package/components/dialogs/alert-dialog/bundles/index.umd.js +5 -0
- package/components/dialogs/alert-dialog/esm2022/alert-dialog.component.mjs +6 -1
- package/components/dialogs/alert-dialog/fesm2022/index.mjs +5 -0
- package/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/confirm-dialog/bundles/index.umd.js +5 -0
- package/components/dialogs/confirm-dialog/confirm-dialog.component.d.ts +3 -2
- package/components/dialogs/confirm-dialog/esm2022/confirm-dialog.component.mjs +6 -1
- package/components/dialogs/confirm-dialog/fesm2022/index.mjs +5 -0
- package/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/default/bundles/index.umd.js +15 -2
- package/components/dialogs/default/dialog-body/dialog-body.directive.d.ts +4 -2
- package/components/dialogs/default/esm2022/dialog-body/dialog-body.directive.mjs +16 -3
- package/components/dialogs/default/fesm2022/index.mjs +15 -2
- package/components/dialogs/default/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/design-dialog/bundles/index.umd.js +7 -0
- package/components/dialogs/design-dialog/dialog.component.d.ts +3 -2
- package/components/dialogs/design-dialog/esm2022/dialog.component.mjs +8 -1
- package/components/dialogs/design-dialog/fesm2022/index.mjs +7 -0
- package/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/iframe-dialog/bundles/index.umd.js +5 -0
- package/components/dialogs/iframe-dialog/esm2022/iframe-dialog.component.mjs +6 -1
- package/components/dialogs/iframe-dialog/fesm2022/index.mjs +5 -0
- package/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/iframe-dialog/iframe-dialog.component.d.ts +3 -2
- package/components/dialogs/partial-dialog/bundles/index.umd.js +23 -3
- package/components/dialogs/partial-dialog/esm2022/partial-dialog.component.mjs +24 -4
- package/components/dialogs/partial-dialog/fesm2022/index.mjs +23 -3
- package/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/partial-dialog/partial-dialog.component.d.ts +4 -2
- package/components/input/base-form/base-form.component.d.ts +4 -2
- package/components/input/base-form/bundles/index.umd.js +16 -2
- package/components/input/base-form/esm2022/base-form.component.mjs +17 -3
- package/components/input/base-form/fesm2022/index.mjs +16 -2
- package/components/input/base-form/fesm2022/index.mjs.map +1 -1
- package/components/input/base-form-custom/base-form-custom.component.d.ts +3 -2
- package/components/input/base-form-custom/bundles/index.umd.js +13 -2
- package/components/input/base-form-custom/esm2022/base-form-custom.component.mjs +14 -3
- package/components/input/base-form-custom/fesm2022/index.mjs +13 -2
- package/components/input/base-form-custom/fesm2022/index.mjs.map +1 -1
- package/components/input/checkbox/bundles/index.umd.js +7 -0
- package/components/input/checkbox/checkbox.component.d.ts +3 -2
- package/components/input/checkbox/esm2022/checkbox.component.mjs +8 -1
- package/components/input/checkbox/fesm2022/index.mjs +7 -0
- package/components/input/checkbox/fesm2022/index.mjs.map +1 -1
- package/components/input/checkboxset/bundles/index.umd.js +18 -2
- package/components/input/checkboxset/checkboxset.component.d.ts +4 -2
- package/components/input/checkboxset/esm2022/checkboxset.component.mjs +19 -3
- package/components/input/checkboxset/fesm2022/index.mjs +18 -2
- package/components/input/checkboxset/fesm2022/index.mjs.map +1 -1
- package/components/input/chips/bundles/index.umd.js +45 -5
- package/components/input/chips/chips.component.d.ts +3 -2
- package/components/input/chips/esm2022/chips.component.mjs +46 -6
- package/components/input/chips/fesm2022/index.mjs +45 -5
- package/components/input/chips/fesm2022/index.mjs.map +1 -1
- package/components/input/color-picker/bundles/index.umd.js +8 -0
- package/components/input/color-picker/color-picker.component.d.ts +3 -2
- package/components/input/color-picker/esm2022/color-picker.component.mjs +9 -1
- package/components/input/color-picker/fesm2022/index.mjs +8 -0
- package/components/input/color-picker/fesm2022/index.mjs.map +1 -1
- package/components/input/composite/bundles/index.umd.js +10 -1
- package/components/input/composite/composite.directive.d.ts +3 -2
- package/components/input/composite/esm2022/composite.directive.mjs +11 -2
- package/components/input/composite/fesm2022/index.mjs +10 -1
- package/components/input/composite/fesm2022/index.mjs.map +1 -1
- package/components/input/currency/bundles/index.umd.js +7 -0
- package/components/input/currency/currency.component.d.ts +3 -2
- package/components/input/currency/esm2022/currency.component.mjs +8 -1
- package/components/input/currency/fesm2022/index.mjs +7 -0
- package/components/input/currency/fesm2022/index.mjs.map +1 -1
- package/components/input/dataset-aware-form/bundles/index.umd.js +26 -2
- package/components/input/dataset-aware-form/esm2022/dataset-aware-form.component.mjs +27 -3
- package/components/input/dataset-aware-form/fesm2022/index.mjs +26 -2
- package/components/input/dataset-aware-form/fesm2022/index.mjs.map +1 -1
- package/components/input/epoch/date/bundles/index.umd.js +22 -0
- package/components/input/epoch/date/date.component.d.ts +1 -0
- package/components/input/epoch/date/esm2022/date.component.mjs +23 -1
- package/components/input/epoch/date/fesm2022/index.mjs +22 -0
- package/components/input/epoch/date/fesm2022/index.mjs.map +1 -1
- package/components/input/file-upload/bundles/index.umd.js +25 -8
- package/components/input/file-upload/esm2022/file-upload.component.mjs +26 -9
- package/components/input/file-upload/fesm2022/index.mjs +25 -8
- package/components/input/file-upload/fesm2022/index.mjs.map +1 -1
- package/components/input/file-upload/file-upload.component.d.ts +3 -0
- package/components/input/number/bundles/index.umd.js +8 -0
- package/components/input/number/esm2022/number.component.mjs +9 -1
- package/components/input/number/fesm2022/index.mjs +8 -0
- package/components/input/number/fesm2022/index.mjs.map +1 -1
- package/components/input/number/number.component.d.ts +3 -2
- package/components/input/radioset/bundles/index.umd.js +18 -2
- package/components/input/radioset/esm2022/radioset.component.mjs +19 -3
- package/components/input/radioset/fesm2022/index.mjs +18 -2
- package/components/input/radioset/fesm2022/index.mjs.map +1 -1
- package/components/input/radioset/radioset.component.d.ts +4 -2
- package/components/input/rating/bundles/index.umd.js +10 -0
- package/components/input/rating/esm2022/rating.component.mjs +11 -1
- package/components/input/rating/fesm2022/index.mjs +10 -0
- package/components/input/rating/fesm2022/index.mjs.map +1 -1
- package/components/input/rating/rating.component.d.ts +3 -2
- package/components/input/select/bundles/index.umd.js +6 -0
- package/components/input/select/esm2022/select.component.mjs +7 -1
- package/components/input/select/fesm2022/index.mjs +6 -0
- package/components/input/select/fesm2022/index.mjs.map +1 -1
- package/components/input/select/select.component.d.ts +3 -2
- package/components/input/slider/bundles/index.umd.js +10 -0
- package/components/input/slider/esm2022/slider.component.mjs +11 -1
- package/components/input/slider/fesm2022/index.mjs +10 -0
- package/components/input/slider/fesm2022/index.mjs.map +1 -1
- package/components/input/slider/slider.component.d.ts +3 -2
- package/components/input/switch/bundles/index.umd.js +22 -2
- package/components/input/switch/esm2022/switch.component.mjs +23 -3
- package/components/input/switch/fesm2022/index.mjs +22 -2
- package/components/input/switch/fesm2022/index.mjs.map +1 -1
- package/components/input/switch/switch.component.d.ts +3 -2
- package/components/input/text/bundles/index.umd.js +36 -0
- package/components/input/text/esm2022/input-calendar/input-calendar.component.mjs +8 -1
- package/components/input/text/esm2022/input-color/input-color.component.mjs +8 -1
- package/components/input/text/esm2022/input-email/input-email.component.mjs +8 -1
- package/components/input/text/esm2022/input-number/input-number.component.mjs +8 -1
- package/components/input/text/esm2022/input-text/input-text.component.mjs +9 -1
- package/components/input/text/fesm2022/index.mjs +36 -0
- package/components/input/text/fesm2022/index.mjs.map +1 -1
- package/components/input/text/input-calendar/input-calendar.component.d.ts +3 -2
- package/components/input/text/input-color/input-color.component.d.ts +3 -2
- package/components/input/text/input-email/input-email.component.d.ts +3 -2
- package/components/input/text/input-number/input-number.component.d.ts +3 -2
- package/components/input/text/input-text/input-text.component.d.ts +3 -2
- package/components/input/textarea/bundles/index.umd.js +7 -0
- package/components/input/textarea/esm2022/textarea.component.mjs +8 -1
- package/components/input/textarea/fesm2022/index.mjs +7 -0
- package/components/input/textarea/fesm2022/index.mjs.map +1 -1
- package/components/input/textarea/textarea.component.d.ts +3 -2
- package/components/navigation/menu/bundles/index.umd.js +55 -6
- package/components/navigation/menu/esm2022/menu-adapator.component.mjs +17 -3
- package/components/navigation/menu/esm2022/menu.component.mjs +10 -3
- package/components/navigation/menu/esm2022/nav/nav-item/nav-item.directive.mjs +6 -1
- package/components/navigation/menu/esm2022/nav/nav.component.mjs +11 -1
- package/components/navigation/menu/esm2022/nav/navigation-control.directive.mjs +16 -3
- package/components/navigation/menu/fesm2022/index.mjs +55 -6
- package/components/navigation/menu/fesm2022/index.mjs.map +1 -1
- package/components/navigation/menu/menu-adapator.component.d.ts +4 -2
- package/components/navigation/menu/nav/nav-item/nav-item.directive.d.ts +3 -2
- package/components/navigation/menu/nav/nav.component.d.ts +3 -2
- package/components/navigation/menu/nav/navigation-control.directive.d.ts +4 -2
- package/components/navigation/navbar/bundles/index.umd.js +5 -0
- package/components/navigation/navbar/esm2022/navbar.component.mjs +6 -1
- package/components/navigation/navbar/fesm2022/index.mjs +5 -0
- package/components/navigation/navbar/fesm2022/index.mjs.map +1 -1
- package/components/navigation/navbar/navbar.component.d.ts +3 -2
- package/components/navigation/popover/bundles/index.umd.js +65 -13
- package/components/navigation/popover/esm2022/popover.component.mjs +63 -11
- package/components/navigation/popover/fesm2022/index.mjs +62 -10
- package/components/navigation/popover/fesm2022/index.mjs.map +1 -1
- package/components/navigation/popover/popover.component.d.ts +11 -3
- package/components/page/default/bundles/index.umd.js +30 -6
- package/components/page/default/esm2022/layout.directive.mjs +9 -1
- package/components/page/default/esm2022/page-content/page-content.component.mjs +13 -3
- package/components/page/default/esm2022/router-outlet.directive.mjs +13 -6
- package/components/page/default/fesm2022/index.mjs +30 -6
- package/components/page/default/fesm2022/index.mjs.map +1 -1
- package/components/page/default/layout.directive.d.ts +3 -2
- package/components/page/default/page-content/page-content.component.d.ts +3 -2
- package/components/page/default/router-outlet.directive.d.ts +5 -2
- package/components/page/left-panel/bundles/index.umd.js +16 -0
- package/components/page/left-panel/esm2022/left-panel.directive.mjs +17 -1
- package/components/page/left-panel/fesm2022/index.mjs +16 -0
- package/components/page/left-panel/fesm2022/index.mjs.map +1 -1
- package/components/page/left-panel/left-panel.directive.d.ts +3 -2
- package/components/page/top-nav/bundles/index.umd.js +2 -1
- package/components/page/top-nav/esm2022/top-nav.props.mjs +3 -2
- package/components/page/top-nav/fesm2022/index.mjs +2 -1
- package/components/page/top-nav/fesm2022/index.mjs.map +1 -1
- package/components/prefab/bundles/index.umd.js +4 -0
- package/components/prefab/esm2022/prefab.directive.mjs +5 -1
- package/components/prefab/fesm2022/index.mjs +4 -0
- package/components/prefab/fesm2022/index.mjs.map +1 -1
- package/core/bundles/index.umd.js +391 -94
- package/core/esm2022/public_api.mjs +3 -3
- package/core/esm2022/services/viewport.service.mjs +24 -10
- package/core/esm2022/types/types.mjs +1 -1
- package/core/esm2022/utils/dom.mjs +18 -2
- package/core/esm2022/utils/event-notifier.mjs +5 -2
- package/core/esm2022/utils/lru-cache.mjs +16 -2
- package/core/esm2022/utils/utils.mjs +6 -2
- package/core/esm2022/utils/watcher.mjs +323 -81
- package/core/fesm2022/index.mjs +390 -96
- package/core/fesm2022/index.mjs.map +1 -1
- package/core/public_api.d.ts +2 -2
- package/core/services/viewport.service.d.ts +5 -2
- package/core/types/types.d.ts +1 -0
- package/core/utils/lru-cache.d.ts +6 -0
- package/core/utils/utils.d.ts +1 -0
- package/core/utils/watcher.d.ts +26 -5
- package/http/bundles/index.umd.js +31 -1
- package/http/esm2022/http.service.mjs +32 -2
- package/http/fesm2022/index.mjs +31 -1
- package/http/fesm2022/index.mjs.map +1 -1
- package/http/http.service.d.ts +6 -2
- package/npm-shrinkwrap.json +2 -2
- package/oAuth/bundles/index.umd.js +9 -0
- package/oAuth/esm2022/oAuth.service.mjs +10 -1
- package/oAuth/fesm2022/index.mjs +9 -0
- package/oAuth/fesm2022/index.mjs.map +1 -1
- package/oAuth/oAuth.service.d.ts +3 -1
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/runtime/base/bundles/index.umd.js +367 -32
- package/runtime/base/components/app-component/app.component.d.ts +4 -0
- package/runtime/base/components/prefab-preview.component.d.ts +5 -2
- package/runtime/base/directives/accessroles.directive.d.ts +4 -3
- package/runtime/base/directives/prefab.directive.d.ts +3 -2
- package/runtime/base/esm2022/components/app-component/app.component.mjs +40 -9
- package/runtime/base/esm2022/components/base-custom-widget.component.mjs +33 -2
- package/runtime/base/esm2022/components/base-layout.component.mjs +7 -1
- package/runtime/base/esm2022/components/base-page.component.mjs +36 -3
- package/runtime/base/esm2022/components/base-partial.component.mjs +37 -3
- package/runtime/base/esm2022/components/base-prefab.component.mjs +32 -3
- package/runtime/base/esm2022/components/base-spa-page.component.mjs +37 -3
- package/runtime/base/esm2022/components/prefab-preview.component.mjs +23 -4
- package/runtime/base/esm2022/directives/accessroles.directive.mjs +11 -2
- package/runtime/base/esm2022/directives/prefab.directive.mjs +9 -1
- package/runtime/base/esm2022/services/app.manager.service.mjs +40 -12
- package/runtime/base/esm2022/services/app.service.mjs +34 -2
- package/runtime/base/esm2022/services/dynamic-component-ref-provider.service.mjs +4 -1
- package/runtime/base/esm2022/services/pipe-provider.service.mjs +7 -4
- package/runtime/base/esm2022/services/spinner.service.mjs +15 -1
- package/runtime/base/esm2022/util/fragment-monitor.mjs +23 -2
- package/runtime/base/fesm2022/index.mjs +368 -33
- package/runtime/base/fesm2022/index.mjs.map +1 -1
- package/runtime/base/runtime-base.module.d.ts +2 -2
- package/runtime/base/services/app.manager.service.d.ts +6 -1
- package/runtime/base/services/app.service.d.ts +12 -2
- package/runtime/base/services/dynamic-component-ref-provider.service.d.ts +2 -1
- package/runtime/base/services/spinner.service.d.ts +3 -1
- package/runtime/base/util/fragment-monitor.d.ts +6 -0
- package/runtime/dynamic/bundles/index.umd.js +5 -0
- package/runtime/dynamic/esm2022/app/components/page-wrapper.component.mjs +6 -1
- package/runtime/dynamic/fesm2022/index.mjs +5 -0
- package/runtime/dynamic/fesm2022/index.mjs.map +1 -1
- package/scripts/@wavemaker/nvd3/build/nv.d3.min.js +1 -1
- package/scripts/datatable/datatable.js +100 -14
- package/security/bundles/index.umd.js +41 -2
- package/security/esm2022/security.service.mjs +42 -3
- package/security/fesm2022/index.mjs +41 -2
- package/security/fesm2022/index.mjs.map +1 -1
- package/security/security.service.d.ts +5 -2
- package/variables/bundles/index.umd.js +50 -6
- package/variables/esm2022/manager/action/notification-action.manager.mjs +18 -3
- package/variables/esm2022/manager/variable/base-variable.manager.mjs +15 -2
- package/variables/esm2022/manager/variable/web-socket-variable.manager.mjs +13 -3
- package/variables/esm2022/service/variables.service.mjs +8 -2
- package/variables/fesm2022/index.mjs +50 -6
- package/variables/fesm2022/index.mjs.map +1 -1
package/core/fesm2022/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Attribute, ImplicitReceiver, PropertyRead, LiteralPrimitive, LiteralArray, LiteralMap, PropertyWrite, KeyedRead, PrefixNot, Unary, Binary, Conditional, Call, Chain, BindingPipe, Parser, Lexer } from '@angular/compiler';
|
|
2
|
-
import { isArray, startsWith, includes, get, flatten, isEqual, isObject as isObject$1,
|
|
2
|
+
import { isArray, startsWith, includes, get, flatten, isEqual, clone, isObject as isObject$1, camelCase, split, map, attempt, isError, isFunction, isDate, isString, cloneDeep, identity, intersection, omit, keys, toLower, replace as replace$1, forEach, trim, isEqualWith, every, indexOf, isNumber, filter, isUndefined, isNull, noop as noop$2, toUpper, assign, merge, isEmpty, debounce as debounce$1, isNil } from 'lodash-es';
|
|
3
3
|
import { Subject } from 'rxjs';
|
|
4
4
|
import X2JS from 'x2js';
|
|
5
5
|
import * as momentLib from 'moment-timezone/moment-timezone';
|
|
@@ -1432,11 +1432,11 @@ const CURRENCY_INFO = {
|
|
|
1432
1432
|
}
|
|
1433
1433
|
};
|
|
1434
1434
|
|
|
1435
|
-
const $RAF
|
|
1435
|
+
const $RAF = window.requestAnimationFrame;
|
|
1436
1436
|
const $RAFQueue = [];
|
|
1437
1437
|
const invokeLater = fn => {
|
|
1438
1438
|
if (!$RAFQueue.length) {
|
|
1439
|
-
$RAF
|
|
1439
|
+
$RAF(() => {
|
|
1440
1440
|
$RAFQueue.forEach(f => f());
|
|
1441
1441
|
$RAFQueue.length = 0;
|
|
1442
1442
|
});
|
|
@@ -1507,7 +1507,23 @@ const setProperty = (node, propName, val, sync) => {
|
|
|
1507
1507
|
sync ? task() : invokeLater(task);
|
|
1508
1508
|
};
|
|
1509
1509
|
const setAttr = (node, attrName, val, sync) => {
|
|
1510
|
-
const task = () =>
|
|
1510
|
+
const task = () => {
|
|
1511
|
+
if (node instanceof Element) {
|
|
1512
|
+
// Handle tabindex specifically - ensure it's a valid string representation
|
|
1513
|
+
if (attrName === 'tabindex') {
|
|
1514
|
+
// Convert to string, handling 0, null, undefined, and NaN
|
|
1515
|
+
if (val === null || val === undefined || (typeof val === 'number' && isNaN(val))) {
|
|
1516
|
+
node.removeAttribute(attrName);
|
|
1517
|
+
}
|
|
1518
|
+
else {
|
|
1519
|
+
node.setAttribute(attrName, String(val));
|
|
1520
|
+
}
|
|
1521
|
+
}
|
|
1522
|
+
else {
|
|
1523
|
+
node.setAttribute(attrName, val);
|
|
1524
|
+
}
|
|
1525
|
+
}
|
|
1526
|
+
};
|
|
1511
1527
|
sync ? task() : invokeLater(task);
|
|
1512
1528
|
};
|
|
1513
1529
|
const setHtml = (node, html, sync) => {
|
|
@@ -2173,14 +2189,25 @@ const getFnForEventExpr = (expr) => {
|
|
|
2173
2189
|
return fnExecutor(expr, ExpressionType.Action);
|
|
2174
2190
|
};
|
|
2175
2191
|
|
|
2192
|
+
// Constants
|
|
2193
|
+
const WIDGET_ID_REGEX = /^(widget-[^_]+)/;
|
|
2194
|
+
const WIDGET_PROPERTY_REGEX = /^widget-[^_]+_(.+)$/;
|
|
2195
|
+
const ARRAY_INDEX_PLACEHOLDER = '[$i]';
|
|
2196
|
+
const ARRAY_INDEX_ZERO = '[0]';
|
|
2197
|
+
const DEBOUNCE_WAIT = 100;
|
|
2198
|
+
const MAX_WATCH_CYCLES = 5;
|
|
2176
2199
|
const registry = new Map();
|
|
2177
2200
|
const watchIdGenerator = new IDGenerator('watch-id-');
|
|
2178
|
-
const FIRST_TIME_WATCH = {};
|
|
2179
|
-
|
|
2180
|
-
const isFirstTimeChange = v => v === FIRST_TIME_WATCH;
|
|
2201
|
+
const FIRST_TIME_WATCH = Object.freeze({});
|
|
2202
|
+
// State
|
|
2181
2203
|
let muted = false;
|
|
2204
|
+
let changedByWatch = false;
|
|
2205
|
+
let skipWatchers = false;
|
|
2206
|
+
let ngZone;
|
|
2182
2207
|
let appRef;
|
|
2183
|
-
|
|
2208
|
+
// Utility functions
|
|
2209
|
+
const isFirstTimeChange = (v) => v === FIRST_TIME_WATCH;
|
|
2210
|
+
const debounce = (fn, wait = DEBOUNCE_WAIT) => {
|
|
2184
2211
|
let timeout;
|
|
2185
2212
|
return (...args) => {
|
|
2186
2213
|
window['__zone_symbol__clearTimeout'](timeout);
|
|
@@ -2194,115 +2221,345 @@ const unMuteWatchers = () => {
|
|
|
2194
2221
|
muted = false;
|
|
2195
2222
|
triggerWatchers();
|
|
2196
2223
|
};
|
|
2224
|
+
/**
|
|
2225
|
+
* Extracts widget ID from identifier (e.g., "widget-id23_eventsource" -> "widget-id23")
|
|
2226
|
+
*/
|
|
2227
|
+
const getWidgetId = (identifier) => {
|
|
2228
|
+
if (!identifier || typeof identifier !== 'string') {
|
|
2229
|
+
return null;
|
|
2230
|
+
}
|
|
2231
|
+
const match = identifier.match(WIDGET_ID_REGEX);
|
|
2232
|
+
return match ? match[1] : null;
|
|
2233
|
+
};
|
|
2234
|
+
/**
|
|
2235
|
+
* Extracts property name from identifier (e.g., "widget-id23_eventsource" -> "eventsource")
|
|
2236
|
+
*/
|
|
2237
|
+
const getPropertyName = (identifier) => {
|
|
2238
|
+
if (!identifier || typeof identifier !== 'string') {
|
|
2239
|
+
return identifier;
|
|
2240
|
+
}
|
|
2241
|
+
const match = identifier.match(WIDGET_PROPERTY_REGEX);
|
|
2242
|
+
return match ? match[1] : identifier;
|
|
2243
|
+
};
|
|
2244
|
+
/**
|
|
2245
|
+
* Array consumer wrapper for array-based expressions
|
|
2246
|
+
*/
|
|
2197
2247
|
const arrayConsumer = (listenerFn, restExpr, newVal, oldVal) => {
|
|
2198
|
-
|
|
2199
|
-
|
|
2200
|
-
formattedData = data.map(function (datum) {
|
|
2201
|
-
return findValueOf(datum, restExpr);
|
|
2202
|
-
});
|
|
2203
|
-
// If resulting structure is an array of array, flatten it
|
|
2204
|
-
if (isArray(formattedData[0])) {
|
|
2205
|
-
formattedData = flatten(formattedData);
|
|
2206
|
-
}
|
|
2207
|
-
listenerFn(formattedData, oldVal);
|
|
2248
|
+
if (!isArray(newVal)) {
|
|
2249
|
+
return;
|
|
2208
2250
|
}
|
|
2251
|
+
let formattedData = newVal.map(datum => findValueOf(datum, restExpr));
|
|
2252
|
+
// Flatten if result is array of arrays
|
|
2253
|
+
if (isArray(formattedData[0])) {
|
|
2254
|
+
formattedData = flatten(formattedData);
|
|
2255
|
+
}
|
|
2256
|
+
listenerFn(formattedData, oldVal);
|
|
2209
2257
|
};
|
|
2210
|
-
|
|
2211
|
-
|
|
2212
|
-
|
|
2213
|
-
|
|
2258
|
+
/**
|
|
2259
|
+
* Updates watch info for array expressions
|
|
2260
|
+
*/
|
|
2261
|
+
const getUpdatedWatchInfo = (expr, acceptsArray, listener) => {
|
|
2262
|
+
const regex = /\[\$i\]/g;
|
|
2214
2263
|
if (!acceptsArray) {
|
|
2215
2264
|
return {
|
|
2216
|
-
|
|
2217
|
-
|
|
2265
|
+
expr: expr.replace(regex, ARRAY_INDEX_ZERO),
|
|
2266
|
+
listener
|
|
2218
2267
|
};
|
|
2219
2268
|
}
|
|
2220
|
-
|
|
2221
|
-
|
|
2222
|
-
|
|
2223
|
-
|
|
2224
|
-
|
|
2225
|
-
|
|
2269
|
+
const lastIndex = expr.lastIndexOf(ARRAY_INDEX_PLACEHOLDER);
|
|
2270
|
+
const baseExpr = expr.substring(0, lastIndex).replace(ARRAY_INDEX_PLACEHOLDER, ARRAY_INDEX_ZERO);
|
|
2271
|
+
const restExpr = expr.substring(lastIndex + 5);
|
|
2272
|
+
const arrayConsumerFn = restExpr
|
|
2273
|
+
? arrayConsumer.bind(undefined, listener, restExpr)
|
|
2274
|
+
: listener;
|
|
2226
2275
|
return {
|
|
2227
|
-
|
|
2228
|
-
|
|
2276
|
+
expr: baseExpr,
|
|
2277
|
+
listener: arrayConsumerFn
|
|
2229
2278
|
};
|
|
2230
2279
|
};
|
|
2280
|
+
/**
|
|
2281
|
+
* Determines if an expression is static (doesn't need to be watched)
|
|
2282
|
+
*/
|
|
2283
|
+
const STATIC_EXPRESSION_NAMES = [
|
|
2284
|
+
"row.getProperty('investment')",
|
|
2285
|
+
"row.getProperty('factsheetLink')",
|
|
2286
|
+
"row.getProperty('isRebalanceEligible')"
|
|
2287
|
+
];
|
|
2288
|
+
const isStaticExpression = (expr) => {
|
|
2289
|
+
if (typeof expr !== 'string') {
|
|
2290
|
+
return false;
|
|
2291
|
+
}
|
|
2292
|
+
const trimmedExpr = expr.trim();
|
|
2293
|
+
// Expressions that always evaluate to localization strings
|
|
2294
|
+
// if (trimmedExpr.includes('appLocale')) {
|
|
2295
|
+
// return true;
|
|
2296
|
+
// }
|
|
2297
|
+
// Hard-coded static expression names
|
|
2298
|
+
if (STATIC_EXPRESSION_NAMES.includes(trimmedExpr)) {
|
|
2299
|
+
return true;
|
|
2300
|
+
}
|
|
2301
|
+
return false;
|
|
2302
|
+
};
|
|
2303
|
+
/**
|
|
2304
|
+
* Gets the scope type from the scope object
|
|
2305
|
+
*/
|
|
2306
|
+
const getScopeType = ($scope) => {
|
|
2307
|
+
if (!$scope) {
|
|
2308
|
+
return null;
|
|
2309
|
+
}
|
|
2310
|
+
if ($scope.pageName)
|
|
2311
|
+
return 'Page';
|
|
2312
|
+
if ($scope.prefabName)
|
|
2313
|
+
return 'Prefab';
|
|
2314
|
+
if ($scope.partialName)
|
|
2315
|
+
return 'Partial';
|
|
2316
|
+
// Check for App scope
|
|
2317
|
+
if ($scope.Variables !== undefined &&
|
|
2318
|
+
$scope.Actions !== undefined &&
|
|
2319
|
+
!$scope.pageName &&
|
|
2320
|
+
!$scope.prefabName &&
|
|
2321
|
+
!$scope.partialName) {
|
|
2322
|
+
return 'App';
|
|
2323
|
+
}
|
|
2324
|
+
if ($scope.constructor?.name === 'AppRef') {
|
|
2325
|
+
return 'App';
|
|
2326
|
+
}
|
|
2327
|
+
return null;
|
|
2328
|
+
};
|
|
2329
|
+
/**
|
|
2330
|
+
* Gets scope name based on scope type
|
|
2331
|
+
*/
|
|
2332
|
+
const getScopeName = ($scope, scopeType) => {
|
|
2333
|
+
if (!scopeType || !$scope) {
|
|
2334
|
+
return null;
|
|
2335
|
+
}
|
|
2336
|
+
switch (scopeType) {
|
|
2337
|
+
case 'Prefab': return $scope.prefabName || null;
|
|
2338
|
+
case 'Partial': return $scope.partialName || null;
|
|
2339
|
+
case 'Page': return $scope.pageName || null;
|
|
2340
|
+
default: return null;
|
|
2341
|
+
}
|
|
2342
|
+
};
|
|
2343
|
+
/**
|
|
2344
|
+
* Main watch function
|
|
2345
|
+
*/
|
|
2231
2346
|
const $watch = (expr, $scope, $locals, listener, identifier = watchIdGenerator.nextUid(), doNotClone = false, config = {}, isMuted) => {
|
|
2232
|
-
|
|
2233
|
-
|
|
2347
|
+
// Handle array expressions
|
|
2348
|
+
if (expr.includes(ARRAY_INDEX_PLACEHOLDER)) {
|
|
2349
|
+
const watchInfo = getUpdatedWatchInfo(expr, config.arrayType || config.isList || false, listener);
|
|
2234
2350
|
expr = watchInfo.expr;
|
|
2235
2351
|
listener = watchInfo.listener;
|
|
2236
2352
|
}
|
|
2353
|
+
// Handle static expressions
|
|
2354
|
+
if (isStaticExpression(expr)) {
|
|
2355
|
+
try {
|
|
2356
|
+
const fn = $parseExpr(expr);
|
|
2357
|
+
const staticValue = fn($scope, $locals);
|
|
2358
|
+
listener(staticValue, FIRST_TIME_WATCH);
|
|
2359
|
+
}
|
|
2360
|
+
catch (e) {
|
|
2361
|
+
console.warn(`Error evaluating static expression '${expr}':`, e);
|
|
2362
|
+
listener(undefined, FIRST_TIME_WATCH);
|
|
2363
|
+
}
|
|
2364
|
+
return () => { }; // No-op unsubscribe
|
|
2365
|
+
}
|
|
2237
2366
|
const fn = $parseExpr(expr);
|
|
2238
|
-
|
|
2239
|
-
|
|
2367
|
+
const scopeType = getScopeType($scope);
|
|
2368
|
+
const scopeName = getScopeName($scope, scopeType);
|
|
2369
|
+
const watchInfo = {
|
|
2370
|
+
fn: fn.bind(null, $scope, $locals),
|
|
2240
2371
|
listener,
|
|
2241
2372
|
expr,
|
|
2242
2373
|
last: FIRST_TIME_WATCH,
|
|
2243
2374
|
doNotClone,
|
|
2244
|
-
isMuted
|
|
2245
|
-
|
|
2375
|
+
isMuted,
|
|
2376
|
+
scopeType,
|
|
2377
|
+
scopeName
|
|
2378
|
+
};
|
|
2379
|
+
// Store in registry
|
|
2380
|
+
const widgetId = getWidgetId(identifier);
|
|
2381
|
+
if (widgetId) {
|
|
2382
|
+
const propertyName = getPropertyName(identifier);
|
|
2383
|
+
if (!registry.has(widgetId)) {
|
|
2384
|
+
registry.set(widgetId, {});
|
|
2385
|
+
}
|
|
2386
|
+
const widgetGroup = registry.get(widgetId);
|
|
2387
|
+
widgetGroup[propertyName] = watchInfo;
|
|
2388
|
+
}
|
|
2389
|
+
else {
|
|
2390
|
+
registry.set(identifier, watchInfo);
|
|
2391
|
+
}
|
|
2246
2392
|
return () => $unwatch(identifier);
|
|
2247
2393
|
};
|
|
2248
|
-
|
|
2249
|
-
|
|
2250
|
-
|
|
2251
|
-
|
|
2252
|
-
const
|
|
2394
|
+
/**
|
|
2395
|
+
* Unwatches a single identifier
|
|
2396
|
+
*/
|
|
2397
|
+
const $unwatch = (identifier) => {
|
|
2398
|
+
const widgetId = getWidgetId(identifier);
|
|
2399
|
+
if (widgetId) {
|
|
2400
|
+
const propertyName = getPropertyName(identifier);
|
|
2401
|
+
const widgetGroup = registry.get(widgetId);
|
|
2402
|
+
if (widgetGroup && typeof widgetGroup === 'object' && !widgetGroup.fn) {
|
|
2403
|
+
const watchInfo = widgetGroup[propertyName];
|
|
2404
|
+
if (watchInfo) {
|
|
2405
|
+
delete widgetGroup[propertyName];
|
|
2406
|
+
// Clean up empty widget groups
|
|
2407
|
+
if (Object.keys(widgetGroup).length === 0) {
|
|
2408
|
+
registry.delete(widgetId);
|
|
2409
|
+
}
|
|
2410
|
+
return true;
|
|
2411
|
+
}
|
|
2412
|
+
}
|
|
2413
|
+
}
|
|
2414
|
+
// Fallback to direct lookup
|
|
2415
|
+
if (registry.has(identifier)) {
|
|
2416
|
+
registry.delete(identifier);
|
|
2417
|
+
return true;
|
|
2418
|
+
}
|
|
2419
|
+
return false;
|
|
2420
|
+
};
|
|
2421
|
+
/**
|
|
2422
|
+
* Unwatches all watchers for a specific widget ID
|
|
2423
|
+
*/
|
|
2424
|
+
const $unwatchAll = (widgetId) => {
|
|
2425
|
+
if (!widgetId || typeof widgetId !== 'string') {
|
|
2426
|
+
return 0;
|
|
2427
|
+
}
|
|
2428
|
+
const widgetGroup = registry.get(widgetId);
|
|
2429
|
+
if (widgetGroup && typeof widgetGroup === 'object' && !widgetGroup.fn) {
|
|
2430
|
+
const count = Object.keys(widgetGroup).length;
|
|
2431
|
+
registry.delete(widgetId);
|
|
2432
|
+
return count;
|
|
2433
|
+
}
|
|
2434
|
+
// Fallback: find all identifiers starting with this widget ID
|
|
2435
|
+
let removedCount = 0;
|
|
2436
|
+
const identifiersToRemove = [];
|
|
2437
|
+
registry.forEach((_, key) => {
|
|
2438
|
+
if (key.startsWith(widgetId + '_')) {
|
|
2439
|
+
identifiersToRemove.push(key);
|
|
2440
|
+
}
|
|
2441
|
+
});
|
|
2442
|
+
identifiersToRemove.forEach(identifier => {
|
|
2443
|
+
if ($unwatch(identifier)) {
|
|
2444
|
+
removedCount++;
|
|
2445
|
+
}
|
|
2446
|
+
});
|
|
2447
|
+
return removedCount;
|
|
2448
|
+
};
|
|
2449
|
+
/**
|
|
2450
|
+
* Unwatches all watchers for a specific scope (Page, Prefab, Partial, or App)
|
|
2451
|
+
* Now works directly with the main registry instead of separate scoped registries
|
|
2452
|
+
*/
|
|
2453
|
+
const $unwatchAllByScope = (scopeType, scopeName) => {
|
|
2454
|
+
if (!scopeType) {
|
|
2455
|
+
return 0;
|
|
2456
|
+
}
|
|
2457
|
+
let removedCount = 0;
|
|
2458
|
+
const identifiersToRemove = [];
|
|
2459
|
+
registry.forEach((value, key) => {
|
|
2460
|
+
// Handle grouped structure (widget groups)
|
|
2461
|
+
if (value && typeof value === 'object' && !value.fn) {
|
|
2462
|
+
Object.entries(value).forEach(([propertyName, watchInfo]) => {
|
|
2463
|
+
if (watchInfo?.scopeType === scopeType &&
|
|
2464
|
+
(!scopeName || watchInfo.scopeName === scopeName)) {
|
|
2465
|
+
identifiersToRemove.push(`${key}_${propertyName}`);
|
|
2466
|
+
}
|
|
2467
|
+
});
|
|
2468
|
+
}
|
|
2469
|
+
else {
|
|
2470
|
+
// Direct watchInfo
|
|
2471
|
+
const watchInfo = value;
|
|
2472
|
+
if (watchInfo?.scopeType === scopeType &&
|
|
2473
|
+
(!scopeName || watchInfo.scopeName === scopeName)) {
|
|
2474
|
+
identifiersToRemove.push(key);
|
|
2475
|
+
}
|
|
2476
|
+
}
|
|
2477
|
+
});
|
|
2478
|
+
// Unwatch all collected identifiers
|
|
2479
|
+
identifiersToRemove.forEach(identifier => {
|
|
2480
|
+
if ($unwatch(identifier)) {
|
|
2481
|
+
removedCount++;
|
|
2482
|
+
}
|
|
2483
|
+
});
|
|
2484
|
+
return removedCount;
|
|
2485
|
+
};
|
|
2486
|
+
/**
|
|
2487
|
+
* Processes a single watch info during trigger cycle
|
|
2488
|
+
*/
|
|
2489
|
+
const processWatchInfo = (watchInfo) => {
|
|
2490
|
+
if (!watchInfo?.fn || (watchInfo.isMuted?.() ?? false)) {
|
|
2491
|
+
return false;
|
|
2492
|
+
}
|
|
2493
|
+
let newValue;
|
|
2494
|
+
try {
|
|
2495
|
+
newValue = watchInfo.fn();
|
|
2496
|
+
}
|
|
2497
|
+
catch (e) {
|
|
2498
|
+
console.warn(`Error executing expression: '${watchInfo.expr}'`, e);
|
|
2499
|
+
return false;
|
|
2500
|
+
}
|
|
2501
|
+
if (isEqual(newValue, watchInfo.last)) {
|
|
2502
|
+
return false;
|
|
2503
|
+
}
|
|
2504
|
+
// Change detected
|
|
2505
|
+
changedByWatch = true;
|
|
2506
|
+
watchInfo.last = isObject$1(newValue) && !watchInfo.doNotClone
|
|
2507
|
+
? clone(newValue)
|
|
2508
|
+
: newValue;
|
|
2509
|
+
watchInfo.listener(newValue, watchInfo.last === newValue ? FIRST_TIME_WATCH : watchInfo.last);
|
|
2510
|
+
changedByWatch = false;
|
|
2511
|
+
return true;
|
|
2512
|
+
};
|
|
2513
|
+
/**
|
|
2514
|
+
* Triggers all watchers
|
|
2515
|
+
*/
|
|
2516
|
+
const triggerWatchers = (ignoreMuted = false) => {
|
|
2253
2517
|
if (muted && !ignoreMuted) {
|
|
2254
2518
|
return;
|
|
2255
2519
|
}
|
|
2256
|
-
const limit = 5;
|
|
2257
2520
|
let pass = 1;
|
|
2258
2521
|
let changeDetected;
|
|
2259
2522
|
do {
|
|
2260
2523
|
changeDetected = false;
|
|
2261
|
-
registry.forEach(
|
|
2262
|
-
|
|
2263
|
-
|
|
2264
|
-
|
|
2265
|
-
|
|
2266
|
-
|
|
2267
|
-
|
|
2268
|
-
|
|
2269
|
-
try {
|
|
2270
|
-
nv = fn();
|
|
2271
|
-
}
|
|
2272
|
-
catch (e) {
|
|
2273
|
-
console.warn(`error in executing expression: '${watchInfo.expr}'`);
|
|
2524
|
+
registry.forEach((value) => {
|
|
2525
|
+
// Handle grouped structure
|
|
2526
|
+
if (value && typeof value === 'object' && !value.fn) {
|
|
2527
|
+
Object.values(value).forEach((watchInfo) => {
|
|
2528
|
+
if (processWatchInfo(watchInfo)) {
|
|
2529
|
+
changeDetected = true;
|
|
2530
|
+
}
|
|
2531
|
+
});
|
|
2274
2532
|
}
|
|
2275
|
-
|
|
2276
|
-
|
|
2277
|
-
|
|
2278
|
-
|
|
2279
|
-
// @ts-ignore
|
|
2280
|
-
if (isObject$1(nv) && !watchInfo.doNotClone && nv.__cloneable__ !== false) {
|
|
2281
|
-
watchInfo.last = clone(nv);
|
|
2533
|
+
else {
|
|
2534
|
+
// Direct watchInfo
|
|
2535
|
+
if (processWatchInfo(value)) {
|
|
2536
|
+
changeDetected = true;
|
|
2282
2537
|
}
|
|
2283
|
-
listener(nv, ov);
|
|
2284
|
-
resetChangeFromWatch();
|
|
2285
2538
|
}
|
|
2286
2539
|
});
|
|
2287
2540
|
pass++;
|
|
2288
|
-
} while (changeDetected && pass <
|
|
2289
|
-
if (changeDetected && pass ===
|
|
2290
|
-
console.warn(`
|
|
2541
|
+
} while (changeDetected && pass < MAX_WATCH_CYCLES);
|
|
2542
|
+
if (changeDetected && pass === MAX_WATCH_CYCLES) {
|
|
2543
|
+
console.warn(`Watch cycles exceeded limit of ${MAX_WATCH_CYCLES}`);
|
|
2291
2544
|
}
|
|
2292
2545
|
};
|
|
2293
|
-
|
|
2294
|
-
const
|
|
2546
|
+
// Angular zone integration
|
|
2547
|
+
const setNgZone = (zone) => {
|
|
2548
|
+
ngZone = zone;
|
|
2549
|
+
};
|
|
2550
|
+
const setAppRef = (ref) => {
|
|
2295
2551
|
appRef = ref;
|
|
2296
2552
|
};
|
|
2297
2553
|
const isChangeFromWatch = () => changedByWatch;
|
|
2298
|
-
const resetChangeFromWatch = () =>
|
|
2299
|
-
|
|
2300
|
-
|
|
2554
|
+
const resetChangeFromWatch = () => {
|
|
2555
|
+
changedByWatch = false;
|
|
2556
|
+
};
|
|
2557
|
+
// Debounced trigger
|
|
2301
2558
|
const debouncedTriggerWatchers = debounce(() => {
|
|
2302
2559
|
skipWatchers = true;
|
|
2303
2560
|
ngZone.run(() => triggerWatchers());
|
|
2304
|
-
},
|
|
2305
|
-
const $invokeWatchers = (force, ignoreMuted) => {
|
|
2561
|
+
}, DEBOUNCE_WAIT);
|
|
2562
|
+
const $invokeWatchers = (force = false, ignoreMuted = false) => {
|
|
2306
2563
|
if (force) {
|
|
2307
2564
|
triggerWatchers(ignoreMuted);
|
|
2308
2565
|
}
|
|
@@ -2316,7 +2573,8 @@ const $invokeWatchers = (force, ignoreMuted) => {
|
|
|
2316
2573
|
};
|
|
2317
2574
|
const $appDigest = (() => {
|
|
2318
2575
|
let queued = false;
|
|
2319
|
-
|
|
2576
|
+
const $RAF = window.requestAnimationFrame;
|
|
2577
|
+
return (force = false) => {
|
|
2320
2578
|
if (!appRef) {
|
|
2321
2579
|
return;
|
|
2322
2580
|
}
|
|
@@ -2328,16 +2586,16 @@ const $appDigest = (() => {
|
|
|
2328
2586
|
if (queued) {
|
|
2329
2587
|
return;
|
|
2330
2588
|
}
|
|
2331
|
-
|
|
2332
|
-
|
|
2333
|
-
|
|
2334
|
-
|
|
2335
|
-
|
|
2336
|
-
});
|
|
2337
|
-
}
|
|
2589
|
+
queued = true;
|
|
2590
|
+
$RAF(() => {
|
|
2591
|
+
ngZone.run(() => appRef.tick());
|
|
2592
|
+
queued = false;
|
|
2593
|
+
});
|
|
2338
2594
|
}
|
|
2339
2595
|
};
|
|
2340
2596
|
})();
|
|
2597
|
+
// Export registry for debugging
|
|
2598
|
+
window.watchRegistry = registry;
|
|
2341
2599
|
|
|
2342
2600
|
var ComponentType;
|
|
2343
2601
|
(function (ComponentType) {
|
|
@@ -2440,6 +2698,7 @@ const REGEX = {
|
|
|
2440
2698
|
MIN_PAGE_RESOURCE_PATH: /.*(page.min.html)$/,
|
|
2441
2699
|
VALID_EMAIL: /^[a-zA-Z][\w.+]+@[a-zA-Z_]+?\.[a-zA-Z.]{1,4}[a-zA-Z]$/,
|
|
2442
2700
|
VALID_WEB_URL: /^(http[s]?:\/\/)(www\.){0,1}[a-zA-Z0-9=:?\/\.\-]+(\.[a-zA-Z]{2,5}[\.]{0,1})?/,
|
|
2701
|
+
VALID_IMAGE_URL: /^(https?|blob|data|file|ftp):/i,
|
|
2443
2702
|
VALID_WEBSOCKET_URL: /^(ws[s]?:\/\/)(www\.){0,1}[a-zA-Z0-9=:?\/\.\-]+(\.[a-zA-Z]{2,5}[\.]{0,1})?/,
|
|
2444
2703
|
VALID_RELATIVE_URL: /^(?!www\.|(?:http|ftp)s?:\/\/|[A-Za-z]:\\|\/\/).*/,
|
|
2445
2704
|
REPLACE_PATTERN: /\$\{([^\}]+)\}/g,
|
|
@@ -2673,6 +2932,9 @@ const isVideoFile = (fileName) => {
|
|
|
2673
2932
|
const isValidWebURL = (url) => {
|
|
2674
2933
|
return (REGEX.VALID_WEB_URL).test(url);
|
|
2675
2934
|
};
|
|
2935
|
+
const isValidImageUrl = (url) => {
|
|
2936
|
+
return (REGEX.VALID_IMAGE_URL).test(url?.trim());
|
|
2937
|
+
};
|
|
2676
2938
|
/*This function returns the url to the resource after checking the validity of url*/
|
|
2677
2939
|
const getResourceURL = (urlString) => {
|
|
2678
2940
|
if (isValidWebURL(urlString)) {
|
|
@@ -3938,6 +4200,7 @@ var Utils = /*#__PURE__*/Object.freeze({
|
|
|
3938
4200
|
isPageable: isPageable,
|
|
3939
4201
|
isSafari: isSafari,
|
|
3940
4202
|
isTablet: isTablet,
|
|
4203
|
+
isValidImageUrl: isValidImageUrl,
|
|
3941
4204
|
isValidWebURL: isValidWebURL,
|
|
3942
4205
|
isVideoFile: isVideoFile,
|
|
3943
4206
|
loadScript: loadScript,
|
|
@@ -4031,7 +4294,10 @@ class EventNotifier {
|
|
|
4031
4294
|
return noop;
|
|
4032
4295
|
}
|
|
4033
4296
|
destroy() {
|
|
4034
|
-
this._subject.
|
|
4297
|
+
this._subject.next(null); // optional
|
|
4298
|
+
this._subject.complete(); // clears all observers
|
|
4299
|
+
this._isInitialized = false;
|
|
4300
|
+
this._eventsBeforeInit = [];
|
|
4035
4301
|
}
|
|
4036
4302
|
}
|
|
4037
4303
|
|
|
@@ -4050,9 +4316,11 @@ class Viewport {
|
|
|
4050
4316
|
this.isTabletType = false;
|
|
4051
4317
|
this._eventNotifier = new EventNotifier(true);
|
|
4052
4318
|
this.setScreenType();
|
|
4053
|
-
|
|
4054
|
-
|
|
4055
|
-
|
|
4319
|
+
// MEMORY LEAK FIX: Store bound function reference for proper removal
|
|
4320
|
+
this.boundResizeFn = this.resizeFn.bind(this);
|
|
4321
|
+
window.addEventListener("resize" /* ViewportEvent.RESIZE */, this.boundResizeFn);
|
|
4322
|
+
this.mediaQuery = window.matchMedia('(orientation: portrait)');
|
|
4323
|
+
if (this.mediaQuery.matches) {
|
|
4056
4324
|
this.orientation.isPortrait = true;
|
|
4057
4325
|
}
|
|
4058
4326
|
else {
|
|
@@ -4060,8 +4328,10 @@ class Viewport {
|
|
|
4060
4328
|
}
|
|
4061
4329
|
// Add a media query change listener
|
|
4062
4330
|
// addEventListener is not supported ios browser
|
|
4063
|
-
if (
|
|
4064
|
-
|
|
4331
|
+
if (this.mediaQuery.addEventListener) {
|
|
4332
|
+
// MEMORY LEAK FIX: Store bound function reference for proper removal
|
|
4333
|
+
this.boundOrientationChange = ($event) => this.orientationChange($event, !$event.matches);
|
|
4334
|
+
this.mediaQuery.addEventListener('change', this.boundOrientationChange);
|
|
4065
4335
|
}
|
|
4066
4336
|
}
|
|
4067
4337
|
update(selectedViewPort) {
|
|
@@ -4088,14 +4358,14 @@ class Viewport {
|
|
|
4088
4358
|
return this._eventNotifier.subscribe(eventName, callback);
|
|
4089
4359
|
}
|
|
4090
4360
|
notify(eventName, ...data) {
|
|
4091
|
-
this._eventNotifier.notify
|
|
4361
|
+
this._eventNotifier.notify(eventName, ...data);
|
|
4092
4362
|
}
|
|
4093
4363
|
setScreenType() {
|
|
4094
4364
|
const $el = document.querySelector('.wm-app');
|
|
4095
4365
|
this.screenWidth = $el.clientWidth;
|
|
4096
4366
|
this.screenHeight = $el.clientHeight;
|
|
4097
|
-
|
|
4098
|
-
|
|
4367
|
+
// const minValue = this.screenWidth < this.screenHeight ? this.screenWidth : this.screenHeight;
|
|
4368
|
+
// const maxValue = this.screenWidth > this.screenHeight ? this.screenWidth : this.screenHeight;
|
|
4099
4369
|
this.isTabletType = false;
|
|
4100
4370
|
this.isMobileType = false;
|
|
4101
4371
|
if (get(this.selectedViewPort, 'deviceCategory')) {
|
|
@@ -4127,7 +4397,17 @@ class Viewport {
|
|
|
4127
4397
|
}
|
|
4128
4398
|
ngOnDestroy() {
|
|
4129
4399
|
this._eventNotifier.destroy();
|
|
4130
|
-
|
|
4400
|
+
// MEMORY LEAK FIX: Remove resize event listener using stored bound function reference
|
|
4401
|
+
if (this.boundResizeFn) {
|
|
4402
|
+
window.removeEventListener('resize', this.boundResizeFn);
|
|
4403
|
+
this.boundResizeFn = null;
|
|
4404
|
+
}
|
|
4405
|
+
// MEMORY LEAK FIX: Remove media query orientation change listener
|
|
4406
|
+
if (this.mediaQuery && this.boundOrientationChange && this.mediaQuery.removeEventListener) {
|
|
4407
|
+
this.mediaQuery.removeEventListener('change', this.boundOrientationChange);
|
|
4408
|
+
this.boundOrientationChange = null;
|
|
4409
|
+
}
|
|
4410
|
+
this.mediaQuery = null;
|
|
4131
4411
|
}
|
|
4132
4412
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: Viewport, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
4133
4413
|
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: Viewport, providedIn: 'root' }); }
|
|
@@ -5096,13 +5376,15 @@ class LRUCache {
|
|
|
5096
5376
|
this.onEvict = onEvict;
|
|
5097
5377
|
this.cache = new Map();
|
|
5098
5378
|
this.evictQueue = [''];
|
|
5379
|
+
this.evictionIntervalId = null; // MEMORY LEAK FIX: Store interval ID for cleanup
|
|
5099
5380
|
this.evictQueue.shift();
|
|
5100
5381
|
if (this.maxAge > 0) {
|
|
5101
5382
|
if (this.maxAge <= 30) {
|
|
5102
5383
|
console.warn(`Cache age ${this.maxAge}s is very less. Keep it atleast 30s.`);
|
|
5103
5384
|
}
|
|
5104
5385
|
this.maxAge = this.maxAge * 1000;
|
|
5105
|
-
|
|
5386
|
+
// MEMORY LEAK FIX: Store interval ID for cleanup
|
|
5387
|
+
this.evictionIntervalId = window.setInterval(() => {
|
|
5106
5388
|
const max = Date.now() - this.maxAge;
|
|
5107
5389
|
const expiredData = this.evictQueue.filter(k => {
|
|
5108
5390
|
return this.cache.get(k).lastAccessedTime <= max;
|
|
@@ -5167,6 +5449,18 @@ class LRUCache {
|
|
|
5167
5449
|
clear() {
|
|
5168
5450
|
this.evict(this.evictQueue.length);
|
|
5169
5451
|
}
|
|
5452
|
+
/**
|
|
5453
|
+
* MEMORY LEAK FIX: Destroy the cache and clear the eviction interval
|
|
5454
|
+
* Call this method when the cache is no longer needed to prevent memory leaks
|
|
5455
|
+
*/
|
|
5456
|
+
destroy() {
|
|
5457
|
+
// CRITICAL FIX: Clear the eviction interval to prevent memory leaks
|
|
5458
|
+
if (this.evictionIntervalId !== null) {
|
|
5459
|
+
clearInterval(this.evictionIntervalId);
|
|
5460
|
+
this.evictionIntervalId = null;
|
|
5461
|
+
}
|
|
5462
|
+
this.clear();
|
|
5463
|
+
}
|
|
5170
5464
|
}
|
|
5171
5465
|
|
|
5172
5466
|
/*
|
|
@@ -5177,5 +5471,5 @@ class LRUCache {
|
|
|
5177
5471
|
* Generated bundle index. Do not edit.
|
|
5178
5472
|
*/
|
|
5179
5473
|
|
|
5180
|
-
export { $appDigest, $invokeWatchers, $parseEvent, $parseExpr, $unwatch, $watch, AbstractDialogService, AbstractHttpService, AbstractI18nService, AbstractNavigationService, AbstractSpinnerService, AbstractToasterService, App, AppConstants, AppDefaults, CURRENCY_INFO, ComponentType, ConstantService, CustomIconsLoaderService, CustomPipeManager, CustomWidgetRefProvider, DEFAULT_FORMATS, DataSource, DataType, DynamicComponentRefProvider, EventNotifier, FIRST_TIME_WATCH, FieldTypeService, FieldWidgetService, FormWidgetType, IDGenerator, IDataSource, LRUCache, MatchMode, PaginationService, PartialRefProvider, ScriptLoaderService, ScriptStore, StatePersistence, UserDefinedExecutionContext, UtilsService, VALIDATOR, Viewport, _WM_APP_PROJECT, addClass, addEventListenerOnElement, addForIdAttributes, adjustContainerPosition, adjustContainerRightEdges, appendNode, appendScriptToHead, checkIsCustomPipeExpression, closePopover, convertToBlob, createCSSRule, createElement, deHyphenate, debounce, defer, detectChanges, encodeUrl, encodeUrlParams, executePromiseChain, extendProto, extractCurrentItemExpr, extractType, fetchContent, findParent, findRootContainer, findValueOf, generateGUId, getAbortableDefer, getAndroidVersion, getAppSetting, getBlob, getClonedObject, getDatasourceFromExpr, getDateObj, getDisplayDateTimeFormat, getEvaluatedExprValue, getFiles, getFnByExpr, getFnForBindExpr, getFnForEventExpr, getFormWidgetTemplate, getFormattedDate, getMomentLocaleObject, getNativeDateObject, getNavClass, getNgModelAttr, getPreviewProperties, getRequiredFormWidget, getResourceURL, getRouteNameFromLink, getRowActionAttrs, getSessionStorageItem, getSheetPositionClass, getUrlParams, getValidDateObject, getValidJSON, getWebkitTraslationMatrix, getWmProjectProperties, hasOffsetStr, initCaps, insertAfter, insertBefore, isAndroid, isAndroidTablet, isAppleProduct, isAudioFile, isChangeFromWatch, isDataSourceEqual, isDateTimeType, isDefined, isElementInViewport, isEmptyObject, isEqualWithFields, isFirstTimeChange, isIE, isImageFile, isInsecureContentRequest, isIos, isIpad, isIphone, isIpod, isKitkatDevice, isLargeTabletLandscape, isLargeTabletPortrait, isMobile, isNumberType, isObject, isPageable, isSafari, isValidWebURL, isVideoFile, loadScript, loadScripts, loadStyleSheet, loadStyleSheets, muteWatchers, noop, openLink, periodSeparate, prettifyLabel, prettifyLabels, processFilterExpBindNode, registerFnByExpr, removeAttr, removeClass, removeExtraSlashes, removeNode, replace, replaceAt, resetChangeFromWatch, retryIfFails, scrollToElement, setAppRef, setAttr, setCSS, setCSSFromObj, setHtml, setListClass, setNgZone, setPipeProvider, setPreviewProperties, setProperty, setSessionStorageItem, setTranslation3dPosition, setWmProjectProperties, spaceSeparate, stringStartsWith, switchClass, toBoolean, toDimension, toPromise, toggleClass, transformFileURI, triggerFn, triggerItemAction, unMuteWatchers, updateTemplateAttrs, validateAccessRoles, validateDataSourceCtx, xmlToJson };
|
|
5474
|
+
export { $appDigest, $invokeWatchers, $parseEvent, $parseExpr, $unwatch, $unwatchAll, $unwatchAllByScope, $watch, AbstractDialogService, AbstractHttpService, AbstractI18nService, AbstractNavigationService, AbstractSpinnerService, AbstractToasterService, App, AppConstants, AppDefaults, CURRENCY_INFO, ComponentType, ConstantService, CustomIconsLoaderService, CustomPipeManager, CustomWidgetRefProvider, DEFAULT_FORMATS, DataSource, DataType, DynamicComponentRefProvider, EventNotifier, FIRST_TIME_WATCH, FieldTypeService, FieldWidgetService, FormWidgetType, IDGenerator, IDataSource, LRUCache, MatchMode, PaginationService, PartialRefProvider, ScriptLoaderService, ScriptStore, StatePersistence, UserDefinedExecutionContext, UtilsService, VALIDATOR, Viewport, _WM_APP_PROJECT, addClass, addEventListenerOnElement, addForIdAttributes, adjustContainerPosition, adjustContainerRightEdges, appendNode, appendScriptToHead, checkIsCustomPipeExpression, closePopover, convertToBlob, createCSSRule, createElement, deHyphenate, debounce, defer, detectChanges, encodeUrl, encodeUrlParams, executePromiseChain, extendProto, extractCurrentItemExpr, extractType, fetchContent, findParent, findRootContainer, findValueOf, generateGUId, getAbortableDefer, getAndroidVersion, getAppSetting, getBlob, getClonedObject, getDatasourceFromExpr, getDateObj, getDisplayDateTimeFormat, getEvaluatedExprValue, getFiles, getFnByExpr, getFnForBindExpr, getFnForEventExpr, getFormWidgetTemplate, getFormattedDate, getMomentLocaleObject, getNativeDateObject, getNavClass, getNgModelAttr, getPreviewProperties, getRequiredFormWidget, getResourceURL, getRouteNameFromLink, getRowActionAttrs, getSessionStorageItem, getSheetPositionClass, getUrlParams, getValidDateObject, getValidJSON, getWebkitTraslationMatrix, getWmProjectProperties, hasOffsetStr, initCaps, insertAfter, insertBefore, isAndroid, isAndroidTablet, isAppleProduct, isAudioFile, isChangeFromWatch, isDataSourceEqual, isDateTimeType, isDefined, isElementInViewport, isEmptyObject, isEqualWithFields, isFirstTimeChange, isIE, isImageFile, isInsecureContentRequest, isIos, isIpad, isIphone, isIpod, isKitkatDevice, isLargeTabletLandscape, isLargeTabletPortrait, isMobile, isNumberType, isObject, isPageable, isSafari, isValidImageUrl, isValidWebURL, isVideoFile, loadScript, loadScripts, loadStyleSheet, loadStyleSheets, muteWatchers, noop, openLink, periodSeparate, prettifyLabel, prettifyLabels, processFilterExpBindNode, registerFnByExpr, removeAttr, removeClass, removeExtraSlashes, removeNode, replace, replaceAt, resetChangeFromWatch, retryIfFails, scrollToElement, setAppRef, setAttr, setCSS, setCSSFromObj, setHtml, setListClass, setNgZone, setPipeProvider, setPreviewProperties, setProperty, setSessionStorageItem, setTranslation3dPosition, setWmProjectProperties, spaceSeparate, stringStartsWith, switchClass, toBoolean, toDimension, toPromise, toggleClass, transformFileURI, triggerFn, triggerItemAction, unMuteWatchers, updateTemplateAttrs, validateAccessRoles, validateDataSourceCtx, xmlToJson };
|
|
5181
5475
|
//# sourceMappingURL=index.mjs.map
|