ngx-tethys 18.2.6 → 19.0.0-next.0
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/CHANGELOG.md +19 -0
- package/badge/badge.component.d.ts +21 -3
- package/cascader/cascader-search-option.component.d.ts +6 -3
- package/core/store/store.d.ts +1 -1
- package/date-picker/abstract-picker.component.d.ts +1 -1
- package/date-picker/abstract-picker.directive.d.ts +1 -1
- package/date-picker/lib/calendar/calendar-header.component.d.ts +1 -1
- package/date-picker/lib/calendar/calendar-table.component.d.ts +1 -1
- package/date-range/date-range.component.d.ts +12 -2
- package/divider/divider.component.d.ts +2 -8
- package/dropdown/dropdown-menu.component.d.ts +1 -1
- package/empty/empty.component.d.ts +1 -4
- package/fesm2022/ngx-tethys-action.mjs +12 -12
- package/fesm2022/ngx-tethys-action.mjs.map +1 -1
- package/fesm2022/ngx-tethys-affix.mjs +8 -8
- package/fesm2022/ngx-tethys-affix.mjs.map +1 -1
- package/fesm2022/ngx-tethys-alert.mjs +12 -12
- package/fesm2022/ngx-tethys-alert.mjs.map +1 -1
- package/fesm2022/ngx-tethys-anchor.mjs +11 -13
- package/fesm2022/ngx-tethys-anchor.mjs.map +1 -1
- package/fesm2022/ngx-tethys-arrow-switcher.mjs +9 -9
- package/fesm2022/ngx-tethys-arrow-switcher.mjs.map +1 -1
- package/fesm2022/ngx-tethys-autocomplete.mjs +20 -20
- package/fesm2022/ngx-tethys-autocomplete.mjs.map +1 -1
- package/fesm2022/ngx-tethys-avatar.mjs +26 -26
- package/fesm2022/ngx-tethys-avatar.mjs.map +1 -1
- package/fesm2022/ngx-tethys-back-top.mjs +10 -10
- package/fesm2022/ngx-tethys-back-top.mjs.map +1 -1
- package/fesm2022/ngx-tethys-badge.mjs +9 -9
- package/fesm2022/ngx-tethys-badge.mjs.map +1 -1
- package/fesm2022/ngx-tethys-breadcrumb.mjs +13 -15
- package/fesm2022/ngx-tethys-breadcrumb.mjs.map +1 -1
- package/fesm2022/ngx-tethys-button.mjs +16 -16
- package/fesm2022/ngx-tethys-button.mjs.map +1 -1
- package/fesm2022/ngx-tethys-calendar.mjs +20 -20
- package/fesm2022/ngx-tethys-calendar.mjs.map +1 -1
- package/fesm2022/ngx-tethys-card.mjs +15 -15
- package/fesm2022/ngx-tethys-card.mjs.map +1 -1
- package/fesm2022/ngx-tethys-carousel.mjs +15 -15
- package/fesm2022/ngx-tethys-carousel.mjs.map +1 -1
- package/fesm2022/ngx-tethys-cascader.mjs +23 -24
- package/fesm2022/ngx-tethys-cascader.mjs.map +1 -1
- package/fesm2022/ngx-tethys-checkbox.mjs +9 -9
- package/fesm2022/ngx-tethys-checkbox.mjs.map +1 -1
- package/fesm2022/ngx-tethys-collapse.mjs +12 -12
- package/fesm2022/ngx-tethys-collapse.mjs.map +1 -1
- package/fesm2022/ngx-tethys-color-picker.mjs +38 -38
- package/fesm2022/ngx-tethys-color-picker.mjs.map +1 -1
- package/fesm2022/ngx-tethys-comment.mjs +15 -15
- package/fesm2022/ngx-tethys-comment.mjs.map +1 -1
- package/fesm2022/ngx-tethys-copy.mjs +8 -8
- package/fesm2022/ngx-tethys-copy.mjs.map +1 -1
- package/fesm2022/ngx-tethys-core.mjs +21 -21
- package/fesm2022/ngx-tethys-core.mjs.map +1 -1
- package/fesm2022/ngx-tethys-date-picker.mjs +141 -141
- package/fesm2022/ngx-tethys-date-picker.mjs.map +1 -1
- package/fesm2022/ngx-tethys-date-range.mjs +14 -14
- package/fesm2022/ngx-tethys-date-range.mjs.map +1 -1
- package/fesm2022/ngx-tethys-dialog.mjs +27 -28
- package/fesm2022/ngx-tethys-dialog.mjs.map +1 -1
- package/fesm2022/ngx-tethys-divider.mjs +8 -9
- package/fesm2022/ngx-tethys-divider.mjs.map +1 -1
- package/fesm2022/ngx-tethys-dot.mjs +8 -8
- package/fesm2022/ngx-tethys-dot.mjs.map +1 -1
- package/fesm2022/ngx-tethys-drag-drop.mjs +20 -20
- package/fesm2022/ngx-tethys-drag-drop.mjs.map +1 -1
- package/fesm2022/ngx-tethys-dropdown.mjs +47 -48
- package/fesm2022/ngx-tethys-dropdown.mjs.map +1 -1
- package/fesm2022/ngx-tethys-empty.mjs +12 -12
- package/fesm2022/ngx-tethys-empty.mjs.map +1 -1
- package/fesm2022/ngx-tethys-flexible-text.mjs +8 -8
- package/fesm2022/ngx-tethys-flexible-text.mjs.map +1 -1
- package/fesm2022/ngx-tethys-form.mjs +44 -44
- package/fesm2022/ngx-tethys-form.mjs.map +1 -1
- package/fesm2022/ngx-tethys-fullscreen.mjs +14 -14
- package/fesm2022/ngx-tethys-fullscreen.mjs.map +1 -1
- package/fesm2022/ngx-tethys-grid.mjs +35 -38
- package/fesm2022/ngx-tethys-grid.mjs.map +1 -1
- package/fesm2022/ngx-tethys-guider.mjs +18 -18
- package/fesm2022/ngx-tethys-guider.mjs.map +1 -1
- package/fesm2022/ngx-tethys-i18n.mjs +23 -3
- package/fesm2022/ngx-tethys-i18n.mjs.map +1 -1
- package/fesm2022/ngx-tethys-icon.mjs +11 -11
- package/fesm2022/ngx-tethys-icon.mjs.map +1 -1
- package/fesm2022/ngx-tethys-image.mjs +19 -19
- package/fesm2022/ngx-tethys-image.mjs.map +1 -1
- package/fesm2022/ngx-tethys-input-number.mjs +11 -11
- package/fesm2022/ngx-tethys-input-number.mjs.map +1 -1
- package/fesm2022/ngx-tethys-input.mjs +23 -23
- package/fesm2022/ngx-tethys-input.mjs.map +1 -1
- package/fesm2022/ngx-tethys-layout.mjs +66 -65
- package/fesm2022/ngx-tethys-layout.mjs.map +1 -1
- package/fesm2022/ngx-tethys-list.mjs +19 -19
- package/fesm2022/ngx-tethys-list.mjs.map +1 -1
- package/fesm2022/ngx-tethys-loading.mjs +9 -9
- package/fesm2022/ngx-tethys-loading.mjs.map +1 -1
- package/fesm2022/ngx-tethys-mention.mjs +12 -12
- package/fesm2022/ngx-tethys-mention.mjs.map +1 -1
- package/fesm2022/ngx-tethys-menu.mjs +29 -29
- package/fesm2022/ngx-tethys-menu.mjs.map +1 -1
- package/fesm2022/ngx-tethys-message.mjs +25 -26
- package/fesm2022/ngx-tethys-message.mjs.map +1 -1
- package/fesm2022/ngx-tethys-nav.mjs +24 -25
- package/fesm2022/ngx-tethys-nav.mjs.map +1 -1
- package/fesm2022/ngx-tethys-notify.mjs +20 -20
- package/fesm2022/ngx-tethys-notify.mjs.map +1 -1
- package/fesm2022/ngx-tethys-pagination.mjs +15 -15
- package/fesm2022/ngx-tethys-pagination.mjs.map +1 -1
- package/fesm2022/ngx-tethys-popover.mjs +23 -23
- package/fesm2022/ngx-tethys-popover.mjs.map +1 -1
- package/fesm2022/ngx-tethys-progress.mjs +17 -17
- package/fesm2022/ngx-tethys-progress.mjs.map +1 -1
- package/fesm2022/ngx-tethys-property-operation.mjs +12 -12
- package/fesm2022/ngx-tethys-property-operation.mjs.map +1 -1
- package/fesm2022/ngx-tethys-property.mjs +12 -12
- package/fesm2022/ngx-tethys-property.mjs.map +1 -1
- package/fesm2022/ngx-tethys-radio.mjs +15 -15
- package/fesm2022/ngx-tethys-radio.mjs.map +1 -1
- package/fesm2022/ngx-tethys-rate.mjs +12 -13
- package/fesm2022/ngx-tethys-rate.mjs.map +1 -1
- package/fesm2022/ngx-tethys-resizable.mjs +17 -19
- package/fesm2022/ngx-tethys-resizable.mjs.map +1 -1
- package/fesm2022/ngx-tethys-result.mjs +9 -9
- package/fesm2022/ngx-tethys-result.mjs.map +1 -1
- package/fesm2022/ngx-tethys-segment.mjs +13 -13
- package/fesm2022/ngx-tethys-segment.mjs.map +1 -1
- package/fesm2022/ngx-tethys-select.mjs +16 -16
- package/fesm2022/ngx-tethys-select.mjs.map +1 -1
- package/fesm2022/ngx-tethys-shared.mjs +70 -70
- package/fesm2022/ngx-tethys-shared.mjs.map +1 -1
- package/fesm2022/ngx-tethys-skeleton.mjs +23 -28
- package/fesm2022/ngx-tethys-skeleton.mjs.map +1 -1
- package/fesm2022/ngx-tethys-slide.mjs +34 -35
- package/fesm2022/ngx-tethys-slide.mjs.map +1 -1
- package/fesm2022/ngx-tethys-slider.mjs +9 -9
- package/fesm2022/ngx-tethys-slider.mjs.map +1 -1
- package/fesm2022/ngx-tethys-space.mjs +12 -12
- package/fesm2022/ngx-tethys-space.mjs.map +1 -1
- package/fesm2022/ngx-tethys-statistic.mjs +9 -9
- package/fesm2022/ngx-tethys-statistic.mjs.map +1 -1
- package/fesm2022/ngx-tethys-stepper.mjs +22 -22
- package/fesm2022/ngx-tethys-stepper.mjs.map +1 -1
- package/fesm2022/ngx-tethys-strength.mjs +8 -8
- package/fesm2022/ngx-tethys-strength.mjs.map +1 -1
- package/fesm2022/ngx-tethys-switch.mjs +9 -9
- package/fesm2022/ngx-tethys-switch.mjs.map +1 -1
- package/fesm2022/ngx-tethys-table.mjs +23 -23
- package/fesm2022/ngx-tethys-table.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tabs.mjs +15 -16
- package/fesm2022/ngx-tethys-tabs.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tag.mjs +11 -11
- package/fesm2022/ngx-tethys-tag.mjs.map +1 -1
- package/fesm2022/ngx-tethys-testing.mjs.map +1 -1
- package/fesm2022/ngx-tethys-time-picker.mjs +24 -24
- package/fesm2022/ngx-tethys-time-picker.mjs.map +1 -1
- package/fesm2022/ngx-tethys-timeline.mjs +15 -16
- package/fesm2022/ngx-tethys-timeline.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tooltip.mjs +16 -16
- package/fesm2022/ngx-tethys-tooltip.mjs.map +1 -1
- package/fesm2022/ngx-tethys-transfer.mjs +13 -13
- package/fesm2022/ngx-tethys-transfer.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tree-select.mjs +13 -13
- package/fesm2022/ngx-tethys-tree-select.mjs.map +1 -1
- package/fesm2022/ngx-tethys-tree.mjs +19 -19
- package/fesm2022/ngx-tethys-tree.mjs.map +1 -1
- package/fesm2022/ngx-tethys-typography.mjs +15 -15
- package/fesm2022/ngx-tethys-typography.mjs.map +1 -1
- package/fesm2022/ngx-tethys-upload.mjs +17 -17
- package/fesm2022/ngx-tethys-upload.mjs.map +1 -1
- package/fesm2022/ngx-tethys-util.mjs +2 -18
- package/fesm2022/ngx-tethys-util.mjs.map +1 -1
- package/fesm2022/ngx-tethys-vote.mjs +9 -9
- package/fesm2022/ngx-tethys-vote.mjs.map +1 -1
- package/fesm2022/ngx-tethys-watermark.mjs +8 -8
- package/fesm2022/ngx-tethys-watermark.mjs.map +1 -1
- package/fesm2022/ngx-tethys.mjs +1 -1
- package/fesm2022/ngx-tethys.mjs.map +1 -1
- package/i18n/i18n.d.ts +6 -1
- package/i18n/locales/de-de.d.ts +4 -0
- package/i18n/locales/en-us.d.ts +4 -0
- package/i18n/locales/ja-jp.d.ts +4 -0
- package/i18n/locales/zh-hans.d.ts +4 -0
- package/i18n/locales/zh-hant.d.ts +4 -0
- package/input/input.component.d.ts +1 -1
- package/layout/header.component.d.ts +21 -3
- package/layout/sidebar.component.d.ts +8 -42
- package/menu/group/menu-group.component.d.ts +6 -30
- package/message/abstract/abstract-message-container.component.d.ts +1 -1
- package/message/abstract/abstract-message.component.d.ts +1 -1
- package/nav/nav.component.d.ts +2 -2
- package/package.json +1 -169
- package/pagination/pagination.component.d.ts +45 -5
- package/property/property-item.component.d.ts +4 -2
- package/schematics/dependencies.js +3 -3
- package/schematics/ng-add/index.js +7 -3
- package/schematics/ng-update/core/complete.js +1 -2
- package/schematics/ng-update/migration-collection.json +4 -4
- package/schematics/ng-update/{update-18 → update-19}/index.js +4 -5
- package/schematics/ng-update/{update-18 → update-19}/index.spec.js +4 -4
- package/schematics/testing/get-json-content.js +1 -2
- package/schematics/testing/test-app.js +1 -2
- package/schematics/testing/test-project.js +1 -2
- package/schematics/testing/test-workspace.d.ts +0 -2
- package/schematics/testing/test-workspace.js +2 -2
- package/schematics/utils/create-tree-compiler-host.js +1 -2
- package/schematics/utils/create-tree-ts-parse-config-host.js +2 -2
- package/schematics/utils/get-angular-json.js +1 -2
- package/schematics/utils/get-project.js +1 -2
- package/schematics/utils/get-workspace-tsconfig.js +1 -2
- package/schematics/utils/package-config.js +2 -3
- package/schematics/utils/update-file.service.js +2 -2
- package/schematics/version.d.ts +1 -1
- package/schematics/version.js +1 -1
- package/shared/base-form-check.component.d.ts +1 -1
- package/shared/option/list-option/list-option.component.d.ts +1 -4
- package/shared/select/styles/select.mixin.scss +2 -1
- package/skeleton/skeleton-rectangle.component.d.ts +1 -4
- package/skeleton/stylized/bullet-list.component.d.ts +1 -9
- package/styles/bootstrap/utilities/_background.scss +2 -1
- package/styles/bootstrap/utilities/_text.scss +1 -1
- package/table/table.component.d.ts +1 -1
- package/upload/file-select-base.d.ts +1 -1
- package/esm2022/action/action.component.mjs +0 -174
- package/esm2022/action/action.module.mjs +0 -19
- package/esm2022/action/actions.component.mjs +0 -57
- package/esm2022/action/index.mjs +0 -4
- package/esm2022/action/ngx-tethys-action.mjs +0 -5
- package/esm2022/affix/affix.component.mjs +0 -243
- package/esm2022/affix/affix.module.mjs +0 -18
- package/esm2022/affix/index.mjs +0 -3
- package/esm2022/affix/ngx-tethys-affix.mjs +0 -5
- package/esm2022/affix/respond-events.mjs +0 -11
- package/esm2022/alert/alert.component.mjs +0 -98
- package/esm2022/alert/alert.directive.mjs +0 -25
- package/esm2022/alert/alert.module.mjs +0 -19
- package/esm2022/alert/index.mjs +0 -4
- package/esm2022/alert/ngx-tethys-alert.mjs +0 -5
- package/esm2022/anchor/anchor-link.component.mjs +0 -106
- package/esm2022/anchor/anchor.component.mjs +0 -266
- package/esm2022/anchor/anchor.module.mjs +0 -20
- package/esm2022/anchor/index.mjs +0 -4
- package/esm2022/anchor/ngx-tethys-anchor.mjs +0 -5
- package/esm2022/arrow-switcher/arrow-switcher.component.mjs +0 -130
- package/esm2022/arrow-switcher/index.mjs +0 -3
- package/esm2022/arrow-switcher/module.mjs +0 -21
- package/esm2022/arrow-switcher/ngx-tethys-arrow-switcher.mjs +0 -5
- package/esm2022/autocomplete/autocomplete.component.mjs +0 -182
- package/esm2022/autocomplete/autocomplete.trigger.directive.mjs +0 -275
- package/esm2022/autocomplete/index.mjs +0 -8
- package/esm2022/autocomplete/module.mjs +0 -67
- package/esm2022/autocomplete/ngx-tethys-autocomplete.mjs +0 -5
- package/esm2022/autocomplete/overlay/autocomplete-animations.mjs +0 -10
- package/esm2022/autocomplete/overlay/autocomplete-container.component.mjs +0 -64
- package/esm2022/autocomplete/overlay/autocomplete-ref.mjs +0 -18
- package/esm2022/autocomplete/overlay/autocomplete.config.mjs +0 -18
- package/esm2022/autocomplete/overlay/autocomplete.options.mjs +0 -6
- package/esm2022/autocomplete/overlay/autocomplete.service.mjs +0 -127
- package/esm2022/avatar/avatar-list/avatar-list.component.mjs +0 -76
- package/esm2022/avatar/avatar.component.mjs +0 -179
- package/esm2022/avatar/avatar.module.mjs +0 -33
- package/esm2022/avatar/avatar.pipe.mjs +0 -91
- package/esm2022/avatar/avatar.service.mjs +0 -27
- package/esm2022/avatar/index.mjs +0 -6
- package/esm2022/avatar/ngx-tethys-avatar.mjs +0 -5
- package/esm2022/back-top/back-top.component.mjs +0 -126
- package/esm2022/back-top/back-top.module.mjs +0 -18
- package/esm2022/back-top/index.mjs +0 -3
- package/esm2022/back-top/ngx-tethys-back-top.mjs +0 -5
- package/esm2022/badge/badge.component.mjs +0 -238
- package/esm2022/badge/badge.module.mjs +0 -18
- package/esm2022/badge/index.mjs +0 -3
- package/esm2022/badge/ngx-tethys-badge.mjs +0 -5
- package/esm2022/breadcrumb/breadcrumb-item.component.mjs +0 -49
- package/esm2022/breadcrumb/breadcrumb.component.mjs +0 -115
- package/esm2022/breadcrumb/index.mjs +0 -4
- package/esm2022/breadcrumb/module.mjs +0 -21
- package/esm2022/breadcrumb/ngx-tethys-breadcrumb.mjs +0 -5
- package/esm2022/button/button-group.component.mjs +0 -90
- package/esm2022/button/button-icon.component.mjs +0 -166
- package/esm2022/button/button.component.mjs +0 -216
- package/esm2022/button/button.module.mjs +0 -20
- package/esm2022/button/index.mjs +0 -5
- package/esm2022/button/ngx-tethys-button.mjs +0 -5
- package/esm2022/calendar/calendar-cells.mjs +0 -35
- package/esm2022/calendar/calendar-header.component.mjs +0 -117
- package/esm2022/calendar/calendar.component.mjs +0 -122
- package/esm2022/calendar/index.mjs +0 -5
- package/esm2022/calendar/module.mjs +0 -63
- package/esm2022/calendar/ngx-tethys-calendar.mjs +0 -5
- package/esm2022/card/card.component.mjs +0 -48
- package/esm2022/card/card.module.mjs +0 -19
- package/esm2022/card/content.component.mjs +0 -58
- package/esm2022/card/header.component.mjs +0 -42
- package/esm2022/card/index.mjs +0 -5
- package/esm2022/card/ngx-tethys-card.mjs +0 -5
- package/esm2022/carousel/carousel-item.directive.mjs +0 -37
- package/esm2022/carousel/carousel.component.mjs +0 -290
- package/esm2022/carousel/carousel.service.mjs +0 -74
- package/esm2022/carousel/engine/carousel-base.mjs +0 -43
- package/esm2022/carousel/engine/carousel-fade.mjs +0 -46
- package/esm2022/carousel/engine/carousel-noop.mjs +0 -28
- package/esm2022/carousel/engine/carousel-slide.mjs +0 -62
- package/esm2022/carousel/engine/index.mjs +0 -5
- package/esm2022/carousel/index.mjs +0 -5
- package/esm2022/carousel/module.mjs +0 -21
- package/esm2022/carousel/ngx-tethys-carousel.mjs +0 -5
- package/esm2022/carousel/typings.mjs +0 -2
- package/esm2022/cascader/cascader-li.component.mjs +0 -81
- package/esm2022/cascader/cascader-search-option.component.mjs +0 -73
- package/esm2022/cascader/cascader.component.mjs +0 -768
- package/esm2022/cascader/cascader.service.mjs +0 -558
- package/esm2022/cascader/index.mjs +0 -5
- package/esm2022/cascader/module.mjs +0 -62
- package/esm2022/cascader/ngx-tethys-cascader.mjs +0 -5
- package/esm2022/cascader/types.mjs +0 -2
- package/esm2022/checkbox/checkbox.component.mjs +0 -51
- package/esm2022/checkbox/index.mjs +0 -4
- package/esm2022/checkbox/module.mjs +0 -18
- package/esm2022/checkbox/ngx-tethys-checkbox.mjs +0 -5
- package/esm2022/collapse/collapse-item.component.mjs +0 -88
- package/esm2022/collapse/collapse.component.mjs +0 -79
- package/esm2022/collapse/index.mjs +0 -4
- package/esm2022/collapse/module.mjs +0 -22
- package/esm2022/collapse/ngx-tethys-collapse.mjs +0 -5
- package/esm2022/color-picker/color-picker-custom-panel.component.mjs +0 -38
- package/esm2022/color-picker/color-picker-panel.component.mjs +0 -100
- package/esm2022/color-picker/color-picker.component.mjs +0 -289
- package/esm2022/color-picker/constant.mjs +0 -73
- package/esm2022/color-picker/coordinates.directive.mjs +0 -73
- package/esm2022/color-picker/helpers/color.class.mjs +0 -281
- package/esm2022/color-picker/helpers/colors-table.class.mjs +0 -155
- package/esm2022/color-picker/helpers/rgba.class.mjs +0 -34
- package/esm2022/color-picker/index.mjs +0 -14
- package/esm2022/color-picker/module.mjs +0 -72
- package/esm2022/color-picker/ngx-tethys-color-picker.mjs +0 -5
- package/esm2022/color-picker/parts/alpha/alpha.component.mjs +0 -64
- package/esm2022/color-picker/parts/hue/hue.component.mjs +0 -54
- package/esm2022/color-picker/parts/indicator/indicator.component.mjs +0 -26
- package/esm2022/color-picker/parts/inputs/inputs.component.mjs +0 -61
- package/esm2022/color-picker/parts/saturation/saturation.component.mjs +0 -68
- package/esm2022/comment/comment-actions.directive.mjs +0 -19
- package/esm2022/comment/comment-content.directive.mjs +0 -19
- package/esm2022/comment/comment.component.mjs +0 -30
- package/esm2022/comment/comment.module.mjs +0 -41
- package/esm2022/comment/index.mjs +0 -5
- package/esm2022/comment/ngx-tethys-comment.mjs +0 -5
- package/esm2022/copy/copy.directive.mjs +0 -101
- package/esm2022/copy/index.mjs +0 -3
- package/esm2022/copy/module.mjs +0 -18
- package/esm2022/copy/ngx-tethys-copy.mjs +0 -5
- package/esm2022/core/animation/animation-consts.mjs +0 -23
- package/esm2022/core/animation/collapse.mjs +0 -12
- package/esm2022/core/animation/fade.mjs +0 -7
- package/esm2022/core/animation/index.mjs +0 -2
- package/esm2022/core/animation/public-api.mjs +0 -6
- package/esm2022/core/animation/thumb.mjs +0 -12
- package/esm2022/core/animation/zoom.mjs +0 -66
- package/esm2022/core/behaviors/constructor.mjs +0 -5
- package/esm2022/core/behaviors/control-value-accessor.mjs +0 -17
- package/esm2022/core/behaviors/decorators.mjs +0 -47
- package/esm2022/core/behaviors/disabled.mjs +0 -17
- package/esm2022/core/behaviors/focus-control.mjs +0 -31
- package/esm2022/core/behaviors/index.mjs +0 -11
- package/esm2022/core/behaviors/initialized.mjs +0 -12
- package/esm2022/core/behaviors/loading-done.mjs +0 -12
- package/esm2022/core/behaviors/mixin.mjs +0 -5
- package/esm2022/core/behaviors/tabindex.mjs +0 -21
- package/esm2022/core/behaviors/unsubscribe.mjs +0 -23
- package/esm2022/core/click-positioner.mjs +0 -36
- package/esm2022/core/color/color.mjs +0 -13
- package/esm2022/core/color/index.mjs +0 -2
- package/esm2022/core/debounce-time.mjs +0 -11
- package/esm2022/core/event-dispatchers/index.mjs +0 -2
- package/esm2022/core/index.mjs +0 -16
- package/esm2022/core/ngx-tethys-core.mjs +0 -5
- package/esm2022/core/overlay/abstract-overlay-container.mjs +0 -53
- package/esm2022/core/overlay/abstract-overlay-ref.mjs +0 -160
- package/esm2022/core/overlay/abstract-overlay.config.mjs +0 -70
- package/esm2022/core/overlay/abstract-overlay.service.mjs +0 -158
- package/esm2022/core/overlay/index.mjs +0 -10
- package/esm2022/core/overlay/interface.mjs +0 -2
- package/esm2022/core/overlay/overlay-position-map.mjs +0 -88
- package/esm2022/core/overlay/overlay.directive.mjs +0 -175
- package/esm2022/core/overlay/portal-directives.mjs +0 -47
- package/esm2022/core/overlay/utils.mjs +0 -69
- package/esm2022/core/request-animation.mjs +0 -41
- package/esm2022/core/scroll-to.service.mjs +0 -33
- package/esm2022/core/scroll.mjs +0 -83
- package/esm2022/core/spacing/index.mjs +0 -2
- package/esm2022/core/spacing/spacing.mjs +0 -17
- package/esm2022/core/store/action-state.mjs +0 -11
- package/esm2022/core/store/action.mjs +0 -48
- package/esm2022/core/store/actions-stream.mjs +0 -2
- package/esm2022/core/store/index.mjs +0 -4
- package/esm2022/core/store/store.mjs +0 -125
- package/esm2022/core/store/types.mjs +0 -6
- package/esm2022/core/store/utils.mjs +0 -14
- package/esm2022/core/theme/index.mjs +0 -3
- package/esm2022/core/theme/store.mjs +0 -42
- package/esm2022/core/theme/theme.mjs +0 -9
- package/esm2022/core/translate.mjs +0 -22
- package/esm2022/core/update-host-class.service.mjs +0 -60
- package/esm2022/date-picker/abstract-picker.component.mjs +0 -318
- package/esm2022/date-picker/abstract-picker.directive.mjs +0 -218
- package/esm2022/date-picker/base-picker.component.mjs +0 -249
- package/esm2022/date-picker/date-helper.service.mjs +0 -37
- package/esm2022/date-picker/date-picker.component.mjs +0 -41
- package/esm2022/date-picker/date-picker.config.mjs +0 -103
- package/esm2022/date-picker/date-picker.directive.mjs +0 -39
- package/esm2022/date-picker/date-picker.module.mjs +0 -117
- package/esm2022/date-picker/date-picker.service.mjs +0 -31
- package/esm2022/date-picker/index.mjs +0 -37
- package/esm2022/date-picker/inner-types.mjs +0 -2
- package/esm2022/date-picker/lib/calendar/calendar-footer.component.mjs +0 -98
- package/esm2022/date-picker/lib/calendar/calendar-header.component.mjs +0 -92
- package/esm2022/date-picker/lib/calendar/calendar-table.component.mjs +0 -105
- package/esm2022/date-picker/lib/date/date-header.component.mjs +0 -35
- package/esm2022/date-picker/lib/date/date-table-cell.component.mjs +0 -24
- package/esm2022/date-picker/lib/date/date-table.component.mjs +0 -149
- package/esm2022/date-picker/lib/date/types.mjs +0 -2
- package/esm2022/date-picker/lib/date-carousel/date-carousel.component.mjs +0 -388
- package/esm2022/date-picker/lib/decade/decade-header.component.mjs +0 -42
- package/esm2022/date-picker/lib/decade/decade-table.component.mjs +0 -81
- package/esm2022/date-picker/lib/lib-packer.module.mjs +0 -123
- package/esm2022/date-picker/lib/month/month-header.component.mjs +0 -27
- package/esm2022/date-picker/lib/month/month-table.component.mjs +0 -97
- package/esm2022/date-picker/lib/popups/date-popup.component.mjs +0 -566
- package/esm2022/date-picker/lib/popups/inner-popup.component.mjs +0 -196
- package/esm2022/date-picker/lib/quarter/quarter-table.component.mjs +0 -98
- package/esm2022/date-picker/lib/year/year-header.component.mjs +0 -39
- package/esm2022/date-picker/lib/year/year-table.component.mjs +0 -100
- package/esm2022/date-picker/month-picker.component.mjs +0 -45
- package/esm2022/date-picker/ngx-tethys-date-picker.mjs +0 -5
- package/esm2022/date-picker/picker.component.mjs +0 -273
- package/esm2022/date-picker/picker.pipes.mjs +0 -112
- package/esm2022/date-picker/picker.util.mjs +0 -220
- package/esm2022/date-picker/picker.validators.mjs +0 -79
- package/esm2022/date-picker/quarter-picker.component.mjs +0 -48
- package/esm2022/date-picker/range-picker.component.mjs +0 -39
- package/esm2022/date-picker/range-picker.directive.mjs +0 -39
- package/esm2022/date-picker/standard-types.mjs +0 -2
- package/esm2022/date-picker/week-picker.component.mjs +0 -40
- package/esm2022/date-picker/year-picker.component.mjs +0 -48
- package/esm2022/date-range/date-range.class.mjs +0 -6
- package/esm2022/date-range/date-range.component.mjs +0 -255
- package/esm2022/date-range/index.mjs +0 -5
- package/esm2022/date-range/module.mjs +0 -50
- package/esm2022/date-range/ngx-tethys-date-range.mjs +0 -5
- package/esm2022/date-range/optional-dates/optional-dates.component.mjs +0 -50
- package/esm2022/dialog/body/dialog-body.component.mjs +0 -49
- package/esm2022/dialog/confirm/confirm.component.mjs +0 -77
- package/esm2022/dialog/confirm/token.mjs +0 -3
- package/esm2022/dialog/confirm.config.mjs +0 -29
- package/esm2022/dialog/dialog-animations.mjs +0 -19
- package/esm2022/dialog/dialog-container.component.mjs +0 -169
- package/esm2022/dialog/dialog-ref.mjs +0 -35
- package/esm2022/dialog/dialog.config.mjs +0 -62
- package/esm2022/dialog/dialog.module.mjs +0 -91
- package/esm2022/dialog/dialog.options.mjs +0 -6
- package/esm2022/dialog/dialog.service.mjs +0 -145
- package/esm2022/dialog/footer/dialog-footer.component.mjs +0 -51
- package/esm2022/dialog/header/dialog-header.component.mjs +0 -87
- package/esm2022/dialog/index.mjs +0 -12
- package/esm2022/dialog/ngx-tethys-dialog.mjs +0 -5
- package/esm2022/divider/divider.component.mjs +0 -117
- package/esm2022/divider/divider.module.mjs +0 -20
- package/esm2022/divider/index.mjs +0 -3
- package/esm2022/divider/ngx-tethys-divider.mjs +0 -5
- package/esm2022/dot/dot.component.mjs +0 -111
- package/esm2022/dot/dot.module.mjs +0 -17
- package/esm2022/dot/index.mjs +0 -3
- package/esm2022/dot/ngx-tethys-dot.mjs +0 -5
- package/esm2022/drag-drop/drag-content.directive.mjs +0 -32
- package/esm2022/drag-drop/drag-drop.class.mjs +0 -7
- package/esm2022/drag-drop/drag-drop.service.mjs +0 -23
- package/esm2022/drag-drop/drag-handle.directive.mjs +0 -43
- package/esm2022/drag-drop/drag-ref.mjs +0 -225
- package/esm2022/drag-drop/drag.directive.mjs +0 -71
- package/esm2022/drag-drop/drop-container.class.mjs +0 -6
- package/esm2022/drag-drop/drop-container.directive.mjs +0 -129
- package/esm2022/drag-drop/index.mjs +0 -10
- package/esm2022/drag-drop/module.mjs +0 -27
- package/esm2022/drag-drop/ngx-tethys-drag-drop.mjs +0 -5
- package/esm2022/dropdown/dropdown-active.directive.mjs +0 -66
- package/esm2022/dropdown/dropdown-menu-item.directive.mjs +0 -210
- package/esm2022/dropdown/dropdown-menu.component.mjs +0 -156
- package/esm2022/dropdown/dropdown-submenu.component.mjs +0 -83
- package/esm2022/dropdown/dropdown.directive.mjs +0 -189
- package/esm2022/dropdown/index.mjs +0 -7
- package/esm2022/dropdown/module.mjs +0 -79
- package/esm2022/dropdown/ngx-tethys-dropdown.mjs +0 -5
- package/esm2022/empty/empty.component.mjs +0 -183
- package/esm2022/empty/empty.config.mjs +0 -17
- package/esm2022/empty/empty.module.mjs +0 -21
- package/esm2022/empty/index.mjs +0 -4
- package/esm2022/empty/ngx-tethys-empty.mjs +0 -5
- package/esm2022/empty/svgs.mjs +0 -207
- package/esm2022/flexible-text/flexible-text.component.mjs +0 -157
- package/esm2022/flexible-text/flexible-text.module.mjs +0 -19
- package/esm2022/flexible-text/index.mjs +0 -3
- package/esm2022/flexible-text/ngx-tethys-flexible-text.mjs +0 -5
- package/esm2022/form/form-group-error/form-group-error.component.mjs +0 -53
- package/esm2022/form/form-group-label.directive.mjs +0 -49
- package/esm2022/form/form-group.component.mjs +0 -145
- package/esm2022/form/form-submit.directive.mjs +0 -40
- package/esm2022/form/form-validator-loader.mjs +0 -134
- package/esm2022/form/form-validator.service.mjs +0 -252
- package/esm2022/form/form.class.mjs +0 -8
- package/esm2022/form/form.directive.mjs +0 -158
- package/esm2022/form/from-group-footer/form-group-footer.component.mjs +0 -53
- package/esm2022/form/index.mjs +0 -12
- package/esm2022/form/module.mjs +0 -104
- package/esm2022/form/ngx-tethys-form.mjs +0 -5
- package/esm2022/form/validator/confirm-validator.directive.mjs +0 -33
- package/esm2022/form/validator/index.mjs +0 -5
- package/esm2022/form/validator/max-validator.directive.mjs +0 -41
- package/esm2022/form/validator/min-validator.directive.mjs +0 -41
- package/esm2022/form/validator/unique-validator.directive.mjs +0 -52
- package/esm2022/fullscreen/fullscreen-launch.directive.mjs +0 -18
- package/esm2022/fullscreen/fullscreen-ref.mjs +0 -151
- package/esm2022/fullscreen/fullscreen.component.mjs +0 -78
- package/esm2022/fullscreen/fullscreen.config.mjs +0 -6
- package/esm2022/fullscreen/fullscreen.module.mjs +0 -17
- package/esm2022/fullscreen/fullscreen.service.mjs +0 -47
- package/esm2022/fullscreen/index.mjs +0 -7
- package/esm2022/fullscreen/ngx-tethys-fullscreen.mjs +0 -5
- package/esm2022/grid/flex.mjs +0 -179
- package/esm2022/grid/grid.token.mjs +0 -5
- package/esm2022/grid/index.mjs +0 -7
- package/esm2022/grid/module.mjs +0 -56
- package/esm2022/grid/ngx-tethys-grid.mjs +0 -5
- package/esm2022/grid/thy-col.directive.mjs +0 -66
- package/esm2022/grid/thy-grid-item.component.mjs +0 -60
- package/esm2022/grid/thy-grid.component.mjs +0 -256
- package/esm2022/grid/thy-row.directive.mjs +0 -59
- package/esm2022/guider/guider-hint/guider-hint.component.mjs +0 -52
- package/esm2022/guider/guider-manager.mjs +0 -39
- package/esm2022/guider/guider-ref.mjs +0 -133
- package/esm2022/guider/guider-step-ref.mjs +0 -242
- package/esm2022/guider/guider.class.mjs +0 -15
- package/esm2022/guider/guider.directive.mjs +0 -50
- package/esm2022/guider/guider.module.mjs +0 -24
- package/esm2022/guider/guider.service.mjs +0 -76
- package/esm2022/guider/index.mjs +0 -9
- package/esm2022/guider/ngx-tethys-guider.mjs +0 -5
- package/esm2022/guider/utils.mjs +0 -10
- package/esm2022/i18n/i18n.mjs +0 -9
- package/esm2022/i18n/i18n.service.mjs +0 -45
- package/esm2022/i18n/i18n.token.mjs +0 -10
- package/esm2022/i18n/index.mjs +0 -10
- package/esm2022/i18n/locale.mjs +0 -13
- package/esm2022/i18n/locales/de-de.mjs +0 -130
- package/esm2022/i18n/locales/en-us.mjs +0 -151
- package/esm2022/i18n/locales/ja-jp.mjs +0 -130
- package/esm2022/i18n/locales/zh-hans.mjs +0 -130
- package/esm2022/i18n/locales/zh-hant.mjs +0 -130
- package/esm2022/i18n/ngx-tethys-i18n.mjs +0 -5
- package/esm2022/icon/config.mjs +0 -8
- package/esm2022/icon/icon-registry.mjs +0 -340
- package/esm2022/icon/icon.component.mjs +0 -198
- package/esm2022/icon/icon.module.mjs +0 -20
- package/esm2022/icon/index.mjs +0 -5
- package/esm2022/icon/ngx-tethys-icon.mjs +0 -5
- package/esm2022/image/image-group.component.mjs +0 -32
- package/esm2022/image/image.class.mjs +0 -2
- package/esm2022/image/image.config.mjs +0 -21
- package/esm2022/image/image.directive.mjs +0 -130
- package/esm2022/image/image.service.mjs +0 -58
- package/esm2022/image/index.mjs +0 -9
- package/esm2022/image/module.mjs +0 -67
- package/esm2022/image/ngx-tethys-image.mjs +0 -5
- package/esm2022/image/preview/image-preview-ref.mjs +0 -32
- package/esm2022/image/preview/image-preview.component.mjs +0 -413
- package/esm2022/image/utils.mjs +0 -13
- package/esm2022/input/index.mjs +0 -7
- package/esm2022/input/input-count.component.mjs +0 -68
- package/esm2022/input/input-group.component.mjs +0 -161
- package/esm2022/input/input-search.component.mjs +0 -152
- package/esm2022/input/input.component.mjs +0 -142
- package/esm2022/input/input.directive.mjs +0 -63
- package/esm2022/input/module.mjs +0 -51
- package/esm2022/input/ngx-tethys-input.mjs +0 -5
- package/esm2022/input-number/index.mjs +0 -3
- package/esm2022/input-number/input-number.component.mjs +0 -362
- package/esm2022/input-number/module.mjs +0 -22
- package/esm2022/input-number/ngx-tethys-input-number.mjs +0 -5
- package/esm2022/layout/content-main.component.mjs +0 -42
- package/esm2022/layout/content-section.component.mjs +0 -42
- package/esm2022/layout/content.component.mjs +0 -42
- package/esm2022/layout/header.component.mjs +0 -125
- package/esm2022/layout/index.mjs +0 -11
- package/esm2022/layout/layout.component.mjs +0 -47
- package/esm2022/layout/layout.module.mjs +0 -121
- package/esm2022/layout/ngx-tethys-layout.mjs +0 -5
- package/esm2022/layout/sidebar-content.component.mjs +0 -41
- package/esm2022/layout/sidebar-footer.component.mjs +0 -41
- package/esm2022/layout/sidebar-header.component.mjs +0 -54
- package/esm2022/layout/sidebar.component.mjs +0 -403
- package/esm2022/list/index.mjs +0 -7
- package/esm2022/list/list-item-meta.component.mjs +0 -38
- package/esm2022/list/list-item.component.mjs +0 -25
- package/esm2022/list/list.component.mjs +0 -41
- package/esm2022/list/list.module.mjs +0 -22
- package/esm2022/list/ngx-tethys-list.mjs +0 -5
- package/esm2022/list/selection/selection-list.mjs +0 -393
- package/esm2022/list/selection/selection.interface.mjs +0 -2
- package/esm2022/loading/index.mjs +0 -3
- package/esm2022/loading/loading.component.mjs +0 -54
- package/esm2022/loading/loading.module.mjs +0 -17
- package/esm2022/loading/ngx-tethys-loading.mjs +0 -5
- package/esm2022/mention/adapter/adapter.mjs +0 -20
- package/esm2022/mention/adapter/editable.adapter.mjs +0 -48
- package/esm2022/mention/adapter/index.mjs +0 -16
- package/esm2022/mention/adapter/textarea.adapter.mjs +0 -58
- package/esm2022/mention/caret-positioner.mjs +0 -194
- package/esm2022/mention/index.mjs +0 -5
- package/esm2022/mention/interfaces.mjs +0 -2
- package/esm2022/mention/mention.directive.mjs +0 -160
- package/esm2022/mention/mention.module.mjs +0 -23
- package/esm2022/mention/ngx-tethys-mention.mjs +0 -5
- package/esm2022/mention/suggestions/suggestions.component.mjs +0 -80
- package/esm2022/menu/divider/menu-divider.component.mjs +0 -21
- package/esm2022/menu/group/menu-group.component.mjs +0 -187
- package/esm2022/menu/index.mjs +0 -9
- package/esm2022/menu/item/action/menu-item-action.component.mjs +0 -75
- package/esm2022/menu/item/icon/menu-item-icon.component.mjs +0 -33
- package/esm2022/menu/item/menu-item.component.mjs +0 -42
- package/esm2022/menu/item/name/menu-item-name.component.mjs +0 -32
- package/esm2022/menu/menu.component.mjs +0 -39
- package/esm2022/menu/menu.module.mjs +0 -49
- package/esm2022/menu/ngx-tethys-menu.mjs +0 -5
- package/esm2022/message/abstract/abstract-message-container.component.mjs +0 -26
- package/esm2022/message/abstract/abstract-message-queue.service.mjs +0 -34
- package/esm2022/message/abstract/abstract-message-ref.mjs +0 -22
- package/esm2022/message/abstract/abstract-message.component.mjs +0 -76
- package/esm2022/message/abstract/abstract-message.service.mjs +0 -29
- package/esm2022/message/abstract/index.mjs +0 -6
- package/esm2022/message/index.mjs +0 -9
- package/esm2022/message/message-container.component.mjs +0 -45
- package/esm2022/message/message-queue.service.mjs +0 -25
- package/esm2022/message/message-ref.mjs +0 -4
- package/esm2022/message/message.component.mjs +0 -61
- package/esm2022/message/message.config.mjs +0 -14
- package/esm2022/message/message.service.mjs +0 -92
- package/esm2022/message/module.mjs +0 -24
- package/esm2022/message/ngx-tethys-message.mjs +0 -5
- package/esm2022/nav/icon-nav/icon-nav-link.directive.mjs +0 -43
- package/esm2022/nav/icon-nav/icon-nav.component.mjs +0 -45
- package/esm2022/nav/index.mjs +0 -7
- package/esm2022/nav/nav-ink-bar.directive.mjs +0 -79
- package/esm2022/nav/nav-item.directive.mjs +0 -98
- package/esm2022/nav/nav.component.mjs +0 -410
- package/esm2022/nav/nav.module.mjs +0 -54
- package/esm2022/nav/nav.pipe.mjs +0 -24
- package/esm2022/nav/ngx-tethys-nav.mjs +0 -5
- package/esm2022/ngx-tethys.mjs +0 -5
- package/esm2022/notify/index.mjs +0 -8
- package/esm2022/notify/module.mjs +0 -24
- package/esm2022/notify/ngx-tethys-notify.mjs +0 -5
- package/esm2022/notify/notify-container.component.mjs +0 -31
- package/esm2022/notify/notify-queue.service.mjs +0 -30
- package/esm2022/notify/notify-ref.mjs +0 -4
- package/esm2022/notify/notify.component.mjs +0 -99
- package/esm2022/notify/notify.config.mjs +0 -14
- package/esm2022/notify/notify.service.mjs +0 -97
- package/esm2022/pagination/index.mjs +0 -6
- package/esm2022/pagination/ngx-tethys-pagination.mjs +0 -5
- package/esm2022/pagination/pagination.class.mjs +0 -2
- package/esm2022/pagination/pagination.component.mjs +0 -366
- package/esm2022/pagination/pagination.config.mjs +0 -30
- package/esm2022/pagination/pagination.module.mjs +0 -43
- package/esm2022/pagination/pagination.pipe.mjs +0 -53
- package/esm2022/popover/body/popover-body.component.mjs +0 -25
- package/esm2022/popover/header/popover-header.component.mjs +0 -54
- package/esm2022/popover/index.mjs +0 -10
- package/esm2022/popover/module.mjs +0 -47
- package/esm2022/popover/ngx-tethys-popover.mjs +0 -5
- package/esm2022/popover/popover-animations.mjs +0 -22
- package/esm2022/popover/popover-container.component.mjs +0 -125
- package/esm2022/popover/popover-ref.mjs +0 -25
- package/esm2022/popover/popover.config.mjs +0 -38
- package/esm2022/popover/popover.directive.mjs +0 -157
- package/esm2022/popover/popover.options.mjs +0 -6
- package/esm2022/popover/popover.service.mjs +0 -201
- package/esm2022/progress/index.mjs +0 -6
- package/esm2022/progress/interfaces.mjs +0 -2
- package/esm2022/progress/ngx-tethys-progress.mjs +0 -5
- package/esm2022/progress/progress-circle.component.mjs +0 -136
- package/esm2022/progress/progress-strip.component.mjs +0 -54
- package/esm2022/progress/progress.component.mjs +0 -142
- package/esm2022/progress/progress.module.mjs +0 -20
- package/esm2022/property/index.mjs +0 -4
- package/esm2022/property/module.mjs +0 -20
- package/esm2022/property/ngx-tethys-property.mjs +0 -5
- package/esm2022/property/properties.component.mjs +0 -59
- package/esm2022/property/property-item.component.mjs +0 -175
- package/esm2022/property-operation/group/property-operation-group.component.mjs +0 -20
- package/esm2022/property-operation/index.mjs +0 -4
- package/esm2022/property-operation/module.mjs +0 -21
- package/esm2022/property-operation/ngx-tethys-property-operation.mjs +0 -5
- package/esm2022/property-operation/property-operation.component.mjs +0 -183
- package/esm2022/public-api.mjs +0 -2
- package/esm2022/radio/button/radio-button.component.mjs +0 -56
- package/esm2022/radio/group/radio-group.component.mjs +0 -138
- package/esm2022/radio/index.mjs +0 -5
- package/esm2022/radio/module.mjs +0 -20
- package/esm2022/radio/ngx-tethys-radio.mjs +0 -5
- package/esm2022/radio/radio.component.mjs +0 -58
- package/esm2022/rate/index.mjs +0 -4
- package/esm2022/rate/module.mjs +0 -23
- package/esm2022/rate/ngx-tethys-rate.mjs +0 -5
- package/esm2022/rate/rate-item.component.mjs +0 -76
- package/esm2022/rate/rate.component.mjs +0 -244
- package/esm2022/resizable/index.mjs +0 -8
- package/esm2022/resizable/interface.mjs +0 -2
- package/esm2022/resizable/module.mjs +0 -19
- package/esm2022/resizable/ngx-tethys-resizable.mjs +0 -5
- package/esm2022/resizable/resizable.directive.mjs +0 -363
- package/esm2022/resizable/resizable.service.mjs +0 -69
- package/esm2022/resizable/resize-handle.component.mjs +0 -104
- package/esm2022/resizable/resize-handles.component.mjs +0 -64
- package/esm2022/resizable/utils.mjs +0 -14
- package/esm2022/result/index.mjs +0 -3
- package/esm2022/result/ngx-tethys-result.mjs +0 -5
- package/esm2022/result/result.component.mjs +0 -43
- package/esm2022/result/result.module.mjs +0 -17
- package/esm2022/segment/index.mjs +0 -5
- package/esm2022/segment/ngx-tethys-segment.mjs +0 -5
- package/esm2022/segment/segment-item.component.mjs +0 -87
- package/esm2022/segment/segment.component.mjs +0 -143
- package/esm2022/segment/segment.module.mjs +0 -20
- package/esm2022/segment/segment.token.mjs +0 -3
- package/esm2022/segment/types.mjs +0 -2
- package/esm2022/select/custom-select/custom-select.component.mjs +0 -904
- package/esm2022/select/index.mjs +0 -5
- package/esm2022/select/module.mjs +0 -62
- package/esm2022/select/native-select/native-select.component.mjs +0 -98
- package/esm2022/select/ngx-tethys-select.mjs +0 -5
- package/esm2022/select/select.config.mjs +0 -21
- package/esm2022/shared/base-form-check.component.mjs +0 -120
- package/esm2022/shared/directives/string-or-template-outlet.directive.mjs +0 -57
- package/esm2022/shared/directives/thy-autofocus.directive.mjs +0 -60
- package/esm2022/shared/directives/thy-contextmenu.directive.mjs +0 -39
- package/esm2022/shared/directives/thy-ctrl-enter.directive.mjs +0 -43
- package/esm2022/shared/directives/thy-drag-drop.directive.mjs +0 -51
- package/esm2022/shared/directives/thy-enter.directive.mjs +0 -43
- package/esm2022/shared/directives/thy-scroll.directive.mjs +0 -84
- package/esm2022/shared/directives/thy-show.mjs +0 -59
- package/esm2022/shared/directives/thy-stop-propagation.directive.mjs +0 -57
- package/esm2022/shared/directives/view-outlet.directive.mjs +0 -85
- package/esm2022/shared/index.mjs +0 -16
- package/esm2022/shared/ng-transclude.directive.mjs +0 -32
- package/esm2022/shared/ngx-tethys-shared.mjs +0 -5
- package/esm2022/shared/option/group/option-group.component.mjs +0 -92
- package/esm2022/shared/option/index.mjs +0 -9
- package/esm2022/shared/option/list-option/list-option.component.mjs +0 -96
- package/esm2022/shared/option/module.mjs +0 -29
- package/esm2022/shared/option/option-group.component.mjs +0 -25
- package/esm2022/shared/option/option.component.mjs +0 -181
- package/esm2022/shared/option/option.token.mjs +0 -14
- package/esm2022/shared/option/options-container.component.mjs +0 -29
- package/esm2022/shared/option/select-option-base.mjs +0 -3
- package/esm2022/shared/select/index.mjs +0 -3
- package/esm2022/shared/select/module.mjs +0 -27
- package/esm2022/shared/select/select-control/select-control.component.mjs +0 -280
- package/esm2022/shared/shared.module.mjs +0 -71
- package/esm2022/skeleton/index.mjs +0 -9
- package/esm2022/skeleton/module.mjs +0 -27
- package/esm2022/skeleton/ngx-tethys-skeleton.mjs +0 -5
- package/esm2022/skeleton/skeleton-circle.component.mjs +0 -92
- package/esm2022/skeleton/skeleton-rectangle.component.mjs +0 -100
- package/esm2022/skeleton/skeleton.component.mjs +0 -32
- package/esm2022/skeleton/skeleton.config.mjs +0 -8
- package/esm2022/skeleton/stylized/bullet-list.component.mjs +0 -124
- package/esm2022/skeleton/stylized/list.component.mjs +0 -95
- package/esm2022/skeleton/stylized/paragraph.component.mjs +0 -107
- package/esm2022/slide/drawer/drawer-container.directive.mjs +0 -21
- package/esm2022/slide/index.mjs +0 -13
- package/esm2022/slide/ngx-tethys-slide.mjs +0 -5
- package/esm2022/slide/slide-animations.mjs +0 -24
- package/esm2022/slide/slide-body/slide-body-section.component.mjs +0 -41
- package/esm2022/slide/slide-body/slide-body.component.mjs +0 -25
- package/esm2022/slide/slide-container.component.mjs +0 -192
- package/esm2022/slide/slide-footer/slide-footer.component.mjs +0 -26
- package/esm2022/slide/slide-header/slide-header.component.mjs +0 -59
- package/esm2022/slide/slide-layout/slide-layout.component.mjs +0 -27
- package/esm2022/slide/slide-ref.service.mjs +0 -32
- package/esm2022/slide/slide.config.mjs +0 -38
- package/esm2022/slide/slide.module.mjs +0 -65
- package/esm2022/slide/slide.service.mjs +0 -104
- package/esm2022/slider/index.mjs +0 -3
- package/esm2022/slider/ngx-tethys-slider.mjs +0 -5
- package/esm2022/slider/slider.component.mjs +0 -346
- package/esm2022/slider/slider.module.mjs +0 -19
- package/esm2022/space/index.mjs +0 -3
- package/esm2022/space/ngx-tethys-space.mjs +0 -5
- package/esm2022/space/space.component.mjs +0 -88
- package/esm2022/space/space.module.mjs +0 -17
- package/esm2022/statistic/index.mjs +0 -3
- package/esm2022/statistic/ngx-tethys-statistic.mjs +0 -5
- package/esm2022/statistic/statistic.component.mjs +0 -184
- package/esm2022/statistic/statistic.module.mjs +0 -20
- package/esm2022/stepper/index.mjs +0 -6
- package/esm2022/stepper/ngx-tethys-stepper.mjs +0 -5
- package/esm2022/stepper/step-header.component.mjs +0 -40
- package/esm2022/stepper/step.component.mjs +0 -32
- package/esm2022/stepper/stepper-button.directive.mjs +0 -56
- package/esm2022/stepper/stepper.component.mjs +0 -105
- package/esm2022/stepper/stepper.module.mjs +0 -21
- package/esm2022/strength/index.mjs +0 -3
- package/esm2022/strength/ngx-tethys-strength.mjs +0 -5
- package/esm2022/strength/strength.component.mjs +0 -122
- package/esm2022/strength/strength.module.mjs +0 -17
- package/esm2022/switch/index.mjs +0 -3
- package/esm2022/switch/ngx-tethys-switch.mjs +0 -5
- package/esm2022/switch/switch.component.mjs +0 -181
- package/esm2022/switch/switch.module.mjs +0 -17
- package/esm2022/table/enums/column-skeleton-type.mjs +0 -8
- package/esm2022/table/enums/index.mjs +0 -2
- package/esm2022/table/index.mjs +0 -9
- package/esm2022/table/ngx-tethys-table.mjs +0 -5
- package/esm2022/table/pipes/drag.pipe.mjs +0 -20
- package/esm2022/table/pipes/table.pipe.mjs +0 -20
- package/esm2022/table/table-column.component.mjs +0 -200
- package/esm2022/table/table-skeleton.component.mjs +0 -165
- package/esm2022/table/table.component.mjs +0 -966
- package/esm2022/table/table.interface.mjs +0 -7
- package/esm2022/table/table.module.mjs +0 -75
- package/esm2022/tabs/index.mjs +0 -5
- package/esm2022/tabs/ngx-tethys-tabs.mjs +0 -5
- package/esm2022/tabs/tab-content.component.mjs +0 -52
- package/esm2022/tabs/tab.component.mjs +0 -36
- package/esm2022/tabs/tabs.component.mjs +0 -139
- package/esm2022/tabs/tabs.module.mjs +0 -21
- package/esm2022/tabs/types.mjs +0 -2
- package/esm2022/tag/index.mjs +0 -4
- package/esm2022/tag/ngx-tethys-tag.mjs +0 -5
- package/esm2022/tag/tag.component.mjs +0 -109
- package/esm2022/tag/tag.module.mjs +0 -19
- package/esm2022/tag/tags.component.mjs +0 -24
- package/esm2022/testing/data-transfer.mjs +0 -55
- package/esm2022/testing/dispatcher-events.mjs +0 -46
- package/esm2022/testing/element-focus.mjs +0 -18
- package/esm2022/testing/events.mjs +0 -145
- package/esm2022/testing/index.mjs +0 -8
- package/esm2022/testing/ngx-tethys-testing.mjs +0 -5
- package/esm2022/testing/thy-icon.mjs +0 -50
- package/esm2022/testing/type-in-element.mjs +0 -20
- package/esm2022/testing/xhr-mock.mjs +0 -100
- package/esm2022/time-picker/index.mjs +0 -8
- package/esm2022/time-picker/inner/inner-time-picker.class.mjs +0 -2
- package/esm2022/time-picker/inner/inner-time-picker.component.mjs +0 -239
- package/esm2022/time-picker/inner/inner-time-picker.config.mjs +0 -45
- package/esm2022/time-picker/inner/inner-time-picker.store.mjs +0 -134
- package/esm2022/time-picker/ngx-tethys-time-picker.mjs +0 -5
- package/esm2022/time-picker/time-picker-controls.util.mjs +0 -118
- package/esm2022/time-picker/time-picker-panel.component.mjs +0 -265
- package/esm2022/time-picker/time-picker.component.mjs +0 -363
- package/esm2022/time-picker/time-picker.module.mjs +0 -54
- package/esm2022/time-picker/time-picker.utils.mjs +0 -131
- package/esm2022/timeline/index.mjs +0 -5
- package/esm2022/timeline/ngx-tethys-timeline.mjs +0 -5
- package/esm2022/timeline/timeline-item.component.mjs +0 -59
- package/esm2022/timeline/timeline.component.mjs +0 -156
- package/esm2022/timeline/timeline.module.mjs +0 -21
- package/esm2022/timeline/timeline.service.mjs +0 -17
- package/esm2022/tooltip/index.mjs +0 -9
- package/esm2022/tooltip/interface.mjs +0 -2
- package/esm2022/tooltip/ngx-tethys-tooltip.mjs +0 -5
- package/esm2022/tooltip/tooltip-animations.mjs +0 -23
- package/esm2022/tooltip/tooltip-ref.mjs +0 -147
- package/esm2022/tooltip/tooltip.component.mjs +0 -103
- package/esm2022/tooltip/tooltip.config.mjs +0 -17
- package/esm2022/tooltip/tooltip.directive.mjs +0 -150
- package/esm2022/tooltip/tooltip.module.mjs +0 -22
- package/esm2022/tooltip/tooltip.service.mjs +0 -28
- package/esm2022/transfer/index.mjs +0 -5
- package/esm2022/transfer/ngx-tethys-transfer.mjs +0 -5
- package/esm2022/transfer/transfer-list.component.mjs +0 -154
- package/esm2022/transfer/transfer.component.mjs +0 -180
- package/esm2022/transfer/transfer.interface.mjs +0 -6
- package/esm2022/transfer/transfer.module.mjs +0 -50
- package/esm2022/tree/index.mjs +0 -7
- package/esm2022/tree/ngx-tethys-tree.mjs +0 -5
- package/esm2022/tree/tree-abstract.mjs +0 -3
- package/esm2022/tree/tree-node.class.mjs +0 -93
- package/esm2022/tree/tree-node.component.mjs +0 -212
- package/esm2022/tree/tree.class.mjs +0 -15
- package/esm2022/tree/tree.component.mjs +0 -648
- package/esm2022/tree/tree.module.mjs +0 -74
- package/esm2022/tree/tree.pipe.mjs +0 -26
- package/esm2022/tree/tree.service.mjs +0 -187
- package/esm2022/tree-select/index.mjs +0 -4
- package/esm2022/tree-select/module.mjs +0 -52
- package/esm2022/tree-select/ngx-tethys-tree-select.mjs +0 -5
- package/esm2022/tree-select/tree-select.class.mjs +0 -2
- package/esm2022/tree-select/tree-select.component.mjs +0 -653
- package/esm2022/types/common.mjs +0 -2
- package/esm2022/types/dictionary.mjs +0 -2
- package/esm2022/types/index.mjs +0 -4
- package/esm2022/types/ngx-tethys-types.mjs +0 -5
- package/esm2022/types/pagination.mjs +0 -2
- package/esm2022/typography/bg-color.directive.mjs +0 -51
- package/esm2022/typography/index.mjs +0 -5
- package/esm2022/typography/module.mjs +0 -21
- package/esm2022/typography/ngx-tethys-typography.mjs +0 -5
- package/esm2022/typography/text/text.component.mjs +0 -23
- package/esm2022/typography/text-color.directive.mjs +0 -52
- package/esm2022/upload/constant.mjs +0 -75
- package/esm2022/upload/file-drop.directive.mjs +0 -166
- package/esm2022/upload/file-select-base.mjs +0 -75
- package/esm2022/upload/file-select.component.mjs +0 -98
- package/esm2022/upload/index.mjs +0 -7
- package/esm2022/upload/module.mjs +0 -22
- package/esm2022/upload/ngx-tethys-upload.mjs +0 -5
- package/esm2022/upload/types.mjs +0 -2
- package/esm2022/upload/upload.config.mjs +0 -21
- package/esm2022/upload/upload.service.mjs +0 -169
- package/esm2022/upload/util.mjs +0 -27
- package/esm2022/util/date/functions.mjs +0 -84
- package/esm2022/util/date/tiny-date.mjs +0 -362
- package/esm2022/util/dom.mjs +0 -247
- package/esm2022/util/helpers/helpers.mjs +0 -293
- package/esm2022/util/helpers/index.mjs +0 -2
- package/esm2022/util/immutable.mjs +0 -108
- package/esm2022/util/index.mjs +0 -16
- package/esm2022/util/keycodes.mjs +0 -2
- package/esm2022/util/logger/index.mjs +0 -2
- package/esm2022/util/logger/logger.mjs +0 -42
- package/esm2022/util/ng.mjs +0 -7
- package/esm2022/util/ngx-tethys-util.mjs +0 -5
- package/esm2022/util/references.mjs +0 -84
- package/esm2022/version.mjs +0 -3
- package/esm2022/vote/index.mjs +0 -3
- package/esm2022/vote/ngx-tethys-vote.mjs +0 -5
- package/esm2022/vote/vote.component.mjs +0 -130
- package/esm2022/vote/vote.module.mjs +0 -20
- package/esm2022/watermark/config.mjs +0 -20
- package/esm2022/watermark/index.mjs +0 -3
- package/esm2022/watermark/ngx-tethys-watermark.mjs +0 -5
- package/esm2022/watermark/watermark.directive.mjs +0 -178
- package/esm2022/watermark/watermark.module.mjs +0 -19
- package/schematics/ng-update/update-18/complete.d.ts +0 -3
- package/schematics/ng-update/update-18/complete.js +0 -13
- /package/schematics/ng-update/{update-18 → update-19}/class-name-migration.d.ts +0 -0
- /package/schematics/ng-update/{update-18 → update-19}/class-name-migration.js +0 -0
- /package/schematics/ng-update/{update-18 → update-19}/index.d.ts +0 -0
- /package/schematics/ng-update/{update-18 → update-19}/index.spec.d.ts +0 -0
- /package/schematics/ng-update/{update-18 → update-19}/update-data.d.ts +0 -0
- /package/schematics/ng-update/{update-18 → update-19}/update-data.js +0 -0
|
@@ -1,100 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, HostBinding, Input, ViewContainerRef, inject } from '@angular/core';
|
|
2
|
-
import { ThyPopover, ThyPopoverRef } from 'ngx-tethys/popover';
|
|
3
|
-
import { ThyColorPickerCustomPanel } from './color-picker-custom-panel.component';
|
|
4
|
-
import { ThyColor } from './helpers/color.class';
|
|
5
|
-
import { ThyIcon } from 'ngx-tethys/icon';
|
|
6
|
-
import { NgClass, NgTemplateOutlet, NgStyle } from '@angular/common';
|
|
7
|
-
import { coerceBooleanProperty } from 'ngx-tethys/util';
|
|
8
|
-
import { injectLocale } from 'ngx-tethys/i18n';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
/**
|
|
11
|
-
* @internal
|
|
12
|
-
*/
|
|
13
|
-
export class ThyColorPickerPanel {
|
|
14
|
-
constructor() {
|
|
15
|
-
this.thyPopover = inject(ThyPopover);
|
|
16
|
-
this.viewContainerRef = inject(ViewContainerRef);
|
|
17
|
-
this.thyPopoverRef = inject(ThyPopoverRef);
|
|
18
|
-
this.locale = injectLocale('colorPicker');
|
|
19
|
-
this.className = true;
|
|
20
|
-
this.recentColors = [];
|
|
21
|
-
}
|
|
22
|
-
set defaultColor(value) {
|
|
23
|
-
this.customDefaultColor = value;
|
|
24
|
-
}
|
|
25
|
-
get defaultColor() {
|
|
26
|
-
return new ThyColor(this.customDefaultColor).toHexString(true);
|
|
27
|
-
}
|
|
28
|
-
ngOnInit() {
|
|
29
|
-
const colors = localStorage.getItem('recentColors');
|
|
30
|
-
if (colors) {
|
|
31
|
-
this.recentColors = JSON.parse(colors);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
selectColor(color) {
|
|
35
|
-
this.color = color;
|
|
36
|
-
this.colorChange(this.color);
|
|
37
|
-
this.thyPopoverRef.close();
|
|
38
|
-
}
|
|
39
|
-
showMoreColor(event) {
|
|
40
|
-
if (!this.customPanelPopoverRef) {
|
|
41
|
-
this.customPanelPopoverRef = this.thyPopover.open(ThyColorPickerCustomPanel, {
|
|
42
|
-
origin: event.currentTarget,
|
|
43
|
-
offset: -4,
|
|
44
|
-
placement: 'rightBottom',
|
|
45
|
-
manualClosure: true,
|
|
46
|
-
width: '260px',
|
|
47
|
-
hasBackdrop: false,
|
|
48
|
-
viewContainerRef: this.viewContainerRef,
|
|
49
|
-
originActiveClass: 'thy-color-picker-active',
|
|
50
|
-
initialState: {
|
|
51
|
-
color: this.color,
|
|
52
|
-
pickerColorChange: (value) => {
|
|
53
|
-
this.newColor = value;
|
|
54
|
-
this.colorChange(value);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
});
|
|
58
|
-
}
|
|
59
|
-
this.customPanelPopoverRef?.afterClosed().subscribe(() => {
|
|
60
|
-
if (this.newColor) {
|
|
61
|
-
const index = this.recentColors.findIndex(item => item === this.newColor);
|
|
62
|
-
if (index !== -1) {
|
|
63
|
-
this.recentColors.splice(index, 1);
|
|
64
|
-
}
|
|
65
|
-
this.recentColors.unshift(this.newColor);
|
|
66
|
-
this.recentColors = this.recentColors.slice(0, 10);
|
|
67
|
-
localStorage.setItem('recentColors', JSON.stringify(this.recentColors));
|
|
68
|
-
}
|
|
69
|
-
this.thyPopoverRef.close();
|
|
70
|
-
});
|
|
71
|
-
}
|
|
72
|
-
getIconColor(item) {
|
|
73
|
-
const rgba = new ThyColor(item).rgba;
|
|
74
|
-
const hsp = 0.299 * rgba.red + 0.587 * rgba.green + 0.114 * rgba.blue;
|
|
75
|
-
return hsp > 192 ? 'black' : 'white';
|
|
76
|
-
}
|
|
77
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyColorPickerPanel, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
78
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: ThyColorPickerPanel, isStandalone: true, selector: "thy-color-picker-panel", inputs: { color: "color", colorChange: "colorChange", defaultColor: "defaultColor", transparentColorSelectable: ["transparentColorSelectable", "transparentColorSelectable", coerceBooleanProperty], defaultColors: "defaultColors" }, host: { properties: { "class.pt-4": "!transparentColorSelectable", "class.thy-color-picker-panel": "this.className" } }, ngImport: i0, template: "@if (customDefaultColor) {\n <div class=\"quick-color\" [ngClass]=\"transparentColorSelectable ? ' mb-0 pb-0' : ''\" (click)=\"selectColor(defaultColor)\">\n <ng-template [ngTemplateOutlet]=\"checkIconTpl\" [ngTemplateOutletContext]=\"{ $implicit: defaultColor }\"></ng-template>\n <span class=\"ml-2 font-size-sm text-secondary\">{{ locale().defaultColor }}</span>\n </div>\n}\n@if (transparentColorSelectable) {\n <div class=\"quick-color\" [ngClass]=\"customDefaultColor ? 'mt-0 pt-0' : ''\" (click)=\"selectColor('transparent')\">\n <div class=\"color-block\"></div>\n <span class=\"ml-2 font-size-sm text-secondary\">{{ locale().noFillColor }}</span>\n </div>\n}\n<div class=\"main-content\">\n <div class=\"default-color\">\n @for (item of defaultColors; track $index) {\n <ng-template [ngTemplateOutlet]=\"checkIconTpl\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-template>\n }\n </div>\n <p class=\"font-size-sm text-secondary recent-text\">{{ locale().recentUsedColor }}</p>\n <div class=\"recent-color-container\">\n @for (item of recentColors; track $index) {\n <ng-template [ngTemplateOutlet]=\"checkIconTpl\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-template>\n }\n @if (recentColors.length === 0) {\n <div class=\"font-size-sm px-1 text-muted\">{{ locale().none }}</div>\n }\n </div>\n</div>\n<div class=\"more-color\" (click)=\"showMoreColor($event)\">\n <thy-icon thyIconName=\"palette\" class=\"mr-2\"></thy-icon>\n <span class=\"font-size-sm custom-text\">{{ locale().customColor }}</span>\n <thy-icon thyDropdownMenuItemExtendIcon thyIconName=\"angle-right\"></thy-icon>\n</div>\n\n<ng-template #checkIconTpl let-colorItem>\n <div\n class=\"color-item\"\n [ngStyle]=\"{ background: colorItem }\"\n [ngClass]=\"colorItem === '#FFFFFF' ? 'item-border' : ''\"\n (click)=\"selectColor(colorItem)\">\n <thy-icon\n thyIconName=\"check-thick\"\n class=\"check-icon\"\n [ngClass]=\"\n color === colorItem ? (getIconColor(colorItem) === 'white' ? 'checked white-check' : 'checked black-check') : ''\n \"></thy-icon>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: ThyIcon, selector: "thy-icon, [thy-icon]", inputs: ["thyIconType", "thyTwotoneColor", "thyIconName", "thyIconRotate", "thyIconSet", "thyIconLegging", "thyIconLinearGradient"] }, { kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
79
|
-
}
|
|
80
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyColorPickerPanel, decorators: [{
|
|
81
|
-
type: Component,
|
|
82
|
-
args: [{ selector: 'thy-color-picker-panel', changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
83
|
-
'[class.pt-4]': '!transparentColorSelectable'
|
|
84
|
-
}, standalone: true, imports: [NgClass, NgTemplateOutlet, ThyIcon, NgStyle], template: "@if (customDefaultColor) {\n <div class=\"quick-color\" [ngClass]=\"transparentColorSelectable ? ' mb-0 pb-0' : ''\" (click)=\"selectColor(defaultColor)\">\n <ng-template [ngTemplateOutlet]=\"checkIconTpl\" [ngTemplateOutletContext]=\"{ $implicit: defaultColor }\"></ng-template>\n <span class=\"ml-2 font-size-sm text-secondary\">{{ locale().defaultColor }}</span>\n </div>\n}\n@if (transparentColorSelectable) {\n <div class=\"quick-color\" [ngClass]=\"customDefaultColor ? 'mt-0 pt-0' : ''\" (click)=\"selectColor('transparent')\">\n <div class=\"color-block\"></div>\n <span class=\"ml-2 font-size-sm text-secondary\">{{ locale().noFillColor }}</span>\n </div>\n}\n<div class=\"main-content\">\n <div class=\"default-color\">\n @for (item of defaultColors; track $index) {\n <ng-template [ngTemplateOutlet]=\"checkIconTpl\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-template>\n }\n </div>\n <p class=\"font-size-sm text-secondary recent-text\">{{ locale().recentUsedColor }}</p>\n <div class=\"recent-color-container\">\n @for (item of recentColors; track $index) {\n <ng-template [ngTemplateOutlet]=\"checkIconTpl\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-template>\n }\n @if (recentColors.length === 0) {\n <div class=\"font-size-sm px-1 text-muted\">{{ locale().none }}</div>\n }\n </div>\n</div>\n<div class=\"more-color\" (click)=\"showMoreColor($event)\">\n <thy-icon thyIconName=\"palette\" class=\"mr-2\"></thy-icon>\n <span class=\"font-size-sm custom-text\">{{ locale().customColor }}</span>\n <thy-icon thyDropdownMenuItemExtendIcon thyIconName=\"angle-right\"></thy-icon>\n</div>\n\n<ng-template #checkIconTpl let-colorItem>\n <div\n class=\"color-item\"\n [ngStyle]=\"{ background: colorItem }\"\n [ngClass]=\"colorItem === '#FFFFFF' ? 'item-border' : ''\"\n (click)=\"selectColor(colorItem)\">\n <thy-icon\n thyIconName=\"check-thick\"\n class=\"check-icon\"\n [ngClass]=\"\n color === colorItem ? (getIconColor(colorItem) === 'white' ? 'checked white-check' : 'checked black-check') : ''\n \"></thy-icon>\n </div>\n</ng-template>\n" }]
|
|
85
|
-
}], propDecorators: { className: [{
|
|
86
|
-
type: HostBinding,
|
|
87
|
-
args: ['class.thy-color-picker-panel']
|
|
88
|
-
}], color: [{
|
|
89
|
-
type: Input
|
|
90
|
-
}], colorChange: [{
|
|
91
|
-
type: Input
|
|
92
|
-
}], defaultColor: [{
|
|
93
|
-
type: Input
|
|
94
|
-
}], transparentColorSelectable: [{
|
|
95
|
-
type: Input,
|
|
96
|
-
args: [{ transform: coerceBooleanProperty }]
|
|
97
|
-
}], defaultColors: [{
|
|
98
|
-
type: Input
|
|
99
|
-
}] } });
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLXBhbmVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2xvci1waWNrZXIvY29sb3ItcGlja2VyLXBhbmVsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy9jb2xvci1waWNrZXIvY29sb3ItcGlja2VyLXBhbmVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBa0IsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pJLE9BQU8sRUFBRSxVQUFVLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDL0QsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDbEYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMxQyxPQUFPLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE9BQU8sRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxZQUFZLEVBQXdCLE1BQU0saUJBQWlCLENBQUM7O0FBRXJFOztHQUVHO0FBV0gsTUFBTSxPQUFPLG1CQUFtQjtJQVZoQztRQVdZLGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDaEMscUJBQWdCLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDNUMsa0JBQWEsR0FBRyxNQUFNLENBQXFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2xGLFdBQU0sR0FBaUMsWUFBWSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXRCLGNBQVMsR0FBRyxJQUFJLENB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SUFBSSxDQUFDO1FBQ3JDLE1BQU0sR0FBRyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDO1FBQ3RFLE9BQU8sR0FBRyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDekMsQ0FBQzsrR0FuRlEsbUJBQW1CO21HQUFuQixtQkFBbUIsdU9Bb0JSLHFCQUFxQixzTEMxQzdDLHFvRUFnREEsNENENUJjLE9BQU8sb0ZBQUUsZ0JBQWdCLG9KQUFFLE9BQU8sc01BQUUsT0FBTzs7NEZBRTVDLG1CQUFtQjtrQkFWL0IsU0FBUzsrQkFDSSx3QkFBd0IsbUJBRWpCLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0YsY0FBYyxFQUFFLDZCQUE2QjtxQkFDaEQsY0FDVyxJQUFJLFdBQ1AsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQzs4QkFRVCxTQUFTO3NCQUFyRCxXQUFXO3VCQUFDLDhCQUE4QjtnQkFFbEMsS0FBSztzQkFBYixLQUFLO2dCQUVHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRU8sWUFBWTtzQkFBeEIsS0FBSztnQkFRdUMsMEJBQTBCO3NCQUF0RSxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO2dCQUVsQyxhQUFhO3NCQUFyQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkluaXQsIFNpZ25hbCwgVmlld0NvbnRhaW5lclJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaHlQb3BvdmVyLCBUaHlQb3BvdmVyUmVmIH0gZnJvbSAnbmd4LXRldGh5cy9wb3BvdmVyJztcbmltcG9ydCB7IFRoeUNvbG9yUGlja2VyQ3VzdG9tUGFuZWwgfSBmcm9tICcuL2NvbG9yLXBpY2tlci1jdXN0b20tcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFRoeUNvbG9yIH0gZnJvbSAnLi9oZWxwZXJzL2NvbG9yLmNsYXNzJztcbmltcG9ydCB7IFRoeUljb24gfSBmcm9tICduZ3gtdGV0aHlzL2ljb24nO1xuaW1wb3J0IHsgTmdDbGFzcywgTmdUZW1wbGF0ZU91dGxldCwgTmdTdHlsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHkgfSBmcm9tICduZ3gtdGV0aHlzL3V0aWwnO1xuaW1wb3J0IHsgaW5qZWN0TG9jYWxlLCBUaHlDb2xvclBpY2tlckxvY2FsZSB9IGZyb20gJ25neC10ZXRoeXMvaTE4bic7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGh5LWNvbG9yLXBpY2tlci1wYW5lbCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NvbG9yLXBpY2tlci1wYW5lbC5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2NsYXNzLnB0LTRdJzogJyF0cmFuc3BhcmVudENvbG9yU2VsZWN0YWJsZSdcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW05nQ2xhc3MsIE5nVGVtcGxhdGVPdXRsZXQsIFRoeUljb24sIE5nU3R5bGVdXG59KVxuZXhwb3J0IGNsYXNzIFRoeUNvbG9yUGlja2VyUGFuZWwgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHByaXZhdGUgdGh5UG9wb3ZlciA9IGluamVjdChUaHlQb3BvdmVyKTtcbiAgICBwcml2YXRlIHZpZXdDb250YWluZXJSZWYgPSBpbmplY3QoVmlld0NvbnRhaW5lclJlZik7XG4gICAgcHJpdmF0ZSB0aHlQb3BvdmVyUmVmID0gaW5qZWN0PFRoeVBvcG92ZXJSZWY8VGh5Q29sb3JQaWNrZXJQYW5lbD4+KFRoeVBvcG92ZXJSZWYpO1xuICAgIGxvY2FsZTogU2lnbmFsPFRoeUNvbG9yUGlja2VyTG9jYWxlPiA9IGluamVjdExvY2FsZSgnY29sb3JQaWNrZXInKTtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MudGh5LWNvbG9yLXBpY2tlci1wYW5lbCcpIGNsYXNzTmFtZSA9IHRydWU7XG5cbiAgICBASW5wdXQoKSBjb2xvcjogc3RyaW5nO1xuXG4gICAgQElucHV0KCkgY29sb3JDaGFuZ2U6IChjb2xvcjogc3RyaW5nKSA9PiB7fTtcblxuICAgIEBJbnB1dCgpIHNldCBkZWZhdWx0Q29sb3IodmFsdWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLmN1c3RvbURlZmF1bHRDb2xvciA9IHZhbHVlO1xuICAgIH1cblxuICAgIGdldCBkZWZhdWx0Q29sb3IoKSB7XG4gICAgICAgIHJldHVybiBuZXcgVGh5Q29sb3IodGhpcy5jdXN0b21EZWZhdWx0Q29sb3IpLnRvSGV4U3RyaW5nKHRydWUpO1xuICAgIH1cblxuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRyYW5zcGFyZW50Q29sb3JTZWxlY3RhYmxlOiBib29sZWFuO1xuXG4gICAgQElucHV0KCkgZGVmYXVsdENvbG9yczogc3RyaW5nW107XG5cbiAgICBwdWJsaWMgY3VzdG9tRGVmYXVsdENvbG9yOiBzdHJpbmc7XG5cbiAgICByZWNlbnRDb2xvcnM6IHN0cmluZ1tdID0gW107XG5cbiAgICBuZXdDb2xvcjogc3RyaW5nO1xuXG4gICAgY3VzdG9tUGFuZWxQb3BvdmVyUmVmOiBUaHlQb3BvdmVyUmVmPFRoeUNvbG9yUGlja2VyQ3VzdG9tUGFuZWw+O1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNvbG9ycyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdyZWNlbnRDb2xvcnMnKTtcbiAgICAgICAgaWYgKGNvbG9ycykge1xuICAgICAgICAgICAgdGhpcy5yZWNlbnRDb2xvcnMgPSBKU09OLnBhcnNlKGNvbG9ycyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZWxlY3RDb2xvcihjb2xvcjogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuY29sb3IgPSBjb2xvcjtcbiAgICAgICAgdGhpcy5jb2xvckNoYW5nZSh0aGlzLmNvbG9yKTtcbiAgICAgICAgdGhpcy50aHlQb3BvdmVyUmVmLmNsb3NlKCk7XG4gICAgfVxuXG4gICAgc2hvd01vcmVDb2xvcihldmVudDogRXZlbnQpIHtcbiAgICAgICAgaWYgKCF0aGlzLmN1c3RvbVBhbmVsUG9wb3ZlclJlZikge1xuICAgICAgICAgICAgdGhpcy5jdXN0b21QYW5lbFBvcG92ZXJSZWYgPSB0aGlzLnRoeVBvcG92ZXIub3BlbihUaHlDb2xvclBpY2tlckN1c3RvbVBhbmVsLCB7XG4gICAgICAgICAgICAgICAgb3JpZ2luOiBldmVudC5jdXJyZW50VGFyZ2V0IGFzIEhUTUxFbGVtZW50LFxuICAgICAgICAgICAgICAgIG9mZnNldDogLTQsXG4gICAgICAgICAgICAgICAgcGxhY2VtZW50OiAncmlnaHRCb3R0b20nLFxuICAgICAgICAgICAgICAgIG1hbnVhbENsb3N1cmU6IHRydWUsXG4gICAgICAgICAgICAgICAgd2lkdGg6ICcyNjBweCcsXG4gICAgICAgICAgICAgICAgaGFzQmFja2Ryb3A6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHZpZXdDb250YWluZXJSZWY6IHRoaXMudmlld0NvbnRhaW5lclJlZixcbiAgICAgICAgICAgICAgICBvcmlnaW5BY3RpdmVDbGFzczogJ3RoeS1jb2xvci1waWNrZXItYWN0aXZlJyxcbiAgICAgICAgICAgICAgICBpbml0aWFsU3RhdGU6IHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IHRoaXMuY29sb3IsXG4gICAgICAgICAgICAgICAgICAgIHBpY2tlckNvbG9yQ2hhbmdlOiAodmFsdWU6IHN0cmluZykgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5uZXdDb2xvciA9IHZhbHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb2xvckNoYW5nZSh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmN1c3RvbVBhbmVsUG9wb3ZlclJlZj8uYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMubmV3Q29sb3IpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMucmVjZW50Q29sb3JzLmZpbmRJbmRleChpdGVtID0+IGl0ZW0gPT09IHRoaXMubmV3Q29sb3IpO1xuICAgICAgICAgICAgICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWNlbnRDb2xvcnMuc3BsaWNlKGluZGV4LCAxKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdGhpcy5yZWNlbnRDb2xvcnMudW5zaGlmdCh0aGlzLm5ld0NvbG9yKTtcbiAgICAgICAgICAgICAgICB0aGlzLnJlY2VudENvbG9ycyA9IHRoaXMucmVjZW50Q29sb3JzLnNsaWNlKDAsIDEwKTtcbiAgICAgICAgICAgICAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgncmVjZW50Q29sb3JzJywgSlNPTi5zdHJpbmdpZnkodGhpcy5yZWNlbnRDb2xvcnMpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMudGh5UG9wb3ZlclJlZi5jbG9zZSgpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBnZXRJY29uQ29sb3IoaXRlbTogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IHJnYmEgPSBuZXcgVGh5Q29sb3IoaXRlbSkucmdiYTtcbiAgICAgICAgY29uc3QgaHNwID0gMC4yOTkgKiByZ2JhLnJlZCArIDAuNTg3ICogcmdiYS5ncmVlbiArIDAuMTE0ICogcmdiYS5ibHVlO1xuICAgICAgICByZXR1cm4gaHNwID4gMTkyID8gJ2JsYWNrJyA6ICd3aGl0ZSc7XG4gICAgfVxufVxuIiwiQGlmIChjdXN0b21EZWZhdWx0Q29sb3IpIHtcbiAgPGRpdiBjbGFzcz1cInF1aWNrLWNvbG9yXCIgW25nQ2xhc3NdPVwidHJhbnNwYXJlbnRDb2xvclNlbGVjdGFibGUgPyAnIG1iLTAgcGItMCcgOiAnJ1wiIChjbGljayk9XCJzZWxlY3RDb2xvcihkZWZhdWx0Q29sb3IpXCI+XG4gICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNoZWNrSWNvblRwbFwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogZGVmYXVsdENvbG9yIH1cIj48L25nLXRlbXBsYXRlPlxuICAgIDxzcGFuIGNsYXNzPVwibWwtMiBmb250LXNpemUtc20gdGV4dC1zZWNvbmRhcnlcIj57eyBsb2NhbGUoKS5kZWZhdWx0Q29sb3IgfX08L3NwYW4+XG4gIDwvZGl2PlxufVxuQGlmICh0cmFuc3BhcmVudENvbG9yU2VsZWN0YWJsZSkge1xuICA8ZGl2IGNsYXNzPVwicXVpY2stY29sb3JcIiBbbmdDbGFzc109XCJjdXN0b21EZWZhdWx0Q29sb3IgPyAnbXQtMCBwdC0wJyA6ICcnXCIgKGNsaWNrKT1cInNlbGVjdENvbG9yKCd0cmFuc3BhcmVudCcpXCI+XG4gICAgPGRpdiBjbGFzcz1cImNvbG9yLWJsb2NrXCI+PC9kaXY+XG4gICAgPHNwYW4gY2xhc3M9XCJtbC0yIGZvbnQtc2l6ZS1zbSB0ZXh0LXNlY29uZGFyeVwiPnt7IGxvY2FsZSgpLm5vRmlsbENvbG9yIH19PC9zcGFuPlxuICA8L2Rpdj5cbn1cbjxkaXYgY2xhc3M9XCJtYWluLWNvbnRlbnRcIj5cbiAgPGRpdiBjbGFzcz1cImRlZmF1bHQtY29sb3JcIj5cbiAgICBAZm9yIChpdGVtIG9mIGRlZmF1bHRDb2xvcnM7IHRyYWNrICRpbmRleCkge1xuICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImNoZWNrSWNvblRwbFwiIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogaXRlbSB9XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICB9XG4gIDwvZGl2PlxuICA8cCBjbGFzcz1cImZvbnQtc2l6ZS1zbSB0ZXh0LXNlY29uZGFyeSByZWNlbnQtdGV4dFwiPnt7IGxvY2FsZSgpLnJlY2VudFVzZWRDb2xvciB9fTwvcD5cbiAgPGRpdiBjbGFzcz1cInJlY2VudC1jb2xvci1jb250YWluZXJcIj5cbiAgICBAZm9yIChpdGVtIG9mIHJlY2VudENvbG9yczsgdHJhY2sgJGluZGV4KSB7XG4gICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2hlY2tJY29uVHBsXCIgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIj48L25nLXRlbXBsYXRlPlxuICAgIH1cbiAgICBAaWYgKHJlY2VudENvbG9ycy5sZW5ndGggPT09IDApIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJmb250LXNpemUtc20gcHgtMSB0ZXh0LW11dGVkXCI+e3sgbG9jYWxlKCkubm9uZSB9fTwvZGl2PlxuICAgIH1cbiAgPC9kaXY+XG48L2Rpdj5cbjxkaXYgY2xhc3M9XCJtb3JlLWNvbG9yXCIgKGNsaWNrKT1cInNob3dNb3JlQ29sb3IoJGV2ZW50KVwiPlxuICA8dGh5LWljb24gdGh5SWNvbk5hbWU9XCJwYWxldHRlXCIgY2xhc3M9XCJtci0yXCI+PC90aHktaWNvbj5cbiAgPHNwYW4gY2xhc3M9XCJmb250LXNpemUtc20gY3VzdG9tLXRleHRcIj57eyBsb2NhbGUoKS5jdXN0b21Db2xvciB9fTwvc3Bhbj5cbiAgPHRoeS1pY29uIHRoeURyb3Bkb3duTWVudUl0ZW1FeHRlbmRJY29uIHRoeUljb25OYW1lPVwiYW5nbGUtcmlnaHRcIj48L3RoeS1pY29uPlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjY2hlY2tJY29uVHBsIGxldC1jb2xvckl0ZW0+XG4gIDxkaXZcbiAgICBjbGFzcz1cImNvbG9yLWl0ZW1cIlxuICAgIFtuZ1N0eWxlXT1cInsgYmFja2dyb3VuZDogY29sb3JJdGVtIH1cIlxuICAgIFtuZ0NsYXNzXT1cImNvbG9ySXRlbSA9PT0gJyNGRkZGRkYnID8gJ2l0ZW0tYm9yZGVyJyA6ICcnXCJcbiAgICAoY2xpY2spPVwic2VsZWN0Q29sb3IoY29sb3JJdGVtKVwiPlxuICAgIDx0aHktaWNvblxuICAgICAgdGh5SWNvbk5hbWU9XCJjaGVjay10aGlja1wiXG4gICAgICBjbGFzcz1cImNoZWNrLWljb25cIlxuICAgICAgW25nQ2xhc3NdPVwiXG4gICAgICAgIGNvbG9yID09PSBjb2xvckl0ZW0gPyAoZ2V0SWNvbkNvbG9yKGNvbG9ySXRlbSkgPT09ICd3aGl0ZScgPyAnY2hlY2tlZCB3aGl0ZS1jaGVjaycgOiAnY2hlY2tlZCBibGFjay1jaGVjaycpIDogJydcbiAgICAgIFwiPjwvdGh5LWljb24+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
@@ -1,289 +0,0 @@
|
|
|
1
|
-
import { FocusMonitor } from '@angular/cdk/a11y';
|
|
2
|
-
import { Platform } from '@angular/cdk/platform';
|
|
3
|
-
import { Directive, ElementRef, EventEmitter, forwardRef, Input, NgZone, numberAttribute, Output, inject } from '@angular/core';
|
|
4
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
5
|
-
import { ThyOverlayDirectiveBase, mixinTabIndex, mixinDisabled } from 'ngx-tethys/core';
|
|
6
|
-
import { ThyPopover } from 'ngx-tethys/popover';
|
|
7
|
-
import { fromEvent, Subject } from 'rxjs';
|
|
8
|
-
import { ThyColorPickerPanel } from './color-picker-panel.component';
|
|
9
|
-
import { DEFAULT_COLORS } from './constant';
|
|
10
|
-
import { ThyColor } from './helpers/color.class';
|
|
11
|
-
import { takeUntil } from 'rxjs/operators';
|
|
12
|
-
import { coerceBooleanProperty } from 'ngx-tethys/util';
|
|
13
|
-
import * as i0 from "@angular/core";
|
|
14
|
-
export class OverlayBase extends ThyOverlayDirectiveBase {
|
|
15
|
-
constructor(zone, elementRef, platform, focusMonitor) {
|
|
16
|
-
super(elementRef, platform, focusMonitor, zone, true);
|
|
17
|
-
this.zone = zone;
|
|
18
|
-
this.elementRef = elementRef;
|
|
19
|
-
}
|
|
20
|
-
show() { }
|
|
21
|
-
hide() { }
|
|
22
|
-
}
|
|
23
|
-
const _BaseMixin = mixinTabIndex(mixinDisabled(OverlayBase));
|
|
24
|
-
/**
|
|
25
|
-
* 颜色选择组件
|
|
26
|
-
* @name thyColorPicker
|
|
27
|
-
*/
|
|
28
|
-
export class ThyColorPickerDirective extends _BaseMixin {
|
|
29
|
-
/**
|
|
30
|
-
* 弹出悬浮层的触发方式
|
|
31
|
-
* @type 'hover' | 'click'
|
|
32
|
-
* @default click
|
|
33
|
-
*/
|
|
34
|
-
set thyTrigger(trigger) {
|
|
35
|
-
this.trigger = trigger;
|
|
36
|
-
}
|
|
37
|
-
/**
|
|
38
|
-
* 显示延迟时间
|
|
39
|
-
*/
|
|
40
|
-
set thyShowDelay(value) {
|
|
41
|
-
this.showDelay = value;
|
|
42
|
-
}
|
|
43
|
-
/**
|
|
44
|
-
* 隐藏延迟时间
|
|
45
|
-
*/
|
|
46
|
-
set thyHideDelay(value) {
|
|
47
|
-
this.hideDelay = value;
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* 是否属于禁用状态
|
|
51
|
-
*/
|
|
52
|
-
set thyDisabled(value) {
|
|
53
|
-
this.disabled = value;
|
|
54
|
-
}
|
|
55
|
-
get thyDisabled() {
|
|
56
|
-
return this.disabled;
|
|
57
|
-
}
|
|
58
|
-
get backgroundColor() {
|
|
59
|
-
return this.color;
|
|
60
|
-
}
|
|
61
|
-
constructor() {
|
|
62
|
-
const zone = inject(NgZone);
|
|
63
|
-
const elementRef = inject(ElementRef);
|
|
64
|
-
const platform = inject(Platform);
|
|
65
|
-
const focusMonitor = inject(FocusMonitor);
|
|
66
|
-
super(zone, elementRef, platform, focusMonitor);
|
|
67
|
-
this.thyPopover = inject(ThyPopover);
|
|
68
|
-
/**
|
|
69
|
-
* 弹框偏移量
|
|
70
|
-
* @type number
|
|
71
|
-
*/
|
|
72
|
-
this.thyOffset = 0;
|
|
73
|
-
/**
|
|
74
|
-
* 颜色选择面板是否有幕布
|
|
75
|
-
*/
|
|
76
|
-
this.thyHasBackdrop = true;
|
|
77
|
-
/**
|
|
78
|
-
* 是否显示'无填充色'选项
|
|
79
|
-
*/
|
|
80
|
-
this.thyTransparentColorSelectable = true;
|
|
81
|
-
/**
|
|
82
|
-
* 预设的快捷选择颜色
|
|
83
|
-
* @type string[]
|
|
84
|
-
*/
|
|
85
|
-
this.thyPresetColors = DEFAULT_COLORS;
|
|
86
|
-
/**
|
|
87
|
-
* 颜色面板弹出位置 'top' | 'topLeft' | 'topRight' | 'bottom' | 'bottomLeft' | 'bottomRight' | 'left' | 'leftTop' | 'leftBottom' | 'right' | 'rightTop' | 'rightBottom'
|
|
88
|
-
* @type ThyPlacement
|
|
89
|
-
*/
|
|
90
|
-
this.thyPlacement = 'bottom';
|
|
91
|
-
/**
|
|
92
|
-
* panel 展开后触发
|
|
93
|
-
*/
|
|
94
|
-
this.thyPanelOpen = new EventEmitter();
|
|
95
|
-
/**
|
|
96
|
-
* panel 关闭后触发
|
|
97
|
-
*/
|
|
98
|
-
this.thyPanelClose = new EventEmitter();
|
|
99
|
-
this.onChangeFn = () => { };
|
|
100
|
-
this.onTouchFn = () => { };
|
|
101
|
-
this.closePanel = true;
|
|
102
|
-
this.destroy$ = new Subject();
|
|
103
|
-
}
|
|
104
|
-
ngOnInit() {
|
|
105
|
-
this.initialize();
|
|
106
|
-
if (this.trigger === 'hover') {
|
|
107
|
-
this.ngZone.runOutsideAngular(() => {
|
|
108
|
-
return fromEvent(document, 'mousemove')
|
|
109
|
-
.pipe(takeUntil(this.destroy$))
|
|
110
|
-
.subscribe(event => {
|
|
111
|
-
if (this.popoverRef?.getOverlayRef()?.hasAttached()) {
|
|
112
|
-
if (this.elementRef.nativeElement.contains(event.target) ||
|
|
113
|
-
event.target.closest('.thy-color-picker-custom-panel') ||
|
|
114
|
-
!!event.target.querySelector('.thy-color-picker-custom-panel') ||
|
|
115
|
-
this.popoverRef.getOverlayRef()?.hostElement?.contains(event.target)) {
|
|
116
|
-
this.closePanel = false;
|
|
117
|
-
}
|
|
118
|
-
else {
|
|
119
|
-
this.closePanel = true;
|
|
120
|
-
this.popoverRef.close();
|
|
121
|
-
}
|
|
122
|
-
}
|
|
123
|
-
});
|
|
124
|
-
});
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
togglePanel() {
|
|
128
|
-
this.closePanel = false;
|
|
129
|
-
this.popoverRef = this.thyPopover.open(ThyColorPickerPanel, {
|
|
130
|
-
origin: this.elementRef.nativeElement,
|
|
131
|
-
offset: this.thyOffset,
|
|
132
|
-
manualClosure: true,
|
|
133
|
-
width: '286px',
|
|
134
|
-
placement: this.thyPlacement,
|
|
135
|
-
originActiveClass: 'thy-default-picker-active',
|
|
136
|
-
hasBackdrop: this.thyHasBackdrop,
|
|
137
|
-
outsideClosable: false,
|
|
138
|
-
canClose: () => {
|
|
139
|
-
if (this.trigger === 'hover') {
|
|
140
|
-
return this.closePanel;
|
|
141
|
-
}
|
|
142
|
-
return true;
|
|
143
|
-
},
|
|
144
|
-
initialState: {
|
|
145
|
-
color: new ThyColor(this.color).toHexString(true),
|
|
146
|
-
defaultColor: this.thyDefaultColor,
|
|
147
|
-
transparentColorSelectable: this.thyTransparentColorSelectable,
|
|
148
|
-
defaultColors: this.thyPresetColors,
|
|
149
|
-
colorChange: (value) => {
|
|
150
|
-
this.closePanel = true;
|
|
151
|
-
this.onModelChange(value);
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
});
|
|
155
|
-
if (this.popoverRef) {
|
|
156
|
-
this.popoverRef.afterOpened().subscribe(() => {
|
|
157
|
-
this.thyPanelOpen.emit(this.popoverRef);
|
|
158
|
-
});
|
|
159
|
-
this.popoverRef.afterClosed().subscribe(() => {
|
|
160
|
-
this.thyPanelClose.emit(this.popoverRef);
|
|
161
|
-
this.elementRef.nativeElement.focus();
|
|
162
|
-
});
|
|
163
|
-
}
|
|
164
|
-
if (this.popoverRef && !this.thyHasBackdrop) {
|
|
165
|
-
this.popoverRef
|
|
166
|
-
.getOverlayRef()
|
|
167
|
-
.outsidePointerEvents()
|
|
168
|
-
.subscribe(event => {
|
|
169
|
-
if (event.target.closest('.thy-color-picker-custom-panel')) {
|
|
170
|
-
return;
|
|
171
|
-
}
|
|
172
|
-
if (!this.popoverRef.getOverlayRef().hostElement.contains(event.target)) {
|
|
173
|
-
this.popoverRef.close();
|
|
174
|
-
}
|
|
175
|
-
});
|
|
176
|
-
}
|
|
177
|
-
return this.popoverRef.getOverlayRef();
|
|
178
|
-
}
|
|
179
|
-
show(delay = this.showDelay) {
|
|
180
|
-
if (this.hideTimeoutId) {
|
|
181
|
-
clearTimeout(this.hideTimeoutId);
|
|
182
|
-
this.hideTimeoutId = null;
|
|
183
|
-
}
|
|
184
|
-
if (this.disabled || (this.overlayRef && this.overlayRef.hasAttached())) {
|
|
185
|
-
return;
|
|
186
|
-
}
|
|
187
|
-
if (this.trigger !== 'hover') {
|
|
188
|
-
delay = 0;
|
|
189
|
-
}
|
|
190
|
-
this.showTimeoutId = setTimeout(() => {
|
|
191
|
-
const overlayRef = this.togglePanel();
|
|
192
|
-
this.overlayRef = overlayRef;
|
|
193
|
-
this.showTimeoutId = null;
|
|
194
|
-
}, delay);
|
|
195
|
-
}
|
|
196
|
-
hide(delay = this.hideDelay) {
|
|
197
|
-
if (this.showTimeoutId) {
|
|
198
|
-
clearTimeout(this.showTimeoutId);
|
|
199
|
-
this.showTimeoutId = null;
|
|
200
|
-
}
|
|
201
|
-
this.hideTimeoutId = setTimeout(() => {
|
|
202
|
-
if (this.popoverRef) {
|
|
203
|
-
this.popoverRef?.getOverlayRef()?.hasAttached() && this.popoverRef.close();
|
|
204
|
-
}
|
|
205
|
-
this.hideTimeoutId = null;
|
|
206
|
-
}, delay);
|
|
207
|
-
}
|
|
208
|
-
writeValue(value) {
|
|
209
|
-
this.color = value;
|
|
210
|
-
}
|
|
211
|
-
registerOnChange(fn) {
|
|
212
|
-
this.onChangeFn = fn;
|
|
213
|
-
}
|
|
214
|
-
registerOnTouched(fn) {
|
|
215
|
-
this.onTouchFn = fn;
|
|
216
|
-
}
|
|
217
|
-
setDisabledState(isDisabled) {
|
|
218
|
-
this.disabled = isDisabled;
|
|
219
|
-
}
|
|
220
|
-
onModelChange(value) {
|
|
221
|
-
this.color = value;
|
|
222
|
-
this.onChangeFn(value);
|
|
223
|
-
}
|
|
224
|
-
ngOnDestroy() {
|
|
225
|
-
this.destroy$.next();
|
|
226
|
-
this.destroy$.complete();
|
|
227
|
-
this.hide();
|
|
228
|
-
this.dispose();
|
|
229
|
-
this.popoverRef = null;
|
|
230
|
-
}
|
|
231
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyColorPickerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
232
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.13", type: ThyColorPickerDirective, isStandalone: true, selector: "[thyColorPicker]", inputs: { thyOffset: ["thyOffset", "thyOffset", numberAttribute], thyHasBackdrop: ["thyHasBackdrop", "thyHasBackdrop", coerceBooleanProperty], thyDefaultColor: "thyDefaultColor", thyTransparentColorSelectable: ["thyTransparentColorSelectable", "thyTransparentColorSelectable", coerceBooleanProperty], thyPresetColors: "thyPresetColors", thyPlacement: "thyPlacement", thyTrigger: "thyTrigger", thyShowDelay: ["thyShowDelay", "thyShowDelay", numberAttribute], thyHideDelay: ["thyHideDelay", "thyHideDelay", numberAttribute], thyDisabled: ["thyDisabled", "thyDisabled", coerceBooleanProperty] }, outputs: { thyPanelOpen: "thyPanelOpen", thyPanelClose: "thyPanelClose" }, host: { properties: { "attr.tabindex": "tabIndex", "class.thy-color-picker-disabled": "disabled" }, classAttribute: "thy-color-picker" }, providers: [
|
|
233
|
-
{
|
|
234
|
-
provide: NG_VALUE_ACCESSOR,
|
|
235
|
-
multi: true,
|
|
236
|
-
useExisting: forwardRef(() => ThyColorPickerDirective)
|
|
237
|
-
}
|
|
238
|
-
], usesInheritance: true, ngImport: i0 }); }
|
|
239
|
-
}
|
|
240
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyColorPickerDirective, decorators: [{
|
|
241
|
-
type: Directive,
|
|
242
|
-
args: [{
|
|
243
|
-
selector: '[thyColorPicker]',
|
|
244
|
-
host: {
|
|
245
|
-
class: 'thy-color-picker',
|
|
246
|
-
'[attr.tabindex]': `tabIndex`,
|
|
247
|
-
'[class.thy-color-picker-disabled]': 'disabled'
|
|
248
|
-
},
|
|
249
|
-
providers: [
|
|
250
|
-
{
|
|
251
|
-
provide: NG_VALUE_ACCESSOR,
|
|
252
|
-
multi: true,
|
|
253
|
-
useExisting: forwardRef(() => ThyColorPickerDirective)
|
|
254
|
-
}
|
|
255
|
-
],
|
|
256
|
-
standalone: true
|
|
257
|
-
}]
|
|
258
|
-
}], ctorParameters: () => [], propDecorators: { thyOffset: [{
|
|
259
|
-
type: Input,
|
|
260
|
-
args: [{ transform: numberAttribute }]
|
|
261
|
-
}], thyHasBackdrop: [{
|
|
262
|
-
type: Input,
|
|
263
|
-
args: [{ transform: coerceBooleanProperty }]
|
|
264
|
-
}], thyDefaultColor: [{
|
|
265
|
-
type: Input
|
|
266
|
-
}], thyTransparentColorSelectable: [{
|
|
267
|
-
type: Input,
|
|
268
|
-
args: [{ transform: coerceBooleanProperty }]
|
|
269
|
-
}], thyPresetColors: [{
|
|
270
|
-
type: Input
|
|
271
|
-
}], thyPlacement: [{
|
|
272
|
-
type: Input
|
|
273
|
-
}], thyPanelOpen: [{
|
|
274
|
-
type: Output
|
|
275
|
-
}], thyPanelClose: [{
|
|
276
|
-
type: Output
|
|
277
|
-
}], thyTrigger: [{
|
|
278
|
-
type: Input
|
|
279
|
-
}], thyShowDelay: [{
|
|
280
|
-
type: Input,
|
|
281
|
-
args: [{ transform: numberAttribute }]
|
|
282
|
-
}], thyHideDelay: [{
|
|
283
|
-
type: Input,
|
|
284
|
-
args: [{ transform: numberAttribute }]
|
|
285
|
-
}], thyDisabled: [{
|
|
286
|
-
type: Input,
|
|
287
|
-
args: [{ transform: coerceBooleanProperty }]
|
|
288
|
-
}] } });
|
|
289
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb2xvci1waWNrZXIvY29sb3ItcGlja2VyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFDSCxTQUFTLEVBQ1QsVUFBVSxFQUNWLFlBQVksRUFDWixVQUFVLEVBQ1YsS0FBSyxFQUNMLE1BQU0sRUFDTixlQUFlLEVBR2YsTUFBTSxFQUNOLE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsdUJBQXVCLEVBQW1DLGFBQWEsRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN6SCxPQUFPLEVBQUUsVUFBVSxFQUFpQixNQUFNLG9CQUFvQixDQUFDO0FBQy9ELE9BQU8sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDNUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2pELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFeEQsTUFBTSxPQUFPLFdBQVksU0FBUSx1QkFBdUI7SUFDcEQsWUFDYyxJQUFZLEVBQ1osVUFBbUMsRUFDN0MsUUFBa0IsRUFDbEIsWUFBMEI7UUFFMUIsS0FBSyxDQUFDLFVBQVUsRUFBRSxRQUFR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QUtJLFlBQVk7c0JBQXJCLE1BQU07Z0JBS0csYUFBYTtzQkFBdEIsTUFBTTtnQkFPTSxVQUFVO3NCQUF0QixLQUFLO2dCQVFGLFlBQVk7c0JBRGYsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUU7Z0JBU2pDLFlBQVk7c0JBRGYsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUU7Z0JBU3hCLFdBQVc7c0JBRHZCLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUscUJBQXFCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSc7XG5pbXBvcnQge1xuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBmb3J3YXJkUmVmLFxuICAgIElucHV0LFxuICAgIE5nWm9uZSxcbiAgICBudW1iZXJBdHRyaWJ1dGUsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPdXRwdXQsXG4gICAgaW5qZWN0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBUaHlPdmVybGF5RGlyZWN0aXZlQmFzZSwgVGh5UGxhY2VtZW50LCBUaHlPdmVybGF5VHJpZ2dlciwgbWl4aW5UYWJJbmRleCwgbWl4aW5EaXNhYmxlZCB9IGZyb20gJ25neC10ZXRoeXMvY29yZSc7XG5pbXBvcnQgeyBUaHlQb3BvdmVyLCBUaHlQb3BvdmVyUmVmIH0gZnJvbSAnbmd4LXRldGh5cy9wb3BvdmVyJztcbmltcG9ydCB7IGZyb21FdmVudCwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVGh5Q29sb3JQaWNrZXJQYW5lbCB9IGZyb20gJy4vY29sb3ItcGlja2VyLXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBERUZBVUxUX0NPTE9SUyB9IGZyb20gJy4vY29uc3RhbnQnO1xuaW1wb3J0IHsgVGh5Q29sb3IgfSBmcm9tICcuL2hlbHBlcnMvY29sb3IuY2xhc3MnO1xuaW1wb3J0IHsgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnbmd4LXRldGh5cy91dGlsJztcblxuZXhwb3J0IGNsYXNzIE92ZXJsYXlCYXNlIGV4dGVuZHMgVGh5T3ZlcmxheURpcmVjdGl2ZUJhc2Uge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgem9uZTogTmdab25lLFxuICAgICAgICBwcm90ZWN0ZWQgZWxlbWVudFJlZjogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sXG4gICAgICAgIHBsYXRmb3JtOiBQbGF0Zm9ybSxcbiAgICAgICAgZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3JcbiAgICApIHtcbiAgICAgICAgc3VwZXIoZWxlbWVudFJlZiwgcGxhdGZvcm0sIGZvY3VzTW9uaXRvciwgem9uZSwgdHJ1ZSk7XG4gICAgfVxuXG4gICAgc2hvdygpOiB2b2lkIHt9XG5cbiAgICBoaWRlKCkge31cbn1cblxuY29uc3QgX0Jhc2VNaXhpbiA9IG1peGluVGFiSW5kZXgobWl4aW5EaXNhYmxlZChPdmVybGF5QmFzZSkpO1xuXG4vKipcbiAqIOminOiJsumAieaLqee7hOS7tlxuICogQG5hbWUgdGh5Q29sb3JQaWNrZXJcbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbdGh5Q29sb3JQaWNrZXJdJyxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAndGh5LWNvbG9yLXBpY2tlcicsXG4gICAgICAgICdbYXR0ci50YWJpbmRleF0nOiBgdGFiSW5kZXhgLFxuICAgICAgICAnW2NsYXNzLnRoeS1jb2xvci1waWNrZXItZGlzYWJsZWRdJzogJ2Rpc2FibGVkJ1xuICAgIH0sXG4gICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBUaHlDb2xvclBpY2tlckRpcmVjdGl2ZSlcbiAgICAgICAgfVxuICAgIF0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBUaHlDb2xvclBpY2tlckRpcmVjdGl2ZSBleHRlbmRzIF9CYXNlTWl4aW4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSB0aHlQb3BvdmVyID0gaW5qZWN0KFRoeVBvcG92ZXIpO1xuXG4gICAgLyoqXG4gICAgICog5by55qGG5YGP56e76YePXG4gICAgICogQHR5cGUgIG51bWJlclxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pIHRoeU9mZnNldDogbnVtYmVyID0gMDtcblxuICAgIC8qKlxuICAgICAqIOminOiJsumAieaLqemdouadv+aYr+WQpuacieW5leW4g1xuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogY29lcmNlQm9vbGVhblByb3BlcnR5IH0pIHRoeUhhc0JhY2tkcm9wOiBib29sZWFuID0gdHJ1ZTtcblxuICAgIC8qKlxuICAgICAqIOiuvue9ruminOiJsumAieaLqemdouadv+eahOm7mOiupOminOiJsumAiemhueWAvFxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeURlZmF1bHRDb2xvcjogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICog5piv5ZCm5pi+56S6J+aXoOWhq+WFheiJsifpgInpoblcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KSB0aHlUcmFuc3BhcmVudENvbG9yU2VsZWN0YWJsZTogYm9vbGVhbiA9IHRydWU7XG5cbiAgICAvKipcbiAgICAgKiDpooTorr7nmoTlv6vmjbfpgInmi6npopzoibJcbiAgICAgKiBAdHlwZSBzdHJpbmdbXVxuICAgICAqL1xuICAgIEBJbnB1dCgpIHRoeVByZXNldENvbG9yczogc3RyaW5nW10gPSBERUZBVUxUX0NPTE9SUztcblxuICAgIC8qKlxuICAgICAqIOminOiJsumdouadv+W8ueWHuuS9jee9riAndG9wJyB8ICd0b3BMZWZ0JyB8ICd0b3BSaWdodCcgfCAnYm90dG9tJyB8ICdib3R0b21MZWZ0JyB8ICdib3R0b21SaWdodCcgfCAnbGVmdCcgfCAnbGVmdFRvcCcgfCAnbGVmdEJvdHRvbScgfCAncmlnaHQnIHwgJ3JpZ2h0VG9wJyB8ICdyaWdodEJvdHRvbSdcbiAgICAgKiBAdHlwZSBUaHlQbGFjZW1lbnRcbiAgICAgKi9cbiAgICBASW5wdXQoKSB0aHlQbGFjZW1lbnQ6IFRoeVBsYWNlbWVudCA9ICdib3R0b20nO1xuXG4gICAgLyoqXG4gICAgICogcGFuZWwg5bGV5byA5ZCO6Kem5Y+RXG4gICAgICovXG4gICAgQE91dHB1dCgpIHRoeVBhbmVsT3BlbjogRXZlbnRFbWl0dGVyPFRoeVBvcG92ZXJSZWY8VGh5Q29sb3JQaWNrZXJQYW5lbD4+ID0gbmV3IEV2ZW50RW1pdHRlcjxUaHlQb3BvdmVyUmVmPFRoeUNvbG9yUGlja2VyUGFuZWw+PigpO1xuXG4gICAgLyoqXG4gICAgICogcGFuZWwg5YWz6Zet5ZCO6Kem5Y+RXG4gICAgICovXG4gICAgQE91dHB1dCgpIHRoeVBhbmVsQ2xvc2U6IEV2ZW50RW1pdHRlcjxUaHlQb3BvdmVyUmVmPFRoeUNvbG9yUGlja2VyUGFuZWw+PiA9IG5ldyBFdmVudEVtaXR0ZXI8VGh5UG9wb3ZlclJlZjxUaHlDb2xvclBpY2tlclBhbmVsPj4oKTtcblxuICAgIC8qKlxuICAgICAqIOW8ueWHuuaCrOa1ruWxgueahOinpuWPkeaWueW8j1xuICAgICAqIEB0eXBlICdob3ZlcicgfCAnY2xpY2snXG4gICAgICogQGRlZmF1bHQgY2xpY2tcbiAgICAgKi9cbiAgICBASW5wdXQoKSBzZXQgdGh5VHJpZ2dlcih0cmlnZ2VyOiBUaHlPdmVybGF5VHJpZ2dlcikge1xuICAgICAgICB0aGlzLnRyaWdnZXIgPSB0cmlnZ2VyO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIOaYvuekuuW7tui/n+aXtumXtFxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogbnVtYmVyQXR0cmlidXRlIH0pXG4gICAgc2V0IHRoeVNob3dEZWxheSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuc2hvd0RlbGF5ID0gdmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICog6ZqQ6JeP5bu26L+f5pe26Ze0XG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSlcbiAgICBzZXQgdGh5SGlkZURlbGF5KHZhbHVlOiBudW1iZXIpIHtcbiAgICAgICAgdGhpcy5oaWRlRGVsYXkgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiDmmK/lkKblsZ7kuo7npoHnlKjnirbmgIFcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9KVxuICAgIG92ZXJyaWRlIHNldCB0aHlEaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gdmFsdWU7XG4gICAgfVxuICAgIG92ZXJyaWRlIGdldCB0aHlEaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIG9uQ2hhbmdlRm46ICh2YWx1ZTogbnVtYmVyIHwgc3RyaW5nKSA9PiB2b2lkID0gKCkgPT4ge307XG5cbiAgICBwcml2YXRlIG9uVG91Y2hGbjogKCkgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG4gICAgY29sb3I6IHN0cmluZztcblxuICAgIHByaXZhdGUgcG9wb3ZlclJlZjogVGh5UG9wb3ZlclJlZjxUaHlDb2xvclBpY2tlclBhbmVsPjtcblxuICAgIHByaXZhdGUgY2xvc2VQYW5lbCA9IHRydWU7XG5cbiAgICBwcml2YXRlIGRlc3Ryb3kkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIHB1YmxpYyBnZXQgYmFja2dyb3VuZENvbG9yKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbG9yO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBjb25zdCB6b25lID0gaW5qZWN0KE5nWm9uZSk7XG4gICAgICAgIGNvbnN0IGVsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuICAgICAgICBjb25zdCBwbGF0Zm9ybSA9IGluamVjdChQbGF0Zm9ybSk7XG4gICAgICAgIGNvbnN0IGZvY3VzTW9uaXRvciA9IGluamVjdChGb2N1c01vbml0b3IpO1xuXG4gICAgICAgIHN1cGVyKHpvbmUsIGVsZW1lbnRSZWYsIHBsYXRmb3JtLCBmb2N1c01vbml0b3IpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmluaXRpYWxpemUoKTtcbiAgICAgICAgaWYgKHRoaXMudHJpZ2dlciA9PT0gJ2hvdmVyJykge1xuICAgICAgICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBmcm9tRXZlbnQoZG9jdW1lbnQsICdtb3VzZW1vdmUnKVxuICAgICAgICAgICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95JCkpXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoZXZlbnQgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMucG9wb3ZlclJlZj8uZ2V0T3ZlcmxheVJlZigpPy5oYXNBdHRhY2hlZCgpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5jb250YWlucyhldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmNsb3Nlc3QoJy50aHktY29sb3ItcGlja2VyLWN1c3RvbS1wYW5lbCcpIHx8XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICEhKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCkucXVlcnlTZWxlY3RvcignLnRoeS1jb2xvci1waWNrZXItY3VzdG9tLXBhbmVsJykgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wb3BvdmVyUmVmLmdldE92ZXJsYXlSZWYoKT8uaG9zdEVsZW1lbnQ/LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jbG9zZVBhbmVsID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jbG9zZVBhbmVsID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5wb3BvdmVyUmVmLmNsb3NlKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdG9nZ2xlUGFuZWwoKSB7XG4gICAgICAgIHRoaXMuY2xvc2VQYW5lbCA9IGZhbHNlO1xuICAgICAgICB0aGlzLnBvcG92ZXJSZWYgPSB0aGlzLnRoeVBvcG92ZXIub3BlbihUaHlDb2xvclBpY2tlclBhbmVsLCB7XG4gICAgICAgICAgICBvcmlnaW46IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50LFxuICAgICAgICAgICAgb2Zmc2V0OiB0aGlzLnRoeU9mZnNldCxcbiAgICAgICAgICAgIG1hbnVhbENsb3N1cmU6IHRydWUsXG4gICAgICAgICAgICB3aWR0aDogJzI4NnB4JyxcbiAgICAgICAgICAgIHBsYWNlbWVudDogdGhpcy50aHlQbGFjZW1lbnQsXG4gICAgICAgICAgICBvcmlnaW5BY3RpdmVDbGFzczogJ3RoeS1kZWZhdWx0LXBpY2tlci1hY3RpdmUnLFxuICAgICAgICAgICAgaGFzQmFja2Ryb3A6IHRoaXMudGh5SGFzQmFja2Ryb3AsXG4gICAgICAgICAgICBvdXRzaWRlQ2xvc2FibGU6IGZhbHNlLFxuICAgICAgICAgICAgY2FuQ2xvc2U6ICgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy50cmlnZ2VyID09PSAnaG92ZXInKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmNsb3NlUGFuZWw7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGluaXRpYWxTdGF0ZToge1xuICAgICAgICAgICAgICAgIGNvbG9yOiBuZXcgVGh5Q29sb3IodGhpcy5jb2xvcikudG9IZXhTdHJpbmcodHJ1ZSksXG4gICAgICAgICAgICAgICAgZGVmYXVsdENvbG9yOiB0aGlzLnRoeURlZmF1bHRDb2xvcixcbiAgICAgICAgICAgICAgICB0cmFuc3BhcmVudENvbG9yU2VsZWN0YWJsZTogdGhpcy50aHlUcmFuc3BhcmVudENvbG9yU2VsZWN0YWJsZSxcbiAgICAgICAgICAgICAgICBkZWZhdWx0Q29sb3JzOiB0aGlzLnRoeVByZXNldENvbG9ycyxcbiAgICAgICAgICAgICAgICBjb2xvckNoYW5nZTogKHZhbHVlOiBzdHJpbmcpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jbG9zZVBhbmVsID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vbk1vZGVsQ2hhbmdlKHZhbHVlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICBpZiAodGhpcy5wb3BvdmVyUmVmKSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJSZWYuYWZ0ZXJPcGVuZWQoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudGh5UGFuZWxPcGVuLmVtaXQodGhpcy5wb3BvdmVyUmVmKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5wb3BvdmVyUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnRoeVBhbmVsQ2xvc2UuZW1pdCh0aGlzLnBvcG92ZXJSZWYpO1xuICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5wb3BvdmVyUmVmICYmICF0aGlzLnRoeUhhc0JhY2tkcm9wKSB7XG4gICAgICAgICAgICB0aGlzLnBvcG92ZXJSZWZcbiAgICAgICAgICAgICAgICAuZ2V0T3ZlcmxheVJlZigpXG4gICAgICAgICAgICAgICAgLm91dHNpZGVQb2ludGVyRXZlbnRzKClcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKChldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQpLmNsb3Nlc3QoJy50aHktY29sb3ItcGlja2VyLWN1c3RvbS1wYW5lbCcpKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgaWYgKCF0aGlzLnBvcG92ZXJSZWYuZ2V0T3ZlcmxheVJlZigpLmhvc3RFbGVtZW50LmNvbnRhaW5zKGV2ZW50LnRhcmdldCBhcyBIVE1MRWxlbWVudCkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucG9wb3ZlclJlZi5jbG9zZSgpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRoaXMucG9wb3ZlclJlZi5nZXRPdmVybGF5UmVmKCk7XG4gICAgfVxuXG4gICAgb3ZlcnJpZGUgc2hvdyhkZWxheTogbnVtYmVyID0gdGhpcy5zaG93RGVsYXkpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaGlkZVRpbWVvdXRJZCkge1xuICAgICAgICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuaGlkZVRpbWVvdXRJZCk7XG4gICAgICAgICAgICB0aGlzLmhpZGVUaW1lb3V0SWQgPSBudWxsO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQgfHwgKHRoaXMub3ZlcmxheVJlZiAmJiB0aGlzLm92ZXJsYXlSZWYuaGFzQXR0YWNoZWQoKSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy50cmlnZ2VyICE9PSAnaG92ZXInKSB7XG4gICAgICAgICAgICBkZWxheSA9IDA7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNob3dUaW1lb3V0SWQgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG92ZXJsYXlSZWYgPSB0aGlzLnRvZ2dsZVBhbmVsKCk7XG4gICAgICAgICAgICB0aGlzLm92ZXJsYXlSZWYgPSBvdmVybGF5UmVmO1xuICAgICAgICAgICAgdGhpcy5zaG93VGltZW91dElkID0gbnVsbDtcbiAgICAgICAgfSwgZGVsYXkpO1xuICAgIH1cblxuICAgIG92ZXJyaWRlIGhpZGUoZGVsYXk6IG51bWJlciA9IHRoaXMuaGlkZURlbGF5KSB7XG4gICAgICAgIGlmICh0aGlzLnNob3dUaW1lb3V0SWQpIHtcbiAgICAgICAgICAgIGNsZWFyVGltZW91dCh0aGlzLnNob3dUaW1lb3V0SWQpO1xuICAgICAgICAgICAgdGhpcy5zaG93VGltZW91dElkID0gbnVsbDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaGlkZVRpbWVvdXRJZCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMucG9wb3ZlclJlZikge1xuICAgICAgICAgICAgICAgIHRoaXMucG9wb3ZlclJlZj8uZ2V0T3ZlcmxheVJlZigpPy5oYXNBdHRhY2hlZCgpICYmIHRoaXMucG9wb3ZlclJlZi5jbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhpcy5oaWRlVGltZW91dElkID0gbnVsbDtcbiAgICAgICAgfSwgZGVsYXkpO1xuICAgIH1cblxuICAgIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbG9yID0gdmFsdWU7XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DaGFuZ2VGbiA9IGZuO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoRm4gPSBmbjtcbiAgICB9XG5cbiAgICBzZXREaXNhYmxlZFN0YXRlPyhpc0Rpc2FibGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIH1cblxuICAgIG9uTW9kZWxDaGFuZ2UodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbG9yID0gdmFsdWU7XG4gICAgICAgIHRoaXMub25DaGFuZ2VGbih2YWx1ZSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgICAgIHRoaXMuaGlkZSgpO1xuICAgICAgICB0aGlzLmRpc3Bvc2UoKTtcbiAgICAgICAgdGhpcy5wb3BvdmVyUmVmID0gbnVsbDtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
export const DEFAULT_COLORS = [
|
|
2
|
-
'#333333',
|
|
3
|
-
'#666666',
|
|
4
|
-
'#999999',
|
|
5
|
-
'#AAAAAA',
|
|
6
|
-
'#CACACA',
|
|
7
|
-
'#DDDDDD',
|
|
8
|
-
'#EEEEEE',
|
|
9
|
-
'#F5F5F5',
|
|
10
|
-
'#F7F7F7',
|
|
11
|
-
'#FFFFFF',
|
|
12
|
-
'#E48483',
|
|
13
|
-
'#E0B75D',
|
|
14
|
-
'#69B1E4',
|
|
15
|
-
'#77C386',
|
|
16
|
-
'#6EC4C4',
|
|
17
|
-
'#E581D4',
|
|
18
|
-
'#B0C774',
|
|
19
|
-
'#6F81DB',
|
|
20
|
-
'#C18976',
|
|
21
|
-
'#A287E1',
|
|
22
|
-
'#FDEFED',
|
|
23
|
-
'#FCF6E1',
|
|
24
|
-
'#E5F3FC',
|
|
25
|
-
'#E9F7E9',
|
|
26
|
-
'#E3F7F5',
|
|
27
|
-
'#FBECF6',
|
|
28
|
-
'#F7FAE6',
|
|
29
|
-
'#E8EEFC',
|
|
30
|
-
'#F7EDE6',
|
|
31
|
-
'#F0E7FA',
|
|
32
|
-
'#FBD3D0',
|
|
33
|
-
'#F8E8BC',
|
|
34
|
-
'#C3E4F5',
|
|
35
|
-
'#CEEBD2',
|
|
36
|
-
'#C0EBE5',
|
|
37
|
-
'#F1CFE7',
|
|
38
|
-
'#E4EDCA',
|
|
39
|
-
'#C2CDF0',
|
|
40
|
-
'#EBD5C9',
|
|
41
|
-
'#DCCEF5',
|
|
42
|
-
'#EFACA9',
|
|
43
|
-
'#EBD28D',
|
|
44
|
-
'#92C9ED',
|
|
45
|
-
'#9ED0A6',
|
|
46
|
-
'#9BD6D4',
|
|
47
|
-
'#ECA6D9',
|
|
48
|
-
'#D0DF9D',
|
|
49
|
-
'#92A2E3',
|
|
50
|
-
'#D5AD9A',
|
|
51
|
-
'#C0ABEA',
|
|
52
|
-
'#BD6568',
|
|
53
|
-
'#B98F44',
|
|
54
|
-
'#5593C6',
|
|
55
|
-
'#579B67',
|
|
56
|
-
'#4F9FA1',
|
|
57
|
-
'#BA5FA5',
|
|
58
|
-
'#8BA257',
|
|
59
|
-
'#5461B8',
|
|
60
|
-
'#9B6657',
|
|
61
|
-
'#8069BF',
|
|
62
|
-
'#703039',
|
|
63
|
-
'#6B4C1D',
|
|
64
|
-
'#224870',
|
|
65
|
-
'#244F31',
|
|
66
|
-
'#214D52',
|
|
67
|
-
'#6A2E61',
|
|
68
|
-
'#405122',
|
|
69
|
-
'#272B69',
|
|
70
|
-
'#4F2B24',
|
|
71
|
-
'#392E6E'
|
|
72
|
-
];
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29sb3ItcGlja2VyL2NvbnN0YW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRztJQUMxQixTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0lBQ1QsU0FBUztJQUNULFNBQVM7SUFDVCxTQUFTO0NBQ1osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBERUZBVUxUX0NPTE9SUyA9IFtcbiAgICAnIzMzMzMzMycsXG4gICAgJyM2NjY2NjYnLFxuICAgICcjOTk5OTk5JyxcbiAgICAnI0FBQUFBQScsXG4gICAgJyNDQUNBQ0EnLFxuICAgICcjREREREREJyxcbiAgICAnI0VFRUVFRScsXG4gICAgJyNGNUY1RjUnLFxuICAgICcjRjdGN0Y3JyxcbiAgICAnI0ZGRkZGRicsXG4gICAgJyNFNDg0ODMnLFxuICAgICcjRTBCNzVEJyxcbiAgICAnIzY5QjFFNCcsXG4gICAgJyM3N0MzODYnLFxuICAgICcjNkVDNEM0JyxcbiAgICAnI0U1ODFENCcsXG4gICAgJyNCMEM3NzQnLFxuICAgICcjNkY4MURCJyxcbiAgICAnI0MxODk3NicsXG4gICAgJyNBMjg3RTEnLFxuICAgICcjRkRFRkVEJyxcbiAgICAnI0ZDRjZFMScsXG4gICAgJyNFNUYzRkMnLFxuICAgICcjRTlGN0U5JyxcbiAgICAnI0UzRjdGNScsXG4gICAgJyNGQkVDRjYnLFxuICAgICcjRjdGQUU2JyxcbiAgICAnI0U4RUVGQycsXG4gICAgJyNGN0VERTYnLFxuICAgICcjRjBFN0ZBJyxcbiAgICAnI0ZCRDNEMCcsXG4gICAgJyNGOEU4QkMnLFxuICAgICcjQzNFNEY1JyxcbiAgICAnI0NFRUJEMicsXG4gICAgJyNDMEVCRTUnLFxuICAgICcjRjFDRkU3JyxcbiAgICAnI0U0RURDQScsXG4gICAgJyNDMkNERjAnLFxuICAgICcjRUJENUM5JyxcbiAgICAnI0RDQ0VGNScsXG4gICAgJyNFRkFDQTknLFxuICAgICcjRUJEMjhEJyxcbiAgICAnIzkyQzlFRCcsXG4gICAgJyM5RUQwQTYnLFxuICAgICcjOUJENkQ0JyxcbiAgICAnI0VDQTZEOScsXG4gICAgJyNEMERGOUQnLFxuICAgICcjOTJBMkUzJyxcbiAgICAnI0Q1QUQ5QScsXG4gICAgJyNDMEFCRUEnLFxuICAgICcjQkQ2NTY4JyxcbiAgICAnI0I5OEY0NCcsXG4gICAgJyM1NTkzQzYnLFxuICAgICcjNTc5QjY3JyxcbiAgICAnIzRGOUZBMScsXG4gICAgJyNCQTVGQTUnLFxuICAgICcjOEJBMjU3JyxcbiAgICAnIzU0NjFCOCcsXG4gICAgJyM5QjY2NTcnLFxuICAgICcjODA2OUJGJyxcbiAgICAnIzcwMzAzOScsXG4gICAgJyM2QjRDMUQnLFxuICAgICcjMjI0ODcwJyxcbiAgICAnIzI0NEYzMScsXG4gICAgJyMyMTRENTInLFxuICAgICcjNkEyRTYxJyxcbiAgICAnIzQwNTEyMicsXG4gICAgJyMyNzJCNjknLFxuICAgICcjNEYyQjI0JyxcbiAgICAnIzM5MkU2RSdcbl07XG4iXX0=
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { Directive, ElementRef, HostListener, Output, inject } from '@angular/core';
|
|
2
|
-
import { Subject } from 'rxjs';
|
|
3
|
-
import { distinctUntilChanged } from 'rxjs/operators';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* @internal
|
|
7
|
-
*/
|
|
8
|
-
export class ThyCoordinatesDirective {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.el = inject(ElementRef);
|
|
11
|
-
this.coordinatesChange = new Subject();
|
|
12
|
-
this.mousechange = new Subject();
|
|
13
|
-
this.mouseListening = false;
|
|
14
|
-
}
|
|
15
|
-
mousedown($event, x, y) {
|
|
16
|
-
$event.preventDefault();
|
|
17
|
-
this.mouseListening = true;
|
|
18
|
-
this.mousechange.next({ x, y, $event });
|
|
19
|
-
}
|
|
20
|
-
mousemove($event, x, y) {
|
|
21
|
-
if (this.mouseListening) {
|
|
22
|
-
$event.preventDefault();
|
|
23
|
-
this.mousechange.next({ x, y, $event });
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
mouseup() {
|
|
27
|
-
this.mouseListening = false;
|
|
28
|
-
}
|
|
29
|
-
ngOnInit() {
|
|
30
|
-
this.sub = this.mousechange
|
|
31
|
-
.pipe(distinctUntilChanged((last, current) => last.x === current.x && last.y === current.y))
|
|
32
|
-
.subscribe(n => this.handleChange(n.x, n.y, n.$event));
|
|
33
|
-
}
|
|
34
|
-
handleChange(x, y, $event) {
|
|
35
|
-
const containerWidth = this.el.nativeElement.clientWidth;
|
|
36
|
-
const containerHeight = this.el.nativeElement.clientHeight;
|
|
37
|
-
const left = x - (this.el.nativeElement.getBoundingClientRect().left + window.pageXOffset);
|
|
38
|
-
const top = y - (this.el.nativeElement.getBoundingClientRect().top + window.pageYOffset);
|
|
39
|
-
this.coordinatesChange.next({
|
|
40
|
-
x,
|
|
41
|
-
y,
|
|
42
|
-
top,
|
|
43
|
-
left,
|
|
44
|
-
containerHeight,
|
|
45
|
-
containerWidth,
|
|
46
|
-
$event
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
ngOnDestroy() {
|
|
50
|
-
this.sub?.unsubscribe();
|
|
51
|
-
}
|
|
52
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCoordinatesDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
53
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: ThyCoordinatesDirective, isStandalone: true, selector: "[thyColorCoordinates]", outputs: { coordinatesChange: "coordinatesChange" }, host: { listeners: { "mousedown": "mousedown($event,$event.pageX,$event.pageY)", "window:mousemove": "mousemove($event,$event.pageX,$event.pageY)", "window:mouseup": "mouseup()" } }, ngImport: i0 }); }
|
|
54
|
-
}
|
|
55
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ThyCoordinatesDirective, decorators: [{
|
|
56
|
-
type: Directive,
|
|
57
|
-
args: [{
|
|
58
|
-
selector: '[thyColorCoordinates]',
|
|
59
|
-
standalone: true
|
|
60
|
-
}]
|
|
61
|
-
}], propDecorators: { coordinatesChange: [{
|
|
62
|
-
type: Output
|
|
63
|
-
}], mousedown: [{
|
|
64
|
-
type: HostListener,
|
|
65
|
-
args: ['mousedown', ['$event', '$event.pageX', '$event.pageY']]
|
|
66
|
-
}], mousemove: [{
|
|
67
|
-
type: HostListener,
|
|
68
|
-
args: ['window:mousemove', ['$event', '$event.pageX', '$event.pageY']]
|
|
69
|
-
}], mouseup: [{
|
|
70
|
-
type: HostListener,
|
|
71
|
-
args: ['window:mouseup']
|
|
72
|
-
}] } });
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29vcmRpbmF0ZXMuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbG9yLXBpY2tlci9jb29yZGluYXRlcy5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFxQixNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZHLE9BQU8sRUFBRSxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQzdDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQUV0RDs7R0FFRztBQUtILE1BQU0sT0FBTyx1QkFBdUI7SUFKcEM7UUFLSSxPQUFFLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBR3hCLHNCQUFpQixHQUFHLElBQUksT0FBTyxFQVEzQixDQUFDO1FBRUcsZ0JBQVcsR0FBRyxJQUFJLE9BQU8sRUFJN0IsQ0FBQztRQUVHLG1CQUFjLEdBQUcsS0FBSyxDQUFDO0tBaURsQztJQTVDRyxTQUFTLENBQUMsTUFBYSxFQUFFLENBQVMsRUFBRSxDQUFTO1FBQ3pDLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztRQUMzQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBR0QsU0FBUyxDQUFDLE1BQWEsRUFBRSxDQUFTLEVBQUUsQ0FBUztRQUN6QyxJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztZQUN0QixNQUFNLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFDNUMsQ0FBQztJQUNMLENBQUM7SUFHRCxPQUFPO1FBQ0gsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7SUFDaEMsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXO2FBQ3RCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssT0FBTyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxLQUFLLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUMzRixTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsWUFBWSxDQUFDLENBQVMsRUFBRSxDQUFTLEVBQUUsTUFBYTtRQUM1QyxNQUFNLGNBQWMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUM7UUFDekQsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLENBQUMsWUFBWSxDQUFDO1FBQzNELE1BQU0sSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLHFCQUFxQixFQUFFLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMzRixNQUFNLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsRUFBRSxDQUFDLEdBQUcsR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDekYsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQztZQUN4QixDQUFDO1lBQ0QsQ0FBQztZQUNELEdBQUc7WUFDSCxJQUFJO1lBQ0osZUFBZTtZQUNmLGNBQWM7WUFDZCxNQUFNO1NBQ1QsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsR0FBRyxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQzVCLENBQUM7K0dBcEVRLHVCQUF1QjttR0FBdkIsdUJBQXVCOzs0RkFBdkIsdUJBQXVCO2tCQUpuQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFVBQVUsRUFBRSxJQUFJO2lCQUNuQjs4QkFLRyxpQkFBaUI7c0JBRGhCLE1BQU07Z0JBc0JQLFNBQVM7c0JBRFIsWUFBWTt1QkFBQyxXQUFXLEVBQUUsQ0FBQyxRQUFRLEVBQUUsY0FBYyxFQUFFLGNBQWMsQ0FBQztnQkFRckUsU0FBUztzQkFEUixZQUFZO3VCQUFDLGtCQUFrQixFQUFFLENBQUMsUUFBUSxFQUFFLGNBQWMsRUFBRSxjQUFjLENBQUM7Z0JBUzVFLE9BQU87c0JBRE4sWUFBWTt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEhvc3RMaXN0ZW5lciwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1t0aHlDb2xvckNvb3JkaW5hdGVzXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBUaHlDb29yZGluYXRlc0RpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBlbCA9IGluamVjdChFbGVtZW50UmVmKTtcblxuICAgIEBPdXRwdXQoKVxuICAgIGNvb3JkaW5hdGVzQ2hhbmdlID0gbmV3IFN1YmplY3Q8e1xuICAgICAgICB4OiBudW1iZXI7XG4gICAgICAgIHk6IG51bWJlcjtcbiAgICAgICAgbGVmdDogbnVtYmVyO1xuICAgICAgICB0b3A6IG51bWJlcjtcbiAgICAgICAgY29udGFpbmVyV2lkdGg6IG51bWJlcjtcbiAgICAgICAgY29udGFpbmVySGVpZ2h0OiBudW1iZXI7XG4gICAgICAgICRldmVudDogYW55O1xuICAgIH0+KCk7XG5cbiAgICBwcml2YXRlIG1vdXNlY2hhbmdlID0gbmV3IFN1YmplY3Q8e1xuICAgICAgICB4OiBudW1iZXI7XG4gICAgICAgIHk6IG51bWJlcjtcbiAgICAgICAgJGV2ZW50OiBhbnk7XG4gICAgfT4oKTtcblxuICAgIHByaXZhdGUgbW91c2VMaXN0ZW5pbmcgPSBmYWxzZTtcblxuICAgIHByaXZhdGUgc3ViPzogU3Vic2NyaXB0aW9uO1xuXG4gICAgQEhvc3RMaXN0ZW5lcignbW91c2Vkb3duJywgWyckZXZlbnQnLCAnJGV2ZW50LnBhZ2VYJywgJyRldmVudC5wYWdlWSddKVxuICAgIG1vdXNlZG93bigkZXZlbnQ6IEV2ZW50LCB4OiBudW1iZXIsIHk6IG51bWJlcikge1xuICAgICAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgdGhpcy5tb3VzZUxpc3RlbmluZyA9IHRydWU7XG4gICAgICAgIHRoaXMubW91c2VjaGFuZ2UubmV4dCh7IHgsIHksICRldmVudCB9KTtcbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCd3aW5kb3c6bW91c2Vtb3ZlJywgWyckZXZlbnQnLCAnJGV2ZW50LnBhZ2VYJywgJyRldmVudC5wYWdlWSddKVxuICAgIG1vdXNlbW92ZSgkZXZlbnQ6IEV2ZW50LCB4OiBudW1iZXIsIHk6IG51bWJlcikge1xuICAgICAgICBpZiAodGhpcy5tb3VzZUxpc3RlbmluZykge1xuICAgICAgICAgICAgJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB0aGlzLm1vdXNlY2hhbmdlLm5leHQoeyB4LCB5LCAkZXZlbnQgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBASG9zdExpc3RlbmVyKCd3aW5kb3c6bW91c2V1cCcpXG4gICAgbW91c2V1cCgpIHtcbiAgICAgICAgdGhpcy5tb3VzZUxpc3RlbmluZyA9IGZhbHNlO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLnN1YiA9IHRoaXMubW91c2VjaGFuZ2VcbiAgICAgICAgICAgIC5waXBlKGRpc3RpbmN0VW50aWxDaGFuZ2VkKChsYXN0LCBjdXJyZW50KSA9PiBsYXN0LnggPT09IGN1cnJlbnQueCAmJiBsYXN0LnkgPT09IGN1cnJlbnQueSkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKG4gPT4gdGhpcy5oYW5kbGVDaGFuZ2Uobi54LCBuLnksIG4uJGV2ZW50KSk7XG4gICAgfVxuXG4gICAgaGFuZGxlQ2hhbmdlKHg6IG51bWJlciwgeTogbnVtYmVyLCAkZXZlbnQ6IEV2ZW50KSB7XG4gICAgICAgIGNvbnN0IGNvbnRhaW5lcldpZHRoID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoO1xuICAgICAgICBjb25zdCBjb250YWluZXJIZWlnaHQgPSB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY2xpZW50SGVpZ2h0O1xuICAgICAgICBjb25zdCBsZWZ0ID0geCAtICh0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCkubGVmdCArIHdpbmRvdy5wYWdlWE9mZnNldCk7XG4gICAgICAgIGNvbnN0IHRvcCA9IHkgLSAodGhpcy5lbC5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLnRvcCArIHdpbmRvdy5wYWdlWU9mZnNldCk7XG4gICAgICAgIHRoaXMuY29vcmRpbmF0ZXNDaGFuZ2UubmV4dCh7XG4gICAgICAgICAgICB4LFxuICAgICAgICAgICAgeSxcbiAgICAgICAgICAgIHRvcCxcbiAgICAgICAgICAgIGxlZnQsXG4gICAgICAgICAgICBjb250YWluZXJIZWlnaHQsXG4gICAgICAgICAgICBjb250YWluZXJXaWR0aCxcbiAgICAgICAgICAgICRldmVudFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdWI/LnVuc3Vic2NyaWJlKCk7XG4gICAgfVxufVxuIl19
|