@wavemaker-ai/app-ng-runtime 12.0.0-rc.335 → 12.0.1-rc.338
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 +15 -16
- package/build-task/fesm2022/index.mjs +15 -16
- package/build-task/fesm2022/index.mjs.map +1 -1
- package/components/advanced/carousel/bundles/index.umd.js +9 -9
- package/components/advanced/carousel/fesm2022/index.mjs +9 -9
- package/components/advanced/carousel/fesm2022/index.mjs.map +1 -1
- package/components/advanced/carousel/types/index.d.ts +7 -7
- package/components/advanced/custom/bundles/index.umd.js +9 -10
- package/components/advanced/custom/fesm2022/index.mjs +9 -10
- package/components/advanced/custom/fesm2022/index.mjs.map +1 -1
- package/components/advanced/custom/types/index.d.ts +3 -3
- package/components/advanced/login/bundles/index.umd.js +3 -3
- package/components/advanced/login/fesm2022/index.mjs +3 -3
- package/components/advanced/login/fesm2022/index.mjs.map +1 -1
- package/components/advanced/login/types/index.d.ts +1 -1
- package/components/advanced/marquee/bundles/index.umd.js +3 -3
- package/components/advanced/marquee/fesm2022/index.mjs +3 -3
- package/components/advanced/marquee/fesm2022/index.mjs.map +1 -1
- package/components/advanced/marquee/types/index.d.ts +1 -1
- package/components/base/bundles/index.umd.js +40 -46
- package/components/base/fesm2022/index.mjs +40 -46
- package/components/base/fesm2022/index.mjs.map +1 -1
- package/components/base/types/index.d.ts +47 -46
- package/components/basic/anchor/bundles/index.umd.js +3 -3
- package/components/basic/anchor/fesm2022/index.mjs +3 -3
- package/components/basic/anchor/fesm2022/index.mjs.map +1 -1
- package/components/basic/anchor/types/index.d.ts +3 -3
- package/components/basic/audio/bundles/index.umd.js +3 -3
- package/components/basic/audio/fesm2022/index.mjs +3 -3
- package/components/basic/audio/fesm2022/index.mjs.map +1 -1
- package/components/basic/audio/types/index.d.ts +1 -1
- package/components/basic/html/bundles/index.umd.js +10 -11
- package/components/basic/html/fesm2022/index.mjs +10 -11
- package/components/basic/html/fesm2022/index.mjs.map +1 -1
- package/components/basic/html/types/index.d.ts +3 -3
- package/components/basic/icon/bundles/index.umd.js +3 -3
- package/components/basic/icon/fesm2022/index.mjs +3 -3
- package/components/basic/icon/fesm2022/index.mjs.map +1 -1
- package/components/basic/icon/types/index.d.ts +1 -1
- package/components/basic/iframe/bundles/index.umd.js +5 -5
- package/components/basic/iframe/fesm2022/index.mjs +5 -5
- package/components/basic/iframe/fesm2022/index.mjs.map +1 -1
- package/components/basic/iframe/types/index.d.ts +3 -3
- package/components/basic/label/bundles/index.umd.js +10 -11
- package/components/basic/label/fesm2022/index.mjs +10 -11
- package/components/basic/label/fesm2022/index.mjs.map +1 -1
- package/components/basic/label/types/index.d.ts +1 -1
- package/components/basic/picture/bundles/index.umd.js +3 -3
- package/components/basic/picture/fesm2022/index.mjs +3 -3
- package/components/basic/picture/fesm2022/index.mjs.map +1 -1
- package/components/basic/picture/types/index.d.ts +2 -2
- package/components/basic/progress/progress-bar/bundles/index.umd.js +8 -10
- package/components/basic/progress/progress-bar/fesm2022/index.mjs +8 -10
- package/components/basic/progress/progress-bar/fesm2022/index.mjs.map +1 -1
- package/components/basic/progress/progress-bar/types/index.d.ts +2 -2
- package/components/basic/progress/progress-circle/bundles/index.umd.js +3 -3
- package/components/basic/progress/progress-circle/fesm2022/index.mjs +3 -3
- package/components/basic/progress/progress-circle/fesm2022/index.mjs.map +1 -1
- package/components/basic/progress/progress-circle/types/index.d.ts +2 -2
- package/components/basic/rich-text-editor/bundles/index.umd.js +3 -3
- package/components/basic/rich-text-editor/fesm2022/index.mjs +3 -3
- package/components/basic/rich-text-editor/fesm2022/index.mjs.map +1 -1
- package/components/basic/rich-text-editor/types/index.d.ts +3 -3
- package/components/basic/search/bundles/index.umd.js +40 -42
- package/components/basic/search/fesm2022/index.mjs +40 -42
- package/components/basic/search/fesm2022/index.mjs.map +1 -1
- package/components/basic/search/types/index.d.ts +13 -13
- package/components/basic/spinner/bundles/index.umd.js +3 -3
- package/components/basic/spinner/fesm2022/index.mjs +3 -3
- package/components/basic/spinner/fesm2022/index.mjs.map +1 -1
- package/components/basic/spinner/types/index.d.ts +3 -3
- package/components/basic/tree/bundles/index.umd.js +9 -9
- package/components/basic/tree/fesm2022/index.mjs +9 -9
- package/components/basic/tree/fesm2022/index.mjs.map +1 -1
- package/components/basic/tree/types/index.d.ts +7 -7
- package/components/basic/video/bundles/index.umd.js +3 -3
- package/components/basic/video/fesm2022/index.mjs +3 -3
- package/components/basic/video/fesm2022/index.mjs.map +1 -1
- package/components/basic/video/types/index.d.ts +2 -2
- package/components/chart/bundles/index.umd.js +19 -22
- package/components/chart/fesm2022/index.mjs +20 -23
- package/components/chart/fesm2022/index.mjs.map +1 -1
- package/components/chart/types/index.d.ts +9 -9
- package/components/containers/accordion/bundles/index.umd.js +10 -12
- package/components/containers/accordion/fesm2022/index.mjs +10 -12
- package/components/containers/accordion/fesm2022/index.mjs.map +1 -1
- package/components/containers/accordion/types/index.d.ts +9 -9
- package/components/containers/layout-grid/bundles/index.umd.js +9 -9
- package/components/containers/layout-grid/fesm2022/index.mjs +9 -9
- package/components/containers/layout-grid/fesm2022/index.mjs.map +1 -1
- package/components/containers/layout-grid/types/index.d.ts +4 -4
- package/components/containers/linear-layout/bundles/index.umd.js +6 -6
- package/components/containers/linear-layout/fesm2022/index.mjs +6 -6
- package/components/containers/linear-layout/fesm2022/index.mjs.map +1 -1
- package/components/containers/linear-layout/types/index.d.ts +2 -2
- package/components/containers/panel/bundles/index.umd.js +3 -3
- package/components/containers/panel/fesm2022/index.mjs +3 -3
- package/components/containers/panel/fesm2022/index.mjs.map +1 -1
- package/components/containers/panel/types/index.d.ts +3 -3
- package/components/containers/tabs/bundles/index.umd.js +9 -9
- package/components/containers/tabs/fesm2022/index.mjs +9 -9
- package/components/containers/tabs/fesm2022/index.mjs.map +1 -1
- package/components/containers/tabs/types/index.d.ts +8 -8
- package/components/containers/tile/bundles/index.umd.js +3 -3
- package/components/containers/tile/fesm2022/index.mjs +3 -3
- package/components/containers/tile/fesm2022/index.mjs.map +1 -1
- package/components/containers/tile/types/index.d.ts +1 -1
- package/components/containers/wizard/bundles/index.umd.js +18 -18
- package/components/containers/wizard/fesm2022/index.mjs +18 -18
- package/components/containers/wizard/fesm2022/index.mjs.map +1 -1
- package/components/containers/wizard/types/index.d.ts +8 -8
- package/components/data/card/bundles/index.umd.js +12 -12
- package/components/data/card/fesm2022/index.mjs +12 -12
- package/components/data/card/fesm2022/index.mjs.map +1 -1
- package/components/data/card/types/index.d.ts +6 -6
- package/components/data/form/bundles/index.umd.js +72 -75
- package/components/data/form/fesm2022/index.mjs +72 -77
- package/components/data/form/fesm2022/index.mjs.map +1 -1
- package/components/data/form/types/index.d.ts +29 -29
- package/components/data/list/bundles/index.umd.js +22 -27
- package/components/data/list/fesm2022/index.mjs +22 -27
- package/components/data/list/fesm2022/index.mjs.map +1 -1
- package/components/data/list/types/index.d.ts +23 -23
- package/components/data/live-table/bundles/index.umd.js +3 -3
- package/components/data/live-table/fesm2022/index.mjs +3 -3
- package/components/data/live-table/fesm2022/index.mjs.map +1 -1
- package/components/data/live-table/types/index.d.ts +5 -5
- package/components/data/pagination/bundles/index.umd.js +27 -28
- package/components/data/pagination/fesm2022/index.mjs +27 -28
- package/components/data/pagination/fesm2022/index.mjs.map +1 -1
- package/components/data/pagination/types/index.d.ts +1 -1
- package/components/data/table/bundles/index.umd.js +131 -142
- package/components/data/table/fesm2022/index.mjs +131 -143
- package/components/data/table/fesm2022/index.mjs.map +1 -1
- package/components/data/table/types/index.d.ts +20 -20
- package/components/dialogs/alert-dialog/bundles/index.umd.js +3 -3
- package/components/dialogs/alert-dialog/fesm2022/index.mjs +3 -3
- package/components/dialogs/alert-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/alert-dialog/types/index.d.ts +1 -1
- package/components/dialogs/confirm-dialog/bundles/index.umd.js +3 -3
- package/components/dialogs/confirm-dialog/fesm2022/index.mjs +3 -3
- package/components/dialogs/confirm-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/confirm-dialog/types/index.d.ts +1 -1
- package/components/dialogs/default/bundles/index.umd.js +12 -12
- package/components/dialogs/default/fesm2022/index.mjs +12 -12
- package/components/dialogs/default/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/default/types/index.d.ts +3 -3
- package/components/dialogs/design-dialog/bundles/index.umd.js +3 -3
- package/components/dialogs/design-dialog/fesm2022/index.mjs +3 -3
- package/components/dialogs/design-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/design-dialog/types/index.d.ts +1 -1
- package/components/dialogs/iframe-dialog/bundles/index.umd.js +3 -3
- package/components/dialogs/iframe-dialog/fesm2022/index.mjs +3 -3
- package/components/dialogs/iframe-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/iframe-dialog/types/index.d.ts +1 -1
- package/components/dialogs/login-dialog/bundles/index.umd.js +3 -3
- package/components/dialogs/login-dialog/fesm2022/index.mjs +3 -3
- package/components/dialogs/login-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/login-dialog/types/index.d.ts +2 -2
- package/components/dialogs/partial-dialog/bundles/index.umd.js +3 -3
- package/components/dialogs/partial-dialog/fesm2022/index.mjs +3 -3
- package/components/dialogs/partial-dialog/fesm2022/index.mjs.map +1 -1
- package/components/dialogs/partial-dialog/types/index.d.ts +1 -1
- package/components/input/base-form/bundles/index.umd.js +4 -4
- package/components/input/base-form/fesm2022/index.mjs +4 -4
- package/components/input/base-form/fesm2022/index.mjs.map +1 -1
- package/components/input/base-form-custom/bundles/index.umd.js +3 -3
- package/components/input/base-form-custom/fesm2022/index.mjs +3 -3
- package/components/input/button/bundles/index.umd.js +3 -3
- package/components/input/button/fesm2022/index.mjs +3 -3
- package/components/input/button/fesm2022/index.mjs.map +1 -1
- package/components/input/button/types/index.d.ts +1 -1
- package/components/input/button-group/bundles/index.umd.js +3 -3
- package/components/input/button-group/fesm2022/index.mjs +3 -3
- package/components/input/button-group/fesm2022/index.mjs.map +1 -1
- package/components/input/button-group/types/index.d.ts +1 -1
- package/components/input/calendar/bundles/index.umd.js +4 -4
- package/components/input/calendar/fesm2022/index.mjs +4 -5
- package/components/input/calendar/fesm2022/index.mjs.map +1 -1
- package/components/input/calendar/types/index.d.ts +9 -9
- package/components/input/caption-position/bundles/index.umd.js +5 -5
- package/components/input/caption-position/fesm2022/index.mjs +5 -5
- package/components/input/caption-position/fesm2022/index.mjs.map +1 -1
- package/components/input/caption-position/types/index.d.ts +4 -4
- package/components/input/checkbox/bundles/index.umd.js +3 -3
- package/components/input/checkbox/fesm2022/index.mjs +3 -3
- package/components/input/checkbox/fesm2022/index.mjs.map +1 -1
- package/components/input/checkbox/types/index.d.ts +2 -2
- package/components/input/checkboxset/bundles/index.umd.js +4 -4
- package/components/input/checkboxset/fesm2022/index.mjs +4 -4
- package/components/input/checkboxset/fesm2022/index.mjs.map +1 -1
- package/components/input/checkboxset/types/index.d.ts +2 -2
- package/components/input/chips/bundles/index.umd.js +5 -5
- package/components/input/chips/fesm2022/index.mjs +5 -5
- package/components/input/chips/fesm2022/index.mjs.map +1 -1
- package/components/input/chips/types/index.d.ts +14 -14
- package/components/input/color-picker/bundles/index.umd.js +3 -3
- package/components/input/color-picker/fesm2022/index.mjs +3 -3
- package/components/input/color-picker/fesm2022/index.mjs.map +1 -1
- package/components/input/color-picker/types/index.d.ts +2 -2
- package/components/input/composite/bundles/index.umd.js +3 -3
- package/components/input/composite/fesm2022/index.mjs +3 -3
- package/components/input/composite/fesm2022/index.mjs.map +1 -1
- package/components/input/composite/types/index.d.ts +1 -1
- package/components/input/currency/bundles/index.umd.js +3 -3
- package/components/input/currency/fesm2022/index.mjs +3 -3
- package/components/input/currency/fesm2022/index.mjs.map +1 -1
- package/components/input/currency/types/index.d.ts +3 -3
- package/components/input/dataset-aware-form/bundles/index.umd.js +7 -7
- package/components/input/dataset-aware-form/fesm2022/index.mjs +7 -7
- package/components/input/dataset-aware-form/fesm2022/index.mjs.map +1 -1
- package/components/input/dataset-aware-form/types/index.d.ts +1 -1
- package/components/input/epoch/base-date-time/bundles/index.umd.js +10 -15
- package/components/input/epoch/base-date-time/fesm2022/index.mjs +10 -15
- package/components/input/epoch/base-date-time/fesm2022/index.mjs.map +1 -1
- package/components/input/epoch/base-date-time/types/index.d.ts +2 -2
- package/components/input/epoch/date/bundles/index.umd.js +5 -5
- package/components/input/epoch/date/fesm2022/index.mjs +5 -5
- package/components/input/epoch/date/fesm2022/index.mjs.map +1 -1
- package/components/input/epoch/date/types/index.d.ts +4 -4
- package/components/input/epoch/date-time/bundles/index.umd.js +3 -3
- package/components/input/epoch/date-time/fesm2022/index.mjs +3 -3
- package/components/input/epoch/date-time/fesm2022/index.mjs.map +1 -1
- package/components/input/epoch/date-time/types/index.d.ts +8 -8
- package/components/input/epoch/date-time-picker/bundles/index.umd.js +8 -8
- package/components/input/epoch/date-time-picker/fesm2022/index.mjs +8 -8
- package/components/input/epoch/date-time-picker/fesm2022/index.mjs.map +1 -1
- package/components/input/epoch/date-time-picker/types/index.d.ts +6 -7
- package/components/input/epoch/picker/bundles/index.umd.js +6 -6
- package/components/input/epoch/picker/fesm2022/index.mjs +6 -6
- package/components/input/epoch/picker/fesm2022/index.mjs.map +1 -1
- package/components/input/epoch/time/bundles/index.umd.js +4 -5
- package/components/input/epoch/time/fesm2022/index.mjs +5 -6
- package/components/input/epoch/time/fesm2022/index.mjs.map +1 -1
- package/components/input/epoch/time/types/index.d.ts +4 -4
- package/components/input/file-upload/bundles/index.umd.js +4 -4
- package/components/input/file-upload/fesm2022/index.mjs +4 -4
- package/components/input/file-upload/fesm2022/index.mjs.map +1 -1
- package/components/input/file-upload/types/index.d.ts +5 -5
- package/components/input/number/bundles/index.umd.js +3 -3
- package/components/input/number/fesm2022/index.mjs +3 -3
- package/components/input/number/fesm2022/index.mjs.map +1 -1
- package/components/input/number/types/index.d.ts +1 -1
- package/components/input/radioset/bundles/index.umd.js +4 -4
- package/components/input/radioset/fesm2022/index.mjs +4 -4
- package/components/input/radioset/fesm2022/index.mjs.map +1 -1
- package/components/input/radioset/types/index.d.ts +2 -2
- package/components/input/rating/bundles/index.umd.js +9 -11
- package/components/input/rating/fesm2022/index.mjs +9 -11
- package/components/input/rating/fesm2022/index.mjs.map +1 -1
- package/components/input/rating/types/index.d.ts +2 -2
- package/components/input/select/bundles/index.umd.js +4 -4
- package/components/input/select/fesm2022/index.mjs +4 -4
- package/components/input/select/fesm2022/index.mjs.map +1 -1
- package/components/input/select/types/index.d.ts +1 -1
- package/components/input/slider/bundles/index.umd.js +3 -3
- package/components/input/slider/fesm2022/index.mjs +3 -3
- package/components/input/slider/fesm2022/index.mjs.map +1 -1
- package/components/input/slider/types/index.d.ts +1 -1
- package/components/input/switch/bundles/index.umd.js +3 -3
- package/components/input/switch/fesm2022/index.mjs +3 -3
- package/components/input/switch/fesm2022/index.mjs.map +1 -1
- package/components/input/switch/types/index.d.ts +1 -1
- package/components/input/text/bundles/index.umd.js +31 -35
- package/components/input/text/fesm2022/index.mjs +31 -35
- package/components/input/text/fesm2022/index.mjs.map +1 -1
- package/components/input/text/types/index.d.ts +12 -12
- package/components/input/textarea/bundles/index.umd.js +3 -3
- package/components/input/textarea/fesm2022/index.mjs +3 -3
- package/components/input/textarea/fesm2022/index.mjs.map +1 -1
- package/components/input/textarea/types/index.d.ts +2 -2
- package/components/navigation/breadcrumb/bundles/index.umd.js +3 -3
- package/components/navigation/breadcrumb/fesm2022/index.mjs +3 -3
- package/components/navigation/breadcrumb/fesm2022/index.mjs.map +1 -1
- package/components/navigation/breadcrumb/types/index.d.ts +4 -4
- package/components/navigation/menu/bundles/index.umd.js +25 -33
- package/components/navigation/menu/fesm2022/index.mjs +25 -33
- package/components/navigation/menu/fesm2022/index.mjs.map +1 -1
- package/components/navigation/menu/types/index.d.ts +21 -21
- package/components/navigation/navbar/bundles/index.umd.js +3 -3
- package/components/navigation/navbar/fesm2022/index.mjs +3 -3
- package/components/navigation/navbar/fesm2022/index.mjs.map +1 -1
- package/components/navigation/navbar/types/index.d.ts +1 -1
- package/components/navigation/popover/bundles/index.umd.js +4 -4
- package/components/navigation/popover/fesm2022/index.mjs +4 -4
- package/components/navigation/popover/fesm2022/index.mjs.map +1 -1
- package/components/navigation/popover/types/index.d.ts +4 -4
- package/components/page/default/bundles/index.umd.js +23 -23
- package/components/page/default/fesm2022/index.mjs +23 -23
- package/components/page/default/fesm2022/index.mjs.map +1 -1
- package/components/page/default/types/index.d.ts +14 -14
- package/components/page/footer/bundles/index.umd.js +3 -3
- package/components/page/footer/fesm2022/index.mjs +3 -3
- package/components/page/footer/fesm2022/index.mjs.map +1 -1
- package/components/page/footer/types/index.d.ts +1 -1
- package/components/page/header/bundles/index.umd.js +3 -3
- package/components/page/header/fesm2022/index.mjs +3 -3
- package/components/page/header/fesm2022/index.mjs.map +1 -1
- package/components/page/header/types/index.d.ts +1 -1
- package/components/page/left-panel/bundles/index.umd.js +5 -5
- package/components/page/left-panel/fesm2022/index.mjs +5 -5
- package/components/page/left-panel/fesm2022/index.mjs.map +1 -1
- package/components/page/left-panel/types/index.d.ts +3 -3
- package/components/page/right-panel/bundles/index.umd.js +3 -3
- package/components/page/right-panel/fesm2022/index.mjs +3 -3
- package/components/page/right-panel/fesm2022/index.mjs.map +1 -1
- package/components/page/right-panel/types/index.d.ts +1 -1
- package/components/page/top-nav/bundles/index.umd.js +3 -3
- package/components/page/top-nav/fesm2022/index.mjs +3 -3
- package/components/page/top-nav/fesm2022/index.mjs.map +1 -1
- package/components/page/top-nav/types/index.d.ts +1 -1
- package/components/prefab/bundles/index.umd.js +7 -7
- package/components/prefab/fesm2022/index.mjs +7 -7
- package/components/prefab/fesm2022/index.mjs.map +1 -1
- package/components/prefab/types/index.d.ts +3 -3
- package/core/bundles/index.umd.js +84 -89
- package/core/fesm2022/index.mjs +84 -89
- package/core/fesm2022/index.mjs.map +1 -1
- package/core/types/index.d.ts +11 -11
- package/http/bundles/index.umd.js +6 -6
- package/http/fesm2022/index.mjs +6 -6
- package/http/fesm2022/index.mjs.map +1 -1
- package/http/types/index.d.ts +1 -1
- package/npm-shrinkwrap.json +2 -2
- package/oAuth/bundles/index.umd.js +17 -21
- package/oAuth/fesm2022/index.mjs +17 -21
- package/oAuth/fesm2022/index.mjs.map +1 -1
- package/oAuth/types/index.d.ts +1 -1
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/runtime/base/bundles/index.umd.js +253 -275
- package/runtime/base/fesm2022/index.mjs +253 -275
- package/runtime/base/fesm2022/index.mjs.map +1 -1
- package/runtime/base/types/index.d.ts +90 -96
- package/runtime/dynamic/bundles/index.umd.js +28 -28
- package/runtime/dynamic/fesm2022/index.mjs +28 -28
- package/runtime/dynamic/fesm2022/index.mjs.map +1 -1
- package/runtime/dynamic/types/index.d.ts +22 -22
- package/scripts/datatable/datatable.js +293 -271
- package/scripts/tree-keyboard-navigation/keyboard-navigation.js +68 -56
- package/security/bundles/index.umd.js +6 -6
- package/security/fesm2022/index.mjs +6 -6
- package/security/fesm2022/index.mjs.map +1 -1
- package/security/types/index.d.ts +5 -5
- package/transpiler/bundles/index.umd.js +3 -5
- package/transpiler/fesm2022/index.mjs +3 -5
- package/transpiler/fesm2022/index.mjs.map +1 -1
- package/variables/bundles/index.umd.js +69 -71
- package/variables/fesm2022/index.mjs +69 -72
- package/variables/fesm2022/index.mjs.map +1 -1
- package/variables/types/index.d.ts +9 -9
|
@@ -62,14 +62,14 @@ class CurrencyComponent extends NumberLocale {
|
|
|
62
62
|
// Call parent ngOnDestroy (NumberLocale → StylableComponent → BaseComponent)
|
|
63
63
|
super.ngOnDestroy();
|
|
64
64
|
}
|
|
65
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
66
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.
|
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0, type: CurrencyComponent, deps: [{ token: i0.Injector }, { token: i1.AppDefaults }, { token: i1.AbstractI18nService }, { token: i2.TrailingZeroDecimalPipe }, { token: 'EXPLICIT_CONTEXT', optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
66
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.21", type: CurrencyComponent, isStandalone: true, selector: "[wmCurrency]", providers: [
|
|
67
67
|
provideAs(CurrencyComponent, NG_VALUE_ACCESSOR, true),
|
|
68
68
|
provideAs(CurrencyComponent, NG_VALIDATORS, true),
|
|
69
69
|
provideAsWidgetRef(CurrencyComponent)
|
|
70
70
|
], viewQueries: [{ propertyName: "ngModel", first: true, predicate: NgModel, descendants: true, static: true }, { propertyName: "inputEl", first: true, predicate: ["input"], descendants: true, read: ElementRef, static: true }], usesInheritance: true, ngImport: i0, template: "<span class=\"input-group-addon\" [textContent]=\"currencySymbol\"></span>\n<input class=\"form-control app-textbox app-currency-input\"\n #input\n role=\"textbox\"\n type=\"text\"\n inputmode=\"decimal\"\n focus-target\n [autofocus]=\"autofocus\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [pattern]=\"regexp\"\n [attr.name]=\"name\"\n [attr.aria-label]=\"arialabel || currencyCode\"\n [attr.tabindex]=\"tabindex\"\n [attr.placeholder]=\"placeholder\"\n [attr.accesskey]=\"shortcutkey\"\n [ngModel]=\"displayValue\"\n [ngModelOptions]=\"ngModelOptions\"\n\n (focus)=\"checkForTrailingZeros($event)\"\n (input)=\"onInputChange($event.target.value)\"\n (paste)=\"onPaste($event)\"\n (blur)=\"handleBlur($event); checkForTrailingZeros($event);\"\n (ngModelChange)=\"onModelChange($event)\"\n (keydown)=\"validateInputEntry($event);\"\n (keydown.enter)=\"onEnter($event)\"\n (keydown.ArrowUp)=\"onArrowPress($event, 'UP')\"\n (keydown.ArrowDown)=\"onArrowPress($event, 'DOWN')\">\n", dependencies: [{ kind: "directive", type: TextContentDirective, selector: "[textContent]", inputs: ["textContent"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i3.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] }); }
|
|
71
71
|
}
|
|
72
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
72
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0, type: CurrencyComponent, decorators: [{
|
|
73
73
|
type: Component,
|
|
74
74
|
args: [{ standalone: true, imports: [TextContentDirective, FormsModule], selector: '[wmCurrency]', providers: [
|
|
75
75
|
provideAs(CurrencyComponent, NG_VALUE_ACCESSOR, true),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/currency/src/currency.props.ts","../../../../../projects/components/widgets/input/currency/src/currency.component.ts","../../../../../projects/components/widgets/input/currency/src/currency.component.html","../../../../../projects/components/widgets/input/currency/src/index.ts"],"sourcesContent":["import {PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register, registerFormWidget} from '@wm/components/base';\nimport {FormWidgetType} from '@wm/core';\n\nexport const currencyProps = new Map(\n [\n ['class', PROP_STRING],\n ['currency', PROP_STRING],\n ['datavalue', PROP_STRING],\n ['disabled', PROP_BOOLEAN],\n ['hint', PROP_STRING],\n ['arialabel', PROP_STRING],\n ['maxvalue', PROP_NUMBER],\n ['minvalue', PROP_NUMBER],\n ['name', PROP_STRING],\n ['placeholder', {value: 'Enter value', ...PROP_STRING}],\n ['readonly', PROP_BOOLEAN],\n ['required', PROP_BOOLEAN],\n ['shortcutkey', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['step', {value: 1, ...PROP_NUMBER}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['trailingzero', {value: false, ...PROP_BOOLEAN}],\n ['inputmode', {value: 'natural', ...PROP_STRING}]\n ]\n);\n\nexport const registerProps = () => {\n register(\n 'wm-currency',\n currencyProps\n );\n registerFormWidget(\n FormWidgetType.CURRENCY,\n new Map(currencyProps)\n );\n};\n","import { FormsModule } from '@angular/forms';\nimport {Component, ElementRef, Inject, Injector, OnDestroy, Optional, ViewChild} from '@angular/core';\
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/currency/src/currency.props.ts","../../../../../projects/components/widgets/input/currency/src/currency.component.ts","../../../../../projects/components/widgets/input/currency/src/currency.component.html","../../../../../projects/components/widgets/input/currency/src/index.ts"],"sourcesContent":["import {PROP_BOOLEAN, PROP_NUMBER, PROP_STRING, register, registerFormWidget} from '@wm/components/base';\nimport {FormWidgetType} from '@wm/core';\n\nexport const currencyProps = new Map(\n [\n ['class', PROP_STRING],\n ['currency', PROP_STRING],\n ['datavalue', PROP_STRING],\n ['disabled', PROP_BOOLEAN],\n ['hint', PROP_STRING],\n ['arialabel', PROP_STRING],\n ['maxvalue', PROP_NUMBER],\n ['minvalue', PROP_NUMBER],\n ['name', PROP_STRING],\n ['placeholder', {value: 'Enter value', ...PROP_STRING}],\n ['readonly', PROP_BOOLEAN],\n ['required', PROP_BOOLEAN],\n ['shortcutkey', PROP_STRING],\n ['show', {value: true, ...PROP_BOOLEAN}],\n ['step', {value: 1, ...PROP_NUMBER}],\n ['tabindex', {value: 0, ...PROP_NUMBER}],\n ['trailingzero', {value: false, ...PROP_BOOLEAN}],\n ['inputmode', {value: 'natural', ...PROP_STRING}]\n ]\n);\n\nexport const registerProps = () => {\n register(\n 'wm-currency',\n currencyProps\n );\n registerFormWidget(\n FormWidgetType.CURRENCY,\n new Map(currencyProps)\n );\n};\n","import { FormsModule, NG_VALIDATORS, NG_VALUE_ACCESSOR, NgModel } from '@angular/forms';\nimport {Component, ElementRef, Inject, Injector, OnDestroy, Optional, ViewChild} from '@angular/core';\n\nimport {AbstractI18nService, AppDefaults, CURRENCY_INFO} from '@wm/core';\nimport {IWidgetConfig, provideAs, provideAsWidgetRef, TextContentDirective, TrailingZeroDecimalPipe} from '@wm/components/base';\nimport { NumberLocale } from '@wm/components/input/text';\n\nimport {registerProps} from './currency.props';\n\nconst DEFAULT_CLS = 'input-group app-currency';\n\nconst WIDGET_CONFIG: IWidgetConfig = {\n widgetType: 'wm-currency',\n hostClass: DEFAULT_CLS\n};\n\n@Component({\n standalone: true,\n imports: [TextContentDirective, FormsModule],\n selector: '[wmCurrency]',\n templateUrl: './currency.component.html',\n providers: [\n provideAs(CurrencyComponent, NG_VALUE_ACCESSOR, true),\n provideAs(CurrencyComponent, NG_VALIDATORS, true),\n provideAsWidgetRef(CurrencyComponent)\n ]\n})\nexport class CurrencyComponent extends NumberLocale implements OnDestroy {\n static readonly initializeProps = registerProps();\n\n currencyCode: string;\n currencySymbol: string;\n public required: boolean;\n public regexp: any;\n public disabled: boolean;\n public autofocus: boolean;\n public name: string;\n public tabindex: any;\n public shortcutkey: string;\n public hint: string;\n public arialabel: string;\n\n @ViewChild(NgModel, {static: true}) ngModel: NgModel;\n @ViewChild('input', { static: true, read: ElementRef }) inputEl: ElementRef;\n\n constructor(inj: Injector, private readonly appDefaults: AppDefaults, i18nService: AbstractI18nService, trailingZeroDecimalPipe: TrailingZeroDecimalPipe, @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any) {\n super(inj, WIDGET_CONFIG, i18nService, trailingZeroDecimalPipe, explicitContext);\n this.currencyCode = this.appDefaults.currencyCode || 'USD';\n this.currencySymbol = CURRENCY_INFO[this.appDefaults.currencyCode || \"USD\"].symbol;\n }\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n if (key === 'currency') {\n this.currencyCode = nv;\n this.currencySymbol = CURRENCY_INFO[this.currencyCode|| this.appDefaults.currencyCode].symbol;\n } else {\n super.onPropertyChange(key, nv, ov);\n }\n }\n\n ngOnDestroy() {\n // MEMORY LEAK FIX: Clear ViewChild references\n this.ngModel = null;\n this.inputEl = null;\n\n // Call parent ngOnDestroy (NumberLocale → StylableComponent → BaseComponent)\n super.ngOnDestroy();\n }\n}\n","<span class=\"input-group-addon\" [textContent]=\"currencySymbol\"></span>\n<input class=\"form-control app-textbox app-currency-input\"\n #input\n role=\"textbox\"\n type=\"text\"\n inputmode=\"decimal\"\n focus-target\n [autofocus]=\"autofocus\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [required]=\"required\"\n [pattern]=\"regexp\"\n [attr.name]=\"name\"\n [attr.aria-label]=\"arialabel || currencyCode\"\n [attr.tabindex]=\"tabindex\"\n [attr.placeholder]=\"placeholder\"\n [attr.accesskey]=\"shortcutkey\"\n [ngModel]=\"displayValue\"\n [ngModelOptions]=\"ngModelOptions\"\n\n (focus)=\"checkForTrailingZeros($event)\"\n (input)=\"onInputChange($event.target.value)\"\n (paste)=\"onPaste($event)\"\n (blur)=\"handleBlur($event); checkForTrailingZeros($event);\"\n (ngModelChange)=\"onModelChange($event)\"\n (keydown)=\"validateInputEntry($event);\"\n (keydown.enter)=\"onEnter($event)\"\n (keydown.ArrowUp)=\"onArrowPress($event, 'UP')\"\n (keydown.ArrowDown)=\"onArrowPress($event, 'DOWN')\">\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
+
import { NgModel } from '@angular/forms';
|
|
1
2
|
import * as i0 from '@angular/core';
|
|
2
3
|
import { OnDestroy, ElementRef, Injector } from '@angular/core';
|
|
3
|
-
import { NgModel } from '@angular/forms';
|
|
4
4
|
import { AppDefaults, AbstractI18nService } from '@wm/core';
|
|
5
5
|
import { TrailingZeroDecimalPipe } from '@wm/components/base';
|
|
6
6
|
import { NumberLocale } from '@wm/components/input/text';
|
|
7
7
|
|
|
8
8
|
declare class CurrencyComponent extends NumberLocale implements OnDestroy {
|
|
9
|
-
private appDefaults;
|
|
10
|
-
static initializeProps: void;
|
|
9
|
+
private readonly appDefaults;
|
|
10
|
+
static readonly initializeProps: void;
|
|
11
11
|
currencyCode: string;
|
|
12
12
|
currencySymbol: string;
|
|
13
13
|
required: boolean;
|
|
@@ -165,7 +165,7 @@
|
|
|
165
165
|
values.forEach(val => {
|
|
166
166
|
const itemByValue = lodashEs.find(this.datasetItems, item => {
|
|
167
167
|
if (filterField === 'dataObject') {
|
|
168
|
-
if (this.compareby
|
|
168
|
+
if (this.compareby?.length) {
|
|
169
169
|
return core.isEqualWithFields(item[filterField], val, this.compareby);
|
|
170
170
|
}
|
|
171
171
|
}
|
|
@@ -181,7 +181,7 @@
|
|
|
181
181
|
this._modelByKey = undefined;
|
|
182
182
|
const itemByValue = lodashEs.find(this.datasetItems, item => {
|
|
183
183
|
if (filterField === 'dataObject') {
|
|
184
|
-
if (this.compareby
|
|
184
|
+
if (this.compareby?.length) {
|
|
185
185
|
return core.isEqualWithFields(item[filterField], values, this.compareby);
|
|
186
186
|
}
|
|
187
187
|
}
|
|
@@ -205,7 +205,7 @@
|
|
|
205
205
|
}
|
|
206
206
|
});
|
|
207
207
|
this.displayValue = this.multiple ? displayValues : displayValues[0] || '';
|
|
208
|
-
if (this.viewParent.containerWidget
|
|
208
|
+
if (this.viewParent.containerWidget?._isCustom)
|
|
209
209
|
this.viewParent.containerWidget.displayValue = this.displayValue.length ? this.displayValue : '';
|
|
210
210
|
}
|
|
211
211
|
// This function parses the dataset and extracts the displayOptions from parsed dataset.
|
|
@@ -252,7 +252,7 @@
|
|
|
252
252
|
}
|
|
253
253
|
setTemplate(partialName) {
|
|
254
254
|
this.content = partialName;
|
|
255
|
-
if (this.viewParent
|
|
255
|
+
if (this.viewParent?.prefabName) {
|
|
256
256
|
this['prefabName'] = this.viewParent.prefabName;
|
|
257
257
|
}
|
|
258
258
|
}
|
|
@@ -331,10 +331,10 @@
|
|
|
331
331
|
// Call parent ngOnDestroy
|
|
332
332
|
super.ngOnDestroy();
|
|
333
333
|
}
|
|
334
|
-
static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
335
|
-
static { this.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.
|
|
334
|
+
static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0__namespace, type: DatasetAwareFormComponent, deps: [{ token: i0__namespace.Injector }, { token: base.WidgetConfig }, { token: 'EXPLICIT_CONTEXT', optional: true }, { token: 'groupby', attribute: true }, { token: Promise }], target: i0__namespace.ɵɵFactoryTarget.Injectable }); }
|
|
335
|
+
static { this.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0__namespace, type: DatasetAwareFormComponent }); }
|
|
336
336
|
}
|
|
337
|
-
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
337
|
+
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0__namespace, type: DatasetAwareFormComponent, decorators: [{
|
|
338
338
|
type: i0.Injectable
|
|
339
339
|
}], ctorParameters: () => [{ type: i0__namespace.Injector }, { type: undefined, decorators: [{
|
|
340
340
|
type: i0.Inject,
|
|
@@ -148,7 +148,7 @@ class DatasetAwareFormComponent extends BaseFormCustomComponent {
|
|
|
148
148
|
values.forEach(val => {
|
|
149
149
|
const itemByValue = find(this.datasetItems, item => {
|
|
150
150
|
if (filterField === 'dataObject') {
|
|
151
|
-
if (this.compareby
|
|
151
|
+
if (this.compareby?.length) {
|
|
152
152
|
return isEqualWithFields(item[filterField], val, this.compareby);
|
|
153
153
|
}
|
|
154
154
|
}
|
|
@@ -164,7 +164,7 @@ class DatasetAwareFormComponent extends BaseFormCustomComponent {
|
|
|
164
164
|
this._modelByKey = undefined;
|
|
165
165
|
const itemByValue = find(this.datasetItems, item => {
|
|
166
166
|
if (filterField === 'dataObject') {
|
|
167
|
-
if (this.compareby
|
|
167
|
+
if (this.compareby?.length) {
|
|
168
168
|
return isEqualWithFields(item[filterField], values, this.compareby);
|
|
169
169
|
}
|
|
170
170
|
}
|
|
@@ -188,7 +188,7 @@ class DatasetAwareFormComponent extends BaseFormCustomComponent {
|
|
|
188
188
|
}
|
|
189
189
|
});
|
|
190
190
|
this.displayValue = this.multiple ? displayValues : displayValues[0] || '';
|
|
191
|
-
if (this.viewParent.containerWidget
|
|
191
|
+
if (this.viewParent.containerWidget?._isCustom)
|
|
192
192
|
this.viewParent.containerWidget.displayValue = this.displayValue.length ? this.displayValue : '';
|
|
193
193
|
}
|
|
194
194
|
// This function parses the dataset and extracts the displayOptions from parsed dataset.
|
|
@@ -235,7 +235,7 @@ class DatasetAwareFormComponent extends BaseFormCustomComponent {
|
|
|
235
235
|
}
|
|
236
236
|
setTemplate(partialName) {
|
|
237
237
|
this.content = partialName;
|
|
238
|
-
if (this.viewParent
|
|
238
|
+
if (this.viewParent?.prefabName) {
|
|
239
239
|
this['prefabName'] = this.viewParent.prefabName;
|
|
240
240
|
}
|
|
241
241
|
}
|
|
@@ -314,10 +314,10 @@ class DatasetAwareFormComponent extends BaseFormCustomComponent {
|
|
|
314
314
|
// Call parent ngOnDestroy
|
|
315
315
|
super.ngOnDestroy();
|
|
316
316
|
}
|
|
317
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
318
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.
|
|
317
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0, type: DatasetAwareFormComponent, deps: [{ token: i0.Injector }, { token: WidgetConfig }, { token: 'EXPLICIT_CONTEXT', optional: true }, { token: 'groupby', attribute: true }, { token: Promise }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
318
|
+
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0, type: DatasetAwareFormComponent }); }
|
|
319
319
|
}
|
|
320
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
320
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0, type: DatasetAwareFormComponent, decorators: [{
|
|
321
321
|
type: Injectable
|
|
322
322
|
}], ctorParameters: () => [{ type: i0.Injector }, { type: undefined, decorators: [{
|
|
323
323
|
type: Inject,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/dataset-aware-form/src/dataset-aware-form.component.ts","../../../../../projects/components/widgets/input/dataset-aware-form/src/index.ts"],"sourcesContent":["import {Attribute, Inject, Injectable, Injector, OnDestroy, OnInit, Optional} from '@angular/core';\nimport {Subject} from 'rxjs';\nimport {$appDigest, AppDefaults, debounce, isDefined, isEqualWithFields, noop, toBoolean} from '@wm/core';\nimport { ALLFIELDS, convertDataToObject, DataSetItem, extractDataAsArray, getOrderedDataset, getUniqObjsByDataField, handleHeaderClick, toggleAllHeaders, transformFormData, transformDataWithKeys, groupData, ToDatePipe, IWidgetConfig, WidgetConfig } from '@wm/components/base';\nimport { BaseFormCustomComponent } from '@wm/components/input/base-form-custom';\nimport {debounce as _debounce, find, isArray, isEmpty, isEqual, isNull, isObject, toString} from \"lodash-es\";\n\n@Injectable()\nexport abstract class DatasetAwareFormComponent extends BaseFormCustomComponent implements OnInit, OnDestroy {\n public dataset: any;\n public datafield: string;\n public displayfield: string;\n public displaylabel: string;\n public displayimagesrc: string;\n public displayexpression: string;\n public usekeys: boolean;\n public orderby: string;\n public multiple: boolean;\n public readonly: boolean;\n public content: string;\n public collapsible: boolean;\n public datePipe;\n\n public handleHeaderClick: ($event) => void;\n private toggleAllHeaders: void;\n public appDefaults;\n\n public binddisplayexpression: string;\n public binddisplayimagesrc: string;\n public binddisplaylabel: string;\n\n public displayValue: Array<string> | string;\n\n public datasetItems: DataSetItem[] = [];\n public acceptsArray = false; // set to true if proxyModel on widget accepts array type.\n protected dataset$ = new Subject();\n protected datavalue$ = new Subject();\n\n protected match: string;\n protected dateformat: string;\n public groupedData: any[];\n\n protected _modelByKey: any;\n public _modelByValue: any;\n public _defaultQueryInvoked: boolean; // for search/chips if datavalue is obtained from the default n/w call then set to true and do not update the modelByKeys.\n\n // this field contains the initial datavalue which needs to be processed once the dataset is available\n public toBeProcessedDatavalue: any;\n private readonly _debouncedInitDatasetItems: Function | null = null;\n protected allowempty = true;\n public compareby: any;\n\n private cancelLocaleChangeSubscription;\n\n public get modelByKey() {\n return this._modelByKey;\n }\n\n // triggers on ngModel change. This function extracts the datavalue value.\n public set modelByKey(val: any) {\n this.selectByKey(val);\n\n // invoke on datavalue change.\n this.invokeOnChange(this._modelByValue);\n }\n\n // @ts-ignore\n public get datavalue() {\n return this._modelByValue;\n }\n\n // triggers on setting the datavalue. This function extracts the model value.\n // @ts-ignore\n public set datavalue(val: any) {\n if (this.multiple) {\n val = extractDataAsArray(val);\n }\n this._modelByValue = val;\n\n this.selectByValue(val);\n\n // changes on the datavalue can be subscribed using listenToDatavalue\n this.datavalue$.next(val);\n\n // invoke on datavalue change.\n this.invokeOnChange(val, undefined, true);\n }\n\n protected constructor(inj: Injector, @Inject(WidgetConfig) config: IWidgetConfig,\n @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any,\n @Attribute('groupby') public groupby?: string, initPromise?: Promise<any>) {\n super(inj, config, explicitContext, initPromise);\n this.datePipe = this.inj.get(ToDatePipe);\n this.appDefaults = this.inj.get(AppDefaults);\n this.binddisplayexpression = this.nativeElement.getAttribute('displayexpression.bind');\n this.binddisplayimagesrc = this.nativeElement.getAttribute('displayimagesrc.bind');\n this.binddisplaylabel = this.nativeElement.getAttribute('displaylabel.bind');\n\n this._debouncedInitDatasetItems = debounce(() => {\n this.initDatasetItems();\n $appDigest(true);\n }, 150);\n this.handleHeaderClick = noop;\n\n this.cancelLocaleChangeSubscription = this.getAppInstance().subscribe(\"locale-changed\", () => {\n if (this._debouncedInitDatasetItems) {\n this._debouncedInitDatasetItems();\n }\n });\n }\n\n /**\n * This function sets the _datavalue value from the model and sets the selected flag when item is found.\n * Here model is the value obtained from ngModel.\n * @param keys represent the model.\n */\n protected selectByKey(keys) {\n this.resetDatasetItems();\n\n if (!this.datasetItems.length) {\n return;\n }\n\n if (this.multiple && !isArray(keys)) {\n keys = [keys];\n }\n\n // Set the _modelByKey to the modified keys.\n this._modelByKey = keys;\n\n if (this.multiple) {\n this._modelByValue = [];\n keys.forEach(key => {\n const itemByKey = find(this.datasetItems, item => {\n // not triple equal, as the instance type can be different.\n // only value comparison should be done.\n return toString(item.key) === toString(key);\n });\n if (itemByKey) {\n itemByKey.selected = true;\n this._modelByValue = [...this._modelByValue, itemByKey.value];\n }\n });\n } else {\n this._modelByValue = '';\n const itemByKey = find(this.datasetItems, item => {\n // not triple equal, as the instance type can be different.\n // only value comparison should be done.\n return toString(item.key) === toString(keys);\n });\n if (itemByKey) {\n itemByKey.selected = true;\n this._modelByValue = itemByKey.value;\n }\n }\n this.initDisplayValues();\n }\n\n /**\n * This function sets the _model value from the datavalue (selectedvalues) and sets the selected flag when item is found.\n * datavalue is the default value or a value representing the displayField (for suppose: object in case of ALLFIELDS).\n * If acceptsArray is true, the model always accepts an array.\n * For example, select always accepts model as array whether multiple select is true or false.\n * @param values represent the datavalue.\n */\n protected selectByValue(values: Array<any> | any) {\n this.resetDatasetItems();\n\n // if datavalue is not defined or empty then set the model as undefined.\n if (!isDefined(values) || values === '' || isNull(values) || (values instanceof Array && !values.length)) {\n this._modelByKey = undefined;\n // do not return when allowempty is set to true.\n if (!this.allowempty || !isDefined(values)) {\n return;\n }\n }\n\n if (this.acceptsArray && !isArray(values)) {\n values = this.allowempty ? [values] : extractDataAsArray(values);\n }\n\n // preserve the datavalue if datasetItems are empty.\n if (!this.datasetItems.length && isDefined(values)) {\n this.toBeProcessedDatavalue = values;\n return;\n }\n\n const filterField = this.datafield === ALLFIELDS ? 'dataObject' : 'key';\n\n if (isArray(values)) {\n this._modelByKey = [];\n values.forEach(val => {\n const itemByValue = find(this.datasetItems, item => {\n if (filterField === 'dataObject') {\n if (this.compareby && this.compareby.length) {\n return isEqualWithFields(item[filterField], val, this.compareby);\n }\n }\n return (isObject(item.value) ? isEqual(item.value, val) : (toString(item.value)).toLowerCase() === (toString(val)).toLowerCase());\n });\n if (itemByValue) {\n itemByValue.selected = true;\n this._modelByKey.push(itemByValue.key);\n }\n });\n } else {\n this._modelByKey = undefined;\n const itemByValue = find(this.datasetItems, item => {\n if (filterField === 'dataObject') {\n if (this.compareby && this.compareby.length) {\n return isEqualWithFields(item[filterField], values, this.compareby);\n }\n }\n return (isObject(item.value) ? isEqual(item.value, values) : (toString(item.value)).toLowerCase() === (toString(values)).toLowerCase());\n });\n if (itemByValue) {\n itemByValue.selected = true;\n this._modelByKey = itemByValue.key;\n }\n }\n // delaying the datavalue update as the widgets in liveform are having datavalue as undefined and not the default provided value\n // because datavalue is updated later when new dataset is available.\n this._debounceDatavalueUpdation(values);\n }\n\n protected readonly _debounceDatavalueUpdation = _debounce((values) => {\n // if no item is found in datasetItems, wait untill the dataset updates by preserving the datavalue in toBeProcessedDatavalue.\n if (!isDefined(this._modelByKey) || (isArray(this._modelByKey) && !this._modelByKey.length)) {\n this.toBeProcessedDatavalue = values;\n this._modelByValue = '';\n } else if (isDefined(this.toBeProcessedDatavalue)) {\n // obtain the first array value when multiple is set to false.\n // set the modelByValue only when undefined.\n if (!isDefined(this._modelByValue)) {\n this._modelByValue = (!this.multiple && isArray(this.toBeProcessedDatavalue)) ? this.toBeProcessedDatavalue[0] : this.toBeProcessedDatavalue;\n }\n this.toBeProcessedDatavalue = undefined;\n }\n\n this.initDisplayValues();\n }, 150);\n\n // Updates the displayValue property.\n protected initDisplayValues() {\n const displayValues = [];\n this.datasetItems.forEach(item => {\n if (item.selected) {\n displayValues.push(item.label);\n }\n });\n\n this.displayValue = this.multiple ? displayValues : displayValues[0] || '';\n if(this.viewParent.containerWidget && this.viewParent.containerWidget._isCustom)\n this.viewParent.containerWidget.displayValue = this.displayValue.length ? this.displayValue : '';\n }\n\n // This function parses the dataset and extracts the displayOptions from parsed dataset.\n protected initDatasetItems() {\n if (!this.dataset || isEmpty(this.dataset)) {\n this.datasetItems = [];\n // notify the dataset listeners\n this.dataset$.next(this.datasetItems);\n return;\n }\n\n // convert any dataset to the object format.\n const orderedDataset = getOrderedDataset(convertDataToObject(this.dataset), this.orderby);\n\n if (this.usekeys) {\n this.datasetItems = transformDataWithKeys(orderedDataset);\n } else {\n const displayOptions = transformFormData(this.viewParent, orderedDataset, this.datafield, {\n displayField: this.displayfield || this.displaylabel,\n displayExpr: this.displayexpression,\n bindDisplayExpr: this.binddisplayexpression || this.binddisplaylabel,\n bindDisplayImgSrc: this.binddisplayimagesrc,\n displayImgSrc: this.displayimagesrc\n });\n // get the unique objects out of the extracted data. Notify change in datasetItems using [...datasetItems] notation\n this.datasetItems = [...getUniqObjsByDataField(displayOptions, this.datafield, this.displayfield || this.displaylabel, toBoolean(this.allowempty))];\n }\n\n this.postDatasetItemsInit();\n }\n\n // Once the datasetItems are ready, set the proxyModel by using datavalue.\n protected postDatasetItemsInit() {\n if (this.datasetItems.length && !this._defaultQueryInvoked) {\n // Use the latest of toBeProcessedDatavalue, datavalue.\n // IMPORTANT: lodash isEmpty treats 0/false as \"empty\", which breaks default values that legitimately evaluate to 0/false.\n // Only fall back to datavalue when toBeProcessedDatavalue is actually undefined/null.\n const _datavalue = isDefined(this.toBeProcessedDatavalue) ? this.toBeProcessedDatavalue : this.datavalue;\n this.selectByValue(_datavalue);\n }\n // notify the dataset listeners\n this.dataset$.next(this.datasetItems);\n }\n\n // Reset the selected flag on datasetItems to false.\n protected resetDatasetItems() {\n this.datasetItems.forEach(item => item.selected = false);\n }\n\n protected setTemplate(partialName) {\n this.content = partialName;\n if (this.viewParent && this.viewParent.prefabName) {\n this['prefabName'] = this.viewParent.prefabName;\n }\n }\n\n\n private getGroupedData() {\n return this.datasetItems.length ? groupData(this, convertDataToObject(this.datasetItems), this.groupby, this.match, this.orderby, this.dateformat, this.datePipe, 'dataObject', this.appDefaults) : [];\n }\n\n private datasetSubscription() {\n const datasetSubscription = this.dataset$.subscribe(() => {\n this.groupedData = this.getGroupedData();\n });\n this.registerDestroyListener(() => datasetSubscription.unsubscribe());\n }\n\n protected setGroupData() {\n this.datasetSubscription();\n // If groupby is set, get the groupedData from the datasetItems.\n this.groupedData = this.getGroupedData();\n }\n\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n super.onPropertyChange(key, nv, ov);\n switch (key) {\n case 'dataset':\n case 'datafield':\n case 'displayfield':\n case 'displaylabel':\n case 'displayexpression':\n case 'orderby':\n case 'usekeys':\n if (this._debouncedInitDatasetItems) {\n this._debouncedInitDatasetItems();\n }\n break;\n case 'required':\n case 'datavalue':\n this._onChange(this.datavalue);\n break;\n case 'groupby':\n case 'match':\n if (this.widgetType !== 'wm-search' && this.widgetType !== 'wm-chips') {\n this.setGroupData();\n }\n break;\n }\n }\n\n ngOnInit() {\n super.ngOnInit();\n if (this.groupby && (this.widgetType !== 'wm-search' && this.widgetType !== 'wm-chips')) {\n this.setGroupData();\n }\n // adding the handler for header click and toggle headers.\n if (this.groupby && this.collapsible) {\n this.handleHeaderClick = handleHeaderClick;\n this.toggleAllHeaders = toggleAllHeaders.bind(undefined, this);\n }\n }\n\n ngOnDestroy() {\n if(this.cancelLocaleChangeSubscription) {\n this.cancelLocaleChangeSubscription();\n }\n\n // MEMORY LEAK FIX: Complete and clear Subject observables\n if (this.dataset$) {\n this.dataset$.complete();\n }\n if (this.datavalue$) {\n this.datavalue$.complete();\n }\n\n // MEMORY LEAK FIX: Clear datasetItems array\n this.datasetItems = [];\n\n // MEMORY LEAK FIX: Clear grouped data\n if (this.groupedData) {\n this.groupedData = [];\n }\n\n // MEMORY LEAK FIX: Clear model references\n this._modelByKey = null;\n this._modelByValue = null;\n this.toBeProcessedDatavalue = null;\n\n // Call parent ngOnDestroy\n super.ngOnDestroy();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["_debounce","debounce"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../../../../projects/components/widgets/input/dataset-aware-form/src/dataset-aware-form.component.ts","../../../../../projects/components/widgets/input/dataset-aware-form/src/index.ts"],"sourcesContent":["import {Attribute, Inject, Injectable, Injector, OnDestroy, OnInit, Optional} from '@angular/core';\nimport {Subject} from 'rxjs';\nimport {$appDigest, AppDefaults, debounce, isDefined, isEqualWithFields, noop, toBoolean} from '@wm/core';\nimport { ALLFIELDS, convertDataToObject, DataSetItem, extractDataAsArray, getOrderedDataset, getUniqObjsByDataField, handleHeaderClick, toggleAllHeaders, transformFormData, transformDataWithKeys, groupData, ToDatePipe, IWidgetConfig, WidgetConfig } from '@wm/components/base';\nimport { BaseFormCustomComponent } from '@wm/components/input/base-form-custom';\nimport {debounce as _debounce, find, isArray, isEmpty, isEqual, isNull, isObject, toString} from \"lodash-es\";\n\n@Injectable()\nexport abstract class DatasetAwareFormComponent extends BaseFormCustomComponent implements OnInit, OnDestroy {\n public dataset: any;\n public datafield: string;\n public displayfield: string;\n public displaylabel: string;\n public displayimagesrc: string;\n public displayexpression: string;\n public usekeys: boolean;\n public orderby: string;\n public multiple: boolean;\n public readonly: boolean;\n public content: string;\n public collapsible: boolean;\n public datePipe;\n\n public handleHeaderClick: ($event) => void;\n private toggleAllHeaders: void;\n public appDefaults;\n\n public binddisplayexpression: string;\n public binddisplayimagesrc: string;\n public binddisplaylabel: string;\n\n public displayValue: Array<string> | string;\n\n public datasetItems: DataSetItem[] = [];\n public acceptsArray = false; // set to true if proxyModel on widget accepts array type.\n protected dataset$ = new Subject();\n protected datavalue$ = new Subject();\n\n protected match: string;\n protected dateformat: string;\n public groupedData: any[];\n\n protected _modelByKey: any;\n public _modelByValue: any;\n public _defaultQueryInvoked: boolean; // for search/chips if datavalue is obtained from the default n/w call then set to true and do not update the modelByKeys.\n\n // this field contains the initial datavalue which needs to be processed once the dataset is available\n public toBeProcessedDatavalue: any;\n private readonly _debouncedInitDatasetItems: Function | null = null;\n protected allowempty = true;\n public compareby: any;\n\n private readonly cancelLocaleChangeSubscription;\n\n public get modelByKey() {\n return this._modelByKey;\n }\n\n // triggers on ngModel change. This function extracts the datavalue value.\n public set modelByKey(val: any) {\n this.selectByKey(val);\n\n // invoke on datavalue change.\n this.invokeOnChange(this._modelByValue);\n }\n\n // @ts-ignore\n public get datavalue() {\n return this._modelByValue;\n }\n\n // triggers on setting the datavalue. This function extracts the model value.\n // @ts-ignore\n public set datavalue(val: any) {\n if (this.multiple) {\n val = extractDataAsArray(val);\n }\n this._modelByValue = val;\n\n this.selectByValue(val);\n\n // changes on the datavalue can be subscribed using listenToDatavalue\n this.datavalue$.next(val);\n\n // invoke on datavalue change.\n this.invokeOnChange(val, undefined, true);\n }\n\n protected constructor(inj: Injector, @Inject(WidgetConfig) config: IWidgetConfig,\n @Inject('EXPLICIT_CONTEXT') @Optional() explicitContext: any,\n @Attribute('groupby') public groupby?: string, initPromise?: Promise<any>) {\n super(inj, config, explicitContext, initPromise);\n this.datePipe = this.inj.get(ToDatePipe);\n this.appDefaults = this.inj.get(AppDefaults);\n this.binddisplayexpression = this.nativeElement.getAttribute('displayexpression.bind');\n this.binddisplayimagesrc = this.nativeElement.getAttribute('displayimagesrc.bind');\n this.binddisplaylabel = this.nativeElement.getAttribute('displaylabel.bind');\n\n this._debouncedInitDatasetItems = debounce(() => {\n this.initDatasetItems();\n $appDigest(true);\n }, 150);\n this.handleHeaderClick = noop;\n\n this.cancelLocaleChangeSubscription = this.getAppInstance().subscribe(\"locale-changed\", () => {\n if (this._debouncedInitDatasetItems) {\n this._debouncedInitDatasetItems();\n }\n });\n }\n\n /**\n * This function sets the _datavalue value from the model and sets the selected flag when item is found.\n * Here model is the value obtained from ngModel.\n * @param keys represent the model.\n */\n protected selectByKey(keys) {\n this.resetDatasetItems();\n\n if (!this.datasetItems.length) {\n return;\n }\n\n if (this.multiple && !isArray(keys)) {\n keys = [keys];\n }\n\n // Set the _modelByKey to the modified keys.\n this._modelByKey = keys;\n\n if (this.multiple) {\n this._modelByValue = [];\n keys.forEach(key => {\n const itemByKey = find(this.datasetItems, item => {\n // not triple equal, as the instance type can be different.\n // only value comparison should be done.\n return toString(item.key) === toString(key);\n });\n if (itemByKey) {\n itemByKey.selected = true;\n this._modelByValue = [...this._modelByValue, itemByKey.value];\n }\n });\n } else {\n this._modelByValue = '';\n const itemByKey = find(this.datasetItems, item => {\n // not triple equal, as the instance type can be different.\n // only value comparison should be done.\n return toString(item.key) === toString(keys);\n });\n if (itemByKey) {\n itemByKey.selected = true;\n this._modelByValue = itemByKey.value;\n }\n }\n this.initDisplayValues();\n }\n\n /**\n * This function sets the _model value from the datavalue (selectedvalues) and sets the selected flag when item is found.\n * datavalue is the default value or a value representing the displayField (for suppose: object in case of ALLFIELDS).\n * If acceptsArray is true, the model always accepts an array.\n * For example, select always accepts model as array whether multiple select is true or false.\n * @param values represent the datavalue.\n */\n protected selectByValue(values: Array<any> | any) {\n this.resetDatasetItems();\n\n // if datavalue is not defined or empty then set the model as undefined.\n if (!isDefined(values) || values === '' || isNull(values) || (values instanceof Array && !values.length)) {\n this._modelByKey = undefined;\n // do not return when allowempty is set to true.\n if (!this.allowempty || !isDefined(values)) {\n return;\n }\n }\n\n if (this.acceptsArray && !isArray(values)) {\n values = this.allowempty ? [values] : extractDataAsArray(values);\n }\n\n // preserve the datavalue if datasetItems are empty.\n if (!this.datasetItems.length && isDefined(values)) {\n this.toBeProcessedDatavalue = values;\n return;\n }\n\n const filterField = this.datafield === ALLFIELDS ? 'dataObject' : 'key';\n\n if (isArray(values)) {\n this._modelByKey = [];\n values.forEach(val => {\n const itemByValue = find(this.datasetItems, item => {\n if (filterField === 'dataObject') {\n if (this.compareby?.length) {\n return isEqualWithFields(item[filterField], val, this.compareby);\n }\n }\n return (isObject(item.value) ? isEqual(item.value, val) : (toString(item.value)).toLowerCase() === (toString(val)).toLowerCase());\n });\n if (itemByValue) {\n itemByValue.selected = true;\n this._modelByKey.push(itemByValue.key);\n }\n });\n } else {\n this._modelByKey = undefined;\n const itemByValue = find(this.datasetItems, item => {\n if (filterField === 'dataObject') {\n if (this.compareby?.length) {\n return isEqualWithFields(item[filterField], values, this.compareby);\n }\n }\n return (isObject(item.value) ? isEqual(item.value, values) : (toString(item.value)).toLowerCase() === (toString(values)).toLowerCase());\n });\n if (itemByValue) {\n itemByValue.selected = true;\n this._modelByKey = itemByValue.key;\n }\n }\n // delaying the datavalue update as the widgets in liveform are having datavalue as undefined and not the default provided value\n // because datavalue is updated later when new dataset is available.\n this._debounceDatavalueUpdation(values);\n }\n\n protected readonly _debounceDatavalueUpdation = _debounce((values) => {\n // if no item is found in datasetItems, wait untill the dataset updates by preserving the datavalue in toBeProcessedDatavalue.\n if (!isDefined(this._modelByKey) || (isArray(this._modelByKey) && !this._modelByKey.length)) {\n this.toBeProcessedDatavalue = values;\n this._modelByValue = '';\n } else if (isDefined(this.toBeProcessedDatavalue)) {\n // obtain the first array value when multiple is set to false.\n // set the modelByValue only when undefined.\n if (!isDefined(this._modelByValue)) {\n this._modelByValue = (!this.multiple && isArray(this.toBeProcessedDatavalue)) ? this.toBeProcessedDatavalue[0] : this.toBeProcessedDatavalue;\n }\n this.toBeProcessedDatavalue = undefined;\n }\n\n this.initDisplayValues();\n }, 150);\n\n // Updates the displayValue property.\n protected initDisplayValues() {\n const displayValues = [];\n this.datasetItems.forEach(item => {\n if (item.selected) {\n displayValues.push(item.label);\n }\n });\n\n this.displayValue = this.multiple ? displayValues : displayValues[0] || '';\n if(this.viewParent.containerWidget?._isCustom)\n this.viewParent.containerWidget.displayValue = this.displayValue.length ? this.displayValue : '';\n }\n\n // This function parses the dataset and extracts the displayOptions from parsed dataset.\n protected initDatasetItems() {\n if (!this.dataset || isEmpty(this.dataset)) {\n this.datasetItems = [];\n // notify the dataset listeners\n this.dataset$.next(this.datasetItems);\n return;\n }\n\n // convert any dataset to the object format.\n const orderedDataset = getOrderedDataset(convertDataToObject(this.dataset), this.orderby);\n\n if (this.usekeys) {\n this.datasetItems = transformDataWithKeys(orderedDataset);\n } else {\n const displayOptions = transformFormData(this.viewParent, orderedDataset, this.datafield, {\n displayField: this.displayfield || this.displaylabel,\n displayExpr: this.displayexpression,\n bindDisplayExpr: this.binddisplayexpression || this.binddisplaylabel,\n bindDisplayImgSrc: this.binddisplayimagesrc,\n displayImgSrc: this.displayimagesrc\n });\n // get the unique objects out of the extracted data. Notify change in datasetItems using [...datasetItems] notation\n this.datasetItems = [...getUniqObjsByDataField(displayOptions, this.datafield, this.displayfield || this.displaylabel, toBoolean(this.allowempty))];\n }\n\n this.postDatasetItemsInit();\n }\n\n // Once the datasetItems are ready, set the proxyModel by using datavalue.\n protected postDatasetItemsInit() {\n if (this.datasetItems.length && !this._defaultQueryInvoked) {\n // Use the latest of toBeProcessedDatavalue, datavalue.\n // IMPORTANT: lodash isEmpty treats 0/false as \"empty\", which breaks default values that legitimately evaluate to 0/false.\n // Only fall back to datavalue when toBeProcessedDatavalue is actually undefined/null.\n const _datavalue = isDefined(this.toBeProcessedDatavalue) ? this.toBeProcessedDatavalue : this.datavalue;\n this.selectByValue(_datavalue);\n }\n // notify the dataset listeners\n this.dataset$.next(this.datasetItems);\n }\n\n // Reset the selected flag on datasetItems to false.\n protected resetDatasetItems() {\n this.datasetItems.forEach(item => item.selected = false);\n }\n\n protected setTemplate(partialName) {\n this.content = partialName;\n if (this.viewParent?.prefabName) {\n this['prefabName'] = this.viewParent.prefabName;\n }\n }\n\n\n private getGroupedData() {\n return this.datasetItems.length ? groupData(this, convertDataToObject(this.datasetItems), this.groupby, this.match, this.orderby, this.dateformat, this.datePipe, 'dataObject', this.appDefaults) : [];\n }\n\n private datasetSubscription() {\n const datasetSubscription = this.dataset$.subscribe(() => {\n this.groupedData = this.getGroupedData();\n });\n this.registerDestroyListener(() => datasetSubscription.unsubscribe());\n }\n\n protected setGroupData() {\n this.datasetSubscription();\n // If groupby is set, get the groupedData from the datasetItems.\n this.groupedData = this.getGroupedData();\n }\n\n\n onPropertyChange(key: string, nv: any, ov?: any) {\n super.onPropertyChange(key, nv, ov);\n switch (key) {\n case 'dataset':\n case 'datafield':\n case 'displayfield':\n case 'displaylabel':\n case 'displayexpression':\n case 'orderby':\n case 'usekeys':\n if (this._debouncedInitDatasetItems) {\n this._debouncedInitDatasetItems();\n }\n break;\n case 'required':\n case 'datavalue':\n this._onChange(this.datavalue);\n break;\n case 'groupby':\n case 'match':\n if (this.widgetType !== 'wm-search' && this.widgetType !== 'wm-chips') {\n this.setGroupData();\n }\n break;\n }\n }\n\n ngOnInit() {\n super.ngOnInit();\n if (this.groupby && (this.widgetType !== 'wm-search' && this.widgetType !== 'wm-chips')) {\n this.setGroupData();\n }\n // adding the handler for header click and toggle headers.\n if (this.groupby && this.collapsible) {\n this.handleHeaderClick = handleHeaderClick;\n this.toggleAllHeaders = toggleAllHeaders.bind(undefined, this);\n }\n }\n\n ngOnDestroy() {\n if(this.cancelLocaleChangeSubscription) {\n this.cancelLocaleChangeSubscription();\n }\n\n // MEMORY LEAK FIX: Complete and clear Subject observables\n if (this.dataset$) {\n this.dataset$.complete();\n }\n if (this.datavalue$) {\n this.datavalue$.complete();\n }\n\n // MEMORY LEAK FIX: Clear datasetItems array\n this.datasetItems = [];\n\n // MEMORY LEAK FIX: Clear grouped data\n if (this.groupedData) {\n this.groupedData = [];\n }\n\n // MEMORY LEAK FIX: Clear model references\n this._modelByKey = null;\n this._modelByValue = null;\n this.toBeProcessedDatavalue = null;\n\n // Call parent ngOnDestroy\n super.ngOnDestroy();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["_debounce","debounce"],"mappings":"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"}
|
|
@@ -41,7 +41,7 @@ declare abstract class DatasetAwareFormComponent extends BaseFormCustomComponent
|
|
|
41
41
|
private readonly _debouncedInitDatasetItems;
|
|
42
42
|
protected allowempty: boolean;
|
|
43
43
|
compareby: any;
|
|
44
|
-
private cancelLocaleChangeSubscription;
|
|
44
|
+
private readonly cancelLocaleChangeSubscription;
|
|
45
45
|
get modelByKey(): any;
|
|
46
46
|
set modelByKey(val: any);
|
|
47
47
|
get datavalue(): any;
|
|
@@ -308,9 +308,6 @@
|
|
|
308
308
|
setTimeout(() => {
|
|
309
309
|
const newDay = newDate.getDate().toString();
|
|
310
310
|
lodashEs.filter($(`span:contains(${newDay})`).not('.is-other-month'), (obj) => {
|
|
311
|
-
$(`.bs-datepicker-head .current`).first().text();
|
|
312
|
-
$(".bs-datepicker-head .current").eq(1).text();
|
|
313
|
-
new Date().toLocaleString('default', { month: 'long' });
|
|
314
311
|
if ($(obj).text() === newDay) {
|
|
315
312
|
if ($(obj).hasClass('selected')) {
|
|
316
313
|
$(obj).parent().attr('aria-selected', 'true');
|
|
@@ -747,13 +744,11 @@
|
|
|
747
744
|
preventDefault = true;
|
|
748
745
|
}
|
|
749
746
|
}
|
|
750
|
-
else {
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
preventDefault = true;
|
|
756
|
-
}
|
|
747
|
+
else if (event.key === 'Enter' || event.key === 'Escape') {
|
|
748
|
+
elementScope.setIsTimeOpen(false);
|
|
749
|
+
this.focus();
|
|
750
|
+
stopPropogation = true;
|
|
751
|
+
preventDefault = true;
|
|
757
752
|
}
|
|
758
753
|
if (stopPropogation) {
|
|
759
754
|
event.stopPropagation();
|
|
@@ -860,7 +855,7 @@
|
|
|
860
855
|
if (event.originalEvent) {
|
|
861
856
|
this.setFocusForDate(-1);
|
|
862
857
|
}
|
|
863
|
-
|
|
858
|
+
const prevMon = this.getMonth(this.activeDate, -1);
|
|
864
859
|
// const current = new Date();
|
|
865
860
|
// if(prevMon.date.getMonth()===current.getMonth() && prevMon.date.getFullYear()===current.getFullYear()) {
|
|
866
861
|
// this.hightlightToday(new Date());
|
|
@@ -885,7 +880,7 @@
|
|
|
885
880
|
if (event.originalEvent) {
|
|
886
881
|
this.setFocusForDate(1);
|
|
887
882
|
}
|
|
888
|
-
|
|
883
|
+
const nextMon = this.getMonth(this.activeDate, 1);
|
|
889
884
|
// const current = new Date();
|
|
890
885
|
// if (nextMon.date.getMonth() === current.getMonth() && nextMon.date.getFullYear() === current.getFullYear()) {
|
|
891
886
|
// this.hightlightToday(current);
|
|
@@ -1067,10 +1062,10 @@
|
|
|
1067
1062
|
});
|
|
1068
1063
|
}
|
|
1069
1064
|
}
|
|
1070
|
-
static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
1071
|
-
static { this.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.
|
|
1065
|
+
static { this.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0__namespace, type: BaseDateTimeComponent, deps: "invalid", target: i0__namespace.ɵɵFactoryTarget.Directive }); }
|
|
1066
|
+
static { this.ɵdir = i0__namespace.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.21", type: BaseDateTimeComponent, isStandalone: true, viewQueries: [{ propertyName: "bsDropdown", first: true, predicate: dropdown.BsDropdownDirective, descendants: true }, { propertyName: "bsTimePicker", first: true, predicate: timepicker.TimepickerComponent, descendants: true }, { propertyName: "datetimepickerComponent", first: true, predicate: dateTimePicker.DateTimePickerComponent, descendants: true }], usesInheritance: true, ngImport: i0__namespace }); }
|
|
1072
1067
|
}
|
|
1073
|
-
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
1068
|
+
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0__namespace, type: BaseDateTimeComponent, decorators: [{
|
|
1074
1069
|
type: i0.Directive
|
|
1075
1070
|
}], ctorParameters: () => [{ type: i0__namespace.Injector }, { type: undefined }, { type: undefined, decorators: [{
|
|
1076
1071
|
type: i0.Inject,
|
|
@@ -297,9 +297,6 @@ class BaseDateTimeComponent extends BaseFormCustomComponent {
|
|
|
297
297
|
setTimeout(() => {
|
|
298
298
|
const newDay = newDate.getDate().toString();
|
|
299
299
|
filter($(`span:contains(${newDay})`).not('.is-other-month'), (obj) => {
|
|
300
|
-
const activeMonth = $(`.bs-datepicker-head .current`).first().text();
|
|
301
|
-
const activeYear = $(".bs-datepicker-head .current").eq(1).text();
|
|
302
|
-
const monthName = new Date().toLocaleString('default', { month: 'long' });
|
|
303
300
|
if ($(obj).text() === newDay) {
|
|
304
301
|
if ($(obj).hasClass('selected')) {
|
|
305
302
|
$(obj).parent().attr('aria-selected', 'true');
|
|
@@ -736,13 +733,11 @@ class BaseDateTimeComponent extends BaseFormCustomComponent {
|
|
|
736
733
|
preventDefault = true;
|
|
737
734
|
}
|
|
738
735
|
}
|
|
739
|
-
else {
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
preventDefault = true;
|
|
745
|
-
}
|
|
736
|
+
else if (event.key === 'Enter' || event.key === 'Escape') {
|
|
737
|
+
elementScope.setIsTimeOpen(false);
|
|
738
|
+
this.focus();
|
|
739
|
+
stopPropogation = true;
|
|
740
|
+
preventDefault = true;
|
|
746
741
|
}
|
|
747
742
|
if (stopPropogation) {
|
|
748
743
|
event.stopPropagation();
|
|
@@ -849,7 +844,7 @@ class BaseDateTimeComponent extends BaseFormCustomComponent {
|
|
|
849
844
|
if (event.originalEvent) {
|
|
850
845
|
this.setFocusForDate(-1);
|
|
851
846
|
}
|
|
852
|
-
|
|
847
|
+
const prevMon = this.getMonth(this.activeDate, -1);
|
|
853
848
|
// const current = new Date();
|
|
854
849
|
// if(prevMon.date.getMonth()===current.getMonth() && prevMon.date.getFullYear()===current.getFullYear()) {
|
|
855
850
|
// this.hightlightToday(new Date());
|
|
@@ -874,7 +869,7 @@ class BaseDateTimeComponent extends BaseFormCustomComponent {
|
|
|
874
869
|
if (event.originalEvent) {
|
|
875
870
|
this.setFocusForDate(1);
|
|
876
871
|
}
|
|
877
|
-
|
|
872
|
+
const nextMon = this.getMonth(this.activeDate, 1);
|
|
878
873
|
// const current = new Date();
|
|
879
874
|
// if (nextMon.date.getMonth() === current.getMonth() && nextMon.date.getFullYear() === current.getFullYear()) {
|
|
880
875
|
// this.hightlightToday(current);
|
|
@@ -1056,10 +1051,10 @@ class BaseDateTimeComponent extends BaseFormCustomComponent {
|
|
|
1056
1051
|
});
|
|
1057
1052
|
}
|
|
1058
1053
|
}
|
|
1059
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.
|
|
1060
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.
|
|
1054
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0, type: BaseDateTimeComponent, deps: "invalid", target: i0.ɵɵFactoryTarget.Directive }); }
|
|
1055
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.21", type: BaseDateTimeComponent, isStandalone: true, viewQueries: [{ propertyName: "bsDropdown", first: true, predicate: BsDropdownDirective, descendants: true }, { propertyName: "bsTimePicker", first: true, predicate: TimepickerComponent, descendants: true }, { propertyName: "datetimepickerComponent", first: true, predicate: DateTimePickerComponent, descendants: true }], usesInheritance: true, ngImport: i0 }); }
|
|
1061
1056
|
}
|
|
1062
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.
|
|
1057
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.21", ngImport: i0, type: BaseDateTimeComponent, decorators: [{
|
|
1063
1058
|
type: Directive
|
|
1064
1059
|
}], ctorParameters: () => [{ type: i0.Injector }, { type: undefined }, { type: undefined, decorators: [{
|
|
1065
1060
|
type: Inject,
|