@colijnit/corecomponents_v12 255.1.1 → 255.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -12
- package/bundles/colijnit-corecomponents_v12.umd.js +14269 -0
- package/bundles/colijnit-corecomponents_v12.umd.js.map +1 -0
- package/colijnit-corecomponents_v12.d.ts +43 -0
- package/colijnit-corecomponents_v12.metadata.json +1 -0
- package/esm2015/colijnit-corecomponents_v12.js +44 -0
- package/esm2015/lib/components/article-tile/article-tile.component.js +81 -0
- package/esm2015/lib/components/article-tile/article-tile.module.js +35 -0
- package/esm2015/lib/components/base/base-input.component.js +834 -0
- package/esm2015/lib/components/base/base.module.js +22 -0
- package/esm2015/lib/components/base/commit-buttons/commit-buttons.component.js +103 -0
- package/esm2015/lib/components/base/commit-buttons/commit-buttons.module.js +21 -0
- package/esm2015/lib/components/base/dialog-base.component.js +6 -0
- package/esm2015/lib/components/base-input-date-picker/base-input-date-picker.directive.js +25 -0
- package/esm2015/lib/components/button/button.component.js +79 -0
- package/esm2015/lib/components/button/button.module.js +19 -0
- package/esm2015/lib/components/calendar/calendar-template.component.js +342 -0
- package/esm2015/lib/components/calendar/calendar.component.js +45 -0
- package/esm2015/lib/components/calendar/calendar.module.js +28 -0
- package/esm2015/lib/components/card/card.component.js +72 -0
- package/esm2015/lib/components/card/card.module.js +35 -0
- package/esm2015/lib/components/carousel/carousel.component.js +130 -0
- package/esm2015/lib/components/carousel/carousel.module.js +32 -0
- package/esm2015/lib/components/carousel-3d/carousel-3d.component.js +315 -0
- package/esm2015/lib/components/carousel-3d/carousel-3d.module.js +19 -0
- package/esm2015/lib/components/carousel-3d/carouselItem.js +54 -0
- package/esm2015/lib/components/checkmark-overlay/checkmark-overlay.component.js +87 -0
- package/esm2015/lib/components/checkmark-overlay/checkmark-overlay.module.js +19 -0
- package/esm2015/lib/components/co-dialog/co-dialog.component.js +113 -0
- package/esm2015/lib/components/co-dialog/co-dialog.module.js +19 -0
- package/esm2015/lib/components/co-dialog-wizard/co-dialog-wizard.component.js +51 -0
- package/esm2015/lib/components/co-dialog-wizard/co-dialog-wizard.module.js +17 -0
- package/esm2015/lib/components/collapsible/collapsible.component.js +92 -0
- package/esm2015/lib/components/collapsible/collapsible.module.js +19 -0
- package/esm2015/lib/components/color-picker/color-picker.component.js +41 -0
- package/esm2015/lib/components/color-picker/color-picker.module.js +21 -0
- package/esm2015/lib/components/core-dialog/confirmation-dialog/confirmation-dialog.component.js +79 -0
- package/esm2015/lib/components/core-dialog/core-dialog.module.js +39 -0
- package/esm2015/lib/components/core-dialog/core-dialog.service.js +67 -0
- package/esm2015/lib/components/core-dialog/core-dynamic-component.service.js +93 -0
- package/esm2015/lib/components/double-calendar/double-calendar.component.js +80 -0
- package/esm2015/lib/components/double-calendar/double-calendar.module.js +25 -0
- package/esm2015/lib/components/filter-item/filter-item-viewmodel.js +13 -0
- package/esm2015/lib/components/filter-item/filter-item.component.js +646 -0
- package/esm2015/lib/components/filter-item/filter-item.module.js +43 -0
- package/esm2015/lib/components/filter-item/filter-viewmodel.js +11 -0
- package/esm2015/lib/components/form/form.component.js +184 -0
- package/esm2015/lib/components/form/form.module.js +23 -0
- package/esm2015/lib/components/grid-toolbar/grid-toolbar.component.js +57 -0
- package/esm2015/lib/components/grid-toolbar/grid-toolbar.module.js +23 -0
- package/esm2015/lib/components/grid-toolbar-button/grid-toolbar-button.component.js +28 -0
- package/esm2015/lib/components/grid-toolbar-button/grid-toolbar-button.module.js +19 -0
- package/esm2015/lib/components/icon/icon-cache.service.js +52 -0
- package/esm2015/lib/components/icon/icon.component.js +48 -0
- package/esm2015/lib/components/icon/icon.module.js +25 -0
- package/esm2015/lib/components/icon-collapse-handle/icon-collapse-handle.component.js +64 -0
- package/esm2015/lib/components/icon-collapse-handle/icon-collapse-handle.module.js +23 -0
- package/esm2015/lib/components/image/image.component.js +42 -0
- package/esm2015/lib/components/image/image.module.js +14 -0
- package/esm2015/lib/components/input-checkbox/input-checkbox.component.js +79 -0
- package/esm2015/lib/components/input-checkbox/input-checkbox.module.js +19 -0
- package/esm2015/lib/components/input-date-picker/input-date-picker.component.js +91 -0
- package/esm2015/lib/components/input-date-picker/input-date-picker.module.js +26 -0
- package/esm2015/lib/components/input-date-range-picker/input-date-range-picker.component.js +134 -0
- package/esm2015/lib/components/input-date-range-picker/input-date-range-picker.module.js +27 -0
- package/esm2015/lib/components/input-number-picker/input-number-picker.component.js +314 -0
- package/esm2015/lib/components/input-number-picker/input-number-picker.module.js +23 -0
- package/esm2015/lib/components/input-radio-button/input-radio-button.component.js +84 -0
- package/esm2015/lib/components/input-radio-button/input-radio-button.module.js +19 -0
- package/esm2015/lib/components/input-scanner/bar-code-scanner.js +23 -0
- package/esm2015/lib/components/input-scanner/input-scanner.component.js +72 -0
- package/esm2015/lib/components/input-scanner/input-scanner.module.js +21 -0
- package/esm2015/lib/components/input-scanner/scanner.service.js +28 -0
- package/esm2015/lib/components/input-search/input-search.component.js +83 -0
- package/esm2015/lib/components/input-search/input-search.module.js +21 -0
- package/esm2015/lib/components/input-text/input-text.component.js +246 -0
- package/esm2015/lib/components/input-text/input-text.module.js +33 -0
- package/esm2015/lib/components/input-textarea/input-textarea.component.js +78 -0
- package/esm2015/lib/components/input-textarea/input-textarea.module.js +27 -0
- package/esm2015/lib/components/level-indicator/level-indicator-level.enum.js +7 -0
- package/esm2015/lib/components/level-indicator/level-indicator.component.js +36 -0
- package/esm2015/lib/components/level-indicator/level-indicator.module.js +15 -0
- package/esm2015/lib/components/list-of-icons/list-of-icons.component.js +64 -0
- package/esm2015/lib/components/list-of-icons/list-of-icons.module.js +25 -0
- package/esm2015/lib/components/list-of-values/list-of-values-multiselect-popup.component.js +112 -0
- package/esm2015/lib/components/list-of-values/list-of-values-popup.component.js +251 -0
- package/esm2015/lib/components/list-of-values/list-of-values.component.js +233 -0
- package/esm2015/lib/components/list-of-values/list-of-values.module.js +38 -0
- package/esm2015/lib/components/loader/loader.component.js +84 -0
- package/esm2015/lib/components/loader/loader.module.js +19 -0
- package/esm2015/lib/components/pagination/paginate.pipe.js +99 -0
- package/esm2015/lib/components/pagination/pagination-instance.js +2 -0
- package/esm2015/lib/components/pagination/pagination.component.js +126 -0
- package/esm2015/lib/components/pagination/pagination.module.js +28 -0
- package/esm2015/lib/components/pagination/pagination.service.js +88 -0
- package/esm2015/lib/components/pagination-bar/pagination-bar.component.js +151 -0
- package/esm2015/lib/components/pagination-bar/pagination-bar.module.js +19 -0
- package/esm2015/lib/components/popup/const/popup-window-token.js +3 -0
- package/esm2015/lib/components/popup/interface/popup-button.js +8 -0
- package/esm2015/lib/components/popup/interface/popup-close-event.js +2 -0
- package/esm2015/lib/components/popup/interface/popup-settings.js +42 -0
- package/esm2015/lib/components/popup/interface/popup.js +2 -0
- package/esm2015/lib/components/popup/model/popup-button-globals.js +11 -0
- package/esm2015/lib/components/popup/model/popup-window.js +38 -0
- package/esm2015/lib/components/popup/popup-buttons.component.js +53 -0
- package/esm2015/lib/components/popup/popup-message-display.component.js +47 -0
- package/esm2015/lib/components/popup/popup-window-shell.component.js +159 -0
- package/esm2015/lib/components/popup/popup.module.js +49 -0
- package/esm2015/lib/components/popup/service/popup-shower.service.js +90 -0
- package/esm2015/lib/components/popup/service/prompt.service.js +127 -0
- package/esm2015/lib/components/popup/text-input-popup.component.js +36 -0
- package/esm2015/lib/components/responsive-text/responsive-text.component.js +24 -0
- package/esm2015/lib/components/responsive-text/responsive-text.module.js +19 -0
- package/esm2015/lib/components/simple-grid/base-simple-grid.component.js +166 -0
- package/esm2015/lib/components/simple-grid/simple-grid-cell.component.js +172 -0
- package/esm2015/lib/components/simple-grid/simple-grid-column.directive.js +113 -0
- package/esm2015/lib/components/simple-grid/simple-grid.component.js +612 -0
- package/esm2015/lib/components/simple-grid/simple-grid.module.js +45 -0
- package/esm2015/lib/components/tile/tile.component.js +73 -0
- package/esm2015/lib/components/tile/tile.module.js +23 -0
- package/esm2015/lib/components/tile-select/tile-select.component.js +36 -0
- package/esm2015/lib/components/tile-select/tile-select.module.js +21 -0
- package/esm2015/lib/components/tooltip/tooltip.component.js +77 -0
- package/esm2015/lib/components/tooltip/tooltip.module.js +19 -0
- package/esm2015/lib/components/validation-error/validation-error.component.js +38 -0
- package/esm2015/lib/components/validation-error/validation-error.module.js +25 -0
- package/esm2015/lib/components/view-mode-buttons/content-view-mode.enum.js +11 -0
- package/esm2015/lib/components/view-mode-buttons/view-mode-buttons.component.js +61 -0
- package/esm2015/lib/components/view-mode-buttons/view-mode-buttons.module.js +21 -0
- package/esm2015/lib/core/constant/default-upper-bound-for-range-components.js +4 -0
- package/esm2015/lib/core/constant/java-max-int.js +2 -0
- package/esm2015/lib/core/constant/number-inputs-key-down-white-list.js +45 -0
- package/esm2015/lib/core/decorator/input-boolean.decorator.js +34 -0
- package/esm2015/lib/core/enum/co-direction.js +9 -0
- package/esm2015/lib/core/enum/co-document-image-display-kind.enum.js +7 -0
- package/esm2015/lib/core/enum/co-document-type.enum.js +11 -0
- package/esm2015/lib/core/enum/co-orientation.js +17 -0
- package/esm2015/lib/core/enum/core-components-icon.enum.js +300 -0
- package/esm2015/lib/core/enum/file-type-internal.enum.js +17 -0
- package/esm2015/lib/core/enum/file-type.enum.js +11 -0
- package/esm2015/lib/core/enum/filterItem-mode.enum.js +43 -0
- package/esm2015/lib/core/enum/input-number-picker-show-mode.enum.js +8 -0
- package/esm2015/lib/core/enum/keyboard-code.enum.js +74 -0
- package/esm2015/lib/core/enum/keyboard-key.enum.js +76 -0
- package/esm2015/lib/core/enum/object-right-type.enum.js +7 -0
- package/esm2015/lib/core/enum/popup-button-type.enum.js +12 -0
- package/esm2015/lib/core/enum/popup-type.enum.js +11 -0
- package/esm2015/lib/core/enum/table-name.enum.js +81 -0
- package/esm2015/lib/core/function/any-nill.function.js +6 -0
- package/esm2015/lib/core/function/is-nill.function.js +5 -0
- package/esm2015/lib/core/function/none-nill.function.js +17 -0
- package/esm2015/lib/core/function/not-nill.function.js +5 -0
- package/esm2015/lib/core/model/bounds-constrained-number-value.js +171 -0
- package/esm2015/lib/core/model/check-precision-and-scale-result.js +2 -0
- package/esm2015/lib/core/model/check-within-stepped-bounds-result.js +2 -0
- package/esm2015/lib/core/model/co-document-right.bo.js +3 -0
- package/esm2015/lib/core/model/co-document.bo.js +121 -0
- package/esm2015/lib/core/model/core-components-icon-svg.js +299 -0
- package/esm2015/lib/core/model/element-position.js +10 -0
- package/esm2015/lib/core/model/event/string-prompt-result-event.js +8 -0
- package/esm2015/lib/core/service/form-input-user-change-listener.service.js +25 -0
- package/esm2015/lib/core/service/form-master.service.js +102 -0
- package/esm2015/lib/core/service/ng-zone-wrapper.service.js +20 -0
- package/esm2015/lib/core/utils/array-utils.js +264 -0
- package/esm2015/lib/core/utils/browser-utils.js +100 -0
- package/esm2015/lib/core/utils/direction-enum-utils.js +14 -0
- package/esm2015/lib/core/utils/event-utils.js +53 -0
- package/esm2015/lib/core/utils/file-utils.js +267 -0
- package/esm2015/lib/core/utils/number-utils.js +309 -0
- package/esm2015/lib/core/utils/object-utils.js +186 -0
- package/esm2015/lib/core/utils/string-utils.js +94 -0
- package/esm2015/lib/core/validator/email.validator.js +6 -0
- package/esm2015/lib/core/validator/equal.validator.js +11 -0
- package/esm2015/lib/core/validator/max-string-length.validator.js +10 -0
- package/esm2015/lib/core/validator/password.validator.js +31 -0
- package/esm2015/lib/core/validator/precision-scale.validator.js +11 -0
- package/esm2015/lib/core/validator/required.validator.js +5 -0
- package/esm2015/lib/directives/clickoutside/click-outside-master.service.js +57 -0
- package/esm2015/lib/directives/clickoutside/click-outside.directive.js +71 -0
- package/esm2015/lib/directives/clickoutside/clickoutside.module.js +19 -0
- package/esm2015/lib/directives/observe-visibility/observe-visibility.directive.js +53 -0
- package/esm2015/lib/directives/observe-visibility/observe-visibility.module.js +15 -0
- package/esm2015/lib/directives/overlay/overlay-parent.directive.js +19 -0
- package/esm2015/lib/directives/overlay/overlay.directive.js +161 -0
- package/esm2015/lib/directives/overlay/overlay.module.js +18 -0
- package/esm2015/lib/directives/ripple/ripple-ref.js +26 -0
- package/esm2015/lib/directives/ripple/ripple-renderer.js +160 -0
- package/esm2015/lib/directives/ripple/ripple.directive.js +80 -0
- package/esm2015/lib/directives/ripple/ripple.module.js +24 -0
- package/esm2015/lib/directives/ripple/scroll-dispatcher.service.js +108 -0
- package/esm2015/lib/directives/ripple/scrollable.directive.js +40 -0
- package/esm2015/lib/directives/ripple/viewport-ruler.service.js +73 -0
- package/esm2015/lib/directives/screen-configuration/screen-configuration.directive.js +158 -0
- package/esm2015/lib/directives/screen-configuration/screen-configuration.module.js +19 -0
- package/esm2015/lib/directives/stopclick/stop-click.directive.js +38 -0
- package/esm2015/lib/directives/stopclick/stop-click.module.js +15 -0
- package/esm2015/lib/directives/template-wrapper/template-wrapper.directive.js +68 -0
- package/esm2015/lib/directives/template-wrapper/template-wrapper.module.js +15 -0
- package/esm2015/lib/directives/tooltip/tooltip-directive.module.js +19 -0
- package/esm2015/lib/directives/tooltip/tooltip.directive.js +78 -0
- package/esm2015/lib/interfaces/dialog-response.interface.js +2 -0
- package/esm2015/lib/interfaces/scanner-input.interface.js +2 -0
- package/esm2015/lib/interfaces/screen-config-adapter-component-interface-name.js +4 -0
- package/esm2015/lib/interfaces/screen-config-adapter.component.interface.js +2 -0
- package/esm2015/lib/model/enum/app-button-type.enum.js +11 -0
- package/esm2015/lib/model/enum/app-popup-type.enum.js +8 -0
- package/esm2015/lib/model/icon-list-item.js +2 -0
- package/esm2015/lib/pipes/append.pipe.js +17 -0
- package/esm2015/lib/pipes/append.pipe.module.js +15 -0
- package/esm2015/lib/pipes/filter.pipe.js +16 -0
- package/esm2015/lib/pipes/filter.pipe.module.js +15 -0
- package/esm2015/lib/pipes/prepend.pipe.js +17 -0
- package/esm2015/lib/pipes/prepend.pipe.module.js +15 -0
- package/esm2015/lib/pipes/price-display-pipe.module.js +15 -0
- package/esm2015/lib/pipes/price-display.pipe.js +20 -0
- package/esm2015/lib/service/base-module-screen-config.service.js +205 -0
- package/esm2015/lib/service/base-module.service.js +42 -0
- package/esm2015/lib/service/color-sequence.service.js +49 -0
- package/esm2015/lib/service/overlay.service.js +73 -0
- package/esm2015/lib/translation/core-components-translation.module.js +29 -0
- package/esm2015/lib/translation/core-components-translation.service.js +17 -0
- package/esm2015/lib/translation/core-dictionary.service.js +29 -0
- package/esm2015/lib/translation/core-localize.pipe.js +26 -0
- package/esm2015/public-api.js +132 -0
- package/fesm2015/colijnit-corecomponents_v12.js +13665 -0
- package/fesm2015/colijnit-corecomponents_v12.js.map +1 -0
- package/lib/components/article-tile/article-tile.component.d.ts +22 -0
- package/lib/components/article-tile/article-tile.module.d.ts +2 -0
- package/lib/components/base/base-input.component.d.ts +182 -0
- package/lib/components/base/base.module.d.ts +2 -0
- package/lib/components/base/commit-buttons/commit-buttons.component.d.ts +21 -0
- package/lib/components/base/commit-buttons/commit-buttons.module.d.ts +2 -0
- package/lib/components/base/dialog-base.component.d.ts +4 -0
- package/lib/components/base-input-date-picker/base-input-date-picker.directive.d.ts +15 -0
- package/lib/components/button/button.component.d.ts +29 -0
- package/lib/components/button/button.module.d.ts +2 -0
- package/lib/components/calendar/calendar-template.component.d.ts +60 -0
- package/lib/components/calendar/calendar.component.d.ts +13 -0
- package/lib/components/calendar/calendar.module.d.ts +2 -0
- package/lib/components/card/card.component.d.ts +23 -0
- package/lib/components/card/card.module.d.ts +2 -0
- package/lib/components/carousel/carousel.component.d.ts +23 -0
- package/lib/components/carousel/carousel.module.d.ts +6 -0
- package/lib/components/carousel-3d/carousel-3d.component.d.ts +55 -0
- package/lib/components/carousel-3d/carousel-3d.module.d.ts +2 -0
- package/lib/components/carousel-3d/carouselItem.d.ts +13 -0
- package/lib/components/checkmark-overlay/checkmark-overlay.component.d.ts +17 -0
- package/lib/components/checkmark-overlay/checkmark-overlay.module.d.ts +2 -0
- package/lib/components/co-dialog/co-dialog.component.d.ts +23 -0
- package/lib/components/co-dialog/co-dialog.module.d.ts +2 -0
- package/lib/components/co-dialog-wizard/co-dialog-wizard.component.d.ts +9 -0
- package/lib/components/co-dialog-wizard/co-dialog-wizard.module.d.ts +2 -0
- package/lib/components/collapsible/collapsible.component.d.ts +22 -0
- package/lib/components/collapsible/collapsible.module.d.ts +2 -0
- package/lib/components/color-picker/color-picker.component.d.ts +6 -0
- package/lib/components/color-picker/color-picker.module.d.ts +2 -0
- package/lib/components/core-dialog/confirmation-dialog/confirmation-dialog.component.d.ts +20 -0
- package/lib/components/core-dialog/core-dialog.module.d.ts +4 -0
- package/lib/components/core-dialog/core-dialog.service.d.ts +15 -0
- package/lib/components/core-dialog/core-dynamic-component.service.d.ts +12 -0
- package/lib/components/double-calendar/double-calendar.component.d.ts +18 -0
- package/lib/components/double-calendar/double-calendar.module.d.ts +2 -0
- package/lib/components/filter-item/filter-item-viewmodel.d.ts +9 -0
- package/lib/components/filter-item/filter-item.component.d.ts +80 -0
- package/lib/components/filter-item/filter-item.module.d.ts +2 -0
- package/lib/components/filter-item/filter-viewmodel.d.ts +8 -0
- package/lib/components/form/form.component.d.ts +39 -0
- package/lib/components/form/form.module.d.ts +2 -0
- package/lib/components/grid-toolbar/grid-toolbar.component.d.ts +19 -0
- package/lib/components/grid-toolbar/grid-toolbar.module.d.ts +2 -0
- package/lib/components/grid-toolbar-button/grid-toolbar-button.component.d.ts +8 -0
- package/lib/components/grid-toolbar-button/grid-toolbar-button.module.d.ts +2 -0
- package/lib/components/icon/icon-cache.service.d.ts +20 -0
- package/lib/components/icon/icon.component.d.ts +17 -0
- package/lib/components/icon/icon.module.d.ts +2 -0
- package/lib/components/icon-collapse-handle/icon-collapse-handle.component.d.ts +21 -0
- package/lib/components/icon-collapse-handle/icon-collapse-handle.module.d.ts +2 -0
- package/lib/components/image/image.component.d.ts +20 -0
- package/lib/components/image/image.module.d.ts +2 -0
- package/lib/components/input-checkbox/input-checkbox.component.d.ts +24 -0
- package/lib/components/input-checkbox/input-checkbox.module.d.ts +2 -0
- package/lib/components/input-date-picker/input-date-picker.component.d.ts +12 -0
- package/lib/components/input-date-picker/input-date-picker.module.d.ts +2 -0
- package/lib/components/input-date-range-picker/input-date-range-picker.component.d.ts +20 -0
- package/lib/components/input-date-range-picker/input-date-range-picker.module.d.ts +2 -0
- package/lib/components/input-number-picker/input-number-picker.component.d.ts +73 -0
- package/lib/components/input-number-picker/input-number-picker.module.d.ts +2 -0
- package/lib/components/input-radio-button/input-radio-button.component.d.ts +19 -0
- package/lib/components/input-radio-button/input-radio-button.module.d.ts +2 -0
- package/lib/components/input-scanner/bar-code-scanner.d.ts +7 -0
- package/lib/components/input-scanner/input-scanner.component.d.ts +24 -0
- package/lib/components/input-scanner/input-scanner.module.d.ts +2 -0
- package/lib/components/input-scanner/scanner.service.d.ts +11 -0
- package/lib/components/input-search/input-search.component.d.ts +20 -0
- package/lib/components/input-search/input-search.module.d.ts +2 -0
- package/lib/components/input-text/input-text.component.d.ts +66 -0
- package/lib/components/input-text/input-text.module.d.ts +2 -0
- package/lib/components/input-textarea/input-textarea.component.d.ts +19 -0
- package/lib/components/input-textarea/input-textarea.module.d.ts +2 -0
- package/lib/components/level-indicator/level-indicator-level.enum.d.ts +5 -0
- package/lib/components/level-indicator/level-indicator.component.d.ts +10 -0
- package/lib/components/level-indicator/level-indicator.module.d.ts +2 -0
- package/lib/components/list-of-icons/list-of-icons.component.d.ts +19 -0
- package/lib/components/list-of-icons/list-of-icons.module.d.ts +2 -0
- package/lib/components/list-of-values/list-of-values-multiselect-popup.component.d.ts +25 -0
- package/lib/components/list-of-values/list-of-values-popup.component.d.ts +47 -0
- package/lib/components/list-of-values/list-of-values.component.d.ts +37 -0
- package/lib/components/list-of-values/list-of-values.module.d.ts +2 -0
- package/lib/components/loader/loader.component.d.ts +3 -0
- package/lib/components/loader/loader.module.d.ts +2 -0
- package/lib/components/pagination/paginate.pipe.d.ts +15 -0
- package/lib/components/pagination/pagination-instance.d.ts +14 -0
- package/lib/components/pagination/pagination.component.d.ts +38 -0
- package/lib/components/pagination/pagination.module.d.ts +2 -0
- package/lib/components/pagination/pagination.service.d.ts +24 -0
- package/lib/components/pagination-bar/pagination-bar.component.d.ts +33 -0
- package/lib/components/pagination-bar/pagination-bar.module.d.ts +2 -0
- package/lib/components/popup/const/popup-window-token.d.ts +3 -0
- package/lib/components/popup/interface/popup-button.d.ts +8 -0
- package/lib/components/popup/interface/popup-close-event.d.ts +5 -0
- package/lib/components/popup/interface/popup-settings.d.ts +21 -0
- package/lib/components/popup/interface/popup.d.ts +9 -0
- package/lib/components/popup/model/popup-button-globals.d.ts +9 -0
- package/lib/components/popup/model/popup-window.d.ts +21 -0
- package/lib/components/popup/popup-buttons.component.d.ts +13 -0
- package/lib/components/popup/popup-message-display.component.d.ts +12 -0
- package/lib/components/popup/popup-window-shell.component.d.ts +42 -0
- package/lib/components/popup/popup.module.d.ts +4 -0
- package/lib/components/popup/service/popup-shower.service.d.ts +17 -0
- package/lib/components/popup/service/prompt.service.d.ts +17 -0
- package/lib/components/popup/text-input-popup.component.d.ts +12 -0
- package/lib/components/responsive-text/responsive-text.component.d.ts +4 -0
- package/lib/components/responsive-text/responsive-text.module.d.ts +2 -0
- package/lib/components/simple-grid/base-simple-grid.component.d.ts +53 -0
- package/lib/components/simple-grid/simple-grid-cell.component.d.ts +30 -0
- package/lib/components/simple-grid/simple-grid-column.directive.d.ts +43 -0
- package/lib/components/simple-grid/simple-grid.component.d.ts +78 -0
- package/lib/components/simple-grid/simple-grid.module.d.ts +2 -0
- package/lib/components/tile/tile.component.d.ts +16 -0
- package/lib/components/tile/tile.module.d.ts +2 -0
- package/lib/components/tile-select/tile-select.component.d.ts +8 -0
- package/lib/components/tile-select/tile-select.module.d.ts +2 -0
- package/lib/components/tooltip/tooltip.component.d.ts +18 -0
- package/lib/components/tooltip/tooltip.module.d.ts +2 -0
- package/lib/components/validation-error/validation-error.component.d.ts +12 -0
- package/lib/components/validation-error/validation-error.module.d.ts +2 -0
- package/lib/components/view-mode-buttons/content-view-mode.enum.d.ts +8 -0
- package/lib/components/view-mode-buttons/view-mode-buttons.component.d.ts +17 -0
- package/lib/components/view-mode-buttons/view-mode-buttons.module.d.ts +2 -0
- package/lib/core/constant/default-upper-bound-for-range-components.d.ts +2 -0
- package/lib/core/constant/java-max-int.d.ts +1 -0
- package/lib/core/constant/number-inputs-key-down-white-list.d.ts +2 -0
- package/lib/core/decorator/input-boolean.decorator.d.ts +8 -0
- package/lib/core/enum/co-direction.d.ts +6 -0
- package/lib/core/enum/co-document-image-display-kind.enum.d.ts +5 -0
- package/lib/core/enum/co-document-type.enum.d.ts +5 -0
- package/lib/core/enum/co-orientation.d.ts +6 -0
- package/lib/core/enum/core-components-icon.enum.d.ts +298 -0
- package/lib/core/enum/file-type-internal.enum.d.ts +15 -0
- package/lib/core/enum/file-type.enum.d.ts +5 -0
- package/lib/core/enum/filterItem-mode.enum.d.ts +15 -0
- package/lib/core/enum/input-number-picker-show-mode.enum.d.ts +5 -0
- package/lib/core/enum/keyboard-code.enum.d.ts +71 -0
- package/lib/core/enum/keyboard-key.enum.d.ts +70 -0
- package/lib/core/enum/object-right-type.enum.d.ts +5 -0
- package/lib/core/enum/popup-button-type.enum.d.ts +9 -0
- package/lib/core/enum/popup-type.enum.d.ts +9 -0
- package/lib/core/enum/table-name.enum.d.ts +79 -0
- package/lib/core/function/any-nill.function.d.ts +1 -0
- package/lib/core/function/is-nill.function.d.ts +1 -0
- package/lib/core/function/none-nill.function.d.ts +1 -0
- package/lib/core/function/not-nill.function.d.ts +1 -0
- package/lib/core/model/bounds-constrained-number-value.d.ts +46 -0
- package/lib/core/model/check-precision-and-scale-result.d.ts +4 -0
- package/lib/core/model/check-within-stepped-bounds-result.d.ts +8 -0
- package/lib/core/model/co-document-right.bo.d.ts +6 -0
- package/lib/core/model/co-document.bo.d.ts +61 -0
- package/lib/core/model/core-components-icon-svg.d.ts +4 -0
- package/lib/core/model/element-position.d.ts +7 -0
- package/lib/core/model/event/string-prompt-result-event.d.ts +6 -0
- package/lib/core/service/form-input-user-change-listener.service.d.ts +10 -0
- package/lib/core/service/form-master.service.d.ts +26 -0
- package/lib/core/service/ng-zone-wrapper.service.d.ts +6 -0
- package/lib/core/utils/array-utils.d.ts +85 -0
- package/lib/core/utils/browser-utils.d.ts +15 -0
- package/lib/core/utils/direction-enum-utils.d.ts +5 -0
- package/lib/core/utils/event-utils.d.ts +12 -0
- package/lib/core/utils/file-utils.d.ts +29 -0
- package/lib/core/utils/number-utils.d.ts +89 -0
- package/lib/core/utils/object-utils.d.ts +31 -0
- package/lib/core/utils/string-utils.d.ts +25 -0
- package/lib/core/validator/email.validator.d.ts +2 -0
- package/lib/core/validator/equal.validator.d.ts +2 -0
- package/lib/core/validator/max-string-length.validator.d.ts +2 -0
- package/lib/core/validator/password.validator.d.ts +3 -0
- package/lib/core/validator/precision-scale.validator.d.ts +2 -0
- package/lib/core/validator/required.validator.d.ts +2 -0
- package/lib/directives/clickoutside/click-outside-master.service.d.ts +15 -0
- package/lib/directives/clickoutside/click-outside.directive.d.ts +18 -0
- package/lib/directives/clickoutside/clickoutside.module.d.ts +2 -0
- package/lib/directives/observe-visibility/observe-visibility.directive.d.ts +14 -0
- package/lib/directives/observe-visibility/observe-visibility.module.d.ts +2 -0
- package/lib/directives/overlay/overlay-parent.directive.d.ts +6 -0
- package/lib/directives/overlay/overlay.directive.d.ts +25 -0
- package/lib/directives/overlay/overlay.module.d.ts +2 -0
- package/lib/directives/ripple/ripple-ref.d.ts +21 -0
- package/lib/directives/ripple/ripple-renderer.d.ts +56 -0
- package/lib/directives/ripple/ripple.directive.d.ts +56 -0
- package/lib/directives/ripple/ripple.module.d.ts +2 -0
- package/lib/directives/ripple/scroll-dispatcher.service.d.ts +51 -0
- package/lib/directives/ripple/scrollable.directive.d.ts +20 -0
- package/lib/directives/ripple/viewport-ruler.service.d.ts +29 -0
- package/lib/directives/screen-configuration/screen-configuration.directive.d.ts +32 -0
- package/lib/directives/screen-configuration/screen-configuration.module.d.ts +2 -0
- package/lib/directives/stopclick/stop-click.directive.d.ts +10 -0
- package/lib/directives/stopclick/stop-click.module.d.ts +2 -0
- package/lib/directives/template-wrapper/template-wrapper.directive.d.ts +13 -0
- package/lib/directives/template-wrapper/template-wrapper.module.d.ts +2 -0
- package/lib/directives/tooltip/tooltip-directive.module.d.ts +2 -0
- package/lib/directives/tooltip/tooltip.directive.d.ts +20 -0
- package/lib/interfaces/dialog-response.interface.d.ts +6 -0
- package/lib/interfaces/screen-config-adapter-component-interface-name.d.ts +3 -0
- package/lib/interfaces/screen-config-adapter.component.interface.d.ts +10 -0
- package/lib/model/enum/app-button-type.enum.d.ts +9 -0
- package/lib/model/enum/app-popup-type.enum.d.ts +6 -0
- package/lib/model/icon-list-item.d.ts +6 -0
- package/lib/pipes/append.pipe.d.ts +4 -0
- package/lib/pipes/append.pipe.module.d.ts +2 -0
- package/lib/pipes/filter.pipe.d.ts +4 -0
- package/lib/pipes/filter.pipe.module.d.ts +2 -0
- package/lib/pipes/prepend.pipe.d.ts +4 -0
- package/lib/pipes/prepend.pipe.module.d.ts +2 -0
- package/lib/pipes/price-display-pipe.module.d.ts +2 -0
- package/lib/pipes/price-display.pipe.d.ts +4 -0
- package/lib/service/base-module-screen-config.service.d.ts +47 -0
- package/lib/service/base-module.service.d.ts +22 -0
- package/lib/service/color-sequence.service.d.ts +7 -0
- package/lib/service/overlay.service.d.ts +13 -0
- package/lib/translation/core-components-translation.module.d.ts +4 -0
- package/lib/translation/core-components-translation.service.d.ts +6 -0
- package/lib/translation/core-dictionary.service.d.ts +12 -0
- package/lib/translation/core-localize.pipe.d.ts +7 -0
- package/package.json +23 -44
- package/public-api.d.ts +128 -0
- package/.browserslistrc +0 -17
- package/.editorconfig +0 -16
- package/.idea/CoreComponents_v12.iml +0 -12
- package/.idea/jpa-buddy.xml +0 -6
- package/.idea/misc.xml +0 -9
- package/.idea/modules.xml +0 -8
- package/.idea/vcs.xml +0 -6
- package/CoreComponents_v12.iml +0 -12
- package/angular.json +0 -146
- package/dist/corecomponentstest/favicon.ico +0 -0
- package/dist/corecomponentstest/index.html +0 -13
- package/dist/corecomponentstest/main.js +0 -24644
- package/dist/corecomponentstest/main.js.map +0 -1
- package/dist/corecomponentstest/polyfills.js +0 -2891
- package/dist/corecomponentstest/polyfills.js.map +0 -1
- package/dist/corecomponentstest/runtime.js +0 -161
- package/dist/corecomponentstest/runtime.js.map +0 -1
- package/dist/corecomponentstest/styles.css +0 -3075
- package/dist/corecomponentstest/styles.css.map +0 -1
- package/dist/corecomponentstest/vendor.js +0 -147126
- package/dist/corecomponentstest/vendor.js.map +0 -1
- package/karma.conf.js +0 -44
- package/move-assets.js +0 -14
- package/projects/corecomponents/README.md +0 -24
- package/projects/corecomponents/karma.conf.js +0 -44
- package/projects/corecomponents/ng-package.json +0 -10
- package/projects/corecomponents/package-lock.json +0 -13
- package/projects/corecomponents/package.json +0 -20
- package/projects/corecomponents/src/lib/components/article-tile/article-tile.component.ts +0 -96
- package/projects/corecomponents/src/lib/components/article-tile/article-tile.module.ts +0 -34
- package/projects/corecomponents/src/lib/components/base/base-input.component.ts +0 -988
- package/projects/corecomponents/src/lib/components/base/base.module.ts +0 -22
- package/projects/corecomponents/src/lib/components/base/commit-buttons/commit-buttons.component.ts +0 -120
- package/projects/corecomponents/src/lib/components/base/commit-buttons/commit-buttons.module.ts +0 -19
- package/projects/corecomponents/src/lib/components/base/dialog-base.component.ts +0 -8
- package/projects/corecomponents/src/lib/components/base-input-date-picker/base-input-date-picker.directive.ts +0 -32
- package/projects/corecomponents/src/lib/components/base-input-time/base-input-time-directive.ts +0 -31
- package/projects/corecomponents/src/lib/components/button/button.component.ts +0 -117
- package/projects/corecomponents/src/lib/components/button/button.module.ts +0 -18
- package/projects/corecomponents/src/lib/components/calendar/calendar-template.component.ts +0 -392
- package/projects/corecomponents/src/lib/components/calendar/calendar.component.ts +0 -54
- package/projects/corecomponents/src/lib/components/calendar/calendar.module.ts +0 -26
- package/projects/corecomponents/src/lib/components/card/card.component.ts +0 -94
- package/projects/corecomponents/src/lib/components/card/card.module.ts +0 -34
- package/projects/corecomponents/src/lib/components/carousel/carousel.component.ts +0 -128
- package/projects/corecomponents/src/lib/components/carousel/carousel.module.ts +0 -28
- package/projects/corecomponents/src/lib/components/carousel-3d/carousel-3d.component.ts +0 -392
- package/projects/corecomponents/src/lib/components/carousel-3d/carousel-3d.module.ts +0 -17
- package/projects/corecomponents/src/lib/components/carousel-3d/carouselItem.ts +0 -77
- package/projects/corecomponents/src/lib/components/checkmark-overlay/checkmark-overlay.component.ts +0 -99
- package/projects/corecomponents/src/lib/components/checkmark-overlay/checkmark-overlay.module.ts +0 -18
- package/projects/corecomponents/src/lib/components/co-dialog/animation.ts +0 -2
- package/projects/corecomponents/src/lib/components/co-dialog/co-dialog.component.ts +0 -130
- package/projects/corecomponents/src/lib/components/co-dialog/co-dialog.module.ts +0 -17
- package/projects/corecomponents/src/lib/components/co-dialog-wizard/co-dialog-wizard.component.ts +0 -50
- package/projects/corecomponents/src/lib/components/co-dialog-wizard/co-dialog-wizard.module.ts +0 -15
- package/projects/corecomponents/src/lib/components/collapsible/collapsible.component.ts +0 -114
- package/projects/corecomponents/src/lib/components/collapsible/collapsible.module.ts +0 -17
- package/projects/corecomponents/src/lib/components/color-picker/color-picker.component.ts +0 -40
- package/projects/corecomponents/src/lib/components/color-picker/color-picker.module.ts +0 -19
- package/projects/corecomponents/src/lib/components/core-dialog/confirmation-dialog/confirmation-dialog.component.ts +0 -86
- package/projects/corecomponents/src/lib/components/core-dialog/core-dialog.module.ts +0 -37
- package/projects/corecomponents/src/lib/components/core-dialog/core-dialog.service.ts +0 -61
- package/projects/corecomponents/src/lib/components/core-dialog/core-dynamic-component.service.ts +0 -101
- package/projects/corecomponents/src/lib/components/double-calendar/double-calendar.component.ts +0 -102
- package/projects/corecomponents/src/lib/components/double-calendar/double-calendar.module.ts +0 -23
- package/projects/corecomponents/src/lib/components/filter-item/filter-item-viewmodel.ts +0 -20
- package/projects/corecomponents/src/lib/components/filter-item/filter-item.component.ts +0 -715
- package/projects/corecomponents/src/lib/components/filter-item/filter-item.module.ts +0 -42
- package/projects/corecomponents/src/lib/components/filter-item/filter-viewmodel.ts +0 -11
- package/projects/corecomponents/src/lib/components/form/form.component.ts +0 -211
- package/projects/corecomponents/src/lib/components/form/form.module.ts +0 -22
- package/projects/corecomponents/src/lib/components/grid-toolbar/grid-toolbar.component.ts +0 -62
- package/projects/corecomponents/src/lib/components/grid-toolbar/grid-toolbar.module.ts +0 -21
- package/projects/corecomponents/src/lib/components/grid-toolbar-button/grid-toolbar-button.component.ts +0 -28
- package/projects/corecomponents/src/lib/components/grid-toolbar-button/grid-toolbar-button.module.ts +0 -17
- package/projects/corecomponents/src/lib/components/icon/icon-cache.service.ts +0 -57
- package/projects/corecomponents/src/lib/components/icon/icon.component.ts +0 -54
- package/projects/corecomponents/src/lib/components/icon/icon.module.ts +0 -24
- package/projects/corecomponents/src/lib/components/icon-collapse-handle/icon-collapse-handle.component.ts +0 -75
- package/projects/corecomponents/src/lib/components/icon-collapse-handle/icon-collapse-handle.module.ts +0 -21
- package/projects/corecomponents/src/lib/components/image/image.component.ts +0 -51
- package/projects/corecomponents/src/lib/components/image/image.module.ts +0 -12
- package/projects/corecomponents/src/lib/components/input-checkbox/input-checkbox.component.ts +0 -85
- package/projects/corecomponents/src/lib/components/input-checkbox/input-checkbox.module.ts +0 -17
- package/projects/corecomponents/src/lib/components/input-date-picker/input-date-picker.component.ts +0 -103
- package/projects/corecomponents/src/lib/components/input-date-picker/input-date-picker.module.ts +0 -24
- package/projects/corecomponents/src/lib/components/input-date-range-picker/input-date-range-picker.component.ts +0 -155
- package/projects/corecomponents/src/lib/components/input-date-range-picker/input-date-range-picker.module.ts +0 -25
- package/projects/corecomponents/src/lib/components/input-number-picker/input-number-picker.component.ts +0 -378
- package/projects/corecomponents/src/lib/components/input-number-picker/input-number-picker.module.ts +0 -20
- package/projects/corecomponents/src/lib/components/input-radio-button/input-radio-button.component.ts +0 -86
- package/projects/corecomponents/src/lib/components/input-radio-button/input-radio-button.module.ts +0 -17
- package/projects/corecomponents/src/lib/components/input-scanner/bar-code-scanner.ts +0 -25
- package/projects/corecomponents/src/lib/components/input-scanner/input-scanner.component.ts +0 -89
- package/projects/corecomponents/src/lib/components/input-scanner/input-scanner.module.ts +0 -19
- package/projects/corecomponents/src/lib/components/input-scanner/scanner.service.ts +0 -28
- package/projects/corecomponents/src/lib/components/input-search/input-search.component.ts +0 -90
- package/projects/corecomponents/src/lib/components/input-search/input-search.module.ts +0 -20
- package/projects/corecomponents/src/lib/components/input-text/input-text.component.ts +0 -307
- package/projects/corecomponents/src/lib/components/input-text/input-text.module.ts +0 -31
- package/projects/corecomponents/src/lib/components/input-textarea/input-textarea.component.ts +0 -81
- package/projects/corecomponents/src/lib/components/input-textarea/input-textarea.module.ts +0 -25
- package/projects/corecomponents/src/lib/components/input-time/input-time.component.ts +0 -72
- package/projects/corecomponents/src/lib/components/input-time/input-time.module.ts +0 -22
- package/projects/corecomponents/src/lib/components/level-indicator/level-indicator-level.enum.ts +0 -5
- package/projects/corecomponents/src/lib/components/level-indicator/level-indicator.component.ts +0 -42
- package/projects/corecomponents/src/lib/components/level-indicator/level-indicator.module.ts +0 -13
- package/projects/corecomponents/src/lib/components/list-of-icons/list-of-icons.component.ts +0 -68
- package/projects/corecomponents/src/lib/components/list-of-icons/list-of-icons.module.ts +0 -22
- package/projects/corecomponents/src/lib/components/list-of-values/list-of-values-multiselect-popup.component.ts +0 -132
- package/projects/corecomponents/src/lib/components/list-of-values/list-of-values-popup.component.ts +0 -291
- package/projects/corecomponents/src/lib/components/list-of-values/list-of-values.component.ts +0 -257
- package/projects/corecomponents/src/lib/components/list-of-values/list-of-values.module.ts +0 -35
- package/projects/corecomponents/src/lib/components/loader/loader.component.ts +0 -82
- package/projects/corecomponents/src/lib/components/loader/loader.module.ts +0 -17
- package/projects/corecomponents/src/lib/components/pagination/paginate.pipe.ts +0 -116
- package/projects/corecomponents/src/lib/components/pagination/pagination-instance.ts +0 -18
- package/projects/corecomponents/src/lib/components/pagination/pagination.component.ts +0 -160
- package/projects/corecomponents/src/lib/components/pagination/pagination.module.ts +0 -26
- package/projects/corecomponents/src/lib/components/pagination/pagination.service.ts +0 -99
- package/projects/corecomponents/src/lib/components/pagination-bar/pagination-bar.component.ts +0 -178
- package/projects/corecomponents/src/lib/components/pagination-bar/pagination-bar.module.ts +0 -17
- package/projects/corecomponents/src/lib/components/popup/const/popup-window-token.ts +0 -4
- package/projects/corecomponents/src/lib/components/popup/interface/popup-button.ts +0 -14
- package/projects/corecomponents/src/lib/components/popup/interface/popup-close-event.ts +0 -8
- package/projects/corecomponents/src/lib/components/popup/interface/popup-settings.ts +0 -70
- package/projects/corecomponents/src/lib/components/popup/interface/popup.ts +0 -17
- package/projects/corecomponents/src/lib/components/popup/model/popup-button-globals.ts +0 -11
- package/projects/corecomponents/src/lib/components/popup/model/popup-window.ts +0 -51
- package/projects/corecomponents/src/lib/components/popup/popup-buttons.component.ts +0 -61
- package/projects/corecomponents/src/lib/components/popup/popup-message-display.component.ts +0 -49
- package/projects/corecomponents/src/lib/components/popup/popup-window-shell.component.ts +0 -222
- package/projects/corecomponents/src/lib/components/popup/popup.module.ts +0 -48
- package/projects/corecomponents/src/lib/components/popup/service/popup-shower.service.ts +0 -98
- package/projects/corecomponents/src/lib/components/popup/service/prompt.service.ts +0 -127
- package/projects/corecomponents/src/lib/components/popup/text-input-popup.component.ts +0 -36
- package/projects/corecomponents/src/lib/components/responsive-text/responsive-text.component.ts +0 -24
- package/projects/corecomponents/src/lib/components/responsive-text/responsive-text.module.ts +0 -17
- package/projects/corecomponents/src/lib/components/simple-grid/base-simple-grid.component.ts +0 -196
- package/projects/corecomponents/src/lib/components/simple-grid/simple-grid-cell.component.ts +0 -192
- package/projects/corecomponents/src/lib/components/simple-grid/simple-grid-column.directive.ts +0 -146
- package/projects/corecomponents/src/lib/components/simple-grid/simple-grid.component.ts +0 -645
- package/projects/corecomponents/src/lib/components/simple-grid/simple-grid.module.ts +0 -42
- package/projects/corecomponents/src/lib/components/tile/tile.component.ts +0 -71
- package/projects/corecomponents/src/lib/components/tile/tile.module.ts +0 -21
- package/projects/corecomponents/src/lib/components/tile-select/tile-select.component.ts +0 -36
- package/projects/corecomponents/src/lib/components/tile-select/tile-select.module.ts +0 -19
- package/projects/corecomponents/src/lib/components/tooltip/tooltip.component.ts +0 -96
- package/projects/corecomponents/src/lib/components/tooltip/tooltip.module.ts +0 -17
- package/projects/corecomponents/src/lib/components/validation-error/validation-error.component.ts +0 -45
- package/projects/corecomponents/src/lib/components/validation-error/validation-error.module.ts +0 -24
- package/projects/corecomponents/src/lib/components/view-mode-buttons/content-view-mode.enum.ts +0 -9
- package/projects/corecomponents/src/lib/components/view-mode-buttons/view-mode-buttons.component.ts +0 -63
- package/projects/corecomponents/src/lib/components/view-mode-buttons/view-mode-buttons.module.ts +0 -19
- package/projects/corecomponents/src/lib/core/abstract/collection-based-component.ts +0 -488
- package/projects/corecomponents/src/lib/core/config/device-environment.ts +0 -26
- package/projects/corecomponents/src/lib/core/constant/default-upper-bound-for-range-components.ts +0 -4
- package/projects/corecomponents/src/lib/core/constant/java-max-int.ts +0 -1
- package/projects/corecomponents/src/lib/core/constant/number-inputs-key-down-white-list.ts +0 -46
- package/projects/corecomponents/src/lib/core/decorator/input-boolean.decorator.ts +0 -35
- package/projects/corecomponents/src/lib/core/enum/co-direction.ts +0 -7
- package/projects/corecomponents/src/lib/core/enum/co-document-image-display-kind.enum.ts +0 -5
- package/projects/corecomponents/src/lib/core/enum/co-document-type.enum.ts +0 -9
- package/projects/corecomponents/src/lib/core/enum/co-orientation.ts +0 -18
- package/projects/corecomponents/src/lib/core/enum/collection-based-component-input-driver-prop.enum.ts +0 -10
- package/projects/corecomponents/src/lib/core/enum/color-sequence-name.enum.ts +0 -5
- package/projects/corecomponents/src/lib/core/enum/core-components-icon.enum.ts +0 -299
- package/projects/corecomponents/src/lib/core/enum/file-type-internal.enum.ts +0 -15
- package/projects/corecomponents/src/lib/core/enum/file-type.enum.ts +0 -9
- package/projects/corecomponents/src/lib/core/enum/filterItem-mode.enum.ts +0 -57
- package/projects/corecomponents/src/lib/core/enum/float-label-type.enum.ts +0 -5
- package/projects/corecomponents/src/lib/core/enum/input-number-picker-show-mode.enum.ts +0 -6
- package/projects/corecomponents/src/lib/core/enum/input-text-type.enum.ts +0 -4
- package/projects/corecomponents/src/lib/core/enum/keyboard-code.enum.ts +0 -72
- package/projects/corecomponents/src/lib/core/enum/keyboard-key.enum.ts +0 -78
- package/projects/corecomponents/src/lib/core/enum/logical-operator-type.enum.ts +0 -5
- package/projects/corecomponents/src/lib/core/enum/object-right-type.enum.ts +0 -5
- package/projects/corecomponents/src/lib/core/enum/popup-button-type.enum.ts +0 -10
- package/projects/corecomponents/src/lib/core/enum/popup-type.enum.ts +0 -9
- package/projects/corecomponents/src/lib/core/enum/schedule-view.enum.ts +0 -14
- package/projects/corecomponents/src/lib/core/enum/search-data-type.ts +0 -4
- package/projects/corecomponents/src/lib/core/enum/search-property-state.ts +0 -5
- package/projects/corecomponents/src/lib/core/enum/sort-data-type.ts +0 -6
- package/projects/corecomponents/src/lib/core/enum/sort-direction.ts +0 -9
- package/projects/corecomponents/src/lib/core/enum/table-name.enum.ts +0 -79
- package/projects/corecomponents/src/lib/core/enum/value-comparison-type.ts +0 -11
- package/projects/corecomponents/src/lib/core/function/any-nill.function.ts +0 -6
- package/projects/corecomponents/src/lib/core/function/is-nill.function.ts +0 -4
- package/projects/corecomponents/src/lib/core/function/none-nill.function.ts +0 -16
- package/projects/corecomponents/src/lib/core/function/not-nill.function.ts +0 -4
- package/projects/corecomponents/src/lib/core/interface/search-property.ts +0 -15
- package/projects/corecomponents/src/lib/core/interface/sort-property.ts +0 -16
- package/projects/corecomponents/src/lib/core/model/bounds-constrained-number-value.ts +0 -222
- package/projects/corecomponents/src/lib/core/model/check-precision-and-scale-result.ts +0 -5
- package/projects/corecomponents/src/lib/core/model/check-within-stepped-bounds-result.ts +0 -8
- package/projects/corecomponents/src/lib/core/model/co-document-right.bo.ts +0 -9
- package/projects/corecomponents/src/lib/core/model/co-document.bo.ts +0 -193
- package/projects/corecomponents/src/lib/core/model/color-sequence.ts +0 -39
- package/projects/corecomponents/src/lib/core/model/color.ts +0 -29
- package/projects/corecomponents/src/lib/core/model/core-components-icon-svg.ts +0 -299
- package/projects/corecomponents/src/lib/core/model/element-position.ts +0 -14
- package/projects/corecomponents/src/lib/core/model/event/number-prompt-result-event.ts +0 -10
- package/projects/corecomponents/src/lib/core/model/event/string-prompt-result-event.ts +0 -10
- package/projects/corecomponents/src/lib/core/model/numerical-range.ts +0 -19
- package/projects/corecomponents/src/lib/core/service/form-input-user-change-listener.service.ts +0 -31
- package/projects/corecomponents/src/lib/core/service/form-master.service.ts +0 -119
- package/projects/corecomponents/src/lib/core/service/ng-zone-wrapper.service.ts +0 -15
- package/projects/corecomponents/src/lib/core/utils/array-utils.spec.ts +0 -588
- package/projects/corecomponents/src/lib/core/utils/array-utils.ts +0 -301
- package/projects/corecomponents/src/lib/core/utils/browser-utils.ts +0 -123
- package/projects/corecomponents/src/lib/core/utils/business-object-utils.ts +0 -42
- package/projects/corecomponents/src/lib/core/utils/css-utils.ts +0 -276
- package/projects/corecomponents/src/lib/core/utils/direction-enum-utils.ts +0 -15
- package/projects/corecomponents/src/lib/core/utils/element-ref.utils.ts +0 -12
- package/projects/corecomponents/src/lib/core/utils/event-utils.ts +0 -61
- package/projects/corecomponents/src/lib/core/utils/file-utils.ts +0 -291
- package/projects/corecomponents/src/lib/core/utils/number-utils.spec.ts +0 -657
- package/projects/corecomponents/src/lib/core/utils/number-utils.ts +0 -350
- package/projects/corecomponents/src/lib/core/utils/object-utils.ts +0 -205
- package/projects/corecomponents/src/lib/core/utils/parameter-value-conversion-utils.ts +0 -116
- package/projects/corecomponents/src/lib/core/utils/search-utils.ts +0 -121
- package/projects/corecomponents/src/lib/core/utils/sort-utils.ts +0 -108
- package/projects/corecomponents/src/lib/core/utils/string-utils.ts +0 -100
- package/projects/corecomponents/src/lib/core/validator/email.validator.ts +0 -10
- package/projects/corecomponents/src/lib/core/validator/equal.validator.ts +0 -14
- package/projects/corecomponents/src/lib/core/validator/max-string-length.validator.ts +0 -11
- package/projects/corecomponents/src/lib/core/validator/password.validator.ts +0 -35
- package/projects/corecomponents/src/lib/core/validator/precision-scale.validator.ts +0 -14
- package/projects/corecomponents/src/lib/core/validator/required.validator.ts +0 -9
- package/projects/corecomponents/src/lib/directives/align-with/align-with.directive.ts +0 -158
- package/projects/corecomponents/src/lib/directives/align-with/align-with.module.ts +0 -13
- package/projects/corecomponents/src/lib/directives/clickoutside/click-outside-master.service.ts +0 -64
- package/projects/corecomponents/src/lib/directives/clickoutside/click-outside.directive.ts +0 -72
- package/projects/corecomponents/src/lib/directives/clickoutside/clickoutside.module.ts +0 -17
- package/projects/corecomponents/src/lib/directives/observe-visibility/observe-visibility.directive.ts +0 -55
- package/projects/corecomponents/src/lib/directives/observe-visibility/observe-visibility.module.ts +0 -13
- package/projects/corecomponents/src/lib/directives/overlay/overlay-parent.directive.ts +0 -20
- package/projects/corecomponents/src/lib/directives/overlay/overlay.directive.ts +0 -170
- package/projects/corecomponents/src/lib/directives/overlay/overlay.module.ts +0 -16
- package/projects/corecomponents/src/lib/directives/parsevalue/parse-value.directive.ts +0 -42
- package/projects/corecomponents/src/lib/directives/parsevalue/parse-value.module.ts +0 -13
- package/projects/corecomponents/src/lib/directives/resize/resize-detect.directive.ts +0 -54
- package/projects/corecomponents/src/lib/directives/resize/resize-detect.module.ts +0 -13
- package/projects/corecomponents/src/lib/directives/ripple/ripple-ref.ts +0 -28
- package/projects/corecomponents/src/lib/directives/ripple/ripple-renderer.ts +0 -217
- package/projects/corecomponents/src/lib/directives/ripple/ripple.directive.ts +0 -116
- package/projects/corecomponents/src/lib/directives/ripple/ripple.module.ts +0 -24
- package/projects/corecomponents/src/lib/directives/ripple/scroll-dispatcher.service.ts +0 -129
- package/projects/corecomponents/src/lib/directives/ripple/scrollable.directive.ts +0 -37
- package/projects/corecomponents/src/lib/directives/ripple/viewport-ruler.service.ts +0 -84
- package/projects/corecomponents/src/lib/directives/screen-configuration/screen-configuration.directive.ts +0 -170
- package/projects/corecomponents/src/lib/directives/screen-configuration/screen-configuration.module.ts +0 -16
- package/projects/corecomponents/src/lib/directives/stopclick/stop-click.directive.ts +0 -35
- package/projects/corecomponents/src/lib/directives/stopclick/stop-click.module.ts +0 -14
- package/projects/corecomponents/src/lib/directives/template-wrapper/template-wrapper.directive.ts +0 -71
- package/projects/corecomponents/src/lib/directives/template-wrapper/template-wrapper.module.ts +0 -13
- package/projects/corecomponents/src/lib/directives/tooltip/tooltip-directive.module.ts +0 -17
- package/projects/corecomponents/src/lib/directives/tooltip/tooltip.directive.ts +0 -94
- package/projects/corecomponents/src/lib/interfaces/dialog-response.interface.ts +0 -7
- package/projects/corecomponents/src/lib/interfaces/lov-options.component.interface.ts +0 -4
- package/projects/corecomponents/src/lib/interfaces/screen-config-adapter-component-interface-name.ts +0 -6
- package/projects/corecomponents/src/lib/interfaces/screen-config-adapter.component.interface.ts +0 -10
- package/projects/corecomponents/src/lib/model/data-item.ts +0 -9
- package/projects/corecomponents/src/lib/model/enum/app-button-type.enum.ts +0 -9
- package/projects/corecomponents/src/lib/model/enum/app-popup-type.enum.ts +0 -6
- package/projects/corecomponents/src/lib/model/enum/currency-code.enum.ts +0 -7
- package/projects/corecomponents/src/lib/model/enum/language-code.enum.ts +0 -8
- package/projects/corecomponents/src/lib/model/icon-list-item.ts +0 -7
- package/projects/corecomponents/src/lib/model/map/currencies.map.ts +0 -6
- package/projects/corecomponents/src/lib/modules/drag-drop/drag-drop-container.component.ts +0 -115
- package/projects/corecomponents/src/lib/modules/drag-drop/drag-drop-container.css +0 -34
- package/projects/corecomponents/src/lib/modules/drag-drop/drag-drop-manager.service.ts +0 -414
- package/projects/corecomponents/src/lib/modules/drag-drop/drag-drop.module.ts +0 -20
- package/projects/corecomponents/src/lib/modules/drag-drop/draggable.directive.ts +0 -70
- package/projects/corecomponents/src/lib/modules/drag-drop/model/co-drag-event.ts +0 -5
- package/projects/corecomponents/src/lib/modules/drag-drop/model/co-drop-event.ts +0 -9
- package/projects/corecomponents/src/lib/modules/drag-drop/model/drag-drop-container-element.ts +0 -7
- package/projects/corecomponents/src/lib/modules/drag-drop/model/drag-drop-container.ts +0 -9
- package/projects/corecomponents/src/lib/modules/media-monitor/flex-layout-breakpoint.enum.ts +0 -5
- package/projects/corecomponents/src/lib/modules/media-monitor/media-monitor.module.ts +0 -14
- package/projects/corecomponents/src/lib/modules/media-monitor/media-monitor.service.ts +0 -36
- package/projects/corecomponents/src/lib/modules/pagination/paginate.pipe.ts +0 -116
- package/projects/corecomponents/src/lib/modules/pagination/pagination-instance.ts +0 -18
- package/projects/corecomponents/src/lib/modules/pagination/pagination.component.ts +0 -229
- package/projects/corecomponents/src/lib/modules/pagination/pagination.module.ts +0 -25
- package/projects/corecomponents/src/lib/modules/pagination/pagination.service.ts +0 -98
- package/projects/corecomponents/src/lib/pipes/append.pipe.module.ts +0 -13
- package/projects/corecomponents/src/lib/pipes/append.pipe.ts +0 -17
- package/projects/corecomponents/src/lib/pipes/co-currency-pipe.module.ts +0 -13
- package/projects/corecomponents/src/lib/pipes/co-currency.pipe.ts +0 -45
- package/projects/corecomponents/src/lib/pipes/emun-keys.pipe.ts +0 -20
- package/projects/corecomponents/src/lib/pipes/enum-keys-pipe.module.ts +0 -13
- package/projects/corecomponents/src/lib/pipes/file-type-image-pipe.module.ts +0 -13
- package/projects/corecomponents/src/lib/pipes/file-type-image.pipe.ts +0 -45
- package/projects/corecomponents/src/lib/pipes/filter.pipe.module.ts +0 -13
- package/projects/corecomponents/src/lib/pipes/filter.pipe.ts +0 -14
- package/projects/corecomponents/src/lib/pipes/master-pipe.module.ts +0 -13
- package/projects/corecomponents/src/lib/pipes/master.pipe.ts +0 -71
- package/projects/corecomponents/src/lib/pipes/prepend.pipe.module.ts +0 -13
- package/projects/corecomponents/src/lib/pipes/prepend.pipe.ts +0 -17
- package/projects/corecomponents/src/lib/pipes/price-display-pipe.module.ts +0 -14
- package/projects/corecomponents/src/lib/pipes/price-display.pipe.ts +0 -20
- package/projects/corecomponents/src/lib/pipes/safe-style.pipe.module.ts +0 -13
- package/projects/corecomponents/src/lib/pipes/safe-style.pipe.ts +0 -14
- package/projects/corecomponents/src/lib/pipes/ucfirst-pipe.module.ts +0 -13
- package/projects/corecomponents/src/lib/pipes/ucfirst.pipe.ts +0 -14
- package/projects/corecomponents/src/lib/service/base-module-screen-config.service.ts +0 -241
- package/projects/corecomponents/src/lib/service/base-module.service.ts +0 -50
- package/projects/corecomponents/src/lib/service/color-sequence.service.ts +0 -50
- package/projects/corecomponents/src/lib/service/overlay.service.ts +0 -81
- package/projects/corecomponents/src/lib/translation/core-components-translation.module.ts +0 -27
- package/projects/corecomponents/src/lib/translation/core-components-translation.service.ts +0 -15
- package/projects/corecomponents/src/lib/translation/core-dictionary.service.ts +0 -27
- package/projects/corecomponents/src/lib/translation/core-localize.pipe.ts +0 -21
- package/projects/corecomponents/src/public-api.ts +0 -139
- package/projects/corecomponents/src/res/icons/Barcode.svg +0 -1
- package/projects/corecomponents/src/res/icons/CashRegister.svg +0 -1
- package/projects/corecomponents/src/res/icons/CirclePlusSkinny.svg +0 -1
- package/projects/corecomponents/src/res/icons/CrossSkinny.svg +0 -1
- package/projects/corecomponents/src/res/icons/FolderArrow.svg +0 -1
- package/projects/corecomponents/src/res/icons/Home.svg +0 -1
- package/projects/corecomponents/src/res/icons/POS.svg +0 -1
- package/projects/corecomponents/src/res/icons/Shop.svg +0 -1
- package/projects/corecomponents/src/res/icons/SinglePerson.svg +0 -1
- package/projects/corecomponents/src/res/icons/Star.svg +0 -1
- package/projects/corecomponents/src/res/icons/TrashBin.svg +0 -1
- package/projects/corecomponents/src/res/icons/account.svg +0 -1
- package/projects/corecomponents/src/res/icons/account_round_open.svg +0 -1
- package/projects/corecomponents/src/res/icons/activities.svg +0 -1
- package/projects/corecomponents/src/res/icons/add_to_cart_drop.svg +0 -1
- package/projects/corecomponents/src/res/icons/arrow_down.svg +0 -1
- package/projects/corecomponents/src/res/icons/arrow_fat_left.svg +0 -1
- package/projects/corecomponents/src/res/icons/arrow_fat_right.svg +0 -1
- package/projects/corecomponents/src/res/icons/arrow_left.svg +0 -4
- package/projects/corecomponents/src/res/icons/arrow_left_round_open.svg +0 -1
- package/projects/corecomponents/src/res/icons/arrow_point_down.svg +0 -6
- package/projects/corecomponents/src/res/icons/arrow_point_left.svg +0 -8
- package/projects/corecomponents/src/res/icons/arrow_point_right.svg +0 -8
- package/projects/corecomponents/src/res/icons/arrow_point_up.svg +0 -8
- package/projects/corecomponents/src/res/icons/arrow_right_round_open.svg +0 -1
- package/projects/corecomponents/src/res/icons/arrow_scroll_down.svg +0 -6
- package/projects/corecomponents/src/res/icons/arrow_scroll_left.svg +0 -22
- package/projects/corecomponents/src/res/icons/arrow_scroll_right.svg +0 -22
- package/projects/corecomponents/src/res/icons/arrow_scroll_up.svg +0 -6
- package/projects/corecomponents/src/res/icons/arrow_up.svg +0 -3
- package/projects/corecomponents/src/res/icons/article.svg +0 -1
- package/projects/corecomponents/src/res/icons/article_with_fold.svg +0 -1
- package/projects/corecomponents/src/res/icons/asterisk_small.svg +0 -1
- package/projects/corecomponents/src/res/icons/attachments.svg +0 -1
- package/projects/corecomponents/src/res/icons/back_to_top.svg +0 -1
- package/projects/corecomponents/src/res/icons/big_mac.svg +0 -6
- package/projects/corecomponents/src/res/icons/boxes.svg +0 -1
- package/projects/corecomponents/src/res/icons/brush.svg +0 -1
- package/projects/corecomponents/src/res/icons/brush_round_open.svg +0 -1
- package/projects/corecomponents/src/res/icons/building_columns.svg +0 -1
- package/projects/corecomponents/src/res/icons/businessrules.svg +0 -1
- package/projects/corecomponents/src/res/icons/calendar.svg +0 -1
- package/projects/corecomponents/src/res/icons/calendar_day.svg +0 -37
- package/projects/corecomponents/src/res/icons/calendar_day_regular.svg +0 -1
- package/projects/corecomponents/src/res/icons/calendar_empty.svg +0 -16
- package/projects/corecomponents/src/res/icons/calendar_range.svg +0 -1
- package/projects/corecomponents/src/res/icons/calendar_round_open.svg +0 -16
- package/projects/corecomponents/src/res/icons/camera.svg +0 -1
- package/projects/corecomponents/src/res/icons/cancel.svg +0 -1
- package/projects/corecomponents/src/res/icons/cancel_round_filled.svg +0 -1
- package/projects/corecomponents/src/res/icons/cancel_round_open.svg +0 -1
- package/projects/corecomponents/src/res/icons/cart.svg +0 -1
- package/projects/corecomponents/src/res/icons/cart_open.svg +0 -8
- package/projects/corecomponents/src/res/icons/case_manager.svg +0 -1
- package/projects/corecomponents/src/res/icons/cash_register_simple.svg +0 -1
- package/projects/corecomponents/src/res/icons/change_location.svg +0 -1
- package/projects/corecomponents/src/res/icons/check.svg +0 -1
- package/projects/corecomponents/src/res/icons/check_duotone.svg +0 -1
- package/projects/corecomponents/src/res/icons/check_round.svg +0 -1
- package/projects/corecomponents/src/res/icons/check_round_open.svg +0 -10
- package/projects/corecomponents/src/res/icons/check_simple.svg +0 -3
- package/projects/corecomponents/src/res/icons/check_thin.svg +0 -1
- package/projects/corecomponents/src/res/icons/chevron_down_regular.svg +0 -1
- package/projects/corecomponents/src/res/icons/chevron_up_regular.svg +0 -1
- package/projects/corecomponents/src/res/icons/client.svg +0 -1
- package/projects/corecomponents/src/res/icons/clock.svg +0 -1
- package/projects/corecomponents/src/res/icons/clockArrow.svg +0 -1
- package/projects/corecomponents/src/res/icons/cogWheelPlus.svg +0 -1
- package/projects/corecomponents/src/res/icons/cogWheels.svg +0 -1
- package/projects/corecomponents/src/res/icons/column_options.svg +0 -18
- package/projects/corecomponents/src/res/icons/company.svg +0 -1
- package/projects/corecomponents/src/res/icons/company_flat.svg +0 -4
- package/projects/corecomponents/src/res/icons/configurable.svg +0 -1
- package/projects/corecomponents/src/res/icons/consultant.svg +0 -1
- package/projects/corecomponents/src/res/icons/copy.svg +0 -1
- package/projects/corecomponents/src/res/icons/crosshair_1.svg +0 -1
- package/projects/corecomponents/src/res/icons/dashboard.svg +0 -1
- package/projects/corecomponents/src/res/icons/delivery_method.svg +0 -32
- package/projects/corecomponents/src/res/icons/delivery_status_uncheck.svg +0 -9
- package/projects/corecomponents/src/res/icons/delivery_truck.svg +0 -1
- package/projects/corecomponents/src/res/icons/detail_record.svg +0 -1
- package/projects/corecomponents/src/res/icons/detail_view.svg +0 -1
- package/projects/corecomponents/src/res/icons/dictionary.svg +0 -1
- package/projects/corecomponents/src/res/icons/documentWrench.svg +0 -1
- package/projects/corecomponents/src/res/icons/documents.svg +0 -1
- package/projects/corecomponents/src/res/icons/dollar.svg +0 -1
- package/projects/corecomponents/src/res/icons/download.svg +0 -1
- package/projects/corecomponents/src/res/icons/dropdown.svg +0 -4
- package/projects/corecomponents/src/res/icons/dropzone.svg +0 -1
- package/projects/corecomponents/src/res/icons/edit_pencil.svg +0 -1
- package/projects/corecomponents/src/res/icons/edit_pencil_circle.svg +0 -1
- package/projects/corecomponents/src/res/icons/edit_pencil_round.svg +0 -11
- package/projects/corecomponents/src/res/icons/edit_pencil_simple.svg +0 -16
- package/projects/corecomponents/src/res/icons/email.svg +0 -1
- package/projects/corecomponents/src/res/icons/email_round_open.svg +0 -6
- package/projects/corecomponents/src/res/icons/employee.svg +0 -1
- package/projects/corecomponents/src/res/icons/employee_two.svg +0 -1
- package/projects/corecomponents/src/res/icons/employer.svg +0 -1
- package/projects/corecomponents/src/res/icons/employment.svg +0 -1
- package/projects/corecomponents/src/res/icons/employment_end.svg +0 -7
- package/projects/corecomponents/src/res/icons/equal.svg +0 -1
- package/projects/corecomponents/src/res/icons/euro.svg +0 -1
- package/projects/corecomponents/src/res/icons/exclamation.svg +0 -1
- package/projects/corecomponents/src/res/icons/exclamation_round_open.svg +0 -1
- package/projects/corecomponents/src/res/icons/eye_circle.svg +0 -1
- package/projects/corecomponents/src/res/icons/eye_circle_large.svg +0 -1
- package/projects/corecomponents/src/res/icons/eye_round_filled.svg +0 -11
- package/projects/corecomponents/src/res/icons/factory.svg +0 -1
- package/projects/corecomponents/src/res/icons/fasttrack.svg +0 -1
- package/projects/corecomponents/src/res/icons/filter.svg +0 -1
- package/projects/corecomponents/src/res/icons/finish.svg +0 -1
- package/projects/corecomponents/src/res/icons/fixed_option_value_tree.svg +0 -1
- package/projects/corecomponents/src/res/icons/fixed_tree_option_value.svg +0 -1
- package/projects/corecomponents/src/res/icons/floppy_disk_solid.svg +0 -1
- package/projects/corecomponents/src/res/icons/folder_arrow_in.svg +0 -8
- package/projects/corecomponents/src/res/icons/formula.svg +0 -1
- package/projects/corecomponents/src/res/icons/fullscreen.svg +0 -6
- package/projects/corecomponents/src/res/icons/gear_double.svg +0 -21
- package/projects/corecomponents/src/res/icons/global_search.svg +0 -45
- package/projects/corecomponents/src/res/icons/globe.svg +0 -1
- package/projects/corecomponents/src/res/icons/greater_than.svg +0 -1
- package/projects/corecomponents/src/res/icons/groupby.svg +0 -1
- package/projects/corecomponents/src/res/icons/hamburger.svg +0 -1
- package/projects/corecomponents/src/res/icons/hand_pointer.svg +0 -1
- package/projects/corecomponents/src/res/icons/hbarchart.svg +0 -6
- package/projects/corecomponents/src/res/icons/home_circle.svg +0 -9
- package/projects/corecomponents/src/res/icons/home_open.svg +0 -7
- package/projects/corecomponents/src/res/icons/home_round_open.svg +0 -11
- package/projects/corecomponents/src/res/icons/hourglass.svg +0 -1
- package/projects/corecomponents/src/res/icons/icon_3d.svg +0 -1
- package/projects/corecomponents/src/res/icons/id.svg +0 -1
- package/projects/corecomponents/src/res/icons/image.svg +0 -1
- package/projects/corecomponents/src/res/icons/incoming_storage.svg +0 -1
- package/projects/corecomponents/src/res/icons/information.svg +0 -1
- package/projects/corecomponents/src/res/icons/information_round_open.svg +0 -6
- package/projects/corecomponents/src/res/icons/input_multiplechoice.svg +0 -1
- package/projects/corecomponents/src/res/icons/input_text.svg +0 -1
- package/projects/corecomponents/src/res/icons/input_textarea.svg +0 -1
- package/projects/corecomponents/src/res/icons/inventory.svg +0 -1
- package/projects/corecomponents/src/res/icons/invoice.svg +0 -20
- package/projects/corecomponents/src/res/icons/ione_logo.svg +0 -1
- package/projects/corecomponents/src/res/icons/ione_logo_fat.svg +0 -1
- package/projects/corecomponents/src/res/icons/ione_status_next.svg +0 -43
- package/projects/corecomponents/src/res/icons/ione_workflow.svg +0 -62
- package/projects/corecomponents/src/res/icons/keyboard.svg +0 -1
- package/projects/corecomponents/src/res/icons/keychain.svg +0 -1
- package/projects/corecomponents/src/res/icons/label.svg +0 -5
- package/projects/corecomponents/src/res/icons/label_round_open.svg +0 -6
- package/projects/corecomponents/src/res/icons/landmark_flag.svg +0 -1
- package/projects/corecomponents/src/res/icons/library.svg +0 -21
- package/projects/corecomponents/src/res/icons/linechart.svg +0 -1
- package/projects/corecomponents/src/res/icons/link_circle.svg +0 -1
- package/projects/corecomponents/src/res/icons/linked_products.svg +0 -1
- package/projects/corecomponents/src/res/icons/list_view.svg +0 -8
- package/projects/corecomponents/src/res/icons/location.svg +0 -1
- package/projects/corecomponents/src/res/icons/lock.svg +0 -1
- package/projects/corecomponents/src/res/icons/lock_round_open.svg +0 -8
- package/projects/corecomponents/src/res/icons/logo.svg +0 -1
- package/projects/corecomponents/src/res/icons/logout.svg +0 -1
- package/projects/corecomponents/src/res/icons/magic_wand.svg +0 -1
- package/projects/corecomponents/src/res/icons/magnifier.svg +0 -5
- package/projects/corecomponents/src/res/icons/manager.svg +0 -12
- package/projects/corecomponents/src/res/icons/mask.svg +0 -1
- package/projects/corecomponents/src/res/icons/master_detail.svg +0 -1
- package/projects/corecomponents/src/res/icons/material_circle_large.svg +0 -1
- package/projects/corecomponents/src/res/icons/medal_bronze.svg +0 -23
- package/projects/corecomponents/src/res/icons/medal_gold.svg +0 -23
- package/projects/corecomponents/src/res/icons/medal_silver.svg +0 -23
- package/projects/corecomponents/src/res/icons/medical_officer.svg +0 -14
- package/projects/corecomponents/src/res/icons/microphone.svg +0 -1
- package/projects/corecomponents/src/res/icons/minus_round_open.svg +0 -1
- package/projects/corecomponents/src/res/icons/minus_simple.svg +0 -1
- package/projects/corecomponents/src/res/icons/mobile.svg +0 -1
- package/projects/corecomponents/src/res/icons/multi_select_check.svg +0 -10
- package/projects/corecomponents/src/res/icons/new_task.svg +0 -1
- package/projects/corecomponents/src/res/icons/not_equal.svg +0 -4
- package/projects/corecomponents/src/res/icons/note.svg +0 -1
- package/projects/corecomponents/src/res/icons/note_bordered.svg +0 -1
- package/projects/corecomponents/src/res/icons/notification.svg +0 -1
- package/projects/corecomponents/src/res/icons/option.svg +0 -1
- package/projects/corecomponents/src/res/icons/optionset.svg +0 -1
- package/projects/corecomponents/src/res/icons/order.svg +0 -1
- package/projects/corecomponents/src/res/icons/orderpicking.svg +0 -1
- package/projects/corecomponents/src/res/icons/outgoing_storage.svg +0 -1
- package/projects/corecomponents/src/res/icons/over_booking.svg +0 -1
- package/projects/corecomponents/src/res/icons/pause_circle.svg +0 -12
- package/projects/corecomponents/src/res/icons/pen_to_square_solid.svg +0 -1
- package/projects/corecomponents/src/res/icons/pencil_round_open.svg +0 -10
- package/projects/corecomponents/src/res/icons/phone.svg +0 -1
- package/projects/corecomponents/src/res/icons/phone_round_open.svg +0 -10
- package/projects/corecomponents/src/res/icons/piechart.svg +0 -24
- package/projects/corecomponents/src/res/icons/pin.svg +0 -9
- package/projects/corecomponents/src/res/icons/pin_round_open.svg +0 -11
- package/projects/corecomponents/src/res/icons/play_circle.svg +0 -1
- package/projects/corecomponents/src/res/icons/plus_round.svg +0 -9
- package/projects/corecomponents/src/res/icons/plus_round_open.svg +0 -1
- package/projects/corecomponents/src/res/icons/plus_simple.svg +0 -1
- package/projects/corecomponents/src/res/icons/plus_skinny.svg +0 -8
- package/projects/corecomponents/src/res/icons/plus_solid.svg +0 -1
- package/projects/corecomponents/src/res/icons/plus_stars.svg +0 -1
- package/projects/corecomponents/src/res/icons/pointer.svg +0 -7
- package/projects/corecomponents/src/res/icons/pointer_3d.svg +0 -8
- package/projects/corecomponents/src/res/icons/pointer_filled.svg +0 -6
- package/projects/corecomponents/src/res/icons/positioning.svg +0 -1
- package/projects/corecomponents/src/res/icons/pregnancy.svg +0 -18
- package/projects/corecomponents/src/res/icons/preset.svg +0 -1
- package/projects/corecomponents/src/res/icons/print.svg +0 -1
- package/projects/corecomponents/src/res/icons/product_properties.svg +0 -1
- package/projects/corecomponents/src/res/icons/purchase.svg +0 -15
- package/projects/corecomponents/src/res/icons/qrcode.svg +0 -59
- package/projects/corecomponents/src/res/icons/question.svg +0 -1
- package/projects/corecomponents/src/res/icons/radio_uncheck.svg +0 -1
- package/projects/corecomponents/src/res/icons/range.svg +0 -1
- package/projects/corecomponents/src/res/icons/range_select.svg +0 -1
- package/projects/corecomponents/src/res/icons/rectangles.svg +0 -15
- package/projects/corecomponents/src/res/icons/refresh.svg +0 -1
- package/projects/corecomponents/src/res/icons/relations.svg +0 -20
- package/projects/corecomponents/src/res/icons/remark.svg +0 -1
- package/projects/corecomponents/src/res/icons/remark_round_open.svg +0 -6
- package/projects/corecomponents/src/res/icons/report_in_type.svg +0 -1
- package/projects/corecomponents/src/res/icons/resize.svg +0 -3
- package/projects/corecomponents/src/res/icons/resize_down.svg +0 -1
- package/projects/corecomponents/src/res/icons/resize_up.svg +0 -1
- package/projects/corecomponents/src/res/icons/return_goods.svg +0 -4
- package/projects/corecomponents/src/res/icons/returns.svg +0 -1
- package/projects/corecomponents/src/res/icons/rotate_left_solid.svg +0 -1
- package/projects/corecomponents/src/res/icons/save_disk.svg +0 -15
- package/projects/corecomponents/src/res/icons/save_skinny.svg +0 -3
- package/projects/corecomponents/src/res/icons/scale_balanced.svg +0 -1
- package/projects/corecomponents/src/res/icons/scanner.svg +0 -1
- package/projects/corecomponents/src/res/icons/search_round_open.svg +0 -9
- package/projects/corecomponents/src/res/icons/sections.svg +0 -1
- package/projects/corecomponents/src/res/icons/select_all_round.svg +0 -5
- package/projects/corecomponents/src/res/icons/services.svg +0 -1
- package/projects/corecomponents/src/res/icons/settings.svg +0 -20
- package/projects/corecomponents/src/res/icons/shopping_cart.svg +0 -1
- package/projects/corecomponents/src/res/icons/shopping_cart_nr.svg +0 -1
- package/projects/corecomponents/src/res/icons/shortcut.svg +0 -1
- package/projects/corecomponents/src/res/icons/skills.svg +0 -1
- package/projects/corecomponents/src/res/icons/slide_in.svg +0 -1
- package/projects/corecomponents/src/res/icons/slider_panel.svg +0 -7
- package/projects/corecomponents/src/res/icons/small_tiles.svg +0 -1
- package/projects/corecomponents/src/res/icons/smaller_than.svg +0 -1
- package/projects/corecomponents/src/res/icons/sort_asc.svg +0 -1
- package/projects/corecomponents/src/res/icons/sort_desc.svg +0 -1
- package/projects/corecomponents/src/res/icons/star_round_open.svg +0 -6
- package/projects/corecomponents/src/res/icons/status_active.svg +0 -1
- package/projects/corecomponents/src/res/icons/status_adoption.svg +0 -1
- package/projects/corecomponents/src/res/icons/status_fostercare.svg +0 -1
- package/projects/corecomponents/src/res/icons/status_ill.svg +0 -10
- package/projects/corecomponents/src/res/icons/status_leave.svg +0 -1
- package/projects/corecomponents/src/res/icons/status_pregnancy.svg +0 -10
- package/projects/corecomponents/src/res/icons/stock.svg +0 -1
- package/projects/corecomponents/src/res/icons/stock_management.svg +0 -25
- package/projects/corecomponents/src/res/icons/storage.svg +0 -1
- package/projects/corecomponents/src/res/icons/supervisor.svg +0 -1
- package/projects/corecomponents/src/res/icons/supplier.svg +0 -18
- package/projects/corecomponents/src/res/icons/surgery.svg +0 -35
- package/projects/corecomponents/src/res/icons/tablechart.svg +0 -15
- package/projects/corecomponents/src/res/icons/tag.svg +0 -1
- package/projects/corecomponents/src/res/icons/talk_too_much.svg +0 -7
- package/projects/corecomponents/src/res/icons/target.svg +0 -1
- package/projects/corecomponents/src/res/icons/task.svg +0 -1
- package/projects/corecomponents/src/res/icons/thick_lines.svg +0 -1
- package/projects/corecomponents/src/res/icons/thin_lines.svg +0 -1
- package/projects/corecomponents/src/res/icons/three_sixty_view.svg +0 -1
- package/projects/corecomponents/src/res/icons/thumb_bronze.svg +0 -29
- package/projects/corecomponents/src/res/icons/thumb_gold.svg +0 -29
- package/projects/corecomponents/src/res/icons/thumb_silver.svg +0 -29
- package/projects/corecomponents/src/res/icons/timeline.svg +0 -1
- package/projects/corecomponents/src/res/icons/transaction_detail.svg +0 -19
- package/projects/corecomponents/src/res/icons/transactions.svg +0 -12
- package/projects/corecomponents/src/res/icons/trash_can_solid.svg +0 -1
- package/projects/corecomponents/src/res/icons/triangle_down.svg +0 -1
- package/projects/corecomponents/src/res/icons/triangle_large.svg +0 -5
- package/projects/corecomponents/src/res/icons/triangle_left.svg +0 -1
- package/projects/corecomponents/src/res/icons/triangle_right.svg +0 -1
- package/projects/corecomponents/src/res/icons/triangle_up.svg +0 -1
- package/projects/corecomponents/src/res/icons/truck.svg +0 -1
- package/projects/corecomponents/src/res/icons/truck_calendar.svg +0 -15
- package/projects/corecomponents/src/res/icons/undo_round_open.svg +0 -1
- package/projects/corecomponents/src/res/icons/user.svg +0 -9
- package/projects/corecomponents/src/res/icons/variants.svg +0 -1
- package/projects/corecomponents/src/res/icons/vbarchart.svg +0 -6
- package/projects/corecomponents/src/res/icons/view.svg +0 -1
- package/projects/corecomponents/src/res/icons/warehouse.svg +0 -1
- package/projects/corecomponents/src/res/icons/watermark.svg +0 -10
- package/projects/corecomponents/src/res/icons/website.svg +0 -1
- package/projects/corecomponents/src/res/icons/wizard.svg +0 -18
- package/projects/corecomponents/src/res/icons/wms.svg +0 -24
- package/projects/corecomponents/src/res/icons/work_in_progress.svg +0 -10
- package/projects/corecomponents/src/res/icons/work_in_progress_round_open.svg +0 -9
- package/projects/corecomponents/src/res/icons/wrench.svg +0 -4
- package/projects/corecomponents/src/res/icons/x_axis.svg +0 -5
- package/projects/corecomponents/src/res/icons/y_axis.svg +0 -5
- package/projects/corecomponents/src/test.ts +0 -28
- package/projects/corecomponents/tsconfig.lib.json +0 -20
- package/projects/corecomponents/tsconfig.lib.prod.json +0 -16
- package/projects/corecomponents/tsconfig.spec.json +0 -17
- package/scripts/export.bat +0 -9
- package/scripts/merge-icons.js +0 -39
- package/scripts/publish.bat +0 -6
- package/src/app/app.component.scss +0 -36
- package/src/app/app.component.spec.ts +0 -31
- package/src/app/app.component.ts +0 -559
- package/src/app/app.module.ts +0 -146
- package/src/app/components/button-showcase.component.ts +0 -82
- package/src/app/components/carousel-3d-showcase.component.ts +0 -70
- package/src/app/components/checkbox-showcase.component.ts +0 -56
- package/src/app/components/co-dialog-showcase.component.ts +0 -189
- package/src/app/components/co-simple-grid-test.component.ts +0 -146
- package/src/app/components/filter-item-showcase.component.ts +0 -178
- package/src/app/components/forms-showcase.component.ts +0 -728
- package/src/app/components/icon-showcase.component.ts +0 -72
- package/src/app/components/input-checkbox-showcase.component.ts +0 -87
- package/src/app/components/input-date-picker-showcase.component.ts +0 -90
- package/src/app/components/input-number-picker-showcase.component.ts +0 -125
- package/src/app/components/input-radio-button-showcase.component.ts +0 -87
- package/src/app/components/input-scanner-showcase.component.ts +0 -35
- package/src/app/components/input-text-showcase.component.ts +0 -217
- package/src/app/components/input-time-showcase.component.ts +0 -104
- package/src/app/components/number-picker-showcase.component.ts +0 -17
- package/src/app/components/simple-grid-showcase.component.ts +0 -60
- package/src/app/model/data-item.ts +0 -9
- package/src/app/model/enum/currency-code.enum.ts +0 -7
- package/src/app/model/enum/language-code.enum.ts +0 -8
- package/src/app/model/map/currencies.map.ts +0 -6
- package/src/app/service/showcase-data.service.ts +0 -1110
- package/src/assets/.gitkeep +0 -0
- package/src/environments/environment.prod.ts +0 -3
- package/src/environments/environment.ts +0 -16
- package/src/favicon.ico +0 -0
- package/src/index.html +0 -13
- package/src/main.ts +0 -12
- package/src/polyfills.ts +0 -65
- package/src/styles.scss +0 -57
- package/src/test.ts +0 -27
- package/tsconfig.app.json +0 -15
- package/tsconfig.json +0 -37
- package/tsconfig.spec.json +0 -18
- /package/{projects/corecomponents/src/lib → lib}/components/article-tile/article-tile.component.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/base/commit-buttons/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/base/commit-buttons/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/base/commit-buttons/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/base/commit-buttons/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/button/style/_co-ripple.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/button/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/button/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/button/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/button/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/calendar/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/calendar/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/calendar/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/calendar/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/card/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/card/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/card/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/card/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/carousel/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/carousel/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/carousel/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/carousel/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/carousel-3d/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/carousel-3d/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/carousel-3d/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/carousel-3d/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/checkmark-overlay/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/checkmark-overlay/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/checkmark-overlay/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/checkmark-overlay/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/co-dialog/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/co-dialog/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/co-dialog/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/co-dialog/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/co-dialog-wizard/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/co-dialog-wizard/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/co-dialog-wizard/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/co-dialog-wizard/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/collapsible/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/collapsible/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/collapsible/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/collapsible/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/color-picker/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/color-picker/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/color-picker/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/color-picker/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/core-dialog/confirmation-dialog/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/core-dialog/confirmation-dialog/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/core-dialog/confirmation-dialog/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/core-dialog/confirmation-dialog/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/core-dialog/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/core-dialog/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/core-dialog/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/core-dialog/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/double-calendar/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/double-calendar/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/double-calendar/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/double-calendar/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/filter-item/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/filter-item/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/filter-item/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/filter-item/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/grid-toolbar/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/grid-toolbar/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/grid-toolbar/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/grid-toolbar/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/grid-toolbar-button/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/grid-toolbar-button/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/grid-toolbar-button/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/grid-toolbar-button/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/icon/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/icon/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/icon/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/icon/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/icon-collapse-handle/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/icon-collapse-handle/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/icon-collapse-handle/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/icon-collapse-handle/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/image/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/image/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/image/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/image/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-checkbox/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-checkbox/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-checkbox/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-checkbox/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-date-picker/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-date-picker/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-date-picker/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-date-picker/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-date-range-picker/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-date-range-picker/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-date-range-picker/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-date-range-picker/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-number-picker/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-number-picker/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-number-picker/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-number-picker/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-radio-button/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-radio-button/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-radio-button/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-radio-button/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-scanner/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-scanner/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-scanner/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-scanner/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-search/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-search/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-search/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-search/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-text/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-text/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-text/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-text/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-textarea/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-textarea/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-textarea/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/input-textarea/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/level-indicator/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/level-indicator/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/level-indicator/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/level-indicator/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/list-of-icons/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/list-of-icons/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/list-of-icons/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/list-of-icons/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/list-of-values/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/list-of-values/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/list-of-values/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/list-of-values/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/loader/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/loader/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/loader/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/loader/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/pagination/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/pagination/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/pagination/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/pagination/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/pagination-bar/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/pagination-bar/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/pagination-bar/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/pagination-bar/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/popup/popup-buttons.component.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/popup/popup-window-shell.component.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/responsive-text/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/responsive-text/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/responsive-text/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/responsive-text/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/simple-grid/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/simple-grid/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/simple-grid/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/simple-grid/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/tile/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/tile/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/tile/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/tile/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/tile-select/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/tile-select/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/tile-select/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/tile-select/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/tooltip/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/tooltip/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/tooltip/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/tooltip/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/validation-error/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/validation-error/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/validation-error/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/validation-error/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/view-mode-buttons/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/view-mode-buttons/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/view-mode-buttons/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/components/view-mode-buttons/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib/interfaces/scanner-input.interface.ts → lib/interfaces/scanner-input.interface.d.ts} +0 -0
- /package/{projects/corecomponents/src/lib → lib}/modules/pagination/style/_layout.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/modules/pagination/style/_material-definition.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/modules/pagination/style/_theme.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/modules/pagination/style/material.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/style/_input.mixins.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/style/_mixin.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/style/_variables.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/style/corecomponents-globals.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/style/material2/_core.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/style/material2/_material2-scss-barrel.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/style/material2/ripple/_co-ripple.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/style/material2/style/_elevation.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/style/material2/style/_list-common.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/style/material2/style/_variables.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/style/material2/theming/_palette.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/style/material2/theming/_theming.scss +0 -0
- /package/{projects/corecomponents/src/lib → lib}/style/material2/typography/_typography.scss +0 -0
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
// Represents a positional model
|
|
2
|
+
export class ElementPosition {
|
|
3
|
+
constructor(top, right, bottom, left) {
|
|
4
|
+
this.top = top;
|
|
5
|
+
this.right = right;
|
|
6
|
+
this.bottom = bottom;
|
|
7
|
+
this.left = left;
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWxlbWVudC1wb3NpdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9saWIvY29yZS9tb2RlbC9lbGVtZW50LXBvc2l0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGdDQUFnQztBQUNoQyxNQUFNLE9BQU8sZUFBZTtJQU14QixZQUFhLEdBQVksRUFBRSxLQUFjLEVBQUUsTUFBZSxFQUFFLElBQWE7UUFDckUsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNyQixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvLyBSZXByZXNlbnRzIGEgcG9zaXRpb25hbCBtb2RlbFxyXG5leHBvcnQgY2xhc3MgRWxlbWVudFBvc2l0aW9uIHtcclxuICAgIHB1YmxpYyB0b3A6IG51bWJlcjtcclxuICAgIHB1YmxpYyByaWdodDogbnVtYmVyO1xyXG4gICAgcHVibGljIGJvdHRvbTogbnVtYmVyO1xyXG4gICAgcHVibGljIGxlZnQ6IG51bWJlcjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvciAodG9wPzogbnVtYmVyLCByaWdodD86IG51bWJlciwgYm90dG9tPzogbnVtYmVyLCBsZWZ0PzogbnVtYmVyKSB7XHJcbiAgICAgICAgdGhpcy50b3AgPSB0b3A7XHJcbiAgICAgICAgdGhpcy5yaWdodCA9IHJpZ2h0O1xyXG4gICAgICAgIHRoaXMuYm90dG9tID0gYm90dG9tO1xyXG4gICAgICAgIHRoaXMubGVmdCA9IGxlZnQ7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
// for PromptService.promptString
|
|
2
|
+
export class StringPromptResultEvent {
|
|
3
|
+
constructor(eventType, output) {
|
|
4
|
+
this.eventType = eventType;
|
|
5
|
+
this.output = output;
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLXByb21wdC1yZXN1bHQtZXZlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvcmUvbW9kZWwvZXZlbnQvc3RyaW5nLXByb21wdC1yZXN1bHQtZXZlbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsaUNBQWlDO0FBQ2pDLE1BQU0sT0FBTyx1QkFBdUI7SUFDaEMsWUFDVyxTQUEwQixFQUMxQixNQUFjO1FBRGQsY0FBUyxHQUFULFNBQVMsQ0FBaUI7UUFDMUIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtJQUV6QixDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQb3B1cEJ1dHRvblR5cGUgfSBmcm9tICcuLi8uLi9lbnVtL3BvcHVwLWJ1dHRvbi10eXBlLmVudW0nO1xyXG5cclxuLy8gZm9yIFByb21wdFNlcnZpY2UucHJvbXB0U3RyaW5nXHJcbmV4cG9ydCBjbGFzcyBTdHJpbmdQcm9tcHRSZXN1bHRFdmVudCB7XHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBwdWJsaWMgZXZlbnRUeXBlOiBQb3B1cEJ1dHRvblR5cGUsXHJcbiAgICAgICAgcHVibGljIG91dHB1dDogc3RyaW5nXHJcbiAgICApIHtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { Subject } from "rxjs";
|
|
3
|
+
export class FormInputUserModelChangeListenerService {
|
|
4
|
+
constructor() {
|
|
5
|
+
// Signal from input-field to change-listener user. Emits (or: should be emitted) each time the end-user has changed the state of a form input's model. Emits model as value.
|
|
6
|
+
this.userModelChange = new Subject();
|
|
7
|
+
// Signal from user of this change-listener to all its child input-fields. Resets their user touched marks.
|
|
8
|
+
this.clearAllMarkedAsUserTouched = new Subject();
|
|
9
|
+
this.hasUserModelChanges = false;
|
|
10
|
+
this._subs = [];
|
|
11
|
+
this._subs.push(this.userModelChange.subscribe(() => {
|
|
12
|
+
this.hasUserModelChanges = true;
|
|
13
|
+
}), this.clearAllMarkedAsUserTouched.subscribe(() => {
|
|
14
|
+
this.hasUserModelChanges = false;
|
|
15
|
+
}));
|
|
16
|
+
}
|
|
17
|
+
ngOnDestroy() {
|
|
18
|
+
this._subs.forEach(sub => sub.unsubscribe());
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
FormInputUserModelChangeListenerService.decorators = [
|
|
22
|
+
{ type: Injectable }
|
|
23
|
+
];
|
|
24
|
+
FormInputUserModelChangeListenerService.ctorParameters = () => [];
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1pbnB1dC11c2VyLWNoYW5nZS1saXN0ZW5lci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZWNvbXBvbmVudHMvc3JjL2xpYi9jb3JlL3NlcnZpY2UvZm9ybS1pbnB1dC11c2VyLWNoYW5nZS1saXN0ZW5lci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUk3QixNQUFNLE9BQU8sdUNBQXVDO0lBV2hEO1FBVkEsNktBQTZLO1FBQzdKLG9CQUFlLEdBQWlCLElBQUksT0FBTyxFQUFPLENBQUM7UUFFbkUsMkdBQTJHO1FBQzNGLGdDQUEyQixHQUFrQixJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRTFFLHdCQUFtQixHQUFZLEtBQUssQ0FBQztRQUVwQyxVQUFLLEdBQW1CLEVBQUUsQ0FBQztRQUcvQixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FDWCxJQUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDaEMsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQztRQUNwQyxDQUFDLENBQUMsRUFDRixJQUFJLENBQUMsMkJBQTJCLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUM1QyxJQUFJLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFDO1FBQ3JDLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDakQsQ0FBQzs7O1lBekJKLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGUsIE9uRGVzdHJveX0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtTdWJqZWN0fSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEZvcm1JbnB1dFVzZXJNb2RlbENoYW5nZUxpc3RlbmVyU2VydmljZSBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XHJcbiAgICAvLyBTaWduYWwgZnJvbSBpbnB1dC1maWVsZCB0byBjaGFuZ2UtbGlzdGVuZXIgdXNlci4gRW1pdHMgKG9yOiBzaG91bGQgYmUgZW1pdHRlZCkgZWFjaCB0aW1lIHRoZSBlbmQtdXNlciBoYXMgY2hhbmdlZCB0aGUgc3RhdGUgb2YgYSBmb3JtIGlucHV0J3MgbW9kZWwuIEVtaXRzIG1vZGVsIGFzIHZhbHVlLlxyXG4gICAgcHVibGljIHJlYWRvbmx5IHVzZXJNb2RlbENoYW5nZTogU3ViamVjdDxhbnk+ID0gbmV3IFN1YmplY3Q8YW55PigpO1xyXG5cclxuICAgIC8vIFNpZ25hbCBmcm9tIHVzZXIgb2YgdGhpcyBjaGFuZ2UtbGlzdGVuZXIgdG8gYWxsIGl0cyBjaGlsZCBpbnB1dC1maWVsZHMuIFJlc2V0cyB0aGVpciB1c2VyIHRvdWNoZWQgbWFya3MuXHJcbiAgICBwdWJsaWMgcmVhZG9ubHkgY2xlYXJBbGxNYXJrZWRBc1VzZXJUb3VjaGVkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgICBwdWJsaWMgaGFzVXNlck1vZGVsQ2hhbmdlczogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICAgICAgdGhpcy5fc3Vicy5wdXNoKFxyXG4gICAgICAgICAgICB0aGlzLnVzZXJNb2RlbENoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5oYXNVc2VyTW9kZWxDaGFuZ2VzID0gdHJ1ZTtcclxuICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgIHRoaXMuY2xlYXJBbGxNYXJrZWRBc1VzZXJUb3VjaGVkLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmhhc1VzZXJNb2RlbENoYW5nZXMgPSBmYWxzZTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3N1YnMuZm9yRWFjaChzdWIgPT4gc3ViLnVuc3Vic2NyaWJlKCkpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { Injectable } from "@angular/core";
|
|
2
|
+
import { Subject } from "rxjs";
|
|
3
|
+
import { ArrayUtils } from '../utils/array-utils';
|
|
4
|
+
import { ElementPosition } from '../model/element-position';
|
|
5
|
+
/**
|
|
6
|
+
* Service to use inside [providers] of some leaf component that contains multiple <co-form>'s inside, possibly nested. Gives the master
|
|
7
|
+
* full control over submits etc. of all its inner co-forms with just one service.
|
|
8
|
+
*/
|
|
9
|
+
export class FormMasterService {
|
|
10
|
+
constructor() {
|
|
11
|
+
// emits when ALL slaves valid-submitted
|
|
12
|
+
this.validSlavesSubmit = new Subject();
|
|
13
|
+
this._slaveForms = [];
|
|
14
|
+
this._subs = [];
|
|
15
|
+
this._positionOfFirstInvalidFieldInDom = new ElementPosition(9999, 9999, 9999, 9999);
|
|
16
|
+
this._firstErrorTooltipSpawned = false;
|
|
17
|
+
}
|
|
18
|
+
ngOnDestroy() {
|
|
19
|
+
this._slaveForms.length = 0;
|
|
20
|
+
this._subs.forEach(s => s.unsubscribe());
|
|
21
|
+
}
|
|
22
|
+
addSlave(coFormComp) {
|
|
23
|
+
this._slaveForms.push(coFormComp);
|
|
24
|
+
this._subs.push(coFormComp.invalidSubmit.subscribe(() => {
|
|
25
|
+
this._handleFormCompInvalidity();
|
|
26
|
+
}));
|
|
27
|
+
this._subs.push(coFormComp.anySubmit.subscribe(() => {
|
|
28
|
+
this._resetFirstInvalidFieldProps();
|
|
29
|
+
}));
|
|
30
|
+
}
|
|
31
|
+
removeSlave(coFormComp) {
|
|
32
|
+
ArrayUtils.RemoveElement(coFormComp, this._slaveForms);
|
|
33
|
+
this._firstErrorTooltipSpawned = false;
|
|
34
|
+
}
|
|
35
|
+
// Returns true if ALL submits were succesful, false if at least one submit failed. Returns undefined if we had no slaves.
|
|
36
|
+
submitSlaves() {
|
|
37
|
+
this._resetFirstInvalidFieldProps();
|
|
38
|
+
let success = true;
|
|
39
|
+
if (this._slaveForms) {
|
|
40
|
+
for (let i = 0, len = this._slaveForms.length; i < len; i++) {
|
|
41
|
+
if (!this._slaveForms[i].submit(true)) {
|
|
42
|
+
success = false;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
if (success) {
|
|
47
|
+
this.validSlavesSubmit.next();
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
this._handleFormCompInvalidity();
|
|
51
|
+
}
|
|
52
|
+
return success;
|
|
53
|
+
}
|
|
54
|
+
resetSlaves() {
|
|
55
|
+
if (this._slaveForms) {
|
|
56
|
+
for (let i = 0, len = this._slaveForms.length; i < len; i++) {
|
|
57
|
+
this._slaveForms[i].reset();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
setFirstInvalidField(form, key, element) {
|
|
62
|
+
if (!element) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
const clientRect = element.getBoundingClientRect(), scrollLeft = window.pageXOffset || document.documentElement.scrollLeft, scrollTop = window.pageYOffset || document.documentElement.scrollTop, top = clientRect.top + scrollTop, left = clientRect.left + scrollLeft;
|
|
66
|
+
if (this._positionOfFirstInvalidFieldInDom.top >= top && this._positionOfFirstInvalidFieldInDom.left >= left) {
|
|
67
|
+
this._slaveHoldingFirstInvalidField = form;
|
|
68
|
+
this._keyOfFirstInvalidFieldInDom = key;
|
|
69
|
+
this._positionOfFirstInvalidFieldInDom = new ElementPosition(top, clientRect.right, clientRect.bottom, left);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
allSlavesValid() {
|
|
73
|
+
if (this._slaveForms) {
|
|
74
|
+
for (let i = 0, len = this._slaveForms.length; i < len; i++) {
|
|
75
|
+
if (!this._slaveForms[i].isValid()) {
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return true;
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
return true;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
_resetFirstInvalidFieldProps() {
|
|
86
|
+
this._positionOfFirstInvalidFieldInDom = new ElementPosition(9999, 9999, 9999, 9999);
|
|
87
|
+
this._keyOfFirstInvalidFieldInDom = "";
|
|
88
|
+
this._slaveHoldingFirstInvalidField = undefined;
|
|
89
|
+
this._firstErrorTooltipSpawned = false;
|
|
90
|
+
}
|
|
91
|
+
_handleFormCompInvalidity() {
|
|
92
|
+
if (this._slaveHoldingFirstInvalidField && !this._firstErrorTooltipSpawned) {
|
|
93
|
+
this._slaveHoldingFirstInvalidField.showErrorTooltipOnFormGroupControl(this._keyOfFirstInvalidFieldInDom);
|
|
94
|
+
this._firstErrorTooltipSpawned = true;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
FormMasterService.decorators = [
|
|
99
|
+
{ type: Injectable }
|
|
100
|
+
];
|
|
101
|
+
FormMasterService.ctorParameters = () => [];
|
|
102
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1tYXN0ZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9saWIvY29yZS9zZXJ2aWNlL2Zvcm0tbWFzdGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFVBQVUsRUFBWSxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUMsT0FBTyxFQUFlLE1BQU0sTUFBTSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFNUQ7OztHQUdHO0FBRUgsTUFBTSxPQUFPLGlCQUFpQjtJQWMxQjtRQWJBLHdDQUF3QztRQUN4QixzQkFBaUIsR0FBa0IsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUUvRCxnQkFBVyxHQUFvQixFQUFFLENBQUM7UUFFbEMsVUFBSyxHQUFtQixFQUFFLENBQUM7UUFJM0Isc0NBQWlDLEdBQW9CLElBQUksZUFBZSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRWpHLDhCQUF5QixHQUFZLEtBQUssQ0FBQztJQUduRCxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFFTSxRQUFRLENBQUMsVUFBeUI7UUFDckMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDbEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxTQUFT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QVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDekUsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7b0JBQ2hDLE9BQU8sS0FBSyxDQUFDO2lCQUNoQjthQUNKO1lBQ0QsT0FBTyxJQUFJLENBQUM7U0FDZjthQUFNO1lBQ0gsT0FBTyxJQUFJLENBQUM7U0FDZjtJQUNMLENBQUM7SUFFTyw0QkFBNEI7UUFDaEMsSUFBSSxDQUFDLGlDQUFpQyxHQUFHLElBQUksZUFBZSxDQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3JGLElBQUksQ0FBQyw0QkFBNEIsR0FBRyxFQUFFLENBQUM7UUFDdkMsSUFBSSxDQUFDLDhCQUE4QixHQUFHLFNBQVMsQ0FBQztRQUNoRCxJQUFJLENBQUMseUJBQXlCLEdBQUcsS0FBSyxDQUFDO0lBQzNDLENBQUM7SUFFTyx5QkFBeUI7UUFDN0IsSUFBSSxJQUFJLENBQUMsOEJBQThCLElBQUksQ0FBQyxJQUFJLENBQUMseUJBQXlCLEVBQUU7WUFDeEUsSUFBSSxDQUFDLDhCQUE4QixDQUFDLGtDQUFrQyxDQUFDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1lBQzFHLElBQUksQ0FBQyx5QkFBeUIsR0FBRyxJQUFJLENBQUM7U0FDekM7SUFDTCxDQUFDOzs7WUEzR0osVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SW5qZWN0YWJsZSwgT25EZXN0cm95fSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1N1YmplY3QsIFN1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHsgRm9ybUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbXBvbmVudHMvZm9ybS9mb3JtLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFycmF5VXRpbHMgfSBmcm9tICcuLi91dGlscy9hcnJheS11dGlscyc7XHJcbmltcG9ydCB7IEVsZW1lbnRQb3NpdGlvbiB9IGZyb20gJy4uL21vZGVsL2VsZW1lbnQtcG9zaXRpb24nO1xyXG5cclxuLyoqXHJcbiAqIFNlcnZpY2UgdG8gdXNlIGluc2lkZSBbcHJvdmlkZXJzXSBvZiBzb21lIGxlYWYgY29tcG9uZW50IHRoYXQgY29udGFpbnMgbXVsdGlwbGUgPGNvLWZvcm0+J3MgaW5zaWRlLCBwb3NzaWJseSBuZXN0ZWQuIEdpdmVzIHRoZSBtYXN0ZXJcclxuICogZnVsbCBjb250cm9sIG92ZXIgc3VibWl0cyBldGMuIG9mIGFsbCBpdHMgaW5uZXIgY28tZm9ybXMgd2l0aCBqdXN0IG9uZSBzZXJ2aWNlLlxyXG4gKi9cclxuQEluamVjdGFibGUoKVxyXG5leHBvcnQgY2xhc3MgRm9ybU1hc3RlclNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG4gICAgLy8gZW1pdHMgd2hlbiBBTEwgc2xhdmVzIHZhbGlkLXN1Ym1pdHRlZFxyXG4gICAgcHVibGljIHJlYWRvbmx5IHZhbGlkU2xhdmVzU3VibWl0OiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcclxuXHJcbiAgICBwcml2YXRlIF9zbGF2ZUZvcm1zOiBGb3JtQ29tcG9uZW50W10gPSBbXTtcclxuXHJcbiAgICBwcml2YXRlIF9zdWJzOiBTdWJzY3JpcHRpb25bXSA9IFtdO1xyXG5cclxuICAgIHByaXZhdGUgX3NsYXZlSG9sZGluZ0ZpcnN0SW52YWxpZEZpZWxkOiBGb3JtQ29tcG9uZW50O1xyXG4gICAgcHJpdmF0ZSBfa2V5T2ZGaXJzdEludmFsaWRGaWVsZEluRG9tOiBzdHJpbmc7XHJcbiAgICBwcml2YXRlIF9wb3NpdGlvbk9mRmlyc3RJbnZhbGlkRmllbGRJbkRvbTogRWxlbWVudFBvc2l0aW9uID0gbmV3IEVsZW1lbnRQb3NpdGlvbig5OTk5LCA5OTk5LCA5OTk5LCA5OTk5KTtcclxuXHJcbiAgICBwcml2YXRlIF9maXJzdEVycm9yVG9vbHRpcFNwYXduZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9zbGF2ZUZvcm1zLmxlbmd0aCA9IDA7XHJcbiAgICAgICAgdGhpcy5fc3Vicy5mb3JFYWNoKHMgPT4gcy51bnN1YnNjcmliZSgpKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgYWRkU2xhdmUoY29Gb3JtQ29tcDogRm9ybUNvbXBvbmVudCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3NsYXZlRm9ybXMucHVzaChjb0Zvcm1Db21wKTtcclxuICAgICAgICB0aGlzLl9zdWJzLnB1c2goY29Gb3JtQ29tcC5pbnZhbGlkU3VibWl0LnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX2hhbmRsZUZvcm1Db21wSW52YWxpZGl0eSgpO1xyXG4gICAgICAgIH0pKTtcclxuICAgICAgICB0aGlzLl9zdWJzLnB1c2goY29Gb3JtQ29tcC5hbnlTdWJtaXQuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5fcmVzZXRGaXJzdEludmFsaWRGaWVsZFByb3BzKCk7XHJcbiAgICAgICAgfSkpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyByZW1vdmVTbGF2ZShjb0Zvcm1Db21wOiBGb3JtQ29tcG9uZW50KTogdm9pZCB7XHJcbiAgICAgICAgQXJyYXlVdGlscy5SZW1vdmVFbGVtZW50KGNvRm9ybUNvbXAsIHRoaXMuX3NsYXZlRm9ybXMpO1xyXG4gICAgICAgIHRoaXMuX2ZpcnN0RXJyb3JUb29sdGlwU3Bhd25lZCA9IGZhbHNlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFJldHVybnMgdHJ1ZSBpZiBBTEwgc3VibWl0cyB3ZXJlIHN1Y2Nlc2Z1bCwgZmFsc2UgaWYgYXQgbGVhc3Qgb25lIHN1Ym1pdCBmYWlsZWQuIFJldHVybnMgdW5kZWZpbmVkIGlmIHdlIGhhZCBubyBzbGF2ZXMuXHJcbiAgICBwdWJsaWMgc3VibWl0U2xhdmVzKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHRoaXMuX3Jlc2V0Rmlyc3RJbnZhbGlkRmllbGRQcm9wcygpO1xyXG4gICAgICAgIGxldCBzdWNjZXNzOiBib29sZWFuID0gdHJ1ZTtcclxuICAgICAgICBpZiAodGhpcy5fc2xhdmVGb3Jtcykge1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwLCBsZW46IG51bWJlciA9IHRoaXMuX3NsYXZlRm9ybXMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5fc2xhdmVGb3Jtc1tpXS5zdWJtaXQodHJ1ZSkpIHtcclxuICAgICAgICAgICAgICAgICAgICBzdWNjZXNzID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChzdWNjZXNzKSB7XHJcbiAgICAgICAgICAgIHRoaXMudmFsaWRTbGF2ZXNTdWJtaXQubmV4dCgpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2hhbmRsZUZvcm1Db21wSW52YWxpZGl0eSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gc3VjY2VzcztcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgcmVzZXRTbGF2ZXMoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuX3NsYXZlRm9ybXMpIHtcclxuICAgICAgICAgICAgZm9yIChsZXQgaTogbnVtYmVyID0gMCwgbGVuOiBudW1iZXIgPSB0aGlzLl9zbGF2ZUZvcm1zLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9zbGF2ZUZvcm1zW2ldLnJlc2V0KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHNldEZpcnN0SW52YWxpZEZpZWxkKGZvcm06IEZvcm1Db21wb25lbnQsIGtleTogc3RyaW5nLCBlbGVtZW50OiBIVE1MRWxlbWVudCk6IHZvaWQge1xyXG4gICAgICAgIGlmICghZWxlbWVudCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGNsaWVudFJlY3Q6IENsaWVudFJlY3QgPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLFxyXG4gICAgICAgICAgICBzY3JvbGxMZWZ0OiBudW1iZXIgPSB3aW5kb3cucGFnZVhPZmZzZXQgfHwgZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LnNjcm9sbExlZnQsXHJcbiAgICAgICAgICAgIHNjcm9sbFRvcDogbnVtYmVyID0gd2luZG93LnBhZ2VZT2Zmc2V0IHx8IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zY3JvbGxUb3AsXHJcbiAgICAgICAgICAgIHRvcDogbnVtYmVyID0gY2xpZW50UmVjdC50b3AgKyBzY3JvbGxUb3AsXHJcbiAgICAgICAgICAgIGxlZnQ6IG51bWJlciA9IGNsaWVudFJlY3QubGVmdCArIHNjcm9sbExlZnQ7XHJcbiAgICAgICAgaWYgKHRoaXMuX3Bvc2l0aW9uT2ZGaXJzdEludmFsaWRGaWVsZEluRG9tLnRvcCA+PSB0b3AgJiYgdGhpcy5fcG9zaXRpb25PZkZpcnN0SW52YWxpZEZpZWxkSW5Eb20ubGVmdCA+PSBsZWZ0KSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3NsYXZlSG9sZGluZ0ZpcnN0SW52YWxpZEZpZWxkID0gZm9ybTtcclxuICAgICAgICAgICAgdGhpcy5fa2V5T2ZGaXJzdEludmFsaWRGaWVsZEluRG9tID0ga2V5O1xyXG4gICAgICAgICAgICB0aGlzLl9wb3NpdGlvbk9mRmlyc3RJbnZhbGlkRmllbGRJbkRvbSA9IG5ldyBFbGVtZW50UG9zaXRpb24odG9wLCBjbGllbnRSZWN0LnJpZ2h0LCBjbGllbnRSZWN0LmJvdHRvbSwgbGVmdCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBhbGxTbGF2ZXNWYWxpZCgpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAodGhpcy5fc2xhdmVGb3Jtcykge1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwLCBsZW46IG51bWJlciA9IHRoaXMuX3NsYXZlRm9ybXMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5fc2xhdmVGb3Jtc1tpXS5pc1ZhbGlkKCkpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3Jlc2V0Rmlyc3RJbnZhbGlkRmllbGRQcm9wcygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9wb3NpdGlvbk9mRmlyc3RJbnZhbGlkRmllbGRJbkRvbSA9IG5ldyBFbGVtZW50UG9zaXRpb24oOTk5OSwgOTk5OSwgOTk5OSwgOTk5OSk7XHJcbiAgICAgICAgdGhpcy5fa2V5T2ZGaXJzdEludmFsaWRGaWVsZEluRG9tID0gXCJcIjtcclxuICAgICAgICB0aGlzLl9zbGF2ZUhvbGRpbmdGaXJzdEludmFsaWRGaWVsZCA9IHVuZGVmaW5lZDtcclxuICAgICAgICB0aGlzLl9maXJzdEVycm9yVG9vbHRpcFNwYXduZWQgPSBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9oYW5kbGVGb3JtQ29tcEludmFsaWRpdHkoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuX3NsYXZlSG9sZGluZ0ZpcnN0SW52YWxpZEZpZWxkICYmICF0aGlzLl9maXJzdEVycm9yVG9vbHRpcFNwYXduZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5fc2xhdmVIb2xkaW5nRmlyc3RJbnZhbGlkRmllbGQuc2hvd0Vycm9yVG9vbHRpcE9uRm9ybUdyb3VwQ29udHJvbCh0aGlzLl9rZXlPZkZpcnN0SW52YWxpZEZpZWxkSW5Eb20pO1xyXG4gICAgICAgICAgICB0aGlzLl9maXJzdEVycm9yVG9vbHRpcFNwYXduZWQgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { Injectable, NgZone } from "@angular/core";
|
|
2
|
+
export class NgZoneWrapperService {
|
|
3
|
+
constructor(_ngZone) {
|
|
4
|
+
this._ngZone = _ngZone;
|
|
5
|
+
}
|
|
6
|
+
setTimeoutOutsideAngular(fn, millis = 0) {
|
|
7
|
+
this._ngZone.runOutsideAngular(() => {
|
|
8
|
+
setTimeout(() => {
|
|
9
|
+
fn();
|
|
10
|
+
}, millis);
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
NgZoneWrapperService.decorators = [
|
|
15
|
+
{ type: Injectable }
|
|
16
|
+
];
|
|
17
|
+
NgZoneWrapperService.ctorParameters = () => [
|
|
18
|
+
{ type: NgZone }
|
|
19
|
+
];
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmctem9uZS13cmFwcGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvcmUvc2VydmljZS9uZy16b25lLXdyYXBwZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsVUFBVSxFQUFFLE1BQU0sRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUdqRCxNQUFNLE9BQU8sb0JBQW9CO0lBQzdCLFlBQW9CLE9BQWU7UUFBZixZQUFPLEdBQVAsT0FBTyxDQUFRO0lBQ25DLENBQUM7SUFFTSx3QkFBd0IsQ0FBQyxFQUFZLEVBQUUsU0FBaUIsQ0FBQztRQUM1RCxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLEdBQUcsRUFBRTtZQUNoQyxVQUFVLENBQUMsR0FBRyxFQUFFO2dCQUNaLEVBQUUsRUFBRSxDQUFDO1lBQ1QsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ2YsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzs7WUFYSixVQUFVOzs7WUFGUyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3RhYmxlLCBOZ1pvbmV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcblxyXG5ASW5qZWN0YWJsZSgpXHJcbmV4cG9ydCBjbGFzcyBOZ1pvbmVXcmFwcGVyU2VydmljZSB7XHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSkge1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzZXRUaW1lb3V0T3V0c2lkZUFuZ3VsYXIoZm46IEZ1bmN0aW9uLCBtaWxsaXM6IG51bWJlciA9IDApOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xyXG4gICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcclxuICAgICAgICAgICAgICAgIGZuKCk7XHJcbiAgICAgICAgICAgIH0sIG1pbGxpcyk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcbn0iXX0=
|
|
@@ -0,0 +1,264 @@
|
|
|
1
|
+
import { isNill } from "../function/is-nill.function";
|
|
2
|
+
import { notNill } from "../function/not-nill.function";
|
|
3
|
+
import { StringUtils } from "./string-utils";
|
|
4
|
+
import { NumberUtils } from "./number-utils";
|
|
5
|
+
import { ObjectUtils } from "./object-utils";
|
|
6
|
+
export class ArrayUtils {
|
|
7
|
+
/**
|
|
8
|
+
* Inserts given element into given array, on given index number.
|
|
9
|
+
*
|
|
10
|
+
* @param index The index position for the element to insert, use negatives to count from the arrays end
|
|
11
|
+
* @param element The element to insert
|
|
12
|
+
* @param array The array to insert the element into
|
|
13
|
+
* @returns True if and only if given element is succesfully inserted into given array.
|
|
14
|
+
*/
|
|
15
|
+
static InsertElement(index, element, array) {
|
|
16
|
+
if (!Array.isArray(array) || Math.abs(index) > array.length || isNill(index)) {
|
|
17
|
+
// cannot insert something into nothing, and cannot insert an element into a non-array (via this contract that is), and
|
|
18
|
+
// we will not insert anything beyond the arrays limits (but we can append to the start or end)
|
|
19
|
+
return false;
|
|
20
|
+
}
|
|
21
|
+
const lenBefore = array.length;
|
|
22
|
+
array.splice(index, 0, element);
|
|
23
|
+
return (array.length === lenBefore + 1);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Removes given element from given array. Doesn't just set it to null like JavaScripts standard 'delete' keyword, but truly removes the
|
|
27
|
+
* element using splice(). Also works on associative arrays.
|
|
28
|
+
*
|
|
29
|
+
* @param element The element to remove.
|
|
30
|
+
* @param array The array to remove the element from.
|
|
31
|
+
* @returns True iff given element was truly successfully removed from given array.
|
|
32
|
+
*/
|
|
33
|
+
static RemoveElement(element, array) {
|
|
34
|
+
if (!Array.isArray(array)) {
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
let index = array.indexOf(element);
|
|
38
|
+
return ArrayUtils.RemoveElementAtIndex(index, array);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Returns a true shallow clone of given array plus all its items. Its first-level members are object-shallow-cloned (optionally with a
|
|
42
|
+
* strongly typed constructor),
|
|
43
|
+
* or just as plain object (see param arrayItemsClass).
|
|
44
|
+
* @param arrayGiven
|
|
45
|
+
* @param arrayItemsClass If provided, the cloned array's first-level items will be strongly typed to / constructed as this class. Otherwise
|
|
46
|
+
* it'll be a plain object.
|
|
47
|
+
* @returns a true shallow clone of given array plus all its items
|
|
48
|
+
*/
|
|
49
|
+
static ShallowCloneArrayAndItsItem(arrayGiven, arrayItemsClass) {
|
|
50
|
+
let arrayClone = [];
|
|
51
|
+
if (arrayGiven) {
|
|
52
|
+
for (let i = 0, len = arrayGiven.length; i < len; i++) {
|
|
53
|
+
arrayClone.push(ObjectUtils.GetShallowClone(arrayGiven[i], arrayItemsClass));
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
return [];
|
|
58
|
+
}
|
|
59
|
+
return arrayClone;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Moves given element to given toIndex in given array. Returns whether the element was really moved, thus changing the given array.
|
|
63
|
+
*/
|
|
64
|
+
static MoveElement(element, toIndex, array) {
|
|
65
|
+
if (!Array.isArray(array) || isNill(toIndex)) {
|
|
66
|
+
return false;
|
|
67
|
+
}
|
|
68
|
+
let fromIndex = array.indexOf(element);
|
|
69
|
+
let toIndexCorrected = NumberUtils.GetNearestNumberWithinBounds(toIndex, 0, array.length - 1);
|
|
70
|
+
if (fromIndex === -1 || array[toIndexCorrected] === element) {
|
|
71
|
+
// element did not exist in given array, or already existed on given toIndex
|
|
72
|
+
return false;
|
|
73
|
+
}
|
|
74
|
+
array.splice(toIndexCorrected, 0, array.splice(fromIndex, 1)[0]);
|
|
75
|
+
return true;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Returns max value from all resulting values from applying given itemValueFunction to all items of given array.
|
|
79
|
+
* @param array
|
|
80
|
+
* @param itemValueFunction The function aplied to each array item that gives it a numerical value. The max num val found is returned.
|
|
81
|
+
*/
|
|
82
|
+
static GetMaxCalculatedValue(array, itemValueFunction) {
|
|
83
|
+
if (!array || !itemValueFunction) {
|
|
84
|
+
return NaN;
|
|
85
|
+
}
|
|
86
|
+
let max = undefined;
|
|
87
|
+
let len = array.length;
|
|
88
|
+
for (let i = 0; i < len; i++) {
|
|
89
|
+
let valueCur = itemValueFunction.call(this);
|
|
90
|
+
if (valueCur > max) {
|
|
91
|
+
max = valueCur;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return max;
|
|
95
|
+
}
|
|
96
|
+
// Checks if given array is defined, and is an array, and has length > 0, and, optionally checks that the first element is of type given clazz.
|
|
97
|
+
static IsArrayWithElements(arrayToCheck, clazz) {
|
|
98
|
+
if (isNill(arrayToCheck)) {
|
|
99
|
+
return false;
|
|
100
|
+
}
|
|
101
|
+
if (Array.isArray(arrayToCheck) && arrayToCheck.length > 0) {
|
|
102
|
+
if (clazz) {
|
|
103
|
+
return arrayToCheck[0] instanceof clazz;
|
|
104
|
+
}
|
|
105
|
+
return true;
|
|
106
|
+
}
|
|
107
|
+
return false;
|
|
108
|
+
}
|
|
109
|
+
// Removes all elements from given array for which given filter function holds true. Returns true if at least one removed, else false.
|
|
110
|
+
static RemoveElementsByFilter(array, filterFunction) {
|
|
111
|
+
if (!ArrayUtils.IsArrayWithElements(array) || !filterFunction) {
|
|
112
|
+
return false;
|
|
113
|
+
}
|
|
114
|
+
let atLeastOneRemoved = false;
|
|
115
|
+
let len = array.length;
|
|
116
|
+
for (let i = len - 1; i >= 0; i--) {
|
|
117
|
+
let item = array[i];
|
|
118
|
+
if (filterFunction.call(this, item) === true) {
|
|
119
|
+
array.splice(i, 1);
|
|
120
|
+
atLeastOneRemoved = true;
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
return atLeastOneRemoved;
|
|
124
|
+
}
|
|
125
|
+
// Replaces the elementOut with given elementIn.
|
|
126
|
+
static ReplaceElement(elementIn, elementOut, array) {
|
|
127
|
+
if (!array || !Array.isArray(array)) {
|
|
128
|
+
return;
|
|
129
|
+
}
|
|
130
|
+
const indexOut = array.indexOf(elementOut);
|
|
131
|
+
if (indexOut > -1) {
|
|
132
|
+
ArrayUtils.InsertElement(indexOut, elementIn, array);
|
|
133
|
+
ArrayUtils.RemoveElement(elementOut, array);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
// Swaps the elements in given array with each other. Returns whether a real swap was made. From and To elements have to exist in array.
|
|
137
|
+
static SwapElements(elementOne, elementTwo, array) {
|
|
138
|
+
if (!Array.isArray(array)) {
|
|
139
|
+
return false;
|
|
140
|
+
}
|
|
141
|
+
const elOneIdx = array.indexOf(elementTwo);
|
|
142
|
+
const elTwoIdx = array.indexOf(elementOne);
|
|
143
|
+
if (elOneIdx === -1 || elTwoIdx === -1) {
|
|
144
|
+
return false;
|
|
145
|
+
}
|
|
146
|
+
array[elOneIdx] = array.splice(elTwoIdx, 1, array[elOneIdx])[0];
|
|
147
|
+
return true;
|
|
148
|
+
}
|
|
149
|
+
// Inserts or removes given toggle element into given elements array; inserts if not yet exists, and removes if already exists.
|
|
150
|
+
static ToggleElement(toggle, elements) {
|
|
151
|
+
elements.indexOf(toggle) > -1 ? ArrayUtils.RemoveElement(toggle, elements) : elements.push(toggle);
|
|
152
|
+
}
|
|
153
|
+
// Returns the number of elements from given array for which given whereFunction holds true.
|
|
154
|
+
static CountWhere(array, whereFunction) {
|
|
155
|
+
if (!ArrayUtils.IsArrayWithElements(array) || !whereFunction) {
|
|
156
|
+
return 0;
|
|
157
|
+
}
|
|
158
|
+
let count = 0;
|
|
159
|
+
const len = array.length;
|
|
160
|
+
for (let i = 0; i < len; i++) {
|
|
161
|
+
if (whereFunction.call(this, array[i])) {
|
|
162
|
+
count++;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
return count;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Returns whether at least one element in given array could be found by given finder function.
|
|
169
|
+
*
|
|
170
|
+
* @param array
|
|
171
|
+
* @param finder A finder function that takes an element of the array and returns a boolean that represents
|
|
172
|
+
* the 'found status' for that element; whether it should have been found or not.
|
|
173
|
+
*/
|
|
174
|
+
static ContainsAnElementFoundBy(array, finder) {
|
|
175
|
+
if (!array || !finder) {
|
|
176
|
+
return false;
|
|
177
|
+
}
|
|
178
|
+
return notNill(ArrayUtils.Find(array, finder));
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Cross-browser Array.find() function. Returns the first item in given array for which the foundBy function returns true. Returns
|
|
182
|
+
* undefined when none was found.
|
|
183
|
+
*
|
|
184
|
+
* Example usage:
|
|
185
|
+
* let foundItem: BusinessObject = ArrayUtils.Find<BusinessObject>(modelArray, (modelItem: BusinessObject) => <br>
|
|
186
|
+
* (return modelItem.getId() === '1')
|
|
187
|
+
* * });
|
|
188
|
+
*
|
|
189
|
+
* @param array The array with items to search in.
|
|
190
|
+
* @param foundBy The finder function applied on each items of the array, when that returns true, the item is considered found.
|
|
191
|
+
*/
|
|
192
|
+
static Find(array, foundBy) {
|
|
193
|
+
if (!array || !foundBy) {
|
|
194
|
+
return undefined;
|
|
195
|
+
}
|
|
196
|
+
for (let i = 0, len = array.length; i < len; i++) {
|
|
197
|
+
let itemCur = array[i];
|
|
198
|
+
if (foundBy(itemCur)) {
|
|
199
|
+
return itemCur;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
return undefined;
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Sorts all items in the given array alphabetically (A-to-Z) according to the values of their given property.
|
|
206
|
+
* @param theArray
|
|
207
|
+
* @param propertyName = undefined] When not defined, assumes an array of STRINGS is given, instead of array of OBJECTS.
|
|
208
|
+
* @param [reverseOrder = false] Set to true to sort from Z-to-A instead
|
|
209
|
+
*/
|
|
210
|
+
static SortAlphabetically(theArray, propertyName = undefined, reverseOrder = false) {
|
|
211
|
+
if (!theArray || !Array.isArray(theArray)) {
|
|
212
|
+
return;
|
|
213
|
+
}
|
|
214
|
+
let switcher = reverseOrder ? -1 : 1;
|
|
215
|
+
let stringSort = StringUtils.IsStringWithLength(propertyName);
|
|
216
|
+
theArray.sort((itemOne, itemTwo) => {
|
|
217
|
+
let valOne = stringSort ? itemOne[propertyName] : itemOne;
|
|
218
|
+
let valTwo = stringSort ? itemTwo[propertyName] : itemTwo;
|
|
219
|
+
return (valOne > valTwo ? 1 : (valOne < valTwo ? -1 : 0)) * switcher;
|
|
220
|
+
});
|
|
221
|
+
}
|
|
222
|
+
static PushIfNotExist(item, array) {
|
|
223
|
+
if (!array) {
|
|
224
|
+
return false;
|
|
225
|
+
}
|
|
226
|
+
if (array.indexOf(item) === -1) {
|
|
227
|
+
array.push(item);
|
|
228
|
+
return true;
|
|
229
|
+
}
|
|
230
|
+
return false;
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* Removes element at given index from given array. Doesn't just set it to null like JavaScripts standard 'delete' does, but really
|
|
234
|
+
* removes the element using splice().
|
|
235
|
+
*
|
|
236
|
+
* @param index
|
|
237
|
+
* @param array
|
|
238
|
+
* @returns True if and only if the element on given index is succesfully removed from given array.
|
|
239
|
+
*/
|
|
240
|
+
static RemoveElementAtIndex(index, array) {
|
|
241
|
+
if (NumberUtils.IsNaN(index) || index < 0 || !Array.isArray(array) || array.length === 0) {
|
|
242
|
+
return false;
|
|
243
|
+
}
|
|
244
|
+
if (index in array) {
|
|
245
|
+
array.splice(index, 1);
|
|
246
|
+
return true;
|
|
247
|
+
}
|
|
248
|
+
else {
|
|
249
|
+
return false;
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
// Returns true if and only if given array includes given item. Checked by ===.
|
|
253
|
+
static Includes(array, item) {
|
|
254
|
+
if (Array.isArray(array)) {
|
|
255
|
+
for (let i = 0, len = array.length; i < len; i++) {
|
|
256
|
+
if (array[i] === item) {
|
|
257
|
+
return true;
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
return false;
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvcmUvdXRpbHMvYXJyYXktdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3BELE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUN0RCxPQUFPLEVBQUMsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUUzQyxNQUFNLE9BQU8sVUFBVTtJQUNuQjs7Ozs7OztPQU9HO0lBQ0ksTUFBTSxDQUFDLGFBQWEsQ0FBSSxLQUFhLEVBQUUsT0FBVSxFQUFFLEtBQVU7UUFDaEUsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxLQUFLLENBQUMsTUFBTSxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMxRSx1SEFBdUg7WUFDdkgsK0ZBQStGO1lBQy9GLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO1FBRUQsTUFBTSxTQUFTLEdBQVcsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUN2QyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDaEMsT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssU0FBUyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksTUFBTSxDQUFDLGFBQWEsQ0FBSSxPQUFVLEVBQUUsS0FBVTtRQUNqRCxJQUFJLENBQUMsS0FB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QztZQUNqQixPQUFPLElBQUksQ0FBQztTQUNmO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSSxNQUFNLENBQUMsb0JBQW9CLENBQUMsS0FBYSxFQUFFLEtBQVk7UUFDMUQsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3RGLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO1FBRUQsSUFBSSxLQUFLLElBQUksS0FBSyxFQUFFO1lBQ2hCLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ3ZCLE9BQU8sSUFBSSxDQUFDO1NBQ2Y7YUFBTTtZQUNILE9BQU8sS0FBSyxDQUFDO1NBQ2hCO0lBQ0wsQ0FBQztJQUVELCtFQUErRTtJQUN4RSxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQVksRUFBRSxJQUFTO1FBQzFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN0QixLQUFLLElBQUksQ0FBQyxHQUFXLENBQUMsRUFBRSxHQUFHLEdBQVcsS0FBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFO2dCQUM5RCxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLEVBQUU7b0JBQ25CLE9BQU8sSUFBSSxDQUFDO2lCQUNmO2FBQ0o7WUFDRCxPQUFPLEtBQUssQ0FBQztTQUNoQjtJQUNMLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7aXNOaWxsfSBmcm9tIFwiLi4vZnVuY3Rpb24vaXMtbmlsbC5mdW5jdGlvblwiO1xyXG5pbXBvcnQge25vdE5pbGx9IGZyb20gXCIuLi9mdW5jdGlvbi9ub3QtbmlsbC5mdW5jdGlvblwiO1xyXG5pbXBvcnQge1N0cmluZ1V0aWxzfSBmcm9tIFwiLi9zdHJpbmctdXRpbHNcIjtcclxuaW1wb3J0IHtOdW1iZXJVdGlsc30gZnJvbSBcIi4vbnVtYmVyLXV0aWxzXCI7XHJcbmltcG9ydCB7T2JqZWN0VXRpbHN9IGZyb20gXCIuL29iamVjdC11dGlsc1wiO1xyXG5cclxuZXhwb3J0IGNsYXNzIEFycmF5VXRpbHMge1xyXG4gICAgLyoqXHJcbiAgICAgKiBJbnNlcnRzIGdpdmVuIGVsZW1lbnQgaW50byBnaXZlbiBhcnJheSwgb24gZ2l2ZW4gaW5kZXggbnVtYmVyLlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBpbmRleCBUaGUgaW5kZXggcG9zaXRpb24gZm9yIHRoZSBlbGVtZW50IHRvIGluc2VydCwgdXNlIG5lZ2F0aXZlcyB0byBjb3VudCBmcm9tIHRoZSBhcnJheXMgZW5kXHJcbiAgICAgKiBAcGFyYW0gZWxlbWVudCBUaGUgZWxlbWVudCB0byBpbnNlcnRcclxuICAgICAqIEBwYXJhbSBhcnJheSBUaGUgYXJyYXkgdG8gaW5zZXJ0IHRoZSBlbGVtZW50IGludG9cclxuICAgICAqIEByZXR1cm5zIFRydWUgaWYgYW5kIG9ubHkgaWYgZ2l2ZW4gZWxlbWVudCBpcyBzdWNjZXNmdWxseSBpbnNlcnRlZCBpbnRvIGdpdmVuIGFycmF5LlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIEluc2VydEVsZW1lbnQ8VD4oaW5kZXg6IG51bWJlciwgZWxlbWVudDogVCwgYXJyYXk6IFRbXSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICghQXJyYXkuaXNBcnJheShhcnJheSkgfHwgTWF0aC5hYnMoaW5kZXgpID4gYXJyYXkubGVuZ3RoIHx8IGlzTmlsbChpbmRleCkpIHtcclxuICAgICAgICAgICAgLy8gY2Fubm90IGluc2VydCBzb21ldGhpbmcgaW50byBub3RoaW5nLCBhbmQgY2Fubm90IGluc2VydCBhbiBlbGVtZW50IGludG8gYSBub24tYXJyYXkgKHZpYSB0aGlzIGNvbnRyYWN0IHRoYXQgaXMpLCBhbmRcclxuICAgICAgICAgICAgLy8gd2Ugd2lsbCBub3QgaW5zZXJ0IGFueXRoaW5nIGJleW9uZCB0aGUgYXJyYXlzIGxpbWl0cyAoYnV0IHdlIGNhbiBhcHBlbmQgdG8gdGhlIHN0YXJ0IG9yIGVuZClcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgbGVuQmVmb3JlOiBudW1iZXIgPSBhcnJheS5sZW5ndGg7XHJcbiAgICAgICAgYXJyYXkuc3BsaWNlKGluZGV4LCAwLCBlbGVtZW50KTtcclxuICAgICAgICByZXR1cm4gKGFycmF5Lmxlbmd0aCA9PT0gbGVuQmVmb3JlICsgMSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZW1vdmVzIGdpdmVuIGVsZW1lbnQgZnJvbSBnaXZlbiBhcnJheS4gRG9lc24ndCBqdXN0IHNldCBpdCB0byBudWxsIGxpa2UgSmF2YVNjcmlwdHMgc3RhbmRhcmQgJ2RlbGV0ZScga2V5d29yZCwgYnV0IHRydWx5IHJlbW92ZXMgdGhlXHJcbiAgICAgKiBlbGVtZW50IHVzaW5nIHNwbGljZSgpLiBBbHNvIHdvcmtzIG9uIGFzc29jaWF0aXZlIGFycmF5cy5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gZWxlbWVudCBUaGUgZWxlbWVudCB0byByZW1vdmUuXHJcbiAgICAgKiBAcGFyYW0gYXJyYXkgVGhlIGFycmF5IHRvIHJlbW92ZSB0aGUgZWxlbWVudCBmcm9tLlxyXG4gICAgICogQHJldHVybnMgVHJ1ZSBpZmYgZ2l2ZW4gZWxlbWVudCB3YXMgdHJ1bHkgc3VjY2Vzc2Z1bGx5IHJlbW92ZWQgZnJvbSBnaXZlbiBhcnJheS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHN0YXRpYyBSZW1vdmVFbGVtZW50PFQ+KGVsZW1lbnQ6IFQsIGFycmF5OiBUW10pOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoYXJyYXkpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxldCBpbmRleDogbnVtYmVyID0gYXJyYXkuaW5kZXhPZihlbGVtZW50KTtcclxuICAgICAgICByZXR1cm4gQXJyYXlVdGlscy5SZW1vdmVFbGVtZW50QXRJbmRleChpbmRleCwgYXJyYXkpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0dXJucyBhIHRydWUgc2hhbGxvdyBjbG9uZSBvZiBnaXZlbiBhcnJheSBwbHVzIGFsbCBpdHMgaXRlbXMuIEl0cyBmaXJzdC1sZXZlbCBtZW1iZXJzIGFyZSBvYmplY3Qtc2hhbGxvdy1jbG9uZWQgKG9wdGlvbmFsbHkgd2l0aCBhXHJcbiAgICAgKiBzdHJvbmdseSB0eXBlZCBjb25zdHJ1Y3RvciksXHJcbiAgICAgKiBvciBqdXN0IGFzIHBsYWluIG9iamVjdCAoc2VlIHBhcmFtIGFycmF5SXRlbXNDbGFzcykuXHJcbiAgICAgKiBAcGFyYW0gYXJyYXlHaXZlblxyXG4gICAgICogQHBhcmFtIGFycmF5SXRlbXNDbGFzcyBJZiBwcm92aWRlZCwgdGhlIGNsb25lZCBhcnJheSdzIGZpcnN0LWxldmVsIGl0ZW1zIHdpbGwgYmUgc3Ryb25nbHkgdHlwZWQgdG8gLyBjb25zdHJ1Y3RlZCBhcyB0aGlzIGNsYXNzLiBPdGhlcndpc2VcclxuICAgICAqIGl0J2xsIGJlIGEgcGxhaW4gb2JqZWN0LlxyXG4gICAgICogQHJldHVybnMgYSB0cnVlIHNoYWxsb3cgY2xvbmUgb2YgZ2l2ZW4gYXJyYXkgcGx1cyBhbGwgaXRzIGl0ZW1zXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgU2hhbGxvd0Nsb25lQXJyYXlBbmRJdHNJdGVtPFQ+KGFycmF5R2l2ZW46IFRbXSwgYXJyYXlJdGVtc0NsYXNzPzogYW55KTogVFtdIHtcclxuICAgICAgICBsZXQgYXJyYXlDbG9uZTogVFtdID0gW107XHJcblxyXG4gICAgICAgIGlmIChhcnJheUdpdmVuKSB7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDAsIGxlbjogbnVtYmVyID0gYXJyYXlHaXZlbi5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gICAgICAgICAgICAgICAgYXJyYXlDbG9uZS5wdXNoKE9iamVjdFV0aWxzLkdldFNoYWxsb3dDbG9uZShhcnJheUdpdmVuW2ldLCBhcnJheUl0ZW1zQ2xhc3MpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiBbXTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBhcnJheUNsb25lO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogTW92ZXMgZ2l2ZW4gZWxlbWVudCB0byBnaXZlbiB0b0luZGV4IGluIGdpdmVuIGFycmF5LiBSZXR1cm5zIHdoZXRoZXIgdGhlIGVsZW1lbnQgd2FzIHJlYWxseSBtb3ZlZCwgdGh1cyBjaGFuZ2luZyB0aGUgZ2l2ZW4gYXJyYXkuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgTW92ZUVsZW1lbnQ8VD4oZWxlbWVudDogVCwgdG9JbmRleDogbnVtYmVyLCBhcnJheTogVFtdKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGFycmF5KSB8fCBpc05pbGwodG9JbmRleCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGV0IGZyb21JbmRleDogbnVtYmVyID0gYXJyYXkuaW5kZXhPZihlbGVtZW50KTtcclxuICAgICAgICBsZXQgdG9JbmRleENvcnJlY3RlZDogbnVtYmVyID0gTnVtYmVyVXRpbHMuR2V0TmVhcmVzdE51bWJlcldpdGhpbkJvdW5kcyh0b0luZGV4LCAwLCBhcnJheS5sZW5ndGggLSAxKTtcclxuICAgICAgICBpZiAoZnJvbUluZGV4ID09PSAtMSB8fCBhcnJheVt0b0luZGV4Q29ycmVjdGVkXSA9PT0gZWxlbWVudCkge1xyXG4gICAgICAgICAgICAvLyBlbGVtZW50IGRpZCBub3QgZXhpc3QgaW4gZ2l2ZW4gYXJyYXksIG9yIGFscmVhZHkgZXhpc3RlZCBvbiBnaXZlbiB0b0luZGV4XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgYXJyYXkuc3BsaWNlKHRvSW5kZXhDb3JyZWN0ZWQsIDAsIGFycmF5LnNwbGljZShmcm9tSW5kZXgsIDEpWzBdKTtcclxuICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJldHVybnMgbWF4IHZhbHVlIGZyb20gYWxsIHJlc3VsdGluZyB2YWx1ZXMgZnJvbSBhcHBseWluZyBnaXZlbiBpdGVtVmFsdWVGdW5jdGlvbiB0byBhbGwgaXRlbXMgb2YgZ2l2ZW4gYXJyYXkuXHJcbiAgICAgKiBAcGFyYW0gYXJyYXlcclxuICAgICAqIEBwYXJhbSBpdGVtVmFsdWVGdW5jdGlvbiBUaGUgZnVuY3Rpb24gYXBsaWVkIHRvIGVhY2ggYXJyYXkgaXRlbSB0aGF0IGdpdmVzIGl0IGEgbnVtZXJpY2FsIHZhbHVlLiBUaGUgbWF4IG51bSB2YWwgZm91bmQgaXMgcmV0dXJuZWQuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgR2V0TWF4Q2FsY3VsYXRlZFZhbHVlPFQ+KGFycmF5OiBUW10sIGl0ZW1WYWx1ZUZ1bmN0aW9uOiAoaXRlbTogVCkgPT4gbnVtYmVyKTogbnVtYmVyIHtcclxuICAgICAgICBpZiAoIWFycmF5IHx8ICFpdGVtVmFsdWVGdW5jdGlvbikge1xyXG4gICAgICAgICAgICByZXR1cm4gTmFOO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGV0IG1heDogbnVtYmVyID0gdW5kZWZpbmVkO1xyXG5cclxuICAgICAgICBsZXQgbGVuOiBudW1iZXIgPSBhcnJheS5sZW5ndGg7XHJcbiAgICAgICAgZm9yIChsZXQgaTogbnVtYmVyID0gMDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgICAgICAgICAgIGxldCB2YWx1ZUN1cjogbnVtYmVyID0gaXRlbVZhbHVlRnVuY3Rpb24uY2FsbCh0aGlzKTtcclxuICAgICAgICAgICAgaWYgKHZhbHVlQ3VyID4gbWF4KSB7XHJcbiAgICAgICAgICAgICAgICBtYXggPSB2YWx1ZUN1cjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIG1heDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBDaGVja3MgaWYgZ2l2ZW4gYXJyYXkgaXMgZGVmaW5lZCwgYW5kIGlzIGFuIGFycmF5LCBhbmQgaGFzIGxlbmd0aCA+IDAsIGFuZCwgb3B0aW9uYWxseSBjaGVja3MgdGhhdCB0aGUgZmlyc3QgZWxlbWVudCBpcyBvZiB0eXBlIGdpdmVuIGNsYXp6LlxyXG4gICAgcHVibGljIHN0YXRpYyBJc0FycmF5V2l0aEVsZW1lbnRzPFQ+KGFycmF5VG9DaGVjazogVFtdLCBjbGF6ej86IGFueSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmIChpc05pbGwoYXJyYXlUb0NoZWNrKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShhcnJheVRvQ2hlY2spICYmIGFycmF5VG9DaGVjay5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIGlmIChjbGF6eikge1xyXG4gICAgICAgICAgICAgICAgcmV0dXJuIGFycmF5VG9DaGVja1swXSBpbnN0YW5jZW9mIGNsYXp6O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmVtb3ZlcyBhbGwgZWxlbWVudHMgZnJvbSBnaXZlbiBhcnJheSBmb3Igd2hpY2ggZ2l2ZW4gZmlsdGVyIGZ1bmN0aW9uIGhvbGRzIHRydWUuIFJldHVybnMgdHJ1ZSBpZiBhdCBsZWFzdCBvbmUgcmVtb3ZlZCwgZWxzZSBmYWxzZS5cclxuICAgIHB1YmxpYyBzdGF0aWMgUmVtb3ZlRWxlbWVudHNCeUZpbHRlcihhcnJheTogYW55W10sIGZpbHRlckZ1bmN0aW9uOiAoaXRlbTogYW55KSA9PiBib29sZWFuKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCFBcnJheVV0aWxzLklzQXJyYXlXaXRoRWxlbWVudHMoYXJyYXkpIHx8ICFmaWx0ZXJGdW5jdGlvbikge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsZXQgYXRMZWFzdE9uZVJlbW92ZWQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICAgICAgbGV0IGxlbjogbnVtYmVyID0gYXJyYXkubGVuZ3RoO1xyXG4gICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IGxlbiAtIDE7IGkgPj0gMDsgaS0tKSB7XHJcbiAgICAgICAgICAgIGxldCBpdGVtOiBhbnkgPSBhcnJheVtpXTtcclxuICAgICAgICAgICAgaWYgKGZpbHRlckZ1bmN0aW9uLmNhbGwodGhpcywgaXRlbSkgPT09IHRydWUpIHtcclxuICAgICAgICAgICAgICAgIGFycmF5LnNwbGljZShpLCAxKTtcclxuICAgICAgICAgICAgICAgIGF0TGVhc3RPbmVSZW1vdmVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGF0TGVhc3RPbmVSZW1vdmVkO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFJlcGxhY2VzIHRoZSBlbGVtZW50T3V0IHdpdGggZ2l2ZW4gZWxlbWVudEluLlxyXG4gICAgcHVibGljIHN0YXRpYyBSZXBsYWNlRWxlbWVudDxUPihlbGVtZW50SW46IFQsIGVsZW1lbnRPdXQ6IFQsIGFycmF5OiBUW10pOiB2b2lkIHtcclxuICAgICAgICBpZiAoIWFycmF5IHx8ICFBcnJheS5pc0FycmF5KGFycmF5KSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBpbmRleE91dDogbnVtYmVyID0gYXJyYXkuaW5kZXhPZihlbGVtZW50T3V0KTtcclxuICAgICAgICBpZiAoaW5kZXhPdXQgPiAtMSkge1xyXG4gICAgICAgICAgICBBcnJheVV0aWxzLkluc2VydEVsZW1lbnQoaW5kZXhPdXQsIGVsZW1lbnRJbiwgYXJyYXkpO1xyXG4gICAgICAgICAgICBBcnJheVV0aWxzLlJlbW92ZUVsZW1lbnQoZWxlbWVudE91dCwgYXJyYXkpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBTd2FwcyB0aGUgZWxlbWVudHMgaW4gZ2l2ZW4gYXJyYXkgd2l0aCBlYWNoIG90aGVyLiBSZXR1cm5zIHdoZXRoZXIgYSByZWFsIHN3YXAgd2FzIG1hZGUuIEZyb20gYW5kIFRvIGVsZW1lbnRzIGhhdmUgdG8gZXhpc3QgaW4gYXJyYXkuXHJcbiAgICBwdWJsaWMgc3RhdGljIFN3YXBFbGVtZW50czxUPihlbGVtZW50T25lOiBULCBlbGVtZW50VHdvOiBULCBhcnJheTogVFtdKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGFycmF5KSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBlbE9uZUlkeDogbnVtYmVyID0gYXJyYXkuaW5kZXhPZihlbGVtZW50VHdvKTtcclxuICAgICAgICBjb25zdCBlbFR3b0lkeDogbnVtYmVyID0gYXJyYXkuaW5kZXhPZihlbGVtZW50T25lKTtcclxuICAgICAgICBpZiAoZWxPbmVJZHggPT09IC0xIHx8IGVsVHdvSWR4ID09PSAtMSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBhcnJheVtlbE9uZUlkeF0gPSBhcnJheS5zcGxpY2UoZWxUd29JZHgsIDEsIGFycmF5W2VsT25lSWR4XSlbMF07XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gSW5zZXJ0cyBvciByZW1vdmVzIGdpdmVuIHRvZ2dsZSBlbGVtZW50IGludG8gZ2l2ZW4gZWxlbWVudHMgYXJyYXk7IGluc2VydHMgaWYgbm90IHlldCBleGlzdHMsIGFuZCByZW1vdmVzIGlmIGFscmVhZHkgZXhpc3RzLlxyXG4gICAgcHVibGljIHN0YXRpYyBUb2dnbGVFbGVtZW50PFQ+KHRvZ2dsZTogVCwgZWxlbWVudHM6IFRbXSk6IHZvaWQge1xyXG4gICAgICAgIGVsZW1lbnRzLmluZGV4T2YodG9nZ2xlKSA+IC0xID8gQXJyYXlVdGlscy5SZW1vdmVFbGVtZW50KHRvZ2dsZSwgZWxlbWVudHMpIDogZWxlbWVudHMucHVzaCh0b2dnbGUpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFJldHVybnMgdGhlIG51bWJlciBvZiBlbGVtZW50cyBmcm9tIGdpdmVuIGFycmF5IGZvciB3aGljaCBnaXZlbiB3aGVyZUZ1bmN0aW9uIGhvbGRzIHRydWUuXHJcbiAgICBwdWJsaWMgc3RhdGljIENvdW50V2hlcmU8VD4oYXJyYXk6IFRbXSwgd2hlcmVGdW5jdGlvbjogKGl0ZW06IFQpID0+IGJvb2xlYW4pOiBudW1iZXIge1xyXG4gICAgICAgIGlmICghQXJyYXlVdGlscy5Jc0FycmF5V2l0aEVsZW1lbnRzKGFycmF5KSB8fCAhd2hlcmVGdW5jdGlvbikge1xyXG4gICAgICAgICAgICByZXR1cm4gMDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxldCBjb3VudDogbnVtYmVyID0gMDtcclxuXHJcbiAgICAgICAgY29uc3QgbGVuOiBudW1iZXIgPSBhcnJheS5sZW5ndGg7XHJcbiAgICAgICAgZm9yIChsZXQgaTogbnVtYmVyID0gMDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgICAgICAgICAgIGlmICh3aGVyZUZ1bmN0aW9uLmNhbGwodGhpcywgYXJyYXlbaV0pKSB7XHJcbiAgICAgICAgICAgICAgICBjb3VudCsrO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gY291bnQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZXR1cm5zIHdoZXRoZXIgYXQgbGVhc3Qgb25lIGVsZW1lbnQgaW4gZ2l2ZW4gYXJyYXkgY291bGQgYmUgZm91bmQgYnkgZ2l2ZW4gZmluZGVyIGZ1bmN0aW9uLlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBhcnJheVxyXG4gICAgICogQHBhcmFtIGZpbmRlciBBIGZpbmRlciBmdW5jdGlvbiB0aGF0IHRha2VzIGFuIGVsZW1lbnQgb2YgdGhlIGFycmF5IGFuZCByZXR1cm5zIGEgYm9vbGVhbiB0aGF0IHJlcHJlc2VudHNcclxuICAgICAqIHRoZSAnZm91bmQgc3RhdHVzJyBmb3IgdGhhdCBlbGVtZW50OyB3aGV0aGVyIGl0IHNob3VsZCBoYXZlIGJlZW4gZm91bmQgb3Igbm90LlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIENvbnRhaW5zQW5FbGVtZW50Rm91bmRCeTxUPihhcnJheTogVFtdLCBmaW5kZXI6IChlbGVtZW50OiBUKSA9PiBib29sZWFuKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCFhcnJheSB8fCAhZmluZGVyKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBub3ROaWxsKEFycmF5VXRpbHMuRmluZDxUPihhcnJheSwgZmluZGVyKSk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDcm9zcy1icm93c2VyIEFycmF5LmZpbmQoKSBmdW5jdGlvbi4gUmV0dXJucyB0aGUgZmlyc3QgaXRlbSBpbiBnaXZlbiBhcnJheSBmb3Igd2hpY2ggdGhlIGZvdW5kQnkgZnVuY3Rpb24gcmV0dXJucyB0cnVlLiBSZXR1cm5zXHJcbiAgICAgKiB1bmRlZmluZWQgd2hlbiBub25lIHdhcyBmb3VuZC5cclxuICAgICAqXHJcbiAgICAgKiBFeGFtcGxlIHVzYWdlOlxyXG4gICAgICogbGV0IGZvdW5kSXRlbTogQnVzaW5lc3NPYmplY3QgPSBBcnJheVV0aWxzLkZpbmQ8QnVzaW5lc3NPYmplY3Q+KG1vZGVsQXJyYXksIChtb2RlbEl0ZW06IEJ1c2luZXNzT2JqZWN0KSA9PiA8YnI+XHJcbiAgICAgKiAgICAgKHJldHVybiBtb2RlbEl0ZW0uZ2V0SWQoKSA9PT0gJzEnKVxyXG4gICAgICogICAqIH0pO1xyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBhcnJheSBUaGUgYXJyYXkgd2l0aCBpdGVtcyB0byBzZWFyY2ggaW4uXHJcbiAgICAgKiBAcGFyYW0gZm91bmRCeSBUaGUgZmluZGVyIGZ1bmN0aW9uIGFwcGxpZWQgb24gZWFjaCBpdGVtcyBvZiB0aGUgYXJyYXksIHdoZW4gdGhhdCByZXR1cm5zIHRydWUsIHRoZSBpdGVtIGlzIGNvbnNpZGVyZWQgZm91bmQuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgRmluZDxUPihhcnJheTogVFtdLCBmb3VuZEJ5OiAoaXRlbTogVCkgPT4gYm9vbGVhbik6IFQge1xyXG4gICAgICAgIGlmICghYXJyYXkgfHwgIWZvdW5kQnkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDAsIGxlbjogbnVtYmVyID0gYXJyYXkubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgbGV0IGl0ZW1DdXI6IFQgPSBhcnJheVtpXTtcclxuICAgICAgICAgICAgaWYgKGZvdW5kQnkoaXRlbUN1cikpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBpdGVtQ3VyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBTb3J0cyBhbGwgaXRlbXMgaW4gdGhlIGdpdmVuIGFycmF5IGFscGhhYmV0aWNhbGx5IChBLXRvLVopIGFjY29yZGluZyB0byB0aGUgdmFsdWVzIG9mIHRoZWlyIGdpdmVuIHByb3BlcnR5LlxyXG4gICAgICogQHBhcmFtIHRoZUFycmF5XHJcbiAgICAgKiBAcGFyYW0gcHJvcGVydHlOYW1lID0gdW5kZWZpbmVkXSBXaGVuIG5vdCBkZWZpbmVkLCBhc3N1bWVzIGFuIGFycmF5IG9mIFNUUklOR1MgaXMgZ2l2ZW4sIGluc3RlYWQgb2YgYXJyYXkgb2YgT0JKRUNUUy5cclxuICAgICAqIEBwYXJhbSBbcmV2ZXJzZU9yZGVyID0gZmFsc2VdIFNldCB0byB0cnVlIHRvIHNvcnQgZnJvbSBaLXRvLUEgaW5zdGVhZFxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIFNvcnRBbHBoYWJldGljYWxseTxUPih0aGVBcnJheTogVFtdLCBwcm9wZXJ0eU5hbWU6IHN0cmluZyA9IHVuZGVmaW5lZCwgcmV2ZXJzZU9yZGVyOiBib29sZWFuID0gZmFsc2UpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoZUFycmF5IHx8ICFBcnJheS5pc0FycmF5KHRoZUFycmF5KSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsZXQgc3dpdGNoZXI6IG51bWJlciA9IHJldmVyc2VPcmRlciA/IC0xIDogMTtcclxuICAgICAgICBsZXQgc3RyaW5nU29ydDogYm9vbGVhbiA9IFN0cmluZ1V0aWxzLklzU3RyaW5nV2l0aExlbmd0aChwcm9wZXJ0eU5hbWUpO1xyXG4gICAgICAgIHRoZUFycmF5LnNvcnQoKGl0ZW1PbmU6IFQsIGl0ZW1Ud286IFQpID0+IHtcclxuICAgICAgICAgICAgbGV0IHZhbE9uZTogYW55ID0gc3RyaW5nU29ydCA/IGl0ZW1PbmVbcHJvcGVydHlOYW1lXSA6IGl0ZW1PbmU7XHJcbiAgICAgICAgICAgIGxldCB2YWxUd286IGFueSA9IHN0cmluZ1NvcnQgPyBpdGVtVHdvW3Byb3BlcnR5TmFtZV0gOiBpdGVtVHdvO1xyXG4gICAgICAgICAgICByZXR1cm4gKHZhbE9uZSA+IHZhbFR3byA/IDEgOiAodmFsT25lIDwgdmFsVHdvID8gLTEgOiAwKSkgKiBzd2l0Y2hlcjtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc3RhdGljIFB1c2hJZk5vdEV4aXN0KGl0ZW06IGFueSwgYXJyYXk6IGFueVtdKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCFhcnJheSkge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAoYXJyYXkuaW5kZXhPZihpdGVtKSA9PT0gLTEpIHtcclxuICAgICAgICAgICAgYXJyYXkucHVzaChpdGVtKTtcclxuICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFJlbW92ZXMgZWxlbWVudCBhdCBnaXZlbiBpbmRleCBmcm9tIGdpdmVuIGFycmF5LiBEb2Vzbid0IGp1c3Qgc2V0IGl0IHRvIG51bGwgbGlrZSBKYXZhU2NyaXB0cyBzdGFuZGFyZCAnZGVsZXRlJyBkb2VzLCBidXQgcmVhbGx5XHJcbiAgICAgKiByZW1vdmVzIHRoZSBlbGVtZW50IHVzaW5nIHNwbGljZSgpLlxyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBpbmRleFxyXG4gICAgICogQHBhcmFtIGFycmF5XHJcbiAgICAgKiBAcmV0dXJucyBUcnVlIGlmIGFuZCBvbmx5IGlmIHRoZSBlbGVtZW50IG9uIGdpdmVuIGluZGV4IGlzIHN1Y2Nlc2Z1bGx5IHJlbW92ZWQgZnJvbSBnaXZlbiBhcnJheS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHN0YXRpYyBSZW1vdmVFbGVtZW50QXRJbmRleChpbmRleDogbnVtYmVyLCBhcnJheTogYW55W10pOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoTnVtYmVyVXRpbHMuSXNOYU4oaW5kZXgpIHx8IGluZGV4IDwgMCB8fCAhQXJyYXkuaXNBcnJheShhcnJheSkgfHwgYXJyYXkubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGlmIChpbmRleCBpbiBhcnJheSkge1xyXG4gICAgICAgICAgICBhcnJheS5zcGxpY2UoaW5kZXgsIDEpO1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFJldHVybnMgdHJ1ZSBpZiBhbmQgb25seSBpZiBnaXZlbiBhcnJheSBpbmNsdWRlcyBnaXZlbiBpdGVtLiBDaGVja2VkIGJ5ID09PS5cclxuICAgIHB1YmxpYyBzdGF0aWMgSW5jbHVkZXMoYXJyYXk6IGFueVtdLCBpdGVtOiBhbnkpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShhcnJheSkpIHtcclxuICAgICAgICAgICAgZm9yIChsZXQgaTogbnVtYmVyID0gMCwgbGVuOiBudW1iZXIgPSBhcnJheS5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gICAgICAgICAgICAgICAgaWYgKGFycmF5W2ldID09PSBpdGVtKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
export class BrowserUtils {
|
|
2
|
+
static ScrollToTop(nativeElement, milliSeconds = 200) {
|
|
3
|
+
return BrowserUtils._ScrollTo("scrollTop", nativeElement, milliSeconds, 0);
|
|
4
|
+
}
|
|
5
|
+
static DownloadFile(encodedUri, fileType) {
|
|
6
|
+
const link = document.createElement("a");
|
|
7
|
+
const date = new Date().toDateString();
|
|
8
|
+
link.href = encodedUri;
|
|
9
|
+
link.target = '_blank';
|
|
10
|
+
link.download = "export_" + date + fileType;
|
|
11
|
+
document.body.appendChild(link);
|
|
12
|
+
link.click();
|
|
13
|
+
document.body.removeChild(link);
|
|
14
|
+
}
|
|
15
|
+
static CopyToClipboard(data) {
|
|
16
|
+
const textArea = document.createElement("TEXTAREA");
|
|
17
|
+
const textNode = document.createTextNode(data);
|
|
18
|
+
textArea.appendChild(textNode);
|
|
19
|
+
document.body.appendChild(textArea); // Required for FF
|
|
20
|
+
textArea.select();
|
|
21
|
+
document.execCommand("copy");
|
|
22
|
+
document.body.removeChild(textArea);
|
|
23
|
+
}
|
|
24
|
+
static TabFocusNextElement() {
|
|
25
|
+
const nextTabStop = BrowserUtils._FindNextTabStop(document.activeElement);
|
|
26
|
+
if (nextTabStop) {
|
|
27
|
+
nextTabStop.focus();
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
static AreDimensionsInView(dimensions, view) {
|
|
31
|
+
const vp = BrowserUtils.GetDimensions(view);
|
|
32
|
+
return dimensions.top >= vp.top && dimensions.left >= vp.left && dimensions.bottom <= vp.bottom && dimensions.right <= vp.right;
|
|
33
|
+
}
|
|
34
|
+
static HorizontalFitInView(dimensions, view) {
|
|
35
|
+
const vp = BrowserUtils.GetDimensions(view);
|
|
36
|
+
return dimensions.left >= vp.left && dimensions.right <= vp.right;
|
|
37
|
+
}
|
|
38
|
+
static VerticalFitInView(dimensions, view) {
|
|
39
|
+
const vp = BrowserUtils.GetDimensions(view);
|
|
40
|
+
return dimensions.top >= vp.top && dimensions.bottom <= vp.bottom;
|
|
41
|
+
}
|
|
42
|
+
static GetViewport() {
|
|
43
|
+
let viewPortWidth;
|
|
44
|
+
let viewPortHeight;
|
|
45
|
+
// the more standards compliant browsers (mozilla/netscape/opera/IE7) use window.innerWidth and window.innerHeight
|
|
46
|
+
if (typeof window.innerWidth !== 'undefined') {
|
|
47
|
+
viewPortWidth = window.innerWidth;
|
|
48
|
+
viewPortHeight = window.innerHeight;
|
|
49
|
+
}
|
|
50
|
+
else if (typeof document.documentElement !== 'undefined' &&
|
|
51
|
+
typeof document.documentElement.clientWidth !== 'undefined' &&
|
|
52
|
+
document.documentElement.clientWidth !== 0) {
|
|
53
|
+
viewPortWidth = document.documentElement.clientWidth;
|
|
54
|
+
viewPortHeight = document.documentElement.clientHeight;
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
viewPortWidth = document.getElementsByTagName('body')[0].clientWidth;
|
|
58
|
+
viewPortHeight = document.getElementsByTagName('body')[0].clientHeight;
|
|
59
|
+
}
|
|
60
|
+
return { left: 0, top: 0, right: viewPortWidth, bottom: viewPortHeight };
|
|
61
|
+
}
|
|
62
|
+
static GetDimensions(view) {
|
|
63
|
+
if (!view) {
|
|
64
|
+
return this.GetViewport();
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
const elem = view instanceof HTMLElement ? view : view.nativeElement;
|
|
68
|
+
const cr = elem.getBoundingClientRect();
|
|
69
|
+
return { left: cr.left, top: cr.top, right: cr.right, bottom: cr.bottom };
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
// Recursive.
|
|
73
|
+
static _ScrollTo(elementScrollProp, element, milliSeconds, toScrollEnd) {
|
|
74
|
+
if (!element || milliSeconds <= 0) {
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
const difference = toScrollEnd - element[elementScrollProp];
|
|
78
|
+
const scrollPerTick = difference / milliSeconds * 10;
|
|
79
|
+
setTimeout(() => {
|
|
80
|
+
element[elementScrollProp] = element[elementScrollProp] + scrollPerTick;
|
|
81
|
+
if (element[elementScrollProp] === toScrollEnd) {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
BrowserUtils._ScrollTo(elementScrollProp, element, milliSeconds - 10, toScrollEnd);
|
|
85
|
+
}, 10);
|
|
86
|
+
}
|
|
87
|
+
static _FindNextTabStop(element) {
|
|
88
|
+
const tabStopElements = document.querySelectorAll('a[href], area[href], input:not(.hidden):not(.disabled):not(.readonly):not(.read-only), select:not(.hidden):not(.disabled):not(.readonly):not(.read-only), textarea:not(.hidden):not(.disabled):not(.readonly):not(.read-only), button:not(.hidden):not(.disabled):not(.readonly):not(.read-only), iframe, object, embed, *[tabindex]:not(.hidden):not(.disabled):not(.readonly):not(.read-only), *[contenteditable]:not(.hidden):not(.disabled):not(.readonly):not(.read-only)');
|
|
89
|
+
const actualStopEls = [];
|
|
90
|
+
for (let i = 0, len = tabStopElements.length; i < len; i++) {
|
|
91
|
+
const tabEl = tabStopElements[i];
|
|
92
|
+
if (tabEl.tabIndex >= 0) {
|
|
93
|
+
actualStopEls.push(tabEl);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
const elIdx = actualStopEls.indexOf(element);
|
|
97
|
+
return actualStopEls[elIdx + 1] || undefined;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJvd3Nlci11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9saWIvY29yZS91dGlscy9icm93c2VyLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyxZQUFZO0lBQ2QsTUFBTSxDQUFDLFdBQVcsQ0FBQyxhQUFrQixFQUFFLGVBQXVCLEdBQUc7UUFDcEUsT0FBTyxZQUFZLENBQUMsU0FBUyxDQUFDLFdBQVcsRUFBRSxhQUFhLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQy9FLENBQUM7SUFFTSxNQUFNLENBQUMsWUFBWSxDQUFDLFVBQWtCLEVBQUUsUUFBZ0I7UUFDM0QsTUFBTSxJQUFJLEdBQXNCLFFBQVEsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDNUQsTUFBTSxJQUFJLEdBQVcsSUFBSSxJQUFJLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUUvQyxJQUFJLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQztRQUN2QixJQUFJLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQztRQUN2QixJQUFJLENBQUMsUUFBUSxHQUFHLFNBQVMsR0FBRyxJQUFJLEdBQUcsUUFBUSxDQUFDO1FBRTVDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNiLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFTSxNQUFNLENBQUMsZUFBZSxDQUFDLElBQVk7UUFFdEMsTUFBTSxRQUFRLEdBQVEsUUFBUSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUN6RCxNQUFNLFFBQVEsR0FBUSxRQUFRLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRXBELFFB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SUFDWCxDQUFDO0lBRU8sTUFBTSxDQUFDLGdCQUFnQixDQUFDLE9BQWdCO1FBQzVDLE1BQU0sZUFBZSxHQUF3QixRQUFRLENBQUMsZ0JBQWdCLENBQ2xFLGdkQUFnZCxDQUNuZCxDQUFDO1FBQ0YsTUFBTSxhQUFhLEdBQWMsRUFBRSxDQUFDO1FBQ3BDLEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLEdBQUcsR0FBVyxlQUFlLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDeEUsTUFBTSxLQUFLLEdBQVEsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3RDLElBQUksS0FBSyxDQUFDLFFBQVEsSUFBSSxDQUFDLEVBQUU7Z0JBQ3JCLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7YUFDN0I7U0FDSjtRQUNELE1BQU0sS0FBSyxHQUFXLGFBQWEsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDckQsT0FBTyxhQUFhLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxJQUFJLFNBQVMsQ0FBQztJQUNqRCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEVsZW1lbnRQb3NpdGlvbiB9IGZyb20gJy4uL21vZGVsL2VsZW1lbnQtcG9zaXRpb24nO1xyXG5cclxuZXhwb3J0IGNsYXNzIEJyb3dzZXJVdGlscyB7XHJcbiAgICBwdWJsaWMgc3RhdGljIFNjcm9sbFRvVG9wKG5hdGl2ZUVsZW1lbnQ6IGFueSwgbWlsbGlTZWNvbmRzOiBudW1iZXIgPSAyMDApOiB2b2lkIHtcclxuICAgICAgICByZXR1cm4gQnJvd3NlclV0aWxzLl9TY3JvbGxUbyhcInNjcm9sbFRvcFwiLCBuYXRpdmVFbGVtZW50LCBtaWxsaVNlY29uZHMsIDApO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgRG93bmxvYWRGaWxlKGVuY29kZWRVcmk6IHN0cmluZywgZmlsZVR5cGU6IHN0cmluZyk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGxpbms6IEhUTUxBbmNob3JFbGVtZW50ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudChcImFcIik7XHJcbiAgICAgICAgY29uc3QgZGF0ZTogc3RyaW5nID0gbmV3IERhdGUoKS50b0RhdGVTdHJpbmcoKTtcclxuXHJcbiAgICAgICAgbGluay5ocmVmID0gZW5jb2RlZFVyaTtcclxuICAgICAgICBsaW5rLnRhcmdldCA9ICdfYmxhbmsnO1xyXG4gICAgICAgIGxpbmsuZG93bmxvYWQgPSBcImV4cG9ydF9cIiArIGRhdGUgKyBmaWxlVHlwZTtcclxuXHJcbiAgICAgICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTtcclxuICAgICAgICBsaW5rLmNsaWNrKCk7XHJcbiAgICAgICAgZG9jdW1lbnQuYm9keS5yZW1vdmVDaGlsZChsaW5rKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc3RhdGljIENvcHlUb0NsaXBib2FyZChkYXRhOiBzdHJpbmcpOiB2b2lkIHtcclxuXHJcbiAgICAgICAgY29uc3QgdGV4dEFyZWE6IGFueSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJURVhUQVJFQVwiKTtcclxuICAgICAgICBjb25zdCB0ZXh0Tm9kZTogYW55ID0gZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUoZGF0YSk7XHJcblxyXG4gICAgICAgIHRleHRBcmVhLmFwcGVuZENoaWxkKHRleHROb2RlKTtcclxuICAgICAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKHRleHRBcmVhKTsgLy8gUmVxdWlyZWQgZm9yIEZGXHJcbiAgICAgICAgdGV4dEFyZWEuc2VsZWN0KCk7XHJcbiAgICAgICAgZG9jdW1lbnQuZXhlY0NvbW1hbmQoXCJjb3B5XCIpO1xyXG4gICAgICAgIGRvY3VtZW50LmJvZHkucmVtb3ZlQ2hpbGQodGV4dEFyZWEpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgVGFiRm9jdXNOZXh0RWxlbWVudCgpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBuZXh0VGFiU3RvcDogYW55ID0gQnJvd3NlclV0aWxzLl9GaW5kTmV4dFRhYlN0b3AoZG9jdW1lbnQuYWN0aXZlRWxlbWVudCk7XHJcbiAgICAgICAgaWYgKG5leHRUYWJTdG9wKSB7XHJcbiAgICAgICAgICAgIG5leHRUYWJTdG9wLmZvY3VzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgQXJlRGltZW5zaW9uc0luVmlldyhkaW1lbnNpb25zOiBFbGVtZW50UG9zaXRpb24sIHZpZXc/OiBFbGVtZW50UmVmKTogYm9vbGVhbiB7XHJcbiAgICAgICAgY29uc3QgdnA6IEVsZW1lbnRQb3NpdGlvbiA9IEJyb3dzZXJVdGlscy5HZXREaW1lbnNpb25zKHZpZXcpO1xyXG5cclxuICAgICAgICByZXR1cm4gZGltZW5zaW9ucy50b3AgPj0gdnAudG9wICYmIGRpbWVuc2lvbnMubGVmdCA+PSB2cC5sZWZ0ICYmIGRpbWVuc2lvbnMuYm90dG9tIDw9IHZwLmJvdHRvbSAmJiBkaW1lbnNpb25zLnJpZ2h0IDw9IHZwLnJpZ2h0O1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgSG9yaXpvbnRhbEZpdEluVmlldyhkaW1lbnNpb25zOiBFbGVtZW50UG9zaXRpb24sIHZpZXc/OiBFbGVtZW50UmVmKTogYm9vbGVhbiB7XHJcbiAgICAgICAgY29uc3QgdnA6IEVsZW1lbnRQb3NpdGlvbiA9IEJyb3dzZXJVdGlscy5HZXREaW1lbnNpb25zKHZpZXcpO1xyXG5cclxuICAgICAgICByZXR1cm4gZGltZW5zaW9ucy5sZWZ0ID49IHZwLmxlZnQgJiYgZGltZW5zaW9ucy5yaWdodCA8PSB2cC5yaWdodDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc3RhdGljIFZlcnRpY2FsRml0SW5WaWV3KGRpbWVuc2lvbnM6IEVsZW1lbnRQb3NpdGlvbiwgdmlldz86IEVsZW1lbnRSZWYpOiBib29sZWFuIHtcclxuICAgICAgICBjb25zdCB2cDogRWxlbWVudFBvc2l0aW9uID0gQnJvd3NlclV0aWxzLkdldERpbWVuc2lvbnModmlldyk7XHJcblxyXG4gICAgICAgIHJldHVybiBkaW1lbnNpb25zLnRvcCA+PSB2cC50b3AgJiYgZGltZW5zaW9ucy5ib3R0b20gPD0gdnAuYm90dG9tO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgR2V0Vmlld3BvcnQoKTogRWxlbWVudFBvc2l0aW9uIHtcclxuXHJcbiAgICAgICAgbGV0IHZpZXdQb3J0V2lkdGg6IG51bWJlcjtcclxuICAgICAgICBsZXQgdmlld1BvcnRIZWlnaHQ6IG51bWJlcjtcclxuXHJcbiAgICAgICAgLy8gdGhlIG1vcmUgc3RhbmRhcmRzIGNvbXBsaWFudCBicm93c2VycyAobW96aWxsYS9uZXRzY2FwZS9vcGVyYS9JRTcpIHVzZSB3aW5kb3cuaW5uZXJXaWR0aCBhbmQgd2luZG93LmlubmVySGVpZ2h0XHJcbiAgICAgICAgaWYgKHR5cGVvZiB3aW5kb3cuaW5uZXJXaWR0aCAhPT0gJ3VuZGVmaW5lZCcpIHtcclxuICAgICAgICAgICAgdmlld1BvcnRXaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoO1xyXG4gICAgICAgICAgICB2aWV3UG9ydEhlaWdodCA9IHdpbmRvdy5pbm5lckhlaWdodDtcclxuICAgICAgICB9IGVsc2UgaWYgKHR5cGVvZiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQgIT09ICd1bmRlZmluZWQnICYmXHJcbiAgICAgICAgICAgIHR5cGVvZiBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50V2lkdGggIT09ICd1bmRlZmluZWQnICYmXHJcbiAgICAgICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRXaWR0aCAhPT0gMCkge1xyXG4gICAgICAgICAgICB2aWV3UG9ydFdpZHRoID0gZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudFdpZHRoO1xyXG4gICAgICAgICAgICB2aWV3UG9ydEhlaWdodCA9IGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5jbGllbnRIZWlnaHQ7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdmlld1BvcnRXaWR0aCA9IGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCdib2R5JylbMF0uY2xpZW50V2lkdGg7XHJcbiAgICAgICAgICAgIHZpZXdQb3J0SGVpZ2h0ID0gZG9jdW1lbnQuZ2V0RWxlbWVudHNCeVRhZ05hbWUoJ2JvZHknKVswXS5jbGllbnRIZWlnaHQ7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4ge2xlZnQ6IDAsIHRvcDogMCwgcmlnaHQ6IHZpZXdQb3J0V2lkdGgsIGJvdHRvbTogdmlld1BvcnRIZWlnaHR9O1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgR2V0RGltZW5zaW9ucyh2aWV3PzogRWxlbWVudFJlZik6IEVsZW1lbnRQb3NpdGlvbiB7XHJcbiAgICAgICAgaWYgKCF2aWV3KSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLkdldFZpZXdwb3J0KCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3QgZWxlbTogSFRNTEVsZW1lbnQgPSB2aWV3IGluc3RhbmNlb2YgSFRNTEVsZW1lbnQgPyB2aWV3IDogdmlldy5uYXRpdmVFbGVtZW50O1xyXG4gICAgICAgICAgICBjb25zdCBjcjogQ2xpZW50UmVjdCA9IGVsZW0uZ2V0Qm91bmRpbmdDbGllbnRSZWN0KCk7XHJcbiAgICAgICAgICAgIHJldHVybiB7bGVmdDogY3IubGVmdCwgdG9wOiBjci50b3AsIHJpZ2h0OiBjci5yaWdodCwgYm90dG9tOiBjci5ib3R0b219O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBSZWN1cnNpdmUuXHJcbiAgICBwcml2YXRlIHN0YXRpYyBfU2Nyb2xsVG8oZWxlbWVudFNjcm9sbFByb3A6IHN0cmluZywgZWxlbWVudDogYW55LCBtaWxsaVNlY29uZHM6IG51bWJlciwgdG9TY3JvbGxFbmQ6IG51bWJlcik6IHZvaWQge1xyXG4gICAgICAgIGlmICghZWxlbWVudCB8fCBtaWxsaVNlY29uZHMgPD0gMCkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBjb25zdCBkaWZmZXJlbmNlOiBudW1iZXIgPSB0b1Njcm9sbEVuZCAtIGVsZW1lbnRbZWxlbWVudFNjcm9sbFByb3BdO1xyXG4gICAgICAgIGNvbnN0IHNjcm9sbFBlclRpY2s6IG51bWJlciA9IGRpZmZlcmVuY2UgLyBtaWxsaVNlY29uZHMgKiAxMDtcclxuXHJcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgIGVsZW1lbnRbZWxlbWVudFNjcm9sbFByb3BdID0gZWxlbWVudFtlbGVtZW50U2Nyb2xsUHJvcF0gKyBzY3JvbGxQZXJUaWNrO1xyXG4gICAgICAgICAgICBpZiAoZWxlbWVudFtlbGVtZW50U2Nyb2xsUHJvcF0gPT09IHRvU2Nyb2xsRW5kKSB7XHJcbiAgICAgICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgQnJvd3NlclV0aWxzLl9TY3JvbGxUbyhlbGVtZW50U2Nyb2xsUHJvcCwgZWxlbWVudCwgbWlsbGlTZWNvbmRzIC0gMTAsIHRvU2Nyb2xsRW5kKTtcclxuICAgICAgICB9LCAxMCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBzdGF0aWMgX0ZpbmROZXh0VGFiU3RvcChlbGVtZW50OiBFbGVtZW50KTogRWxlbWVudCB7XHJcbiAgICAgICAgY29uc3QgdGFiU3RvcEVsZW1lbnRzOiBOb2RlTGlzdE9mPEVsZW1lbnQ+ID0gZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbChcclxuICAgICAgICAgICAgJ2FbaHJlZl0sIGFyZWFbaHJlZl0sIGlucHV0Om5vdCguaGlkZGVuKTpub3QoLmRpc2FibGVkKTpub3QoLnJlYWRvbmx5KTpub3QoLnJlYWQtb25seSksIHNlbGVjdDpub3QoLmhpZGRlbik6bm90KC5kaXNhYmxlZCk6bm90KC5yZWFkb25seSk6bm90KC5yZWFkLW9ubHkpLCB0ZXh0YXJlYTpub3QoLmhpZGRlbik6bm90KC5kaXNhYmxlZCk6bm90KC5yZWFkb25seSk6bm90KC5yZWFkLW9ubHkpLCBidXR0b246bm90KC5oaWRkZW4pOm5vdCguZGlzYWJsZWQpOm5vdCgucmVhZG9ubHkpOm5vdCgucmVhZC1vbmx5KSwgaWZyYW1lLCBvYmplY3QsIGVtYmVkLCAqW3RhYmluZGV4XTpub3QoLmhpZGRlbik6bm90KC5kaXNhYmxlZCk6bm90KC5yZWFkb25seSk6bm90KC5yZWFkLW9ubHkpLCAqW2NvbnRlbnRlZGl0YWJsZV06bm90KC5oaWRkZW4pOm5vdCguZGlzYWJsZWQpOm5vdCgucmVhZG9ubHkpOm5vdCgucmVhZC1vbmx5KSdcclxuICAgICAgICApO1xyXG4gICAgICAgIGNvbnN0IGFjdHVhbFN0b3BFbHM6IEVsZW1lbnRbXSA9IFtdO1xyXG4gICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDAsIGxlbjogbnVtYmVyID0gdGFiU3RvcEVsZW1lbnRzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHRhYkVsOiBhbnkgPSB0YWJTdG9wRWxlbWVudHNbaV07XHJcbiAgICAgICAgICAgIGlmICh0YWJFbC50YWJJbmRleCA+PSAwKSB7XHJcbiAgICAgICAgICAgICAgICBhY3R1YWxTdG9wRWxzLnB1c2godGFiRWwpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnN0IGVsSWR4OiBudW1iZXIgPSBhY3R1YWxTdG9wRWxzLmluZGV4T2YoZWxlbWVudCk7XHJcbiAgICAgICAgcmV0dXJuIGFjdHVhbFN0b3BFbHNbZWxJZHggKyAxXSB8fCB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbn1cclxuIl19
|