@colijnit/corecomponents_v12 12.2.26 → 12.2.28
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/bundles/colijnit-corecomponents_v12.umd.js +13792 -13682
- package/bundles/colijnit-corecomponents_v12.umd.js.map +1 -1
- package/colijnit-corecomponents_v12.d.ts +43 -43
- package/colijnit-corecomponents_v12.metadata.json +1 -1
- package/esm2015/colijnit-corecomponents_v12.js +43 -43
- package/esm2015/lib/components/article-tile/article-tile.component.js +49 -49
- package/esm2015/lib/components/article-tile/article-tile.module.js +34 -34
- package/esm2015/lib/components/base/base-input.component.js +833 -833
- package/esm2015/lib/components/base/base.module.js +21 -21
- package/esm2015/lib/components/base/commit-buttons/commit-buttons.component.js +85 -85
- package/esm2015/lib/components/base/commit-buttons/commit-buttons.module.js +20 -20
- package/esm2015/lib/components/base/dialog-base.component.js +5 -5
- package/esm2015/lib/components/base-input-date-picker/base-input-date-picker.directive.js +24 -24
- package/esm2015/lib/components/button/button.component.js +73 -73
- package/esm2015/lib/components/button/button.module.js +18 -18
- package/esm2015/lib/components/calendar/calendar-template.component.js +281 -281
- package/esm2015/lib/components/calendar/calendar.component.js +32 -32
- package/esm2015/lib/components/calendar/calendar.module.js +27 -27
- package/esm2015/lib/components/card/card.component.js +50 -50
- package/esm2015/lib/components/card/card.module.js +34 -34
- package/esm2015/lib/components/carousel/carousel.component.js +109 -109
- package/esm2015/lib/components/carousel/carousel.module.js +31 -31
- package/esm2015/lib/components/carousel-3d/carousel-3d.component.js +293 -293
- package/esm2015/lib/components/carousel-3d/carousel-3d.module.js +18 -18
- package/esm2015/lib/components/carousel-3d/carouselItem.js +53 -53
- package/esm2015/lib/components/checkmark-overlay/checkmark-overlay.component.js +72 -72
- package/esm2015/lib/components/checkmark-overlay/checkmark-overlay.module.js +18 -18
- package/esm2015/lib/components/co-dialog/co-dialog.component.js +91 -91
- package/esm2015/lib/components/co-dialog/co-dialog.module.js +18 -18
- package/esm2015/lib/components/co-dialog-wizard/co-dialog-wizard.component.js +35 -35
- package/esm2015/lib/components/co-dialog-wizard/co-dialog-wizard.module.js +16 -16
- package/esm2015/lib/components/collapsible/collapsible.component.js +67 -67
- package/esm2015/lib/components/collapsible/collapsible.module.js +18 -18
- package/esm2015/lib/components/color-picker/color-picker.component.js +33 -33
- package/esm2015/lib/components/color-picker/color-picker.module.js +20 -20
- package/esm2015/lib/components/core-dialog/confirmation-dialog/confirmation-dialog.component.js +46 -46
- package/esm2015/lib/components/core-dialog/core-dialog.module.js +38 -38
- package/esm2015/lib/components/core-dialog/core-dialog.service.js +66 -66
- package/esm2015/lib/components/core-dialog/core-dynamic-component.service.js +92 -92
- package/esm2015/lib/components/double-calendar/double-calendar.component.js +62 -62
- package/esm2015/lib/components/double-calendar/double-calendar.module.js +24 -24
- package/esm2015/lib/components/filter-item/filter-item-viewmodel.js +12 -12
- package/esm2015/lib/components/filter-item/filter-item.component.js +496 -496
- package/esm2015/lib/components/filter-item/filter-item.module.js +42 -42
- package/esm2015/lib/components/filter-item/filter-viewmodel.js +10 -10
- package/esm2015/lib/components/form/form.component.js +181 -181
- package/esm2015/lib/components/form/form.module.js +22 -22
- package/esm2015/lib/components/grid-toolbar/grid-toolbar.component.js +48 -48
- package/esm2015/lib/components/grid-toolbar/grid-toolbar.module.js +22 -22
- package/esm2015/lib/components/grid-toolbar-button/grid-toolbar-button.component.js +23 -23
- package/esm2015/lib/components/grid-toolbar-button/grid-toolbar-button.module.js +18 -18
- package/esm2015/lib/components/icon/icon-cache.service.js +51 -51
- package/esm2015/lib/components/icon/icon.component.js +47 -47
- package/esm2015/lib/components/icon/icon.module.js +24 -24
- package/esm2015/lib/components/icon-collapse-handle/icon-collapse-handle.component.js +56 -56
- package/esm2015/lib/components/icon-collapse-handle/icon-collapse-handle.module.js +22 -22
- package/esm2015/lib/components/image/image.component.js +31 -31
- package/esm2015/lib/components/image/image.module.js +13 -13
- package/esm2015/lib/components/input-checkbox/input-checkbox.component.js +71 -71
- package/esm2015/lib/components/input-checkbox/input-checkbox.module.js +18 -18
- package/esm2015/lib/components/input-date-picker/input-date-picker.component.js +74 -74
- package/esm2015/lib/components/input-date-picker/input-date-picker.module.js +25 -25
- package/esm2015/lib/components/input-date-range-picker/input-date-range-picker.component.js +107 -107
- package/esm2015/lib/components/input-date-range-picker/input-date-range-picker.module.js +26 -26
- package/esm2015/lib/components/input-number-picker/input-number-picker.component.js +285 -285
- package/esm2015/lib/components/input-number-picker/input-number-picker.module.js +22 -22
- package/esm2015/lib/components/input-radio-button/input-radio-button.component.js +77 -77
- package/esm2015/lib/components/input-radio-button/input-radio-button.module.js +18 -18
- package/esm2015/lib/components/input-scanner/bar-code-scanner.js +22 -22
- package/esm2015/lib/components/input-scanner/input-scanner.component.js +56 -56
- package/esm2015/lib/components/input-scanner/input-scanner.module.js +20 -20
- package/esm2015/lib/components/input-scanner/scanner.service.js +27 -27
- package/esm2015/lib/components/input-search/input-search.component.js +67 -63
- package/esm2015/lib/components/input-search/input-search.module.js +20 -20
- package/esm2015/lib/components/input-text/input-text.component.js +198 -194
- package/esm2015/lib/components/input-text/input-text.module.js +32 -32
- package/esm2015/lib/components/input-textarea/input-textarea.component.js +55 -55
- package/esm2015/lib/components/input-textarea/input-textarea.module.js +26 -26
- package/esm2015/lib/components/level-indicator/level-indicator-level.enum.js +6 -6
- package/esm2015/lib/components/level-indicator/level-indicator.component.js +29 -29
- package/esm2015/lib/components/level-indicator/level-indicator.module.js +14 -14
- package/esm2015/lib/components/list-of-values/list-of-values-multiselect-popup.component.js +87 -87
- package/esm2015/lib/components/list-of-values/list-of-values-popup.component.js +218 -218
- package/esm2015/lib/components/list-of-values/list-of-values.component.js +199 -199
- package/esm2015/lib/components/list-of-values/list-of-values.module.js +37 -37
- package/esm2015/lib/components/loader/loader.component.js +16 -16
- package/esm2015/lib/components/loader/loader.module.js +18 -18
- package/esm2015/lib/components/pagination/paginate.pipe.js +98 -98
- package/esm2015/lib/components/pagination/pagination-instance.js +1 -1
- package/esm2015/lib/components/pagination/pagination.component.js +107 -107
- package/esm2015/lib/components/pagination/pagination.module.js +27 -27
- package/esm2015/lib/components/pagination/pagination.service.js +87 -87
- package/esm2015/lib/components/pagination-bar/pagination-bar.component.js +136 -136
- package/esm2015/lib/components/pagination-bar/pagination-bar.module.js +18 -18
- package/esm2015/lib/components/popup/const/popup-window-token.js +2 -2
- package/esm2015/lib/components/popup/interface/popup-button.js +7 -7
- package/esm2015/lib/components/popup/interface/popup-close-event.js +1 -1
- package/esm2015/lib/components/popup/interface/popup-settings.js +41 -41
- package/esm2015/lib/components/popup/interface/popup.js +1 -1
- package/esm2015/lib/components/popup/model/popup-button-globals.js +10 -10
- package/esm2015/lib/components/popup/model/popup-window.js +37 -37
- package/esm2015/lib/components/popup/popup-buttons.component.js +42 -42
- package/esm2015/lib/components/popup/popup-message-display.component.js +37 -37
- package/esm2015/lib/components/popup/popup-window-shell.component.js +141 -141
- package/esm2015/lib/components/popup/popup.module.js +48 -48
- package/esm2015/lib/components/popup/service/popup-shower.service.js +89 -89
- package/esm2015/lib/components/popup/service/prompt.service.js +126 -126
- package/esm2015/lib/components/popup/text-input-popup.component.js +33 -33
- package/esm2015/lib/components/responsive-text/responsive-text.component.js +17 -17
- package/esm2015/lib/components/responsive-text/responsive-text.module.js +18 -18
- package/esm2015/lib/components/simple-grid/base-simple-grid.component.js +166 -164
- package/esm2015/lib/components/simple-grid/simple-grid-cell.component.js +141 -141
- package/esm2015/lib/components/simple-grid/simple-grid-column.directive.js +113 -111
- package/esm2015/lib/components/simple-grid/simple-grid.component.js +553 -412
- package/esm2015/lib/components/simple-grid/simple-grid.module.js +45 -41
- package/esm2015/lib/components/tile/tile.component.js +44 -44
- package/esm2015/lib/components/tile/tile.module.js +22 -22
- package/esm2015/lib/components/tile-select/tile-select.component.js +26 -26
- package/esm2015/lib/components/tile-select/tile-select.module.js +20 -20
- package/esm2015/lib/components/tooltip/tooltip.component.js +74 -74
- package/esm2015/lib/components/tooltip/tooltip.module.js +18 -18
- package/esm2015/lib/components/validation-error/validation-error.component.js +30 -30
- package/esm2015/lib/components/validation-error/validation-error.module.js +24 -24
- package/esm2015/lib/components/view-mode-buttons/content-view-mode.enum.js +10 -10
- package/esm2015/lib/components/view-mode-buttons/view-mode-buttons.component.js +41 -41
- package/esm2015/lib/components/view-mode-buttons/view-mode-buttons.module.js +20 -20
- package/esm2015/lib/core/constant/default-upper-bound-for-range-components.js +3 -3
- package/esm2015/lib/core/constant/java-max-int.js +1 -1
- package/esm2015/lib/core/constant/number-inputs-key-down-white-list.js +44 -44
- package/esm2015/lib/core/decorator/input-boolean.decorator.js +33 -33
- package/esm2015/lib/core/enum/co-direction.js +8 -8
- package/esm2015/lib/core/enum/co-document-image-display-kind.enum.js +6 -6
- package/esm2015/lib/core/enum/co-document-type.enum.js +10 -10
- package/esm2015/lib/core/enum/co-orientation.js +16 -16
- package/esm2015/lib/core/enum/core-components-icon.enum.js +299 -299
- package/esm2015/lib/core/enum/file-type-internal.enum.js +16 -16
- package/esm2015/lib/core/enum/file-type.enum.js +10 -10
- package/esm2015/lib/core/enum/filterItem-mode.enum.js +42 -42
- package/esm2015/lib/core/enum/input-number-picker-show-mode.enum.js +7 -7
- package/esm2015/lib/core/enum/keyboard-code.enum.js +73 -73
- package/esm2015/lib/core/enum/keyboard-key.enum.js +75 -75
- package/esm2015/lib/core/enum/object-right-type.enum.js +6 -6
- package/esm2015/lib/core/enum/popup-button-type.enum.js +11 -11
- package/esm2015/lib/core/enum/popup-type.enum.js +10 -10
- package/esm2015/lib/core/enum/table-name.enum.js +80 -80
- package/esm2015/lib/core/function/any-nill.function.js +5 -5
- package/esm2015/lib/core/function/is-nill.function.js +4 -4
- package/esm2015/lib/core/function/none-nill.function.js +16 -16
- package/esm2015/lib/core/function/not-nill.function.js +4 -4
- package/esm2015/lib/core/model/bounds-constrained-number-value.js +170 -170
- package/esm2015/lib/core/model/check-precision-and-scale-result.js +1 -1
- package/esm2015/lib/core/model/check-within-stepped-bounds-result.js +1 -1
- package/esm2015/lib/core/model/co-document-right.bo.js +2 -2
- package/esm2015/lib/core/model/co-document.bo.js +120 -120
- package/esm2015/lib/core/model/core-components-icon-svg.js +298 -298
- package/esm2015/lib/core/model/element-position.js +9 -9
- package/esm2015/lib/core/model/event/string-prompt-result-event.js +7 -7
- package/esm2015/lib/core/service/form-input-user-change-listener.service.js +24 -24
- package/esm2015/lib/core/service/form-master.service.js +101 -101
- package/esm2015/lib/core/service/ng-zone-wrapper.service.js +19 -19
- package/esm2015/lib/core/utils/array-utils.js +263 -263
- package/esm2015/lib/core/utils/browser-utils.js +99 -99
- package/esm2015/lib/core/utils/direction-enum-utils.js +13 -13
- package/esm2015/lib/core/utils/event-utils.js +52 -52
- package/esm2015/lib/core/utils/file-utils.js +266 -266
- package/esm2015/lib/core/utils/number-utils.js +308 -308
- package/esm2015/lib/core/utils/object-utils.js +185 -185
- package/esm2015/lib/core/utils/string-utils.js +93 -93
- package/esm2015/lib/core/validator/email.validator.js +5 -5
- package/esm2015/lib/core/validator/equal.validator.js +10 -10
- package/esm2015/lib/core/validator/max-string-length.validator.js +9 -9
- package/esm2015/lib/core/validator/password.validator.js +30 -30
- package/esm2015/lib/core/validator/precision-scale.validator.js +10 -10
- package/esm2015/lib/core/validator/required.validator.js +4 -4
- package/esm2015/lib/directives/clickoutside/click-outside-master.service.js +56 -56
- package/esm2015/lib/directives/clickoutside/click-outside.directive.js +70 -70
- package/esm2015/lib/directives/clickoutside/clickoutside.module.js +18 -18
- package/esm2015/lib/directives/observe-visibility/observe-visibility.directive.js +52 -52
- package/esm2015/lib/directives/observe-visibility/observe-visibility.module.js +14 -14
- package/esm2015/lib/directives/overlay/overlay-parent.directive.js +18 -18
- package/esm2015/lib/directives/overlay/overlay.directive.js +160 -160
- package/esm2015/lib/directives/overlay/overlay.module.js +17 -17
- package/esm2015/lib/directives/ripple/ripple-ref.js +25 -25
- package/esm2015/lib/directives/ripple/ripple-renderer.js +159 -159
- package/esm2015/lib/directives/ripple/ripple.directive.js +79 -79
- package/esm2015/lib/directives/ripple/ripple.module.js +23 -23
- package/esm2015/lib/directives/ripple/scroll-dispatcher.service.js +107 -107
- package/esm2015/lib/directives/ripple/scrollable.directive.js +39 -39
- package/esm2015/lib/directives/ripple/viewport-ruler.service.js +72 -72
- package/esm2015/lib/directives/screen-configuration/screen-configuration.directive.js +157 -157
- package/esm2015/lib/directives/screen-configuration/screen-configuration.module.js +18 -18
- package/esm2015/lib/directives/stopclick/stop-click.directive.js +37 -37
- package/esm2015/lib/directives/stopclick/stop-click.module.js +14 -14
- package/esm2015/lib/directives/template-wrapper/template-wrapper.directive.js +67 -67
- package/esm2015/lib/directives/template-wrapper/template-wrapper.module.js +14 -14
- package/esm2015/lib/directives/tooltip/tooltip-directive.module.js +18 -18
- package/esm2015/lib/directives/tooltip/tooltip.directive.js +77 -77
- package/esm2015/lib/interfaces/dialog-response.interface.js +1 -1
- package/esm2015/lib/interfaces/scanner-input.interface.js +1 -1
- package/esm2015/lib/interfaces/screen-config-adapter-component-interface-name.js +3 -3
- package/esm2015/lib/interfaces/screen-config-adapter.component.interface.js +1 -1
- package/esm2015/lib/model/enum/app-button-type.enum.js +10 -10
- package/esm2015/lib/model/enum/app-popup-type.enum.js +7 -7
- package/esm2015/lib/pipes/append.pipe.js +16 -16
- package/esm2015/lib/pipes/append.pipe.module.js +14 -14
- package/esm2015/lib/pipes/filter.pipe.js +15 -15
- package/esm2015/lib/pipes/filter.pipe.module.js +14 -14
- package/esm2015/lib/pipes/prepend.pipe.js +16 -16
- package/esm2015/lib/pipes/prepend.pipe.module.js +14 -14
- package/esm2015/lib/pipes/price-display-pipe.module.js +14 -14
- package/esm2015/lib/pipes/price-display.pipe.js +19 -19
- package/esm2015/lib/service/base-module-screen-config.service.js +204 -204
- package/esm2015/lib/service/base-module.service.js +41 -41
- package/esm2015/lib/service/color-sequence.service.js +22 -22
- package/esm2015/lib/service/overlay.service.js +72 -72
- package/esm2015/lib/translation/core-components-translation.module.js +28 -28
- package/esm2015/lib/translation/core-components-translation.service.js +16 -16
- package/esm2015/lib/translation/core-dictionary.service.js +28 -28
- package/esm2015/lib/translation/core-localize.pipe.js +25 -25
- package/esm2015/public-api.js +129 -129
- package/fesm2015/colijnit-corecomponents_v12.js +12271 -12118
- package/fesm2015/colijnit-corecomponents_v12.js.map +1 -1
- package/lib/components/article-tile/article-tile.component.d.ts +22 -22
- package/lib/components/article-tile/article-tile.module.d.ts +2 -2
- package/lib/components/base/base-input.component.d.ts +182 -182
- package/lib/components/base/base.module.d.ts +2 -2
- package/lib/components/base/commit-buttons/commit-buttons.component.d.ts +21 -21
- package/lib/components/base/commit-buttons/commit-buttons.module.d.ts +2 -2
- package/lib/components/base/dialog-base.component.d.ts +4 -4
- package/lib/components/base-input-date-picker/base-input-date-picker.directive.d.ts +15 -15
- package/lib/components/button/button.component.d.ts +29 -29
- package/lib/components/button/button.module.d.ts +2 -2
- package/lib/components/calendar/calendar-template.component.d.ts +60 -60
- package/lib/components/calendar/calendar.component.d.ts +13 -13
- package/lib/components/calendar/calendar.module.d.ts +2 -2
- package/lib/components/card/card.component.d.ts +23 -23
- package/lib/components/card/card.module.d.ts +2 -2
- package/lib/components/carousel/carousel.component.d.ts +23 -23
- package/lib/components/carousel/carousel.module.d.ts +6 -6
- package/lib/components/carousel-3d/carousel-3d.component.d.ts +55 -55
- package/lib/components/carousel-3d/carousel-3d.module.d.ts +2 -2
- package/lib/components/carousel-3d/carouselItem.d.ts +13 -13
- package/lib/components/checkmark-overlay/checkmark-overlay.component.d.ts +17 -17
- package/lib/components/checkmark-overlay/checkmark-overlay.module.d.ts +2 -2
- package/lib/components/co-dialog/co-dialog.component.d.ts +23 -23
- package/lib/components/co-dialog/co-dialog.module.d.ts +2 -2
- package/lib/components/co-dialog-wizard/co-dialog-wizard.component.d.ts +9 -9
- package/lib/components/co-dialog-wizard/co-dialog-wizard.module.d.ts +2 -2
- package/lib/components/collapsible/collapsible.component.d.ts +22 -22
- package/lib/components/collapsible/collapsible.module.d.ts +2 -2
- package/lib/components/color-picker/color-picker.component.d.ts +6 -6
- package/lib/components/color-picker/color-picker.module.d.ts +2 -2
- package/lib/components/core-dialog/confirmation-dialog/confirmation-dialog.component.d.ts +20 -20
- package/lib/components/core-dialog/core-dialog.module.d.ts +4 -4
- package/lib/components/core-dialog/core-dialog.service.d.ts +15 -15
- package/lib/components/core-dialog/core-dynamic-component.service.d.ts +12 -12
- package/lib/components/double-calendar/double-calendar.component.d.ts +18 -18
- package/lib/components/double-calendar/double-calendar.module.d.ts +2 -2
- package/lib/components/filter-item/filter-item-viewmodel.d.ts +9 -9
- package/lib/components/filter-item/filter-item.component.d.ts +80 -80
- package/lib/components/filter-item/filter-item.module.d.ts +2 -2
- package/lib/components/filter-item/filter-viewmodel.d.ts +8 -8
- package/lib/components/form/form.component.d.ts +39 -39
- package/lib/components/form/form.module.d.ts +2 -2
- package/lib/components/grid-toolbar/grid-toolbar.component.d.ts +19 -19
- package/lib/components/grid-toolbar/grid-toolbar.module.d.ts +2 -2
- package/lib/components/grid-toolbar-button/grid-toolbar-button.component.d.ts +8 -8
- package/lib/components/grid-toolbar-button/grid-toolbar-button.module.d.ts +2 -2
- package/lib/components/icon/icon-cache.service.d.ts +20 -20
- package/lib/components/icon/icon.component.d.ts +17 -17
- package/lib/components/icon/icon.module.d.ts +2 -2
- package/lib/components/icon-collapse-handle/icon-collapse-handle.component.d.ts +21 -21
- package/lib/components/icon-collapse-handle/icon-collapse-handle.module.d.ts +2 -2
- package/lib/components/image/image.component.d.ts +20 -20
- package/lib/components/image/image.module.d.ts +2 -2
- package/lib/components/input-checkbox/input-checkbox.component.d.ts +24 -24
- package/lib/components/input-checkbox/input-checkbox.module.d.ts +2 -2
- package/lib/components/input-date-picker/input-date-picker.component.d.ts +12 -12
- package/lib/components/input-date-picker/input-date-picker.module.d.ts +2 -2
- package/lib/components/input-date-range-picker/input-date-range-picker.component.d.ts +20 -20
- package/lib/components/input-date-range-picker/input-date-range-picker.module.d.ts +2 -2
- package/lib/components/input-number-picker/input-number-picker.component.d.ts +73 -73
- package/lib/components/input-number-picker/input-number-picker.module.d.ts +2 -2
- package/lib/components/input-radio-button/input-radio-button.component.d.ts +19 -19
- package/lib/components/input-radio-button/input-radio-button.module.d.ts +2 -2
- package/lib/components/input-scanner/bar-code-scanner.d.ts +7 -7
- package/lib/components/input-scanner/input-scanner.component.d.ts +24 -24
- package/lib/components/input-scanner/input-scanner.module.d.ts +2 -2
- package/lib/components/input-scanner/scanner.service.d.ts +11 -11
- package/lib/components/input-search/input-search.component.d.ts +20 -19
- package/lib/components/input-search/input-search.module.d.ts +2 -2
- package/lib/components/input-text/input-text.component.d.ts +66 -65
- package/lib/components/input-text/input-text.module.d.ts +2 -2
- package/lib/components/input-textarea/input-textarea.component.d.ts +19 -19
- package/lib/components/input-textarea/input-textarea.module.d.ts +2 -2
- package/lib/components/level-indicator/level-indicator-level.enum.d.ts +5 -5
- package/lib/components/level-indicator/level-indicator.component.d.ts +10 -10
- package/lib/components/level-indicator/level-indicator.module.d.ts +2 -2
- package/lib/components/list-of-values/list-of-values-multiselect-popup.component.d.ts +25 -25
- package/lib/components/list-of-values/list-of-values-popup.component.d.ts +47 -47
- package/lib/components/list-of-values/list-of-values.component.d.ts +37 -37
- package/lib/components/list-of-values/list-of-values.module.d.ts +2 -2
- package/lib/components/loader/loader.component.d.ts +3 -3
- package/lib/components/loader/loader.module.d.ts +2 -2
- package/lib/components/pagination/paginate.pipe.d.ts +15 -15
- package/lib/components/pagination/pagination-instance.d.ts +14 -14
- package/lib/components/pagination/pagination.component.d.ts +38 -38
- package/lib/components/pagination/pagination.module.d.ts +2 -2
- package/lib/components/pagination/pagination.service.d.ts +24 -24
- package/lib/components/pagination-bar/pagination-bar.component.d.ts +33 -33
- package/lib/components/pagination-bar/pagination-bar.module.d.ts +2 -2
- package/lib/components/popup/const/popup-window-token.d.ts +3 -3
- package/lib/components/popup/interface/popup-button.d.ts +8 -8
- package/lib/components/popup/interface/popup-close-event.d.ts +5 -5
- package/lib/components/popup/interface/popup-settings.d.ts +21 -21
- package/lib/components/popup/interface/popup.d.ts +9 -9
- package/lib/components/popup/model/popup-button-globals.d.ts +9 -9
- package/lib/components/popup/model/popup-window.d.ts +21 -21
- package/lib/components/popup/popup-buttons.component.d.ts +13 -13
- package/lib/components/popup/popup-message-display.component.d.ts +12 -12
- package/lib/components/popup/popup-window-shell.component.d.ts +42 -42
- package/lib/components/popup/popup.module.d.ts +4 -4
- package/lib/components/popup/service/popup-shower.service.d.ts +17 -17
- package/lib/components/popup/service/prompt.service.d.ts +17 -17
- package/lib/components/popup/text-input-popup.component.d.ts +12 -12
- package/lib/components/responsive-text/responsive-text.component.d.ts +4 -4
- package/lib/components/responsive-text/responsive-text.module.d.ts +2 -2
- package/lib/components/simple-grid/base-simple-grid.component.d.ts +53 -52
- package/lib/components/simple-grid/simple-grid-cell.component.d.ts +30 -30
- package/lib/components/simple-grid/simple-grid-column.directive.d.ts +43 -42
- package/lib/components/simple-grid/simple-grid.component.d.ts +77 -64
- package/lib/components/simple-grid/simple-grid.module.d.ts +2 -2
- package/lib/components/simple-grid/style/_layout.scss +68 -0
- package/lib/components/tile/tile.component.d.ts +16 -16
- package/lib/components/tile/tile.module.d.ts +2 -2
- package/lib/components/tile-select/tile-select.component.d.ts +8 -8
- package/lib/components/tile-select/tile-select.module.d.ts +2 -2
- package/lib/components/tooltip/tooltip.component.d.ts +18 -18
- package/lib/components/tooltip/tooltip.module.d.ts +2 -2
- package/lib/components/validation-error/validation-error.component.d.ts +12 -12
- package/lib/components/validation-error/validation-error.module.d.ts +2 -2
- package/lib/components/view-mode-buttons/content-view-mode.enum.d.ts +8 -8
- package/lib/components/view-mode-buttons/view-mode-buttons.component.d.ts +17 -17
- package/lib/components/view-mode-buttons/view-mode-buttons.module.d.ts +2 -2
- package/lib/core/constant/default-upper-bound-for-range-components.d.ts +2 -2
- package/lib/core/constant/java-max-int.d.ts +1 -1
- package/lib/core/constant/number-inputs-key-down-white-list.d.ts +2 -2
- package/lib/core/decorator/input-boolean.decorator.d.ts +8 -8
- package/lib/core/enum/co-direction.d.ts +6 -6
- package/lib/core/enum/co-document-image-display-kind.enum.d.ts +5 -5
- package/lib/core/enum/co-document-type.enum.d.ts +5 -5
- package/lib/core/enum/co-orientation.d.ts +6 -6
- package/lib/core/enum/core-components-icon.enum.d.ts +298 -298
- package/lib/core/enum/file-type-internal.enum.d.ts +15 -15
- package/lib/core/enum/file-type.enum.d.ts +5 -5
- package/lib/core/enum/filterItem-mode.enum.d.ts +15 -15
- package/lib/core/enum/input-number-picker-show-mode.enum.d.ts +5 -5
- package/lib/core/enum/keyboard-code.enum.d.ts +71 -71
- package/lib/core/enum/keyboard-key.enum.d.ts +70 -70
- package/lib/core/enum/object-right-type.enum.d.ts +5 -5
- package/lib/core/enum/popup-button-type.enum.d.ts +9 -9
- package/lib/core/enum/popup-type.enum.d.ts +9 -9
- package/lib/core/enum/table-name.enum.d.ts +79 -79
- package/lib/core/function/any-nill.function.d.ts +1 -1
- package/lib/core/function/is-nill.function.d.ts +1 -1
- package/lib/core/function/none-nill.function.d.ts +1 -1
- package/lib/core/function/not-nill.function.d.ts +1 -1
- package/lib/core/model/bounds-constrained-number-value.d.ts +46 -46
- package/lib/core/model/check-precision-and-scale-result.d.ts +4 -4
- package/lib/core/model/check-within-stepped-bounds-result.d.ts +8 -8
- package/lib/core/model/co-document-right.bo.d.ts +6 -6
- package/lib/core/model/co-document.bo.d.ts +61 -61
- package/lib/core/model/core-components-icon-svg.d.ts +4 -4
- package/lib/core/model/element-position.d.ts +7 -7
- package/lib/core/model/event/string-prompt-result-event.d.ts +6 -6
- package/lib/core/service/form-input-user-change-listener.service.d.ts +10 -10
- package/lib/core/service/form-master.service.d.ts +26 -26
- package/lib/core/service/ng-zone-wrapper.service.d.ts +6 -6
- package/lib/core/utils/array-utils.d.ts +85 -85
- package/lib/core/utils/browser-utils.d.ts +15 -15
- package/lib/core/utils/direction-enum-utils.d.ts +5 -5
- package/lib/core/utils/event-utils.d.ts +12 -12
- package/lib/core/utils/file-utils.d.ts +29 -29
- package/lib/core/utils/number-utils.d.ts +89 -89
- package/lib/core/utils/object-utils.d.ts +31 -31
- package/lib/core/utils/string-utils.d.ts +25 -25
- package/lib/core/validator/email.validator.d.ts +2 -2
- package/lib/core/validator/equal.validator.d.ts +2 -2
- package/lib/core/validator/max-string-length.validator.d.ts +2 -2
- package/lib/core/validator/password.validator.d.ts +3 -3
- package/lib/core/validator/precision-scale.validator.d.ts +2 -2
- package/lib/core/validator/required.validator.d.ts +2 -2
- package/lib/directives/clickoutside/click-outside-master.service.d.ts +15 -15
- package/lib/directives/clickoutside/click-outside.directive.d.ts +18 -18
- package/lib/directives/clickoutside/clickoutside.module.d.ts +2 -2
- package/lib/directives/observe-visibility/observe-visibility.directive.d.ts +14 -14
- package/lib/directives/observe-visibility/observe-visibility.module.d.ts +2 -2
- package/lib/directives/overlay/overlay-parent.directive.d.ts +6 -6
- package/lib/directives/overlay/overlay.directive.d.ts +25 -25
- package/lib/directives/overlay/overlay.module.d.ts +2 -2
- package/lib/directives/ripple/ripple-ref.d.ts +21 -21
- package/lib/directives/ripple/ripple-renderer.d.ts +56 -56
- package/lib/directives/ripple/ripple.directive.d.ts +56 -56
- package/lib/directives/ripple/ripple.module.d.ts +2 -2
- package/lib/directives/ripple/scroll-dispatcher.service.d.ts +51 -51
- package/lib/directives/ripple/scrollable.directive.d.ts +20 -20
- package/lib/directives/ripple/viewport-ruler.service.d.ts +29 -29
- package/lib/directives/screen-configuration/screen-configuration.directive.d.ts +32 -32
- package/lib/directives/screen-configuration/screen-configuration.module.d.ts +2 -2
- package/lib/directives/stopclick/stop-click.directive.d.ts +10 -10
- package/lib/directives/stopclick/stop-click.module.d.ts +2 -2
- package/lib/directives/template-wrapper/template-wrapper.directive.d.ts +13 -13
- package/lib/directives/template-wrapper/template-wrapper.module.d.ts +2 -2
- package/lib/directives/tooltip/tooltip-directive.module.d.ts +2 -2
- package/lib/directives/tooltip/tooltip.directive.d.ts +20 -20
- package/lib/interfaces/dialog-response.interface.d.ts +6 -6
- package/lib/interfaces/scanner-input.interface.d.ts +3 -3
- package/lib/interfaces/screen-config-adapter-component-interface-name.d.ts +3 -3
- package/lib/interfaces/screen-config-adapter.component.interface.d.ts +10 -10
- package/lib/model/enum/app-button-type.enum.d.ts +9 -9
- package/lib/model/enum/app-popup-type.enum.d.ts +6 -6
- package/lib/pipes/append.pipe.d.ts +4 -4
- package/lib/pipes/append.pipe.module.d.ts +2 -2
- package/lib/pipes/filter.pipe.d.ts +4 -4
- package/lib/pipes/filter.pipe.module.d.ts +2 -2
- package/lib/pipes/prepend.pipe.d.ts +4 -4
- package/lib/pipes/prepend.pipe.module.d.ts +2 -2
- package/lib/pipes/price-display-pipe.module.d.ts +2 -2
- package/lib/pipes/price-display.pipe.d.ts +4 -4
- package/lib/service/base-module-screen-config.service.d.ts +47 -47
- package/lib/service/base-module.service.d.ts +22 -22
- package/lib/service/color-sequence.service.d.ts +4 -4
- package/lib/service/overlay.service.d.ts +13 -13
- package/lib/translation/core-components-translation.module.d.ts +4 -4
- package/lib/translation/core-components-translation.service.d.ts +6 -6
- package/lib/translation/core-dictionary.service.d.ts +12 -12
- package/lib/translation/core-localize.pipe.d.ts +7 -7
- package/package.json +1 -1
- package/public-api.d.ts +126 -126
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export class CoDocumentRight {
|
|
2
|
-
}
|
|
1
|
+
export class CoDocumentRight {
|
|
2
|
+
}
|
|
3
3
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY28tZG9jdW1lbnQtcmlnaHQuYm8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvcmUvbW9kZWwvY28tZG9jdW1lbnQtcmlnaHQuYm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLGVBQWU7Q0FNM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYmplY3RSaWdodFR5cGUgfSBmcm9tICcuLi9lbnVtL29iamVjdC1yaWdodC10eXBlLmVudW0nO1xuXG5leHBvcnQgY2xhc3MgQ29Eb2N1bWVudFJpZ2h0IHtcblxuICAgIHB1YmxpYyB1c2VyR3JvdXBJZDogbnVtYmVyO1xuICAgIHB1YmxpYyBkb2N1bWVudElkOiBudW1iZXI7XG4gICAgcHVibGljIHJpZ2h0TGV2ZWw6IE9iamVjdFJpZ2h0VHlwZTtcblxufVxuIl19
|
|
@@ -1,121 +1,121 @@
|
|
|
1
|
-
import { FileType } from '../enum/file-type.enum';
|
|
2
|
-
import { FileTypeInternal } from '../enum/file-type-internal.enum';
|
|
3
|
-
import { FileUtils } from '../utils/file-utils';
|
|
4
|
-
import { CoDocumentImageDisplayKind } from '../enum/co-document-image-display-kind.enum';
|
|
5
|
-
import { ObjectRightType } from '../enum/object-right-type.enum';
|
|
6
|
-
import { Subject } from 'rxjs';
|
|
7
|
-
// See DocumentDTO.
|
|
8
|
-
export class CoDocument {
|
|
9
|
-
constructor() {
|
|
10
|
-
// @ComplexArray(CoDocumentRight)
|
|
11
|
-
this.rights = [];
|
|
12
|
-
this.retailFormulas = [];
|
|
13
|
-
//
|
|
14
|
-
// @NoDbField()
|
|
15
|
-
// @ComplexField(Subject)
|
|
16
|
-
this.documentBodyChange = new Subject();
|
|
17
|
-
}
|
|
18
|
-
set documentId(value) {
|
|
19
|
-
this._documentId = value;
|
|
20
|
-
// this._idObject.docId = value;
|
|
21
|
-
}
|
|
22
|
-
get documentId() {
|
|
23
|
-
return this._documentId;
|
|
24
|
-
}
|
|
25
|
-
set documentBody(documentBody) {
|
|
26
|
-
const prev = this._documentBody;
|
|
27
|
-
this._documentBody = documentBody;
|
|
28
|
-
if (prev !== this._documentBody) {
|
|
29
|
-
this.documentBodyChange.next(this._documentBody);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
get documentBody() {
|
|
33
|
-
return this._documentBody;
|
|
34
|
-
}
|
|
35
|
-
// @NoDbField()
|
|
36
|
-
// public idForLink: number;
|
|
37
|
-
// The internal file type of this document (the MimeType iOneJS uses internally)
|
|
38
|
-
get fileTypeInternal() {
|
|
39
|
-
if (!this._fileTypeInternal) {
|
|
40
|
-
const fileType = FileUtils.FileNameToFileTypeInternal(this.fileName);
|
|
41
|
-
if (fileType) {
|
|
42
|
-
this._fileTypeInternal = fileType;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
return this._fileTypeInternal;
|
|
46
|
-
}
|
|
47
|
-
/**
|
|
48
|
-
* The mimetype of this document: uses database-fetched this.mimeType, or calculates / guesses the mime type of the document
|
|
49
|
-
* if that was not set.
|
|
50
|
-
*/
|
|
51
|
-
get mimeTypeInternal() {
|
|
52
|
-
if (this._mimeTypeInternal) {
|
|
53
|
-
return this._mimeTypeInternal;
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
56
|
-
this._initMimetypeInternal();
|
|
57
|
-
return this._mimeTypeInternal;
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
set mimeTypeInternal(value) {
|
|
61
|
-
this._mimeTypeInternal = value;
|
|
62
|
-
}
|
|
63
|
-
// Gives either the document-(prio) or the thumbnail body. Or undefined if not exist.
|
|
64
|
-
get bodyAsDataUri() {
|
|
65
|
-
if (this._documentBody) {
|
|
66
|
-
return this.documentBodyAsDataUri;
|
|
67
|
-
}
|
|
68
|
-
else if (this.thumbnailBody) {
|
|
69
|
-
return this.thumbnailBodyAsDataUri;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
// The body of this document as a data uri. The data uri also contains the mimetype in its string, and the fact that it's base64.
|
|
73
|
-
get documentBodyAsDataUri() {
|
|
74
|
-
try {
|
|
75
|
-
return FileUtils.DocumentBodyToDataUri(this.documentBody, this.mimeTypeInternal);
|
|
76
|
-
}
|
|
77
|
-
catch (error) {
|
|
78
|
-
return "";
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
// The Thumbnailbody of this document as a data uri. The data uri also contains the mimetype in its string, and the fact that it's base64.
|
|
82
|
-
get thumbnailBodyAsDataUri() {
|
|
83
|
-
try {
|
|
84
|
-
return FileUtils.DocumentBodyToDataUri(this.thumbnailBody, this.mimeTypeInternal);
|
|
85
|
-
}
|
|
86
|
-
catch (error) {
|
|
87
|
-
return "";
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
get isAvatar() {
|
|
91
|
-
return this.imageDisplayKind === CoDocumentImageDisplayKind.Avatar;
|
|
92
|
-
}
|
|
93
|
-
//
|
|
94
|
-
// @NoDbField()
|
|
95
|
-
// private _idObject: any = {};
|
|
96
|
-
get readonly() {
|
|
97
|
-
return this.rightLevel === ObjectRightType.ReadOnly;
|
|
98
|
-
}
|
|
99
|
-
getId() {
|
|
100
|
-
return this.documentId;
|
|
101
|
-
}
|
|
102
|
-
// Returns whether this is an image document or not.
|
|
103
|
-
isImageDocument() {
|
|
104
|
-
return (this.fileTypeInternal === FileTypeInternal.Image);
|
|
105
|
-
}
|
|
106
|
-
// @BoSerializerStep()
|
|
107
|
-
preventOverridingThumbnailToEmpty() {
|
|
108
|
-
if (!this.thumbnailBody) {
|
|
109
|
-
this.thumbnailBody = this._documentBody;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
// POSTCONDITION: this._mimeTypeInternal contains, to our best abilities, the true mimeType of this document, a-la "image/jpg"
|
|
113
|
-
_initMimetypeInternal() {
|
|
114
|
-
// if no fileType, default to FileType.Image for internal mimetype initialization
|
|
115
|
-
if ((this.fileType === FileType.Image || !this.fileType) && this.fileName) {
|
|
116
|
-
const fileExtension = this.fileName.substr(this.fileName.lastIndexOf(".") + 1);
|
|
117
|
-
this._mimeTypeInternal = "image/" + fileExtension;
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
}
|
|
1
|
+
import { FileType } from '../enum/file-type.enum';
|
|
2
|
+
import { FileTypeInternal } from '../enum/file-type-internal.enum';
|
|
3
|
+
import { FileUtils } from '../utils/file-utils';
|
|
4
|
+
import { CoDocumentImageDisplayKind } from '../enum/co-document-image-display-kind.enum';
|
|
5
|
+
import { ObjectRightType } from '../enum/object-right-type.enum';
|
|
6
|
+
import { Subject } from 'rxjs';
|
|
7
|
+
// See DocumentDTO.
|
|
8
|
+
export class CoDocument {
|
|
9
|
+
constructor() {
|
|
10
|
+
// @ComplexArray(CoDocumentRight)
|
|
11
|
+
this.rights = [];
|
|
12
|
+
this.retailFormulas = [];
|
|
13
|
+
//
|
|
14
|
+
// @NoDbField()
|
|
15
|
+
// @ComplexField(Subject)
|
|
16
|
+
this.documentBodyChange = new Subject();
|
|
17
|
+
}
|
|
18
|
+
set documentId(value) {
|
|
19
|
+
this._documentId = value;
|
|
20
|
+
// this._idObject.docId = value;
|
|
21
|
+
}
|
|
22
|
+
get documentId() {
|
|
23
|
+
return this._documentId;
|
|
24
|
+
}
|
|
25
|
+
set documentBody(documentBody) {
|
|
26
|
+
const prev = this._documentBody;
|
|
27
|
+
this._documentBody = documentBody;
|
|
28
|
+
if (prev !== this._documentBody) {
|
|
29
|
+
this.documentBodyChange.next(this._documentBody);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
get documentBody() {
|
|
33
|
+
return this._documentBody;
|
|
34
|
+
}
|
|
35
|
+
// @NoDbField()
|
|
36
|
+
// public idForLink: number;
|
|
37
|
+
// The internal file type of this document (the MimeType iOneJS uses internally)
|
|
38
|
+
get fileTypeInternal() {
|
|
39
|
+
if (!this._fileTypeInternal) {
|
|
40
|
+
const fileType = FileUtils.FileNameToFileTypeInternal(this.fileName);
|
|
41
|
+
if (fileType) {
|
|
42
|
+
this._fileTypeInternal = fileType;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return this._fileTypeInternal;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* The mimetype of this document: uses database-fetched this.mimeType, or calculates / guesses the mime type of the document
|
|
49
|
+
* if that was not set.
|
|
50
|
+
*/
|
|
51
|
+
get mimeTypeInternal() {
|
|
52
|
+
if (this._mimeTypeInternal) {
|
|
53
|
+
return this._mimeTypeInternal;
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
this._initMimetypeInternal();
|
|
57
|
+
return this._mimeTypeInternal;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
set mimeTypeInternal(value) {
|
|
61
|
+
this._mimeTypeInternal = value;
|
|
62
|
+
}
|
|
63
|
+
// Gives either the document-(prio) or the thumbnail body. Or undefined if not exist.
|
|
64
|
+
get bodyAsDataUri() {
|
|
65
|
+
if (this._documentBody) {
|
|
66
|
+
return this.documentBodyAsDataUri;
|
|
67
|
+
}
|
|
68
|
+
else if (this.thumbnailBody) {
|
|
69
|
+
return this.thumbnailBodyAsDataUri;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
// The body of this document as a data uri. The data uri also contains the mimetype in its string, and the fact that it's base64.
|
|
73
|
+
get documentBodyAsDataUri() {
|
|
74
|
+
try {
|
|
75
|
+
return FileUtils.DocumentBodyToDataUri(this.documentBody, this.mimeTypeInternal);
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
return "";
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
// The Thumbnailbody of this document as a data uri. The data uri also contains the mimetype in its string, and the fact that it's base64.
|
|
82
|
+
get thumbnailBodyAsDataUri() {
|
|
83
|
+
try {
|
|
84
|
+
return FileUtils.DocumentBodyToDataUri(this.thumbnailBody, this.mimeTypeInternal);
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
return "";
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
get isAvatar() {
|
|
91
|
+
return this.imageDisplayKind === CoDocumentImageDisplayKind.Avatar;
|
|
92
|
+
}
|
|
93
|
+
//
|
|
94
|
+
// @NoDbField()
|
|
95
|
+
// private _idObject: any = {};
|
|
96
|
+
get readonly() {
|
|
97
|
+
return this.rightLevel === ObjectRightType.ReadOnly;
|
|
98
|
+
}
|
|
99
|
+
getId() {
|
|
100
|
+
return this.documentId;
|
|
101
|
+
}
|
|
102
|
+
// Returns whether this is an image document or not.
|
|
103
|
+
isImageDocument() {
|
|
104
|
+
return (this.fileTypeInternal === FileTypeInternal.Image);
|
|
105
|
+
}
|
|
106
|
+
// @BoSerializerStep()
|
|
107
|
+
preventOverridingThumbnailToEmpty() {
|
|
108
|
+
if (!this.thumbnailBody) {
|
|
109
|
+
this.thumbnailBody = this._documentBody;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
// POSTCONDITION: this._mimeTypeInternal contains, to our best abilities, the true mimeType of this document, a-la "image/jpg"
|
|
113
|
+
_initMimetypeInternal() {
|
|
114
|
+
// if no fileType, default to FileType.Image for internal mimetype initialization
|
|
115
|
+
if ((this.fileType === FileType.Image || !this.fileType) && this.fileName) {
|
|
116
|
+
const fileExtension = this.fileName.substr(this.fileName.lastIndexOf(".") + 1);
|
|
117
|
+
this._mimeTypeInternal = "image/" + fileExtension;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
121
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY28tZG9jdW1lbnQuYm8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvcmUvbW9kZWwvY28tZG9jdW1lbnQuYm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2xELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN6RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDakUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvQixtQkFBbUI7QUFDbkIsTUFBTSxPQUFPLFVBQVU7SUEySm5CO1FBN0dBLGlDQUFpQztRQUMxQixXQUFNLEdBQXNCLEVBQUUsQ0FBQztRQW9CL0IsbUJBQWMsR0FBYSxFQUFFLENBQUM7UUFxRXJDLEVBQUU7UUFDRixlQUFlO1FBQ2YseUJBQXlCO1FBQ1QsdUJBQWtCLEdBQW9CLElBQUksT0FBTyxFQUFVLENBQUM7SUFpQjVFLENBQUM7SUEzSkQsSUFBVyxVQUFVLENBQUMsS0FBYTtRQUMvQixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUN6QixnQ0FBZ0M7SUFDcEMsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQXlDRCxJQUFXLFlBQVksQ0FBQyxZQUFvQjtRQUN4QyxNQUFNLElBQUksR0FBVyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBRXhDLElBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDO1FBRWxDLElBQUksSUFBSSxLQUFLLElBQUksQ0FB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QUFDLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUN2RSxNQUFNLGFBQWEsR0FBVyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN2RixJQUFJLENBQUMsaUJBQWlCLEdBQUcsUUFBUSxHQUFHLGFBQWEsQ0FBQztTQUNyRDtJQUNMLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhYmxlTmFtZSB9IGZyb20gJy4uL2VudW0vdGFibGUtbmFtZS5lbnVtJztcclxuaW1wb3J0IHsgQ29Eb2N1bWVudFR5cGUgfSBmcm9tICcuLi9lbnVtL2NvLWRvY3VtZW50LXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IEZpbGVUeXBlIH0gZnJvbSAnLi4vZW51bS9maWxlLXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IEZpbGVUeXBlSW50ZXJuYWwgfSBmcm9tICcuLi9lbnVtL2ZpbGUtdHlwZS1pbnRlcm5hbC5lbnVtJztcclxuaW1wb3J0IHsgRmlsZVV0aWxzIH0gZnJvbSAnLi4vdXRpbHMvZmlsZS11dGlscyc7XHJcbmltcG9ydCB7IENvRG9jdW1lbnRJbWFnZURpc3BsYXlLaW5kIH0gZnJvbSAnLi4vZW51bS9jby1kb2N1bWVudC1pbWFnZS1kaXNwbGF5LWtpbmQuZW51bSc7XHJcbmltcG9ydCB7IE9iamVjdFJpZ2h0VHlwZSB9IGZyb20gJy4uL2VudW0vb2JqZWN0LXJpZ2h0LXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ29Eb2N1bWVudFJpZ2h0IH0gZnJvbSAnLi9jby1kb2N1bWVudC1yaWdodC5ibyc7XHJcbi8vIFNlZSBEb2N1bWVudERUTy5cclxuZXhwb3J0IGNsYXNzIENvRG9jdW1lbnQge1xyXG4gICAgcHVibGljIHNldCBkb2N1bWVudElkKHZhbHVlOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLl9kb2N1bWVudElkID0gdmFsdWU7XHJcbiAgICAgICAgLy8gdGhpcy5faWRPYmplY3QuZG9jSWQgPSB2YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IGRvY3VtZW50SWQoKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZG9jdW1lbnRJZDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBARGF0ZUZpZWxkKClcclxuICAgIHB1YmxpYyBjcmVhdGlvbkRhdGU6IERhdGU7XHJcbiAgICAvLyBARGF0ZUZpZWxkKClcclxuICAgIHB1YmxpYyBtb2RpZmllZERhdGU6IERhdGU7XHJcbiAgICAvLyBwdWJsaWMgY3JlYXRpb25Vc2VyOiBzdHJpbmc7XHJcbiAgICAvLyBwdWJsaWMgbW9kaWZpZWRVc2VyOiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgZGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIHB1YmxpYyB0aHVtYm5haWxCb2R5OiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgdGFibGU6IFRhYmxlTmFtZTtcclxuICAgIHB1YmxpYyBrZXk6IHN0cmluZztcclxuICAgIHB1YmxpYyBmaWxlUGF0aDogc3RyaW5nO1xyXG4gICAgcHVibGljIGRvY3VtZW50VHlwZTogQ29Eb2N1bWVudFR5cGU7XHJcbiAgICAvKipcclxuICAgICAqIFRoZSBkYXRhYmFzZS1mZXRjaGVkIG1pbWV0eXBlIG9mIHRoaXMgZG9jdW1lbnQuIE5vdGU6IGlzIGJhcmVseSBzZXQgdG8gYSB2YWx1ZSwgYW5kIHdoZW4gaXQncyBzZXQsIGl0J3MgdXN1YWxseSBnYXJiYWdlIGRhdGEuXHJcbiAgICAgKiBVc2UgLm1pbWVUeXBlSW50ZXJuYWwgaWYgeW91IHdhbnQgdGhlIGJlc3QgZWR1Y2F0ZWQgZ3Vlc3Mgb2YgdGhlIHRydWUgbWltZSB0eXBlIG9mIHRoaXMgZG9jdW1lbnQuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBtaW1lVHlwZTogc3RyaW5nO1xyXG4gICAgcHVibGljIHB1YmxpY2F0aW9uOiBudW1iZXI7XHJcbiAgICBwdWJsaWMgZmlsZVNpemU6IHN0cmluZztcclxuICAgIHB1YmxpYyBmaWxlVHlwZTogRmlsZVR5cGU7XHJcbiAgICBwdWJsaWMgaXNMb2FkZWQ6IGJvb2xlYW47XHJcbiAgICBwdWJsaWMgaW5kZXg6IG51bWJlcjtcclxuICAgIHB1YmxpYyBpbWFnZURpbWVuc2lvbnM6IHN0cmluZztcclxuICAgIHB1YmxpYyB0aXRsZTogc3RyaW5nO1xyXG4gICAgLy8gQEJvb2xlYW5UZXh0KFwiVFwiKVxyXG4gICAgLy8gcHVibGljIGRvd25sb2FkYWJsZTogYm9vbGVhbjtcclxuICAgIC8vIEBCb29sZWFuVGV4dChcIlRcIilcclxuICAgIC8vIHB1YmxpYyBhdHRhY2hUb05vdGlmaWNhdGlvbjogYm9vbGVhbjtcclxuICAgIC8vIEBCb29sZWFuVGV4dChcIlRcIilcclxuICAgIC8vIEBEZWZhdWx0U2VuZFZhbHVlKFwiRlwiKVxyXG4gICAgLy8gcHVibGljIHBhdGhJc1VybDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgLy8gcHVibGljIGltYWdlVHlwZTogc3RyaW5nO1xyXG4gICAgcHVibGljIGltYWdlRGlzcGxheUtpbmQ6IENvRG9jdW1lbnRJbWFnZURpc3BsYXlLaW5kO1xyXG4gICAgLy8gQENvbXBsZXhBcnJheShUYWcpXHJcbiAgICAvLyBwdWJsaWMgdGFnczogVGFnW10gPSBbXTtcclxuICAgIHB1YmxpYyByaWdodExldmVsOiBPYmplY3RSaWdodFR5cGU7XHJcbiAgICAvLyBAQ29tcGxleEFycmF5KENvRG9jdW1lbnRSaWdodClcclxuICAgIHB1YmxpYyByaWdodHM6IENvRG9jdW1lbnRSaWdodFtdID0gW107XHJcblxyXG4gICAgcHVibGljIHNldCBkb2N1bWVudEJvZHkoZG9jdW1lbnRCb2R5OiBzdHJpbmcpIHtcclxuICAgICAgICBjb25zdCBwcmV2OiBzdHJpbmcgPSB0aGlzLl9kb2N1bWVudEJvZHk7XHJcblxyXG4gICAgICAgIHRoaXMuX2RvY3VtZW50Qm9keSA9IGRvY3VtZW50Qm9keTtcclxuXHJcbiAgICAgICAgaWYgKHByZXYgIT09IHRoaXMuX2RvY3VtZW50Qm9keSkge1xyXG4gICAgICAgICAgICB0aGlzLmRvY3VtZW50Qm9keUNoYW5nZS5uZXh0KHRoaXMuX2RvY3VtZW50Qm9keSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgZG9jdW1lbnRCb2R5KCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RvY3VtZW50Qm9keTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBARGVmYXVsdFNlbmRWYWx1ZShbXSlcclxuICAgIC8vIEBDb21wbGV4QXJyYXkoQXJ0aWNsZVNlb1ZhbHVlKVxyXG4gICAgLy8gcHVibGljIHNlb1RpdGxlczogQXJ0aWNsZVNlb1ZhbHVlW10gPSBbXTtcclxuICAgIHB1YmxpYyBmaWxlTmFtZTogc3RyaW5nO1xyXG4gICAgcHVibGljIHJldGFpbEZvcm11bGFzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICAgIC8vIEBOb0RiRmllbGQoKVxyXG4gICAgLy8gcHVibGljIGlkRm9yTGluazogbnVtYmVyO1xyXG5cclxuICAgIC8vIFRoZSBpbnRlcm5hbCBmaWxlIHR5cGUgb2YgdGhpcyBkb2N1bWVudCAodGhlIE1pbWVUeXBlIGlPbmVKUyB1c2VzIGludGVybmFsbHkpXHJcbiAgICBwdWJsaWMgZ2V0IGZpbGVUeXBlSW50ZXJuYWwoKTogRmlsZVR5cGVJbnRlcm5hbCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLl9maWxlVHlwZUludGVybmFsKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZpbGVUeXBlOiBGaWxlVHlwZUludGVybmFsID0gRmlsZVV0aWxzLkZpbGVOYW1lVG9GaWxlVHlwZUludGVybmFsKHRoaXMuZmlsZU5hbWUpO1xyXG4gICAgICAgICAgICBpZiAoZmlsZVR5cGUpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2ZpbGVUeXBlSW50ZXJuYWwgPSBmaWxlVHlwZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGhpcy5fZmlsZVR5cGVJbnRlcm5hbDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFRoZSBtaW1ldHlwZSBvZiB0aGlzIGRvY3VtZW50OiB1c2VzIGRhdGFiYXNlLWZldGNoZWQgdGhpcy5taW1lVHlwZSwgb3IgY2FsY3VsYXRlcyAvIGd1ZXNzZXMgdGhlIG1pbWUgdHlwZSBvZiB0aGUgZG9jdW1lbnRcclxuICAgICAqIGlmIHRoYXQgd2FzIG5vdCBzZXQuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXQgbWltZVR5cGVJbnRlcm5hbCgpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICh0aGlzLl9taW1lVHlwZUludGVybmFsKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9taW1lVHlwZUludGVybmFsO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2luaXRNaW1ldHlwZUludGVybmFsKCk7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9taW1lVHlwZUludGVybmFsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2V0IG1pbWVUeXBlSW50ZXJuYWwodmFsdWU6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuX21pbWVUeXBlSW50ZXJuYWwgPSB2YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBHaXZlcyBlaXRoZXIgdGhlIGRvY3VtZW50LShwcmlvKSBvciB0aGUgdGh1bWJuYWlsIGJvZHkuIE9yIHVuZGVmaW5lZCBpZiBub3QgZXhpc3QuXHJcbiAgICBwdWJsaWMgZ2V0IGJvZHlBc0RhdGFVcmkoKTogc3RyaW5nIHtcclxuICAgICAgICBpZiAodGhpcy5fZG9jdW1lbnRCb2R5KSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRvY3VtZW50Qm9keUFzRGF0YVVyaTtcclxuICAgICAgICB9IGVsc2UgaWYgKHRoaXMudGh1bWJuYWlsQm9keSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy50aHVtYm5haWxCb2R5QXNEYXRhVXJpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBUaGUgYm9keSBvZiB0aGlzIGRvY3VtZW50IGFzIGEgZGF0YSB1cmkuIFRoZSBkYXRhIHVyaSBhbHNvIGNvbnRhaW5zIHRoZSBtaW1ldHlwZSBpbiBpdHMgc3RyaW5nLCBhbmQgdGhlIGZhY3QgdGhhdCBpdCdzIGJhc2U2NC5cclxuICAgIHB1YmxpYyBnZXQgZG9jdW1lbnRCb2R5QXNEYXRhVXJpKCk6IHN0cmluZyB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgcmV0dXJuIEZpbGVVdGlscy5Eb2N1bWVudEJvZHlUb0RhdGFVcmkodGhpcy5kb2N1bWVudEJvZHksIHRoaXMubWltZVR5cGVJbnRlcm5hbCk7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFwiXCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFRoZSBUaHVtYm5haWxib2R5IG9mIHRoaXMgZG9jdW1lbnQgYXMgYSBkYXRhIHVyaS4gVGhlIGRhdGEgdXJpIGFsc28gY29udGFpbnMgdGhlIG1pbWV0eXBlIGluIGl0cyBzdHJpbmcsIGFuZCB0aGUgZmFjdCB0aGF0IGl0J3MgYmFzZTY0LlxyXG4gICAgcHVibGljIGdldCB0aHVtYm5haWxCb2R5QXNEYXRhVXJpKCk6IHN0cmluZyB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgcmV0dXJuIEZpbGVVdGlscy5Eb2N1bWVudEJvZHlUb0RhdGFVcmkodGhpcy50aHVtYm5haWxCb2R5LCB0aGlzLm1pbWVUeXBlSW50ZXJuYWwpO1xyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBcIlwiO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IGlzQXZhdGFyKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmltYWdlRGlzcGxheUtpbmQgPT09IENvRG9jdW1lbnRJbWFnZURpc3BsYXlLaW5kLkF2YXRhcjtcclxuICAgIH1cclxuXHJcbiAgICAvLyBARGJGaWVsZEFsaWFzKFwiZG9jdW1lbnRCb2R5XCIpXHJcbiAgICBwcml2YXRlIF9kb2N1bWVudEJvZHk6IHN0cmluZztcclxuICAgIC8vXHJcbiAgICAvLyBARGJGaWVsZEFsaWFzKFwiZG9jdW1lbnRJZFwiKVxyXG4gICAgcHJpdmF0ZSBfZG9jdW1lbnRJZDogbnVtYmVyO1xyXG4gICAgLy9cclxuICAgIC8vIEBOb0RiRmllbGQoKVxyXG4gICAgLy8gQENvbXBsZXhGaWVsZChTdWJqZWN0KVxyXG4gICAgcHVibGljIHJlYWRvbmx5IGRvY3VtZW50Qm9keUNoYW5nZTogU3ViamVjdDxzdHJpbmc+ID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xyXG5cclxuICAgIC8vIFRoZSBpbnRlcm5hbCByZXByZXNlbnRhdGlvbiBvZiB0aGUgTWltZVR5cGUsIHNlZSBlbnVtIE1pbWVUeXBlIChhY3R1YWwgbWltZVR5cGUgZmllbGQgaXMgbm90IGZpbGxlZCBpbiBkYiBvZnRlbilcclxuICAgIC8vIEBOb0RiRmllbGQoKVxyXG4gICAgcHJpdmF0ZSBfZmlsZVR5cGVJbnRlcm5hbDogRmlsZVR5cGVJbnRlcm5hbDtcclxuICAgIC8vIGVnIFwiaW1hZ2UvanBlZ1wiXHJcbiAgICAvLyBATm9EYkZpZWxkKClcclxuICAgIHByaXZhdGUgX21pbWVUeXBlSW50ZXJuYWw6IHN0cmluZztcclxuICAgIC8vXHJcbiAgICAvLyBATm9EYkZpZWxkKClcclxuICAgIC8vIHByaXZhdGUgX2lkT2JqZWN0OiBhbnkgPSB7fTtcclxuXHJcbiAgICBwdWJsaWMgZ2V0IHJlYWRvbmx5KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJpZ2h0TGV2ZWwgPT09IE9iamVjdFJpZ2h0VHlwZS5SZWFkT25seTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0SWQoKTogYW55IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5kb2N1bWVudElkO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFJldHVybnMgd2hldGhlciB0aGlzIGlzIGFuIGltYWdlIGRvY3VtZW50IG9yIG5vdC5cclxuICAgIHB1YmxpYyBpc0ltYWdlRG9jdW1lbnQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICh0aGlzLmZpbGVUeXBlSW50ZXJuYWwgPT09IEZpbGVUeXBlSW50ZXJuYWwuSW1hZ2UpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEBCb1NlcmlhbGl6ZXJTdGVwKClcclxuICAgIHB1YmxpYyBwcmV2ZW50T3ZlcnJpZGluZ1RodW1ibmFpbFRvRW1wdHkoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLnRodW1ibmFpbEJvZHkpIHtcclxuICAgICAgICAgICAgdGhpcy50aHVtYm5haWxCb2R5ID0gdGhpcy5fZG9jdW1lbnRCb2R5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBQT1NUQ09ORElUSU9OOiB0aGlzLl9taW1lVHlwZUludGVybmFsIGNvbnRhaW5zLCB0byBvdXIgYmVzdCBhYmlsaXRpZXMsIHRoZSB0cnVlIG1pbWVUeXBlIG9mIHRoaXMgZG9jdW1lbnQsIGEtbGEgXCJpbWFnZS9qcGdcIlxyXG4gICAgcHJpdmF0ZSBfaW5pdE1pbWV0eXBlSW50ZXJuYWwoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gaWYgbm8gZmlsZVR5cGUsIGRlZmF1bHQgdG8gRmlsZVR5cGUuSW1hZ2UgZm9yIGludGVybmFsIG1pbWV0eXBlIGluaXRpYWxpemF0aW9uXHJcbiAgICAgICAgaWYgKCh0aGlzLmZpbGVUeXBlID09PSBGaWxlVHlwZS5JbWFnZSB8fCAhdGhpcy5maWxlVHlwZSkgJiYgdGhpcy5maWxlTmFtZSkge1xyXG4gICAgICAgICAgICBjb25zdCBmaWxlRXh0ZW5zaW9uOiBzdHJpbmcgPSB0aGlzLmZpbGVOYW1lLnN1YnN0cih0aGlzLmZpbGVOYW1lLmxhc3RJbmRleE9mKFwiLlwiKSArIDEpO1xyXG4gICAgICAgICAgICB0aGlzLl9taW1lVHlwZUludGVybmFsID0gXCJpbWFnZS9cIiArIGZpbGVFeHRlbnNpb247XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
|