vc-create-dashboard 3.0.84 → 3.0.86
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/esm2022/lib/configurations.mjs +7 -0
- package/esm2022/lib/create-dashboard-container/categories/categories-config.mjs +2 -0
- package/esm2022/lib/create-dashboard-container/categories/categories.component.mjs +212 -0
- package/esm2022/lib/create-dashboard-container/configure-widgets/configure-widgets/configure-widgets.component.mjs +350 -0
- package/esm2022/lib/create-dashboard-container/configure-widgets/configure-widgets/widget.interface.mjs +2 -0
- package/esm2022/lib/create-dashboard-container/configure-widgets/configure-widgets.module.mjs +47 -0
- package/esm2022/lib/create-dashboard-container/constants/assets.constant.mjs +37 -0
- package/esm2022/lib/create-dashboard-container/create-dashboard-config.mjs +2 -0
- package/esm2022/lib/create-dashboard-container/create-dashboard.component.mjs +1601 -0
- package/esm2022/lib/create-dashboard-container/create-dashboard.module.mjs +127 -0
- package/esm2022/lib/create-dashboard-container/directives/directives.module.mjs +24 -0
- package/esm2022/lib/create-dashboard-container/directives/scroll-in-view.directive.mjs +36 -0
- package/esm2022/lib/create-dashboard-container/form-group/form-group.component.mjs +153 -0
- package/esm2022/lib/create-dashboard-container/frequency/frequency.component.mjs +309 -0
- package/esm2022/lib/create-dashboard-container/interfaces/widget-data-model.mjs +2 -0
- package/esm2022/lib/create-dashboard-container/pipes/filter.pipe.mjs +30 -0
- package/esm2022/lib/create-dashboard-container/pipes/search-program.pipe.mjs +37 -0
- package/esm2022/lib/create-dashboard-container/pipes/search.pipe.mjs +25 -0
- package/esm2022/lib/create-dashboard-container/pipes/text-count.pipe.mjs +18 -0
- package/esm2022/lib/create-dashboard-container/program-list/constant.mjs +31 -0
- package/esm2022/lib/create-dashboard-container/program-list/information-block/information-block.component.mjs +13 -0
- package/esm2022/lib/create-dashboard-container/program-list/interfaces/list-item.interface.mjs +2 -0
- package/esm2022/lib/create-dashboard-container/program-list/list-container/list-container.component.mjs +50 -0
- package/esm2022/lib/create-dashboard-container/program-list/pipes/check-selected-items.pipes.mjs +23 -0
- package/esm2022/lib/create-dashboard-container/program-list/program-list/program-list.component.mjs +294 -0
- package/esm2022/lib/create-dashboard-container/program-list/program-list.module.mjs +60 -0
- package/esm2022/lib/create-dashboard-container/program-list/services/list-utils.service.mjs +27 -0
- package/esm2022/lib/create-dashboard-container/program-list/services/program-list-api.service.mjs +28 -0
- package/esm2022/lib/create-dashboard-container/responsibility-center/responsibility-center.component.mjs +239 -0
- package/esm2022/lib/create-dashboard-container/risk-categories/risk-categories-config.mjs +2 -0
- package/esm2022/lib/create-dashboard-container/risk-categories/risk-categories.component.mjs +206 -0
- package/esm2022/lib/create-dashboard-container/services/configure-widgets.service.mjs +233 -0
- package/esm2022/lib/create-dashboard-container/services/create-dashboard.service.mjs +227 -0
- package/esm2022/lib/create-dashboard-container/services/pagination.service.mjs +28 -0
- package/esm2022/lib/create-dashboard-container/user-list/user-list.component.mjs +440 -0
- package/esm2022/lib/create-dashboard-container/user-list/user-list.config.mjs +2 -0
- package/esm2022/lib/create-dashboard-container/utils/dashboard-edit.utils.mjs +181 -0
- package/esm2022/lib/create-dashboard.service.mjs +14 -0
- package/esm2022/lib/ui-kit/dashboard-footer/dashboard-footer/dashboard-footer.component.mjs +52 -0
- package/esm2022/lib/ui-kit/dashboard-footer/dashboard-footer-config.mjs +2 -0
- package/esm2022/lib/ui-kit/dashboard-footer/dashboard-footer.module.mjs +32 -0
- package/esm2022/lib/ui-kit/dialog/dialog-config.mjs +7 -0
- package/esm2022/lib/ui-kit/dialog/dialog-injector.mjs +17 -0
- package/esm2022/lib/ui-kit/dialog/dialog-ref.mjs +11 -0
- package/esm2022/lib/ui-kit/dialog/dialog.component.mjs +96 -0
- package/esm2022/lib/ui-kit/dialog/dialog.module.mjs +20 -0
- package/esm2022/lib/ui-kit/dialog/dialog.service.mjs +56 -0
- package/esm2022/lib/ui-kit/dialog/insertion.directive.mjs +17 -0
- package/esm2022/lib/ui-kit/floating-bar/floating-bar.component.mjs +57 -0
- package/esm2022/lib/ui-kit/floating-bar/floating-bar.module.mjs +32 -0
- package/esm2022/lib/ui-kit/formgroup/click-outside.directive.mjs +30 -0
- package/esm2022/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.mjs +29 -0
- package/esm2022/lib/ui-kit/formgroup/cs-radio/cs-radio.component.mjs +34 -0
- package/esm2022/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.mjs +14 -0
- package/esm2022/lib/ui-kit/formgroup/cs-select/cs-select.component.mjs +119 -0
- package/esm2022/lib/ui-kit/formgroup/cs-switch/cs-switch.component.mjs +39 -0
- package/esm2022/lib/ui-kit/formgroup/formgroup.module.mjs +55 -0
- package/esm2022/lib/ui-kit/formgroup/pipes/pascal.pipe.mjs +19 -0
- package/esm2022/lib/ui-kit/formgroup/pipes/searchMultiSelect.pipe.mjs +24 -0
- package/esm2022/lib/ui-kit/loaders/loaders.module.mjs +24 -0
- package/esm2022/lib/ui-kit/loaders/table-loader/table-loader.component.mjs +18 -0
- package/esm2022/lib/ui-kit/no-data/no-data.component.mjs +47 -0
- package/esm2022/lib/ui-kit/no-data/no-data.module.mjs +18 -0
- package/esm2022/lib/ui-kit/pagination/pagination.component.mjs +130 -0
- package/esm2022/lib/ui-kit/pagination/pagination.module.mjs +18 -0
- package/esm2022/lib/ui-kit/popover/popover.component.mjs +129 -0
- package/esm2022/lib/ui-kit/popover/popover.directive.mjs +93 -0
- package/esm2022/lib/ui-kit/popover/popover.module.mjs +21 -0
- package/esm2022/lib/ui-kit/popover/popover.service.mjs +23 -0
- package/esm2022/lib/ui-kit/select/cs-option/cs-option.component.mjs +41 -0
- package/esm2022/lib/ui-kit/select/cs-select/cs-select.component.mjs +107 -0
- package/esm2022/lib/ui-kit/select/safe-html.pipe.mjs +21 -0
- package/esm2022/lib/ui-kit/select/select.module.mjs +21 -0
- package/esm2022/lib/ui-kit/services/cs-select.service.mjs +16 -0
- package/esm2022/lib/ui-kit/smiley-dialog/smiley-dialog.component.mjs +52 -0
- package/esm2022/lib/ui-kit/smiley-dialog/smiley-dialog.module.mjs +18 -0
- package/esm2022/lib/ui-kit/snack-bar/snack-bar/snack-bar.component.mjs +46 -0
- package/esm2022/lib/ui-kit/snack-bar/snack-bar.module.mjs +18 -0
- package/esm2022/lib/ui-kit/snack-bar/snack-bar.service.mjs +23 -0
- package/esm2022/lib/ui-kit/tooltip/tooltip.directive.mjs +168 -0
- package/esm2022/lib/ui-kit/tooltip/tooltip.module.mjs +18 -0
- package/esm2022/lib/ui-kit/v-loader/loader/loader.component.mjs +24 -0
- package/esm2022/lib/ui-kit/v-loader/loader-inline/loader-inline.component.mjs +24 -0
- package/esm2022/lib/ui-kit/v-loader/v-loader.module.mjs +19 -0
- package/esm2022/public-api.mjs +10 -0
- package/esm2022/vc-create-dashboard.mjs +5 -0
- package/fesm2022/vc-create-dashboard.mjs +6631 -0
- package/fesm2022/vc-create-dashboard.mjs.map +1 -0
- package/index.d.ts +5 -0
- package/lib/configurations.d.ts +4 -0
- package/lib/create-dashboard-container/categories/categories-config.d.ts +18 -0
- package/lib/create-dashboard-container/categories/categories.component.d.ts +66 -0
- package/lib/create-dashboard-container/configure-widgets/configure-widgets/configure-widgets.component.d.ts +113 -0
- package/lib/create-dashboard-container/configure-widgets/configure-widgets/widget.interface.d.ts +9 -0
- package/lib/create-dashboard-container/configure-widgets/configure-widgets.module.d.ts +14 -0
- package/lib/create-dashboard-container/constants/assets.constant.d.ts +35 -0
- package/lib/create-dashboard-container/create-dashboard-config.d.ts +18 -0
- package/lib/create-dashboard-container/create-dashboard.component.d.ts +219 -0
- package/lib/create-dashboard-container/create-dashboard.module.d.ts +37 -0
- package/lib/create-dashboard-container/directives/directives.module.d.ts +8 -0
- package/lib/create-dashboard-container/directives/scroll-in-view.directive.d.ts +12 -0
- package/lib/create-dashboard-container/form-group/form-group.component.d.ts +48 -0
- package/lib/create-dashboard-container/frequency/frequency.component.d.ts +39 -0
- package/{src/lib/create-dashboard-container/interfaces/widget-data-model.ts → lib/create-dashboard-container/interfaces/widget-data-model.d.ts} +1 -1
- package/lib/create-dashboard-container/pipes/filter.pipe.d.ts +7 -0
- package/lib/create-dashboard-container/pipes/search-program.pipe.d.ts +7 -0
- package/lib/create-dashboard-container/pipes/search.pipe.d.ts +7 -0
- package/lib/create-dashboard-container/pipes/text-count.pipe.d.ts +7 -0
- package/lib/create-dashboard-container/program-list/constant.d.ts +24 -0
- package/lib/create-dashboard-container/program-list/information-block/information-block.component.d.ts +6 -0
- package/lib/create-dashboard-container/program-list/interfaces/list-item.interface.d.ts +5 -0
- package/lib/create-dashboard-container/program-list/list-container/list-container.component.d.ts +9 -0
- package/lib/create-dashboard-container/program-list/pipes/check-selected-items.pipes.d.ts +7 -0
- package/lib/create-dashboard-container/program-list/program-list/program-list.component.d.ts +119 -0
- package/lib/create-dashboard-container/program-list/program-list.module.d.ts +17 -0
- package/lib/create-dashboard-container/program-list/services/list-utils.service.d.ts +7 -0
- package/lib/create-dashboard-container/program-list/services/program-list-api.service.d.ts +12 -0
- package/lib/create-dashboard-container/responsibility-center/responsibility-center.component.d.ts +72 -0
- package/lib/create-dashboard-container/risk-categories/risk-categories-config.d.ts +18 -0
- package/lib/create-dashboard-container/risk-categories/risk-categories.component.d.ts +66 -0
- package/lib/create-dashboard-container/services/configure-widgets.service.d.ts +21 -0
- package/lib/create-dashboard-container/services/create-dashboard.service.d.ts +80 -0
- package/lib/create-dashboard-container/services/pagination.service.d.ts +12 -0
- package/lib/create-dashboard-container/user-list/user-list.component.d.ts +123 -0
- package/{src/lib/create-dashboard-container/user-list/user-list.config.ts → lib/create-dashboard-container/user-list/user-list.config.d.ts} +6 -6
- package/lib/create-dashboard-container/utils/dashboard-edit.utils.d.ts +16 -0
- package/lib/create-dashboard.service.d.ts +6 -0
- package/lib/ui-kit/dashboard-footer/dashboard-footer/dashboard-footer.component.d.ts +17 -0
- package/lib/ui-kit/dashboard-footer/dashboard-footer-config.d.ts +11 -0
- package/lib/ui-kit/dashboard-footer/dashboard-footer.module.d.ts +10 -0
- package/lib/ui-kit/dialog/dialog-config.d.ts +6 -0
- package/lib/ui-kit/dialog/dialog-injector.d.ts +7 -0
- package/lib/ui-kit/dialog/dialog-ref.d.ts +7 -0
- package/lib/ui-kit/dialog/dialog.component.d.ts +33 -0
- package/lib/ui-kit/dialog/dialog.module.d.ts +9 -0
- package/lib/ui-kit/dialog/dialog.service.d.ts +17 -0
- package/lib/ui-kit/dialog/insertion.directive.d.ts +8 -0
- package/lib/ui-kit/floating-bar/floating-bar.component.d.ts +20 -0
- package/lib/ui-kit/floating-bar/floating-bar.module.d.ts +10 -0
- package/lib/ui-kit/formgroup/click-outside.directive.d.ts +10 -0
- package/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.d.ts +13 -0
- package/lib/ui-kit/formgroup/cs-radio/cs-radio.component.d.ts +15 -0
- package/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.d.ts +8 -0
- package/lib/ui-kit/formgroup/cs-select/cs-select.component.d.ts +36 -0
- package/lib/ui-kit/formgroup/cs-switch/cs-switch.component.d.ts +15 -0
- package/lib/ui-kit/formgroup/formgroup.module.d.ts +17 -0
- package/lib/ui-kit/formgroup/pipes/pascal.pipe.d.ts +7 -0
- package/lib/ui-kit/formgroup/pipes/searchMultiSelect.pipe.d.ts +7 -0
- package/lib/ui-kit/loaders/loaders.module.d.ts +8 -0
- package/lib/ui-kit/loaders/table-loader/table-loader.component.d.ts +9 -0
- package/lib/ui-kit/no-data/no-data.component.d.ts +19 -0
- package/lib/ui-kit/no-data/no-data.module.d.ts +8 -0
- package/lib/ui-kit/pagination/pagination.component.d.ts +21 -0
- package/lib/ui-kit/pagination/pagination.module.d.ts +8 -0
- package/lib/ui-kit/popover/popover.component.d.ts +28 -0
- package/lib/ui-kit/popover/popover.directive.d.ts +17 -0
- package/lib/ui-kit/popover/popover.module.d.ts +9 -0
- package/lib/ui-kit/popover/popover.service.d.ts +13 -0
- package/lib/ui-kit/select/cs-option/cs-option.component.d.ts +16 -0
- package/lib/ui-kit/select/cs-select/cs-select.component.d.ts +32 -0
- package/lib/ui-kit/select/safe-html.pipe.d.ts +10 -0
- package/lib/ui-kit/select/select.module.d.ts +11 -0
- package/lib/ui-kit/services/cs-select.service.d.ts +7 -0
- package/lib/ui-kit/smiley-dialog/smiley-dialog.component.d.ts +17 -0
- package/lib/ui-kit/smiley-dialog/smiley-dialog.module.d.ts +8 -0
- package/lib/ui-kit/snack-bar/snack-bar/snack-bar.component.d.ts +17 -0
- package/lib/ui-kit/snack-bar/snack-bar.module.d.ts +8 -0
- package/lib/ui-kit/snack-bar/snack-bar.service.d.ts +9 -0
- package/lib/ui-kit/tooltip/tooltip.directive.d.ts +28 -0
- package/lib/ui-kit/tooltip/tooltip.module.d.ts +8 -0
- package/lib/ui-kit/v-loader/loader/loader.component.d.ts +11 -0
- package/lib/ui-kit/v-loader/loader-inline/loader-inline.component.d.ts +11 -0
- package/lib/ui-kit/v-loader/v-loader.module.d.ts +9 -0
- package/package.json +25 -11
- package/public-api.d.ts +3 -0
- package/karma.conf.js +0 -44
- package/ng-package.json +0 -7
- package/src/lib/categoryList.ts +0 -23
- package/src/lib/configurations.ts +0 -8
- package/src/lib/create-dashboard-container/categories/categories-config.ts +0 -18
- package/src/lib/create-dashboard-container/categories/categories.component.html +0 -150
- package/src/lib/create-dashboard-container/categories/categories.component.less +0 -252
- package/src/lib/create-dashboard-container/categories/categories.component.spec.ts +0 -43
- package/src/lib/create-dashboard-container/categories/categories.component.ts +0 -220
- package/src/lib/create-dashboard-container/configure-widgets/configure-widgets/configure-widgets.component.html +0 -141
- package/src/lib/create-dashboard-container/configure-widgets/configure-widgets/configure-widgets.component.less +0 -381
- package/src/lib/create-dashboard-container/configure-widgets/configure-widgets/configure-widgets.component.spec.ts +0 -48
- package/src/lib/create-dashboard-container/configure-widgets/configure-widgets/configure-widgets.component.ts +0 -392
- package/src/lib/create-dashboard-container/configure-widgets/configure-widgets/widget.interface.ts +0 -9
- package/src/lib/create-dashboard-container/configure-widgets/configure-widgets.module.ts +0 -30
- package/src/lib/create-dashboard-container/constants/assets.constant.ts +0 -37
- package/src/lib/create-dashboard-container/create-dashboard-config.ts +0 -24
- package/src/lib/create-dashboard-container/create-dashboard-mockData.ts +0 -341
- package/src/lib/create-dashboard-container/create-dashboard.component.html +0 -660
- package/src/lib/create-dashboard-container/create-dashboard.component.less +0 -1579
- package/src/lib/create-dashboard-container/create-dashboard.component.ts +0 -1886
- package/src/lib/create-dashboard-container/create-dashboard.module.ts +0 -76
- package/src/lib/create-dashboard-container/directives/directives.module.ts +0 -18
- package/src/lib/create-dashboard-container/directives/scroll-in-view.directive.ts +0 -28
- package/src/lib/create-dashboard-container/form-group/form-group.component.html +0 -288
- package/src/lib/create-dashboard-container/form-group/form-group.component.less +0 -450
- package/src/lib/create-dashboard-container/form-group/form-group.component.spec.ts +0 -90
- package/src/lib/create-dashboard-container/form-group/form-group.component.ts +0 -163
- package/src/lib/create-dashboard-container/frequency/frequency.component.html +0 -61
- package/src/lib/create-dashboard-container/frequency/frequency.component.less +0 -183
- package/src/lib/create-dashboard-container/frequency/frequency.component.spec.ts +0 -120
- package/src/lib/create-dashboard-container/frequency/frequency.component.ts +0 -303
- package/src/lib/create-dashboard-container/pipes/filter.pipe.ts +0 -25
- package/src/lib/create-dashboard-container/pipes/search-program.pipe.ts +0 -31
- package/src/lib/create-dashboard-container/pipes/search.pipe.ts +0 -23
- package/src/lib/create-dashboard-container/pipes/text-count.pipe.spec.ts +0 -8
- package/src/lib/create-dashboard-container/pipes/text-count.pipe.ts +0 -14
- package/src/lib/create-dashboard-container/program-list/constant.ts +0 -36
- package/src/lib/create-dashboard-container/program-list/information-block/information-block.component.html +0 -9
- package/src/lib/create-dashboard-container/program-list/information-block/information-block.component.less +0 -63
- package/src/lib/create-dashboard-container/program-list/information-block/information-block.component.ts +0 -15
- package/src/lib/create-dashboard-container/program-list/interfaces/data-source.interface.ts +0 -6
- package/src/lib/create-dashboard-container/program-list/interfaces/list-item.interface.ts +0 -8
- package/src/lib/create-dashboard-container/program-list/interfaces/selection-predicate.interface.ts +0 -4
- package/src/lib/create-dashboard-container/program-list/list-container/list-container.component.less +0 -57
- package/src/lib/create-dashboard-container/program-list/list-container/list-container.component.ts +0 -30
- package/src/lib/create-dashboard-container/program-list/pipes/check-selected-items.pipes.ts +0 -19
- package/src/lib/create-dashboard-container/program-list/program-list/program-list.component.html +0 -158
- package/src/lib/create-dashboard-container/program-list/program-list/program-list.component.less +0 -679
- package/src/lib/create-dashboard-container/program-list/program-list/program-list.component.ts +0 -342
- package/src/lib/create-dashboard-container/program-list/program-list.module.ts +0 -36
- package/src/lib/create-dashboard-container/program-list/services/list-utils.service.ts +0 -22
- package/src/lib/create-dashboard-container/program-list/services/program-list-api.service.ts +0 -24
- package/src/lib/create-dashboard-container/responsibility-center/responsibility-center.component.html +0 -70
- package/src/lib/create-dashboard-container/responsibility-center/responsibility-center.component.less +0 -181
- package/src/lib/create-dashboard-container/responsibility-center/responsibility-center.component.spec.ts +0 -41
- package/src/lib/create-dashboard-container/responsibility-center/responsibility-center.component.ts +0 -154
- package/src/lib/create-dashboard-container/risk-categories/risk-categories-config.ts +0 -18
- package/src/lib/create-dashboard-container/risk-categories/risk-categories.component.html +0 -152
- package/src/lib/create-dashboard-container/risk-categories/risk-categories.component.less +0 -230
- package/src/lib/create-dashboard-container/risk-categories/risk-categories.component.spec.ts +0 -39
- package/src/lib/create-dashboard-container/risk-categories/risk-categories.component.ts +0 -209
- package/src/lib/create-dashboard-container/services/auth.service.ts +0 -27
- package/src/lib/create-dashboard-container/services/configure-widgets.service.spec.ts +0 -19
- package/src/lib/create-dashboard-container/services/configure-widgets.service.ts +0 -235
- package/src/lib/create-dashboard-container/services/create-dashboard.service.spec.ts +0 -19
- package/src/lib/create-dashboard-container/services/create-dashboard.service.ts +0 -287
- package/src/lib/create-dashboard-container/services/pagination.service.spec.ts +0 -16
- package/src/lib/create-dashboard-container/services/pagination.service.ts +0 -25
- package/src/lib/create-dashboard-container/services/urlConfig.service.ts +0 -21
- package/src/lib/create-dashboard-container/user-list/user-list.component.html +0 -358
- package/src/lib/create-dashboard-container/user-list/user-list.component.less +0 -451
- package/src/lib/create-dashboard-container/user-list/user-list.component.spec.ts +0 -153
- package/src/lib/create-dashboard-container/user-list/user-list.component.ts +0 -472
- package/src/lib/create-dashboard-container/utils/dashboard-edit.utils.ts +0 -235
- package/src/lib/create-dashboard.service.ts +0 -8
- package/src/lib/ui-kit/action-dialog/access-capability/access-capability.component.html +0 -22
- package/src/lib/ui-kit/action-dialog/access-capability/access-capability.component.less +0 -218
- package/src/lib/ui-kit/action-dialog/access-capability/access-capability.component.ts +0 -30
- package/src/lib/ui-kit/action-dialog/action-dialog.module.ts +0 -53
- package/src/lib/ui-kit/action-dialog/active/active.component.html +0 -25
- package/src/lib/ui-kit/action-dialog/active/active.component.less +0 -168
- package/src/lib/ui-kit/action-dialog/active/active.component.ts +0 -31
- package/src/lib/ui-kit/action-dialog/assesment-confirmation/assesment-confirmation.component.html +0 -18
- package/src/lib/ui-kit/action-dialog/assesment-confirmation/assesment-confirmation.component.less +0 -98
- package/src/lib/ui-kit/action-dialog/assesment-confirmation/assesment-confirmation.component.ts +0 -18
- package/src/lib/ui-kit/action-dialog/confirmation/confirmation.component.html +0 -20
- package/src/lib/ui-kit/action-dialog/confirmation/confirmation.component.less +0 -325
- package/src/lib/ui-kit/action-dialog/confirmation/confirmation.component.ts +0 -26
- package/src/lib/ui-kit/action-dialog/delete/delete.component.html +0 -24
- package/src/lib/ui-kit/action-dialog/delete/delete.component.less +0 -240
- package/src/lib/ui-kit/action-dialog/delete/delete.component.ts +0 -22
- package/src/lib/ui-kit/action-dialog/error/error.component.html +0 -20
- package/src/lib/ui-kit/action-dialog/error/error.component.less +0 -103
- package/src/lib/ui-kit/action-dialog/error/error.component.ts +0 -18
- package/src/lib/ui-kit/action-dialog/inactive/inactive.component.html +0 -25
- package/src/lib/ui-kit/action-dialog/inactive/inactive.component.less +0 -167
- package/src/lib/ui-kit/action-dialog/inactive/inactive.component.ts +0 -29
- package/src/lib/ui-kit/action-dialog/link/link.component.html +0 -57
- package/src/lib/ui-kit/action-dialog/link/link.component.less +0 -222
- package/src/lib/ui-kit/action-dialog/link/link.component.ts +0 -18
- package/src/lib/ui-kit/action-dialog/move/move.component.html +0 -43
- package/src/lib/ui-kit/action-dialog/move/move.component.less +0 -157
- package/src/lib/ui-kit/action-dialog/move/move.component.ts +0 -25
- package/src/lib/ui-kit/action-dialog/my-rating/my-rating.component.html +0 -19
- package/src/lib/ui-kit/action-dialog/my-rating/my-rating.component.less +0 -97
- package/src/lib/ui-kit/action-dialog/my-rating/my-rating.component.ts +0 -18
- package/src/lib/ui-kit/action-dialog/upload/upload.component.html +0 -19
- package/src/lib/ui-kit/action-dialog/upload/upload.component.less +0 -97
- package/src/lib/ui-kit/action-dialog/upload/upload.component.ts +0 -12
- package/src/lib/ui-kit/chart/bar/bar.component.html +0 -28
- package/src/lib/ui-kit/chart/bar/bar.component.less +0 -13
- package/src/lib/ui-kit/chart/bar/bar.component.ts +0 -44
- package/src/lib/ui-kit/chart/chart.module.ts +0 -12
- package/src/lib/ui-kit/chart/pipes/segmenter.pipe.ts +0 -28
- package/src/lib/ui-kit/chart/pipes/x-calculator.pipe.ts +0 -22
- package/src/lib/ui-kit/circle-progresss/circle/circle.component.html +0 -37
- package/src/lib/ui-kit/circle-progresss/circle/circle.component.less +0 -1448
- package/src/lib/ui-kit/circle-progresss/circle/circle.component.ts +0 -19
- package/src/lib/ui-kit/circle-progresss/circle-progresss.module.ts +0 -10
- package/src/lib/ui-kit/click-outside/click-outside.directive.ts +0 -16
- package/src/lib/ui-kit/click-outside/click-outside.module.ts +0 -16
- package/src/lib/ui-kit/color-palette/color-palette.component.html +0 -110
- package/src/lib/ui-kit/color-palette/color-palette.component.less +0 -54
- package/src/lib/ui-kit/color-palette/color-palette.component.ts +0 -28
- package/src/lib/ui-kit/color-palette/color-palette.module.ts +0 -10
- package/src/lib/ui-kit/dashboard-footer/dashboard-footer/dashboard-footer.component.html +0 -37
- package/src/lib/ui-kit/dashboard-footer/dashboard-footer/dashboard-footer.component.less +0 -335
- package/src/lib/ui-kit/dashboard-footer/dashboard-footer/dashboard-footer.component.spec.ts +0 -25
- package/src/lib/ui-kit/dashboard-footer/dashboard-footer/dashboard-footer.component.ts +0 -44
- package/src/lib/ui-kit/dashboard-footer/dashboard-footer-config.ts +0 -11
- package/src/lib/ui-kit/dashboard-footer/dashboard-footer.module.ts +0 -22
- package/src/lib/ui-kit/dialog/dialog-config.ts +0 -6
- package/src/lib/ui-kit/dialog/dialog-injector.ts +0 -18
- package/src/lib/ui-kit/dialog/dialog-ref.ts +0 -12
- package/src/lib/ui-kit/dialog/dialog.component.css +0 -89
- package/src/lib/ui-kit/dialog/dialog.component.html +0 -27
- package/src/lib/ui-kit/dialog/dialog.component.ts +0 -112
- package/src/lib/ui-kit/dialog/dialog.module.ts +0 -11
- package/src/lib/ui-kit/dialog/dialog.service.ts +0 -57
- package/src/lib/ui-kit/dialog/insertion.directive.ts +0 -8
- package/src/lib/ui-kit/floating-bar/floating-bar.component.html +0 -42
- package/src/lib/ui-kit/floating-bar/floating-bar.component.less +0 -355
- package/src/lib/ui-kit/floating-bar/floating-bar.component.spec.ts +0 -25
- package/src/lib/ui-kit/floating-bar/floating-bar.component.ts +0 -40
- package/src/lib/ui-kit/floating-bar/floating-bar.module.ts +0 -22
- package/src/lib/ui-kit/formgroup/click-outside.directive.ts +0 -16
- package/src/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.html +0 -11
- package/src/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.less +0 -102
- package/src/lib/ui-kit/formgroup/cs-checkbox/cs-checkbox.component.ts +0 -19
- package/src/lib/ui-kit/formgroup/cs-radio/cs-radio.component.html +0 -11
- package/src/lib/ui-kit/formgroup/cs-radio/cs-radio.component.less +0 -125
- package/src/lib/ui-kit/formgroup/cs-radio/cs-radio.component.ts +0 -21
- package/src/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.html +0 -4
- package/src/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.less +0 -0
- package/src/lib/ui-kit/formgroup/cs-radio-group/cs-radio-group.component.ts +0 -12
- package/src/lib/ui-kit/formgroup/cs-select/cs-select.component.html +0 -78
- package/src/lib/ui-kit/formgroup/cs-select/cs-select.component.less +0 -259
- package/src/lib/ui-kit/formgroup/cs-select/cs-select.component.ts +0 -92
- package/src/lib/ui-kit/formgroup/cs-switch/cs-switch.component.html +0 -30
- package/src/lib/ui-kit/formgroup/cs-switch/cs-switch.component.less +0 -103
- package/src/lib/ui-kit/formgroup/cs-switch/cs-switch.component.ts +0 -23
- package/src/lib/ui-kit/formgroup/formgroup.module.ts +0 -35
- package/src/lib/ui-kit/formgroup/pipes/pascal.pipe.ts +0 -13
- package/src/lib/ui-kit/formgroup/pipes/searchMultiSelect.pipe.ts +0 -18
- package/src/lib/ui-kit/line-loader/line-loader.component.html +0 -3
- package/src/lib/ui-kit/line-loader/line-loader.component.less +0 -34
- package/src/lib/ui-kit/line-loader/line-loader.component.ts +0 -14
- package/src/lib/ui-kit/line-loader/line-loader.module.ts +0 -10
- package/src/lib/ui-kit/loaders/loaders.module.ts +0 -18
- package/src/lib/ui-kit/loaders/table-loader/table-loader.component.html +0 -17
- package/src/lib/ui-kit/loaders/table-loader/table-loader.component.less +0 -136
- package/src/lib/ui-kit/loaders/table-loader/table-loader.component.ts +0 -17
- package/src/lib/ui-kit/longpress/longpress.directive.ts +0 -28
- package/src/lib/ui-kit/longpress/longpress.module.ts +0 -10
- package/src/lib/ui-kit/multi-select/cs-multiselect/cs-multiselect.component.html +0 -51
- package/src/lib/ui-kit/multi-select/cs-multiselect/cs-multiselect.component.less +0 -367
- package/src/lib/ui-kit/multi-select/cs-multiselect/cs-multiselect.component.spec.ts +0 -24
- package/src/lib/ui-kit/multi-select/cs-multiselect/cs-multiselect.component.ts +0 -141
- package/src/lib/ui-kit/multi-select/cs-multiselect-option/cs-multiselect-option.component.html +0 -9
- package/src/lib/ui-kit/multi-select/cs-multiselect-option/cs-multiselect-option.component.less +0 -105
- package/src/lib/ui-kit/multi-select/cs-multiselect-option/cs-multiselect-option.component.spec.ts +0 -27
- package/src/lib/ui-kit/multi-select/cs-multiselect-option/cs-multiselect-option.component.ts +0 -24
- package/src/lib/ui-kit/multi-select/multi-select.module.ts +0 -24
- package/src/lib/ui-kit/multi-select/multi-select.service.ts +0 -10
- package/src/lib/ui-kit/no-data/no-data.component.html +0 -14
- package/src/lib/ui-kit/no-data/no-data.component.less +0 -86
- package/src/lib/ui-kit/no-data/no-data.component.ts +0 -26
- package/src/lib/ui-kit/no-data/no-data.module.ts +0 -10
- package/src/lib/ui-kit/pagination/pagination.component.html +0 -11
- package/src/lib/ui-kit/pagination/pagination.component.less +0 -72
- package/src/lib/ui-kit/pagination/pagination.component.spec.ts +0 -25
- package/src/lib/ui-kit/pagination/pagination.component.ts +0 -138
- package/src/lib/ui-kit/pagination/pagination.module.ts +0 -10
- package/src/lib/ui-kit/pipes/pipes.module.ts +0 -10
- package/src/lib/ui-kit/pipes/safeHTML.pipe.ts +0 -12
- package/src/lib/ui-kit/pipes/trim.pipe.ts +0 -10
- package/src/lib/ui-kit/popover/popover.component.html +0 -6
- package/src/lib/ui-kit/popover/popover.component.less +0 -20
- package/src/lib/ui-kit/popover/popover.component.ts +0 -127
- package/src/lib/ui-kit/popover/popover.directive.ts +0 -72
- package/src/lib/ui-kit/popover/popover.module.ts +0 -13
- package/src/lib/ui-kit/popover/popover.service.ts +0 -17
- package/src/lib/ui-kit/ripple/ripple.directive.ts +0 -36
- package/src/lib/ui-kit/ripple/ripple.module.ts +0 -10
- package/src/lib/ui-kit/select/cs-option/cs-option.component.html +0 -8
- package/src/lib/ui-kit/select/cs-option/cs-option.component.less +0 -49
- package/src/lib/ui-kit/select/cs-option/cs-option.component.ts +0 -31
- package/src/lib/ui-kit/select/cs-select/cs-select.component.html +0 -16
- package/src/lib/ui-kit/select/cs-select/cs-select.component.less +0 -142
- package/src/lib/ui-kit/select/cs-select/cs-select.component.ts +0 -98
- package/src/lib/ui-kit/select/safe-html.pipe.ts +0 -13
- package/src/lib/ui-kit/select/select.module.ts +0 -13
- package/src/lib/ui-kit/services/cs-select.service.ts +0 -10
- package/src/lib/ui-kit/smiley-dialog/smiley-dialog.component.html +0 -30
- package/src/lib/ui-kit/smiley-dialog/smiley-dialog.component.less +0 -442
- package/src/lib/ui-kit/smiley-dialog/smiley-dialog.component.ts +0 -40
- package/src/lib/ui-kit/smiley-dialog/smiley-dialog.module.ts +0 -11
- package/src/lib/ui-kit/snack-bar/snack-bar/snack-bar.component.html +0 -10
- package/src/lib/ui-kit/snack-bar/snack-bar/snack-bar.component.less +0 -110
- package/src/lib/ui-kit/snack-bar/snack-bar/snack-bar.component.ts +0 -42
- package/src/lib/ui-kit/snack-bar/snack-bar.module.ts +0 -10
- package/src/lib/ui-kit/snack-bar/snack-bar.service.ts +0 -18
- package/src/lib/ui-kit/time-filter/time-filter.component.html +0 -126
- package/src/lib/ui-kit/time-filter/time-filter.component.less +0 -482
- package/src/lib/ui-kit/time-filter/time-filter.component.ts +0 -284
- package/src/lib/ui-kit/time-filter/time-filter.module.ts +0 -10
- package/src/lib/ui-kit/tooltip/tooltip.directive.ts +0 -150
- package/src/lib/ui-kit/tooltip/tooltip.module.ts +0 -10
- package/src/lib/ui-kit/v-loader/loader/loader.component.html +0 -6
- package/src/lib/ui-kit/v-loader/loader/loader.component.less +0 -52
- package/src/lib/ui-kit/v-loader/loader/loader.component.ts +0 -22
- package/src/lib/ui-kit/v-loader/loader-inline/loader-inline.component.html +0 -6
- package/src/lib/ui-kit/v-loader/loader-inline/loader-inline.component.less +0 -52
- package/src/lib/ui-kit/v-loader/loader-inline/loader-inline.component.ts +0 -22
- package/src/lib/ui-kit/v-loader/v-loader.module.ts +0 -11
- package/src/public-api.ts +0 -11
- package/src/test.ts +0 -28
- package/tsconfig.lib.json +0 -20
- package/tsconfig.lib.prod.json +0 -10
- package/tsconfig.spec.json +0 -17
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "./popover.service";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
export class PopoverComponent {
|
|
6
|
+
popoverService;
|
|
7
|
+
dontCloseonClick = false;
|
|
8
|
+
popoverContainer = false;
|
|
9
|
+
popoverRatio;
|
|
10
|
+
popoverContent;
|
|
11
|
+
closedOnOverlay = new EventEmitter();
|
|
12
|
+
constructor(popoverService) {
|
|
13
|
+
this.popoverService = popoverService;
|
|
14
|
+
}
|
|
15
|
+
showPopover = false;
|
|
16
|
+
leftValue;
|
|
17
|
+
topValue;
|
|
18
|
+
popoverHeight;
|
|
19
|
+
popoverWidth;
|
|
20
|
+
positionX;
|
|
21
|
+
positionY;
|
|
22
|
+
ngOnInit() { }
|
|
23
|
+
popover() {
|
|
24
|
+
this.popoverContainer = false;
|
|
25
|
+
this.popoverContainer = true;
|
|
26
|
+
setTimeout(() => {
|
|
27
|
+
this.getPosition();
|
|
28
|
+
this.showPopover = true;
|
|
29
|
+
this.popoverService.stopScroll = true;
|
|
30
|
+
// document.body.style.overflow = 'hidden';
|
|
31
|
+
}, 10);
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
popoverEvent() {
|
|
35
|
+
this.popoverContainer = false;
|
|
36
|
+
this.popoverContainer = true;
|
|
37
|
+
setTimeout(() => {
|
|
38
|
+
// this.getPosition();
|
|
39
|
+
this.positionX = this.popoverService.positionX;
|
|
40
|
+
this.positionY = this.popoverService.positionY;
|
|
41
|
+
this.showPopover = true;
|
|
42
|
+
this.popoverService.stopScroll = true;
|
|
43
|
+
}, 10);
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
closePopover(top) {
|
|
47
|
+
if (!this.dontCloseonClick || top === 'top') {
|
|
48
|
+
this.popoverContainer = false;
|
|
49
|
+
this.showPopover = false;
|
|
50
|
+
this.popoverService.stopScroll = false;
|
|
51
|
+
// document.body.style.overflow = 'auto';
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
close() {
|
|
55
|
+
this.popoverContainer = false;
|
|
56
|
+
this.showPopover = false;
|
|
57
|
+
this.popoverService.stopScroll = false;
|
|
58
|
+
}
|
|
59
|
+
clickedPopover() {
|
|
60
|
+
this.getPosition();
|
|
61
|
+
}
|
|
62
|
+
getPosition() {
|
|
63
|
+
const elementPosition = this.popoverService?.elementPosition;
|
|
64
|
+
const direction = this.popoverService?.elementDirection;
|
|
65
|
+
if (!this.popoverRatio?.nativeElement) {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
this.popoverHeight = this.popoverRatio.nativeElement.offsetHeight;
|
|
69
|
+
this.popoverWidth = this.popoverRatio.nativeElement.offsetWidth;
|
|
70
|
+
const overflowsBottom = elementPosition.top + elementPosition.height + this.popoverHeight > window.outerHeight - 200;
|
|
71
|
+
switch (direction) {
|
|
72
|
+
case 'left':
|
|
73
|
+
this.leftValue = elementPosition.left;
|
|
74
|
+
this.topValue = overflowsBottom
|
|
75
|
+
? elementPosition.top - this.popoverHeight
|
|
76
|
+
: elementPosition.top + elementPosition.height;
|
|
77
|
+
break;
|
|
78
|
+
case 'right':
|
|
79
|
+
this.leftValue = elementPosition.left + elementPosition.width - this.popoverWidth;
|
|
80
|
+
this.topValue = overflowsBottom
|
|
81
|
+
? elementPosition.top - this.popoverHeight
|
|
82
|
+
: elementPosition.top + elementPosition.height;
|
|
83
|
+
break;
|
|
84
|
+
case 'top':
|
|
85
|
+
this.leftValue = elementPosition.left + elementPosition.width;
|
|
86
|
+
this.topValue = elementPosition.top - this.popoverHeight;
|
|
87
|
+
break;
|
|
88
|
+
case 'bottom':
|
|
89
|
+
this.leftValue = elementPosition.left + elementPosition.width;
|
|
90
|
+
this.topValue = overflowsBottom
|
|
91
|
+
? elementPosition.top - this.popoverHeight
|
|
92
|
+
: elementPosition.top + elementPosition.height;
|
|
93
|
+
break;
|
|
94
|
+
case 'self-position':
|
|
95
|
+
this.leftValue = elementPosition.left + elementPosition.width / 2 - this.popoverWidth / 2;
|
|
96
|
+
this.topValue = elementPosition.top - 15;
|
|
97
|
+
break;
|
|
98
|
+
case 'top-center':
|
|
99
|
+
this.leftValue = elementPosition.left + elementPosition.width / 2 - this.popoverWidth / 2;
|
|
100
|
+
this.topValue = (elementPosition.top + elementPosition.height + this.popoverHeight > window.outerHeight)
|
|
101
|
+
? elementPosition.top + elementPosition.height
|
|
102
|
+
: elementPosition.top - this.popoverHeight;
|
|
103
|
+
break;
|
|
104
|
+
case 'center':
|
|
105
|
+
this.leftValue = elementPosition.left + elementPosition.width / 2 - this.popoverWidth / 2;
|
|
106
|
+
this.topValue = elementPosition.top + elementPosition.height;
|
|
107
|
+
break;
|
|
108
|
+
}
|
|
109
|
+
this.positionX = this.leftValue;
|
|
110
|
+
this.positionY = this.topValue;
|
|
111
|
+
}
|
|
112
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PopoverComponent, deps: [{ token: i1.PopoverService }], target: i0.ɵɵFactoryTarget.Component });
|
|
113
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PopoverComponent, selector: "app-popover", inputs: { dontCloseonClick: "dontCloseonClick" }, outputs: { closedOnOverlay: "closedOnOverlay" }, viewQueries: [{ propertyName: "popoverRatio", first: true, predicate: ["popoverRatio"], descendants: true }, { propertyName: "popoverContent", first: true, predicate: ["popoverContent"], descendants: true }], ngImport: i0, template: "<div class=\"popover-overlay\" *ngIf=\"popoverContainer\" (click)=\"closePopover('top');this.closedOnOverlay.emit();\"></div>\r\n<div class=\"action\" [class.active]=\"showPopover\" *ngIf=\"popoverContainer\" [style.top.px]=\"positionY\" [style.left.px]=\"positionX\" #popoverRatio id=\"popoverRatio\">\r\n <div (click)=\"closePopover(); clickedPopover()\" #popoverContent>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".action{position:fixed;z-index:13;display:inline-block;opacity:0}.action.active{opacity:1}.popover-overlay{z-index:12;cursor:initial;position:fixed;inset:0}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
114
|
+
}
|
|
115
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PopoverComponent, decorators: [{
|
|
116
|
+
type: Component,
|
|
117
|
+
args: [{ selector: 'app-popover', template: "<div class=\"popover-overlay\" *ngIf=\"popoverContainer\" (click)=\"closePopover('top');this.closedOnOverlay.emit();\"></div>\r\n<div class=\"action\" [class.active]=\"showPopover\" *ngIf=\"popoverContainer\" [style.top.px]=\"positionY\" [style.left.px]=\"positionX\" #popoverRatio id=\"popoverRatio\">\r\n <div (click)=\"closePopover(); clickedPopover()\" #popoverContent>\r\n <ng-content></ng-content>\r\n </div>\r\n</div>\r\n", styles: [".action{position:fixed;z-index:13;display:inline-block;opacity:0}.action.active{opacity:1}.popover-overlay{z-index:12;cursor:initial;position:fixed;inset:0}\n"] }]
|
|
118
|
+
}], ctorParameters: function () { return [{ type: i1.PopoverService }]; }, propDecorators: { dontCloseonClick: [{
|
|
119
|
+
type: Input
|
|
120
|
+
}], popoverRatio: [{
|
|
121
|
+
type: ViewChild,
|
|
122
|
+
args: ['popoverRatio']
|
|
123
|
+
}], popoverContent: [{
|
|
124
|
+
type: ViewChild,
|
|
125
|
+
args: ['popoverContent']
|
|
126
|
+
}], closedOnOverlay: [{
|
|
127
|
+
type: Output
|
|
128
|
+
}] } });
|
|
129
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcmVhdGUtZGFzaGJvYXJkL3NyYy9saWIvdWkta2l0L3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcmVhdGUtZGFzaGJvYXJkL3NyYy9saWIvdWkta2l0L3BvcG92ZXIvcG9wb3Zlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVF0RyxNQUFNLE9BQU8sZ0JBQWdCO0lBTVI7SUFMVixnQkFBZ0IsR0FBRyxLQUFLLENBQUM7SUFDbEMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO0lBQ0UsWUFBWSxDQUFjO0lBQ3hCLGNBQWMsQ0FBYztJQUMvQyxlQUFlLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUMvQyxZQUFtQixjQUE4QjtRQUE5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7SUFBSSxDQUFDO0lBQ3RELFdBQVcsR0FBRyxLQUFLLENBQUM7SUFDcEIsU0FBUyxDQUFNO0lBQ2YsUUFBUSxDQUFNO0lBQ2QsYUFBYSxDQUFNO0lBQ25CLFlBQVksQ0FBTTtJQUNsQixTQUFTLENBQVU7SUFDbkIsU0FBUyxDQUFVO0lBQ25CLFFBQVEsS0FBVyxDQUFDO0lBQ3BCLE9BQU87UUFDTCxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQzlCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDN0IsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztZQUN4QixJQUFJLENBQUMs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QUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDO2dCQUM3QyxNQUFNO1lBRVIsS0FBSyxRQUFRO2dCQUNYLElBQUksQ0FBQyxTQUFTLEdBQUcsZUFBZSxDQUFDLElBQUksR0FBRyxlQUFlLENBQUMsS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQztnQkFDMUYsSUFBSSxDQUFDLFFBQVEsR0FBRyxlQUFlLENBQUMsR0FBRyxHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUM7Z0JBQzdELE1BQU07U0FDVDtRQUVELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDakMsQ0FBQzt3R0FySFUsZ0JBQWdCOzRGQUFoQixnQkFBZ0IsdVdDUjdCLG1iQU1BOzs0RkRFYSxnQkFBZ0I7a0JBTDVCLFNBQVM7K0JBQ0UsYUFBYTtxR0FLZCxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBRXFCLFlBQVk7c0JBQXRDLFNBQVM7dUJBQUMsY0FBYztnQkFDSSxjQUFjO3NCQUExQyxTQUFTO3VCQUFDLGdCQUFnQjtnQkFDakIsZUFBZTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBQb3BvdmVyU2VydmljZSB9IGZyb20gJy4vcG9wb3Zlci5zZXJ2aWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXBvcG92ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wb3BvdmVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wb3BvdmVyLmNvbXBvbmVudC5sZXNzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQb3BvdmVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBkb250Q2xvc2VvbkNsaWNrID0gZmFsc2U7XHJcbiAgcG9wb3ZlckNvbnRhaW5lciA9IGZhbHNlO1xyXG4gIEBWaWV3Q2hpbGQoJ3BvcG92ZXJSYXRpbycpIHBvcG92ZXJSYXRpbyE6IEVsZW1lbnRSZWY7XHJcbiAgQFZpZXdDaGlsZCgncG9wb3ZlckNvbnRlbnQnKSBwb3BvdmVyQ29udGVudCE6IEVsZW1lbnRSZWY7XHJcbiAgQE91dHB1dCgpIGNsb3NlZE9uT3ZlcmxheSA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcG9wb3ZlclNlcnZpY2U6IFBvcG92ZXJTZXJ2aWNlKSB7IH1cclxuICBzaG93UG9wb3ZlciA9IGZhbHNlO1xyXG4gIGxlZnRWYWx1ZTogYW55O1xyXG4gIHRvcFZhbHVlOiBhbnk7XHJcbiAgcG9wb3ZlckhlaWdodDogYW55O1xyXG4gIHBvcG92ZXJXaWR0aDogYW55O1xyXG4gIHBvc2l0aW9uWCE6IG51bWJlcjtcclxuICBwb3NpdGlvblkhOiBudW1iZXI7XHJcbiAgbmdPbkluaXQoKTogdm9pZCB7IH1cclxuICBwb3BvdmVyKCkge1xyXG4gICAgdGhpcy5wb3BvdmVyQ29udGFpbmVyID0gZmFsc2U7XHJcbiAgICB0aGlzLnBvcG92ZXJDb250YWluZXIgPSB0cnVlO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIHRoaXMuZ2V0UG9zaXRpb24oKTtcclxuICAgICAgdGhpcy5zaG93UG9wb3ZlciA9IHRydWU7XHJcbiAgICAgIHRoaXMucG9wb3ZlclNlcnZpY2Uuc3RvcFNjcm9sbCA9IHRydWU7XHJcbiAgICAgIC8vIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAnaGlkZGVuJztcclxuICAgIH0sIDEwKTtcclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcbiAgcG9wb3ZlckV2ZW50KCkge1xyXG4gICAgdGhpcy5wb3BvdmVyQ29udGFpbmVyID0gZmFsc2U7XHJcbiAgICB0aGlzLnBvcG92ZXJDb250YWluZXIgPSB0cnVlO1xyXG4gICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgIC8vIHRoaXMuZ2V0UG9zaXRpb24oKTtcclxuICAgICAgdGhpcy5wb3NpdGlvblggPSB0aGlzLnBvcG92ZXJTZXJ2aWNlLnBvc2l0aW9uWDtcclxuICAgICAgdGhpcy5wb3NpdGlvblkgPSB0aGlzLnBvcG92ZXJTZXJ2aWNlLnBvc2l0aW9uWTtcclxuICAgICAgdGhpcy5zaG93UG9wb3ZlciA9IHRydWU7XHJcbiAgICAgIHRoaXMucG9wb3ZlclNlcnZpY2Uuc3RvcFNjcm9sbCA9IHRydWU7XHJcblxyXG4gICAgfSwgMTApO1xyXG4gICAgcmV0dXJuIGZhbHNlO1xyXG4gIH1cclxuICBjbG9zZVBvcG92ZXIodG9wPzogc3RyaW5nKSB7XHJcbiAgICBpZiAoIXRoaXMuZG9udENsb3Nlb25DbGljayB8fCB0b3AgPT09ICd0b3AnKSB7XHJcbiAgICAgIHRoaXMucG9wb3ZlckNvbnRhaW5lciA9IGZhbHNlO1xyXG4gICAgICB0aGlzLnNob3dQb3BvdmVyID0gZmFsc2U7XHJcbiAgICAgIHRoaXMucG9wb3ZlclNlcnZpY2Uuc3RvcFNjcm9sbCA9IGZhbHNlO1xyXG4gICAgICAvLyBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID0gJ2F1dG8nO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgY2xvc2UoKSB7XHJcbiAgICB0aGlzLnBvcG92ZXJDb250YWluZXIgPSBmYWxzZTtcclxuICAgIHRoaXMuc2hvd1BvcG92ZXIgPSBmYWxzZTtcclxuICAgIHRoaXMucG9wb3ZlclNlcnZpY2Uuc3RvcFNjcm9sbCA9IGZhbHNlO1xyXG4gIH1cclxuXHJcbiAgY2xpY2tlZFBvcG92ZXIoKSB7XHJcbiAgICB0aGlzLmdldFBvc2l0aW9uKCk7XHJcbiAgfVxyXG4gIGdldFBvc2l0aW9uKCkge1xyXG4gICAgY29uc3QgZWxlbWVudFBvc2l0aW9uID0gdGhpcy5wb3BvdmVyU2VydmljZT8uZWxlbWVudFBvc2l0aW9uO1xyXG4gICAgY29uc3QgZGlyZWN0aW9uID0gdGhpcy5wb3BvdmVyU2VydmljZT8uZWxlbWVudERpcmVjdGlvbjtcclxuXHJcbiAgICBpZiAoIXRoaXMucG9wb3ZlclJhdGlvPy5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnBvcG92ZXJIZWlnaHQgPSB0aGlzLnBvcG92ZXJSYXRpby5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodDtcclxuICAgIHRoaXMucG9wb3ZlcldpZHRoID0gdGhpcy5wb3BvdmVyUmF0aW8ubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aDtcclxuXHJcbiAgICBjb25zdCBvdmVyZmxvd3NCb3R0b20gPSBlbGVtZW50UG9zaXRpb24udG9wICsgZWxlbWVudFBvc2l0aW9uLmhlaWdodCArIHRoaXMucG9wb3ZlckhlaWdodCA+IHdpbmRvdy5vdXRlckhlaWdodCAtIDIwMDtcclxuXHJcbiAgICBzd2l0Y2ggKGRpcmVjdGlvbikge1xyXG4gICAgICBjYXNlICdsZWZ0JzpcclxuICAgICAgICB0aGlzLmxlZnRWYWx1ZSA9IGVsZW1lbnRQb3NpdGlvbi5sZWZ0O1xyXG4gICAgICAgIHRoaXMudG9wVmFsdWUgPSBvdmVyZmxvd3NCb3R0b21cclxuICAgICAgICAgID8gZWxlbWVudFBvc2l0aW9uLnRvcCAtIHRoaXMucG9wb3ZlckhlaWdodFxyXG4gICAgICAgICAgOiBlbGVtZW50UG9zaXRpb24udG9wICsgZWxlbWVudFBvc2l0aW9uLmhlaWdodDtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgJ3JpZ2h0JzpcclxuICAgICAgICB0aGlzLmxlZnRWYWx1ZSA9IGVsZW1lbnRQb3NpdGlvbi5sZWZ0ICsgZWxlbWVudFBvc2l0aW9uLndpZHRoIC0gdGhpcy5wb3BvdmVyV2lkdGg7XHJcbiAgICAgICAgdGhpcy50b3BWYWx1ZSA9IG92ZXJmbG93c0JvdHRvbVxyXG4gICAgICAgICAgPyBlbGVtZW50UG9zaXRpb24udG9wIC0gdGhpcy5wb3BvdmVySGVpZ2h0XHJcbiAgICAgICAgICA6IGVsZW1lbnRQb3NpdGlvbi50b3AgKyBlbGVtZW50UG9zaXRpb24uaGVpZ2h0O1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSAndG9wJzpcclxuICAgICAgICB0aGlzLmxlZnRWYWx1ZSA9IGVsZW1lbnRQb3NpdGlvbi5sZWZ0ICsgZWxlbWVudFBvc2l0aW9uLndpZHRoO1xyXG4gICAgICAgIHRoaXMudG9wVmFsdWUgPSBlbGVtZW50UG9zaXRpb24udG9wIC0gdGhpcy5wb3BvdmVySGVpZ2h0O1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSAnYm90dG9tJzpcclxuICAgICAgICB0aGlzLmxlZnRWYWx1ZSA9IGVsZW1lbnRQb3NpdGlvbi5sZWZ0ICsgZWxlbWVudFBvc2l0aW9uLndpZHRoO1xyXG4gICAgICAgIHRoaXMudG9wVmFsdWUgPSBvdmVyZmxvd3NCb3R0b21cclxuICAgICAgICAgID8gZWxlbWVudFBvc2l0aW9uLnRvcCAtIHRoaXMucG9wb3ZlckhlaWdodFxyXG4gICAgICAgICAgOiBlbGVtZW50UG9zaXRpb24udG9wICsgZWxlbWVudFBvc2l0aW9uLmhlaWdodDtcclxuICAgICAgICBicmVhaztcclxuXHJcbiAgICAgIGNhc2UgJ3NlbGYtcG9zaXRpb24nOlxyXG4gICAgICAgIHRoaXMubGVmdFZhbHVlID0gZWxlbWVudFBvc2l0aW9uLmxlZnQgKyBlbGVtZW50UG9zaXRpb24ud2lkdGggLyAyIC0gdGhpcy5wb3BvdmVyV2lkdGggLyAyO1xyXG4gICAgICAgIHRoaXMudG9wVmFsdWUgPSBlbGVtZW50UG9zaXRpb24udG9wIC0gMTU7XHJcbiAgICAgICAgYnJlYWs7XHJcblxyXG4gICAgICBjYXNlICd0b3AtY2VudGVyJzpcclxuICAgICAgICB0aGlzLmxlZnRWYWx1ZSA9IGVsZW1lbnRQb3NpdGlvbi5sZWZ0ICsgZWxlbWVudFBvc2l0aW9uLndpZHRoIC8gMiAtIHRoaXMucG9wb3ZlcldpZHRoIC8gMjtcclxuICAgICAgICB0aGlzLnRvcFZhbHVlID0gKGVsZW1lbnRQb3NpdGlvbi50b3AgKyBlbGVtZW50UG9zaXRpb24uaGVpZ2h0ICsgdGhpcy5wb3BvdmVySGVpZ2h0ID4gd2luZG93Lm91dGVySGVpZ2h0KVxyXG4gICAgICAgICAgPyBlbGVtZW50UG9zaXRpb24udG9wICsgZWxlbWVudFBvc2l0aW9uLmhlaWdodFxyXG4gICAgICAgICAgOiBlbGVtZW50UG9zaXRpb24udG9wIC0gdGhpcy5wb3BvdmVySGVpZ2h0O1xyXG4gICAgICAgIGJyZWFrO1xyXG5cclxuICAgICAgY2FzZSAnY2VudGVyJzpcclxuICAgICAgICB0aGlzLmxlZnRWYWx1ZSA9IGVsZW1lbnRQb3NpdGlvbi5sZWZ0ICsgZWxlbWVudFBvc2l0aW9uLndpZHRoIC8gMiAtIHRoaXMucG9wb3ZlcldpZHRoIC8gMjtcclxuICAgICAgICB0aGlzLnRvcFZhbHVlID0gZWxlbWVudFBvc2l0aW9uLnRvcCArIGVsZW1lbnRQb3NpdGlvbi5oZWlnaHQ7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5wb3NpdGlvblggPSB0aGlzLmxlZnRWYWx1ZTtcclxuICAgIHRoaXMucG9zaXRpb25ZID0gdGhpcy50b3BWYWx1ZTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cInBvcG92ZXItb3ZlcmxheVwiICpuZ0lmPVwicG9wb3ZlckNvbnRhaW5lclwiIChjbGljayk9XCJjbG9zZVBvcG92ZXIoJ3RvcCcpO3RoaXMuY2xvc2VkT25PdmVybGF5LmVtaXQoKTtcIj48L2Rpdj5cclxuPGRpdiBjbGFzcz1cImFjdGlvblwiIFtjbGFzcy5hY3RpdmVdPVwic2hvd1BvcG92ZXJcIiAqbmdJZj1cInBvcG92ZXJDb250YWluZXJcIiBbc3R5bGUudG9wLnB4XT1cInBvc2l0aW9uWVwiIFtzdHlsZS5sZWZ0LnB4XT1cInBvc2l0aW9uWFwiICNwb3BvdmVyUmF0aW8gaWQ9XCJwb3BvdmVyUmF0aW9cIj5cclxuICA8ZGl2IChjbGljayk9XCJjbG9zZVBvcG92ZXIoKTsgY2xpY2tlZFBvcG92ZXIoKVwiICNwb3BvdmVyQ29udGVudD5cclxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbiJdfQ==
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { Directive, HostListener, Input } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "./popover.service";
|
|
4
|
+
export class PopoverDirective {
|
|
5
|
+
elRef;
|
|
6
|
+
popoverService;
|
|
7
|
+
dynamicComponent;
|
|
8
|
+
refrence;
|
|
9
|
+
placement;
|
|
10
|
+
leftValue;
|
|
11
|
+
topValue;
|
|
12
|
+
constructor(elRef, popoverService) {
|
|
13
|
+
this.elRef = elRef;
|
|
14
|
+
this.popoverService = popoverService;
|
|
15
|
+
}
|
|
16
|
+
click() {
|
|
17
|
+
this.popoverService.elementPosition = this.elRef.nativeElement.getBoundingClientRect();
|
|
18
|
+
this.popoverService.elementDirection = this.placement;
|
|
19
|
+
// this.getPosition();
|
|
20
|
+
}
|
|
21
|
+
getPosition() {
|
|
22
|
+
setTimeout(() => {
|
|
23
|
+
// this.popoverService.elementPosition = this.elRef.nativeElement.getBoundingClientRect();
|
|
24
|
+
const elementPositionn = this.elRef.nativeElement.getBoundingClientRect();
|
|
25
|
+
if (this.placement === 'left') {
|
|
26
|
+
this.leftValue = elementPositionn.left;
|
|
27
|
+
if (elementPositionn.top + elementPositionn.height + this.popoverService.popoverHeight > window.outerHeight - 200) {
|
|
28
|
+
this.topValue = elementPositionn.top - this.popoverService.popoverHeight;
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
this.topValue = elementPositionn.top + elementPositionn.height;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
if (this.placement === 'right') {
|
|
35
|
+
this.leftValue = elementPositionn.left + elementPositionn.width - this.popoverService.popoverWidth;
|
|
36
|
+
if (elementPositionn.top + elementPositionn.height + this.popoverService.popoverHeight > window.outerHeight - 200) {
|
|
37
|
+
this.topValue = elementPositionn.top - this.popoverService.popoverHeight;
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
this.topValue = elementPositionn.top + elementPositionn.height;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
if (this.placement === 'top') {
|
|
44
|
+
this.leftValue = elementPositionn.left + elementPositionn.width;
|
|
45
|
+
if (elementPositionn.top + elementPositionn.height + this.popoverService.popoverHeight > window.outerHeight - 200) {
|
|
46
|
+
this.topValue = elementPositionn.top - this.popoverService.popoverHeight;
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
this.topValue = elementPositionn.top - this.popoverService.popoverHeight;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
if (this.placement === 'bottom') {
|
|
53
|
+
this.leftValue = elementPositionn.left + elementPositionn.width;
|
|
54
|
+
if (elementPositionn.top + elementPositionn.height + this.popoverService.popoverHeight > window.outerHeight - 200) {
|
|
55
|
+
this.topValue = elementPositionn.top - this.popoverService.popoverHeight;
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
this.topValue = elementPositionn.top + elementPositionn.height;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
if (this.placement === 'self-position') {
|
|
62
|
+
this.leftValue = elementPositionn.left + elementPositionn.width / 2 - this.popoverService.popoverWidth / 2;
|
|
63
|
+
this.topValue = elementPositionn.top - 15;
|
|
64
|
+
}
|
|
65
|
+
if (this.placement === 'top-center') {
|
|
66
|
+
this.leftValue = elementPositionn.left + elementPositionn.width / 2 - this.popoverService.popoverWidth / 2;
|
|
67
|
+
this.topValue = elementPositionn.top - this.popoverService.popoverHeight;
|
|
68
|
+
}
|
|
69
|
+
if (this.placement === 'bottom-center') {
|
|
70
|
+
this.leftValue = elementPositionn.left + elementPositionn.width / 2 - this.popoverService.popoverWidth / 2;
|
|
71
|
+
this.topValue = elementPositionn.top + this.popoverService.popoverHeight;
|
|
72
|
+
}
|
|
73
|
+
this.popoverService.positionX = this.leftValue;
|
|
74
|
+
this.popoverService.positionY = this.topValue;
|
|
75
|
+
}, 10);
|
|
76
|
+
}
|
|
77
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PopoverDirective, deps: [{ token: i0.ElementRef }, { token: i1.PopoverService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
78
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.12", type: PopoverDirective, selector: "[appPopover]", inputs: { refrence: "refrence", placement: "placement" }, host: { listeners: { "click": "click()" } }, ngImport: i0 });
|
|
79
|
+
}
|
|
80
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PopoverDirective, decorators: [{
|
|
81
|
+
type: Directive,
|
|
82
|
+
args: [{
|
|
83
|
+
selector: '[appPopover]',
|
|
84
|
+
}]
|
|
85
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.PopoverService }]; }, propDecorators: { refrence: [{
|
|
86
|
+
type: Input
|
|
87
|
+
}], placement: [{
|
|
88
|
+
type: Input
|
|
89
|
+
}], click: [{
|
|
90
|
+
type: HostListener,
|
|
91
|
+
args: ['click']
|
|
92
|
+
}] } });
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcmVhdGUtZGFzaGJvYXJkL3NyYy9saWIvdWkta2l0L3BvcG92ZXIvcG9wb3Zlci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYyxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNM0UsTUFBTSxPQUFPLGdCQUFnQjtJQU1QO0lBQTJCO0lBTC9DLGdCQUFnQixDQUFNO0lBQ2IsUUFBUSxDQUFNO0lBQ2QsU0FBUyxDQUFVO0lBQzVCLFNBQVMsQ0FBTTtJQUNmLFFBQVEsQ0FBTTtJQUNkLFlBQW9CLEtBQWlCLEVBQVUsY0FBOEI7UUFBekQsVUFBSyxHQUFMLEtBQUssQ0FBWTtRQUFVLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtJQUFHLENBQUM7SUFDMUQsS0FBSztRQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDO1FBQ3ZGLElBQUksQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUN0RCxzQkFBc0I7SUFDeEIsQ0FBQztJQUVELFdBQVc7UUFDVCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ2QsMEZBQTBGO1lBQzFGLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMscUJBQXFCLEVBQUUsQ0FBQztZQUMxRSxJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssTUFBTSxFQUFFO2dCQUM3QixJQUFJLENBQUMsU0FBUyxHQUFHLGdCQUFnQixDQUFDLElBQUksQ0FBQztnQkFDdkMsSUFBSSxnQkFBZ0IsQ0FBQyxHQUFHLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxj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LENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUM7Z0JBQzNHLElBQUksQ0FBQyxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDO2FBQzFFO1lBQ0QsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLGVBQWUsRUFBRTtnQkFDdEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxnQkFBZ0IsQ0FBQyxJQUFJLEdBQUcsZ0JBQWdCLENBQUMsS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksR0FBRyxDQUFDLENBQUM7Z0JBQzNHLElBQUksQ0FBQyxRQUFRLEdBQUcsZ0JBQWdCLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDO2FBQzFFO1lBQ0QsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztZQUMvQyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQ2hELENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNULENBQUM7d0dBaEVVLGdCQUFnQjs0RkFBaEIsZ0JBQWdCOzs0RkFBaEIsZ0JBQWdCO2tCQUg1QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxjQUFjO2lCQUN6Qjs4SEFHVSxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBSWlCLEtBQUs7c0JBQTNCLFlBQVk7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBQb3BvdmVyU2VydmljZSB9IGZyb20gJy4vcG9wb3Zlci5zZXJ2aWNlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW2FwcFBvcG92ZXJdJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBvcG92ZXJEaXJlY3RpdmUge1xyXG4gIGR5bmFtaWNDb21wb25lbnQ6IGFueTtcclxuICBASW5wdXQoKSByZWZyZW5jZTogYW55O1xyXG4gIEBJbnB1dCgpIHBsYWNlbWVudCE6IHN0cmluZztcclxuICBsZWZ0VmFsdWU6IGFueTtcclxuICB0b3BWYWx1ZTogYW55O1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWYsIHByaXZhdGUgcG9wb3ZlclNlcnZpY2U6IFBvcG92ZXJTZXJ2aWNlKSB7fVxyXG4gIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJykgY2xpY2soKSB7XHJcbiAgICB0aGlzLnBvcG92ZXJTZXJ2aWNlLmVsZW1lbnRQb3NpdGlvbiA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcclxuICAgIHRoaXMucG9wb3ZlclNlcnZpY2UuZWxlbWVudERpcmVjdGlvbiA9IHRoaXMucGxhY2VtZW50O1xyXG4gICAgLy8gdGhpcy5nZXRQb3NpdGlvbigpO1xyXG4gIH1cclxuXHJcbiAgZ2V0UG9zaXRpb24oKSB7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgLy8gdGhpcy5wb3BvdmVyU2VydmljZS5lbGVtZW50UG9zaXRpb24gPSB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgIGNvbnN0IGVsZW1lbnRQb3NpdGlvbm4gPSB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgIGlmICh0aGlzLnBsYWNlbWVudCA9PT0gJ2xlZnQnKSB7XHJcbiAgICAgICAgdGhpcy5sZWZ0VmFsdWUgPSBlbGVtZW50UG9zaXRpb25uLmxlZnQ7XHJcbiAgICAgICAgaWYgKGVsZW1lbnRQb3NpdGlvbm4udG9wICsgZWxlbWVudFBvc2l0aW9ubi5oZWlnaHQgKyB0aGlzLnBvcG92ZXJTZXJ2aWNlLnBvcG92ZXJIZWlnaHQgPiB3aW5kb3cub3V0ZXJIZWlnaHQgLSAyMDApIHtcclxuICAgICAgICAgIHRoaXMudG9wVmFsdWUgPSBlbGVtZW50UG9zaXRpb25uLnRvcCAtIHRoaXMucG9wb3ZlclNlcnZpY2UucG9wb3ZlckhlaWdodDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy50b3BWYWx1ZSA9IGVsZW1lbnRQb3NpdGlvbm4udG9wICsgZWxlbWVudFBvc2l0aW9ubi5oZWlnaHQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnBsYWNlbWVudCA9PT0gJ3JpZ2h0Jykge1xyXG4gICAgICAgIHRoaXMubGVmdFZhbHVlID0gZWxlbWVudFBvc2l0aW9ubi5sZWZ0ICsgZWxlbWVudFBvc2l0aW9ubi53aWR0aCAtIHRoaXMucG9wb3ZlclNlcnZpY2UucG9wb3ZlcldpZHRoO1xyXG4gICAgICAgIGlmIChlbGVtZW50UG9zaXRpb25uLnRvcCArIGVsZW1lbnRQb3NpdGlvbm4uaGVpZ2h0ICsgdGhpcy5wb3BvdmVyU2VydmljZS5wb3BvdmVySGVpZ2h0ID4gd2luZG93Lm91dGVySGVpZ2h0IC0gMjAwKSB7XHJcbiAgICAgICAgICB0aGlzLnRvcFZhbHVlID0gZWxlbWVudFBvc2l0aW9ubi50b3AgLSB0aGlzLnBvcG92ZXJTZXJ2aWNlLnBvcG92ZXJIZWlnaHQ7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMudG9wVmFsdWUgPSBlbGVtZW50UG9zaXRpb25uLnRvcCArIGVsZW1lbnRQb3NpdGlvbm4uaGVpZ2h0O1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAodGhpcy5wbGFjZW1lbnQgPT09ICd0b3AnKSB7XHJcbiAgICAgICAgdGhpcy5sZWZ0VmFsdWUgPSBlbGVtZW50UG9zaXRpb25uLmxlZnQgKyBlbGVtZW50UG9zaXRpb25uLndpZHRoO1xyXG4gICAgICAgIGlmIChlbGVtZW50UG9zaXRpb25uLnRvcCArIGVsZW1lbnRQb3NpdGlvbm4uaGVpZ2h0ICsgdGhpcy5wb3BvdmVyU2VydmljZS5wb3BvdmVySGVpZ2h0ID4gd2luZG93Lm91dGVySGVpZ2h0IC0gMjAwKSB7XHJcbiAgICAgICAgICB0aGlzLnRvcFZhbHVlID0gZWxlbWVudFBvc2l0aW9ubi50b3AgLSB0aGlzLnBvcG92ZXJTZXJ2aWNlLnBvcG92ZXJIZWlnaHQ7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIHRoaXMudG9wVmFsdWUgPSBlbGVtZW50UG9zaXRpb25uLnRvcCAtIHRoaXMucG9wb3ZlclNlcnZpY2UucG9wb3ZlckhlaWdodDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMucGxhY2VtZW50ID09PSAnYm90dG9tJykge1xyXG4gICAgICAgIHRoaXMubGVmdFZhbHVlID0gZWxlbWVudFBvc2l0aW9ubi5sZWZ0ICsgZWxlbWVudFBvc2l0aW9ubi53aWR0aDtcclxuICAgICAgICBpZiAoZWxlbWVudFBvc2l0aW9ubi50b3AgKyBlbGVtZW50UG9zaXRpb25uLmhlaWdodCArIHRoaXMucG9wb3ZlclNlcnZpY2UucG9wb3ZlckhlaWdodCA+IHdpbmRvdy5vdXRlckhlaWdodCAtIDIwMCkge1xyXG4gICAgICAgICAgdGhpcy50b3BWYWx1ZSA9IGVsZW1lbnRQb3NpdGlvbm4udG9wIC0gdGhpcy5wb3BvdmVyU2VydmljZS5wb3BvdmVySGVpZ2h0O1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICB0aGlzLnRvcFZhbHVlID0gZWxlbWVudFBvc2l0aW9ubi50b3AgKyBlbGVtZW50UG9zaXRpb25uLmhlaWdodDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMucGxhY2VtZW50ID09PSAnc2VsZi1wb3NpdGlvbicpIHtcclxuICAgICAgICB0aGlzLmxlZnRWYWx1ZSA9IGVsZW1lbnRQb3NpdGlvbm4ubGVmdCArIGVsZW1lbnRQb3NpdGlvbm4ud2lkdGggLyAyIC0gdGhpcy5wb3BvdmVyU2VydmljZS5wb3BvdmVyV2lkdGggLyAyO1xyXG4gICAgICAgIHRoaXMudG9wVmFsdWUgPSBlbGVtZW50UG9zaXRpb25uLnRvcCAtIDE1O1xyXG4gICAgICB9XHJcbiAgICAgIGlmICh0aGlzLnBsYWNlbWVudCA9PT0gJ3RvcC1jZW50ZXInKSB7XHJcbiAgICAgICAgdGhpcy5sZWZ0VmFsdWUgPSBlbGVtZW50UG9zaXRpb25uLmxlZnQgKyBlbGVtZW50UG9zaXRpb25uLndpZHRoIC8gMiAtIHRoaXMucG9wb3ZlclNlcnZpY2UucG9wb3ZlcldpZHRoIC8gMjtcclxuICAgICAgICB0aGlzLnRvcFZhbHVlID0gZWxlbWVudFBvc2l0aW9ubi50b3AgLSB0aGlzLnBvcG92ZXJTZXJ2aWNlLnBvcG92ZXJIZWlnaHQ7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKHRoaXMucGxhY2VtZW50ID09PSAnYm90dG9tLWNlbnRlcicpIHtcclxuICAgICAgICB0aGlzLmxlZnRWYWx1ZSA9IGVsZW1lbnRQb3NpdGlvbm4ubGVmdCArIGVsZW1lbnRQb3NpdGlvbm4ud2lkdGggLyAyIC0gdGhpcy5wb3BvdmVyU2VydmljZS5wb3BvdmVyV2lkdGggLyAyO1xyXG4gICAgICAgIHRoaXMudG9wVmFsdWUgPSBlbGVtZW50UG9zaXRpb25uLnRvcCArIHRoaXMucG9wb3ZlclNlcnZpY2UucG9wb3ZlckhlaWdodDtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLnBvcG92ZXJTZXJ2aWNlLnBvc2l0aW9uWCA9IHRoaXMubGVmdFZhbHVlO1xyXG4gICAgICB0aGlzLnBvcG92ZXJTZXJ2aWNlLnBvc2l0aW9uWSA9IHRoaXMudG9wVmFsdWU7XHJcbiAgICB9LCAxMCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { PopoverComponent } from './popover.component';
|
|
4
|
+
import { PopoverDirective } from './popover.directive';
|
|
5
|
+
import { PopoverService } from './popover.service';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
export class PopoverModule {
|
|
8
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: PopoverModule, declarations: [PopoverComponent, PopoverDirective], imports: [CommonModule], exports: [PopoverComponent, PopoverDirective] });
|
|
10
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PopoverModule, providers: [PopoverService], imports: [CommonModule] });
|
|
11
|
+
}
|
|
12
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PopoverModule, decorators: [{
|
|
13
|
+
type: NgModule,
|
|
14
|
+
args: [{
|
|
15
|
+
declarations: [PopoverComponent, PopoverDirective],
|
|
16
|
+
imports: [CommonModule],
|
|
17
|
+
exports: [PopoverComponent, PopoverDirective],
|
|
18
|
+
providers: [PopoverService],
|
|
19
|
+
}]
|
|
20
|
+
}] });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcmVhdGUtZGFzaGJvYXJkL3NyYy9saWIvdWkta2l0L3BvcG92ZXIvcG9wb3Zlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLG1CQUFtQixDQUFDOztBQVFuRCxNQUFNLE9BQU8sYUFBYTt3R0FBYixhQUFhO3lHQUFiLGFBQWEsaUJBTFQsZ0JBQWdCLEVBQUUsZ0JBQWdCLGFBQ3ZDLFlBQVksYUFDWixnQkFBZ0IsRUFBRSxnQkFBZ0I7eUdBR2pDLGFBQWEsYUFGYixDQUFDLGNBQWMsQ0FBQyxZQUZqQixZQUFZOzs0RkFJWCxhQUFhO2tCQU56QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDO29CQUNsRCxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLE9BQU8sRUFBRSxDQUFDLGdCQUFnQixFQUFFLGdCQUFnQixDQUFDO29CQUM3QyxTQUFTLEVBQUUsQ0FBQyxjQUFjLENBQUM7aUJBQzVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgUG9wb3ZlckNvbXBvbmVudCB9IGZyb20gJy4vcG9wb3Zlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQb3BvdmVyRGlyZWN0aXZlIH0gZnJvbSAnLi9wb3BvdmVyLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFBvcG92ZXJTZXJ2aWNlIH0gZnJvbSAnLi9wb3BvdmVyLnNlcnZpY2UnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtQb3BvdmVyQ29tcG9uZW50LCBQb3BvdmVyRGlyZWN0aXZlXSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcclxuICBleHBvcnRzOiBbUG9wb3ZlckNvbXBvbmVudCwgUG9wb3ZlckRpcmVjdGl2ZV0sXHJcbiAgcHJvdmlkZXJzOiBbUG9wb3ZlclNlcnZpY2VdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUG9wb3Zlck1vZHVsZSB7fVxyXG4iXX0=
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class PopoverService {
|
|
4
|
+
stopScroll = false;
|
|
5
|
+
positionX;
|
|
6
|
+
positionY;
|
|
7
|
+
popoverHeight;
|
|
8
|
+
popoverWidth;
|
|
9
|
+
elementPosition;
|
|
10
|
+
elementDirection;
|
|
11
|
+
constructor() {
|
|
12
|
+
console.log(this.popoverHeight);
|
|
13
|
+
}
|
|
14
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PopoverService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
15
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PopoverService, providedIn: 'root' });
|
|
16
|
+
}
|
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PopoverService, decorators: [{
|
|
18
|
+
type: Injectable,
|
|
19
|
+
args: [{
|
|
20
|
+
providedIn: 'root',
|
|
21
|
+
}]
|
|
22
|
+
}], ctorParameters: function () { return []; } });
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JlYXRlLWRhc2hib2FyZC9zcmMvbGliL3VpLWtpdC9wb3BvdmVyL3BvcG92ZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sY0FBYztJQUN6QixVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQ25CLFNBQVMsQ0FBVTtJQUNuQixTQUFTLENBQVU7SUFDbkIsYUFBYSxDQUFNO0lBQ25CLFlBQVksQ0FBTTtJQUNsQixlQUFlLENBQU07SUFDckIsZ0JBQWdCLENBQU07SUFDdEI7UUFDRSxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNsQyxDQUFDO3dHQVZVLGNBQWM7NEdBQWQsY0FBYyxjQUZiLE1BQU07OzRGQUVQLGNBQWM7a0JBSDFCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBvcG92ZXJTZXJ2aWNlIHtcclxuICBzdG9wU2Nyb2xsID0gZmFsc2U7XHJcbiAgcG9zaXRpb25YITogbnVtYmVyO1xyXG4gIHBvc2l0aW9uWSE6IG51bWJlcjtcclxuICBwb3BvdmVySGVpZ2h0OiBhbnk7XHJcbiAgcG9wb3ZlcldpZHRoOiBhbnk7XHJcbiAgZWxlbWVudFBvc2l0aW9uOiBhbnk7XHJcbiAgZWxlbWVudERpcmVjdGlvbjogYW55O1xyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgY29uc29sZS5sb2codGhpcy5wb3BvdmVySGVpZ2h0KTtcclxuICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Component, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../cs-select/cs-select.component";
|
|
4
|
+
import * as i2 from "../../services/cs-select.service";
|
|
5
|
+
export class CsOptionComponent {
|
|
6
|
+
csSelect;
|
|
7
|
+
colorSelector;
|
|
8
|
+
value;
|
|
9
|
+
option;
|
|
10
|
+
color;
|
|
11
|
+
constructor(csSelect, colorSelector) {
|
|
12
|
+
this.csSelect = csSelect;
|
|
13
|
+
this.colorSelector = colorSelector;
|
|
14
|
+
this.value = '';
|
|
15
|
+
}
|
|
16
|
+
ngOnInit() { }
|
|
17
|
+
change(event) {
|
|
18
|
+
if (this.option) {
|
|
19
|
+
setTimeout(() => {
|
|
20
|
+
this.csSelect.valuePlaceholder = this.option.nativeElement.innerHTML;
|
|
21
|
+
this.colorSelector.color = this.color;
|
|
22
|
+
console.log(this.color);
|
|
23
|
+
}, 1);
|
|
24
|
+
}
|
|
25
|
+
this.csSelect.writeValue(this.value);
|
|
26
|
+
}
|
|
27
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CsOptionComponent, deps: [{ token: i1.CsSelectComponent }, { token: i2.CsSelectService }], target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CsOptionComponent, selector: "cs-option", inputs: { value: "value", color: "color" }, viewQueries: [{ propertyName: "option", first: true, predicate: ["options"], descendants: true }], ngImport: i0, template: "<div class=\"list\">\r\n <label>\r\n <input type=\"radio\" tabindex=\"0\" [value]=\"value\" [name]=\"csSelect.name\" (click)=\"change($event)\" [checked]=\"csSelect.val === this.value\" />\r\n <span class=\"value\" #options>\r\n <ng-content></ng-content>\r\n </span>\r\n </label>\r\n</div>\r\n", styles: [".list label{line-height:23px;font-size:13px;font-weight:400;border-radius:4px;display:flex;position:relative;margin:0;align-items:center}.list label input[type=radio]{position:absolute;margin:0;height:100%;width:100%;opacity:0;cursor:pointer}.list label input[type=radio]:checked+span,.list label input[type=radio]:hover+span{background:#dcdcdc}.list label span.value{color:#747576;font-size:14px;line-height:21px;font-weight:400;max-width:100%;white-space:nowrap;overflow:hidden;display:block;text-overflow:ellipsis;padding:5px 15px;width:100%;text-transform:none;cursor:pointer;text-align:left}\n"] });
|
|
29
|
+
}
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CsOptionComponent, decorators: [{
|
|
31
|
+
type: Component,
|
|
32
|
+
args: [{ selector: 'cs-option', template: "<div class=\"list\">\r\n <label>\r\n <input type=\"radio\" tabindex=\"0\" [value]=\"value\" [name]=\"csSelect.name\" (click)=\"change($event)\" [checked]=\"csSelect.val === this.value\" />\r\n <span class=\"value\" #options>\r\n <ng-content></ng-content>\r\n </span>\r\n </label>\r\n</div>\r\n", styles: [".list label{line-height:23px;font-size:13px;font-weight:400;border-radius:4px;display:flex;position:relative;margin:0;align-items:center}.list label input[type=radio]{position:absolute;margin:0;height:100%;width:100%;opacity:0;cursor:pointer}.list label input[type=radio]:checked+span,.list label input[type=radio]:hover+span{background:#dcdcdc}.list label span.value{color:#747576;font-size:14px;line-height:21px;font-weight:400;max-width:100%;white-space:nowrap;overflow:hidden;display:block;text-overflow:ellipsis;padding:5px 15px;width:100%;text-transform:none;cursor:pointer;text-align:left}\n"] }]
|
|
33
|
+
}], ctorParameters: function () { return [{ type: i1.CsSelectComponent }, { type: i2.CsSelectService }]; }, propDecorators: { value: [{
|
|
34
|
+
type: Input
|
|
35
|
+
}], option: [{
|
|
36
|
+
type: ViewChild,
|
|
37
|
+
args: ['options']
|
|
38
|
+
}], color: [{
|
|
39
|
+
type: Input
|
|
40
|
+
}] } });
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Mtb3B0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NyZWF0ZS1kYXNoYm9hcmQvc3JjL2xpYi91aS1raXQvc2VsZWN0L2NzLW9wdGlvbi9jcy1vcHRpb24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JlYXRlLWRhc2hib2FyZC9zcmMvbGliL3VpLWtpdC9zZWxlY3QvY3Mtb3B0aW9uL2NzLW9wdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLEtBQUssRUFBVSxTQUFTLEVBQTJCLE1BQU0sZUFBZSxDQUFDOzs7O0FBVXpHLE1BQU0sT0FBTyxpQkFBaUI7SUFJVDtJQUFvQztJQUg5QyxLQUFLLENBQVU7SUFDRixNQUFNLENBQWM7SUFDakMsS0FBSyxDQUFPO0lBQ3JCLFlBQW1CLFFBQTJCLEVBQVMsYUFBOEI7UUFBbEUsYUFBUSxHQUFSLFFBQVEsQ0FBbUI7UUFBUyxrQkFBYSxHQUFiLGFBQWEsQ0FBaUI7UUFDbkYsSUFBSSxDQUFDLEtBQUssR0FBRyxFQUFFLENBQUM7SUFDbEIsQ0FBQztJQUVELFFBQVEsS0FBVyxDQUFDO0lBRXBCLE1BQU0sQ0FBQyxLQUFVO1FBQ2YsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2YsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZCxJQUFJLENBQUMsUUFBUSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQztnQkFDckUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztnQkFDdEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDMUIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ1A7UUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQzt3R0FuQlUsaUJBQWlCOzRGQUFqQixpQkFBaUIsZ01DVjlCLHVUQVFBOzs0RkRFYSxpQkFBaUI7a0JBTjdCLFNBQVM7K0JBRUUsV0FBVztzSUFLWixLQUFLO3NCQUFiLEtBQUs7Z0JBQ2dCLE1BQU07c0JBQTNCLFNBQVM7dUJBQUMsU0FBUztnQkFDWCxLQUFLO3NCQUFiLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ3NTZWxlY3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY3Mtc2VsZWN0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBDc1NlbGVjdENvbXBvbmVudCB9IGZyb20gJy4uL2NzLXNlbGVjdC9jcy1zZWxlY3QuY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpjb21wb25lbnQtc2VsZWN0b3JcclxuICBzZWxlY3RvcjogJ2NzLW9wdGlvbicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NzLW9wdGlvbi5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vY3Mtb3B0aW9uLmNvbXBvbmVudC5sZXNzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDc09wdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgdmFsdWUhOiBzdHJpbmc7XHJcbiAgQFZpZXdDaGlsZCgnb3B0aW9ucycpIG9wdGlvbiE6IEVsZW1lbnRSZWY7XHJcbiAgQElucHV0KCkgY29sb3IhOiBhbnk7XHJcbiAgY29uc3RydWN0b3IocHVibGljIGNzU2VsZWN0OiBDc1NlbGVjdENvbXBvbmVudCwgcHVibGljIGNvbG9yU2VsZWN0b3I6IENzU2VsZWN0U2VydmljZSkge1xyXG4gICAgdGhpcy52YWx1ZSA9ICcnO1xyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7IH1cclxuXHJcbiAgY2hhbmdlKGV2ZW50OiBhbnkpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLm9wdGlvbikge1xyXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICB0aGlzLmNzU2VsZWN0LnZhbHVlUGxhY2Vob2xkZXIgPSB0aGlzLm9wdGlvbi5uYXRpdmVFbGVtZW50LmlubmVySFRNTDtcclxuICAgICAgICB0aGlzLmNvbG9yU2VsZWN0b3IuY29sb3IgPSB0aGlzLmNvbG9yO1xyXG4gICAgICAgIGNvbnNvbGUubG9nKHRoaXMuY29sb3IpO1xyXG4gICAgICB9LCAxKTtcclxuICAgIH1cclxuICAgIHRoaXMuY3NTZWxlY3Qud3JpdGVWYWx1ZSh0aGlzLnZhbHVlKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBjbGFzcz1cImxpc3RcIj5cclxuICA8bGFiZWw+XHJcbiAgICA8aW5wdXQgdHlwZT1cInJhZGlvXCIgdGFiaW5kZXg9XCIwXCIgW3ZhbHVlXT1cInZhbHVlXCIgW25hbWVdPVwiY3NTZWxlY3QubmFtZVwiIChjbGljayk9XCJjaGFuZ2UoJGV2ZW50KVwiIFtjaGVja2VkXT1cImNzU2VsZWN0LnZhbCA9PT0gdGhpcy52YWx1ZVwiIC8+XHJcbiAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCIgI29wdGlvbnM+XHJcbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgIDwvc3Bhbj5cclxuICA8L2xhYmVsPlxyXG48L2Rpdj5cclxuIl19
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { Component, forwardRef, Input, ViewChild } from '@angular/core';
|
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
+
import { nanoid } from 'nanoid';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/common";
|
|
6
|
+
import * as i2 from "../safe-html.pipe";
|
|
7
|
+
// import { CsOptionComponent } from '../cs-option/cs-option.component';
|
|
8
|
+
export class CsSelectComponent {
|
|
9
|
+
dropdownLabel;
|
|
10
|
+
dropdownSubLabel;
|
|
11
|
+
isRequired;
|
|
12
|
+
placeholder;
|
|
13
|
+
// @ContentChildren(CsOptionComponent) op !: QueryList<CsOptionComponent>;
|
|
14
|
+
dropdownToggle;
|
|
15
|
+
positionReset;
|
|
16
|
+
getLeft;
|
|
17
|
+
getTop;
|
|
18
|
+
getWidth;
|
|
19
|
+
maxWidth;
|
|
20
|
+
valuePlaceholder;
|
|
21
|
+
optionList;
|
|
22
|
+
set content(content) {
|
|
23
|
+
if (content) {
|
|
24
|
+
// initially setter gets called with undefined
|
|
25
|
+
this.optionList = content;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
name;
|
|
29
|
+
val;
|
|
30
|
+
showOptions;
|
|
31
|
+
constructor() {
|
|
32
|
+
this.name = nanoid();
|
|
33
|
+
this.valuePlaceholder = '';
|
|
34
|
+
}
|
|
35
|
+
ngOnInit() { }
|
|
36
|
+
onChange = () => { };
|
|
37
|
+
onTouch = () => { };
|
|
38
|
+
set RadioVal(val) {
|
|
39
|
+
if (val !== undefined && val !== null && this.val !== val) {
|
|
40
|
+
this.val = val;
|
|
41
|
+
console.log('VALUE', this.val);
|
|
42
|
+
this.onChange(val);
|
|
43
|
+
this.onTouch(val);
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
writeValue(value) {
|
|
47
|
+
if (value) {
|
|
48
|
+
this.RadioVal = value;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
registerOnChange(fn) {
|
|
52
|
+
this.onChange = fn;
|
|
53
|
+
}
|
|
54
|
+
registerOnTouched(fn) {
|
|
55
|
+
this.onTouch = fn;
|
|
56
|
+
}
|
|
57
|
+
openDropdown(event) {
|
|
58
|
+
this.dropdownToggle = true;
|
|
59
|
+
setTimeout(() => {
|
|
60
|
+
const dropdown = event.target.getBoundingClientRect();
|
|
61
|
+
const selectOption = this.optionList.nativeElement.offsetHeight;
|
|
62
|
+
if (dropdown.top + selectOption * 2 > window.innerHeight) {
|
|
63
|
+
this.getTop = dropdown.top - selectOption;
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
this.getTop = dropdown.top + dropdown.height;
|
|
67
|
+
}
|
|
68
|
+
this.getLeft = dropdown.left;
|
|
69
|
+
this.getWidth = dropdown.width;
|
|
70
|
+
this.maxWidth = dropdown.width * 1.25;
|
|
71
|
+
this.showOptions = true;
|
|
72
|
+
}, 10);
|
|
73
|
+
}
|
|
74
|
+
closeDropdown() {
|
|
75
|
+
this.dropdownToggle = false;
|
|
76
|
+
}
|
|
77
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CsSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
78
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: CsSelectComponent, selector: "cs-select", inputs: { dropdownLabel: "dropdownLabel", dropdownSubLabel: "dropdownSubLabel", isRequired: "isRequired", placeholder: "placeholder" }, providers: [
|
|
79
|
+
{
|
|
80
|
+
provide: NG_VALUE_ACCESSOR,
|
|
81
|
+
useExisting: forwardRef(() => CsSelectComponent),
|
|
82
|
+
multi: true,
|
|
83
|
+
},
|
|
84
|
+
], viewQueries: [{ propertyName: "content", first: true, predicate: ["optionList"], descendants: true }], ngImport: i0, template: "<div class=\"selection-wrap\">\r\n <label class=\"label\" *ngIf=\"dropdownLabel != undefined\">\r\n {{ dropdownLabel }}\r\n <span class=\"sub-label\">{{ dropdownSubLabel }}</span>\r\n <span class=\"required\" *ngIf=\"isRequired\">*</span>\r\n </label>\r\n <div class=\"input-group\">\r\n <span class=\"value\" (click)=\"openDropdown($event)\" (keyup.enter)=\"openDropdown($event)\" tabindex=\"0\" [attr.aria-placeholder]=\"placeholder\" [innerHTML]=\"valuePlaceholder | safeHtml\"></span>\r\n </div>\r\n <div class=\"overlay\" *ngIf=\"dropdownToggle === true\" (click)=\"closeDropdown()\"></div>\r\n <div class=\"select-options\" *ngIf=\"dropdownToggle === true\" #optionList (keyup.Escape)=\"closeDropdown()\"\r\n (keyup.enter)=\"closeDropdown()\" (click)=\"closeDropdown()\" [style.top.px]=\"getTop\" [style.left.px]=\"getLeft\"\r\n [style.width.px]=\"getWidth\" [class.active]=\"showOptions\">\r\n <ng-content select=\"cs-option\"></ng-content>\r\n </div>\r\n</div>", styles: ["::ng-deep .selection-wrap{display:block}::ng-deep .selection-wrap *{box-sizing:border-box}::ng-deep .selection-wrap label.label{font-size:11px;color:#161b2f;font-weight:500;line-height:16px;margin-bottom:5px;text-transform:uppercase;display:block}::ng-deep .selection-wrap label.label span.required{color:#eb2424;font-size:14px}::ng-deep .selection-wrap label.label span.sub-label{color:#747576;font-size:11px;font-weight:400;margin-left:3px}::ng-deep .selection-wrap .input-group{display:flex;position:relative}::ng-deep .selection-wrap .input-group .value{height:40px;line-height:16px;font-size:13px;color:#747576;font-weight:400;background:#fff;border:1px solid #dbdbdb;border-radius:4px;width:100%;padding:12px 20px 12px 13px;display:block;outline:none;cursor:pointer}::ng-deep .selection-wrap .input-group .value:empty:before{content:attr(aria-placeholder);line-height:16px;width:94%;display:block;pointer-events:none;position:absolute;top:calc(50% - 8px)}::ng-deep .selection-wrap .input-group .value *{pointer-events:none}::ng-deep .selection-wrap .input-group:after{content:\"\";border-top:4px solid #707070;border-right:4px solid transparent;border-left:4px solid transparent;position:absolute;right:16px;top:calc(50% - 2px)}::ng-deep .selection-wrap .overlay{position:fixed;inset:0;background:transparent;z-index:9}::ng-deep .selection-wrap .select-options{position:fixed;overflow:auto;max-height:200px;padding:0;margin:0;display:block;border:1px solid #dbdbdb;box-shadow:0 3px 6px #1e5dd333;z-index:2147483002;background:#fff;border-radius:2px;opacity:0}::ng-deep .selection-wrap .select-options.hidden{opacity:0}::ng-deep .selection-wrap .select-options.active{opacity:1}::ng-deep .selection-wrap .select-options.reset{top:inherit;bottom:100%;box-shadow:0 -3px 6px #1e5dd333}::ng-deep .selection-wrap .select-options cs-option .list label span.value span{display:flex;border-radius:2px;padding:0 12px;font-size:12px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.SafeHtmlPipe, name: "safeHtml" }] });
|
|
85
|
+
}
|
|
86
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CsSelectComponent, decorators: [{
|
|
87
|
+
type: Component,
|
|
88
|
+
args: [{ selector: 'cs-select', providers: [
|
|
89
|
+
{
|
|
90
|
+
provide: NG_VALUE_ACCESSOR,
|
|
91
|
+
useExisting: forwardRef(() => CsSelectComponent),
|
|
92
|
+
multi: true,
|
|
93
|
+
},
|
|
94
|
+
], template: "<div class=\"selection-wrap\">\r\n <label class=\"label\" *ngIf=\"dropdownLabel != undefined\">\r\n {{ dropdownLabel }}\r\n <span class=\"sub-label\">{{ dropdownSubLabel }}</span>\r\n <span class=\"required\" *ngIf=\"isRequired\">*</span>\r\n </label>\r\n <div class=\"input-group\">\r\n <span class=\"value\" (click)=\"openDropdown($event)\" (keyup.enter)=\"openDropdown($event)\" tabindex=\"0\" [attr.aria-placeholder]=\"placeholder\" [innerHTML]=\"valuePlaceholder | safeHtml\"></span>\r\n </div>\r\n <div class=\"overlay\" *ngIf=\"dropdownToggle === true\" (click)=\"closeDropdown()\"></div>\r\n <div class=\"select-options\" *ngIf=\"dropdownToggle === true\" #optionList (keyup.Escape)=\"closeDropdown()\"\r\n (keyup.enter)=\"closeDropdown()\" (click)=\"closeDropdown()\" [style.top.px]=\"getTop\" [style.left.px]=\"getLeft\"\r\n [style.width.px]=\"getWidth\" [class.active]=\"showOptions\">\r\n <ng-content select=\"cs-option\"></ng-content>\r\n </div>\r\n</div>", styles: ["::ng-deep .selection-wrap{display:block}::ng-deep .selection-wrap *{box-sizing:border-box}::ng-deep .selection-wrap label.label{font-size:11px;color:#161b2f;font-weight:500;line-height:16px;margin-bottom:5px;text-transform:uppercase;display:block}::ng-deep .selection-wrap label.label span.required{color:#eb2424;font-size:14px}::ng-deep .selection-wrap label.label span.sub-label{color:#747576;font-size:11px;font-weight:400;margin-left:3px}::ng-deep .selection-wrap .input-group{display:flex;position:relative}::ng-deep .selection-wrap .input-group .value{height:40px;line-height:16px;font-size:13px;color:#747576;font-weight:400;background:#fff;border:1px solid #dbdbdb;border-radius:4px;width:100%;padding:12px 20px 12px 13px;display:block;outline:none;cursor:pointer}::ng-deep .selection-wrap .input-group .value:empty:before{content:attr(aria-placeholder);line-height:16px;width:94%;display:block;pointer-events:none;position:absolute;top:calc(50% - 8px)}::ng-deep .selection-wrap .input-group .value *{pointer-events:none}::ng-deep .selection-wrap .input-group:after{content:\"\";border-top:4px solid #707070;border-right:4px solid transparent;border-left:4px solid transparent;position:absolute;right:16px;top:calc(50% - 2px)}::ng-deep .selection-wrap .overlay{position:fixed;inset:0;background:transparent;z-index:9}::ng-deep .selection-wrap .select-options{position:fixed;overflow:auto;max-height:200px;padding:0;margin:0;display:block;border:1px solid #dbdbdb;box-shadow:0 3px 6px #1e5dd333;z-index:2147483002;background:#fff;border-radius:2px;opacity:0}::ng-deep .selection-wrap .select-options.hidden{opacity:0}::ng-deep .selection-wrap .select-options.active{opacity:1}::ng-deep .selection-wrap .select-options.reset{top:inherit;bottom:100%;box-shadow:0 -3px 6px #1e5dd333}::ng-deep .selection-wrap .select-options cs-option .list label span.value span{display:flex;border-radius:2px;padding:0 12px;font-size:12px}\n"] }]
|
|
95
|
+
}], ctorParameters: function () { return []; }, propDecorators: { dropdownLabel: [{
|
|
96
|
+
type: Input
|
|
97
|
+
}], dropdownSubLabel: [{
|
|
98
|
+
type: Input
|
|
99
|
+
}], isRequired: [{
|
|
100
|
+
type: Input
|
|
101
|
+
}], placeholder: [{
|
|
102
|
+
type: Input
|
|
103
|
+
}], content: [{
|
|
104
|
+
type: ViewChild,
|
|
105
|
+
args: ['optionList']
|
|
106
|
+
}] } });
|
|
107
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Mtc2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NyZWF0ZS1kYXNoYm9hcmQvc3JjL2xpYi91aS1raXQvc2VsZWN0L2NzLXNlbGVjdC9jcy1zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY3JlYXRlLWRhc2hib2FyZC9zcmMvbGliL3VpLWtpdC9zZWxlY3QvY3Mtc2VsZWN0L2NzLXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFjLFVBQVUsRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUE4QixNQUFNLGVBQWUsQ0FBQztBQUN4SCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDOzs7O0FBQ2hDLHdFQUF3RTtBQWV4RSxNQUFNLE9BQU8saUJBQWlCO0lBQ25CLGFBQWEsQ0FBVTtJQUN2QixnQkFBZ0IsQ0FBVTtJQUMxQixVQUFVLENBQVU7SUFDcEIsV0FBVyxDQUFVO0lBRTlCLDBFQUEwRTtJQUUxRSxjQUFjLENBQVc7SUFDekIsYUFBYSxDQUFXO0lBQ3hCLE9BQU8sQ0FBVTtJQUNqQixNQUFNLENBQVU7SUFDaEIsUUFBUSxDQUFVO0lBQ2xCLFFBQVEsQ0FBVTtJQUVsQixnQkFBZ0IsQ0FBVTtJQUNsQixVQUFVLENBQWM7SUFFaEMsSUFBNkIsT0FBTyxDQUFDLE9BQW1CO1FBQ3RELElBQUksT0FBTyxFQUFFO1lBQ1gsOENBQThDO1lBQzlDLElBQUksQ0FBQyxVQUFVLEdBQUcsT0FBTyxDQUFDO1NBQzNCO0lBQ0gsQ0FBQztJQUNELElBQUksQ0FBVTtJQUNkLEdBQUcsQ0FBVTtJQUNiLFdBQVcsQ0FBVztJQUN0QjtRQUNFLElBQUksQ0FBQyxJQUFJLEdBQUcs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Z0JBY3VCLE9BQU87c0JBQW5DLFNBQVM7dUJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRWxlbWVudFJlZiwgZm9yd2FyZFJlZiwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkLCBRdWVyeUxpc3QsIENvbnRlbnRDaGlsZHJlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgbmFub2lkIH0gZnJvbSAnbmFub2lkJztcclxuLy8gaW1wb3J0IHsgQ3NPcHRpb25Db21wb25lbnQgfSBmcm9tICcuLi9jcy1vcHRpb24vY3Mtb3B0aW9uLmNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6Y29tcG9uZW50LXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6ICdjcy1zZWxlY3QnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jcy1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NzLXNlbGVjdC5jb21wb25lbnQubGVzcyddLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQ3NTZWxlY3RDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIENzU2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBASW5wdXQoKSBkcm9wZG93bkxhYmVsITogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGRyb3Bkb3duU3ViTGFiZWwhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgaXNSZXF1aXJlZCE6IHN0cmluZztcclxuICBASW5wdXQoKSBwbGFjZWhvbGRlciE6IHN0cmluZztcclxuXHJcbiAgLy8gQENvbnRlbnRDaGlsZHJlbihDc09wdGlvbkNvbXBvbmVudCkgb3AgITogUXVlcnlMaXN0PENzT3B0aW9uQ29tcG9uZW50PjtcclxuXHJcbiAgZHJvcGRvd25Ub2dnbGUhOiBib29sZWFuO1xyXG4gIHBvc2l0aW9uUmVzZXQhOiBib29sZWFuO1xyXG4gIGdldExlZnQhOiBudW1iZXI7XHJcbiAgZ2V0VG9wITogbnVtYmVyO1xyXG4gIGdldFdpZHRoITogbnVtYmVyO1xyXG4gIG1heFdpZHRoITogbnVtYmVyO1xyXG5cclxuICB2YWx1ZVBsYWNlaG9sZGVyITogc3RyaW5nO1xyXG4gIHByaXZhdGUgb3B0aW9uTGlzdCE6IEVsZW1lbnRSZWY7XHJcblxyXG4gIEBWaWV3Q2hpbGQoJ29wdGlvbkxpc3QnKSBzZXQgY29udGVudChjb250ZW50OiBFbGVtZW50UmVmKSB7XHJcbiAgICBpZiAoY29udGVudCkge1xyXG4gICAgICAvLyBpbml0aWFsbHkgc2V0dGVyIGdldHMgY2FsbGVkIHdpdGggdW5kZWZpbmVkXHJcbiAgICAgIHRoaXMub3B0aW9uTGlzdCA9IGNvbnRlbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIG5hbWUhOiBzdHJpbmc7XHJcbiAgdmFsITogc3RyaW5nO1xyXG4gIHNob3dPcHRpb25zITogYm9vbGVhbjtcclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIHRoaXMubmFtZSA9IG5hbm9pZCgpO1xyXG4gICAgdGhpcy52YWx1ZVBsYWNlaG9sZGVyID0gJyc7XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XHJcblxyXG4gIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fTtcclxuICBvblRvdWNoOiBhbnkgPSAoKSA9PiB7fTtcclxuXHJcbiAgc2V0IFJhZGlvVmFsKHZhbDogYW55KSB7XHJcbiAgICBpZiAodmFsICE9PSB1bmRlZmluZWQgJiYgdmFsICE9PSBudWxsICYmIHRoaXMudmFsICE9PSB2YWwpIHtcclxuICAgICAgdGhpcy52YWwgPSB2YWw7XHJcbiAgICAgIGNvbnNvbGUubG9nKCdWQUxVRScsIHRoaXMudmFsKTtcclxuICAgICAgdGhpcy5vbkNoYW5nZSh2YWwpO1xyXG4gICAgICB0aGlzLm9uVG91Y2godmFsKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xyXG4gICAgaWYodmFsdWUpIHtcclxuICAgIHRoaXMuUmFkaW9WYWwgPSB2YWx1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vblRvdWNoID0gZm47XHJcbiAgfVxyXG5cclxuICBvcGVuRHJvcGRvd24oZXZlbnQ6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5kcm9wZG93blRvZ2dsZSA9IHRydWU7XHJcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgY29uc3QgZHJvcGRvd24gPSBldmVudC50YXJnZXQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgIGNvbnN0IHNlbGVjdE9wdGlvbiA9IHRoaXMub3B0aW9uTGlzdC5uYXRpdmVFbGVtZW50Lm9mZnNldEhlaWdodDtcclxuICAgICAgaWYgKGRyb3Bkb3duLnRvcCArIHNlbGVjdE9wdGlvbiAqIDIgPiB3aW5kb3cuaW5uZXJIZWlnaHQpIHtcclxuICAgICAgICB0aGlzLmdldFRvcCA9IGRyb3Bkb3duLnRvcCAtIHNlbGVjdE9wdGlvbjtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICB0aGlzLmdldFRvcCA9IGRyb3Bkb3duLnRvcCArIGRyb3Bkb3duLmhlaWdodDtcclxuICAgICAgfVxyXG4gICAgICB0aGlzLmdldExlZnQgPSBkcm9wZG93bi5sZWZ0O1xyXG4gICAgICB0aGlzLmdldFdpZHRoID0gZHJvcGRvd24ud2lkdGg7XHJcbiAgICAgIHRoaXMubWF4V2lkdGggPSBkcm9wZG93bi53aWR0aCAqIDEuMjU7XHJcbiAgICAgIHRoaXMuc2hvd09wdGlvbnMgPSB0cnVlO1xyXG4gICAgfSwgMTApO1xyXG4gIH1cclxuICBjbG9zZURyb3Bkb3duKCk6IHZvaWQge1xyXG4gICAgdGhpcy5kcm9wZG93blRvZ2dsZSA9IGZhbHNlO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwic2VsZWN0aW9uLXdyYXBcIj5cclxuICA8bGFiZWwgY2xhc3M9XCJsYWJlbFwiICpuZ0lmPVwiZHJvcGRvd25MYWJlbCAhPSB1bmRlZmluZWRcIj5cclxuICAgIHt7IGRyb3Bkb3duTGFiZWwgfX1cclxuICAgIDxzcGFuIGNsYXNzPVwic3ViLWxhYmVsXCI+e3sgZHJvcGRvd25TdWJMYWJlbCB9fTwvc3Bhbj5cclxuICAgIDxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIiAqbmdJZj1cImlzUmVxdWlyZWRcIj4qPC9zcGFuPlxyXG4gIDwvbGFiZWw+XHJcbiAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwXCI+XHJcbiAgICA8c3BhbiBjbGFzcz1cInZhbHVlXCIgKGNsaWNrKT1cIm9wZW5Ecm9wZG93bigkZXZlbnQpXCIgKGtleXVwLmVudGVyKT1cIm9wZW5Ecm9wZG93bigkZXZlbnQpXCIgdGFiaW5kZXg9XCIwXCIgW2F0dHIuYXJpYS1wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiIFtpbm5lckhUTUxdPVwidmFsdWVQbGFjZWhvbGRlciB8IHNhZmVIdG1sXCI+PC9zcGFuPlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgY2xhc3M9XCJvdmVybGF5XCIgKm5nSWY9XCJkcm9wZG93blRvZ2dsZSA9PT0gdHJ1ZVwiIChjbGljayk9XCJjbG9zZURyb3Bkb3duKClcIj48L2Rpdj5cclxuICA8ZGl2IGNsYXNzPVwic2VsZWN0LW9wdGlvbnNcIiAqbmdJZj1cImRyb3Bkb3duVG9nZ2xlID09PSB0cnVlXCIgI29wdGlvbkxpc3QgKGtleXVwLkVzY2FwZSk9XCJjbG9zZURyb3Bkb3duKClcIlxyXG4gICAgKGtleXVwLmVudGVyKT1cImNsb3NlRHJvcGRvd24oKVwiIChjbGljayk9XCJjbG9zZURyb3Bkb3duKClcIiBbc3R5bGUudG9wLnB4XT1cImdldFRvcFwiIFtzdHlsZS5sZWZ0LnB4XT1cImdldExlZnRcIlxyXG4gICAgW3N0eWxlLndpZHRoLnB4XT1cImdldFdpZHRoXCIgW2NsYXNzLmFjdGl2ZV09XCJzaG93T3B0aW9uc1wiPlxyXG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiY3Mtb3B0aW9uXCI+PC9uZy1jb250ZW50PlxyXG4gIDwvZGl2PlxyXG48L2Rpdj4iXX0=
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Pipe } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "@angular/platform-browser";
|
|
4
|
+
export class SafeHtmlPipe {
|
|
5
|
+
sanitizer;
|
|
6
|
+
constructor(sanitizer) {
|
|
7
|
+
this.sanitizer = sanitizer;
|
|
8
|
+
}
|
|
9
|
+
transform(html) {
|
|
10
|
+
return this.sanitizer.bypassSecurityTrustHtml(html);
|
|
11
|
+
}
|
|
12
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SafeHtmlPipe, deps: [{ token: i1.DomSanitizer }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
13
|
+
static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SafeHtmlPipe, name: "safeHtml" });
|
|
14
|
+
}
|
|
15
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SafeHtmlPipe, decorators: [{
|
|
16
|
+
type: Pipe,
|
|
17
|
+
args: [{
|
|
18
|
+
name: 'safeHtml'
|
|
19
|
+
}]
|
|
20
|
+
}], ctorParameters: function () { return [{ type: i1.DomSanitizer }]; } });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZS1odG1sLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcmVhdGUtZGFzaGJvYXJkL3NyYy9saWIvdWkta2l0L3NlbGVjdC9zYWZlLWh0bWwucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7O0FBTXBELE1BQU0sT0FBTyxZQUFZO0lBQ0g7SUFBcEIsWUFBb0IsU0FBc0I7UUFBdEIsY0FBUyxHQUFULFNBQVMsQ0FBYTtJQUFFLENBQUM7SUFDN0MsU0FBUyxDQUFDLElBQVM7UUFDakIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RELENBQUM7d0dBSlUsWUFBWTtzR0FBWixZQUFZOzs0RkFBWixZQUFZO2tCQUh4QixJQUFJO21CQUFDO29CQUNKLElBQUksRUFBRSxVQUFVO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRG9tU2FuaXRpemVyIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XHJcblxyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3NhZmVIdG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2FmZUh0bWxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6RG9tU2FuaXRpemVyKXt9XHJcbiAgdHJhbnNmb3JtKGh0bWw6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKGh0bWwpO1xyXG4gIH1cclxuXHJcbn1cclxuIl19
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { CsSelectComponent } from './cs-select/cs-select.component';
|
|
4
|
+
import { CsOptionComponent } from './cs-option/cs-option.component';
|
|
5
|
+
import { FormsModule } from '@angular/forms';
|
|
6
|
+
import { SafeHtmlPipe } from './safe-html.pipe';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export class SelectModule {
|
|
9
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
10
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: SelectModule, declarations: [CsSelectComponent, CsOptionComponent, SafeHtmlPipe], imports: [FormsModule, CommonModule], exports: [CsSelectComponent, CsOptionComponent] });
|
|
11
|
+
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectModule, imports: [FormsModule, CommonModule] });
|
|
12
|
+
}
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: SelectModule, decorators: [{
|
|
14
|
+
type: NgModule,
|
|
15
|
+
args: [{
|
|
16
|
+
declarations: [CsSelectComponent, CsOptionComponent, SafeHtmlPipe],
|
|
17
|
+
imports: [FormsModule, CommonModule],
|
|
18
|
+
exports: [CsSelectComponent, CsOptionComponent],
|
|
19
|
+
}]
|
|
20
|
+
}] });
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NyZWF0ZS1kYXNoYm9hcmQvc3JjL2xpYi91aS1raXQvc2VsZWN0L3NlbGVjdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDcEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFPaEQsTUFBTSxPQUFPLFlBQVk7d0dBQVosWUFBWTt5R0FBWixZQUFZLGlCQUpSLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLFlBQVksYUFDdkQsV0FBVyxFQUFFLFlBQVksYUFDekIsaUJBQWlCLEVBQUUsaUJBQWlCO3lHQUVuQyxZQUFZLFlBSGIsV0FBVyxFQUFFLFlBQVk7OzRGQUd4QixZQUFZO2tCQUx4QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxDQUFDLGlCQUFpQixFQUFFLGlCQUFpQixFQUFFLFlBQVksQ0FBQztvQkFDbEUsT0FBTyxFQUFFLENBQUMsV0FBVyxFQUFFLFlBQVksQ0FBQztvQkFDcEMsT0FBTyxFQUFFLENBQUMsaUJBQWlCLEVBQUUsaUJBQWlCLENBQUM7aUJBQ2hEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQ3NTZWxlY3RDb21wb25lbnQgfSBmcm9tICcuL2NzLXNlbGVjdC9jcy1zZWxlY3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ3NPcHRpb25Db21wb25lbnQgfSBmcm9tICcuL2NzLW9wdGlvbi9jcy1vcHRpb24uY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IFNhZmVIdG1sUGlwZSB9IGZyb20gJy4vc2FmZS1odG1sLnBpcGUnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtDc1NlbGVjdENvbXBvbmVudCwgQ3NPcHRpb25Db21wb25lbnQsIFNhZmVIdG1sUGlwZV0sXHJcbiAgaW1wb3J0czogW0Zvcm1zTW9kdWxlLCBDb21tb25Nb2R1bGVdLFxyXG4gIGV4cG9ydHM6IFtDc1NlbGVjdENvbXBvbmVudCwgQ3NPcHRpb25Db21wb25lbnRdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VsZWN0TW9kdWxlIHt9XHJcbiJdfQ==
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
export class CsSelectService {
|
|
4
|
+
color;
|
|
5
|
+
constructor() {
|
|
6
|
+
}
|
|
7
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CsSelectService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
8
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CsSelectService, providedIn: 'root' });
|
|
9
|
+
}
|
|
10
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CsSelectService, decorators: [{
|
|
11
|
+
type: Injectable,
|
|
12
|
+
args: [{
|
|
13
|
+
providedIn: 'root'
|
|
14
|
+
}]
|
|
15
|
+
}], ctorParameters: function () { return []; } });
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3Mtc2VsZWN0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jcmVhdGUtZGFzaGJvYXJkL3NyYy9saWIvdWkta2l0L3NlcnZpY2VzL2NzLXNlbGVjdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyxlQUFlO0lBQzFCLEtBQUssQ0FBTTtJQUNYO0lBQ0EsQ0FBQzt3R0FIVSxlQUFlOzRHQUFmLGVBQWUsY0FGZCxNQUFNOzs0RkFFUCxlQUFlO2tCQUgzQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIENzU2VsZWN0U2VydmljZSB7XHJcbiAgY29sb3I6IGFueTtcclxuICBjb25zdHJ1Y3RvcigpIHtcclxuICB9XHJcbn1cclxuIl19
|