@ardium-ui/ui 1.0.3 → 2.0.2
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/README.md +25 -25
- package/esm2022/lib/_internal/boolean-component.mjs +28 -42
- package/esm2022/lib/_internal/clear-button/clear-button.component.mjs +5 -5
- package/esm2022/lib/_internal/clear-button/clear-button.module.mjs +5 -5
- package/esm2022/lib/_internal/disablable-component.mjs +24 -22
- package/esm2022/lib/_internal/focusable-component.mjs +12 -25
- package/esm2022/lib/_internal/item-storages/dropdown-item-storage.mjs +172 -169
- package/esm2022/lib/_internal/item-storages/simple-item-storage.mjs +115 -120
- package/esm2022/lib/_internal/item-storages/simplest-item-storage.mjs +56 -53
- package/esm2022/lib/_internal/models/pagination.model.mjs +72 -106
- package/esm2022/lib/_internal/ngmodel-component.mjs +5 -5
- package/esm2022/lib/_internal/queue.mjs +1 -1
- package/esm2022/lib/_internal/selectable-list-component.mjs +74 -98
- package/esm2022/lib/badge/badge.directive.mjs +70 -99
- package/esm2022/lib/badge/badge.module.mjs +5 -5
- package/esm2022/lib/badge/badge.types.mjs +1 -1
- package/esm2022/lib/badge/index.mjs +4 -0
- package/esm2022/lib/buttons/_button-base.mjs +13 -35
- package/esm2022/lib/buttons/button/button.component.mjs +22 -37
- package/esm2022/lib/buttons/button/button.module.mjs +5 -5
- package/esm2022/lib/buttons/button/index.mjs +3 -0
- package/esm2022/lib/buttons/fab/fab.component.mjs +16 -28
- package/esm2022/lib/buttons/fab/fab.module.mjs +5 -5
- package/esm2022/lib/buttons/fab/index.mjs +3 -0
- package/esm2022/lib/buttons/general-button.types.mjs +1 -1
- package/esm2022/lib/buttons/icon-button/icon-button.component.mjs +17 -25
- package/esm2022/lib/buttons/icon-button/icon-button.module.mjs +5 -5
- package/esm2022/lib/buttons/icon-button/index.mjs +3 -0
- package/esm2022/lib/card/card.children.mjs +32 -33
- package/esm2022/lib/card/card.component.mjs +14 -17
- package/esm2022/lib/card/card.module.mjs +5 -5
- package/esm2022/lib/card/card.types.mjs +1 -1
- package/esm2022/lib/card/index.mjs +5 -0
- package/esm2022/lib/checkbox/checkbox.component.mjs +33 -46
- package/esm2022/lib/checkbox/checkbox.module.mjs +5 -5
- package/esm2022/lib/checkbox/checkbox.types.mjs +1 -1
- package/esm2022/lib/checkbox/index.mjs +4 -0
- package/esm2022/lib/checkbox-list/checkbox-list.component.mjs +31 -57
- package/esm2022/lib/checkbox-list/checkbox-list.module.mjs +5 -5
- package/esm2022/lib/checkbox-list/checkbox-list.types.mjs +1 -1
- package/esm2022/lib/checkbox-list/index.mjs +4 -0
- package/esm2022/lib/chip/chip.component.mjs +22 -42
- package/esm2022/lib/chip/chip.module.mjs +5 -5
- package/esm2022/lib/chip/deletable-chip/deletable-chip.component.mjs +28 -53
- package/esm2022/lib/chip/index.mjs +5 -0
- package/esm2022/lib/chip/selectable-chip/selectable-chip.component.mjs +25 -49
- package/esm2022/lib/color/color-display/color-display.component.mjs +15 -32
- package/esm2022/lib/color/color-display/color-display.module.mjs +5 -5
- package/esm2022/lib/color/color-display/color-display.types.mjs +1 -1
- package/esm2022/lib/color/color-display/index.mjs +4 -0
- package/esm2022/lib/color/color-picker/color-picker.types.mjs +1 -1
- package/esm2022/lib/dialog/dialog.component.mjs +54 -130
- package/esm2022/lib/dialog/dialog.directives.mjs +4 -4
- package/esm2022/lib/dialog/dialog.module.mjs +5 -5
- package/esm2022/lib/dialog/dialog.types.mjs +1 -1
- package/esm2022/lib/dialog/index.mjs +5 -0
- package/esm2022/lib/divider/divider.component.mjs +9 -14
- package/esm2022/lib/divider/divider.module.mjs +5 -5
- package/esm2022/lib/divider/index.mjs +3 -0
- package/esm2022/lib/dropdown-panel/dropdown-panel.component.mjs +40 -59
- package/esm2022/lib/dropdown-panel/dropdown-panel.module.mjs +5 -5
- package/esm2022/lib/dropdown-panel/dropdown-panel.types.mjs +1 -1
- package/esm2022/lib/dropdown-panel/index.mjs +4 -0
- package/esm2022/lib/file-inputs/file-drop-area/file-drop-area.component.mjs +12 -17
- package/esm2022/lib/file-inputs/file-drop-area/file-drop-area.directives.mjs +10 -10
- package/esm2022/lib/file-inputs/file-drop-area/file-drop-area.module.mjs +6 -6
- package/esm2022/lib/file-inputs/file-drop-area/index.mjs +4 -0
- package/esm2022/lib/file-inputs/file-input/file-input.component.mjs +24 -50
- package/esm2022/lib/file-inputs/file-input/file-input.directives.mjs +19 -19
- package/esm2022/lib/file-inputs/file-input/file-input.module.mjs +5 -5
- package/esm2022/lib/file-inputs/file-input/index.mjs +4 -0
- package/esm2022/lib/file-inputs/file-input-base.mjs +38 -72
- package/esm2022/lib/file-inputs/file-input-types.mjs +1 -1
- package/esm2022/lib/form-field-frame/form-field-frame.component.mjs +20 -47
- package/esm2022/lib/form-field-frame/form-field-frame.directives.mjs +7 -7
- package/esm2022/lib/form-field-frame/form-field-frame.module.mjs +5 -5
- package/esm2022/lib/form-field-frame/index.mjs +4 -0
- package/esm2022/lib/icon/icon.component.mjs +32 -67
- package/esm2022/lib/icon/icon.module.mjs +5 -5
- package/esm2022/lib/icon/icon.pipe.mjs +4 -4
- package/esm2022/lib/icon/index.mjs +4 -0
- package/esm2022/lib/inputs/color-input/color-input.directives.mjs +25 -25
- package/esm2022/lib/inputs/color-input/color-input.types.mjs +1 -1
- package/esm2022/lib/inputs/digit-input/digit-input.component.mjs +65 -115
- package/esm2022/lib/inputs/digit-input/digit-input.model.mjs +83 -92
- package/esm2022/lib/inputs/digit-input/digit-input.module.mjs +5 -5
- package/esm2022/lib/inputs/digit-input/digit-input.types.mjs +1 -1
- package/esm2022/lib/inputs/digit-input/digit-input.utils.mjs +1 -1
- package/esm2022/lib/inputs/digit-input/index.mjs +4 -0
- package/esm2022/lib/inputs/hex-input/hex-input.component.mjs +59 -122
- package/esm2022/lib/inputs/hex-input/hex-input.directives.mjs +10 -10
- package/esm2022/lib/inputs/hex-input/hex-input.module.mjs +24 -8
- package/esm2022/lib/inputs/hex-input/index.mjs +4 -0
- package/esm2022/lib/inputs/hex-input.model.mjs +24 -33
- package/esm2022/lib/inputs/input/index.mjs +4 -0
- package/esm2022/lib/inputs/input/input.component.mjs +95 -154
- package/esm2022/lib/inputs/input/input.directives.mjs +16 -16
- package/esm2022/lib/inputs/input/input.module.mjs +21 -7
- package/esm2022/lib/inputs/input-transformers.mjs +6 -6
- package/esm2022/lib/inputs/input-types.mjs +1 -1
- package/esm2022/lib/inputs/input-utils.mjs +75 -94
- package/esm2022/lib/inputs/number-input/index.mjs +4 -0
- package/esm2022/lib/inputs/number-input/number-input.component.mjs +106 -170
- package/esm2022/lib/inputs/number-input/number-input.directives.mjs +4 -4
- package/esm2022/lib/inputs/number-input/number-input.module.mjs +5 -5
- package/esm2022/lib/inputs/password-input/index.mjs +5 -0
- package/esm2022/lib/inputs/password-input/password-input.component.mjs +74 -144
- package/esm2022/lib/inputs/password-input/password-input.directives.mjs +13 -13
- package/esm2022/lib/inputs/password-input/password-input.module.mjs +5 -5
- package/esm2022/lib/inputs/password-input/password-input.types.mjs +1 -1
- package/esm2022/lib/inputs/simple-input/index.mjs +4 -0
- package/esm2022/lib/inputs/simple-input/simple-input.component.mjs +57 -110
- package/esm2022/lib/inputs/simple-input/simple-input.directives.mjs +10 -10
- package/esm2022/lib/inputs/simple-input/simple-input.module.mjs +5 -5
- package/esm2022/lib/kbd/index.mjs +4 -0
- package/esm2022/lib/kbd/kbd.component.mjs +15 -29
- package/esm2022/lib/kbd/kbd.module.mjs +5 -5
- package/esm2022/lib/kbd/kbd.pipe.mjs +4 -4
- package/esm2022/lib/kbd-shortcut/index.mjs +3 -0
- package/esm2022/lib/kbd-shortcut/kbd-shortcut.component.mjs +23 -40
- package/esm2022/lib/kbd-shortcut/kbd-shortcut.module.mjs +5 -5
- package/esm2022/lib/modal/index.mjs +3 -0
- package/esm2022/lib/modal/modal.component.mjs +42 -83
- package/esm2022/lib/modal/modal.module.mjs +5 -5
- package/esm2022/lib/option/index.mjs +3 -0
- package/esm2022/lib/option/option.component.mjs +24 -46
- package/esm2022/lib/option/option.module.mjs +5 -5
- package/esm2022/lib/progress-bar/index.mjs +5 -0
- package/esm2022/lib/progress-bar/progress-bar.component.mjs +43 -81
- package/esm2022/lib/progress-bar/progress-bar.directive.mjs +4 -4
- package/esm2022/lib/progress-bar/progress-bar.module.mjs +5 -5
- package/esm2022/lib/progress-bar/progress-bar.types.mjs +1 -1
- package/esm2022/lib/progress-circle/index.mjs +5 -0
- package/esm2022/lib/progress-circle/progress-circle.component.mjs +33 -78
- package/esm2022/lib/progress-circle/progress-circle.directive.mjs +4 -4
- package/esm2022/lib/progress-circle/progress-circle.module.mjs +5 -5
- package/esm2022/lib/progress-circle/progress-circle.types.mjs +1 -1
- package/esm2022/lib/radio/index.mjs +4 -0
- package/esm2022/lib/radio/radio/radio.component.mjs +16 -25
- package/esm2022/lib/radio/radio-group.component.mjs +71 -85
- package/esm2022/lib/radio/radio.module.mjs +5 -5
- package/esm2022/lib/search-functions.mjs +7 -7
- package/esm2022/lib/segment/index.mjs +5 -0
- package/esm2022/lib/segment/segment.component.mjs +70 -137
- package/esm2022/lib/segment/segment.directives.mjs +4 -4
- package/esm2022/lib/segment/segment.module.mjs +5 -5
- package/esm2022/lib/segment/segment.types.mjs +1 -1
- package/esm2022/lib/select/index.mjs +5 -0
- package/esm2022/lib/select/select.component.mjs +348 -655
- package/esm2022/lib/select/select.directive.mjs +46 -46
- package/esm2022/lib/select/select.module.mjs +5 -5
- package/esm2022/lib/select/select.types.mjs +1 -1
- package/esm2022/lib/slide-toggle/index.mjs +4 -0
- package/esm2022/lib/slide-toggle/slide-toggle.component.mjs +19 -24
- package/esm2022/lib/slide-toggle/slide-toggle.module.mjs +5 -5
- package/esm2022/lib/slide-toggle/slide-toggle.types.mjs +5 -0
- package/esm2022/lib/slider/abstract-slider.mjs +111 -200
- package/esm2022/lib/slider/index.mjs +7 -0
- package/esm2022/lib/slider/range-slider/range-slider.component.mjs +26 -23
- package/esm2022/lib/slider/range-slider/range-slider.module.mjs +5 -5
- package/esm2022/lib/slider/slider.component.mjs +13 -10
- package/esm2022/lib/slider/slider.directive.mjs +4 -4
- package/esm2022/lib/slider/slider.module.mjs +7 -7
- package/esm2022/lib/slider/slider.types.mjs +1 -1
- package/esm2022/lib/snackbar/index.mjs +1 -1
- package/esm2022/lib/snackbar/snackbar-ref.mjs +1 -1
- package/esm2022/lib/snackbar/snackbar.component.mjs +8 -8
- package/esm2022/lib/snackbar/snackbar.service.mjs +13 -12
- package/esm2022/lib/snackbar/snackbar.token.mjs +1 -1
- package/esm2022/lib/snackbar/snackbar.types.mjs +1 -1
- package/esm2022/lib/spinner/index.mjs +3 -0
- package/esm2022/lib/spinner/spinner.component.mjs +9 -13
- package/esm2022/lib/spinner/spinner.module.mjs +5 -5
- package/esm2022/lib/star/index.mjs +4 -0
- package/esm2022/lib/star/star-button/index.mjs +3 -0
- package/esm2022/lib/star/star-button/star-button.component.mjs +17 -26
- package/esm2022/lib/star/star-button/star-button.module.mjs +5 -5
- package/esm2022/lib/star/star-display/index.mjs +3 -0
- package/esm2022/lib/star/star-display/star-display.component.mjs +48 -55
- package/esm2022/lib/star/star-display/star-display.module.mjs +5 -5
- package/esm2022/lib/star/star-input/index.mjs +3 -0
- package/esm2022/lib/star/star-input/star-input.component.mjs +70 -106
- package/esm2022/lib/star/star-input/star-input.module.mjs +5 -5
- package/esm2022/lib/star/star.component.mjs +12 -20
- package/esm2022/lib/star/star.module.mjs +5 -5
- package/esm2022/lib/star/star.types.mjs +1 -1
- package/esm2022/lib/statebox/index.mjs +3 -0
- package/esm2022/lib/statebox/statebox.component.mjs +64 -102
- package/esm2022/lib/statebox/statebox.module.mjs +5 -5
- package/esm2022/lib/statebox/statebox.types.mjs +1 -1
- package/esm2022/lib/tabber/index.mjs +4 -0
- package/esm2022/lib/tabber/tab/tab.component.mjs +42 -0
- package/esm2022/lib/tabber/tabber.component.mjs +83 -0
- package/esm2022/lib/tabber/tabber.module.mjs +19 -0
- package/esm2022/lib/table/index.mjs +5 -0
- package/esm2022/lib/table/table-item-storage.mjs +204 -200
- package/esm2022/lib/table/table.component.mjs +184 -304
- package/esm2022/lib/table/table.directives.mjs +19 -21
- package/esm2022/lib/table/table.module.mjs +5 -5
- package/esm2022/lib/table/table.types.mjs +1 -1
- package/esm2022/lib/table/utils.mjs +1 -1
- package/esm2022/lib/table-from-csv/index.mjs +3 -0
- package/esm2022/lib/table-from-csv/table-from-csv.component.mjs +85 -29
- package/esm2022/lib/table-from-csv/table-from-csv.module.mjs +5 -5
- package/esm2022/lib/table-pagination/index.mjs +4 -0
- package/esm2022/lib/table-pagination/table-pagination.component.mjs +46 -114
- package/esm2022/lib/table-pagination/table-pagination.module.mjs +5 -5
- package/esm2022/lib/table-pagination/table-pagination.types.mjs +1 -1
- package/esm2022/lib/types/alignment.types.mjs +1 -1
- package/esm2022/lib/types/colors.types.mjs +1 -1
- package/esm2022/lib/types/item-storage.types.mjs +1 -1
- package/esm2022/lib/types/theming.types.mjs +1 -1
- package/esm2022/lib/types/utility.types.mjs +2 -2
- package/esm2022/public-api.mjs +58 -182
- package/fesm2022/ardium-ui-ui.mjs +7847 -11692
- package/fesm2022/ardium-ui-ui.mjs.map +1 -1
- package/lib/_internal/boolean-component.d.ts +8 -9
- package/lib/_internal/clear-button/clear-button.component.d.ts +1 -1
- package/lib/_internal/disablable-component.d.ts +12 -7
- package/lib/_internal/focusable-component.d.ts +5 -7
- package/lib/_internal/item-storages/dropdown-item-storage.d.ts +43 -41
- package/lib/_internal/item-storages/simple-item-storage.d.ts +28 -25
- package/lib/_internal/item-storages/simplest-item-storage.d.ts +14 -9
- package/lib/_internal/models/pagination.model.d.ts +38 -42
- package/lib/_internal/ngmodel-component.d.ts +1 -1
- package/lib/_internal/selectable-list-component.d.ts +30 -30
- package/lib/badge/badge.directive.d.ts +15 -20
- package/lib/badge/index.d.ts +3 -0
- package/lib/buttons/_button-base.d.ts +9 -12
- package/lib/buttons/button/button.component.d.ts +6 -8
- package/lib/buttons/button/index.d.ts +2 -0
- package/lib/buttons/fab/fab.component.d.ts +4 -6
- package/lib/buttons/fab/index.d.ts +2 -0
- package/lib/buttons/icon-button/icon-button.component.d.ts +6 -7
- package/lib/buttons/icon-button/index.d.ts +2 -0
- package/lib/card/card.children.d.ts +4 -3
- package/lib/card/card.component.d.ts +5 -4
- package/lib/card/index.d.ts +4 -0
- package/lib/checkbox/checkbox.component.d.ts +8 -12
- package/lib/checkbox/index.d.ts +3 -0
- package/lib/checkbox-list/checkbox-list.component.d.ts +22 -21
- package/lib/checkbox-list/index.d.ts +3 -0
- package/lib/chip/chip.component.d.ts +8 -10
- package/lib/chip/deletable-chip/deletable-chip.component.d.ts +11 -14
- package/lib/chip/index.d.ts +4 -0
- package/lib/chip/selectable-chip/selectable-chip.component.d.ts +10 -12
- package/lib/color/color-display/color-display.component.d.ts +6 -9
- package/lib/color/color-display/index.d.ts +3 -0
- package/lib/color/color-picker/color-picker.types.d.ts +4 -4
- package/lib/dialog/dialog.component.d.ts +25 -35
- package/lib/dialog/dialog.types.d.ts +2 -2
- package/lib/dialog/index.d.ts +4 -0
- package/lib/divider/divider.component.d.ts +3 -4
- package/lib/divider/index.d.ts +2 -0
- package/lib/dropdown-panel/dropdown-panel.component.d.ts +17 -20
- package/lib/dropdown-panel/index.d.ts +3 -0
- package/lib/file-inputs/file-drop-area/file-drop-area.component.d.ts +5 -4
- package/lib/file-inputs/file-drop-area/index.d.ts +3 -0
- package/lib/file-inputs/file-input/file-input.component.d.ts +13 -17
- package/lib/file-inputs/file-input/index.d.ts +3 -0
- package/lib/file-inputs/file-input-base.d.ts +13 -18
- package/lib/form-field-frame/form-field-frame.component.d.ts +12 -16
- package/lib/form-field-frame/index.d.ts +3 -0
- package/lib/icon/icon.component.d.ts +10 -19
- package/lib/icon/index.d.ts +3 -0
- package/lib/inputs/color-input/color-input.types.d.ts +2 -2
- package/lib/inputs/digit-input/digit-input.component.d.ts +22 -30
- package/lib/inputs/digit-input/digit-input.model.d.ts +8 -12
- package/lib/inputs/digit-input/digit-input.types.d.ts +4 -4
- package/lib/inputs/digit-input/digit-input.utils.d.ts +4 -5
- package/lib/inputs/digit-input/index.d.ts +3 -0
- package/lib/inputs/hex-input/hex-input.component.d.ts +32 -38
- package/lib/inputs/hex-input/index.d.ts +3 -0
- package/lib/inputs/hex-input.model.d.ts +10 -11
- package/lib/inputs/input/index.d.ts +3 -0
- package/lib/inputs/input/input.component.d.ts +34 -40
- package/lib/inputs/input/input.directives.d.ts +3 -3
- package/lib/inputs/input-utils.d.ts +24 -27
- package/lib/inputs/number-input/index.d.ts +3 -0
- package/lib/inputs/number-input/number-input.component.d.ts +38 -48
- package/lib/inputs/password-input/index.d.ts +4 -0
- package/lib/inputs/password-input/password-input.component.d.ts +28 -40
- package/lib/inputs/password-input/password-input.types.d.ts +2 -2
- package/lib/inputs/simple-input/index.d.ts +3 -0
- package/lib/inputs/simple-input/simple-input.component.d.ts +30 -35
- package/lib/kbd/index.d.ts +3 -0
- package/lib/kbd/kbd.component.d.ts +6 -8
- package/lib/kbd-shortcut/index.d.ts +2 -0
- package/lib/kbd-shortcut/kbd-shortcut.component.d.ts +7 -10
- package/lib/modal/index.d.ts +2 -0
- package/lib/modal/modal.component.d.ts +22 -30
- package/lib/option/index.d.ts +2 -0
- package/lib/option/option.component.d.ts +11 -16
- package/lib/progress-bar/index.d.ts +4 -0
- package/lib/progress-bar/progress-bar.component.d.ts +14 -20
- package/lib/progress-bar/progress-bar.types.d.ts +2 -2
- package/lib/progress-circle/index.d.ts +4 -0
- package/lib/progress-circle/progress-circle.component.d.ts +12 -20
- package/lib/progress-circle/progress-circle.types.d.ts +2 -2
- package/lib/radio/index.d.ts +3 -0
- package/lib/radio/radio/radio.component.d.ts +7 -8
- package/lib/radio/radio-group.component.d.ts +13 -16
- package/lib/segment/index.d.ts +4 -0
- package/lib/segment/segment.component.d.ts +22 -34
- package/lib/segment/segment.directives.d.ts +2 -3
- package/lib/select/index.d.ts +4 -0
- package/lib/select/select.component.d.ts +114 -160
- package/lib/select/select.directive.d.ts +3 -3
- package/lib/select/select.types.d.ts +2 -76
- package/lib/slide-toggle/index.d.ts +3 -0
- package/lib/slide-toggle/slide-toggle.component.d.ts +9 -7
- package/lib/slide-toggle/slide-toggle.types.d.ts +5 -0
- package/lib/slider/abstract-slider.d.ts +38 -55
- package/lib/slider/index.d.ts +6 -0
- package/lib/slider/range-slider/range-slider.component.d.ts +3 -1
- package/lib/slider/slider.component.d.ts +2 -0
- package/lib/slider/slider.types.d.ts +8 -8
- package/lib/snackbar/snackbar-ref.d.ts +1 -2
- package/lib/snackbar/snackbar.component.d.ts +3 -3
- package/lib/snackbar/snackbar.service.d.ts +2 -2
- package/lib/snackbar/snackbar.types.d.ts +4 -4
- package/lib/spinner/index.d.ts +2 -0
- package/lib/spinner/spinner.component.d.ts +3 -3
- package/lib/star/index.d.ts +3 -0
- package/lib/star/star-button/index.d.ts +2 -0
- package/lib/star/star-button/star-button.component.d.ts +7 -7
- package/lib/star/star-display/index.d.ts +2 -0
- package/lib/star/star-display/star-display.component.d.ts +8 -12
- package/lib/star/star-input/index.d.ts +2 -0
- package/lib/star/star-input/star-input.component.d.ts +17 -22
- package/lib/star/star.component.d.ts +5 -5
- package/lib/statebox/index.d.ts +3 -0
- package/lib/statebox/statebox.component.d.ts +15 -21
- package/lib/statebox/statebox.types.d.ts +12 -8
- package/lib/tabber/index.d.ts +3 -0
- package/lib/tabber/tab/tab.component.d.ts +18 -0
- package/lib/tabber/tabber.component.d.ts +25 -0
- package/lib/tabber/tabber.module.d.ts +9 -0
- package/lib/table/index.d.ts +4 -0
- package/lib/table/table-item-storage.d.ts +70 -58
- package/lib/table/table.component.d.ts +59 -78
- package/lib/table/table.directives.d.ts +4 -3
- package/lib/table-from-csv/index.d.ts +2 -0
- package/lib/table-from-csv/table-from-csv.component.d.ts +46 -9
- package/lib/table-pagination/index.d.ts +3 -0
- package/lib/table-pagination/table-pagination.component.d.ts +21 -30
- package/lib/types/item-storage.types.d.ts +19 -18
- package/lib/types/utility.types.d.ts +2 -1
- package/package.json +8 -9
- package/prebuilt-themes/default/badge.css +5 -5
- package/prebuilt-themes/default/buttons/fab.css +4 -3
- package/prebuilt-themes/default/buttons/fab.css.map +1 -1
- package/prebuilt-themes/default/card.css +7 -7
- package/prebuilt-themes/default/chips.css +3 -8
- package/prebuilt-themes/default/chips.css.map +1 -1
- package/prebuilt-themes/default/core.css +6 -3
- package/prebuilt-themes/default/core.css.map +1 -1
- package/prebuilt-themes/default/inputs/color-input.css +1 -1
- package/prebuilt-themes/default/inputs/digit-input.css +1 -1
- package/prebuilt-themes/default/inputs/file-input.css +139 -2
- package/prebuilt-themes/default/inputs/file-input.css.map +1 -1
- package/prebuilt-themes/default/inputs/hex-input.css +2 -2
- package/prebuilt-themes/default/inputs/input.css +1 -1
- package/prebuilt-themes/default/inputs/search-bar.css +1 -1
- package/prebuilt-themes/default/inputs/simple-input.css +1 -1
- package/prebuilt-themes/default/modal.css +1 -1
- package/prebuilt-themes/default/segment.css +2 -2
- package/prebuilt-themes/default/segment.css.map +1 -1
- package/prebuilt-themes/default/select.css +5 -3
- package/prebuilt-themes/default/select.css.map +1 -1
- package/prebuilt-themes/default/snackbar.css +0 -1
- package/prebuilt-themes/default/snackbar.css.map +1 -1
- package/prebuilt-themes/default/tabber.css +207 -0
- package/prebuilt-themes/default/tabber.css.map +1 -0
- package/public-api.d.ts +43 -136
- package/themes/_variables.scss +121 -121
- package/themes/default/_clear-button.scss +73 -73
- package/themes/default/_coloring.scss +137 -137
- package/themes/default/_dropdown-arrow.scss +12 -12
- package/themes/default/_mixins.scss +70 -70
- package/themes/default/badge.scss +94 -94
- package/themes/default/buttons/_button-mixins.scss +144 -144
- package/themes/default/buttons/button.scss +62 -62
- package/themes/default/buttons/fab.scss +74 -72
- package/themes/default/buttons/icon-button.scss +59 -59
- package/themes/default/calendar.scss +182 -182
- package/themes/default/card.scss +126 -126
- package/themes/default/checkbox-list.scss +83 -83
- package/themes/default/checkbox.scss +109 -109
- package/themes/default/chips.scss +200 -206
- package/themes/default/color-display.scss +41 -41
- package/themes/default/color-picker.scss +111 -111
- package/themes/default/core.scss +99 -96
- package/themes/default/dialog.scss +16 -16
- package/themes/default/divider.scss +13 -13
- package/themes/default/dropdown-panel.scss +45 -45
- package/themes/default/file-drop-area.scss +162 -162
- package/themes/default/form-field-frame.scss +78 -78
- package/themes/default/inputs/_shared.scss +46 -46
- package/themes/default/inputs/color-input.scss +46 -46
- package/themes/default/inputs/digit-input.scss +56 -56
- package/themes/default/inputs/file-input.scss +85 -78
- package/themes/default/inputs/hex-input.scss +27 -27
- package/themes/default/inputs/input.scss +52 -52
- package/themes/default/inputs/number-input.scss +121 -121
- package/themes/default/inputs/password-input.scss +43 -43
- package/themes/default/inputs/search-bar.scss +19 -19
- package/themes/default/inputs/simple-input.scss +19 -19
- package/themes/default/kbd-shortcut.scss +13 -13
- package/themes/default/kbd.scss +20 -20
- package/themes/default/modal.scss +93 -93
- package/themes/default/progress-bar.scss +166 -166
- package/themes/default/progress-circle.scss +56 -56
- package/themes/default/radio.scss +112 -112
- package/themes/default/segment.scss +340 -339
- package/themes/default/select.scss +255 -253
- package/themes/default/slide-toggle.scss +151 -151
- package/themes/default/slider.scss +224 -224
- package/themes/default/snackbar.scss +58 -60
- package/themes/default/spinner.scss +21 -21
- package/themes/default/stars.scss +122 -122
- package/themes/default/statebox.scss +109 -109
- package/themes/default/tabber.scss +86 -0
- package/themes/default/table-pagination.scss +56 -56
- package/themes/default/table.scss +403 -403
- package/esm2022/lib/calendar/calendar.component.mjs +0 -979
- package/esm2022/lib/calendar/calendar.directives.mjs +0 -107
- package/esm2022/lib/calendar/calendar.helpers.mjs +0 -47
- package/esm2022/lib/calendar/calendar.module.mjs +0 -21
- package/esm2022/lib/calendar/calendar.types.mjs +0 -11
- package/esm2022/lib/color/color-picker/color-picker.component.mjs +0 -484
- package/esm2022/lib/color/color-picker/color-picker.directives.mjs +0 -55
- package/esm2022/lib/color/color-picker/color-picker.module.mjs +0 -43
- package/esm2022/lib/inputs/color-input/color-input.component.mjs +0 -421
- package/esm2022/lib/inputs/color-input/color-input.module.mjs +0 -85
- package/lib/calendar/calendar.component.d.ts +0 -155
- package/lib/calendar/calendar.directives.d.ts +0 -51
- package/lib/calendar/calendar.helpers.d.ts +0 -15
- package/lib/calendar/calendar.module.d.ts +0 -11
- package/lib/calendar/calendar.types.d.ts +0 -80
- package/lib/color/color-picker/color-picker.component.d.ts +0 -125
- package/lib/color/color-picker/color-picker.directives.d.ts +0 -27
- package/lib/color/color-picker/color-picker.module.d.ts +0 -13
- package/lib/inputs/color-input/color-input.component.d.ts +0 -147
- package/lib/inputs/color-input/color-input.module.d.ts +0 -16
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
import { Directive } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class ArdColorPickerShadeIndicatorTemplateDirective {
|
|
4
|
-
constructor(template) {
|
|
5
|
-
this.template = template;
|
|
6
|
-
}
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ArdColorPickerShadeIndicatorTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
8
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.9", type: ArdColorPickerShadeIndicatorTemplateDirective, selector: "ard-color-picker > ng-template[ard-shade-indicator-tmp]", ngImport: i0 }); }
|
|
9
|
-
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ArdColorPickerShadeIndicatorTemplateDirective, decorators: [{
|
|
11
|
-
type: Directive,
|
|
12
|
-
args: [{
|
|
13
|
-
selector: 'ard-color-picker > ng-template[ard-shade-indicator-tmp]',
|
|
14
|
-
}]
|
|
15
|
-
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
16
|
-
export class ArdColorPickerHueIndicatorTemplateDirective {
|
|
17
|
-
constructor(template) {
|
|
18
|
-
this.template = template;
|
|
19
|
-
}
|
|
20
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ArdColorPickerHueIndicatorTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
21
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.9", type: ArdColorPickerHueIndicatorTemplateDirective, selector: "ard-color-picker > ng-template[ard-hue-indicator-tmp]", ngImport: i0 }); }
|
|
22
|
-
}
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ArdColorPickerHueIndicatorTemplateDirective, decorators: [{
|
|
24
|
-
type: Directive,
|
|
25
|
-
args: [{
|
|
26
|
-
selector: 'ard-color-picker > ng-template[ard-hue-indicator-tmp]',
|
|
27
|
-
}]
|
|
28
|
-
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
29
|
-
export class ArdColorPickerOpacityIndicatorTemplateDirective {
|
|
30
|
-
constructor(template) {
|
|
31
|
-
this.template = template;
|
|
32
|
-
}
|
|
33
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ArdColorPickerOpacityIndicatorTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
34
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.9", type: ArdColorPickerOpacityIndicatorTemplateDirective, selector: "ard-color-picker > ng-template[ard-opacity-indicator-tmp]", ngImport: i0 }); }
|
|
35
|
-
}
|
|
36
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ArdColorPickerOpacityIndicatorTemplateDirective, decorators: [{
|
|
37
|
-
type: Directive,
|
|
38
|
-
args: [{
|
|
39
|
-
selector: 'ard-color-picker > ng-template[ard-opacity-indicator-tmp]',
|
|
40
|
-
}]
|
|
41
|
-
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
42
|
-
export class ArdColorPickerColorReferenceTemplateDirective {
|
|
43
|
-
constructor(template) {
|
|
44
|
-
this.template = template;
|
|
45
|
-
}
|
|
46
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ArdColorPickerColorReferenceTemplateDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
47
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.9", type: ArdColorPickerColorReferenceTemplateDirective, selector: "ard-color-picker > ng-template[ard-color-reference-tmp]", ngImport: i0 }); }
|
|
48
|
-
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ArdColorPickerColorReferenceTemplateDirective, decorators: [{
|
|
50
|
-
type: Directive,
|
|
51
|
-
args: [{
|
|
52
|
-
selector: 'ard-color-picker > ng-template[ard-color-reference-tmp]',
|
|
53
|
-
}]
|
|
54
|
-
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
55
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLmRpcmVjdGl2ZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS9zcmMvbGliL2NvbG9yL2NvbG9yLXBpY2tlci9jb2xvci1waWNrZXIuZGlyZWN0aXZlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFlLE1BQU0sZUFBZSxDQUFDOztBQU12RCxNQUFNLE9BQU8sNkNBQTZDO0lBQ3hELFlBQW1CLFFBQWtEO1FBQWxELGFBQVEsR0FBUixRQUFRLENBQTBDO0lBQUcsQ0FBQzs4R0FEOUQsNkNBQTZDO2tHQUE3Qyw2Q0FBNkM7OzJGQUE3Qyw2Q0FBNkM7a0JBSHpELFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlEQUF5RDtpQkFDcEU7O0FBUUQsTUFBTSxPQUFPLDJDQUEyQztJQUN0RCxZQUFtQixRQUFrRDtRQUFsRCxhQUFRLEdBQVIsUUFBUSxDQUEwQztJQUFHLENBQUM7OEdBRDlELDJDQUEyQztrR0FBM0MsMkNBQTJDOzsyRkFBM0MsMkNBQTJDO2tCQUh2RCxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSx1REFBdUQ7aUJBQ2xFOztBQVFELE1BQU0sT0FBTywrQ0FBK0M7SUFDMUQsWUFBbUIsUUFBa0Q7UUFBbEQsYUFBUSxHQUFSLFFBQVEsQ0FBMEM7SUFBRyxDQUFDOzhHQUQ5RCwrQ0FBK0M7a0dBQS9DLCtDQUErQzs7MkZBQS9DLCtDQUErQztrQkFIM0QsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsMkRBQTJEO2lCQUN0RTs7QUFRRCxNQUFNLE9BQU8sNkNBQTZDO0lBQ3hELFlBQW1CLFFBQXVEO1FBQXZELGFBQVEsR0FBUixRQUFRLENBQStDO0lBQUcsQ0FBQzs4R0FEbkUsNkNBQTZDO2tHQUE3Qyw2Q0FBNkM7OzJGQUE3Qyw2Q0FBNkM7a0JBSHpELFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlEQUF5RDtpQkFDcEUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbG9yUGlja2VyQ29sb3JSZWZlcmVuY2VDb250ZXh0LCBDb2xvclBpY2tlckluZGljYXRvckNvbnRleHQgfSBmcm9tICcuL2NvbG9yLXBpY2tlci50eXBlcyc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ2FyZC1jb2xvci1waWNrZXIgPiBuZy10ZW1wbGF0ZVthcmQtc2hhZGUtaW5kaWNhdG9yLXRtcF0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXJkQ29sb3JQaWNrZXJTaGFkZUluZGljYXRvclRlbXBsYXRlRGlyZWN0aXZlIHtcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPENvbG9yUGlja2VySW5kaWNhdG9yQ29udGV4dD4pIHt9XHJcbn1cclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnYXJkLWNvbG9yLXBpY2tlciA+IG5nLXRlbXBsYXRlW2FyZC1odWUtaW5kaWNhdG9yLXRtcF0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXJkQ29sb3JQaWNrZXJIdWVJbmRpY2F0b3JUZW1wbGF0ZURpcmVjdGl2ZSB7XHJcbiAgY29uc3RydWN0b3IocHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxDb2xvclBpY2tlckluZGljYXRvckNvbnRleHQ+KSB7fVxyXG59XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ2FyZC1jb2xvci1waWNrZXIgPiBuZy10ZW1wbGF0ZVthcmQtb3BhY2l0eS1pbmRpY2F0b3ItdG1wXScsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBcmRDb2xvclBpY2tlck9wYWNpdHlJbmRpY2F0b3JUZW1wbGF0ZURpcmVjdGl2ZSB7XHJcbiAgY29uc3RydWN0b3IocHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxDb2xvclBpY2tlckluZGljYXRvckNvbnRleHQ+KSB7fVxyXG59XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ2FyZC1jb2xvci1waWNrZXIgPiBuZy10ZW1wbGF0ZVthcmQtY29sb3ItcmVmZXJlbmNlLXRtcF0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXJkQ29sb3JQaWNrZXJDb2xvclJlZmVyZW5jZVRlbXBsYXRlRGlyZWN0aXZlIHtcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPENvbG9yUGlja2VyQ29sb3JSZWZlcmVuY2VDb250ZXh0Pikge31cclxufVxyXG4iXX0=
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
import { CommonModule } from '@angular/common';
|
|
2
|
-
import { NgModule } from '@angular/core';
|
|
3
|
-
import { ArdiumHexInputModule } from '../../inputs/hex-input/hex-input.module';
|
|
4
|
-
import { ArdiumNumberInputModule } from '../../inputs/number-input/number-input.module';
|
|
5
|
-
import { ArdiumOptionModule } from '../../option/option.module';
|
|
6
|
-
import { ArdiumSelectModule } from '../../select/select.module';
|
|
7
|
-
import { ArdiumColorPickerComponent } from './color-picker.component';
|
|
8
|
-
import { ArdColorPickerColorReferenceTemplateDirective, ArdColorPickerHueIndicatorTemplateDirective, ArdColorPickerOpacityIndicatorTemplateDirective, ArdColorPickerShadeIndicatorTemplateDirective, } from './color-picker.directives';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
export class ArdiumColorPickerModule {
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ArdiumColorPickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
12
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.9", ngImport: i0, type: ArdiumColorPickerModule, declarations: [ArdiumColorPickerComponent,
|
|
13
|
-
ArdColorPickerHueIndicatorTemplateDirective,
|
|
14
|
-
ArdColorPickerShadeIndicatorTemplateDirective,
|
|
15
|
-
ArdColorPickerColorReferenceTemplateDirective,
|
|
16
|
-
ArdColorPickerOpacityIndicatorTemplateDirective], imports: [CommonModule, ArdiumSelectModule, ArdiumOptionModule, ArdiumNumberInputModule, ArdiumHexInputModule], exports: [ArdiumColorPickerComponent,
|
|
17
|
-
ArdColorPickerHueIndicatorTemplateDirective,
|
|
18
|
-
ArdColorPickerShadeIndicatorTemplateDirective,
|
|
19
|
-
ArdColorPickerColorReferenceTemplateDirective,
|
|
20
|
-
ArdColorPickerOpacityIndicatorTemplateDirective] }); }
|
|
21
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ArdiumColorPickerModule, imports: [CommonModule, ArdiumSelectModule, ArdiumOptionModule, ArdiumNumberInputModule, ArdiumHexInputModule] }); }
|
|
22
|
-
}
|
|
23
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ArdiumColorPickerModule, decorators: [{
|
|
24
|
-
type: NgModule,
|
|
25
|
-
args: [{
|
|
26
|
-
declarations: [
|
|
27
|
-
ArdiumColorPickerComponent,
|
|
28
|
-
ArdColorPickerHueIndicatorTemplateDirective,
|
|
29
|
-
ArdColorPickerShadeIndicatorTemplateDirective,
|
|
30
|
-
ArdColorPickerColorReferenceTemplateDirective,
|
|
31
|
-
ArdColorPickerOpacityIndicatorTemplateDirective,
|
|
32
|
-
],
|
|
33
|
-
imports: [CommonModule, ArdiumSelectModule, ArdiumOptionModule, ArdiumNumberInputModule, ArdiumHexInputModule],
|
|
34
|
-
exports: [
|
|
35
|
-
ArdiumColorPickerComponent,
|
|
36
|
-
ArdColorPickerHueIndicatorTemplateDirective,
|
|
37
|
-
ArdColorPickerShadeIndicatorTemplateDirective,
|
|
38
|
-
ArdColorPickerColorReferenceTemplateDirective,
|
|
39
|
-
ArdColorPickerOpacityIndicatorTemplateDirective,
|
|
40
|
-
],
|
|
41
|
-
}]
|
|
42
|
-
}] });
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpL3NyYy9saWIvY29sb3IvY29sb3ItcGlja2VyL2NvbG9yLXBpY2tlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0NBQStDLENBQUM7QUFDeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDdEUsT0FBTyxFQUNMLDZDQUE2QyxFQUM3QywyQ0FBMkMsRUFDM0MsK0NBQStDLEVBQy9DLDZDQUE2QyxHQUM5QyxNQUFNLDJCQUEyQixDQUFDOztBQW1CbkMsTUFBTSxPQUFPLHVCQUF1Qjs4R0FBdkIsdUJBQXVCOytHQUF2Qix1QkFBdUIsaUJBZmhDLDBCQUEwQjtZQUMxQiwyQ0FBMkM7WUFDM0MsNkNBQTZDO1lBQzdDLDZDQUE2QztZQUM3QywrQ0FBK0MsYUFFdkMsWUFBWSxFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLHVCQUF1QixFQUFFLG9CQUFvQixhQUUzRywwQkFBMEI7WUFDMUIsMkNBQTJDO1lBQzNDLDZDQUE2QztZQUM3Qyw2Q0FBNkM7WUFDN0MsK0NBQStDOytHQUd0Qyx1QkFBdUIsWUFUeEIsWUFBWSxFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLHVCQUF1QixFQUFFLG9CQUFvQjs7MkZBU2xHLHVCQUF1QjtrQkFqQm5DLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLDBCQUEwQjt3QkFDMUIsMkNBQTJDO3dCQUMzQyw2Q0FBNkM7d0JBQzdDLDZDQUE2Qzt3QkFDN0MsK0NBQStDO3FCQUNoRDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsa0JBQWtCLEVBQUUsdUJBQXVCLEVBQUUsb0JBQW9CLENBQUM7b0JBQzlHLE9BQU8sRUFBRTt3QkFDUCwwQkFBMEI7d0JBQzFCLDJDQUEyQzt3QkFDM0MsNkNBQTZDO3dCQUM3Qyw2Q0FBNkM7d0JBQzdDLCtDQUErQztxQkFDaEQ7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBcmRpdW1IZXhJbnB1dE1vZHVsZSB9IGZyb20gJy4uLy4uL2lucHV0cy9oZXgtaW5wdXQvaGV4LWlucHV0Lm1vZHVsZSc7XHJcbmltcG9ydCB7IEFyZGl1bU51bWJlcklucHV0TW9kdWxlIH0gZnJvbSAnLi4vLi4vaW5wdXRzL251bWJlci1pbnB1dC9udW1iZXItaW5wdXQubW9kdWxlJztcclxuaW1wb3J0IHsgQXJkaXVtT3B0aW9uTW9kdWxlIH0gZnJvbSAnLi4vLi4vb3B0aW9uL29wdGlvbi5tb2R1bGUnO1xyXG5pbXBvcnQgeyBBcmRpdW1TZWxlY3RNb2R1bGUgfSBmcm9tICcuLi8uLi9zZWxlY3Qvc2VsZWN0Lm1vZHVsZSc7XHJcbmltcG9ydCB7IEFyZGl1bUNvbG9yUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jb2xvci1waWNrZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHtcclxuICBBcmRDb2xvclBpY2tlckNvbG9yUmVmZXJlbmNlVGVtcGxhdGVEaXJlY3RpdmUsXHJcbiAgQXJkQ29sb3JQaWNrZXJIdWVJbmRpY2F0b3JUZW1wbGF0ZURpcmVjdGl2ZSxcclxuICBBcmRDb2xvclBpY2tlck9wYWNpdHlJbmRpY2F0b3JUZW1wbGF0ZURpcmVjdGl2ZSxcclxuICBBcmRDb2xvclBpY2tlclNoYWRlSW5kaWNhdG9yVGVtcGxhdGVEaXJlY3RpdmUsXHJcbn0gZnJvbSAnLi9jb2xvci1waWNrZXIuZGlyZWN0aXZlcyc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gICAgQXJkaXVtQ29sb3JQaWNrZXJDb21wb25lbnQsXHJcbiAgICBBcmRDb2xvclBpY2tlckh1ZUluZGljYXRvclRlbXBsYXRlRGlyZWN0aXZlLFxyXG4gICAgQXJkQ29sb3JQaWNrZXJTaGFkZUluZGljYXRvclRlbXBsYXRlRGlyZWN0aXZlLFxyXG4gICAgQXJkQ29sb3JQaWNrZXJDb2xvclJlZmVyZW5jZVRlbXBsYXRlRGlyZWN0aXZlLFxyXG4gICAgQXJkQ29sb3JQaWNrZXJPcGFjaXR5SW5kaWNhdG9yVGVtcGxhdGVEaXJlY3RpdmUsXHJcbiAgXSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBBcmRpdW1TZWxlY3RNb2R1bGUsIEFyZGl1bU9wdGlvbk1vZHVsZSwgQXJkaXVtTnVtYmVySW5wdXRNb2R1bGUsIEFyZGl1bUhleElucHV0TW9kdWxlXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBBcmRpdW1Db2xvclBpY2tlckNvbXBvbmVudCxcclxuICAgIEFyZENvbG9yUGlja2VySHVlSW5kaWNhdG9yVGVtcGxhdGVEaXJlY3RpdmUsXHJcbiAgICBBcmRDb2xvclBpY2tlclNoYWRlSW5kaWNhdG9yVGVtcGxhdGVEaXJlY3RpdmUsXHJcbiAgICBBcmRDb2xvclBpY2tlckNvbG9yUmVmZXJlbmNlVGVtcGxhdGVEaXJlY3RpdmUsXHJcbiAgICBBcmRDb2xvclBpY2tlck9wYWNpdHlJbmRpY2F0b3JUZW1wbGF0ZURpcmVjdGl2ZSxcclxuICBdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgQXJkaXVtQ29sb3JQaWNrZXJNb2R1bGUge31cclxuIl19
|
|
@@ -1,421 +0,0 @@
|
|
|
1
|
-
import { OverlayConfig } from '@angular/cdk/overlay';
|
|
2
|
-
import { TemplatePortal } from '@angular/cdk/portal';
|
|
3
|
-
import { ChangeDetectionStrategy, Component, ContentChild, ElementRef, EventEmitter, forwardRef, Input, Output, TemplateRef, ViewChild, ViewEncapsulation, } from '@angular/core';
|
|
4
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
5
|
-
import { coerceBooleanProperty } from '@ardium-ui/devkit';
|
|
6
|
-
import * as Color from 'color';
|
|
7
|
-
import { ButtonVariant } from '../../buttons/general-button.types';
|
|
8
|
-
import { DropdownPanelAppearance, DropdownPanelVariant } from '../../dropdown-panel/dropdown-panel.types';
|
|
9
|
-
import { FormElementAppearance, FormElementVariant } from '../../types/theming.types';
|
|
10
|
-
import { _NgModelComponentBase } from '../../_internal/ngmodel-component';
|
|
11
|
-
import { CaseTransformerType } from '../input-types';
|
|
12
|
-
import { ArdColorInputActionButtonsTemplateDirective, ArdColorInputColorReferenceTemplateDirective, ArdColorInputHueIndicatorTemplateDirective, ArdColorInputOpacityIndicatorTemplateDirective, ArdColorInputPlaceholderTemplateDirective, ArdColorInputPrefixTemplateDirective, ArdColorInputShadeIndicatorTemplateDirective, ArdColorInputSuffixTemplateDirective, } from './color-input.directives';
|
|
13
|
-
import * as i0 from "@angular/core";
|
|
14
|
-
import * as i1 from "@angular/cdk/overlay";
|
|
15
|
-
import * as i2 from "@angular/common";
|
|
16
|
-
import * as i3 from "../../form-field-frame/form-field-frame.component";
|
|
17
|
-
import * as i4 from "../../_internal/clear-button/clear-button.component";
|
|
18
|
-
import * as i5 from "../../color/color-picker/color-picker.component";
|
|
19
|
-
import * as i6 from "../../color/color-display/color-display.component";
|
|
20
|
-
import * as i7 from "../../card/card.component";
|
|
21
|
-
import * as i8 from "../../card/card.children";
|
|
22
|
-
import * as i9 from "@ardium-ui/devkit";
|
|
23
|
-
import * as i10 from "../../buttons/button/button.component";
|
|
24
|
-
export class ArdiumColorInputComponent extends _NgModelComponentBase {
|
|
25
|
-
constructor(_cd, viewContainerRef, overlay, scrollStrategyOpts, elementRef) {
|
|
26
|
-
super();
|
|
27
|
-
this._cd = _cd;
|
|
28
|
-
this.viewContainerRef = viewContainerRef;
|
|
29
|
-
this.overlay = overlay;
|
|
30
|
-
this.scrollStrategyOpts = scrollStrategyOpts;
|
|
31
|
-
this.DEFAULTS = {
|
|
32
|
-
clearButtonTitle: 'Clear',
|
|
33
|
-
};
|
|
34
|
-
//! placeholder
|
|
35
|
-
this.placeholder = '';
|
|
36
|
-
//! appearance
|
|
37
|
-
//all handled in ard-form-field-frame component
|
|
38
|
-
this.appearance = FormElementAppearance.Outlined;
|
|
39
|
-
this.variant = FormElementVariant.Rounded;
|
|
40
|
-
this._compact = false;
|
|
41
|
-
//! settings
|
|
42
|
-
this.case = CaseTransformerType.NoChange;
|
|
43
|
-
this._withActionButtons = false;
|
|
44
|
-
//! clear button
|
|
45
|
-
this._clearable = true;
|
|
46
|
-
this.clearButtonTitle = this.DEFAULTS.clearButtonTitle;
|
|
47
|
-
//! other inputs
|
|
48
|
-
this.inputAttrs = {};
|
|
49
|
-
//! value two-way binding
|
|
50
|
-
this._value = null;
|
|
51
|
-
this.valueChange = new EventEmitter();
|
|
52
|
-
//* event emitters
|
|
53
|
-
this.changeEvent = new EventEmitter();
|
|
54
|
-
this.clearEvent = new EventEmitter();
|
|
55
|
-
//! state
|
|
56
|
-
this._touched = false;
|
|
57
|
-
//! overlay state handlers
|
|
58
|
-
this._isOverlayOpen = false;
|
|
59
|
-
this.openEvent = new EventEmitter();
|
|
60
|
-
this.closeEvent = new EventEmitter();
|
|
61
|
-
//! overlay appearance
|
|
62
|
-
this._overlayAppearance = undefined;
|
|
63
|
-
this._overlayVariant = undefined;
|
|
64
|
-
//! color picker integration
|
|
65
|
-
this._temporaryValue = null;
|
|
66
|
-
this.element = elementRef.nativeElement;
|
|
67
|
-
}
|
|
68
|
-
//! ChangeDetectorRef
|
|
69
|
-
detectChanges() {
|
|
70
|
-
if (!this._cd.destroyed) {
|
|
71
|
-
this._cd.detectChanges();
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
ngAfterViewInit() {
|
|
75
|
-
this._setInputAttributes();
|
|
76
|
-
}
|
|
77
|
-
get shouldDisplayPlaceholder() {
|
|
78
|
-
return Boolean(this.placeholder) && !this.value;
|
|
79
|
-
}
|
|
80
|
-
get compact() {
|
|
81
|
-
return this._compact;
|
|
82
|
-
}
|
|
83
|
-
set compact(v) {
|
|
84
|
-
this._compact = coerceBooleanProperty(v);
|
|
85
|
-
}
|
|
86
|
-
get withActionButtons() {
|
|
87
|
-
return this._withActionButtons;
|
|
88
|
-
}
|
|
89
|
-
set withActionButtons(v) {
|
|
90
|
-
this._withActionButtons = coerceBooleanProperty(v);
|
|
91
|
-
}
|
|
92
|
-
get clearable() {
|
|
93
|
-
return this._clearable;
|
|
94
|
-
}
|
|
95
|
-
set clearable(v) {
|
|
96
|
-
this._clearable = coerceBooleanProperty(v);
|
|
97
|
-
if (this.value == null) {
|
|
98
|
-
this.value = Color('red');
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
get shouldShowClearButton() {
|
|
102
|
-
return this._clearable && !this.disabled && Boolean(this.value);
|
|
103
|
-
}
|
|
104
|
-
onClearButtonClick(event) {
|
|
105
|
-
event.stopPropagation();
|
|
106
|
-
this.clear();
|
|
107
|
-
this.focus();
|
|
108
|
-
}
|
|
109
|
-
//! control value accessor's write value implementation
|
|
110
|
-
writeValue(v) {
|
|
111
|
-
this.value = v;
|
|
112
|
-
}
|
|
113
|
-
//! clear function
|
|
114
|
-
clear() {
|
|
115
|
-
if (!this.clearable)
|
|
116
|
-
return;
|
|
117
|
-
this.writeValue(null);
|
|
118
|
-
this._emitChange();
|
|
119
|
-
this.clearEvent.emit();
|
|
120
|
-
}
|
|
121
|
-
set value(v) {
|
|
122
|
-
this._value = v;
|
|
123
|
-
this._updateInputElValue();
|
|
124
|
-
}
|
|
125
|
-
get value() {
|
|
126
|
-
return this._value;
|
|
127
|
-
}
|
|
128
|
-
//! event handlers
|
|
129
|
-
//change
|
|
130
|
-
onChange(event) {
|
|
131
|
-
event.stopPropagation();
|
|
132
|
-
this._emitChange();
|
|
133
|
-
}
|
|
134
|
-
_emitChange() {
|
|
135
|
-
const v = this.value;
|
|
136
|
-
if (!v)
|
|
137
|
-
return;
|
|
138
|
-
this._onChangeRegistered?.(v);
|
|
139
|
-
this.changeEvent.emit(v);
|
|
140
|
-
this.valueChange.emit(v);
|
|
141
|
-
}
|
|
142
|
-
_onTouched() {
|
|
143
|
-
this.touched = true;
|
|
144
|
-
this._onTouchedRegistered?.();
|
|
145
|
-
}
|
|
146
|
-
//smart focus
|
|
147
|
-
onMouseup() {
|
|
148
|
-
this.toggle();
|
|
149
|
-
}
|
|
150
|
-
onCopy(event) {
|
|
151
|
-
const v = this.value;
|
|
152
|
-
if (!v)
|
|
153
|
-
return;
|
|
154
|
-
event.clipboardData?.setData('text/plain', v.hex().toString());
|
|
155
|
-
event.preventDefault();
|
|
156
|
-
}
|
|
157
|
-
get touched() {
|
|
158
|
-
return this._touched;
|
|
159
|
-
}
|
|
160
|
-
set touched(state) {
|
|
161
|
-
this._touched = state;
|
|
162
|
-
}
|
|
163
|
-
_createOverlay() {
|
|
164
|
-
const strategy = this.overlay
|
|
165
|
-
.position()
|
|
166
|
-
.flexibleConnectedTo(this.overlayHost)
|
|
167
|
-
.withPositions([
|
|
168
|
-
{
|
|
169
|
-
originX: 'end',
|
|
170
|
-
originY: 'bottom',
|
|
171
|
-
overlayX: 'end',
|
|
172
|
-
overlayY: 'top',
|
|
173
|
-
},
|
|
174
|
-
{
|
|
175
|
-
originX: 'start',
|
|
176
|
-
originY: 'bottom',
|
|
177
|
-
overlayX: 'end',
|
|
178
|
-
overlayY: 'top',
|
|
179
|
-
},
|
|
180
|
-
{
|
|
181
|
-
originX: 'start',
|
|
182
|
-
originY: 'top',
|
|
183
|
-
overlayX: 'start',
|
|
184
|
-
overlayY: 'bottom',
|
|
185
|
-
},
|
|
186
|
-
{
|
|
187
|
-
originX: 'start',
|
|
188
|
-
originY: 'top',
|
|
189
|
-
overlayX: 'start',
|
|
190
|
-
overlayY: 'bottom',
|
|
191
|
-
},
|
|
192
|
-
]);
|
|
193
|
-
const config = new OverlayConfig({
|
|
194
|
-
positionStrategy: strategy,
|
|
195
|
-
scrollStrategy: this.scrollStrategyOpts.block(),
|
|
196
|
-
hasBackdrop: false,
|
|
197
|
-
});
|
|
198
|
-
this.overlayRef = this.overlay.create(config);
|
|
199
|
-
const portal = new TemplatePortal(this.overlayTemplate, this.viewContainerRef);
|
|
200
|
-
this.overlayRef.attach(portal);
|
|
201
|
-
}
|
|
202
|
-
_destroyOverlay() {
|
|
203
|
-
if (!this.overlayRef)
|
|
204
|
-
return;
|
|
205
|
-
this.overlayRef.dispose();
|
|
206
|
-
delete this.overlayRef;
|
|
207
|
-
}
|
|
208
|
-
toggle() {
|
|
209
|
-
if (this._isOverlayOpen) {
|
|
210
|
-
this.close();
|
|
211
|
-
return;
|
|
212
|
-
}
|
|
213
|
-
this.open();
|
|
214
|
-
}
|
|
215
|
-
open() {
|
|
216
|
-
if (this.disabled || this._isOverlayOpen)
|
|
217
|
-
return;
|
|
218
|
-
this._isOverlayOpen = true;
|
|
219
|
-
this._createOverlay();
|
|
220
|
-
this.focus();
|
|
221
|
-
this.openEvent.emit();
|
|
222
|
-
}
|
|
223
|
-
close() {
|
|
224
|
-
if (!this._isOverlayOpen)
|
|
225
|
-
return;
|
|
226
|
-
this._isOverlayOpen = false;
|
|
227
|
-
this._temporaryValue = null;
|
|
228
|
-
this._destroyOverlay();
|
|
229
|
-
this._onTouched();
|
|
230
|
-
this.closeEvent.emit();
|
|
231
|
-
}
|
|
232
|
-
set overlayAppearance(v) {
|
|
233
|
-
this._overlayAppearance = v;
|
|
234
|
-
}
|
|
235
|
-
get overlayAppearance() {
|
|
236
|
-
if (this._overlayAppearance)
|
|
237
|
-
return this._overlayAppearance;
|
|
238
|
-
if (this.appearance == FormElementAppearance.Outlined)
|
|
239
|
-
return DropdownPanelAppearance.Outlined;
|
|
240
|
-
return DropdownPanelAppearance.Raised;
|
|
241
|
-
}
|
|
242
|
-
set overlayVariant(v) {
|
|
243
|
-
this._overlayVariant = v;
|
|
244
|
-
}
|
|
245
|
-
get overlayVariant() {
|
|
246
|
-
if (this._overlayVariant)
|
|
247
|
-
return this._overlayVariant;
|
|
248
|
-
if (this.variant == FormElementVariant.Pill)
|
|
249
|
-
return DropdownPanelVariant.Rounded;
|
|
250
|
-
return this.variant;
|
|
251
|
-
}
|
|
252
|
-
onColorPickerChange(event) {
|
|
253
|
-
if (this.withActionButtons) {
|
|
254
|
-
this._temporaryValue = event;
|
|
255
|
-
return;
|
|
256
|
-
}
|
|
257
|
-
this.value = event;
|
|
258
|
-
this.detectChanges();
|
|
259
|
-
}
|
|
260
|
-
handleOutsideClick(event) {
|
|
261
|
-
if (!this._isOverlayOpen)
|
|
262
|
-
return;
|
|
263
|
-
const target = event.target;
|
|
264
|
-
if (this.element.contains(target))
|
|
265
|
-
return;
|
|
266
|
-
this.close();
|
|
267
|
-
}
|
|
268
|
-
apply() {
|
|
269
|
-
if (!this._temporaryValue)
|
|
270
|
-
return this.cancel();
|
|
271
|
-
this.value = this._temporaryValue;
|
|
272
|
-
this.detectChanges();
|
|
273
|
-
this.close();
|
|
274
|
-
}
|
|
275
|
-
cancel() {
|
|
276
|
-
this.close();
|
|
277
|
-
}
|
|
278
|
-
reset() {
|
|
279
|
-
this._temporaryValue = this.value;
|
|
280
|
-
}
|
|
281
|
-
get actionButtonVariant() {
|
|
282
|
-
if (this.variant == FormElementVariant.Sharp)
|
|
283
|
-
return ButtonVariant.Sharp;
|
|
284
|
-
return ButtonVariant.Rounded;
|
|
285
|
-
}
|
|
286
|
-
getActionButtonsContext() {
|
|
287
|
-
return {
|
|
288
|
-
apply: () => {
|
|
289
|
-
this.apply();
|
|
290
|
-
},
|
|
291
|
-
cancel: () => {
|
|
292
|
-
this.cancel();
|
|
293
|
-
},
|
|
294
|
-
reset: () => {
|
|
295
|
-
this.reset();
|
|
296
|
-
},
|
|
297
|
-
};
|
|
298
|
-
}
|
|
299
|
-
//! helpers
|
|
300
|
-
_updateInputElValue() {
|
|
301
|
-
this.textInputEl.nativeElement.value = this.value?.hex().toString() ?? '';
|
|
302
|
-
}
|
|
303
|
-
_setInputAttributes() {
|
|
304
|
-
const input = this.textInputEl.nativeElement;
|
|
305
|
-
const attributes = {
|
|
306
|
-
type: 'text',
|
|
307
|
-
autocorrect: 'off',
|
|
308
|
-
autocapitalize: 'off',
|
|
309
|
-
autocomplete: 'off',
|
|
310
|
-
tabindex: String(this.tabIndex),
|
|
311
|
-
...this.inputAttrs,
|
|
312
|
-
};
|
|
313
|
-
for (const key of Object.keys(attributes)) {
|
|
314
|
-
input.setAttribute(key, String(attributes[key]));
|
|
315
|
-
}
|
|
316
|
-
}
|
|
317
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ArdiumColorInputComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ViewContainerRef }, { token: i1.Overlay }, { token: i1.ScrollStrategyOptions }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
318
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.9", type: ArdiumColorInputComponent, selector: "ard-color-input", inputs: { inputId: "inputId", placeholder: "placeholder", appearance: "appearance", variant: "variant", compact: "compact", case: "case", withActionButtons: "withActionButtons", clearable: "clearable", clearButtonTitle: "clearButtonTitle", inputAttrs: "inputAttrs", value: "value", overlayAppearance: "overlayAppearance", overlayVariant: "overlayVariant" }, outputs: { valueChange: "valueChange", changeEvent: "change", clearEvent: "clear", openEvent: "open", closeEvent: "close" }, providers: [
|
|
319
|
-
{
|
|
320
|
-
provide: NG_VALUE_ACCESSOR,
|
|
321
|
-
useExisting: forwardRef(() => ArdiumColorInputComponent),
|
|
322
|
-
multi: true,
|
|
323
|
-
},
|
|
324
|
-
], queries: [{ propertyName: "prefixTemplate", first: true, predicate: ArdColorInputPrefixTemplateDirective, descendants: true, read: TemplateRef }, { propertyName: "suffixTemplate", first: true, predicate: ArdColorInputSuffixTemplateDirective, descendants: true, read: TemplateRef }, { propertyName: "placeholderTemplate", first: true, predicate: ArdColorInputPlaceholderTemplateDirective, descendants: true, read: TemplateRef }, { propertyName: "shadeIndicatorTemplate", first: true, predicate: ArdColorInputShadeIndicatorTemplateDirective, descendants: true, read: TemplateRef }, { propertyName: "hueIndicatorTemplate", first: true, predicate: ArdColorInputHueIndicatorTemplateDirective, descendants: true, read: TemplateRef }, { propertyName: "opacityIndicatorTemplate", first: true, predicate: ArdColorInputOpacityIndicatorTemplateDirective, descendants: true, read: TemplateRef }, { propertyName: "colorReferenceTemplate", first: true, predicate: ArdColorInputColorReferenceTemplateDirective, descendants: true, read: TemplateRef }, { propertyName: "actionButtonsTemplate", first: true, predicate: ArdColorInputActionButtonsTemplateDirective, descendants: true, read: TemplateRef }], viewQueries: [{ propertyName: "textInputEl", first: true, predicate: ["textInput"], descendants: true }, { propertyName: "overlayHost", first: true, predicate: ["overlayHost"], descendants: true, read: ElementRef }, { propertyName: "overlayTemplate", first: true, predicate: ["overlayTemplate"], descendants: true, read: TemplateRef }], usesInheritance: true, ngImport: i0, template: "<ard-form-field-frame\r\n [appearance]=\"appearance\"\r\n [variant]=\"variant\"\r\n [compact]=\"compact\"\r\n [isFocused]=\"isFocused\"\r\n [prefixTemplate]=\"prefixTemplate\"\r\n [suffixTemplate]=\"suffixTemplate\"\r\n #overlayHost\r\n>\r\n <div class=\"ard-color-input\"\r\n [class.ard-has-value]=\"value\"\r\n (mouseup)=\"onMouseup()\"\r\n >\r\n <div class=\"ard-input-container\">\r\n <ng-container *ngIf=\"shouldDisplayPlaceholder\">\r\n <ng-template #defaultPlaceholderTemplate>\r\n <div class=\"ard-placeholder\">{{ placeholder }}</div>\r\n </ng-template>\r\n\r\n <ng-template [ngTemplateOutlet]=\"placeholderTemplate || defaultPlaceholderTemplate\"></ng-template>\r\n </ng-container>\r\n\r\n <input #textInput\r\n [attr.id]=\"inputId\"\r\n tabindex=\"-1\"\r\n readonly\r\n >\r\n </div>\r\n\r\n <ard-_clear-button\r\n *ngIf=\"shouldShowClearButton\"\r\n [title]=\"clearButtonTitle\"\r\n (mouseup)=\"onClearButtonClick($event)\"\r\n ></ard-_clear-button>\r\n\r\n <button\r\n class=\"ard-color-display-button\"\r\n #focusableElement\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n (copy)=\"onCopy($event)\"\r\n >\r\n <ard-color-display [color]=\"value\"></ard-color-display>\r\n </button>\r\n </div>\r\n</ard-form-field-frame>\r\n\r\n<ng-template #overlayTemplate>\r\n <ard-card\r\n class=\"ard-overlay-card ard-color-input-overlay-card\"\r\n [appearance]=\"overlayAppearance\"\r\n [variant]=\"overlayVariant\"\r\n (ardClickOutside)=\"handleOutsideClick($event)\"\r\n >\r\n <ard-color-picker\r\n [value]=\"value\"\r\n (valueChange)=\"onColorPickerChange($event)\"\r\n [hueIndicatorTemplate]=\"hueIndicatorTemplate\"\r\n [shadeIndicatorTemplate]=\"shadeIndicatorTemplate\"\r\n [opacityIndicatorTemplate]=\"opacityIndicatorTemplate\"\r\n [colorReferenceTemplate]=\"colorReferenceTemplate\"\r\n ></ard-color-picker>\r\n <ard-card-action-buttons *ngIf=\"withActionButtons\">\r\n <ng-template #defaultActionButtonsTemplate let-applyFn=\"apply\" let-cancelFn=\"cancel\">\r\n <ard-button appearance=\"transparent\" [variant]=\"actionButtonVariant\" (click)=\"cancelFn()\">Cancel</ard-button>\r\n <ard-button appearance=\"raised-strong\" [variant]=\"actionButtonVariant\" (click)=\"applyFn()\">Apply</ard-button>\r\n </ng-template>\r\n\r\n <ng-template\r\n [ngTemplateOutlet]=\"actionButtonsTemplate ?? defaultActionButtonsTemplate\"\r\n [ngTemplateOutletContext]=\"getActionButtonsContext()\"\r\n />\r\n </ard-card-action-buttons>\r\n </ard-card>\r\n</ng-template>", styles: [".ard-input-container{position:relative}.ard-placeholder{position:absolute;left:0;right:0}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.ArdiumFormFieldFrameComponent, selector: "ard-form-field-frame", inputs: ["isFocused", "appearance", "variant", "compact", "prefixTemplate", "suffixTemplate"] }, { kind: "component", type: i4._ClearButtonComponent, selector: "ard-_clear-button" }, { kind: "component", type: i5.ArdiumColorPickerComponent, selector: "ard-color-picker", inputs: ["withOpacity", "referenceColor", "wrapperClasses", "variant", "vertical", "value", "colorHue", "colorSaturation", "colorValue", "colorOpacity", "shadeIndicatorTemplate", "hueIndicatorTemplate", "opacityIndicatorTemplate", "colorReferenceTemplate"], outputs: ["valueChange", "colorHueChange", "colorSaturationChange", "colorValueChange", "colorOpacityChange"] }, { kind: "component", type: i6.ArdiumColorDisplayComponent, selector: "ard-color-display", inputs: ["ariaLabel", "withLabel", "appearance", "color"] }, { kind: "component", type: i7.ArdiumCardComponent, selector: "ard-card" }, { kind: "directive", type: i8.ArdiumCardActionButtonsDirective, selector: "ard-card-action-buttons, [ard-card-action-buttons]", inputs: ["align"] }, { kind: "directive", type: i9.ClickOutsideDirective, selector: "[ardClickOutside]", outputs: ["ardClickOutside"] }, { kind: "component", type: i10.ArdiumButtonComponent, selector: "ard-button", inputs: ["variant", "alignIcon", "vertical", "icon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
325
|
-
}
|
|
326
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: ArdiumColorInputComponent, decorators: [{
|
|
327
|
-
type: Component,
|
|
328
|
-
args: [{ selector: 'ard-color-input', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [
|
|
329
|
-
{
|
|
330
|
-
provide: NG_VALUE_ACCESSOR,
|
|
331
|
-
useExisting: forwardRef(() => ArdiumColorInputComponent),
|
|
332
|
-
multi: true,
|
|
333
|
-
},
|
|
334
|
-
], template: "<ard-form-field-frame\r\n [appearance]=\"appearance\"\r\n [variant]=\"variant\"\r\n [compact]=\"compact\"\r\n [isFocused]=\"isFocused\"\r\n [prefixTemplate]=\"prefixTemplate\"\r\n [suffixTemplate]=\"suffixTemplate\"\r\n #overlayHost\r\n>\r\n <div class=\"ard-color-input\"\r\n [class.ard-has-value]=\"value\"\r\n (mouseup)=\"onMouseup()\"\r\n >\r\n <div class=\"ard-input-container\">\r\n <ng-container *ngIf=\"shouldDisplayPlaceholder\">\r\n <ng-template #defaultPlaceholderTemplate>\r\n <div class=\"ard-placeholder\">{{ placeholder }}</div>\r\n </ng-template>\r\n\r\n <ng-template [ngTemplateOutlet]=\"placeholderTemplate || defaultPlaceholderTemplate\"></ng-template>\r\n </ng-container>\r\n\r\n <input #textInput\r\n [attr.id]=\"inputId\"\r\n tabindex=\"-1\"\r\n readonly\r\n >\r\n </div>\r\n\r\n <ard-_clear-button\r\n *ngIf=\"shouldShowClearButton\"\r\n [title]=\"clearButtonTitle\"\r\n (mouseup)=\"onClearButtonClick($event)\"\r\n ></ard-_clear-button>\r\n\r\n <button\r\n class=\"ard-color-display-button\"\r\n #focusableElement\r\n (focus)=\"onFocus($event)\"\r\n (blur)=\"onBlur($event)\"\r\n (copy)=\"onCopy($event)\"\r\n >\r\n <ard-color-display [color]=\"value\"></ard-color-display>\r\n </button>\r\n </div>\r\n</ard-form-field-frame>\r\n\r\n<ng-template #overlayTemplate>\r\n <ard-card\r\n class=\"ard-overlay-card ard-color-input-overlay-card\"\r\n [appearance]=\"overlayAppearance\"\r\n [variant]=\"overlayVariant\"\r\n (ardClickOutside)=\"handleOutsideClick($event)\"\r\n >\r\n <ard-color-picker\r\n [value]=\"value\"\r\n (valueChange)=\"onColorPickerChange($event)\"\r\n [hueIndicatorTemplate]=\"hueIndicatorTemplate\"\r\n [shadeIndicatorTemplate]=\"shadeIndicatorTemplate\"\r\n [opacityIndicatorTemplate]=\"opacityIndicatorTemplate\"\r\n [colorReferenceTemplate]=\"colorReferenceTemplate\"\r\n ></ard-color-picker>\r\n <ard-card-action-buttons *ngIf=\"withActionButtons\">\r\n <ng-template #defaultActionButtonsTemplate let-applyFn=\"apply\" let-cancelFn=\"cancel\">\r\n <ard-button appearance=\"transparent\" [variant]=\"actionButtonVariant\" (click)=\"cancelFn()\">Cancel</ard-button>\r\n <ard-button appearance=\"raised-strong\" [variant]=\"actionButtonVariant\" (click)=\"applyFn()\">Apply</ard-button>\r\n </ng-template>\r\n\r\n <ng-template\r\n [ngTemplateOutlet]=\"actionButtonsTemplate ?? defaultActionButtonsTemplate\"\r\n [ngTemplateOutletContext]=\"getActionButtonsContext()\"\r\n />\r\n </ard-card-action-buttons>\r\n </ard-card>\r\n</ng-template>", styles: [".ard-input-container{position:relative}.ard-placeholder{position:absolute;left:0;right:0}\n"] }]
|
|
335
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ViewContainerRef }, { type: i1.Overlay }, { type: i1.ScrollStrategyOptions }, { type: i0.ElementRef }], propDecorators: { textInputEl: [{
|
|
336
|
-
type: ViewChild,
|
|
337
|
-
args: ['textInput']
|
|
338
|
-
}], inputId: [{
|
|
339
|
-
type: Input
|
|
340
|
-
}], prefixTemplate: [{
|
|
341
|
-
type: ContentChild,
|
|
342
|
-
args: [ArdColorInputPrefixTemplateDirective, { read: TemplateRef }]
|
|
343
|
-
}], suffixTemplate: [{
|
|
344
|
-
type: ContentChild,
|
|
345
|
-
args: [ArdColorInputSuffixTemplateDirective, { read: TemplateRef }]
|
|
346
|
-
}], placeholder: [{
|
|
347
|
-
type: Input
|
|
348
|
-
}], placeholderTemplate: [{
|
|
349
|
-
type: ContentChild,
|
|
350
|
-
args: [ArdColorInputPlaceholderTemplateDirective, {
|
|
351
|
-
read: TemplateRef,
|
|
352
|
-
}]
|
|
353
|
-
}], appearance: [{
|
|
354
|
-
type: Input
|
|
355
|
-
}], variant: [{
|
|
356
|
-
type: Input
|
|
357
|
-
}], compact: [{
|
|
358
|
-
type: Input
|
|
359
|
-
}], case: [{
|
|
360
|
-
type: Input
|
|
361
|
-
}], withActionButtons: [{
|
|
362
|
-
type: Input
|
|
363
|
-
}], clearable: [{
|
|
364
|
-
type: Input
|
|
365
|
-
}], clearButtonTitle: [{
|
|
366
|
-
type: Input
|
|
367
|
-
}], inputAttrs: [{
|
|
368
|
-
type: Input
|
|
369
|
-
}], value: [{
|
|
370
|
-
type: Input
|
|
371
|
-
}], valueChange: [{
|
|
372
|
-
type: Output
|
|
373
|
-
}], changeEvent: [{
|
|
374
|
-
type: Output,
|
|
375
|
-
args: ['change']
|
|
376
|
-
}], clearEvent: [{
|
|
377
|
-
type: Output,
|
|
378
|
-
args: ['clear']
|
|
379
|
-
}], overlayHost: [{
|
|
380
|
-
type: ViewChild,
|
|
381
|
-
args: ['overlayHost', { read: ElementRef }]
|
|
382
|
-
}], overlayTemplate: [{
|
|
383
|
-
type: ViewChild,
|
|
384
|
-
args: ['overlayTemplate', { read: TemplateRef }]
|
|
385
|
-
}], openEvent: [{
|
|
386
|
-
type: Output,
|
|
387
|
-
args: ['open']
|
|
388
|
-
}], closeEvent: [{
|
|
389
|
-
type: Output,
|
|
390
|
-
args: ['close']
|
|
391
|
-
}], overlayAppearance: [{
|
|
392
|
-
type: Input
|
|
393
|
-
}], overlayVariant: [{
|
|
394
|
-
type: Input
|
|
395
|
-
}], shadeIndicatorTemplate: [{
|
|
396
|
-
type: ContentChild,
|
|
397
|
-
args: [ArdColorInputShadeIndicatorTemplateDirective, {
|
|
398
|
-
read: TemplateRef,
|
|
399
|
-
}]
|
|
400
|
-
}], hueIndicatorTemplate: [{
|
|
401
|
-
type: ContentChild,
|
|
402
|
-
args: [ArdColorInputHueIndicatorTemplateDirective, {
|
|
403
|
-
read: TemplateRef,
|
|
404
|
-
}]
|
|
405
|
-
}], opacityIndicatorTemplate: [{
|
|
406
|
-
type: ContentChild,
|
|
407
|
-
args: [ArdColorInputOpacityIndicatorTemplateDirective, {
|
|
408
|
-
read: TemplateRef,
|
|
409
|
-
}]
|
|
410
|
-
}], colorReferenceTemplate: [{
|
|
411
|
-
type: ContentChild,
|
|
412
|
-
args: [ArdColorInputColorReferenceTemplateDirective, {
|
|
413
|
-
read: TemplateRef,
|
|
414
|
-
}]
|
|
415
|
-
}], actionButtonsTemplate: [{
|
|
416
|
-
type: ContentChild,
|
|
417
|
-
args: [ArdColorInputActionButtonsTemplateDirective, {
|
|
418
|
-
read: TemplateRef,
|
|
419
|
-
}]
|
|
420
|
-
}] } });
|
|
421
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItaW5wdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dHMvY29sb3ItaW5wdXQvY29sb3ItaW5wdXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdWkvc3JjL2xpYi9pbnB1dHMvY29sb3ItaW5wdXQvY29sb3ItaW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFXLGFBQWEsRUFBcUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUVMLHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFDTCxNQUFNLEVBQ04sV0FBVyxFQUNYLFNBQVMsRUFFVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzFELE9BQU8sS0FBSyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQy9CLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUVuRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUMxRyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN0RixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyRCxPQUFPLEVBQ0wsMkNBQTJDLEVB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QUksRUFBRSxXQUFXO3FCQUNsQjtnQkFLRCxzQkFBc0I7c0JBSHJCLFlBQVk7dUJBQUMsNENBQTRDLEVBQUU7d0JBQzFELElBQUksRUFBRSxXQUFXO3FCQUNsQjtnQkFLRCxxQkFBcUI7c0JBSHBCLFlBQVk7dUJBQUMsMkNBQTJDLEVBQUU7d0JBQ3pELElBQUksRUFBRSxXQUFXO3FCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXksIE92ZXJsYXlDb25maWcsIE92ZXJsYXlSZWYsIFNjcm9sbFN0cmF0ZWd5T3B0aW9ucyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcclxuaW1wb3J0IHtcclxuICBBZnRlclZpZXdJbml0LFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG4gIENvbXBvbmVudCxcclxuICBDb250ZW50Q2hpbGQsXHJcbiAgRWxlbWVudFJlZixcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgZm9yd2FyZFJlZixcclxuICBJbnB1dCxcclxuICBPdXRwdXQsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbiAgVmlld0NoaWxkLFxyXG4gIFZpZXdDb250YWluZXJSZWYsXHJcbiAgVmlld0VuY2Fwc3VsYXRpb24sXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFyZGl1bS11aS9kZXZraXQnO1xyXG5pbXBvcnQgKiBhcyBDb2xvciBmcm9tICdjb2xvcic7XHJcbmltcG9ydCB7IEJ1dHRvblZhcmlhbnQgfSBmcm9tICcuLi8uLi9idXR0b25zL2dlbmVyYWwtYnV0dG9uLnR5cGVzJztcclxuaW1wb3J0IHsgQ2FyZEFwcGVhcmFuY2UsIENhcmRWYXJpYW50IH0gZnJvbSAnLi4vLi4vY2FyZC9jYXJkLnR5cGVzJztcclxuaW1wb3J0IHsgRHJvcGRvd25QYW5lbEFwcGVhcmFuY2UsIERyb3Bkb3duUGFuZWxWYXJpYW50IH0gZnJvbSAnLi4vLi4vZHJvcGRvd24tcGFuZWwvZHJvcGRvd24tcGFuZWwudHlwZXMnO1xyXG5pbXBvcnQgeyBGb3JtRWxlbWVudEFwcGVhcmFuY2UsIEZvcm1FbGVtZW50VmFyaWFudCB9IGZyb20gJy4uLy4uL3R5cGVzL3RoZW1pbmcudHlwZXMnO1xyXG5pbXBvcnQgeyBfTmdNb2RlbENvbXBvbmVudEJhc2UgfSBmcm9tICcuLi8uLi9faW50ZXJuYWwvbmdtb2RlbC1jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBDYXNlVHJhbnNmb3JtZXJUeXBlIH0gZnJvbSAnLi4vaW5wdXQtdHlwZXMnO1xyXG5pbXBvcnQge1xyXG4gIEFyZENvbG9ySW5wdXRBY3Rpb25CdXR0b25zVGVtcGxhdGVEaXJlY3RpdmUsXHJcbiAgQXJkQ29sb3JJbnB1dENvbG9yUmVmZXJlbmNlVGVtcGxhdGVEaXJlY3RpdmUsXHJcbiAgQXJkQ29sb3JJbnB1dEh1ZUluZGljYXRvclRlbXBsYXRlRGlyZWN0aXZlLFxyXG4gIEFyZENvbG9ySW5wdXRPcGFjaXR5SW5kaWNhdG9yVGVtcGxhdGVEaXJlY3RpdmUsXHJcbiAgQXJkQ29sb3JJbnB1dFBsYWNlaG9sZGVyVGVtcGxhdGVEaXJlY3RpdmUsXHJcbiAgQXJkQ29sb3JJbnB1dFByZWZpeFRlbXBsYXRlRGlyZWN0aXZlLFxyXG4gIEFyZENvbG9ySW5wdXRTaGFkZUluZGljYXRvclRlbXBsYXRlRGlyZWN0aXZlLFxyXG4gIEFyZENvbG9ySW5wdXRTdWZmaXhUZW1wbGF0ZURpcmVjdGl2ZSxcclxufSBmcm9tICcuL2NvbG9yLWlucHV0LmRpcmVjdGl2ZXMnO1xyXG5pbXBvcnQgeyBDb2xvcklucHV0QWN0aW9uQnV0dG9uc0NvbnRleHQgfSBmcm9tICcuL2NvbG9yLWlucHV0LnR5cGVzJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXJkLWNvbG9yLWlucHV0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vY29sb3ItaW5wdXQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2NvbG9yLWlucHV0LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEFyZGl1bUNvbG9ySW5wdXRDb21wb25lbnQpLFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEFyZGl1bUNvbG9ySW5wdXRDb21wb25lbnQgZXh0ZW5kcyBfTmdNb2RlbENvbXBvbmVudEJhc2UgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgcmVhZG9ubHkgZWxlbWVudCE6IEhUTUxFbGVtZW50O1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgdmlld0NvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZixcclxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSxcclxuICAgIHByaXZhdGUgc2Nyb2xsU3RyYXRlZ3lPcHRzOiBTY3JvbGxTdHJhdGVneU9wdGlvbnMsXHJcbiAgICBlbGVtZW50UmVmOiBFbGVtZW50UmVmPEhUTUxFbGVtZW50PlxyXG4gICkge1xyXG4gICAgc3VwZXIoKTtcclxuXHJcbiAgICB0aGlzLmVsZW1lbnQgPSBlbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgfVxyXG4gIC8vISBDaGFuZ2VEZXRlY3RvclJlZlxyXG4gIGRldGVjdENoYW5nZXMoKTogdm9pZCB7XHJcbiAgICBpZiAoISg8YW55PnRoaXMuX2NkKS5kZXN0cm95ZWQpIHtcclxuICAgICAgdGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8hIGlucHV0IHZpZXdcclxuICBAVmlld0NoaWxkKCd0ZXh0SW5wdXQnKVxyXG4gIHByb3RlY3RlZCB0ZXh0SW5wdXRFbCE6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD47XHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fc2V0SW5wdXRBdHRyaWJ1dGVzKCk7XHJcbiAgfVxyXG5cclxuICByZWFkb25seSBERUZBVUxUUyA9IHtcclxuICAgIGNsZWFyQnV0dG9uVGl0bGU6ICdDbGVhcicsXHJcbiAgfTtcclxuXHJcbiAgQElucHV0KCkgaW5wdXRJZD86IHN0cmluZztcclxuXHJcbiAgLy8hIHByZWZpeCAmIHN1ZmZpeFxyXG4gIEBDb250ZW50Q2hpbGQoQXJkQ29sb3JJbnB1dFByZWZpeFRlbXBsYXRlRGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pXHJcbiAgcHJlZml4VGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIEBDb250ZW50Q2hpbGQoQXJkQ29sb3JJbnB1dFN1ZmZpeFRlbXBsYXRlRGlyZWN0aXZlLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pXHJcbiAgc3VmZml4VGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICAvLyEgcGxhY2Vob2xkZXJcclxuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nID0gJyc7XHJcblxyXG4gIEBDb250ZW50Q2hpbGQoQXJkQ29sb3JJbnB1dFBsYWNlaG9sZGVyVGVtcGxhdGVEaXJlY3RpdmUsIHtcclxuICAgIHJlYWQ6IFRlbXBsYXRlUmVmLFxyXG4gIH0pXHJcbiAgcGxhY2Vob2xkZXJUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIGdldCBzaG91bGREaXNwbGF5UGxhY2Vob2xkZXIoKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gQm9vbGVhbih0aGlzLnBsYWNlaG9sZGVyKSAmJiAhdGhpcy52YWx1ZTtcclxuICB9XHJcblxyXG4gIC8vISBhcHBlYXJhbmNlXHJcbiAgLy9hbGwgaGFuZGxlZCBpbiBhcmQtZm9ybS1maWVsZC1mcmFtZSBjb21wb25lbnRcclxuICBASW5wdXQoKSBhcHBlYXJhbmNlOiBGb3JtRWxlbWVudEFwcGVhcmFuY2UgPSBGb3JtRWxlbWVudEFwcGVhcmFuY2UuT3V0bGluZWQ7XHJcbiAgQElucHV0KCkgdmFyaWFudDogRm9ybUVsZW1lbnRWYXJpYW50ID0gRm9ybUVsZW1lbnRWYXJpYW50LlJvdW5kZWQ7XHJcblxyXG4gIHByaXZhdGUgX2NvbXBhY3Q6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBASW5wdXQoKVxyXG4gIGdldCBjb21wYWN0KCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX2NvbXBhY3Q7XHJcbiAgfVxyXG4gIHNldCBjb21wYWN0KHY6IGFueSkge1xyXG4gICAgdGhpcy5fY29tcGFjdCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2KTtcclxuICB9XHJcblxyXG4gIC8vISBzZXR0aW5nc1xyXG4gIEBJbnB1dCgpIGNhc2U6IENhc2VUcmFuc2Zvcm1lclR5cGUgPSBDYXNlVHJhbnNmb3JtZXJUeXBlLk5vQ2hhbmdlO1xyXG5cclxuICBwcml2YXRlIF93aXRoQWN0aW9uQnV0dG9uczogYm9vbGVhbiA9IGZhbHNlO1xyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IHdpdGhBY3Rpb25CdXR0b25zKCk6IGJvb2xlYW4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3dpdGhBY3Rpb25CdXR0b25zO1xyXG4gIH1cclxuICBzZXQgd2l0aEFjdGlvbkJ1dHRvbnModjogYW55KSB7XHJcbiAgICB0aGlzLl93aXRoQWN0aW9uQnV0dG9ucyA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2KTtcclxuICB9XHJcblxyXG4gIC8vISBjbGVhciBidXR0b25cclxuICBwcml2YXRlIF9jbGVhcmFibGU6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpXHJcbiAgZ2V0IGNsZWFyYWJsZSgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl9jbGVhcmFibGU7XHJcbiAgfVxyXG4gIHNldCBjbGVhcmFibGUodjogYW55KSB7XHJcbiAgICB0aGlzLl9jbGVhcmFibGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodik7XHJcbiAgICBpZiAodGhpcy52YWx1ZSA9PSBudWxsKSB7XHJcbiAgICAgIHRoaXMudmFsdWUgPSBDb2xvcigncmVkJyk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBASW5wdXQoKSBjbGVhckJ1dHRvblRpdGxlOiBzdHJpbmcgPSB0aGlzLkRFRkFVTFRTLmNsZWFyQnV0dG9uVGl0bGU7XHJcblxyXG4gIGdldCBzaG91bGRTaG93Q2xlYXJCdXR0b24oKTogYm9vbGVhbiB7XHJcbiAgICByZXR1cm4gdGhpcy5fY2xlYXJhYmxlICYmICF0aGlzLmRpc2FibGVkICYmIEJvb2xlYW4odGhpcy52YWx1ZSk7XHJcbiAgfVxyXG4gIG9uQ2xlYXJCdXR0b25DbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XHJcbiAgICB0aGlzLmNsZWFyKCk7XHJcbiAgICB0aGlzLmZvY3VzKCk7XHJcbiAgfVxyXG5cclxuICAvLyEgb3RoZXIgaW5wdXRzXHJcbiAgQElucHV0KCkgaW5wdXRBdHRyczogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IHt9O1xyXG5cclxuICAvLyEgY29udHJvbCB2YWx1ZSBhY2Nlc3NvcidzIHdyaXRlIHZhbHVlIGltcGxlbWVudGF0aW9uXHJcbiAgd3JpdGVWYWx1ZSh2OiBDb2xvciB8IG51bGwpIHtcclxuICAgIHRoaXMudmFsdWUgPSB2O1xyXG4gIH1cclxuXHJcbiAgLy8hIGNsZWFyIGZ1bmN0aW9uXHJcbiAgY2xlYXIoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuY2xlYXJhYmxlKSByZXR1cm47XHJcblxyXG4gICAgdGhpcy53cml0ZVZhbHVlKG51bGwpO1xyXG4gICAgdGhpcy5fZW1pdENoYW5nZSgpO1xyXG4gICAgdGhpcy5jbGVhckV2ZW50LmVtaXQoKTtcclxuICB9XHJcblxyXG4gIC8vISB2YWx1ZSB0d28td2F5IGJpbmRpbmdcclxuICBwcm90ZWN0ZWQgX3ZhbHVlOiBDb2xvciB8IG51bGwgPSBudWxsO1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IHZhbHVlKHY6IENvbG9yIHwgbnVsbCkge1xyXG4gICAgdGhpcy5fdmFsdWUgPSB2O1xyXG4gICAgdGhpcy5fdXBkYXRlSW5wdXRFbFZhbHVlKCk7XHJcbiAgfVxyXG4gIGdldCB2YWx1ZSgpOiBDb2xvciB8IG51bGwge1xyXG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xyXG4gIH1cclxuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPENvbG9yPigpO1xyXG5cclxuICAvLyogZXZlbnQgZW1pdHRlcnNcclxuICBAT3V0cHV0KCdjaGFuZ2UnKSBjaGFuZ2VFdmVudCA9IG5ldyBFdmVudEVtaXR0ZXI8Q29sb3I+KCk7XHJcbiAgQE91dHB1dCgnY2xlYXInKSBjbGVhckV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gIC8vISBldmVudCBoYW5kbGVyc1xyXG4gIC8vY2hhbmdlXHJcbiAgb25DaGFuZ2UoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XHJcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcclxuICAgIHRoaXMuX2VtaXRDaGFuZ2UoKTtcclxuICB9XHJcbiAgcHJvdGVjdGVkIF9lbWl0Q2hhbmdlKCk6IHZvaWQge1xyXG4gICAgY29uc3QgdiA9IHRoaXMudmFsdWU7XHJcbiAgICBpZiAoIXYpIHJldHVybjtcclxuXHJcbiAgICB0aGlzLl9vbkNoYW5nZVJlZ2lzdGVyZWQ/Lih2KTtcclxuICAgIHRoaXMuY2hhbmdlRXZlbnQuZW1pdCh2KTtcclxuICAgIHRoaXMudmFsdWVDaGFuZ2UuZW1pdCh2KTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfb25Ub3VjaGVkKCk6IHZvaWQge1xyXG4gICAgdGhpcy50b3VjaGVkID0gdHJ1ZTtcclxuICAgIHRoaXMuX29uVG91Y2hlZFJlZ2lzdGVyZWQ/LigpO1xyXG4gIH1cclxuXHJcbiAgLy9zbWFydCBmb2N1c1xyXG4gIG9uTW91c2V1cCgpOiB2b2lkIHtcclxuICAgIHRoaXMudG9nZ2xlKCk7XHJcbiAgfVxyXG5cclxuICBvbkNvcHkoZXZlbnQ6IENsaXBib2FyZEV2ZW50KTogdm9pZCB7XHJcbiAgICBjb25zdCB2ID0gdGhpcy52YWx1ZTtcclxuICAgIGlmICghdikgcmV0dXJuO1xyXG5cclxuICAgIGV2ZW50LmNsaXBib2FyZERhdGE/LnNldERhdGEoJ3RleHQvcGxhaW4nLCB2LmhleCgpLnRvU3RyaW5nKCkpO1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICB9XHJcblxyXG4gIC8vISBzdGF0ZVxyXG4gIHByaXZhdGUgX3RvdWNoZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBnZXQgdG91Y2hlZCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLl90b3VjaGVkO1xyXG4gIH1cclxuICBwcml2YXRlIHNldCB0b3VjaGVkKHN0YXRlOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLl90b3VjaGVkID0gc3RhdGU7XHJcbiAgfVxyXG5cclxuICAvLyEgY29sb3IgcGlja2VyIG92ZXJsYXlcclxuICBAVmlld0NoaWxkKCdvdmVybGF5SG9zdCcsIHsgcmVhZDogRWxlbWVudFJlZiB9KVxyXG4gIG92ZXJsYXlIb3N0ITogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XHJcbiAgQFZpZXdDaGlsZCgnb3ZlcmxheVRlbXBsYXRlJywgeyByZWFkOiBUZW1wbGF0ZVJlZiB9KVxyXG4gIG92ZXJsYXlUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIHByaXZhdGUgb3ZlcmxheVJlZj86IE92ZXJsYXlSZWY7XHJcblxyXG4gIHByaXZhdGUgX2NyZWF0ZU92ZXJsYXkoKTogdm9pZCB7XHJcbiAgICBjb25zdCBzdHJhdGVneSA9IHRoaXMub3ZlcmxheVxyXG4gICAgICAucG9zaXRpb24oKVxyXG4gICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLm92ZXJsYXlIb3N0KVxyXG4gICAgICAud2l0aFBvc2l0aW9ucyhbXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgb3JpZ2luWDogJ2VuZCcsXHJcbiAgICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcclxuICAgICAgICAgIG92ZXJsYXlYOiAnZW5kJyxcclxuICAgICAgICAgIG92ZXJsYXlZOiAndG9wJyxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIG9yaWdpblg6ICdzdGFydCcsXHJcbiAgICAgICAgICBvcmlnaW5ZOiAnYm90dG9tJyxcclxuICAgICAgICAgIG92ZXJsYXlYOiAnZW5kJyxcclxuICAgICAgICAgIG92ZXJsYXlZOiAndG9wJyxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHtcclxuICAgICAgICAgIG9yaWdpblg6ICdzdGFydCcsXHJcbiAgICAgICAgICBvcmlnaW5ZOiAndG9wJyxcclxuICAgICAgICAgIG92ZXJsYXlYOiAnc3RhcnQnLFxyXG4gICAgICAgICAgb3ZlcmxheVk6ICdib3R0b20nLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAge1xyXG4gICAgICAgICAgb3JpZ2luWDogJ3N0YXJ0JyxcclxuICAgICAgICAgIG9yaWdpblk6ICd0b3AnLFxyXG4gICAgICAgICAgb3ZlcmxheVg6ICdzdGFydCcsXHJcbiAgICAgICAgICBvdmVybGF5WTogJ2JvdHRvbScsXHJcbiAgICAgICAgfSxcclxuICAgICAgXSk7XHJcblxyXG4gICAgY29uc3QgY29uZmlnID0gbmV3IE92ZXJsYXlDb25maWcoe1xyXG4gICAgICBwb3NpdGlvblN0cmF0ZWd5OiBzdHJhdGVneSxcclxuICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMuc2Nyb2xsU3RyYXRlZ3lPcHRzLmJsb2NrKCksXHJcbiAgICAgIGhhc0JhY2tkcm9wOiBmYWxzZSxcclxuICAgIH0pO1xyXG5cclxuICAgIHRoaXMub3ZlcmxheVJlZiA9IHRoaXMub3ZlcmxheS5jcmVhdGUoY29uZmlnKTtcclxuXHJcbiAgICBjb25zdCBwb3J0YWwgPSBuZXcgVGVtcGxhdGVQb3J0YWwodGhpcy5vdmVybGF5VGVtcGxhdGUsIHRoaXMudmlld0NvbnRhaW5lclJlZik7XHJcbiAgICB0aGlzLm92ZXJsYXlSZWYuYXR0YWNoKHBvcnRhbCk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2Rlc3Ryb3lPdmVybGF5KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLm92ZXJsYXlSZWYpIHJldHVybjtcclxuXHJcbiAgICB0aGlzLm92ZXJsYXlSZWYuZGlzcG9zZSgpO1xyXG4gICAgZGVsZXRlIHRoaXMub3ZlcmxheVJlZjtcclxuICB9XHJcblxyXG4gIC8vISBvdmVybGF5IHN0YXRlIGhhbmRsZXJzXHJcbiAgcHJpdmF0ZSBfaXNPdmVybGF5T3BlbjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KCdvcGVuJykgb3BlbkV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgnY2xvc2UnKSBjbG9zZUV2ZW50ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcblxyXG4gIHRvZ2dsZSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl9pc092ZXJsYXlPcGVuKSB7XHJcbiAgICAgIHRoaXMuY2xvc2UoKTtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy5vcGVuKCk7XHJcbiAgfVxyXG4gIG9wZW4oKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5kaXNhYmxlZCB8fCB0aGlzLl9pc092ZXJsYXlPcGVuKSByZXR1cm47XHJcblxyXG4gICAgdGhpcy5faXNPdmVybGF5T3BlbiA9IHRydWU7XHJcblxyXG4gICAgdGhpcy5fY3JlYXRlT3ZlcmxheSgpO1xyXG4gICAgdGhpcy5mb2N1cygpO1xyXG5cclxuICAgIHRoaXMub3BlbkV2ZW50LmVtaXQoKTtcclxuICB9XHJcbiAgY2xvc2UoKTogdm9pZCB7XHJcbiAgICBpZiAoIXRoaXMuX2lzT3ZlcmxheU9wZW4pIHJldHVybjtcclxuXHJcbiAgICB0aGlzLl9pc092ZXJsYXlPcGVuID0gZmFsc2U7XHJcbiAgICB0aGlzLl90ZW1wb3JhcnlWYWx1ZSA9IG51bGw7XHJcblxyXG4gICAgdGhpcy5fZGVzdHJveU92ZXJsYXkoKTtcclxuXHJcbiAgICB0aGlzLl9vblRvdWNoZWQoKTtcclxuICAgIHRoaXMuY2xvc2VFdmVudC5lbWl0KCk7XHJcbiAgfVxyXG4gIC8vISBvdmVybGF5IGFwcGVhcmFuY2VcclxuICBwcml2YXRlIF9vdmVybGF5QXBwZWFyYW5jZT86IENhcmRBcHBlYXJhbmNlID0gdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IG92ZXJsYXlBcHBlYXJhbmNlKHY6IENhcmRBcHBlYXJhbmNlKSB7XHJcbiAgICB0aGlzLl9vdmVybGF5QXBwZWFyYW5jZSA9IHY7XHJcbiAgfVxyXG4gIGdldCBvdmVybGF5QXBwZWFyYW5jZSgpOiBDYXJkQXBwZWFyYW5jZSB7XHJcbiAgICBpZiAodGhpcy5fb3ZlcmxheUFwcGVhcmFuY2UpIHJldHVybiB0aGlzLl9vdmVybGF5QXBwZWFyYW5jZTtcclxuICAgIGlmICh0aGlzLmFwcGVhcmFuY2UgPT0gRm9ybUVsZW1lbnRBcHBlYXJhbmNlLk91dGxpbmVkKSByZXR1cm4gRHJvcGRvd25QYW5lbEFwcGVhcmFuY2UuT3V0bGluZWQ7XHJcbiAgICByZXR1cm4gRHJvcGRvd25QYW5lbEFwcGVhcmFuY2UuUmFpc2VkO1xyXG4gIH1cclxuICBwcml2YXRlIF9vdmVybGF5VmFyaWFudD86IENhcmRWYXJpYW50ID0gdW5kZWZpbmVkO1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IG92ZXJsYXlWYXJpYW50KHY6IENhcmRWYXJpYW50KSB7XHJcbiAgICB0aGlzLl9vdmVybGF5VmFyaWFudCA9IHY7XHJcbiAgfVxyXG4gIGdldCBvdmVybGF5VmFyaWFudCgpOiBDYXJkVmFyaWFudCB7XHJcbiAgICBpZiAodGhpcy5fb3ZlcmxheVZhcmlhbnQpIHJldHVybiB0aGlzLl9vdmVybGF5VmFyaWFudDtcclxuICAgIGlmICh0aGlzLnZhcmlhbnQgPT0gRm9ybUVsZW1lbnRWYXJpYW50LlBpbGwpIHJldHVybiBEcm9wZG93blBhbmVsVmFyaWFudC5Sb3VuZGVkO1xyXG4gICAgcmV0dXJuIHRoaXMudmFyaWFudDtcclxuICB9XHJcblxyXG4gIC8vISBjb2xvciBwaWNrZXIgaW50ZWdyYXRpb25cclxuICBwcml2YXRlIF90ZW1wb3JhcnlWYWx1ZTogQ29sb3IgfCBudWxsID0gbnVsbDtcclxuICBvbkNvbG9yUGlja2VyQ2hhbmdlKGV2ZW50OiBDb2xvcik6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMud2l0aEFjdGlvbkJ1dHRvbnMpIHtcclxuICAgICAgdGhpcy5fdGVtcG9yYXJ5VmFsdWUgPSBldmVudDtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgdGhpcy52YWx1ZSA9IGV2ZW50O1xyXG4gICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgfVxyXG4gIGhhbmRsZU91dHNpZGVDbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLl9pc092ZXJsYXlPcGVuKSByZXR1cm47XHJcbiAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XHJcbiAgICBpZiAodGhpcy5lbGVtZW50LmNvbnRhaW5zKHRhcmdldCkpIHJldHVybjtcclxuXHJcbiAgICB0aGlzLmNsb3NlKCk7XHJcbiAgfVxyXG4gIGFwcGx5KCk6IHZvaWQge1xyXG4gICAgaWYgKCF0aGlzLl90ZW1wb3JhcnlWYWx1ZSkgcmV0dXJuIHRoaXMuY2FuY2VsKCk7XHJcblxyXG4gICAgdGhpcy52YWx1ZSA9IHRoaXMuX3RlbXBvcmFyeVZhbHVlO1xyXG4gICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB0aGlzLmNsb3NlKCk7XHJcbiAgfVxyXG4gIGNhbmNlbCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY2xvc2UoKTtcclxuICB9XHJcbiAgcmVzZXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLl90ZW1wb3JhcnlWYWx1ZSA9IHRoaXMudmFsdWU7XHJcbiAgfVxyXG5cclxuICAvLyEgb3ZlcmxheSB0ZW1wbGF0ZXNcclxuICBAQ29udGVudENoaWxkKEFyZENvbG9ySW5wdXRTaGFkZUluZGljYXRvclRlbXBsYXRlRGlyZWN0aXZlLCB7XHJcbiAgICByZWFkOiBUZW1wbGF0ZVJlZixcclxuICB9KVxyXG4gIHNoYWRlSW5kaWNhdG9yVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIEBDb250ZW50Q2hpbGQoQXJkQ29sb3JJbnB1dEh1ZUluZGljYXRvclRlbXBsYXRlRGlyZWN0aXZlLCB7XHJcbiAgICByZWFkOiBUZW1wbGF0ZVJlZixcclxuICB9KVxyXG4gIGh1ZUluZGljYXRvclRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcclxuICBAQ29udGVudENoaWxkKEFyZENvbG9ySW5wdXRPcGFjaXR5SW5kaWNhdG9yVGVtcGxhdGVEaXJlY3RpdmUsIHtcclxuICAgIHJlYWQ6IFRlbXBsYXRlUmVmLFxyXG4gIH0pXHJcbiAgb3BhY2l0eUluZGljYXRvclRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcclxuICBAQ29udGVudENoaWxkKEFyZENvbG9ySW5wdXRDb2xvclJlZmVyZW5jZVRlbXBsYXRlRGlyZWN0aXZlLCB7XHJcbiAgICByZWFkOiBUZW1wbGF0ZVJlZixcclxuICB9KVxyXG4gIGNvbG9yUmVmZXJlbmNlVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG4gIEBDb250ZW50Q2hpbGQoQXJkQ29sb3JJbnB1dEFjdGlvbkJ1dHRvbnNUZW1wbGF0ZURpcmVjdGl2ZSwge1xyXG4gICAgcmVhZDogVGVtcGxhdGVSZWYsXHJcbiAgfSlcclxuICBhY3Rpb25CdXR0b25zVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICBnZXQgYWN0aW9uQnV0dG9uVmFyaWFudCgpOiBCdXR0b25WYXJpYW50IHtcclxuICAgIGlmICh0aGlzLnZhcmlhbnQgPT0gRm9ybUVsZW1lbnRWYXJpYW50LlNoYXJwKSByZXR1cm4gQnV0dG9uVmFyaWFudC5TaGFycDtcclxuICAgIHJldHVybiBCdXR0b25WYXJpYW50LlJvdW5kZWQ7XHJcbiAgfVxyXG4gIGdldEFjdGlvbkJ1dHRvbnNDb250ZXh0KCk6IENvbG9ySW5wdXRBY3Rpb25CdXR0b25zQ29udGV4dCB7XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBhcHBseTogKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuYXBwbHkoKTtcclxuICAgICAgfSxcclxuICAgICAgY2FuY2VsOiAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5jYW5jZWwoKTtcclxuICAgICAgfSxcclxuICAgICAgcmVzZXQ6ICgpID0+IHtcclxuICAgICAgICB0aGlzLnJlc2V0KCk7XHJcbiAgICAgIH0sXHJcbiAgICB9O1xyXG4gIH1cclxuXHJcbiAgLy8hIGhlbHBlcnNcclxuICBwcm90ZWN0ZWQgX3VwZGF0ZUlucHV0RWxWYWx1ZSgpOiB2b2lkIHtcclxuICAgIHRoaXMudGV4dElucHV0RWwubmF0aXZlRWxlbWVudC52YWx1ZSA9IHRoaXMudmFsdWU/LmhleCgpLnRvU3RyaW5nKCkgPz8gJyc7XHJcbiAgfVxyXG4gIHByb3RlY3RlZCBfc2V0SW5wdXRBdHRyaWJ1dGVzKCkge1xyXG4gICAgY29uc3QgaW5wdXQgPSB0aGlzLnRleHRJbnB1dEVsLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBjb25zdCBhdHRyaWJ1dGVzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9ID0ge1xyXG4gICAgICB0eXBlOiAndGV4dCcsXHJcbiAgICAgIGF1dG9jb3JyZWN0OiAnb2ZmJyxcclxuICAgICAgYXV0b2NhcGl0YWxpemU6ICdvZmYnLFxyXG4gICAgICBhdXRvY29tcGxldGU6ICdvZmYnLFxyXG4gICAgICB0YWJpbmRleDogU3RyaW5nKHRoaXMudGFiSW5kZXgpLFxyXG4gICAgICAuLi50aGlzLmlucHV0QXR0cnMsXHJcbiAgICB9O1xyXG5cclxuICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKGF0dHJpYnV0ZXMpKSB7XHJcbiAgICAgIGlucHV0LnNldEF0dHJpYnV0ZShrZXksIFN0cmluZyhhdHRyaWJ1dGVzW2tleV0pKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGFyZC1mb3JtLWZpZWxkLWZyYW1lXHJcbiAgICBbYXBwZWFyYW5jZV09XCJhcHBlYXJhbmNlXCJcclxuICAgIFt2YXJpYW50XT1cInZhcmlhbnRcIlxyXG4gICAgW2NvbXBhY3RdPVwiY29tcGFjdFwiXHJcbiAgICBbaXNGb2N1c2VkXT1cImlzRm9jdXNlZFwiXHJcbiAgICBbcHJlZml4VGVtcGxhdGVdPVwicHJlZml4VGVtcGxhdGVcIlxyXG4gICAgW3N1ZmZpeFRlbXBsYXRlXT1cInN1ZmZpeFRlbXBsYXRlXCJcclxuICAgICNvdmVybGF5SG9zdFxyXG4+XHJcbiAgICA8ZGl2IGNsYXNzPVwiYXJkLWNvbG9yLWlucHV0XCJcclxuICAgICAgICBbY2xhc3MuYXJkLWhhcy12YWx1ZV09XCJ2YWx1ZVwiXHJcbiAgICAgICAgKG1vdXNldXApPVwib25Nb3VzZXVwKClcIlxyXG4gICAgPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJhcmQtaW5wdXQtY29udGFpbmVyXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJzaG91bGREaXNwbGF5UGxhY2Vob2xkZXJcIj5cclxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdFBsYWNlaG9sZGVyVGVtcGxhdGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImFyZC1wbGFjZWhvbGRlclwiPnt7IHBsYWNlaG9sZGVyIH19PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJwbGFjZWhvbGRlclRlbXBsYXRlIHx8IGRlZmF1bHRQbGFjZWhvbGRlclRlbXBsYXRlXCI+PC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICAgICAgICA8aW5wdXQgI3RleHRJbnB1dFxyXG4gICAgICAgICAgICAgICAgW2F0dHIuaWRdPVwiaW5wdXRJZFwiXHJcbiAgICAgICAgICAgICAgICB0YWJpbmRleD1cIi0xXCJcclxuICAgICAgICAgICAgICAgIHJlYWRvbmx5XHJcbiAgICAgICAgICAgID5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGFyZC1fY2xlYXItYnV0dG9uXHJcbiAgICAgICAgICAgICpuZ0lmPVwic2hvdWxkU2hvd0NsZWFyQnV0dG9uXCJcclxuICAgICAgICAgICAgW3RpdGxlXT1cImNsZWFyQnV0dG9uVGl0bGVcIlxyXG4gICAgICAgICAgICAobW91c2V1cCk9XCJvbkNsZWFyQnV0dG9uQ2xpY2soJGV2ZW50KVwiXHJcbiAgICAgICAgPjwvYXJkLV9jbGVhci1idXR0b24+XHJcblxyXG4gICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgY2xhc3M9XCJhcmQtY29sb3ItZGlzcGxheS1idXR0b25cIlxyXG4gICAgICAgICAgICAjZm9jdXNhYmxlRWxlbWVudFxyXG4gICAgICAgICAgICAoZm9jdXMpPVwib25Gb2N1cygkZXZlbnQpXCJcclxuICAgICAgICAgICAgKGJsdXIpPVwib25CbHVyKCRldmVudClcIlxyXG4gICAgICAgICAgICAoY29weSk9XCJvbkNvcHkoJGV2ZW50KVwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgICA8YXJkLWNvbG9yLWRpc3BsYXkgW2NvbG9yXT1cInZhbHVlXCI+PC9hcmQtY29sb3ItZGlzcGxheT5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG48L2FyZC1mb3JtLWZpZWxkLWZyYW1lPlxyXG5cclxuPG5nLXRlbXBsYXRlICNvdmVybGF5VGVtcGxhdGU+XHJcbiAgICA8YXJkLWNhcmRcclxuICAgICAgICBjbGFzcz1cImFyZC1vdmVybGF5LWNhcmQgYXJkLWNvbG9yLWlucHV0LW92ZXJsYXktY2FyZFwiXHJcbiAgICAgICAgW2FwcGVhcmFuY2VdPVwib3ZlcmxheUFwcGVhcmFuY2VcIlxyXG4gICAgICAgIFt2YXJpYW50XT1cIm92ZXJsYXlWYXJpYW50XCJcclxuICAgICAgICAoYXJkQ2xpY2tPdXRzaWRlKT1cImhhbmRsZU91dHNpZGVDbGljaygkZXZlbnQpXCJcclxuICAgID5cclxuICAgICAgICA8YXJkLWNvbG9yLXBpY2tlclxyXG4gICAgICAgICAgICBbdmFsdWVdPVwidmFsdWVcIlxyXG4gICAgICAgICAgICAodmFsdWVDaGFuZ2UpPVwib25Db2xvclBpY2tlckNoYW5nZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgW2h1ZUluZGljYXRvclRlbXBsYXRlXT1cImh1ZUluZGljYXRvclRlbXBsYXRlXCJcclxuICAgICAgICAgICAgW3NoYWRlSW5kaWNhdG9yVGVtcGxhdGVdPVwic2hhZGVJbmRpY2F0b3JUZW1wbGF0ZVwiXHJcbiAgICAgICAgICAgIFtvcGFjaXR5SW5kaWNhdG9yVGVtcGxhdGVdPVwib3BhY2l0eUluZGljYXRvclRlbXBsYXRlXCJcclxuICAgICAgICAgICAgW2NvbG9yUmVmZXJlbmNlVGVtcGxhdGVdPVwiY29sb3JSZWZlcmVuY2VUZW1wbGF0ZVwiXHJcbiAgICAgICAgPjwvYXJkLWNvbG9yLXBpY2tlcj5cclxuICAgICAgICA8YXJkLWNhcmQtYWN0aW9uLWJ1dHRvbnMgKm5nSWY9XCJ3aXRoQWN0aW9uQnV0dG9uc1wiPlxyXG4gICAgICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRBY3Rpb25CdXR0b25zVGVtcGxhdGUgbGV0LWFwcGx5Rm49XCJhcHBseVwiIGxldC1jYW5jZWxGbj1cImNhbmNlbFwiPlxyXG4gICAgICAgICAgICAgICAgPGFyZC1idXR0b24gYXBwZWFyYW5jZT1cInRyYW5zcGFyZW50XCIgW3ZhcmlhbnRdPVwiYWN0aW9uQnV0dG9uVmFyaWFudFwiIChjbGljayk9XCJjYW5jZWxGbigpXCI+Q2FuY2VsPC9hcmQtYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgPGFyZC1idXR0b24gYXBwZWFyYW5jZT1cInJhaXNlZC1zdHJvbmdcIiBbdmFyaWFudF09XCJhY3Rpb25CdXR0b25WYXJpYW50XCIgKGNsaWNrKT1cImFwcGx5Rm4oKVwiPkFwcGx5PC9hcmQtYnV0dG9uPlxyXG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlXHJcbiAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldF09XCJhY3Rpb25CdXR0b25zVGVtcGxhdGUgPz8gZGVmYXVsdEFjdGlvbkJ1dHRvbnNUZW1wbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwiZ2V0QWN0aW9uQnV0dG9uc0NvbnRleHQoKVwiXHJcbiAgICAgICAgICAgIC8+XHJcbiAgICAgICAgPC9hcmQtY2FyZC1hY3Rpb24tYnV0dG9ucz5cclxuICAgIDwvYXJkLWNhcmQ+XHJcbjwvbmctdGVtcGxhdGU+Il19
|