@tetacom/ng-components 1.4.22 → 1.5.1
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/.eslintrc.json +3 -5
- package/component/dropdown/dropdown-base.d.ts +1 -1
- package/directive/dynamic-content-base.directive.d.ts +1 -1
- package/directive/only-number/only-number.directive.d.ts +1 -0
- package/fesm2022/tetacom-ng-components.mjs +533 -497
- package/fesm2022/tetacom-ng-components.mjs.map +1 -1
- package/package.json +3 -5
- package/pipe/prepend-zero/prepend-zero.pipe.d.ts +7 -0
- package/pipe/prepend-zero/public-api.d.ts +1 -0
- package/pipe/public-api.d.ts +1 -0
- package/style/badge.scss +6 -4
- package/style/checkbox.scss +3 -1
- package/style/chips.scss +3 -1
- package/style/icon.scss +3 -1
- package/style/message.scss +3 -1
- package/style/navigation.scss +3 -1
- package/style/presets/view-types.scss +3 -1
- package/style/toggle.scss +3 -1
- package/style/toolbar.scss +3 -1
- package/esm2022/common/contract/auto-close-ignore-case.mjs +0 -2
- package/esm2022/common/contract/constructor-type.mjs +0 -2
- package/esm2022/common/contract/dynamic-data.mjs +0 -10
- package/esm2022/common/contract/i-dictionary.mjs +0 -2
- package/esm2022/common/contract/i-id-name.mjs +0 -2
- package/esm2022/common/contract/i-id.mjs +0 -2
- package/esm2022/common/contract/i-rect.mjs +0 -2
- package/esm2022/common/contract/i-tree-data.mjs +0 -2
- package/esm2022/common/contract/public-api.mjs +0 -10
- package/esm2022/common/contract/teta-content-ref.mjs +0 -8
- package/esm2022/common/enum/align.enum.mjs +0 -13
- package/esm2022/common/enum/public-api.mjs +0 -4
- package/esm2022/common/enum/teta-size.enum.mjs +0 -9
- package/esm2022/common/enum/vertical-align.enum.mjs +0 -11
- package/esm2022/common/model/public-api.mjs +0 -2
- package/esm2022/common/model/view-type.model.mjs +0 -2
- package/esm2022/common/public-api.mjs +0 -6
- package/esm2022/common/service/click.service.mjs +0 -23
- package/esm2022/common/service/dynamic-component.service.mjs +0 -93
- package/esm2022/common/service/overlay-container.service.mjs +0 -41
- package/esm2022/common/service/public-api.mjs +0 -4
- package/esm2022/common/util/array-util.mjs +0 -121
- package/esm2022/common/util/dom-util.mjs +0 -19
- package/esm2022/common/util/position-util.mjs +0 -136
- package/esm2022/common/util/public-api.mjs +0 -4
- package/esm2022/component/accordion/accordion/accordion.component.mjs +0 -17
- package/esm2022/component/accordion/accordion-content.directive.mjs +0 -17
- package/esm2022/component/accordion/accordion-head/accordion-head.component.mjs +0 -51
- package/esm2022/component/accordion/accordion-item/accordion-item.component.mjs +0 -62
- package/esm2022/component/accordion/public-api.mjs +0 -5
- package/esm2022/component/autocomplete/autocomplete/autocomplete.component.mjs +0 -13
- package/esm2022/component/autocomplete/public-api.mjs +0 -2
- package/esm2022/component/avatar/avatar/avatar.component.mjs +0 -55
- package/esm2022/component/avatar/model/avatar-color.enum.mjs +0 -22
- package/esm2022/component/avatar/public-api.mjs +0 -2
- package/esm2022/component/button/button/button.component.mjs +0 -67
- package/esm2022/component/button/public-api.mjs +0 -2
- package/esm2022/component/chart-3d/chart3d/chart3d.component.mjs +0 -241
- package/esm2022/component/chart-3d/model/base-3d-point.mjs +0 -2
- package/esm2022/component/chart-3d/model/chart-3d-options.mjs +0 -7
- package/esm2022/component/chart-3d/model/public-api.mjs +0 -3
- package/esm2022/component/chart-3d/model/series-3d.mjs +0 -7
- package/esm2022/component/chart-3d/public-api.mjs +0 -3
- package/esm2022/component/checkbox/checkbox/checkbox.component.mjs +0 -137
- package/esm2022/component/checkbox/public-api.mjs +0 -2
- package/esm2022/component/date-picker/base-calendar.mjs +0 -121
- package/esm2022/component/date-picker/base-picker.mjs +0 -109
- package/esm2022/component/date-picker/date-picker/date-calendar/date-calendar.component.mjs +0 -50
- package/esm2022/component/date-picker/date-picker/date-picker.component.mjs +0 -228
- package/esm2022/component/date-picker/date-range/date-range.component.mjs +0 -233
- package/esm2022/component/date-picker/date-range/range-calendar/range-calendar.component.mjs +0 -118
- package/esm2022/component/date-picker/day-picker/day-item/day-item.component.mjs +0 -15
- package/esm2022/component/date-picker/day-picker/day-picker.component.mjs +0 -118
- package/esm2022/component/date-picker/model/date-period.mjs +0 -7
- package/esm2022/component/date-picker/model/date-picker-mode.enum.mjs +0 -7
- package/esm2022/component/date-picker/model/day-model.mjs +0 -13
- package/esm2022/component/date-picker/model/from-to.model.mjs +0 -2
- package/esm2022/component/date-picker/model/min-max-date.model.mjs +0 -2
- package/esm2022/component/date-picker/model/public-api.mjs +0 -6
- package/esm2022/component/date-picker/month-picker/month-picker.component.mjs +0 -47
- package/esm2022/component/date-picker/public-api.mjs +0 -6
- package/esm2022/component/date-picker/year-picker/scroll-to-selected-year.directive.mjs +0 -27
- package/esm2022/component/date-picker/year-picker/year-picker.component.mjs +0 -48
- package/esm2022/component/delimiter/delimiter/delimiter.component.mjs +0 -63
- package/esm2022/component/delimiter/public-api.mjs +0 -2
- package/esm2022/component/divider/divider/divider.component.mjs +0 -18
- package/esm2022/component/divider/public-api.mjs +0 -2
- package/esm2022/component/dropdown/dropdown/dropdown.component.mjs +0 -30
- package/esm2022/component/dropdown/dropdown-base.mjs +0 -224
- package/esm2022/component/dropdown/dropdown-content.directive.mjs +0 -18
- package/esm2022/component/dropdown/dropdown-head.directive.mjs +0 -19
- package/esm2022/component/dropdown/dropdown.directive.mjs +0 -38
- package/esm2022/component/dropdown/public-api.mjs +0 -5
- package/esm2022/component/dynamic-component/popup-content/popup-content.component.mjs +0 -53
- package/esm2022/component/dynamic-component/public-api.mjs +0 -2
- package/esm2022/component/expand-card/expand-card/expand-card.component.mjs +0 -34
- package/esm2022/component/expand-card/expand-item/expand-item.component.mjs +0 -25
- package/esm2022/component/expand-card/public-api.mjs +0 -3
- package/esm2022/component/expand-panel/expand-panel/expand-panel.component.mjs +0 -65
- package/esm2022/component/expand-panel/expand-panel-content.directive.mjs +0 -17
- package/esm2022/component/expand-panel/expand-panel-head.directive.mjs +0 -17
- package/esm2022/component/expand-panel/public-api.mjs +0 -4
- package/esm2022/component/file-upload/file-item/file-item.component.mjs +0 -13
- package/esm2022/component/file-upload/file-upload-area/file-upload-area.component.mjs +0 -87
- package/esm2022/component/file-upload/public-api.mjs +0 -3
- package/esm2022/component/filter/base/filter-base.mjs +0 -10
- package/esm2022/component/filter/base/filter-component-base.mjs +0 -3
- package/esm2022/component/filter/boolean-filter/boolean-filter.component.mjs +0 -63
- package/esm2022/component/filter/contarct/boolean-filter.mjs +0 -8
- package/esm2022/component/filter/contarct/date-filter-value.mjs +0 -9
- package/esm2022/component/filter/contarct/date-filter.mjs +0 -11
- package/esm2022/component/filter/contarct/filter-component-map.mjs +0 -15
- package/esm2022/component/filter/contarct/filter-item.mjs +0 -34
- package/esm2022/component/filter/contarct/filter-state.mjs +0 -145
- package/esm2022/component/filter/contarct/i-filter.mjs +0 -2
- package/esm2022/component/filter/contarct/list-filter.mjs +0 -12
- package/esm2022/component/filter/contarct/numeric-filter-value.mjs +0 -10
- package/esm2022/component/filter/contarct/numeric-filter.mjs +0 -9
- package/esm2022/component/filter/contarct/sort-param.mjs +0 -14
- package/esm2022/component/filter/contarct/string-filter.mjs +0 -12
- package/esm2022/component/filter/date-filter/date-filter.component.mjs +0 -64
- package/esm2022/component/filter/enum/filter-type.enum.mjs +0 -10
- package/esm2022/component/filter/enum/list-filter-type.enum.mjs +0 -6
- package/esm2022/component/filter/enum/string-filter-type.enum.mjs +0 -20
- package/esm2022/component/filter/filter-host/filter-host.component.mjs +0 -79
- package/esm2022/component/filter/list-filter/list-filter.component.mjs +0 -96
- package/esm2022/component/filter/numeric-filter/numeric-filter.component.mjs +0 -64
- package/esm2022/component/filter/public-api.mjs +0 -23
- package/esm2022/component/filter/string-filter/string-filter.component.mjs +0 -64
- package/esm2022/component/icon/icon/icon.component.mjs +0 -54
- package/esm2022/component/icon/icon-file/icon-file.component.mjs +0 -27
- package/esm2022/component/icon/icon-sprite.directive.mjs +0 -34
- package/esm2022/component/icon/icon.service.mjs +0 -58
- package/esm2022/component/icon/public-api.mjs +0 -5
- package/esm2022/component/input/color-input/color-input.component.mjs +0 -71
- package/esm2022/component/input/form-group-title/form-group-title.component.mjs +0 -18
- package/esm2022/component/input/input/input.component.mjs +0 -38
- package/esm2022/component/input/public-api.mjs +0 -6
- package/esm2022/component/input/text-field/text-field.component.mjs +0 -94
- package/esm2022/component/message/message/message.component.mjs +0 -76
- package/esm2022/component/message/message-host/message-host.component.mjs +0 -84
- package/esm2022/component/message/message.service.mjs +0 -35
- package/esm2022/component/message/model/message.mjs +0 -23
- package/esm2022/component/message/public-api.mjs +0 -5
- package/esm2022/component/modal/dialog/dialog.component.mjs +0 -46
- package/esm2022/component/modal/dialog.service.mjs +0 -40
- package/esm2022/component/modal/modal-container/modal-container.component.mjs +0 -77
- package/esm2022/component/modal/modal.module.mjs +0 -32
- package/esm2022/component/modal/modal.service.mjs +0 -122
- package/esm2022/component/modal/model/current-modal.mjs +0 -3
- package/esm2022/component/modal/model/i-modal-config.mjs +0 -2
- package/esm2022/component/modal/model/i-modal-result.mjs +0 -2
- package/esm2022/component/modal/model/modal-close-reason.enum.mjs +0 -8
- package/esm2022/component/modal/model/modal-instance.mjs +0 -34
- package/esm2022/component/modal/public-api.mjs +0 -11
- package/esm2022/component/pager/model/pager-state.mjs +0 -51
- package/esm2022/component/pager/pager/pager.component.mjs +0 -13
- package/esm2022/component/pager/public-api.mjs +0 -4
- package/esm2022/component/pager/util/pager-util.mjs +0 -6
- package/esm2022/component/panel/panel/panel.component.mjs +0 -45
- package/esm2022/component/panel/public-api.mjs +0 -2
- package/esm2022/component/progress-bar/progress-bar/progress-bar.component.mjs +0 -130
- package/esm2022/component/progress-bar/public-api.mjs +0 -2
- package/esm2022/component/property-grid/property-grid/property-grid-group/property-grid-group.component.mjs +0 -24
- package/esm2022/component/property-grid/property-grid/property-grid-item/property-grid-item.component.mjs +0 -133
- package/esm2022/component/property-grid/property-grid/property-grid-item-description.directive.mjs +0 -20
- package/esm2022/component/property-grid/property-grid/property-grid.component.mjs +0 -97
- package/esm2022/component/property-grid/public-api.mjs +0 -4
- package/esm2022/component/public-api.mjs +0 -72
- package/esm2022/component/radio/public-api.mjs +0 -3
- package/esm2022/component/radio/radio/radio.component.mjs +0 -240
- package/esm2022/component/radio/radio-button/radio-button.component.mjs +0 -63
- package/esm2022/component/resize-panel/public-api.mjs +0 -2
- package/esm2022/component/resize-panel/resize-panel/resize-panel.component.mjs +0 -166
- package/esm2022/component/select/public-api.mjs +0 -4
- package/esm2022/component/select/select/select.component.mjs +0 -272
- package/esm2022/component/select/select-option.directive.mjs +0 -17
- package/esm2022/component/select/select-value.directive.mjs +0 -17
- package/esm2022/component/sidebar/public-api.mjs +0 -3
- package/esm2022/component/sidebar/sidebar/sidebar.component.mjs +0 -48
- package/esm2022/component/sidebar/sidebar-position.enum.mjs +0 -8
- package/esm2022/component/stepper/public-api.mjs +0 -2
- package/esm2022/component/stepper/stepper/stepper.component.mjs +0 -16
- package/esm2022/component/switch/public-api.mjs +0 -3
- package/esm2022/component/switch/switch/switch.component.mjs +0 -61
- package/esm2022/component/switch/switch-button/switch-button.component.mjs +0 -47
- package/esm2022/component/switch/switch.service.mjs +0 -21
- package/esm2022/component/table/base/cell-component-base.mjs +0 -158
- package/esm2022/component/table/base/detail-component-base.mjs +0 -3
- package/esm2022/component/table/base/head-cell-component-base.mjs +0 -18
- package/esm2022/component/table/cell/cell.component.mjs +0 -28
- package/esm2022/component/table/cell-host/cell-host.component.mjs +0 -56
- package/esm2022/component/table/contract/cell-components-map.mjs +0 -15
- package/esm2022/component/table/contract/column-reorder-event.mjs +0 -7
- package/esm2022/component/table/contract/column-resize-event.mjs +0 -7
- package/esm2022/component/table/contract/head-dropdown-tab.mjs +0 -2
- package/esm2022/component/table/contract/i-cell-coordinates.mjs +0 -2
- package/esm2022/component/table/contract/i-cell-event.mjs +0 -2
- package/esm2022/component/table/contract/i-cell-instance.mjs +0 -2
- package/esm2022/component/table/contract/i-cell-value.mjs +0 -2
- package/esm2022/component/table/contract/public-api.mjs +0 -13
- package/esm2022/component/table/contract/sort-event.mjs +0 -7
- package/esm2022/component/table/contract/table-column-store.mjs +0 -12
- package/esm2022/component/table/contract/table-column.mjs +0 -44
- package/esm2022/component/table/contract/table-row.mjs +0 -7
- package/esm2022/component/table/default/boolean-cell/boolean-cell.component.mjs +0 -39
- package/esm2022/component/table/default/date-cell/date-cell.component.mjs +0 -40
- package/esm2022/component/table/default/date-time-cell/date-time-cell.component.mjs +0 -40
- package/esm2022/component/table/default/default-head-cell/default-head-cell.component.mjs +0 -49
- package/esm2022/component/table/default/list-cell/list-cell.component.mjs +0 -60
- package/esm2022/component/table/default/numeric-cell/numeric-cell.component.mjs +0 -39
- package/esm2022/component/table/default/string-cell/string-cell.component.mjs +0 -40
- package/esm2022/component/table/enum/aggregation-type.enum.mjs +0 -9
- package/esm2022/component/table/enum/edit-event.enum.mjs +0 -7
- package/esm2022/component/table/enum/edit-type.enum.mjs +0 -7
- package/esm2022/component/table/enum/public-api.mjs +0 -5
- package/esm2022/component/table/enum/select-type.enum.mjs +0 -7
- package/esm2022/component/table/head-cell/head-cell.component.mjs +0 -204
- package/esm2022/component/table/head-cell-dropdown/head-cell-dropdown.component.mjs +0 -50
- package/esm2022/component/table/head-cell-host/head-cell-host.component.mjs +0 -60
- package/esm2022/component/table/public-api.mjs +0 -42
- package/esm2022/component/table/selection-cell/selection-cell.component.mjs +0 -46
- package/esm2022/component/table/selection-head-cell/selection-head-cell.component.mjs +0 -45
- package/esm2022/component/table/service/table.service.mjs +0 -650
- package/esm2022/component/table/table/table.component.mjs +0 -470
- package/esm2022/component/table/table-body/table-body.component.mjs +0 -210
- package/esm2022/component/table/table-head/filter-dropdown-tab/filter-dropdown-tab.component.mjs +0 -57
- package/esm2022/component/table/table-head/main-dropdown-tab/main-dropdown-tab.component.mjs +0 -89
- package/esm2022/component/table/table-head/table-head.component.mjs +0 -76
- package/esm2022/component/table/table-head/visibility-dropdown-tab/visibility-dropdown-tab.component.mjs +0 -154
- package/esm2022/component/table/table-head-group/table-head-group.component.mjs +0 -72
- package/esm2022/component/table/table-row/table-row.component.mjs +0 -42
- package/esm2022/component/table/util/public-api.mjs +0 -3
- package/esm2022/component/table/util/state-util.mjs +0 -146
- package/esm2022/component/table/util/table-util.mjs +0 -133
- package/esm2022/component/tabs/public-api.mjs +0 -11
- package/esm2022/component/tabs/tab/tab.component.mjs +0 -42
- package/esm2022/component/tabs/tab-content.directive.mjs +0 -17
- package/esm2022/component/tabs/tab-title.directive.mjs +0 -17
- package/esm2022/component/tabs/tabs/tabs.component.mjs +0 -82
- package/esm2022/component/theme-switch/public-api.mjs +0 -3
- package/esm2022/component/theme-switch/theme-switch/theme-switch.component.mjs +0 -30
- package/esm2022/component/theme-switch/theme-switch.service.mjs +0 -34
- package/esm2022/component/toggle/public-api.mjs +0 -2
- package/esm2022/component/toggle/toggle/toggle.component.mjs +0 -79
- package/esm2022/component/toolbar/public-api.mjs +0 -5
- package/esm2022/component/toolbar/toolbar/toolbar.component.mjs +0 -26
- package/esm2022/component/tree/public-api.mjs +0 -4
- package/esm2022/component/tree/tree/tree.component.mjs +0 -143
- package/esm2022/component/tree/tree-item/tree-item.component.mjs +0 -75
- package/esm2022/component/tree/tree-item-toggle/tree-item-toggle.component.mjs +0 -28
- package/esm2022/component/tree/tree.service.mjs +0 -40
- package/esm2022/directive/auto-position/auto-position.directive.mjs +0 -71
- package/esm2022/directive/auto-position/public-api.mjs +0 -2
- package/esm2022/directive/click-outside/click-outside.directive.mjs +0 -66
- package/esm2022/directive/click-outside/public-api.mjs +0 -2
- package/esm2022/directive/context-menu/context-menu.directive.mjs +0 -119
- package/esm2022/directive/context-menu/public-api.mjs +0 -2
- package/esm2022/directive/disable-control/disable-control.directive.mjs +0 -35
- package/esm2022/directive/disable-control/public-api.mjs +0 -2
- package/esm2022/directive/drag-drop/drag-container.directive.mjs +0 -92
- package/esm2022/directive/drag-drop/drag-drop.service.mjs +0 -145
- package/esm2022/directive/drag-drop/drag-placeholder.directive.mjs +0 -15
- package/esm2022/directive/drag-drop/drag-preview.directive.mjs +0 -17
- package/esm2022/directive/drag-drop/drag.directive.mjs +0 -138
- package/esm2022/directive/drag-drop/model/drag-container-instance.mjs +0 -8
- package/esm2022/directive/drag-drop/model/drag-instance.mjs +0 -7
- package/esm2022/directive/drag-drop/model/drag-process.mjs +0 -2
- package/esm2022/directive/drag-drop/model/drag-selection.mjs +0 -2
- package/esm2022/directive/drag-drop/model/drop-event.mjs +0 -2
- package/esm2022/directive/drag-drop/model/drop-target.mjs +0 -2
- package/esm2022/directive/drag-drop/model/point.mjs +0 -2
- package/esm2022/directive/drag-drop/model/public-api.mjs +0 -8
- package/esm2022/directive/drag-drop/public-api.mjs +0 -7
- package/esm2022/directive/drag-sort/drag-sort-container.directive.mjs +0 -65
- package/esm2022/directive/drag-sort/drag-sort-event.mjs +0 -2
- package/esm2022/directive/drag-sort/drag-sort-item.directive.mjs +0 -111
- package/esm2022/directive/drag-sort/public-api.mjs +0 -4
- package/esm2022/directive/dynamic-content-base.directive.mjs +0 -80
- package/esm2022/directive/highlight/highlight.directive.mjs +0 -72
- package/esm2022/directive/highlight/public-api.mjs +0 -2
- package/esm2022/directive/hint/hint.directive.mjs +0 -102
- package/esm2022/directive/hint/public-api.mjs +0 -2
- package/esm2022/directive/let/let.directive.mjs +0 -39
- package/esm2022/directive/let/public-api.mjs +0 -2
- package/esm2022/directive/loader/loader.directive.mjs +0 -85
- package/esm2022/directive/loader/public-api.mjs +0 -2
- package/esm2022/directive/no-autofill/no-autofill.directive.mjs +0 -31
- package/esm2022/directive/no-autofill/public-api.mjs +0 -2
- package/esm2022/directive/only-number/only-number.directive.mjs +0 -184
- package/esm2022/directive/only-number/public-api.mjs +0 -2
- package/esm2022/directive/public-api.mjs +0 -19
- package/esm2022/directive/resize-drag/public-api.mjs +0 -2
- package/esm2022/directive/resize-drag/resize-drag.directive.mjs +0 -72
- package/esm2022/directive/scroll-into-view/public-api.mjs +0 -2
- package/esm2022/directive/scroll-into-view/scroll-into-view.directive.mjs +0 -41
- package/esm2022/directive/scrollable/public-api.mjs +0 -3
- package/esm2022/directive/scrollable/scrollable/scrollable.component.mjs +0 -98
- package/esm2022/directive/scrollable/scrollable.directive.mjs +0 -20
- package/esm2022/directive/teta-template/public-api.mjs +0 -2
- package/esm2022/directive/teta-template/teta-template.directive.mjs +0 -23
- package/esm2022/directive/tooltip/public-api.mjs +0 -2
- package/esm2022/directive/tooltip/tooltip.directive.mjs +0 -81
- package/esm2022/index.mjs +0 -22
- package/esm2022/locale/en.mjs +0 -50
- package/esm2022/locale/public-api.mjs +0 -5
- package/esm2022/locale/ru.mjs +0 -50
- package/esm2022/locale/teta-config.service.mjs +0 -28
- package/esm2022/locale/teta-localisation.mjs +0 -2
- package/esm2022/observable/animation-frame.mjs +0 -30
- package/esm2022/observable/public-api.mjs +0 -3
- package/esm2022/observable/zone-observable.mjs +0 -15
- package/esm2022/pipe/date-pipe/public-api.mjs +0 -2
- package/esm2022/pipe/date-pipe/teta-date.pipe.mjs +0 -43
- package/esm2022/pipe/number-pipe/number.pipe.mjs +0 -28
- package/esm2022/pipe/number-pipe/public-api.mjs +0 -2
- package/esm2022/pipe/public-api.mjs +0 -4
- package/esm2022/pipe/util/number-helper.mjs +0 -25
- package/esm2022/tetacom-ng-components.mjs +0 -5
- package/esm2022/util/bool-or-func.mjs +0 -13
- package/esm2022/util/date-util.mjs +0 -231
- package/esm2022/util/export-dom-image.mjs +0 -22
- package/esm2022/util/forms-util.mjs +0 -85
- package/esm2022/util/is-function.mjs +0 -4
- package/esm2022/util/public-api.mjs +0 -7
- package/esm2022/util/string-util.mjs +0 -9
|
@@ -1,272 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ElementRef, forwardRef, HostBinding, Input, } from '@angular/core';
|
|
2
|
-
import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
|
|
3
|
-
import { Align } from '../../../common/enum/align.enum';
|
|
4
|
-
import { VerticalAlign } from '../../../common/enum/vertical-align.enum';
|
|
5
|
-
import { TetaConfigService } from '../../../locale/teta-config.service';
|
|
6
|
-
import { SelectOptionDirective } from '../select-option.directive';
|
|
7
|
-
import { SelectValueDirective } from '../select-value.directive';
|
|
8
|
-
import { HighlightDirective } from '../../../directive/highlight/highlight.directive';
|
|
9
|
-
import { ScrollableDirective } from '../../../directive/scrollable/scrollable.directive';
|
|
10
|
-
import { CdkVirtualScrollViewport, CdkFixedSizeVirtualScroll, CdkVirtualForOf } from '@angular/cdk/scrolling';
|
|
11
|
-
import { ScrollableComponent } from '../../../directive/scrollable/scrollable/scrollable.component';
|
|
12
|
-
import { TextFieldComponent } from '../../input/text-field/text-field.component';
|
|
13
|
-
import { DropdownContentDirective } from '../../dropdown/dropdown-content.directive';
|
|
14
|
-
import { NgTemplateOutlet, AsyncPipe } from '@angular/common';
|
|
15
|
-
import { IconComponent } from '../../icon/icon/icon.component';
|
|
16
|
-
import { DropdownHeadDirective } from '../../dropdown/dropdown-head.directive';
|
|
17
|
-
import { DropdownComponent } from '../../dropdown/dropdown/dropdown.component';
|
|
18
|
-
import { LetDirective } from '../../../directive/let/let.directive';
|
|
19
|
-
import * as i0 from "@angular/core";
|
|
20
|
-
import * as i1 from "../../../locale/teta-config.service";
|
|
21
|
-
import * as i2 from "@angular/forms";
|
|
22
|
-
export class SelectComponent {
|
|
23
|
-
set options(options) {
|
|
24
|
-
this._options = options;
|
|
25
|
-
if (this._internalValue !== null && this._internalValue !== undefined && this.options) {
|
|
26
|
-
this.getSelectedValue(this._internalValue);
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
get options() {
|
|
30
|
-
return this._options;
|
|
31
|
-
}
|
|
32
|
-
get tabindex() {
|
|
33
|
-
return this.disabled ? null : 0;
|
|
34
|
-
}
|
|
35
|
-
get isDisabled() {
|
|
36
|
-
return this.disabled;
|
|
37
|
-
}
|
|
38
|
-
get visibleOptions() {
|
|
39
|
-
if (!this.searchText) {
|
|
40
|
-
return this.options;
|
|
41
|
-
}
|
|
42
|
-
return this.options?.filter((option) => this.getSearchString(option).toLowerCase().indexOf(this.searchText.toLowerCase()) >= 0);
|
|
43
|
-
}
|
|
44
|
-
constructor(_cdr, _elementRef, _config) {
|
|
45
|
-
this._cdr = _cdr;
|
|
46
|
-
this._elementRef = _elementRef;
|
|
47
|
-
this._config = _config;
|
|
48
|
-
this.align = Align.minWidth;
|
|
49
|
-
this.verticalAlign = VerticalAlign.auto;
|
|
50
|
-
this.autoClose = true;
|
|
51
|
-
this.autoCloseIgnore = ['inside'];
|
|
52
|
-
this.itemSize = 32;
|
|
53
|
-
this.allowNull = true;
|
|
54
|
-
this.viewType = 'rounded';
|
|
55
|
-
this.open = false;
|
|
56
|
-
this.selectClass = true;
|
|
57
|
-
this.onChange = () => { };
|
|
58
|
-
this.onTouched = () => { };
|
|
59
|
-
this.locale = this._config.locale;
|
|
60
|
-
}
|
|
61
|
-
clear() {
|
|
62
|
-
let val;
|
|
63
|
-
if (this.multiple === true) {
|
|
64
|
-
val = [];
|
|
65
|
-
}
|
|
66
|
-
else {
|
|
67
|
-
val = null;
|
|
68
|
-
}
|
|
69
|
-
this.value = val;
|
|
70
|
-
this.onChange(this.value);
|
|
71
|
-
this.open = false;
|
|
72
|
-
this._cdr.markForCheck();
|
|
73
|
-
this._cdr.detectChanges();
|
|
74
|
-
}
|
|
75
|
-
clickOption(option, event) {
|
|
76
|
-
if (this.multiple === true) {
|
|
77
|
-
if (!this.value?.length) {
|
|
78
|
-
this.value = [];
|
|
79
|
-
}
|
|
80
|
-
if (this.value.indexOf(option) >= 0) {
|
|
81
|
-
this.removeItem(option);
|
|
82
|
-
}
|
|
83
|
-
else {
|
|
84
|
-
this.value = [...this.value, option];
|
|
85
|
-
}
|
|
86
|
-
this._internalValue = this.value.map((_) => this.getValue(_));
|
|
87
|
-
this.onChange(this._internalValue);
|
|
88
|
-
}
|
|
89
|
-
else {
|
|
90
|
-
this.value = option;
|
|
91
|
-
this._internalValue = this.getValue(this.value);
|
|
92
|
-
this.onChange(this._internalValue);
|
|
93
|
-
this.open = false;
|
|
94
|
-
}
|
|
95
|
-
this._cdr.markForCheck();
|
|
96
|
-
this._cdr.detectChanges();
|
|
97
|
-
}
|
|
98
|
-
itemSelected(option) {
|
|
99
|
-
if (this.multiple) {
|
|
100
|
-
return this.value?.indexOf(option) >= 0;
|
|
101
|
-
}
|
|
102
|
-
else {
|
|
103
|
-
return this.value === option;
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
removeItemClick(option, event) {
|
|
107
|
-
event.stopPropagation();
|
|
108
|
-
this.removeItem(option);
|
|
109
|
-
this._internalValue = this.value.map((_) => this.getValue(_));
|
|
110
|
-
this.onChange(this._internalValue);
|
|
111
|
-
}
|
|
112
|
-
removeItem(option) {
|
|
113
|
-
this.value = this.value.filter((_) => _ !== option);
|
|
114
|
-
}
|
|
115
|
-
search(text) {
|
|
116
|
-
this.searchText = text;
|
|
117
|
-
}
|
|
118
|
-
getText(option) {
|
|
119
|
-
if (option == null) {
|
|
120
|
-
return '';
|
|
121
|
-
}
|
|
122
|
-
switch (typeof this.textRef) {
|
|
123
|
-
case 'string':
|
|
124
|
-
return option[this.textRef];
|
|
125
|
-
case 'function':
|
|
126
|
-
return this.textRef(option);
|
|
127
|
-
default:
|
|
128
|
-
return option;
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
getValue(option) {
|
|
132
|
-
switch (typeof this.valueRef) {
|
|
133
|
-
case 'string':
|
|
134
|
-
return option[this.valueRef];
|
|
135
|
-
case 'function':
|
|
136
|
-
return this.valueRef(option);
|
|
137
|
-
default:
|
|
138
|
-
return option;
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
|
-
getSearchString(option) {
|
|
142
|
-
switch (typeof this.searchRef) {
|
|
143
|
-
case 'string':
|
|
144
|
-
return option[this.searchRef];
|
|
145
|
-
case 'function':
|
|
146
|
-
return this.searchRef(option);
|
|
147
|
-
default:
|
|
148
|
-
return '';
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
focus() {
|
|
152
|
-
this._elementRef.nativeElement.focus();
|
|
153
|
-
}
|
|
154
|
-
writeValue(value) {
|
|
155
|
-
this._internalValue = value;
|
|
156
|
-
this.getSelectedValue(value);
|
|
157
|
-
this._cdr.detectChanges();
|
|
158
|
-
}
|
|
159
|
-
registerOnChange(fn) {
|
|
160
|
-
this.onChange = fn;
|
|
161
|
-
}
|
|
162
|
-
registerOnTouched(fn) {
|
|
163
|
-
this.onTouched = fn;
|
|
164
|
-
}
|
|
165
|
-
setDisabledState(isDisabled) {
|
|
166
|
-
this.disabled = isDisabled;
|
|
167
|
-
this._cdr.markForCheck();
|
|
168
|
-
}
|
|
169
|
-
getSelectedValue(value) {
|
|
170
|
-
if (this.multiple) {
|
|
171
|
-
this.value =
|
|
172
|
-
value && this.options ? this.options.filter((option) => value.indexOf(this.getValue(option)) > -1) : [];
|
|
173
|
-
}
|
|
174
|
-
else {
|
|
175
|
-
this.value = this.options && this.options?.find((option) => this.getValue(option) === value);
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: SelectComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i1.TetaConfigService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
179
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.1", type: SelectComponent, isStandalone: true, selector: "teta-select", inputs: { multiple: "multiple", options: "options", invalid: "invalid", align: "align", verticalAlign: "verticalAlign", autoClose: "autoClose", autoCloseIgnore: "autoCloseIgnore", disabled: "disabled", itemSize: "itemSize", virtual: "virtual", icon: "icon", placeholder: "placeholder", appendToBody: "appendToBody", allowNull: "allowNull", viewType: "viewType", notFoundText: "notFoundText", valueRef: "valueRef", textRef: "textRef", searchRef: "searchRef" }, host: { properties: { "class.select_multiple": "this.multiple", "class.select_open": "this.open", "class.select": "this.selectClass", "tabindex": "this.tabindex", "class.select_disabled": "this.isDisabled" } }, providers: [
|
|
180
|
-
{
|
|
181
|
-
provide: NG_VALUE_ACCESSOR,
|
|
182
|
-
useExisting: forwardRef(() => SelectComponent),
|
|
183
|
-
multi: true,
|
|
184
|
-
},
|
|
185
|
-
], queries: [{ propertyName: "optionDirective", first: true, predicate: SelectOptionDirective, descendants: true, static: true }, { propertyName: "valueDirective", first: true, predicate: SelectValueDirective, descendants: true, static: true }], ngImport: i0, template: "@if (locale | async; as loc) {\n <teta-dropdown\n [align]=\"align\"\n [verticalAlign]=\"verticalAlign\"\n [autoClose]=\"autoClose\"\n [autoCloseIgnore]=\"autoCloseIgnore\"\n [(open)]=\"open\"\n [appendToBody]=\"appendToBody\"\n [disabled]=\"disabled\"\n [viewType]=\"viewType\"\n class=\"row row_auto\"\n >\n <div tetaDropdownHead [class]=\"'row row_auto select-head select_' + viewType\" [class.select-head_invalid]=\"invalid\">\n <div class=\"row_auto flex align-center\">\n @if (icon) {\n <teta-icon [name]=\"icon\" [palette]=\"'text'\" class=\"margin-right-1\"></teta-icon>\n }\n @if ((value === null || value === undefined || value?.length === 0) && !multiple) {\n <span class=\"placeholder\">\n {{ placeholder || loc.notSelected }}\n </span>\n }\n <ng-container\n *ngTemplateOutlet=\"\n valueDirective ? valueDirective.template : valueDefault;\n context: { $implicit: value, value: value }\n \"\n ></ng-container>\n </div>\n <teta-icon [name]=\"'arrowDownSmall'\" [palette]=\"'text'\"></teta-icon>\n </div>\n @if (options?.length) {\n <div tetaDropdownContent class=\"select-body row_auto\" (click)=\"$event.preventDefault()\">\n @if (searchRef) {\n <div class=\"select-search padding-h-2 padding-top-2\">\n <teta-text-field\n [ngModel]=\"searchText\"\n [class]=\"'select_' + viewType\"\n (ngModelChange)=\"search($event)\"\n [placeholder]=\"loc.search\"\n [leftIconName]=\"'search'\"\n ></teta-text-field>\n </div>\n }\n @if (visibleOptions?.length) {\n @if (!multiple && allowNull) {\n <div [class]=\"'margin-h-2 list-item list-item_interactive select_' + viewType\" (click)=\"clear()\">\n {{ loc.notSelected }}\n </div>\n <div class=\"list-divider margin-bottom-0\"></div>\n }\n @if (virtual) {\n <teta-scrollable class=\"column column_auto\">\n <cdk-virtual-scroll-viewport tetaScrollable [itemSize]=\"40\" minBufferPx=\"200\" maxBufferPx=\"600\">\n <div\n [class]=\"'list-item list-item_interactive justify-content-between select_' + viewType\"\n *cdkVirtualFor=\"let option of visibleOptions; templateCacheSize: 0\"\n [class.list-item_active]=\"itemSelected(option)\"\n [tetaHighlight]=\"searchText\"\n (click)=\"clickOption(option, $event)\"\n >\n <div [tetaHighlight]=\"searchText\">\n <ng-container\n *ngTemplateOutlet=\"\n optionDirective ? optionDirective.template : optionDefault;\n context: { $implicit: option, option: option }\n \"\n >\n </ng-container>\n </div>\n @if (itemSelected(option)) {\n <teta-icon [name]=\"'tick'\" [palette]=\"'text'\" class=\"margin-left-2\"></teta-icon>\n }\n </div>\n </cdk-virtual-scroll-viewport>\n </teta-scrollable>\n } @else {\n <teta-scrollable class=\"column column_auto\" [contentClass]=\"['column', 'column_auto']\">\n <div class=\"list\">\n @for (option of visibleOptions; track option) {\n <div\n [class]=\"'list-item list-item_interactive justify-content-between select_' + viewType\"\n [class.list-item_active]=\"itemSelected(option)\"\n (click)=\"clickOption(option, $event)\"\n >\n <span [tetaHighlight]=\"searchText\">\n <ng-container\n *ngTemplateOutlet=\"\n optionDirective ? optionDirective.template : optionDefault;\n context: { $implicit: option, option: option }\n \"\n >\n </ng-container>\n </span>\n @if (itemSelected(option) && multiple) {\n <teta-icon [name]=\"'tick'\" [palette]=\"'text'\"></teta-icon>\n }\n </div>\n }\n </div>\n </teta-scrollable>\n }\n } @else {\n <p class=\"padding-h-3 text-overflow-ellipsis overflow-hidden select-not-found-option\">\n {{ notFoundText || loc.notFound }}\n </p>\n }\n @if (multiple && value?.length) {\n <div class=\"row row_auto select-chip-field flex-wrap\">\n @for (item of value; track item) {\n <div class=\"tag\">\n <p>{{ getText(item) }}</p>\n <teta-icon\n class=\"cursor-pointer\"\n [palette]=\"'text'\"\n [name]=\"'closeCircle'\"\n (click)=\"removeItemClick(item, $event)\"\n ></teta-icon>\n </div>\n }\n </div>\n }\n </div>\n }\n </teta-dropdown>\n <ng-template #notFound>\n <p class=\"padding-h-3 text-overflow-ellipsis overflow-hidden select-not-found-option\">\n {{ notFoundText || loc.notFound }}\n </p>\n </ng-template>\n <ng-template #optionDefault let-option>\n {{ getText(option) }}\n </ng-template>\n <ng-template #valueDefault let-value>\n @if (multiple) {\n <div class=\"row_auto overflow-hidden text-overflow-ellipsis\">\n {{ loc.selected + ' ' + value?.length }}\n </div>\n }\n @if (!multiple) {\n <span class=\"row row_auto overflow-hidden text-overflow-ellipsis\">{{ getText(value) }}</span>\n }\n </ng-template>\n}\n", styles: [""], dependencies: [{ kind: "component", type: DropdownComponent, selector: "teta-dropdown", exportAs: ["dropdown"] }, { kind: "directive", type: DropdownHeadDirective, selector: "[tetaDropdownHead]" }, { kind: "component", type: IconComponent, selector: "teta-icon", inputs: ["name", "size", "palette", "class"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: DropdownContentDirective, selector: "[tetaDropdownContent]" }, { kind: "component", type: TextFieldComponent, selector: "teta-text-field", inputs: ["placeholder", "leftIconName", "disabled", "onlyNumber", "decimalPart", "invalid"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: ScrollableComponent, selector: "teta-scrollable", inputs: ["direction", "showScrollbars", "contentClass"], outputs: ["scroll"] }, { kind: "component", type: CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "directive", type: CdkFixedSizeVirtualScroll, selector: "cdk-virtual-scroll-viewport[itemSize]", inputs: ["itemSize", "minBufferPx", "maxBufferPx"] }, { kind: "directive", type: ScrollableDirective, selector: "[tetaScrollable]" }, { kind: "directive", type: CdkVirtualForOf, selector: "[cdkVirtualFor][cdkVirtualForOf]", inputs: ["cdkVirtualForOf", "cdkVirtualForTrackBy", "cdkVirtualForTemplate", "cdkVirtualForTemplateCacheSize"] }, { kind: "directive", type: HighlightDirective, selector: "[tetaHighlight]", inputs: ["tetaHighlight"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
186
|
-
}
|
|
187
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: SelectComponent, decorators: [{
|
|
188
|
-
type: Component,
|
|
189
|
-
args: [{ selector: 'teta-select', providers: [
|
|
190
|
-
{
|
|
191
|
-
provide: NG_VALUE_ACCESSOR,
|
|
192
|
-
useExisting: forwardRef(() => SelectComponent),
|
|
193
|
-
multi: true,
|
|
194
|
-
},
|
|
195
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
196
|
-
LetDirective,
|
|
197
|
-
DropdownComponent,
|
|
198
|
-
DropdownHeadDirective,
|
|
199
|
-
IconComponent,
|
|
200
|
-
NgTemplateOutlet,
|
|
201
|
-
DropdownContentDirective,
|
|
202
|
-
TextFieldComponent,
|
|
203
|
-
FormsModule,
|
|
204
|
-
ScrollableComponent,
|
|
205
|
-
CdkVirtualScrollViewport,
|
|
206
|
-
CdkFixedSizeVirtualScroll,
|
|
207
|
-
ScrollableDirective,
|
|
208
|
-
CdkVirtualForOf,
|
|
209
|
-
HighlightDirective,
|
|
210
|
-
AsyncPipe,
|
|
211
|
-
], template: "@if (locale | async; as loc) {\n <teta-dropdown\n [align]=\"align\"\n [verticalAlign]=\"verticalAlign\"\n [autoClose]=\"autoClose\"\n [autoCloseIgnore]=\"autoCloseIgnore\"\n [(open)]=\"open\"\n [appendToBody]=\"appendToBody\"\n [disabled]=\"disabled\"\n [viewType]=\"viewType\"\n class=\"row row_auto\"\n >\n <div tetaDropdownHead [class]=\"'row row_auto select-head select_' + viewType\" [class.select-head_invalid]=\"invalid\">\n <div class=\"row_auto flex align-center\">\n @if (icon) {\n <teta-icon [name]=\"icon\" [palette]=\"'text'\" class=\"margin-right-1\"></teta-icon>\n }\n @if ((value === null || value === undefined || value?.length === 0) && !multiple) {\n <span class=\"placeholder\">\n {{ placeholder || loc.notSelected }}\n </span>\n }\n <ng-container\n *ngTemplateOutlet=\"\n valueDirective ? valueDirective.template : valueDefault;\n context: { $implicit: value, value: value }\n \"\n ></ng-container>\n </div>\n <teta-icon [name]=\"'arrowDownSmall'\" [palette]=\"'text'\"></teta-icon>\n </div>\n @if (options?.length) {\n <div tetaDropdownContent class=\"select-body row_auto\" (click)=\"$event.preventDefault()\">\n @if (searchRef) {\n <div class=\"select-search padding-h-2 padding-top-2\">\n <teta-text-field\n [ngModel]=\"searchText\"\n [class]=\"'select_' + viewType\"\n (ngModelChange)=\"search($event)\"\n [placeholder]=\"loc.search\"\n [leftIconName]=\"'search'\"\n ></teta-text-field>\n </div>\n }\n @if (visibleOptions?.length) {\n @if (!multiple && allowNull) {\n <div [class]=\"'margin-h-2 list-item list-item_interactive select_' + viewType\" (click)=\"clear()\">\n {{ loc.notSelected }}\n </div>\n <div class=\"list-divider margin-bottom-0\"></div>\n }\n @if (virtual) {\n <teta-scrollable class=\"column column_auto\">\n <cdk-virtual-scroll-viewport tetaScrollable [itemSize]=\"40\" minBufferPx=\"200\" maxBufferPx=\"600\">\n <div\n [class]=\"'list-item list-item_interactive justify-content-between select_' + viewType\"\n *cdkVirtualFor=\"let option of visibleOptions; templateCacheSize: 0\"\n [class.list-item_active]=\"itemSelected(option)\"\n [tetaHighlight]=\"searchText\"\n (click)=\"clickOption(option, $event)\"\n >\n <div [tetaHighlight]=\"searchText\">\n <ng-container\n *ngTemplateOutlet=\"\n optionDirective ? optionDirective.template : optionDefault;\n context: { $implicit: option, option: option }\n \"\n >\n </ng-container>\n </div>\n @if (itemSelected(option)) {\n <teta-icon [name]=\"'tick'\" [palette]=\"'text'\" class=\"margin-left-2\"></teta-icon>\n }\n </div>\n </cdk-virtual-scroll-viewport>\n </teta-scrollable>\n } @else {\n <teta-scrollable class=\"column column_auto\" [contentClass]=\"['column', 'column_auto']\">\n <div class=\"list\">\n @for (option of visibleOptions; track option) {\n <div\n [class]=\"'list-item list-item_interactive justify-content-between select_' + viewType\"\n [class.list-item_active]=\"itemSelected(option)\"\n (click)=\"clickOption(option, $event)\"\n >\n <span [tetaHighlight]=\"searchText\">\n <ng-container\n *ngTemplateOutlet=\"\n optionDirective ? optionDirective.template : optionDefault;\n context: { $implicit: option, option: option }\n \"\n >\n </ng-container>\n </span>\n @if (itemSelected(option) && multiple) {\n <teta-icon [name]=\"'tick'\" [palette]=\"'text'\"></teta-icon>\n }\n </div>\n }\n </div>\n </teta-scrollable>\n }\n } @else {\n <p class=\"padding-h-3 text-overflow-ellipsis overflow-hidden select-not-found-option\">\n {{ notFoundText || loc.notFound }}\n </p>\n }\n @if (multiple && value?.length) {\n <div class=\"row row_auto select-chip-field flex-wrap\">\n @for (item of value; track item) {\n <div class=\"tag\">\n <p>{{ getText(item) }}</p>\n <teta-icon\n class=\"cursor-pointer\"\n [palette]=\"'text'\"\n [name]=\"'closeCircle'\"\n (click)=\"removeItemClick(item, $event)\"\n ></teta-icon>\n </div>\n }\n </div>\n }\n </div>\n }\n </teta-dropdown>\n <ng-template #notFound>\n <p class=\"padding-h-3 text-overflow-ellipsis overflow-hidden select-not-found-option\">\n {{ notFoundText || loc.notFound }}\n </p>\n </ng-template>\n <ng-template #optionDefault let-option>\n {{ getText(option) }}\n </ng-template>\n <ng-template #valueDefault let-value>\n @if (multiple) {\n <div class=\"row_auto overflow-hidden text-overflow-ellipsis\">\n {{ loc.selected + ' ' + value?.length }}\n </div>\n }\n @if (!multiple) {\n <span class=\"row row_auto overflow-hidden text-overflow-ellipsis\">{{ getText(value) }}</span>\n }\n </ng-template>\n}\n" }]
|
|
212
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i1.TetaConfigService }], propDecorators: { multiple: [{
|
|
213
|
-
type: HostBinding,
|
|
214
|
-
args: ['class.select_multiple']
|
|
215
|
-
}, {
|
|
216
|
-
type: Input
|
|
217
|
-
}], options: [{
|
|
218
|
-
type: Input
|
|
219
|
-
}], invalid: [{
|
|
220
|
-
type: Input
|
|
221
|
-
}], align: [{
|
|
222
|
-
type: Input
|
|
223
|
-
}], verticalAlign: [{
|
|
224
|
-
type: Input
|
|
225
|
-
}], autoClose: [{
|
|
226
|
-
type: Input
|
|
227
|
-
}], autoCloseIgnore: [{
|
|
228
|
-
type: Input
|
|
229
|
-
}], disabled: [{
|
|
230
|
-
type: Input
|
|
231
|
-
}], itemSize: [{
|
|
232
|
-
type: Input
|
|
233
|
-
}], virtual: [{
|
|
234
|
-
type: Input
|
|
235
|
-
}], icon: [{
|
|
236
|
-
type: Input
|
|
237
|
-
}], placeholder: [{
|
|
238
|
-
type: Input
|
|
239
|
-
}], appendToBody: [{
|
|
240
|
-
type: Input
|
|
241
|
-
}], allowNull: [{
|
|
242
|
-
type: Input
|
|
243
|
-
}], viewType: [{
|
|
244
|
-
type: Input
|
|
245
|
-
}], notFoundText: [{
|
|
246
|
-
type: Input
|
|
247
|
-
}], valueRef: [{
|
|
248
|
-
type: Input
|
|
249
|
-
}], textRef: [{
|
|
250
|
-
type: Input
|
|
251
|
-
}], searchRef: [{
|
|
252
|
-
type: Input
|
|
253
|
-
}], optionDirective: [{
|
|
254
|
-
type: ContentChild,
|
|
255
|
-
args: [SelectOptionDirective, { static: true }]
|
|
256
|
-
}], valueDirective: [{
|
|
257
|
-
type: ContentChild,
|
|
258
|
-
args: [SelectValueDirective, { static: true }]
|
|
259
|
-
}], open: [{
|
|
260
|
-
type: HostBinding,
|
|
261
|
-
args: ['class.select_open']
|
|
262
|
-
}], selectClass: [{
|
|
263
|
-
type: HostBinding,
|
|
264
|
-
args: ['class.select']
|
|
265
|
-
}], tabindex: [{
|
|
266
|
-
type: HostBinding,
|
|
267
|
-
args: ['tabindex']
|
|
268
|
-
}], isDisabled: [{
|
|
269
|
-
type: HostBinding,
|
|
270
|
-
args: ['class.select_disabled']
|
|
271
|
-
}] } });
|
|
272
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc2VsZWN0L3NlbGVjdC9zZWxlY3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudC9zZWxlY3Qvc2VsZWN0L3NlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixVQUFVLEVBQ1YsV0FBVyxFQUNYLEtBQUssR0FDTixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSXRGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN4RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFekUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFFeEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbkUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDakUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDdEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDekYsT0FBTyxFQUFFLHdCQUF3QixFQUFFLHlCQUF5QixFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlHLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLCtEQUErRCxDQUFDO0FBQ3BHLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDZDQUE2QyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDJD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SztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFHTixlQUFlO3NCQURkLFlBQVk7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUlyRCxjQUFjO3NCQURiLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUdsQixJQUFJO3NCQUFyQyxXQUFXO3VCQUFDLG1CQUFtQjtnQkFFYyxXQUFXO3NCQUF4RCxXQUFXO3VCQUFDLGNBQWM7Z0JBR2YsUUFBUTtzQkFEbkIsV0FBVzt1QkFBQyxVQUFVO2dCQU1uQixVQUFVO3NCQURiLFdBQVc7dUJBQUMsdUJBQXVCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIENvbnRlbnRDaGlsZCxcbiAgRWxlbWVudFJlZixcbiAgZm9yd2FyZFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiwgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEF1dG9DbG9zZUlnbm9yZUNhc2UgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vY29udHJhY3QvYXV0by1jbG9zZS1pZ25vcmUtY2FzZSc7XG5pbXBvcnQgeyBBbGlnbiB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9lbnVtL2FsaWduLmVudW0nO1xuaW1wb3J0IHsgVmVydGljYWxBbGlnbiB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9lbnVtL3ZlcnRpY2FsLWFsaWduLmVudW0nO1xuaW1wb3J0IHsgdmlld1R5cGUgfSBmcm9tICcuLi8uLi8uLi9jb21tb24vbW9kZWwvdmlldy10eXBlLm1vZGVsJztcbmltcG9ydCB7IFRldGFDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vbG9jYWxlL3RldGEtY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgVGV0YUxvY2FsaXNhdGlvbiB9IGZyb20gJy4uLy4uLy4uL2xvY2FsZS90ZXRhLWxvY2FsaXNhdGlvbic7XG5pbXBvcnQgeyBTZWxlY3RPcHRpb25EaXJlY3RpdmUgfSBmcm9tICcuLi9zZWxlY3Qtb3B0aW9uLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBTZWxlY3RWYWx1ZURpcmVjdGl2ZSB9IGZyb20gJy4uL3NlbGVjdC12YWx1ZS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgSGlnaGxpZ2h0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vLi4vZGlyZWN0aXZlL2hpZ2hsaWdodC9oaWdobGlnaHQuZGlyZWN0aXZlJztcbmltcG9ydCB7IFNjcm9sbGFibGVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvc2Nyb2xsYWJsZS9zY3JvbGxhYmxlLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBDZGtWaXJ0dWFsU2Nyb2xsVmlld3BvcnQsIENka0ZpeGVkU2l6ZVZpcnR1YWxTY3JvbGwsIENka1ZpcnR1YWxGb3JPZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9zY3JvbGxpbmcnO1xuaW1wb3J0IHsgU2Nyb2xsYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2RpcmVjdGl2ZS9zY3JvbGxhYmxlL3Njcm9sbGFibGUvc2Nyb2xsYWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vaW5wdXQvdGV4dC1maWVsZC90ZXh0LWZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEcm9wZG93bkNvbnRlbnREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kcm9wZG93bi9kcm9wZG93bi1jb250ZW50LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0LCBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2ljb24vaWNvbi9pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEcm9wZG93bkhlYWREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kcm9wZG93bi9kcm9wZG93bi1oZWFkLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Ryb3Bkb3duL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMZXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi9kaXJlY3RpdmUvbGV0L2xldC5kaXJlY3RpdmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXRhLXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zZWxlY3QuY29tcG9uZW50LnNjc3MnXSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBTZWxlY3RDb21wb25lbnQpLFxuICAgICAgbXVsdGk6IHRydWUsXG4gICAgfSxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBMZXREaXJlY3RpdmUsXG4gICAgRHJvcGRvd25Db21wb25lbnQsXG4gICAgRHJvcGRvd25IZWFkRGlyZWN0aXZlLFxuICAgIEljb25Db21wb25lbnQsXG4gICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICBEcm9wZG93bkNvbnRlbnREaXJlY3RpdmUsXG4gICAgVGV4dEZpZWxkQ29tcG9uZW50LFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIFNjcm9sbGFibGVDb21wb25lbnQsXG4gICAgQ2RrVmlydHVhbFNjcm9sbFZpZXdwb3J0LFxuICAgIENka0ZpeGVkU2l6ZVZpcnR1YWxTY3JvbGwsXG4gICAgU2Nyb2xsYWJsZURpcmVjdGl2ZSxcbiAgICBDZGtWaXJ0dWFsRm9yT2YsXG4gICAgSGlnaGxpZ2h0RGlyZWN0aXZlLFxuICAgIEFzeW5jUGlwZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0Q29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNlbGVjdF9tdWx0aXBsZScpXG4gIEBJbnB1dCgpXG4gIG11bHRpcGxlOiBib29sZWFuO1xuXG4gIEBJbnB1dCgpIHNldCBvcHRpb25zKG9wdGlvbnM6IGFueVtdKSB7XG4gICAgdGhpcy5fb3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgaWYgKHRoaXMuX2ludGVybmFsVmFsdWUgIT09IG51bGwgJiYgdGhpcy5faW50ZXJuYWxWYWx1ZSAhPT0gdW5kZWZpbmVkICYmIHRoaXMub3B0aW9ucykge1xuICAgICAgdGhpcy5nZXRTZWxlY3RlZFZhbHVlKHRoaXMuX2ludGVybmFsVmFsdWUpO1xuICAgIH1cbiAgfVxuXG4gIGdldCBvcHRpb25zKCkge1xuICAgIHJldHVybiB0aGlzLl9vcHRpb25zO1xuICB9XG5cbiAgQElucHV0KCkgaW52YWxpZDogYm9vbGVhbjtcbiAgQElucHV0KCkgYWxpZ246IEFsaWduID0gQWxpZ24ubWluV2lkdGg7XG4gIEBJbnB1dCgpIHZlcnRpY2FsQWxpZ246IFZlcnRpY2FsQWxpZ24gPSBWZXJ0aWNhbEFsaWduLmF1dG87XG4gIEBJbnB1dCgpIGF1dG9DbG9zZSA9IHRydWU7XG4gIEBJbnB1dCgpIGF1dG9DbG9zZUlnbm9yZTogQXJyYXk8QXV0b0Nsb3NlSWdub3JlQ2FzZT4gPSBbJ2luc2lkZSddO1xuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbjtcbiAgQElucHV0KCkgaXRlbVNpemUgPSAzMjtcbiAgQElucHV0KCkgdmlydHVhbDogYm9vbGVhbjtcbiAgQElucHV0KCkgaWNvbjogc3RyaW5nO1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICBASW5wdXQoKSBhcHBlbmRUb0JvZHk6IGJvb2xlYW47XG4gIEBJbnB1dCgpIGFsbG93TnVsbCA9IHRydWU7XG4gIEBJbnB1dCgpIHZpZXdUeXBlOiB2aWV3VHlwZSA9ICdyb3VuZGVkJztcbiAgQElucHV0KCkgbm90Rm91bmRUZXh0OiBzdHJpbmc7XG4gIEBJbnB1dCgpIHZhbHVlUmVmOiAoKGl0ZW06IGFueSkgPT4gYW55KSB8IHN0cmluZztcbiAgQElucHV0KCkgdGV4dFJlZjogKChpdGVtOiBhbnkpID0+IHN0cmluZykgfCBzdHJpbmc7XG4gIEBJbnB1dCgpIHNlYXJjaFJlZjogc3RyaW5nIHwgKChpdGVtOiBhbnkpID0+IHN0cmluZyk7XG5cbiAgQENvbnRlbnRDaGlsZChTZWxlY3RPcHRpb25EaXJlY3RpdmUsIHsgc3RhdGljOiB0cnVlIH0pXG4gIG9wdGlvbkRpcmVjdGl2ZTogU2VsZWN0T3B0aW9uRGlyZWN0aXZlO1xuXG4gIEBDb250ZW50Q2hpbGQoU2VsZWN0VmFsdWVEaXJlY3RpdmUsIHsgc3RhdGljOiB0cnVlIH0pXG4gIHZhbHVlRGlyZWN0aXZlOiBTZWxlY3RWYWx1ZURpcmVjdGl2ZTtcblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNlbGVjdF9vcGVuJykgb3BlbiA9IGZhbHNlO1xuXG4gIEBIb3N0QmluZGluZygnY2xhc3Muc2VsZWN0JykgcHJpdmF0ZSByZWFkb25seSBzZWxlY3RDbGFzcyA9IHRydWU7XG5cbiAgQEhvc3RCaW5kaW5nKCd0YWJpbmRleCcpXG4gIHByaXZhdGUgZ2V0IHRhYmluZGV4KCkge1xuICAgIHJldHVybiB0aGlzLmRpc2FibGVkID8gbnVsbCA6IDA7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnNlbGVjdF9kaXNhYmxlZCcpXG4gIGdldCBpc0Rpc2FibGVkKCkge1xuICAgIHJldHVybiB0aGlzLmRpc2FibGVkO1xuICB9XG5cbiAgdmFsdWU6IGFueSB8IGFueVtdO1xuICBzZWFyY2hUZXh0OiBzdHJpbmc7XG4gIGxvY2FsZTogT2JzZXJ2YWJsZTxUZXRhTG9jYWxpc2F0aW9uPjtcblxuICBnZXQgdmlzaWJsZU9wdGlvbnMoKTogYW55W10ge1xuICAgIGlmICghdGhpcy5zZWFyY2hUZXh0KSB7XG4gICAgICByZXR1cm4gdGhpcy5vcHRpb25zO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5vcHRpb25zPy5maWx0ZXIoXG4gICAgICAob3B0aW9uKSA9PiB0aGlzLmdldFNlYXJjaFN0cmluZyhvcHRpb24pLnRvTG93ZXJDYXNlKCkuaW5kZXhPZih0aGlzLnNlYXJjaFRleHQudG9Mb3dlckNhc2UoKSkgPj0gMCxcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBfb3B0aW9uczogYW55IHwgYW55W107XG4gIHByaXZhdGUgX2ludGVybmFsVmFsdWU6IGFueTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIF9jZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgcHJpdmF0ZSBfY29uZmlnOiBUZXRhQ29uZmlnU2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy5sb2NhbGUgPSB0aGlzLl9jb25maWcubG9jYWxlO1xuICB9XG5cbiAgY2xlYXIoKSB7XG4gICAgbGV0IHZhbDogYW55O1xuICAgIGlmICh0aGlzLm11bHRpcGxlID09PSB0cnVlKSB7XG4gICAgICB2YWwgPSBbXTtcbiAgICB9IGVsc2Uge1xuICAgICAgdmFsID0gbnVsbDtcbiAgICB9XG4gICAgdGhpcy52YWx1ZSA9IHZhbDtcbiAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xuICAgIHRoaXMub3BlbiA9IGZhbHNlO1xuICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG5cbiAgY2xpY2tPcHRpb24ob3B0aW9uOiBhbnksIGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMubXVsdGlwbGUgPT09IHRydWUpIHtcbiAgICAgIGlmICghdGhpcy52YWx1ZT8ubGVuZ3RoKSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSBbXTtcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLnZhbHVlLmluZGV4T2Yob3B0aW9uKSA+PSAwKSB7XG4gICAgICAgIHRoaXMucmVtb3ZlSXRlbShvcHRpb24pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IFsuLi50aGlzLnZhbHVlLCBvcHRpb25dO1xuICAgICAgfVxuICAgICAgdGhpcy5faW50ZXJuYWxWYWx1ZSA9IHRoaXMudmFsdWUubWFwKChfKSA9PiB0aGlzLmdldFZhbHVlKF8pKTtcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy5faW50ZXJuYWxWYWx1ZSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsdWUgPSBvcHRpb247XG4gICAgICB0aGlzLl9pbnRlcm5hbFZhbHVlID0gdGhpcy5nZXRWYWx1ZSh0aGlzLnZhbHVlKTtcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy5faW50ZXJuYWxWYWx1ZSk7XG4gICAgICB0aGlzLm9wZW4gPSBmYWxzZTtcbiAgICB9XG4gICAgdGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuICAgIHRoaXMuX2Nkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBpdGVtU2VsZWN0ZWQob3B0aW9uOiBhbnkpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xuICAgICAgcmV0dXJuIHRoaXMudmFsdWU/LmluZGV4T2Yob3B0aW9uKSA+PSAwO1xuICAgIH0gZWxzZSB7XG4gICAgICByZXR1cm4gdGhpcy52YWx1ZSA9PT0gb3B0aW9uO1xuICAgIH1cbiAgfVxuXG4gIHJlbW92ZUl0ZW1DbGljayhvcHRpb246IGFueSwgZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLnJlbW92ZUl0ZW0ob3B0aW9uKTtcbiAgICB0aGlzLl9pbnRlcm5hbFZhbHVlID0gdGhpcy52YWx1ZS5tYXAoKF8pID0+IHRoaXMuZ2V0VmFsdWUoXykpO1xuICAgIHRoaXMub25DaGFuZ2UodGhpcy5faW50ZXJuYWxWYWx1ZSk7XG4gIH1cblxuICByZW1vdmVJdGVtKG9wdGlvbjogYW55KTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IHRoaXMudmFsdWUuZmlsdGVyKChfKSA9PiBfICE9PSBvcHRpb24pO1xuICB9XG5cbiAgc2VhcmNoKHRleHQ6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuc2VhcmNoVGV4dCA9IHRleHQ7XG4gIH1cblxuICBnZXRUZXh0KG9wdGlvbjogYW55KTogc3RyaW5nIHtcbiAgICBpZiAob3B0aW9uID09IG51bGwpIHtcbiAgICAgIHJldHVybiAnJztcbiAgICB9XG4gICAgc3dpdGNoICh0eXBlb2YgdGhpcy50ZXh0UmVmKSB7XG4gICAgICBjYXNlICdzdHJpbmcnOlxuICAgICAgICByZXR1cm4gb3B0aW9uW3RoaXMudGV4dFJlZl07XG4gICAgICBjYXNlICdmdW5jdGlvbic6XG4gICAgICAgIHJldHVybiB0aGlzLnRleHRSZWYob3B0aW9uKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiBvcHRpb247XG4gICAgfVxuICB9XG5cbiAgZ2V0VmFsdWUob3B0aW9uOiBhbnkpOiBhbnkge1xuICAgIHN3aXRjaCAodHlwZW9mIHRoaXMudmFsdWVSZWYpIHtcbiAgICAgIGNhc2UgJ3N0cmluZyc6XG4gICAgICAgIHJldHVybiBvcHRpb25bdGhpcy52YWx1ZVJlZl07XG4gICAgICBjYXNlICdmdW5jdGlvbic6XG4gICAgICAgIHJldHVybiB0aGlzLnZhbHVlUmVmKG9wdGlvbik7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICByZXR1cm4gb3B0aW9uO1xuICAgIH1cbiAgfVxuXG4gIGdldFNlYXJjaFN0cmluZyhvcHRpb246IGFueSk6IHN0cmluZyB7XG4gICAgc3dpdGNoICh0eXBlb2YgdGhpcy5zZWFyY2hSZWYpIHtcbiAgICAgIGNhc2UgJ3N0cmluZyc6XG4gICAgICAgIHJldHVybiBvcHRpb25bdGhpcy5zZWFyY2hSZWZdO1xuICAgICAgY2FzZSAnZnVuY3Rpb24nOlxuICAgICAgICByZXR1cm4gdGhpcy5zZWFyY2hSZWYob3B0aW9uKTtcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHJldHVybiAnJztcbiAgICB9XG4gIH1cblxuICBmb2N1cygpIHtcbiAgICB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSB8IGFueVtdKTogdm9pZCB7XG4gICAgdGhpcy5faW50ZXJuYWxWYWx1ZSA9IHZhbHVlO1xuICAgIHRoaXMuZ2V0U2VsZWN0ZWRWYWx1ZSh2YWx1ZSk7XG4gICAgdGhpcy5fY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIG9uQ2hhbmdlOiAodmFsdWU6IGFueSkgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogYW55KSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICB9XG5cbiAgb25Ub3VjaGVkID0gKCkgPT4ge307XG5cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZT8oaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0U2VsZWN0ZWRWYWx1ZSh2YWx1ZTogYW55IHwgYW55W10pIHtcbiAgICBpZiAodGhpcy5tdWx0aXBsZSkge1xuICAgICAgdGhpcy52YWx1ZSA9XG4gICAgICAgIHZhbHVlICYmIHRoaXMub3B0aW9ucyA/IHRoaXMub3B0aW9ucy5maWx0ZXIoKG9wdGlvbikgPT4gdmFsdWUuaW5kZXhPZih0aGlzLmdldFZhbHVlKG9wdGlvbikpID4gLTEpIDogW107XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudmFsdWUgPSB0aGlzLm9wdGlvbnMgJiYgdGhpcy5vcHRpb25zPy5maW5kKChvcHRpb24pID0+IHRoaXMuZ2V0VmFsdWUob3B0aW9uKSA9PT0gdmFsdWUpO1xuICAgIH1cbiAgfVxufVxuIiwiQGlmIChsb2NhbGUgfCBhc3luYzsgYXMgbG9jKSB7XG4gIDx0ZXRhLWRyb3Bkb3duXG4gICAgW2FsaWduXT1cImFsaWduXCJcbiAgICBbdmVydGljYWxBbGlnbl09XCJ2ZXJ0aWNhbEFsaWduXCJcbiAgICBbYXV0b0Nsb3NlXT1cImF1dG9DbG9zZVwiXG4gICAgW2F1dG9DbG9zZUlnbm9yZV09XCJhdXRvQ2xvc2VJZ25vcmVcIlxuICAgIFsob3BlbildPVwib3BlblwiXG4gICAgW2FwcGVuZFRvQm9keV09XCJhcHBlbmRUb0JvZHlcIlxuICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgW3ZpZXdUeXBlXT1cInZpZXdUeXBlXCJcbiAgICBjbGFzcz1cInJvdyByb3dfYXV0b1wiXG4gID5cbiAgICA8ZGl2IHRldGFEcm9wZG93bkhlYWQgW2NsYXNzXT1cIidyb3cgcm93X2F1dG8gc2VsZWN0LWhlYWQgc2VsZWN0XycgKyB2aWV3VHlwZVwiIFtjbGFzcy5zZWxlY3QtaGVhZF9pbnZhbGlkXT1cImludmFsaWRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJyb3dfYXV0byBmbGV4IGFsaWduLWNlbnRlclwiPlxuICAgICAgICBAaWYgKGljb24pIHtcbiAgICAgICAgICA8dGV0YS1pY29uIFtuYW1lXT1cImljb25cIiBbcGFsZXR0ZV09XCIndGV4dCdcIiBjbGFzcz1cIm1hcmdpbi1yaWdodC0xXCI+PC90ZXRhLWljb24+XG4gICAgICAgIH1cbiAgICAgICAgQGlmICgodmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZT8ubGVuZ3RoID09PSAwKSAmJiAhbXVsdGlwbGUpIHtcbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInBsYWNlaG9sZGVyXCI+XG4gICAgICAgICAgICB7eyBwbGFjZWhvbGRlciB8fCBsb2Mubm90U2VsZWN0ZWQgfX1cbiAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIH1cbiAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICB2YWx1ZURpcmVjdGl2ZSA/IHZhbHVlRGlyZWN0aXZlLnRlbXBsYXRlIDogdmFsdWVEZWZhdWx0O1xuICAgICAgICAgICAgY29udGV4dDogeyAkaW1wbGljaXQ6IHZhbHVlLCB2YWx1ZTogdmFsdWUgfVxuICAgICAgICAgIFwiXG4gICAgICAgID48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPHRldGEtaWNvbiBbbmFtZV09XCInYXJyb3dEb3duU21hbGwnXCIgW3BhbGV0dGVdPVwiJ3RleHQnXCI+PC90ZXRhLWljb24+XG4gICAgPC9kaXY+XG4gICAgQGlmIChvcHRpb25zPy5sZW5ndGgpIHtcbiAgICAgIDxkaXYgdGV0YURyb3Bkb3duQ29udGVudCBjbGFzcz1cInNlbGVjdC1ib2R5IHJvd19hdXRvXCIgKGNsaWNrKT1cIiRldmVudC5wcmV2ZW50RGVmYXVsdCgpXCI+XG4gICAgICAgIEBpZiAoc2VhcmNoUmVmKSB7XG4gICAgICAgICAgPGRpdiBjbGFzcz1cInNlbGVjdC1zZWFyY2ggcGFkZGluZy1oLTIgcGFkZGluZy10b3AtMlwiPlxuICAgICAgICAgICAgPHRldGEtdGV4dC1maWVsZFxuICAgICAgICAgICAgICBbbmdNb2RlbF09XCJzZWFyY2hUZXh0XCJcbiAgICAgICAgICAgICAgW2NsYXNzXT1cIidzZWxlY3RfJyArIHZpZXdUeXBlXCJcbiAgICAgICAgICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwic2VhcmNoKCRldmVudClcIlxuICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwibG9jLnNlYXJjaFwiXG4gICAgICAgICAgICAgIFtsZWZ0SWNvbk5hbWVdPVwiJ3NlYXJjaCdcIlxuICAgICAgICAgICAgPjwvdGV0YS10ZXh0LWZpZWxkPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIEBpZiAodmlzaWJsZU9wdGlvbnM/Lmxlbmd0aCkge1xuICAgICAgICAgIEBpZiAoIW11bHRpcGxlICYmIGFsbG93TnVsbCkge1xuICAgICAgICAgICAgPGRpdiBbY2xhc3NdPVwiJ21hcmdpbi1oLTIgbGlzdC1pdGVtIGxpc3QtaXRlbV9pbnRlcmFjdGl2ZSBzZWxlY3RfJyArIHZpZXdUeXBlXCIgKGNsaWNrKT1cImNsZWFyKClcIj5cbiAgICAgICAgICAgICAge3sgbG9jLm5vdFNlbGVjdGVkIH19XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsaXN0LWRpdmlkZXIgbWFyZ2luLWJvdHRvbS0wXCI+PC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICAgIEBpZiAodmlydHVhbCkge1xuICAgICAgICAgICAgPHRldGEtc2Nyb2xsYWJsZSBjbGFzcz1cImNvbHVtbiBjb2x1bW5fYXV0b1wiPlxuICAgICAgICAgICAgICA8Y2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0IHRldGFTY3JvbGxhYmxlIFtpdGVtU2l6ZV09XCI0MFwiIG1pbkJ1ZmZlclB4PVwiMjAwXCIgbWF4QnVmZmVyUHg9XCI2MDBcIj5cbiAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICBbY2xhc3NdPVwiJ2xpc3QtaXRlbSBsaXN0LWl0ZW1faW50ZXJhY3RpdmUganVzdGlmeS1jb250ZW50LWJldHdlZW4gc2VsZWN0XycgKyB2aWV3VHlwZVwiXG4gICAgICAgICAgICAgICAgICAqY2RrVmlydHVhbEZvcj1cImxldCBvcHRpb24gb2YgdmlzaWJsZU9wdGlvbnM7IHRlbXBsYXRlQ2FjaGVTaXplOiAwXCJcbiAgICAgICAgICAgICAgICAgIFtjbGFzcy5saXN0LWl0ZW1fYWN0aXZlXT1cIml0ZW1TZWxlY3RlZChvcHRpb24pXCJcbiAgICAgICAgICAgICAgICAgIFt0ZXRhSGlnaGxpZ2h0XT1cInNlYXJjaFRleHRcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNsaWNrT3B0aW9uKG9wdGlvbiwgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgPGRpdiBbdGV0YUhpZ2hsaWdodF09XCJzZWFyY2hUZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uRGlyZWN0aXZlID8gb3B0aW9uRGlyZWN0aXZlLnRlbXBsYXRlIDogb3B0aW9uRGVmYXVsdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6IHsgJGltcGxpY2l0OiBvcHRpb24sIG9wdGlvbjogb3B0aW9uIH1cbiAgICAgICAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICBAaWYgKGl0ZW1TZWxlY3RlZChvcHRpb24pKSB7XG4gICAgICAgICAgICAgICAgICAgIDx0ZXRhLWljb24gW25hbWVdPVwiJ3RpY2snXCIgW3BhbGV0dGVdPVwiJ3RleHQnXCIgY2xhc3M9XCJtYXJnaW4tbGVmdC0yXCI+PC90ZXRhLWljb24+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvY2RrLXZpcnR1YWwtc2Nyb2xsLXZpZXdwb3J0PlxuICAgICAgICAgICAgPC90ZXRhLXNjcm9sbGFibGU+XG4gICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICA8dGV0YS1zY3JvbGxhYmxlIGNsYXNzPVwiY29sdW1uIGNvbHVtbl9hdXRvXCIgW2NvbnRlbnRDbGFzc109XCJbJ2NvbHVtbicsICdjb2x1bW5fYXV0byddXCI+XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJsaXN0XCI+XG4gICAgICAgICAgICAgICAgQGZvciAob3B0aW9uIG9mIHZpc2libGVPcHRpb25zOyB0cmFjayBvcHRpb24pIHtcbiAgICAgICAgICAgICAgICAgIDxkaXZcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cIidsaXN0LWl0ZW0gbGlzdC1pdGVtX2ludGVyYWN0aXZlIGp1c3RpZnktY29udGVudC1iZXR3ZWVuICBzZWxlY3RfJyArIHZpZXdUeXBlXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmxpc3QtaXRlbV9hY3RpdmVdPVwiaXRlbVNlbGVjdGVkKG9wdGlvbilcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2xpY2tPcHRpb24ob3B0aW9uLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gW3RldGFIaWdobGlnaHRdPVwic2VhcmNoVGV4dFwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbkRpcmVjdGl2ZSA/IG9wdGlvbkRpcmVjdGl2ZS50ZW1wbGF0ZSA6IG9wdGlvbkRlZmF1bHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRleHQ6IHsgJGltcGxpY2l0OiBvcHRpb24sIG9wdGlvbjogb3B0aW9uIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgIEBpZiAoaXRlbVNlbGVjdGVkKG9wdGlvbikgJiYgbXVsdGlwbGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICA8dGV0YS1pY29uIFtuYW1lXT1cIid0aWNrJ1wiIFtwYWxldHRlXT1cIid0ZXh0J1wiPjwvdGV0YS1pY29uPlxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC90ZXRhLXNjcm9sbGFibGU+XG4gICAgICAgICAgfVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICA8cCBjbGFzcz1cInBhZGRpbmctaC0zIHRleHQtb3ZlcmZsb3ctZWxsaXBzaXMgb3ZlcmZsb3ctaGlkZGVuIHNlbGVjdC1ub3QtZm91bmQtb3B0aW9uXCI+XG4gICAgICAgICAgICB7eyBub3RGb3VuZFRleHQgfHwgbG9jLm5vdEZvdW5kIH19XG4gICAgICAgICAgPC9wPlxuICAgICAgICB9XG4gICAgICAgIEBpZiAobXVsdGlwbGUgJiYgdmFsdWU/Lmxlbmd0aCkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3cgcm93X2F1dG8gc2VsZWN0LWNoaXAtZmllbGQgZmxleC13cmFwXCI+XG4gICAgICAgICAgICBAZm9yIChpdGVtIG9mIHZhbHVlOyB0cmFjayBpdGVtKSB7XG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0YWdcIj5cbiAgICAgICAgICAgICAgICA8cD57eyBnZXRUZXh0KGl0ZW0pIH19PC9wPlxuICAgICAgICAgICAgICAgIDx0ZXRhLWljb25cbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiY3Vyc29yLXBvaW50ZXJcIlxuICAgICAgICAgICAgICAgICAgW3BhbGV0dGVdPVwiJ3RleHQnXCJcbiAgICAgICAgICAgICAgICAgIFtuYW1lXT1cIidjbG9zZUNpcmNsZSdcIlxuICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInJlbW92ZUl0ZW1DbGljayhpdGVtLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICA+PC90ZXRhLWljb24+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvdGV0YS1kcm9wZG93bj5cbiAgPG5nLXRlbXBsYXRlICNub3RGb3VuZD5cbiAgICA8cCBjbGFzcz1cInBhZGRpbmctaC0zIHRleHQtb3ZlcmZsb3ctZWxsaXBzaXMgb3ZlcmZsb3ctaGlkZGVuIHNlbGVjdC1ub3QtZm91bmQtb3B0aW9uXCI+XG4gICAgICB7eyBub3RGb3VuZFRleHQgfHwgbG9jLm5vdEZvdW5kIH19XG4gICAgPC9wPlxuICA8L25nLXRlbXBsYXRlPlxuICA8bmctdGVtcGxhdGUgI29wdGlvbkRlZmF1bHQgbGV0LW9wdGlvbj5cbiAgICB7eyBnZXRUZXh0KG9wdGlvbikgfX1cbiAgPC9uZy10ZW1wbGF0ZT5cbiAgPG5nLXRlbXBsYXRlICN2YWx1ZURlZmF1bHQgbGV0LXZhbHVlPlxuICAgIEBpZiAobXVsdGlwbGUpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJyb3dfYXV0byBvdmVyZmxvdy1oaWRkZW4gdGV4dC1vdmVyZmxvdy1lbGxpcHNpc1wiPlxuICAgICAgICB7eyBsb2Muc2VsZWN0ZWQgKyAnICcgKyB2YWx1ZT8ubGVuZ3RoIH19XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gICAgQGlmICghbXVsdGlwbGUpIHtcbiAgICAgIDxzcGFuIGNsYXNzPVwicm93IHJvd19hdXRvIG92ZXJmbG93LWhpZGRlbiB0ZXh0LW92ZXJmbG93LWVsbGlwc2lzXCI+e3sgZ2V0VGV4dCh2YWx1ZSkgfX08L3NwYW4+XG4gICAgfVxuICA8L25nLXRlbXBsYXRlPlxufVxuIl19
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { Directive, TemplateRef } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class SelectOptionDirective {
|
|
4
|
-
constructor(template) {
|
|
5
|
-
this.template = template;
|
|
6
|
-
}
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: SelectOptionDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
8
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: SelectOptionDirective, isStandalone: true, selector: "[tetaSelectOption]", ngImport: i0 }); }
|
|
9
|
-
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: SelectOptionDirective, decorators: [{
|
|
11
|
-
type: Directive,
|
|
12
|
-
args: [{
|
|
13
|
-
selector: '[tetaSelectOption]',
|
|
14
|
-
standalone: true,
|
|
15
|
-
}]
|
|
16
|
-
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LW9wdGlvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L3NlbGVjdC9zZWxlY3Qtb3B0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFNdkQsTUFBTSxPQUFPLHFCQUFxQjtJQUNoQyxZQUFtQixRQUEwQjtRQUExQixhQUFRLEdBQVIsUUFBUSxDQUFrQjtJQUFHLENBQUM7OEdBRHRDLHFCQUFxQjtrR0FBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQUpqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFVBQVUsRUFBRSxJQUFJO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW3RldGFTZWxlY3RPcHRpb25dJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0T3B0aW9uRGlyZWN0aXZlIHtcbiAgY29uc3RydWN0b3IocHVibGljIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+KSB7fVxufVxuIl19
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { Directive, TemplateRef } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class SelectValueDirective {
|
|
4
|
-
constructor(template) {
|
|
5
|
-
this.template = template;
|
|
6
|
-
}
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: SelectValueDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
8
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: SelectValueDirective, isStandalone: true, selector: "[tetaSelectValue]", ngImport: i0 }); }
|
|
9
|
-
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: SelectValueDirective, decorators: [{
|
|
11
|
-
type: Directive,
|
|
12
|
-
args: [{
|
|
13
|
-
selector: '[tetaSelectValue]',
|
|
14
|
-
standalone: true,
|
|
15
|
-
}]
|
|
16
|
-
}], ctorParameters: () => [{ type: i0.TemplateRef }] });
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXZhbHVlLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc2VsZWN0L3NlbGVjdC12YWx1ZS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTXZELE1BQU0sT0FBTyxvQkFBb0I7SUFDL0IsWUFBbUIsUUFBMEI7UUFBMUIsYUFBUSxHQUFSLFFBQVEsQ0FBa0I7SUFBRyxDQUFDOzhHQUR0QyxvQkFBb0I7a0dBQXBCLG9CQUFvQjs7MkZBQXBCLG9CQUFvQjtrQkFKaEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixVQUFVLEVBQUUsSUFBSTtpQkFDakIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1t0ZXRhU2VsZWN0VmFsdWVdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbn0pXG5leHBvcnQgY2xhc3MgU2VsZWN0VmFsdWVEaXJlY3RpdmUge1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4pIHt9XG59XG4iXX0=
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './sidebar/sidebar.component';
|
|
2
|
-
export * from './sidebar-position.enum';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc2lkZWJhci9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyx5QkFBeUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc2lkZWJhci9zaWRlYmFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3NpZGViYXItcG9zaXRpb24uZW51bSc7XG4iXX0=
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
|
|
2
|
-
import { SidebarPosition } from '../sidebar-position.enum';
|
|
3
|
-
import { animate, style, transition, trigger } from '@angular/animations';
|
|
4
|
-
import { NgClass } from '@angular/common';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class SidebarComponent {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.position = SidebarPosition.left;
|
|
9
|
-
this.openChange = new EventEmitter();
|
|
10
|
-
this.zIndex = 10;
|
|
11
|
-
this.sidebarPosition = SidebarPosition;
|
|
12
|
-
}
|
|
13
|
-
setOpen(value) {
|
|
14
|
-
this.open = value;
|
|
15
|
-
this.openChange.emit(this.open);
|
|
16
|
-
}
|
|
17
|
-
ngOnInit() { }
|
|
18
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: SidebarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.1", type: SidebarComponent, isStandalone: true, selector: "teta-sidebar", inputs: { position: "position", backdrop: "backdrop", open: "open", className: "className" }, outputs: { openChange: "openChange" }, host: { properties: { "style.z-index": "this.zIndex" } }, ngImport: i0, template: "@if (backdrop && open) {\n <div [@sidebar] (click)=\"setOpen(false)\" class=\"sidebar-backdrop\"></div>\n}\n@if (open) {\n <div\n class=\"sidebar\"\n [@sidebar]\n [ngClass]=\"className\"\n [class.sidebar-top]=\"position === sidebarPosition.top\"\n [class.sidebar-bottom]=\"position === sidebarPosition.bottom\"\n [class.sidebar-left]=\"position === sidebarPosition.left\"\n [class.sidebar-right]=\"position === sidebarPosition.right\"\n >\n <ng-content></ng-content>\n </div>\n}\n", styles: [""], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [
|
|
20
|
-
trigger('sidebar', [
|
|
21
|
-
transition('void => *', [style({ opacity: '0' }), animate(300, style({ opacity: '1' }))]),
|
|
22
|
-
transition('* => void', [animate(300, style({ opacity: '0' }))]),
|
|
23
|
-
]),
|
|
24
|
-
], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
25
|
-
}
|
|
26
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: SidebarComponent, decorators: [{
|
|
27
|
-
type: Component,
|
|
28
|
-
args: [{ selector: 'teta-sidebar', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
|
|
29
|
-
trigger('sidebar', [
|
|
30
|
-
transition('void => *', [style({ opacity: '0' }), animate(300, style({ opacity: '1' }))]),
|
|
31
|
-
transition('* => void', [animate(300, style({ opacity: '0' }))]),
|
|
32
|
-
]),
|
|
33
|
-
], standalone: true, imports: [NgClass], template: "@if (backdrop && open) {\n <div [@sidebar] (click)=\"setOpen(false)\" class=\"sidebar-backdrop\"></div>\n}\n@if (open) {\n <div\n class=\"sidebar\"\n [@sidebar]\n [ngClass]=\"className\"\n [class.sidebar-top]=\"position === sidebarPosition.top\"\n [class.sidebar-bottom]=\"position === sidebarPosition.bottom\"\n [class.sidebar-left]=\"position === sidebarPosition.left\"\n [class.sidebar-right]=\"position === sidebarPosition.right\"\n >\n <ng-content></ng-content>\n </div>\n}\n" }]
|
|
34
|
-
}], ctorParameters: () => [], propDecorators: { position: [{
|
|
35
|
-
type: Input
|
|
36
|
-
}], backdrop: [{
|
|
37
|
-
type: Input
|
|
38
|
-
}], open: [{
|
|
39
|
-
type: Input
|
|
40
|
-
}], openChange: [{
|
|
41
|
-
type: Output
|
|
42
|
-
}], className: [{
|
|
43
|
-
type: Input
|
|
44
|
-
}], zIndex: [{
|
|
45
|
-
type: HostBinding,
|
|
46
|
-
args: ['style.z-index']
|
|
47
|
-
}] } });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L3NpZGViYXIvc2lkZWJhci9zaWRlYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc2lkZWJhci9zaWRlYmFyL3NpZGViYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckgsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzNELE9BQU8sRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBZ0IxQyxNQUFNLE9BQU8sZ0JBQWdCO0lBVzNCO1FBVlMsYUFBUSxHQUFvQixlQUFlLENBQUMsSUFBSSxDQUFDO1FBR2hELGVBQVUsR0FBMEIsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUc1QyxXQUFNLEdBQUcsRUFBRSxDQUFDO1FBRTFDLG9CQUFlLEdBQUcsZUFBZSxDQUFDO0lBRW5CLENBQUM7SUFFaEIsT0FBTyxDQUFDLEtBQWM7UUFDcEIsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7UUFDbEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxRQUFRLEtBQVUsQ0FBQzs4R0FsQlIsZ0JBQWdCO2tHQUFoQixnQkFBZ0IsdVFDbkI3Qiw4ZkFnQkEsMEREQ1ksT0FBTyxzRUFQTDtZQUNWLE9BQU8sQ0FBQyxTQUFTLEVBQUU7Z0JBQ2pCLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDekYsVUFBVSxDQUFDLFdBQVcsRUFBRSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ2pFLENBQUM7U0FDSDs7MkZBSVUsZ0JBQWdCO2tCQWQ1QixTQUFTOytCQUNFLGNBQWMsbUJBR1AsdUJBQXVCLENBQUMsTUFBTSxjQUNuQzt3QkFDVixPQUFPLENBQUMsU0FBUyxFQUFFOzRCQUNqQixVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7NEJBQ3pGLFVBQVUsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQzt5QkFDakUsQ0FBQztxQkFDSCxjQUNXLElBQUksV0FDUCxDQUFDLE9BQU8sQ0FBQzt3REFHVCxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNJLFVBQVU7c0JBQW5CLE1BQU07Z0JBQ0UsU0FBUztzQkFBakIsS0FBSztnQkFFd0IsTUFBTTtzQkFBbkMsV0FBVzt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0QmluZGluZywgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTaWRlYmFyUG9zaXRpb24gfSBmcm9tICcuLi9zaWRlYmFyLXBvc2l0aW9uLmVudW0nO1xuaW1wb3J0IHsgYW5pbWF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IE5nQ2xhc3MgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0ZXRhLXNpZGViYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2lkZWJhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3NpZGViYXIuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdzaWRlYmFyJywgW1xuICAgICAgdHJhbnNpdGlvbigndm9pZCA9PiAqJywgW3N0eWxlKHsgb3BhY2l0eTogJzAnIH0pLCBhbmltYXRlKDMwMCwgc3R5bGUoeyBvcGFjaXR5OiAnMScgfSkpXSksXG4gICAgICB0cmFuc2l0aW9uKCcqID0+IHZvaWQnLCBbYW5pbWF0ZSgzMDAsIHN0eWxlKHsgb3BhY2l0eTogJzAnIH0pKV0pLFxuICAgIF0pLFxuICBdLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbTmdDbGFzc10sXG59KVxuZXhwb3J0IGNsYXNzIFNpZGViYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBwb3NpdGlvbjogU2lkZWJhclBvc2l0aW9uID0gU2lkZWJhclBvc2l0aW9uLmxlZnQ7XG4gIEBJbnB1dCgpIGJhY2tkcm9wOiBib29sZWFuO1xuICBASW5wdXQoKSBvcGVuOiBib29sZWFuO1xuICBAT3V0cHV0KCkgb3BlbkNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuICBASW5wdXQoKSBjbGFzc05hbWU6IHN0cmluZyB8IHN0cmluZ1tdO1xuXG4gIEBIb3N0QmluZGluZygnc3R5bGUuei1pbmRleCcpIHpJbmRleCA9IDEwO1xuXG4gIHNpZGViYXJQb3NpdGlvbiA9IFNpZGViYXJQb3NpdGlvbjtcblxuICBjb25zdHJ1Y3RvcigpIHt9XG5cbiAgc2V0T3Blbih2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMub3BlbiA9IHZhbHVlO1xuICAgIHRoaXMub3BlbkNoYW5nZS5lbWl0KHRoaXMub3Blbik7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHt9XG59XG4iLCJAaWYgKGJhY2tkcm9wICYmIG9wZW4pIHtcbiAgPGRpdiBbQHNpZGViYXJdIChjbGljayk9XCJzZXRPcGVuKGZhbHNlKVwiIGNsYXNzPVwic2lkZWJhci1iYWNrZHJvcFwiPjwvZGl2PlxufVxuQGlmIChvcGVuKSB7XG4gIDxkaXZcbiAgICBjbGFzcz1cInNpZGViYXJcIlxuICAgIFtAc2lkZWJhcl1cbiAgICBbbmdDbGFzc109XCJjbGFzc05hbWVcIlxuICAgIFtjbGFzcy5zaWRlYmFyLXRvcF09XCJwb3NpdGlvbiA9PT0gc2lkZWJhclBvc2l0aW9uLnRvcFwiXG4gICAgW2NsYXNzLnNpZGViYXItYm90dG9tXT1cInBvc2l0aW9uID09PSBzaWRlYmFyUG9zaXRpb24uYm90dG9tXCJcbiAgICBbY2xhc3Muc2lkZWJhci1sZWZ0XT1cInBvc2l0aW9uID09PSBzaWRlYmFyUG9zaXRpb24ubGVmdFwiXG4gICAgW2NsYXNzLnNpZGViYXItcmlnaHRdPVwicG9zaXRpb24gPT09IHNpZGViYXJQb3NpdGlvbi5yaWdodFwiXG4gID5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gIDwvZGl2PlxufVxuIl19
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
export var SidebarPosition;
|
|
2
|
-
(function (SidebarPosition) {
|
|
3
|
-
SidebarPosition[SidebarPosition["left"] = 0] = "left";
|
|
4
|
-
SidebarPosition[SidebarPosition["right"] = 1] = "right";
|
|
5
|
-
SidebarPosition[SidebarPosition["bottom"] = 2] = "bottom";
|
|
6
|
-
SidebarPosition[SidebarPosition["top"] = 3] = "top";
|
|
7
|
-
})(SidebarPosition || (SidebarPosition = {}));
|
|
8
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci1wb3NpdGlvbi5lbnVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudC9zaWRlYmFyL3NpZGViYXItcG9zaXRpb24uZW51bS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxlQUtYO0FBTEQsV0FBWSxlQUFlO0lBQ3pCLHFEQUFJLENBQUE7SUFDSix1REFBSyxDQUFBO0lBQ0wseURBQU0sQ0FBQTtJQUNOLG1EQUFHLENBQUE7QUFDTCxDQUFDLEVBTFcsZUFBZSxLQUFmLGVBQWUsUUFLMUIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBTaWRlYmFyUG9zaXRpb24ge1xuICBsZWZ0LFxuICByaWdodCxcbiAgYm90dG9tLFxuICB0b3AsXG59XG4iXX0=
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export * from './stepper/stepper.component';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc3RlcHBlci9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNkJBQTZCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3N0ZXBwZXIvc3RlcHBlci5jb21wb25lbnQnO1xuIl19
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Component, computed, input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class StepperComponent {
|
|
4
|
-
constructor() {
|
|
5
|
-
this.steps = input.required();
|
|
6
|
-
this.currentStepId = input.required();
|
|
7
|
-
this.currentIndex = computed(() => this.steps().findIndex((step) => step.id === this.currentStepId()) ?? 0);
|
|
8
|
-
}
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: StepperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.1", type: StepperComponent, isStandalone: true, selector: "app-stepper", inputs: { steps: { classPropertyName: "steps", publicName: "steps", isSignal: true, isRequired: true, transformFunction: null }, currentStepId: { classPropertyName: "currentStepId", publicName: "currentStepId", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: "@if (steps().length) {\n <ul\n class=\"stepper\"\n [style]=\"\n '--step-count: ' +\n (steps().length - 1) +\n '; --padding-left: ' +\n steps().at(0).name.length / 2 +\n 'ch; --padding-right: ' +\n steps().at(-1).name.length / 2 +\n 'ch;'\n \"\n >\n @for (step of steps(); track step.id; let index = $index) {\n <li class=\"font-title-3 stepperItem\" [class.stepperItemActive]=\"currentIndex() >= index\">\n <span class=\"point\">\n <span class=\"stepLabel\">{{ step.name }}</span>\n </span>\n </li>\n }\n </ul>\n} @else {\n <p class=\"font-title-1 text-align-center\">\u0428\u0430\u0433\u0438 \u043E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044E\u0442</p>\n}\n", styles: [":host{display:block;padding:18px 0 0}:host .stepper{--point-radius: 4px;margin:0;padding:0 var(--padding-right) 0 var(--padding-left);list-style:none;display:grid;grid-template-columns:calc(2 * var(--point-radius)) repeat(var(--step-count),1fr)}:host .stepperItem{position:relative;display:flex;justify-content:flex-end;cursor:default}:host .stepperItem:not(:first-child):before{content:\"\";position:absolute;top:calc(var(--point-radius) - .5px);right:calc(2 * var(--point-radius));width:calc(100% - 2 * var(--point-radius));height:1px;background-color:var(--color-text-20)}:host .stepperItem .point{position:relative;display:block;width:calc(2 * var(--point-radius));height:calc(2 * var(--point-radius));border-radius:50%;border:1px solid var(--color-text-20)}:host .stepperItem .stepLabel{position:absolute;bottom:calc(2px + 100%);left:50%;transform:translate(-50%);white-space:nowrap}:host .stepperItemActive:not(:first-child):before{background-color:var(--color-primary-50)}:host .stepperItemActive .point{border-color:var(--color-primary-50)}:host .stepperItemActive .stepLabel{color:var(--color-primary-50)}\n"] }); }
|
|
11
|
-
}
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: StepperComponent, decorators: [{
|
|
13
|
-
type: Component,
|
|
14
|
-
args: [{ selector: 'app-stepper', standalone: true, imports: [], template: "@if (steps().length) {\n <ul\n class=\"stepper\"\n [style]=\"\n '--step-count: ' +\n (steps().length - 1) +\n '; --padding-left: ' +\n steps().at(0).name.length / 2 +\n 'ch; --padding-right: ' +\n steps().at(-1).name.length / 2 +\n 'ch;'\n \"\n >\n @for (step of steps(); track step.id; let index = $index) {\n <li class=\"font-title-3 stepperItem\" [class.stepperItemActive]=\"currentIndex() >= index\">\n <span class=\"point\">\n <span class=\"stepLabel\">{{ step.name }}</span>\n </span>\n </li>\n }\n </ul>\n} @else {\n <p class=\"font-title-1 text-align-center\">\u0428\u0430\u0433\u0438 \u043E\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044E\u0442</p>\n}\n", styles: [":host{display:block;padding:18px 0 0}:host .stepper{--point-radius: 4px;margin:0;padding:0 var(--padding-right) 0 var(--padding-left);list-style:none;display:grid;grid-template-columns:calc(2 * var(--point-radius)) repeat(var(--step-count),1fr)}:host .stepperItem{position:relative;display:flex;justify-content:flex-end;cursor:default}:host .stepperItem:not(:first-child):before{content:\"\";position:absolute;top:calc(var(--point-radius) - .5px);right:calc(2 * var(--point-radius));width:calc(100% - 2 * var(--point-radius));height:1px;background-color:var(--color-text-20)}:host .stepperItem .point{position:relative;display:block;width:calc(2 * var(--point-radius));height:calc(2 * var(--point-radius));border-radius:50%;border:1px solid var(--color-text-20)}:host .stepperItem .stepLabel{position:absolute;bottom:calc(2px + 100%);left:50%;transform:translate(-50%);white-space:nowrap}:host .stepperItemActive:not(:first-child):before{background-color:var(--color-primary-50)}:host .stepperItemActive .point{border-color:var(--color-primary-50)}:host .stepperItemActive .stepLabel{color:var(--color-primary-50)}\n"] }]
|
|
15
|
-
}] });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHBlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50L3N0ZXBwZXIvc3RlcHBlci9zdGVwcGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc3RlcHBlci9zdGVwcGVyL3N0ZXBwZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFVLE1BQU0sZUFBZSxDQUFDOztBQVVuRSxNQUFNLE9BQU8sZ0JBQWdCO0lBUDdCO1FBUUUsVUFBSyxHQUFHLEtBQUssQ0FBQyxRQUFRLEVBQXFCLENBQUM7UUFDNUMsa0JBQWEsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFVLENBQUM7UUFDekMsaUJBQVksR0FBbUIsUUFBUSxDQUNyQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FDOUUsQ0FBQztLQUNIOzhHQU5ZLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLHlWQ1Y3QixxdkJBd0JBOzsyRkRkYSxnQkFBZ0I7a0JBUDVCLFNBQVM7K0JBQ0UsYUFBYSxjQUNYLElBQUksV0FDUCxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgaW5wdXQsIFNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSUlkTmFtZSB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9jb250cmFjdC9pLWlkLW5hbWUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtc3RlcHBlcicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtdLFxuICB0ZW1wbGF0ZVVybDogJy4vc3RlcHBlci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9zdGVwcGVyLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgU3RlcHBlckNvbXBvbmVudCB7XG4gIHN0ZXBzID0gaW5wdXQucmVxdWlyZWQ8SUlkTmFtZTxudW1iZXI+W10+KCk7XG4gIGN1cnJlbnRTdGVwSWQgPSBpbnB1dC5yZXF1aXJlZDxudW1iZXI+KCk7XG4gIGN1cnJlbnRJbmRleDogU2lnbmFsPG51bWJlcj4gPSBjb21wdXRlZChcbiAgICAoKSA9PiB0aGlzLnN0ZXBzKCkuZmluZEluZGV4KChzdGVwKSA9PiBzdGVwLmlkID09PSB0aGlzLmN1cnJlbnRTdGVwSWQoKSkgPz8gMCxcbiAgKTtcbn1cbiIsIkBpZiAoc3RlcHMoKS5sZW5ndGgpIHtcbiAgPHVsXG4gICAgY2xhc3M9XCJzdGVwcGVyXCJcbiAgICBbc3R5bGVdPVwiXG4gICAgICAnLS1zdGVwLWNvdW50OiAnICtcbiAgICAgIChzdGVwcygpLmxlbmd0aCAtIDEpICtcbiAgICAgICc7IC0tcGFkZGluZy1sZWZ0OiAnICtcbiAgICAgIHN0ZXBzKCkuYXQoMCkubmFtZS5sZW5ndGggLyAyICtcbiAgICAgICdjaDsgLS1wYWRkaW5nLXJpZ2h0OiAnICtcbiAgICAgIHN0ZXBzKCkuYXQoLTEpLm5hbWUubGVuZ3RoIC8gMiArXG4gICAgICAnY2g7J1xuICAgIFwiXG4gID5cbiAgICBAZm9yIChzdGVwIG9mIHN0ZXBzKCk7IHRyYWNrIHN0ZXAuaWQ7IGxldCBpbmRleCA9ICRpbmRleCkge1xuICAgICAgPGxpIGNsYXNzPVwiZm9udC10aXRsZS0zIHN0ZXBwZXJJdGVtXCIgW2NsYXNzLnN0ZXBwZXJJdGVtQWN0aXZlXT1cImN1cnJlbnRJbmRleCgpID49IGluZGV4XCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwicG9pbnRcIj5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInN0ZXBMYWJlbFwiPnt7IHN0ZXAubmFtZSB9fTwvc3Bhbj5cbiAgICAgICAgPC9zcGFuPlxuICAgICAgPC9saT5cbiAgICB9XG4gIDwvdWw+XG59IEBlbHNlIHtcbiAgPHAgY2xhc3M9XCJmb250LXRpdGxlLTEgdGV4dC1hbGlnbi1jZW50ZXJcIj7QqNCw0LPQuCDQvtGC0YHRg9GC0YHRgtCy0YPRjtGCPC9wPlxufVxuIl19
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
export * from './switch/switch.component';
|
|
2
|
-
export * from './switch-button/switch-button.component';
|
|
3
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc3dpdGNoL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHlDQUF5QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zd2l0Y2gvc3dpdGNoLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL3N3aXRjaC1idXR0b24vc3dpdGNoLWJ1dHRvbi5jb21wb25lbnQnO1xuIl19
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, forwardRef, HostBinding, Input, } from '@angular/core';
|
|
2
|
-
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
|
3
|
-
import { SwitchService } from '../switch.service';
|
|
4
|
-
import { filter, takeWhile } from 'rxjs/operators';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "../switch.service";
|
|
7
|
-
export const SWITCH_CONTROL_VALUE_ACCESSOR = {
|
|
8
|
-
provide: NG_VALUE_ACCESSOR,
|
|
9
|
-
useExisting: forwardRef(() => SwitchComponent),
|
|
10
|
-
multi: true,
|
|
11
|
-
};
|
|
12
|
-
export class SwitchComponent {
|
|
13
|
-
get class() {
|
|
14
|
-
return `switch_` + this.viewType;
|
|
15
|
-
}
|
|
16
|
-
constructor(svc, cdr) {
|
|
17
|
-
this.svc = svc;
|
|
18
|
-
this.cdr = cdr;
|
|
19
|
-
this.viewType = 'rounded';
|
|
20
|
-
this.switchClass = true;
|
|
21
|
-
this._alive = true;
|
|
22
|
-
this.svc.value
|
|
23
|
-
.pipe(takeWhile((_) => this._alive), filter((_) => _ !== this._value))
|
|
24
|
-
.subscribe((_) => {
|
|
25
|
-
this.onChange(_);
|
|
26
|
-
this._value = _;
|
|
27
|
-
});
|
|
28
|
-
}
|
|
29
|
-
writeValue(model) {
|
|
30
|
-
this._value = model;
|
|
31
|
-
this.svc.setValue(model);
|
|
32
|
-
this.cdr.markForCheck();
|
|
33
|
-
}
|
|
34
|
-
onChange(_) { }
|
|
35
|
-
onTouched() { }
|
|
36
|
-
registerOnChange(fn) {
|
|
37
|
-
this.onChange = fn;
|
|
38
|
-
}
|
|
39
|
-
registerOnTouched(fn) {
|
|
40
|
-
this.onTouched = fn;
|
|
41
|
-
}
|
|
42
|
-
ngOnInit() { }
|
|
43
|
-
ngOnDestroy() {
|
|
44
|
-
this._alive = false;
|
|
45
|
-
}
|
|
46
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: SwitchComponent, deps: [{ token: i1.SwitchService }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
47
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.1", type: SwitchComponent, isStandalone: true, selector: "teta-switch", inputs: { viewType: "viewType" }, host: { properties: { "class.switch": "this.switchClass", "class": "this.class" } }, providers: [SWITCH_CONTROL_VALUE_ACCESSOR, SwitchService], ngImport: i0, template: "<ng-content></ng-content>\n", styles: [""], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
48
|
-
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: SwitchComponent, decorators: [{
|
|
50
|
-
type: Component,
|
|
51
|
-
args: [{ selector: 'teta-switch', providers: [SWITCH_CONTROL_VALUE_ACCESSOR, SwitchService], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: "<ng-content></ng-content>\n" }]
|
|
52
|
-
}], ctorParameters: () => [{ type: i1.SwitchService }, { type: i0.ChangeDetectorRef }], propDecorators: { viewType: [{
|
|
53
|
-
type: Input
|
|
54
|
-
}], switchClass: [{
|
|
55
|
-
type: HostBinding,
|
|
56
|
-
args: ['class.switch']
|
|
57
|
-
}], class: [{
|
|
58
|
-
type: HostBinding,
|
|
59
|
-
args: ['class']
|
|
60
|
-
}] } });
|
|
61
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3dpdGNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnQvc3dpdGNoL3N3aXRjaC9zd2l0Y2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudC9zd2l0Y2gvc3dpdGNoL3N3aXRjaC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsVUFBVSxFQUNWLFdBQVcsRUFDWCxLQUFLLEdBR04sTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUF3QixpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7QUFHbkQsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQVE7SUFDaEQsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGVBQWUsQ0FBQztJQUM5QyxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUM7QUFVRixNQUFNLE9BQU8sZUFBZTtJQUkxQixJQUNJLEtBQUs7UUFDUCxPQUFPLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ25DLENBQUM7SUFLRCxZQUNVLEdBQWtCLEVBQ2xCLEdBQXNCO1FBRHRCLFFBQUcsR0FBSCxHQUFHLENBQWU7UUFDbEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFidkIsYUFBUSxHQUFhLFNBQVMsQ0FBQztRQUNYLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBT3hDLFdBQU0sR0FBRyxJQUFJLENBQUM7UUFPcEIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLO2FBQ1gsSUFBSSxDQUNILFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUM3QixNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQ2pDO2FBQ0EsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDZixJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2pCLElBQUksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQ2xCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFVO1FBQ25CLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3pCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELFFBQVEsQ0FBQyxDQUFNLElBQUcsQ0FBQztJQUVuQixTQUFTLEtBQUksQ0FBQztJQUVkLGdCQUFnQixDQUFDLEVBQW9CO1FBQ25DLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxFQUFjO1FBQzlCLElBQUksQ0FBQyxTQUFTLEdBQUcsRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxRQUFRLEtBQVUsQ0FBQztJQUVuQixXQUFXO1FBQ1QsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUM7SUFDdEIsQ0FBQzs4R0FqRFUsZUFBZTtrR0FBZixlQUFlLGlMQUpmLENBQUMsNkJBQTZCLEVBQUUsYUFBYSxDQUFDLDBCQ3pCM0QsNkJBQ0E7OzJGRDRCYSxlQUFlO2tCQVIzQixTQUFTOytCQUNFLGFBQWEsYUFHWixDQUFDLDZCQUE2QixFQUFFLGFBQWEsQ0FBQyxtQkFDeEMsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJO2tIQUdQLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ3VCLFdBQVc7c0JBQXZDLFdBQVc7dUJBQUMsY0FBYztnQkFHdkIsS0FBSztzQkFEUixXQUFXO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgZm9yd2FyZFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBTd2l0Y2hTZXJ2aWNlIH0gZnJvbSAnLi4vc3dpdGNoLnNlcnZpY2UnO1xuaW1wb3J0IHsgZmlsdGVyLCB0YWtlV2hpbGUgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyB2aWV3VHlwZSB9IGZyb20gJy4uLy4uLy4uL2NvbW1vbi9tb2RlbC92aWV3LXR5cGUubW9kZWwnO1xuXG5leHBvcnQgY29uc3QgU1dJVENIX0NPTlRST0xfVkFMVUVfQUNDRVNTT1I6IGFueSA9IHtcbiAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFN3aXRjaENvbXBvbmVudCksXG4gIG11bHRpOiB0cnVlLFxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndGV0YS1zd2l0Y2gnLFxuICB0ZW1wbGF0ZVVybDogJy4vc3dpdGNoLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc3dpdGNoLmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1NXSVRDSF9DT05UUk9MX1ZBTFVFX0FDQ0VTU09SLCBTd2l0Y2hTZXJ2aWNlXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIFN3aXRjaENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gIEBJbnB1dCgpIHZpZXdUeXBlOiB2aWV3VHlwZSA9ICdyb3VuZGVkJztcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5zd2l0Y2gnKSBzd2l0Y2hDbGFzcyA9IHRydWU7XG5cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBjbGFzcygpIHtcbiAgICByZXR1cm4gYHN3aXRjaF9gICsgdGhpcy52aWV3VHlwZTtcbiAgfVxuXG4gIHByaXZhdGUgX2FsaXZlID0gdHJ1ZTtcbiAgcHJpdmF0ZSBfdmFsdWU6IGFueTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHN2YzogU3dpdGNoU2VydmljZSxcbiAgICBwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICkge1xuICAgIHRoaXMuc3ZjLnZhbHVlXG4gICAgICAucGlwZShcbiAgICAgICAgdGFrZVdoaWxlKChfKSA9PiB0aGlzLl9hbGl2ZSksXG4gICAgICAgIGZpbHRlcigoXykgPT4gXyAhPT0gdGhpcy5fdmFsdWUpLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoXykgPT4ge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKF8pO1xuICAgICAgICB0aGlzLl92YWx1ZSA9IF87XG4gICAgICB9KTtcbiAgfVxuXG4gIHdyaXRlVmFsdWUobW9kZWw6IGFueSkge1xuICAgIHRoaXMuX3ZhbHVlID0gbW9kZWw7XG4gICAgdGhpcy5zdmMuc2V0VmFsdWUobW9kZWwpO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgb25DaGFuZ2UoXzogYW55KSB7fVxuXG4gIG9uVG91Y2hlZCgpIHt9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogKF86IGFueSkgPT4gdm9pZCk6IHZvaWQge1xuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgfVxuXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge31cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9hbGl2ZSA9IGZhbHNlO1xuICB9XG59XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4iXX0=
|