@colijnit/corecomponents_v12 12.0.13 → 12.0.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/colijnit-corecomponents_v12.umd.js +7619 -0
- package/bundles/colijnit-corecomponents_v12.umd.js.map +1 -0
- package/colijnit-corecomponents_v12.d.ts +26 -0
- package/colijnit-corecomponents_v12.metadata.json +1 -0
- package/esm2015/colijnit-corecomponents_v12.js +27 -0
- package/esm2015/lib/components/article-tile/article-tile.component.js +80 -0
- package/esm2015/lib/components/article-tile/article-tile.module.js +35 -0
- package/esm2015/lib/components/base/base-input.component.js +571 -0
- package/esm2015/lib/components/base/base.module.js +22 -0
- package/esm2015/lib/components/base/component-interface-name.js +4 -0
- package/esm2015/lib/components/base/configuration-adapter-component.interface.js +2 -0
- package/esm2015/lib/components/button/button.component.js +70 -0
- package/esm2015/lib/components/button/button.module.js +19 -0
- package/esm2015/lib/components/button-drop-down/button-drop-down.component.js +47 -0
- package/esm2015/lib/components/button-drop-down/button-drop-down.module.js +21 -0
- package/esm2015/lib/components/co-dialog/co-dialog.component.js +67 -0
- package/esm2015/lib/components/co-dialog/co-dialog.module.js +19 -0
- package/esm2015/lib/components/co-dialog-prompt/co-dialog-prompt.component.js +60 -0
- package/esm2015/lib/components/co-dialog-prompt/co-dialog-prompt.module.js +16 -0
- package/esm2015/lib/components/co-kanban/co-kanban.component.js +107 -0
- package/esm2015/lib/components/co-kanban/co-kanban.module.js +21 -0
- package/esm2015/lib/components/co-rich-text-editor/co-rich-text-editor.component.js +53 -0
- package/esm2015/lib/components/co-rich-text-editor/co-rich-text-editor.module.js +21 -0
- package/esm2015/lib/components/co-schedule/co-schedule.component.js +64 -0
- package/esm2015/lib/components/co-schedule/co-schedule.module.js +21 -0
- package/esm2015/lib/components/co-sidebar/co-sidebar.component.js +39 -0
- package/esm2015/lib/components/co-sidebar/co-sidebar.module.js +15 -0
- package/esm2015/lib/components/co-toggle/co-toggle.component.js +35 -0
- package/esm2015/lib/components/co-toggle/co-toggle.module.js +21 -0
- package/esm2015/lib/components/collapsible/collapsible.component.js +58 -0
- package/esm2015/lib/components/collapsible/collapsible.module.js +17 -0
- package/esm2015/lib/components/drop-down-list/drop-down-list.component.js +61 -0
- package/esm2015/lib/components/drop-down-list/drop-down.module.js +20 -0
- package/esm2015/lib/components/form/form.component.js +198 -0
- package/esm2015/lib/components/form/form.module.js +23 -0
- package/esm2015/lib/components/grid/base/base-grid.component.js +77 -0
- package/esm2015/lib/components/grid/base/base-inline-edit-grid.component.js +41 -0
- package/esm2015/lib/components/grid/base/base-selection-grid.component.js +83 -0
- package/esm2015/lib/components/grid/base/base-toolbar-grid.component.js +79 -0
- package/esm2015/lib/components/grid/co-grid.component.js +57 -0
- package/esm2015/lib/components/grid/co-grid.module.js +36 -0
- package/esm2015/lib/components/grid/enum/grid-lines.enum.js +9 -0
- package/esm2015/lib/components/grid/interface/grid-menu-event-args.js +2 -0
- package/esm2015/lib/components/grid/interface/grid-row-drag-event-args.js +2 -0
- package/esm2015/lib/components/grid/interface/grid-row-drop-event-args.js +2 -0
- package/esm2015/lib/components/icon/icon-cache.service.js +52 -0
- package/esm2015/lib/components/icon/icon.component.js +28 -0
- package/esm2015/lib/components/icon/icon.module.js +25 -0
- package/esm2015/lib/components/image/image.component.js +20 -0
- package/esm2015/lib/components/image/image.module.js +13 -0
- package/esm2015/lib/components/input-checkbox/input-checkbox.component.js +58 -0
- package/esm2015/lib/components/input-checkbox/input-checkbox.module.js +23 -0
- package/esm2015/lib/components/input-checkbox-multi-select/input-checkbox-multi-select.component.js +68 -0
- package/esm2015/lib/components/input-checkbox-multi-select/input-checkbox-multi-select.module.js +25 -0
- package/esm2015/lib/components/input-combo-box/input-combo-box.component.js +77 -0
- package/esm2015/lib/components/input-combo-box/input-combo-box.module.js +25 -0
- package/esm2015/lib/components/input-date-picker/input-date-picker.component.js +95 -0
- package/esm2015/lib/components/input-date-picker/input-date-picker.module.js +28 -0
- package/esm2015/lib/components/input-listbox/input-listbox.component.js +66 -0
- package/esm2015/lib/components/input-listbox/input-listbox.module.js +25 -0
- package/esm2015/lib/components/input-number-picker/input-number-picker.component.js +284 -0
- package/esm2015/lib/components/input-number-picker/input-number-picker.module.js +21 -0
- package/esm2015/lib/components/input-radio-button/input-radio-button.component.js +52 -0
- package/esm2015/lib/components/input-radio-button/input-radio-button.module.js +22 -0
- package/esm2015/lib/components/input-text/input-text.component.js +126 -0
- package/esm2015/lib/components/input-text/input-text.module.js +29 -0
- package/esm2015/lib/components/level-indicator/level-indicator-level.enum.js +7 -0
- package/esm2015/lib/components/level-indicator/level-indicator.component.js +34 -0
- package/esm2015/lib/components/level-indicator/level-indicator.module.js +15 -0
- package/esm2015/lib/components/multi-select-list/multi-select-list.component.js +69 -0
- package/esm2015/lib/components/multi-select-list/multi-select-list.module.js +19 -0
- package/esm2015/lib/components/pivot/co-pivot.component.js +171 -0
- package/esm2015/lib/components/pivot/co-pivot.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 +87 -0
- package/esm2015/lib/components/popup/service/prompt.service.js +124 -0
- package/esm2015/lib/components/popup/text-input-popup.component.js +36 -0
- package/esm2015/lib/components/simple-grid/simple-grid-column.directive.js +36 -0
- package/esm2015/lib/components/simple-grid/simple-grid.component.js +112 -0
- package/esm2015/lib/components/simple-grid/simple-grid.module.js +24 -0
- package/esm2015/lib/components/tile/tile.component.js +71 -0
- package/esm2015/lib/components/tile/tile.module.js +23 -0
- package/esm2015/lib/core/constant/default-upper-bound-for-range-components.js +3 -0
- package/esm2015/lib/core/constant/java-max-int.js +2 -0
- package/esm2015/lib/core/constant/number-inputs-key-down-white-list.js +44 -0
- package/esm2015/lib/core/decorator/input-boolean.decorator.js +34 -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/core-components-icon.enum.js +58 -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/float-label-type.enum.js +7 -0
- package/esm2015/lib/core/enum/input-number-picker-show-mode.enum.js +8 -0
- package/esm2015/lib/core/enum/input-text-type.enum.js +6 -0
- package/esm2015/lib/core/enum/keyboard-code.enum.js +74 -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/schedule-view.enum.js +16 -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 +56 -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/model/numerical-range.js +14 -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/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/max-string-length.validator.js +10 -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/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/stopclick/stop-click.directive.js +38 -0
- package/esm2015/lib/directives/stopclick/stop-click.module.js +15 -0
- package/esm2015/lib/pipes/append.pipe.js +17 -0
- package/esm2015/lib/pipes/append.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/public-api.js +72 -0
- package/fesm2015/colijnit-corecomponents_v12.js +6985 -0
- package/fesm2015/colijnit-corecomponents_v12.js.map +1 -0
- package/lib/components/article-tile/article-tile.component.d.ts +22 -0
- package/{src/lib → lib}/components/article-tile/article-tile.component.scss +0 -0
- package/lib/components/article-tile/article-tile.module.d.ts +2 -0
- package/lib/components/base/base-input.component.d.ts +146 -0
- package/lib/components/base/base.module.d.ts +2 -0
- package/lib/components/base/component-interface-name.d.ts +3 -0
- package/{src/lib/components/base/configuration-adapter-component.interface.ts → lib/components/base/configuration-adapter-component.interface.d.ts} +0 -0
- package/lib/components/button/button.component.d.ts +20 -0
- package/lib/components/button/button.module.d.ts +2 -0
- package/lib/components/button/style/_co-ripple.scss +69 -0
- package/lib/components/button/style/_layout.scss +64 -0
- package/lib/components/button/style/_material-definition.scss +9 -0
- package/lib/components/button/style/_theme.scss +81 -0
- package/lib/components/button/style/material.scss +22 -0
- package/lib/components/button-drop-down/button-drop-down.component.d.ts +16 -0
- package/lib/components/button-drop-down/button-drop-down.module.d.ts +2 -0
- package/lib/components/button-drop-down/style/_layout.scss +7 -0
- package/{src/lib/components/co-dialog-prompt/co-dialog-prompt.component.scss → lib/components/button-drop-down/style/_material-definition.scss} +0 -0
- package/lib/components/button-drop-down/style/_theme.scss +5 -0
- package/lib/components/button-drop-down/style/material.scss +4 -0
- package/{src/lib → lib}/components/card/card.scss +3 -1
- package/lib/components/co-dialog/co-dialog.component.d.ts +12 -0
- package/lib/components/co-dialog/co-dialog.module.d.ts +2 -0
- package/lib/components/co-dialog/style/_layout.scss +47 -0
- package/lib/components/co-dialog/style/_material-definition.scss +23 -0
- package/lib/components/co-dialog/style/_theme.scss +27 -0
- package/lib/components/co-dialog/style/material.scss +4 -0
- package/lib/components/co-dialog-prompt/co-dialog-prompt.component.d.ts +19 -0
- package/{src/lib/components/co-dialog/co-dialog.component.scss → lib/components/co-dialog-prompt/co-dialog-prompt.component.scss} +0 -0
- package/lib/components/co-dialog-prompt/co-dialog-prompt.module.d.ts +2 -0
- package/lib/components/co-kanban/co-kanban.component.d.ts +28 -0
- package/lib/components/co-kanban/co-kanban.module.d.ts +2 -0
- package/lib/components/co-kanban/style/_layout.scss +51 -0
- package/lib/components/co-kanban/style/_material-definition.scss +25 -0
- package/lib/components/co-kanban/style/_theme.scss +7 -0
- package/lib/components/co-kanban/style/material.scss +13 -0
- package/lib/components/co-rich-text-editor/co-rich-text-editor.component.d.ts +13 -0
- package/lib/components/co-rich-text-editor/co-rich-text-editor.module.d.ts +2 -0
- package/lib/components/co-rich-text-editor/style/_layout.scss +5 -0
- package/lib/components/co-rich-text-editor/style/_material-definition.scss +9 -0
- package/lib/components/co-rich-text-editor/style/_theme.scss +5 -0
- package/lib/components/co-rich-text-editor/style/material.scss +4 -0
- package/lib/components/co-schedule/co-schedule.component.d.ts +18 -0
- package/{src/lib → lib}/components/co-schedule/co-schedule.component.scss +0 -0
- package/lib/components/co-schedule/co-schedule.module.d.ts +2 -0
- package/lib/components/co-sidebar/co-sidebar.component.d.ts +10 -0
- package/{src/lib → lib}/components/co-sidebar/co-sidebar.component.scss +0 -0
- package/lib/components/co-sidebar/co-sidebar.module.d.ts +2 -0
- package/lib/components/co-toggle/co-toggle.component.d.ts +9 -0
- package/lib/components/co-toggle/co-toggle.component.scss +1 -0
- package/lib/components/co-toggle/co-toggle.module.d.ts +2 -0
- package/lib/components/collapsible/collapsible.component.d.ts +16 -0
- package/lib/components/collapsible/collapsible.module.d.ts +2 -0
- package/lib/components/collapsible/style/_layout.scss +53 -0
- package/lib/components/collapsible/style/_material-definition.scss +9 -0
- package/lib/components/collapsible/style/_theme.scss +9 -0
- package/lib/components/collapsible/style/material.scss +4 -0
- package/lib/components/drop-down-list/drop-down-list.component.d.ts +16 -0
- package/{src/lib → lib}/components/drop-down-list/drop-down-list.component.scss +0 -0
- package/lib/components/drop-down-list/drop-down.module.d.ts +2 -0
- package/lib/components/drop-down-list/style/_layout.scss +7 -0
- package/{src/lib/components/co-rich-text-editor/co-rich-text-editor.component.scss → lib/components/drop-down-list/style/_material-definition.scss} +0 -0
- package/lib/components/drop-down-list/style/_theme.scss +5 -0
- package/lib/components/drop-down-list/style/material.scss +4 -0
- package/lib/components/form/form.component.d.ts +40 -0
- package/lib/components/form/form.module.d.ts +2 -0
- package/lib/components/grid/base/base-grid.component.d.ts +24 -0
- package/lib/components/grid/base/base-inline-edit-grid.component.d.ts +9 -0
- package/lib/components/grid/base/base-selection-grid.component.d.ts +27 -0
- package/lib/components/grid/base/base-toolbar-grid.component.d.ts +17 -0
- package/lib/components/grid/co-grid.component.d.ts +6 -0
- package/lib/components/grid/co-grid.module.d.ts +2 -0
- package/{src/lib/components/grid/enum/grid-lines.enum.ts → lib/components/grid/enum/grid-lines.enum.d.ts} +2 -2
- package/lib/components/grid/interface/grid-menu-event-args.d.ts +3 -0
- package/lib/components/grid/interface/grid-row-drag-event-args.d.ts +3 -0
- package/lib/components/grid/interface/grid-row-drop-event-args.d.ts +3 -0
- package/lib/components/grid/style/_layout.scss +38 -0
- package/lib/components/grid/style/_material-definition.scss +17 -0
- package/lib/components/grid/style/_theme.scss +5 -0
- package/lib/components/grid/style/material.scss +4 -0
- package/lib/components/icon/icon-cache.service.d.ts +20 -0
- package/lib/components/icon/icon.component.d.ts +10 -0
- package/lib/components/icon/icon.module.d.ts +2 -0
- package/{src/lib → lib}/components/icon/icon.scss +3 -2
- package/lib/components/image/image.component.d.ts +4 -0
- package/lib/components/image/image.module.d.ts +2 -0
- package/lib/components/input-checkbox/input-checkbox.component.d.ts +16 -0
- package/lib/components/input-checkbox/input-checkbox.module.d.ts +2 -0
- package/lib/components/input-checkbox/style/_layout.scss +5 -0
- package/lib/components/input-checkbox/style/_material-definition.scss +2 -0
- package/lib/components/input-checkbox/style/_theme.scss +5 -0
- package/lib/components/input-checkbox/style/material.scss +4 -0
- package/lib/components/input-checkbox-multi-select/input-checkbox-multi-select.component.d.ts +22 -0
- package/lib/components/input-checkbox-multi-select/input-checkbox-multi-select.module.d.ts +2 -0
- package/lib/components/input-checkbox-multi-select/style/_layout.scss +5 -0
- package/lib/components/input-checkbox-multi-select/style/_material-definition.scss +7 -0
- package/lib/components/input-checkbox-multi-select/style/_theme.scss +5 -0
- package/lib/components/input-checkbox-multi-select/style/material.scss +4 -0
- package/lib/components/input-combo-box/input-combo-box.component.d.ts +25 -0
- package/lib/components/input-combo-box/input-combo-box.module.d.ts +2 -0
- package/lib/components/input-combo-box/style/_layout.scss +5 -0
- package/lib/components/input-combo-box/style/_material-definition.scss +7 -0
- package/lib/components/input-combo-box/style/_theme.scss +5 -0
- package/lib/components/input-combo-box/style/material.scss +4 -0
- package/lib/components/input-date-picker/input-date-picker.component.d.ts +30 -0
- package/lib/components/input-date-picker/input-date-picker.module.d.ts +2 -0
- package/lib/components/input-date-picker/style/_layout.scss +5 -0
- package/lib/components/input-date-picker/style/_material-definition.scss +8 -0
- package/lib/components/input-date-picker/style/_theme.scss +5 -0
- package/lib/components/input-date-picker/style/material.scss +4 -0
- package/lib/components/input-listbox/input-listbox.component.d.ts +14 -0
- package/lib/components/input-listbox/input-listbox.module.d.ts +2 -0
- package/lib/components/input-listbox/style/_layout.scss +22 -0
- package/lib/components/input-listbox/style/_material-definition.scss +10 -0
- package/lib/components/input-listbox/style/_theme.scss +14 -0
- package/lib/components/input-listbox/style/material.scss +4 -0
- package/lib/components/input-number-picker/input-number-picker.component.d.ts +65 -0
- package/lib/components/input-number-picker/input-number-picker.module.d.ts +2 -0
- package/lib/components/input-number-picker/style/_layout.scss +43 -0
- package/lib/components/input-number-picker/style/_material-definition.scss +17 -0
- package/lib/components/input-number-picker/style/_theme.scss +22 -0
- package/lib/components/input-number-picker/style/material.scss +4 -0
- package/lib/components/input-radio-button/input-radio-button.component.d.ts +15 -0
- package/lib/components/input-radio-button/input-radio-button.module.d.ts +2 -0
- package/lib/components/input-radio-button/style/_layout.scss +28 -0
- package/lib/components/input-radio-button/style/_material-definition.scss +9 -0
- package/lib/components/input-radio-button/style/_theme.scss +11 -0
- package/lib/components/input-radio-button/style/material.scss +4 -0
- package/lib/components/input-search/style/_layout.scss +42 -0
- package/lib/components/input-search/style/_material-definition.scss +6 -0
- package/lib/components/input-search/style/_theme.scss +10 -0
- package/lib/components/input-search/style/material.scss +4 -0
- package/lib/components/input-text/input-text.component.d.ts +47 -0
- package/lib/components/input-text/input-text.module.d.ts +2 -0
- package/lib/components/input-text/style/_layout.scss +5 -0
- package/lib/components/input-text/style/_material-definition.scss +3 -0
- package/lib/components/input-text/style/_theme.scss +5 -0
- package/lib/components/input-text/style/material.scss +4 -0
- package/{src/lib/components/level-indicator/level-indicator-level.enum.ts → lib/components/level-indicator/level-indicator-level.enum.d.ts} +2 -2
- package/lib/components/level-indicator/level-indicator.component.d.ts +9 -0
- package/lib/components/level-indicator/level-indicator.module.d.ts +2 -0
- package/{src/lib → lib}/components/level-indicator/level-indicator.scss +4 -2
- package/lib/components/multi-select-list/multi-select-list.component.d.ts +19 -0
- package/lib/components/multi-select-list/multi-select-list.module.d.ts +2 -0
- package/lib/components/multi-select-list/style/_layout.scss +5 -0
- package/lib/components/multi-select-list/style/_material-definition.scss +7 -0
- package/lib/components/multi-select-list/style/_theme.scss +5 -0
- package/lib/components/multi-select-list/style/material.scss +4 -0
- package/lib/components/pivot/co-pivot.component.d.ts +40 -0
- package/lib/components/pivot/co-pivot.module.d.ts +2 -0
- package/lib/components/pivot/style/_layout.scss +5 -0
- package/lib/components/pivot/style/_material-definition.scss +10 -0
- package/lib/components/pivot/style/_theme.scss +5 -0
- package/lib/components/pivot/style/material.scss +4 -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/{src/lib/components/popup/interface/popup-close-event.ts → lib/components/popup/interface/popup-close-event.d.ts} +0 -3
- 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/{src/lib → lib}/components/popup/popup-buttons.component.scss +0 -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/{src/lib → lib}/components/popup/popup-window-shell.component.scss +8 -8
- 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/simple-grid/simple-grid-column.directive.d.ts +18 -0
- package/lib/components/simple-grid/simple-grid.component.d.ts +26 -0
- package/lib/components/simple-grid/simple-grid.module.d.ts +2 -0
- package/lib/components/simple-grid/style/_layout.scss +80 -0
- package/lib/components/simple-grid/style/_material-definition.scss +16 -0
- package/lib/components/simple-grid/style/_theme.scss +17 -0
- package/lib/components/simple-grid/style/material.scss +4 -0
- package/lib/components/tile/tile.component.d.ts +15 -0
- package/{src/lib → lib}/components/tile/tile.component.scss +4 -4
- package/lib/components/tile/tile.module.d.ts +2 -0
- package/lib/core/constant/default-upper-bound-for-range-components.d.ts +1 -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/{src/lib/core/enum/co-document-image-display-kind.enum.ts → lib/core/enum/co-document-image-display-kind.enum.d.ts} +1 -1
- package/lib/core/enum/co-document-type.enum.d.ts +5 -0
- package/{src/lib/core/enum/core-components-icon.enum.ts → lib/core/enum/core-components-icon.enum.d.ts} +56 -57
- package/{src/lib/core/enum/file-type-internal.enum.ts → lib/core/enum/file-type-internal.enum.d.ts} +10 -10
- package/lib/core/enum/file-type.enum.d.ts +5 -0
- package/lib/core/enum/float-label-type.enum.d.ts +5 -0
- package/lib/core/enum/input-number-picker-show-mode.enum.d.ts +5 -0
- package/lib/core/enum/input-text-type.enum.d.ts +4 -0
- package/{src/lib/core/enum/keyboard-code.enum.ts → lib/core/enum/keyboard-code.enum.d.ts} +23 -24
- package/{src/lib/core/enum/object-right-type.enum.ts → lib/core/enum/object-right-type.enum.d.ts} +1 -1
- package/lib/core/enum/popup-button-type.enum.d.ts +9 -0
- package/lib/core/enum/popup-type.enum.d.ts +9 -0
- package/{src/lib/core/enum/schedule-view.enum.ts → lib/core/enum/schedule-view.enum.d.ts} +2 -2
- package/{src/lib/core/enum/table-name.enum.ts → lib/core/enum/table-name.enum.d.ts} +1 -1
- 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/{src/lib/core/model/check-precision-and-scale-result.ts → lib/core/model/check-precision-and-scale-result.d.ts} +1 -2
- package/{src/lib/core/model/check-within-stepped-bounds-result.ts → lib/core/model/check-within-stepped-bounds-result.d.ts} +3 -3
- 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/model/numerical-range.d.ts +7 -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/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/max-string-length.validator.d.ts +2 -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/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/stopclick/stop-click.directive.d.ts +10 -0
- package/lib/directives/stopclick/stop-click.module.d.ts +2 -0
- package/{src/lib → lib}/modules/pagination/pagination.scss +4 -4
- package/lib/pipes/append.pipe.d.ts +4 -0
- package/lib/pipes/append.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/{src/lib → lib}/style/_extendables.scss +0 -0
- package/{src/lib → lib}/style/_input.mixins.scss +0 -0
- package/lib/style/_mixin.scss +9 -0
- package/{src/lib → lib}/style/_responsiveness.mixins.scss +0 -0
- package/{src/lib → lib}/style/_responsiveness.scss +0 -0
- package/{src/lib → lib}/style/_transition.mixins.scss +0 -0
- package/{src/lib/style/_base-input.scss → lib/style/_variables.scss} +77 -95
- package/{src/lib → lib}/style/main.scss +0 -0
- package/{src/lib → lib}/style/material2/_core.scss +3 -3
- package/lib/style/material2/_material2-scss-barrel.scss +16 -0
- package/{src/lib → lib}/style/material2/ripple/_co-ripple.scss +0 -0
- package/{src/lib → lib}/style/material2/style/_elevation.scss +0 -0
- package/{src/lib → lib}/style/material2/style/_list-common.scss +0 -0
- package/{src/lib → lib}/style/material2/style/_variables.scss +0 -0
- package/{src/lib → lib}/style/material2/theming/_palette.scss +0 -0
- package/{src/lib → lib}/style/material2/theming/_theming.scss +0 -0
- package/{src/lib → lib}/style/material2/typography/_typography.scss +0 -0
- package/package.json +11 -3
- package/{src/public-api.ts → public-api.d.ts} +68 -66
- package/colijnit-corecomponents_v12-12.0.13.tgz +0 -0
- package/karma.conf.js +0 -44
- package/ng-package.json +0 -10
- package/src/lib/components/article-tile/article-tile.component.ts +0 -95
- package/src/lib/components/article-tile/article-tile.module.ts +0 -34
- package/src/lib/components/base/base-input.component.ts +0 -681
- package/src/lib/components/base/base.module.ts +0 -22
- package/src/lib/components/base/component-interface-name.ts +0 -6
- package/src/lib/components/button/button.component.ts +0 -94
- package/src/lib/components/button/button.module.ts +0 -18
- package/src/lib/components/button/button.scss +0 -111
- package/src/lib/components/button-drop-down/button-drop-down.component.scss +0 -19
- package/src/lib/components/button-drop-down/button-drop-down.component.ts +0 -53
- package/src/lib/components/button-drop-down/button-drop-down.module.ts +0 -17
- package/src/lib/components/card/card.component.ts +0 -92
- package/src/lib/components/card/card.module.ts +0 -34
- package/src/lib/components/co-dialog/co-dialog.component.ts +0 -88
- package/src/lib/components/co-dialog/co-dialog.module.ts +0 -15
- package/src/lib/components/co-dialog-prompt/co-dialog-prompt.component.ts +0 -70
- package/src/lib/components/co-dialog-prompt/co-dialog-prompt.module.ts +0 -15
- package/src/lib/components/co-kanban/co-kanban.component.ts +0 -128
- package/src/lib/components/co-kanban/co-kanban.module.ts +0 -18
- package/src/lib/components/co-rich-text-editor/co-rich-text-editor.component.ts +0 -69
- package/src/lib/components/co-rich-text-editor/co-rich-text-editor.module.ts +0 -18
- package/src/lib/components/co-schedule/co-schedule.component.ts +0 -96
- package/src/lib/components/co-schedule/co-schedule.module.ts +0 -19
- package/src/lib/components/co-sidebar/co-sidebar.component.ts +0 -42
- package/src/lib/components/co-sidebar/co-sidebar.module.ts +0 -13
- package/src/lib/components/co-toggle/co-toggle.component.scss +0 -0
- package/src/lib/components/co-toggle/co-toggle.component.ts +0 -46
- package/src/lib/components/co-toggle/co-toggle.module.ts +0 -18
- package/src/lib/components/drop-down-list/drop-down-list.component.ts +0 -65
- package/src/lib/components/drop-down-list/drop-down.module.ts +0 -18
- package/src/lib/components/form/form.component.ts +0 -223
- package/src/lib/components/form/form.module.ts +0 -22
- package/src/lib/components/grid/base/base-grid.component.ts +0 -83
- package/src/lib/components/grid/base/base-inline-edit-grid.component.ts +0 -36
- package/src/lib/components/grid/base/base-selection-grid.component.ts +0 -98
- package/src/lib/components/grid/base/base-toolbar-grid.component.ts +0 -75
- package/src/lib/components/grid/co-grid.component.scss +0 -29
- package/src/lib/components/grid/co-grid.component.ts +0 -70
- package/src/lib/components/grid/co-grid.module.ts +0 -49
- package/src/lib/components/grid/enum/column-align.enum.ts +0 -5
- package/src/lib/components/grid/interface/grid-menu-event-args.ts +0 -5
- package/src/lib/components/grid/interface/grid-row-drag-event-args.ts +0 -5
- package/src/lib/components/grid/interface/grid-row-drop-event-args.ts +0 -5
- package/src/lib/components/grid/model/co-grid-column.ts +0 -9
- package/src/lib/components/icon/icon-cache.service.ts +0 -57
- package/src/lib/components/icon/icon.component.ts +0 -30
- package/src/lib/components/icon/icon.module.ts +0 -24
- package/src/lib/components/image/image.component.ts +0 -20
- package/src/lib/components/image/image.css +0 -9
- package/src/lib/components/image/image.module.ts +0 -11
- package/src/lib/components/input-checkbox/input-checkbox.component.scss +0 -14
- package/src/lib/components/input-checkbox/input-checkbox.component.ts +0 -69
- package/src/lib/components/input-checkbox/input-checkbox.module.ts +0 -22
- package/src/lib/components/input-checkbox-multi-select/input-checkbox-multi-select.component.scss +0 -8
- package/src/lib/components/input-checkbox-multi-select/input-checkbox-multi-select.component.ts +0 -84
- package/src/lib/components/input-checkbox-multi-select/input-checkbox-multi-select.module.ts +0 -24
- package/src/lib/components/input-combo-box/input-combo-box.component.scss +0 -8
- package/src/lib/components/input-combo-box/input-combo-box.component.ts +0 -96
- package/src/lib/components/input-combo-box/input-combo-box.module.ts +0 -24
- package/src/lib/components/input-date-picker/input-date-picker.component.scss +0 -30
- package/src/lib/components/input-date-picker/input-date-picker.component.ts +0 -121
- package/src/lib/components/input-date-picker/input-date-picker.module.ts +0 -27
- package/src/lib/components/input-number-picker/input-number-picker.component.scss +0 -49
- package/src/lib/components/input-number-picker/input-number-picker.component.ts +0 -316
- package/src/lib/components/input-number-picker/input-number-picker.module.ts +0 -16
- package/src/lib/components/input-radio-button/input-radio-button.component.scss +0 -89
- package/src/lib/components/input-radio-button/input-radio-button.component.ts +0 -74
- package/src/lib/components/input-radio-button/input-radio-button.module.ts +0 -20
- package/src/lib/components/input-text/input-text.component.ts +0 -155
- package/src/lib/components/input-text/input-text.module.ts +0 -27
- package/src/lib/components/input-text/input-text.scss +0 -4
- package/src/lib/components/level-indicator/level-indicator.component.ts +0 -41
- package/src/lib/components/level-indicator/level-indicator.module.ts +0 -13
- package/src/lib/components/multi-select-list/multi-select-list.component.scss +0 -1
- package/src/lib/components/multi-select-list/multi-select-list.component.ts +0 -78
- package/src/lib/components/multi-select-list/multi-select-list.module.ts +0 -17
- package/src/lib/components/pivot/co-pivot.component.scss +0 -0
- package/src/lib/components/pivot/co-pivot.component.ts +0 -246
- package/src/lib/components/pivot/co-pivot.module.ts +0 -16
- package/src/lib/components/popup/const/popup-window-token.ts +0 -4
- package/src/lib/components/popup/interface/popup-button.ts +0 -14
- package/src/lib/components/popup/interface/popup-settings.ts +0 -70
- package/src/lib/components/popup/interface/popup.ts +0 -17
- package/src/lib/components/popup/model/popup-button-globals.ts +0 -11
- package/src/lib/components/popup/model/popup-window.ts +0 -51
- package/src/lib/components/popup/popup-buttons.component.ts +0 -61
- package/src/lib/components/popup/popup-message-display.component.ts +0 -49
- package/src/lib/components/popup/popup-window-shell.component.ts +0 -222
- package/src/lib/components/popup/popup.module.ts +0 -48
- package/src/lib/components/popup/service/popup-shower.service.ts +0 -98
- package/src/lib/components/popup/service/prompt.service.ts +0 -127
- package/src/lib/components/popup/text-input-popup.component.ts +0 -36
- package/src/lib/components/tile/tile.component.ts +0 -70
- package/src/lib/components/tile/tile.module.ts +0 -21
- package/src/lib/core/abstract/collection-based-component.ts +0 -488
- package/src/lib/core/config/device-environment.ts +0 -26
- package/src/lib/core/constant/default-upper-bound-for-range-components.ts +0 -3
- package/src/lib/core/constant/java-max-int.ts +0 -1
- package/src/lib/core/constant/number-inputs-key-down-white-list.ts +0 -45
- package/src/lib/core/decorator/input-boolean.decorator.ts +0 -35
- package/src/lib/core/enum/co-direction.ts +0 -7
- package/src/lib/core/enum/co-document-type.enum.ts +0 -9
- package/src/lib/core/enum/co-orientation.ts +0 -18
- package/src/lib/core/enum/collection-based-component-input-driver-prop.enum.ts +0 -10
- package/src/lib/core/enum/color-sequence-name.enum.ts +0 -5
- package/src/lib/core/enum/file-type.enum.ts +0 -9
- package/src/lib/core/enum/float-label-type.enum.ts +0 -5
- package/src/lib/core/enum/input-number-picker-show-mode.enum.ts +0 -6
- package/src/lib/core/enum/input-text-type.enum.ts +0 -4
- package/src/lib/core/enum/keyboard-key.enum.ts +0 -77
- package/src/lib/core/enum/logical-operator-type.enum.ts +0 -5
- package/src/lib/core/enum/popup-button-type.enum.ts +0 -10
- package/src/lib/core/enum/popup-type.enum.ts +0 -9
- package/src/lib/core/enum/search-data-type.ts +0 -4
- package/src/lib/core/enum/search-property-state.ts +0 -5
- package/src/lib/core/enum/sort-data-type.ts +0 -6
- package/src/lib/core/enum/sort-direction.ts +0 -9
- package/src/lib/core/enum/value-comparison-type.ts +0 -11
- package/src/lib/core/function/any-nill.function.ts +0 -6
- package/src/lib/core/function/is-nill.function.ts +0 -4
- package/src/lib/core/function/none-nill.function.ts +0 -16
- package/src/lib/core/function/not-nill.function.ts +0 -4
- package/src/lib/core/interface/search-property.ts +0 -15
- package/src/lib/core/interface/sort-property.ts +0 -16
- package/src/lib/core/model/bounds-constrained-number-value.ts +0 -219
- package/src/lib/core/model/co-document-right.bo.ts +0 -9
- package/src/lib/core/model/co-document.bo.ts +0 -193
- package/src/lib/core/model/color-sequence.ts +0 -39
- package/src/lib/core/model/color.ts +0 -29
- package/src/lib/core/model/core-components-icon-svg.ts +0 -56
- package/src/lib/core/model/element-position.ts +0 -14
- package/src/lib/core/model/event/number-prompt-result-event.ts +0 -10
- package/src/lib/core/model/event/string-prompt-result-event.ts +0 -10
- package/src/lib/core/model/numerical-range.ts +0 -19
- package/src/lib/core/service/color-sequence.service.ts +0 -104
- package/src/lib/core/service/form-input-user-change-listener.service.ts +0 -31
- package/src/lib/core/service/form-master.service.ts +0 -119
- package/src/lib/core/service/ng-zone-wrapper.service.ts +0 -15
- package/src/lib/core/utils/array-utils.spec.ts +0 -588
- package/src/lib/core/utils/array-utils.ts +0 -301
- package/src/lib/core/utils/browser-utils.ts +0 -123
- package/src/lib/core/utils/business-object-utils.ts +0 -42
- package/src/lib/core/utils/css-utils.ts +0 -276
- package/src/lib/core/utils/element-ref.utils.ts +0 -12
- package/src/lib/core/utils/event-utils.ts +0 -61
- package/src/lib/core/utils/file-utils.ts +0 -291
- package/src/lib/core/utils/number-utils.spec.ts +0 -657
- package/src/lib/core/utils/number-utils.ts +0 -350
- package/src/lib/core/utils/object-utils.ts +0 -205
- package/src/lib/core/utils/parameter-value-conversion-utils.ts +0 -116
- package/src/lib/core/utils/search-utils.ts +0 -121
- package/src/lib/core/utils/sort-utils.ts +0 -108
- package/src/lib/core/utils/string-utils.ts +0 -100
- package/src/lib/core/validator/email.validator.ts +0 -10
- package/src/lib/core/validator/max-string-length.validator.ts +0 -11
- package/src/lib/core/validator/precision-scale.validator.ts +0 -14
- package/src/lib/core/validator/required.validator.ts +0 -9
- package/src/lib/directives/align-with/align-with.directive.ts +0 -158
- package/src/lib/directives/align-with/align-with.module.ts +0 -13
- package/src/lib/directives/clickoutside/click-outside-master.service.ts +0 -64
- package/src/lib/directives/clickoutside/click-outside.directive.ts +0 -72
- package/src/lib/directives/clickoutside/clickoutside.module.ts +0 -17
- package/src/lib/directives/parsevalue/parse-value.directive.ts +0 -42
- package/src/lib/directives/parsevalue/parse-value.module.ts +0 -13
- package/src/lib/directives/resize/resize-detect.directive.ts +0 -54
- package/src/lib/directives/resize/resize-detect.module.ts +0 -13
- package/src/lib/directives/ripple/ripple-ref.ts +0 -28
- package/src/lib/directives/ripple/ripple-renderer.ts +0 -217
- package/src/lib/directives/ripple/ripple.directive.ts +0 -116
- package/src/lib/directives/ripple/ripple.module.ts +0 -24
- package/src/lib/directives/ripple/scroll-dispatcher.service.ts +0 -129
- package/src/lib/directives/ripple/scrollable.directive.ts +0 -37
- package/src/lib/directives/ripple/viewport-ruler.service.ts +0 -84
- package/src/lib/directives/stopclick/stop-click.directive.ts +0 -35
- package/src/lib/directives/stopclick/stop-click.module.ts +0 -14
- package/src/lib/directives/template-wrapper/template-wrapper.directive.ts +0 -71
- package/src/lib/directives/template-wrapper/template-wrapper.module.ts +0 -13
- package/src/lib/model/data-item.ts +0 -9
- package/src/lib/model/enum/currency-code.enum.ts +0 -7
- package/src/lib/model/enum/language-code.enum.ts +0 -8
- package/src/lib/model/map/currencies.map.ts +0 -6
- package/src/lib/modules/drag-drop/drag-drop-container.component.ts +0 -115
- package/src/lib/modules/drag-drop/drag-drop-container.css +0 -34
- package/src/lib/modules/drag-drop/drag-drop-manager.service.ts +0 -414
- package/src/lib/modules/drag-drop/drag-drop.module.ts +0 -20
- package/src/lib/modules/drag-drop/draggable.directive.ts +0 -70
- package/src/lib/modules/drag-drop/model/co-drag-event.ts +0 -5
- package/src/lib/modules/drag-drop/model/co-drop-event.ts +0 -9
- package/src/lib/modules/drag-drop/model/drag-drop-container-element.ts +0 -7
- package/src/lib/modules/drag-drop/model/drag-drop-container.ts +0 -9
- package/src/lib/modules/media-monitor/flex-layout-breakpoint.enum.ts +0 -5
- package/src/lib/modules/media-monitor/media-monitor.module.ts +0 -14
- package/src/lib/modules/media-monitor/media-monitor.service.ts +0 -36
- package/src/lib/modules/pagination/paginate.pipe.ts +0 -122
- package/src/lib/modules/pagination/pagination-instance.ts +0 -18
- package/src/lib/modules/pagination/pagination.component.ts +0 -217
- package/src/lib/modules/pagination/pagination.module.ts +0 -25
- package/src/lib/modules/pagination/pagination.service.ts +0 -98
- package/src/lib/pipes/append.pipe.module.ts +0 -13
- package/src/lib/pipes/append.pipe.ts +0 -17
- package/src/lib/pipes/co-currency-pipe.module.ts +0 -13
- package/src/lib/pipes/co-currency.pipe.ts +0 -45
- package/src/lib/pipes/emun-keys.pipe.ts +0 -20
- package/src/lib/pipes/enum-keys-pipe.module.ts +0 -13
- package/src/lib/pipes/file-type-image-pipe.module.ts +0 -13
- package/src/lib/pipes/file-type-image.pipe.ts +0 -45
- package/src/lib/pipes/master-pipe.module.ts +0 -13
- package/src/lib/pipes/master.pipe.ts +0 -71
- package/src/lib/pipes/price-display-pipe.module.ts +0 -14
- package/src/lib/pipes/price-display.pipe.ts +0 -20
- package/src/lib/pipes/safe-style.pipe.module.ts +0 -13
- package/src/lib/pipes/safe-style.pipe.ts +0 -14
- package/src/lib/pipes/ucfirst-pipe.module.ts +0 -13
- package/src/lib/pipes/ucfirst.pipe.ts +0 -14
- package/src/lib/style/_variables.scss +0 -76
- package/src/lib/style/material2/_material2-scss-barrel.scss +0 -16
- package/src/test.ts +0 -28
- package/tsconfig.lib.json +0 -20
- package/tsconfig.lib.prod.json +0 -16
- package/tsconfig.spec.json +0 -17
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import { Subject } from "rxjs";
|
|
2
|
+
import { isNill } from "../function/is-nill.function";
|
|
3
|
+
import { DEFAULT_UPPER_BOUND_FOR_RANGE_COMPONENTS } from "../constant/default-upper-bound-for-range-components";
|
|
4
|
+
import { NumberUtils } from "../utils/number-utils";
|
|
5
|
+
// A data type class that represents a stepped-bounds numerical value, with min max and step size. Value is always within these bounds and is auto corrected for incoming manipulation requests.
|
|
6
|
+
export class BoundsConstrainedNumberValue {
|
|
7
|
+
constructor() {
|
|
8
|
+
// emits when the value changed (e.g. after it was corrected for bounds)
|
|
9
|
+
this.valueChange = new Subject();
|
|
10
|
+
// the actual numeric current value, which we ensure always complies to our current min, max and step
|
|
11
|
+
this._value = 0;
|
|
12
|
+
this._valueAsString = "0";
|
|
13
|
+
this._min = 0;
|
|
14
|
+
this._max = DEFAULT_UPPER_BOUND_FOR_RANGE_COMPONENTS;
|
|
15
|
+
this._step = 1; // stepsize before the decimal.
|
|
16
|
+
this._stepDecimals = 0; // derived from step
|
|
17
|
+
this._trueMax = DEFAULT_UPPER_BOUND_FOR_RANGE_COMPONENTS; // derived from min, max and step
|
|
18
|
+
this._constraintsEnabled = true;
|
|
19
|
+
}
|
|
20
|
+
set value(value) {
|
|
21
|
+
this.setValue(value, true);
|
|
22
|
+
}
|
|
23
|
+
get value() {
|
|
24
|
+
return this._value;
|
|
25
|
+
}
|
|
26
|
+
// Returns a display string of our .value number (NaN and undefined become the empty string).
|
|
27
|
+
get valueAsSting() {
|
|
28
|
+
return this._valueAsString;
|
|
29
|
+
}
|
|
30
|
+
set min(min) {
|
|
31
|
+
if (isNill(min)) {
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
let shouldUpdateTrueMax = (this._min !== min);
|
|
35
|
+
this._min = min;
|
|
36
|
+
if (shouldUpdateTrueMax) {
|
|
37
|
+
this._updateTrueMax();
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
get min() {
|
|
41
|
+
return this._min;
|
|
42
|
+
}
|
|
43
|
+
set max(max) {
|
|
44
|
+
if (isNill(max)) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
let shouldUpdateTrueMax = (this._max !== max);
|
|
48
|
+
this._max = max;
|
|
49
|
+
if (shouldUpdateTrueMax) {
|
|
50
|
+
this._updateTrueMax();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
get max() {
|
|
54
|
+
return this._max;
|
|
55
|
+
}
|
|
56
|
+
get trueMax() {
|
|
57
|
+
return this._trueMax;
|
|
58
|
+
}
|
|
59
|
+
// The step interval size for allowed numbers Y = min + N * step, where N is integer or 0.
|
|
60
|
+
set step(step) {
|
|
61
|
+
if (isNill(step)) {
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
let shouldUpdateTrueMaxAndStepDecimals = (this._step !== step);
|
|
65
|
+
this._step = step;
|
|
66
|
+
if (shouldUpdateTrueMaxAndStepDecimals) {
|
|
67
|
+
this._updateTrueMax();
|
|
68
|
+
this._updateStepDecimals();
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
set decimals(decimals) {
|
|
72
|
+
if (decimals > 0) {
|
|
73
|
+
this._decimals = decimals;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
get step() {
|
|
77
|
+
return this._step;
|
|
78
|
+
}
|
|
79
|
+
get stepDecimals() {
|
|
80
|
+
return this._stepDecimals;
|
|
81
|
+
}
|
|
82
|
+
get constraintsEnabled() {
|
|
83
|
+
return this._constraintsEnabled;
|
|
84
|
+
}
|
|
85
|
+
roundedDecimals(value) {
|
|
86
|
+
if (value >= 0) {
|
|
87
|
+
return 1 / Math.pow(10, value);
|
|
88
|
+
}
|
|
89
|
+
return 0;
|
|
90
|
+
}
|
|
91
|
+
putPrecision(precision) {
|
|
92
|
+
this._precision = precision;
|
|
93
|
+
this.max = NumberUtils.PrecisionScaleToMaxValue(this._precision, this._scale);
|
|
94
|
+
}
|
|
95
|
+
putScale(scale) {
|
|
96
|
+
this._scale = scale;
|
|
97
|
+
this.step = NumberUtils.DecimalsToStepIncrement(this._scale);
|
|
98
|
+
this.max = NumberUtils.PrecisionScaleToMaxValue(this._precision, this._scale);
|
|
99
|
+
}
|
|
100
|
+
// possibly corrects value for bounds
|
|
101
|
+
init(silent = false) {
|
|
102
|
+
this.setValue(this._value, silent);
|
|
103
|
+
}
|
|
104
|
+
// returns whether value really changed
|
|
105
|
+
setValueByUserInputText(text, silent = false) {
|
|
106
|
+
const prevVal = this.value;
|
|
107
|
+
if (NumberUtils.IsParsableNumberInput(text)) {
|
|
108
|
+
this.setValue(NumberUtils.ParseNumberInputOrDefault(text), silent);
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
this.setValue(undefined);
|
|
112
|
+
}
|
|
113
|
+
return prevVal !== this.value;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Makes sure current value adheres to our stepped bounds. Returns true if inner value really changed (after sanitizing), false if not.
|
|
117
|
+
* Returns whether value really changed.
|
|
118
|
+
*/
|
|
119
|
+
setValue(newValue, silent = false) {
|
|
120
|
+
const oldValue = this._value;
|
|
121
|
+
if (!this._constraintsEnabled) {
|
|
122
|
+
this._setValue(newValue);
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
// cut off given newValue float excesses for cases such as "13.1000000000000000000001"
|
|
126
|
+
//newValue = NumberUtils.ParseFloat(newValue, NumberUtils.GetDecimalPlaces(this._step));
|
|
127
|
+
if (this._decimals === undefined) {
|
|
128
|
+
this._decimals = NumberUtils.GetDecimalPlaces(newValue);
|
|
129
|
+
}
|
|
130
|
+
newValue = NumberUtils.ParseFloat(newValue, this._decimals);
|
|
131
|
+
// dont perform bounds check if no min or max set.
|
|
132
|
+
if (isNaN(this._min) || isNaN(this._max)) {
|
|
133
|
+
this._setValue(newValue);
|
|
134
|
+
}
|
|
135
|
+
else if (newValue >= this._min && newValue <= this._max) {
|
|
136
|
+
this._setValue(NumberUtils.GetNearestNumberWithinSteppedBounds(newValue, this._min, this._max, this.roundedDecimals(this._decimals)));
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
if (isNaN(this._value)) {
|
|
140
|
+
this._setValue(undefined);
|
|
141
|
+
}
|
|
142
|
+
if (!silent) {
|
|
143
|
+
this.valueChange.next(this._value);
|
|
144
|
+
}
|
|
145
|
+
return oldValue !== this._value;
|
|
146
|
+
}
|
|
147
|
+
increment(steps = 1) {
|
|
148
|
+
this.setValue(this._value + this._step * steps);
|
|
149
|
+
}
|
|
150
|
+
decrement(steps = 1) {
|
|
151
|
+
this.setValue(this._value - this._step * steps);
|
|
152
|
+
}
|
|
153
|
+
// afterwards, you may set any value, it won't be checked against our bounds anymore
|
|
154
|
+
disableConstraints() {
|
|
155
|
+
this._constraintsEnabled = false;
|
|
156
|
+
}
|
|
157
|
+
enableConstraints() {
|
|
158
|
+
this._constraintsEnabled = true;
|
|
159
|
+
}
|
|
160
|
+
_updateTrueMax() {
|
|
161
|
+
this._trueMax = NumberUtils.GetTrueSteppedBoundsMax(this._min, this._max, this._step);
|
|
162
|
+
}
|
|
163
|
+
_updateStepDecimals() {
|
|
164
|
+
this._stepDecimals = NumberUtils.GetDecimalPlaces(this._step);
|
|
165
|
+
}
|
|
166
|
+
_setValue(value) {
|
|
167
|
+
this._value = value;
|
|
168
|
+
this._valueAsString = NumberUtils.ToString(this._value);
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYm91bmRzLWNvbnN0cmFpbmVkLW51bWJlci12YWx1ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9saWIvY29yZS9tb2RlbC9ib3VuZHMtY29uc3RyYWluZWQtbnVtYmVyLXZhbHVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFFN0IsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3BELE9BQU8sRUFBQyx3Q0FBd0MsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQzlHLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUdsRCxnTUFBZ007QUFDaE0sTUFBTSxPQUFPLDRCQUE0QjtJQXlHckM7UUFsQkEsd0VBQXdFO1FBQ2pFLGdCQUFXLEdBQW9CLElBQUksT0FBTyxFQUFVLENBQUM7UUFFNUQscUdBQXFHO1FBQzNGLFdBQU0sR0FBVyxDQUFDLENBQUM7UUFFbkIsbUJBQWMsR0FBVyxHQUFHLENBQUM7UUFDN0IsU0FBSSxHQUFXLENBQUMsQ0FBQztRQUNqQixTQUFJLEdBQVcsd0NBQXdDLENBQUM7UUFDeEQsVUFBSyxHQUFXLENBQUMsQ0FBQyxDQUFFLCtCQUErQjtRQUNuRCxrQkFBYSxHQUFXLENBQUMsQ0FBQyxDQUFDLG9CQUFvQjtRQUMvQyxhQUFRLEdBQVcsd0NBQXdDLENBQUMsQ0FBQyxpQ0FBaUM7UUFFaEcsd0JBQW1CLEdBQVksSUFBSSxDQUFDO0lBTTVDLENBQUM7SUF6R0QsSUFBVyxLQUFLLENBQUMsS0FBYTtRQUMxQixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ1osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCw2RkFB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QUFJLENBQUMsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO0lBQ3BDLENBQUM7SUFFTyxjQUFjO1FBQ2xCLElBQUksQ0FBQyxRQUFRLEdBQUcsV0FBVyxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUYsQ0FBQztJQUVPLG1CQUFtQjtRQUN2QixJQUFJLENBQUMsYUFBYSxHQUFHLFdBQVcsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVPLFNBQVMsQ0FBQyxLQUFhO1FBQzNCLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxjQUFjLEdBQUcsV0FBVyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDNUQsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtTdWJqZWN0fSBmcm9tIFwicnhqc1wiO1xyXG5cclxuaW1wb3J0IHtpc05pbGx9IGZyb20gXCIuLi9mdW5jdGlvbi9pcy1uaWxsLmZ1bmN0aW9uXCI7XHJcbmltcG9ydCB7REVGQVVMVF9VUFBFUl9CT1VORF9GT1JfUkFOR0VfQ09NUE9ORU5UU30gZnJvbSBcIi4uL2NvbnN0YW50L2RlZmF1bHQtdXBwZXItYm91bmQtZm9yLXJhbmdlLWNvbXBvbmVudHNcIjtcclxuaW1wb3J0IHtOdW1iZXJVdGlsc30gZnJvbSBcIi4uL3V0aWxzL251bWJlci11dGlsc1wiO1xyXG5cclxuXHJcbi8vIEEgZGF0YSB0eXBlIGNsYXNzIHRoYXQgcmVwcmVzZW50cyBhIHN0ZXBwZWQtYm91bmRzIG51bWVyaWNhbCB2YWx1ZSwgd2l0aCBtaW4gbWF4IGFuZCBzdGVwIHNpemUuIFZhbHVlIGlzIGFsd2F5cyB3aXRoaW4gdGhlc2UgYm91bmRzIGFuZCBpcyBhdXRvIGNvcnJlY3RlZCBmb3IgaW5jb21pbmcgbWFuaXB1bGF0aW9uIHJlcXVlc3RzLlxyXG5leHBvcnQgY2xhc3MgQm91bmRzQ29uc3RyYWluZWROdW1iZXJWYWx1ZSB7XHJcbiAgICBwdWJsaWMgc2V0IHZhbHVlKHZhbHVlOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLnNldFZhbHVlKHZhbHVlLCB0cnVlKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHZhbHVlKCk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFJldHVybnMgYSBkaXNwbGF5IHN0cmluZyBvZiBvdXIgLnZhbHVlIG51bWJlciAoTmFOIGFuZCB1bmRlZmluZWQgYmVjb21lIHRoZSBlbXB0eSBzdHJpbmcpLlxyXG4gICAgcHVibGljIGdldCB2YWx1ZUFzU3RpbmcoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fdmFsdWVBc1N0cmluZztcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2V0IG1pbihtaW46IG51bWJlcikge1xyXG4gICAgICAgIGlmIChpc05pbGwobWluKSkge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBsZXQgc2hvdWxkVXBkYXRlVHJ1ZU1heDogYm9vbGVhbiA9ICh0aGlzLl9taW4gIT09IG1pbik7XHJcblxyXG4gICAgICAgIHRoaXMuX21pbiA9IG1pbjtcclxuXHJcbiAgICAgICAgaWYgKHNob3VsZFVwZGF0ZVRydWVNYXgpIHtcclxuICAgICAgICAgICAgdGhpcy5fdXBkYXRlVHJ1ZU1heCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IG1pbigpOiBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9taW47XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHNldCBtYXgobWF4OiBudW1iZXIpIHtcclxuICAgICAgICBpZiAoaXNOaWxsKG1heCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGV0IHNob3VsZFVwZGF0ZVRydWVNYXg6IGJvb2xlYW4gPSAodGhpcy5fbWF4ICE9PSBtYXgpO1xyXG5cclxuICAgICAgICB0aGlzLl9tYXggPSBtYXg7XHJcblxyXG4gICAgICAgIGlmIChzaG91bGRVcGRhdGVUcnVlTWF4KSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVRydWVNYXgoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBtYXgoKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fbWF4O1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgdHJ1ZU1heCgpOiBudW1iZXIge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl90cnVlTWF4O1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFRoZSBzdGVwIGludGVydmFsIHNpemUgZm9yIGFsbG93ZWQgbnVtYmVycyBZID0gbWluICsgTiAqIHN0ZXAsIHdoZXJlIE4gaXMgaW50ZWdlciBvciAwLlxyXG4gICAgcHVibGljIHNldCBzdGVwKHN0ZXA6IG51bWJlcikge1xyXG4gICAgICAgIGlmIChpc05pbGwoc3RlcCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgbGV0IHNob3VsZFVwZGF0ZVRydWVNYXhBbmRTdGVwRGVjaW1hbHM6IGJvb2xlYW4gPSAodGhpcy5fc3RlcCAhPT0gc3RlcCk7XHJcblxyXG4gICAgICAgIHRoaXMuX3N0ZXAgPSBzdGVwO1xyXG5cclxuICAgICAgICBpZiAoc2hvdWxkVXBkYXRlVHJ1ZU1heEFuZFN0ZXBEZWNpbWFscykge1xyXG4gICAgICAgICAgICB0aGlzLl91cGRhdGVUcnVlTWF4KCk7XHJcbiAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVN0ZXBEZWNpbWFscygpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2V0IGRlY2ltYWxzKGRlY2ltYWxzOiBudW1iZXIpIHtcclxuICAgICAgICBpZiAoZGVjaW1hbHMgPiAwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2RlY2ltYWxzID0gZGVjaW1hbHM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcHVibGljIGdldCBzdGVwKCk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3N0ZXA7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBzdGVwRGVjaW1hbHMoKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fc3RlcERlY2ltYWxzO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgY29uc3RyYWludHNFbmFibGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9jb25zdHJhaW50c0VuYWJsZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gZW1pdHMgd2hlbiB0aGUgdmFsdWUgY2hhbmdlZCAoZS5nLiBhZnRlciBpdCB3YXMgY29ycmVjdGVkIGZvciBib3VuZHMpXHJcbiAgICBwdWJsaWMgdmFsdWVDaGFuZ2U6IFN1YmplY3Q8bnVtYmVyPiA9IG5ldyBTdWJqZWN0PG51bWJlcj4oKTtcclxuXHJcbiAgICAvLyB0aGUgYWN0dWFsIG51bWVyaWMgY3VycmVudCB2YWx1ZSwgd2hpY2ggd2UgZW5zdXJlIGFsd2F5cyBjb21wbGllcyB0byBvdXIgY3VycmVudCBtaW4sIG1heCBhbmQgc3RlcFxyXG4gICAgcHJvdGVjdGVkIF92YWx1ZTogbnVtYmVyID0gMDtcclxuICAgIHByb3RlY3RlZCBfZGVjaW1hbHM6IG51bWJlcjsgLy8gbnVtYmVyIG9mIGRlY2ltYWxzIG9mIHRoZSB2YWx1ZS5cclxuICAgIHByb3RlY3RlZCBfdmFsdWVBc1N0cmluZzogc3RyaW5nID0gXCIwXCI7XHJcbiAgICBwcm90ZWN0ZWQgX21pbjogbnVtYmVyID0gMDtcclxuICAgIHByb3RlY3RlZCBfbWF4OiBudW1iZXIgPSBERUZBVUxUX1VQUEVSX0JPVU5EX0ZPUl9SQU5HRV9DT01QT05FTlRTO1xyXG4gICAgcHJvdGVjdGVkIF9zdGVwOiBudW1iZXIgPSAxOyAgLy8gc3RlcHNpemUgYmVmb3JlIHRoZSBkZWNpbWFsLlxyXG4gICAgcHJvdGVjdGVkIF9zdGVwRGVjaW1hbHM6IG51bWJlciA9IDA7IC8vIGRlcml2ZWQgZnJvbSBzdGVwXHJcbiAgICBwcm90ZWN0ZWQgX3RydWVNYXg6IG51bWJlciA9IERFRkFVTFRfVVBQRVJfQk9VTkRfRk9SX1JBTkdFX0NPTVBPTkVOVFM7IC8vIGRlcml2ZWQgZnJvbSBtaW4sIG1heCBhbmQgc3RlcFxyXG5cclxuICAgIHByaXZhdGUgX2NvbnN0cmFpbnRzRW5hYmxlZDogYm9vbGVhbiA9IHRydWU7XHJcblxyXG4gICAgcHJpdmF0ZSBfcHJlY2lzaW9uPzogbnVtYmVyO1xyXG4gICAgcHJpdmF0ZSBfc2NhbGU/OiBudW1iZXI7XHJcblxyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHJvdW5kZWREZWNpbWFscyh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHtcclxuICAgICAgICBpZiAodmFsdWUgPj0gMCkge1xyXG4gICAgICAgICAgICByZXR1cm4gMSAvIE1hdGgucG93KDEwLCB2YWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiAwO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBwdXRQcmVjaXNpb24ocHJlY2lzaW9uOiBudW1iZXIpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9wcmVjaXNpb24gPSBwcmVjaXNpb247XHJcbiAgICAgICAgdGhpcy5tYXggPSBOdW1iZXJVdGlscy5QcmVjaXNpb25TY2FsZVRvTWF4VmFsdWUodGhpcy5fcHJlY2lzaW9uLCB0aGlzLl9zY2FsZSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHB1dFNjYWxlKHNjYWxlOiBudW1iZXIpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9zY2FsZSA9IHNjYWxlO1xyXG4gICAgICAgIHRoaXMuc3RlcCA9IE51bWJlclV0aWxzLkRlY2ltYWxzVG9TdGVwSW5jcmVtZW50KHRoaXMuX3NjYWxlKTtcclxuICAgICAgICB0aGlzLm1heCA9IE51bWJlclV0aWxzLlByZWNpc2lvblNjYWxlVG9NYXhWYWx1ZSh0aGlzLl9wcmVjaXNpb24sIHRoaXMuX3NjYWxlKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBwb3NzaWJseSBjb3JyZWN0cyB2YWx1ZSBmb3IgYm91bmRzXHJcbiAgICBwdWJsaWMgaW5pdChzaWxlbnQ6IGJvb2xlYW4gPSBmYWxzZSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2V0VmFsdWUodGhpcy5fdmFsdWUsIHNpbGVudCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gcmV0dXJucyB3aGV0aGVyIHZhbHVlIHJlYWxseSBjaGFuZ2VkXHJcbiAgICBwdWJsaWMgc2V0VmFsdWVCeVVzZXJJbnB1dFRleHQodGV4dDogc3RyaW5nLCBzaWxlbnQ6IGJvb2xlYW4gPSBmYWxzZSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGNvbnN0IHByZXZWYWw6IGFueSA9IHRoaXMudmFsdWU7XHJcblxyXG4gICAgICAgIGlmIChOdW1iZXJVdGlscy5Jc1BhcnNhYmxlTnVtYmVySW5wdXQodGV4dCkpIHtcclxuICAgICAgICAgICAgdGhpcy5zZXRWYWx1ZShOdW1iZXJVdGlscy5QYXJzZU51bWJlcklucHV0T3JEZWZhdWx0KHRleHQpLCBzaWxlbnQpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuc2V0VmFsdWUodW5kZWZpbmVkKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBwcmV2VmFsICE9PSB0aGlzLnZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogTWFrZXMgc3VyZSBjdXJyZW50IHZhbHVlIGFkaGVyZXMgdG8gb3VyIHN0ZXBwZWQgYm91bmRzLiBSZXR1cm5zIHRydWUgaWYgaW5uZXIgdmFsdWUgcmVhbGx5IGNoYW5nZWQgKGFmdGVyIHNhbml0aXppbmcpLCBmYWxzZSBpZiBub3QuXHJcbiAgICAgKiBSZXR1cm5zIHdoZXRoZXIgdmFsdWUgcmVhbGx5IGNoYW5nZWQuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzZXRWYWx1ZShuZXdWYWx1ZTogbnVtYmVyLCBzaWxlbnQ6IGJvb2xlYW4gPSBmYWxzZSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGNvbnN0IG9sZFZhbHVlOiBudW1iZXIgPSB0aGlzLl92YWx1ZTtcclxuXHJcbiAgICAgICAgaWYgKCF0aGlzLl9jb25zdHJhaW50c0VuYWJsZWQpIHtcclxuICAgICAgICAgICAgdGhpcy5fc2V0VmFsdWUobmV3VmFsdWUpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIC8vIGN1dCBvZmYgZ2l2ZW4gbmV3VmFsdWUgZmxvYXQgZXhjZXNzZXMgZm9yIGNhc2VzIHN1Y2ggYXMgXCIxMy4xMDAwMDAwMDAwMDAwMDAwMDAwMDAxXCJcclxuICAgICAgICAgICAgLy9uZXdWYWx1ZSA9IE51bWJlclV0aWxzLlBhcnNlRmxvYXQobmV3VmFsdWUsIE51bWJlclV0aWxzLkdldERlY2ltYWxQbGFjZXModGhpcy5fc3RlcCkpO1xyXG5cclxuICAgICAgICAgICAgaWYgKHRoaXMuX2RlY2ltYWxzID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2RlY2ltYWxzID0gTnVtYmVyVXRpbHMuR2V0RGVjaW1hbFBsYWNlcyhuZXdWYWx1ZSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIG5ld1ZhbHVlID0gTnVtYmVyVXRpbHMuUGFyc2VGbG9hdChuZXdWYWx1ZSwgdGhpcy5fZGVjaW1hbHMpO1xyXG4gICAgICAgICAgICAvLyBkb250IHBlcmZvcm0gYm91bmRzIGNoZWNrIGlmIG5vIG1pbiBvciBtYXggc2V0LlxyXG4gICAgICAgICAgICBpZiAoaXNOYU4odGhpcy5fbWluKSB8fCBpc05hTih0aGlzLl9tYXgpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9zZXRWYWx1ZShuZXdWYWx1ZSk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAobmV3VmFsdWUgPj0gdGhpcy5fbWluICYmIG5ld1ZhbHVlIDw9IHRoaXMuX21heCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fc2V0VmFsdWUoTnVtYmVyVXRpbHMuR2V0TmVhcmVzdE51bWJlcldpdGhpblN0ZXBwZWRCb3VuZHMobmV3VmFsdWUsIHRoaXMuX21pbiwgdGhpcy5fbWF4LCB0aGlzLnJvdW5kZWREZWNpbWFscyh0aGlzLl9kZWNpbWFscykpKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGlzTmFOKHRoaXMuX3ZhbHVlKSkge1xyXG4gICAgICAgICAgICB0aGlzLl9zZXRWYWx1ZSh1bmRlZmluZWQpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKCFzaWxlbnQpIHtcclxuICAgICAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5uZXh0KHRoaXMuX3ZhbHVlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiBvbGRWYWx1ZSAhPT0gdGhpcy5fdmFsdWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGluY3JlbWVudChzdGVwczogbnVtYmVyID0gMSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuc2V0VmFsdWUodGhpcy5fdmFsdWUgKyB0aGlzLl9zdGVwICogc3RlcHMpO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBkZWNyZW1lbnQoc3RlcHM6IG51bWJlciA9IDEpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnNldFZhbHVlKHRoaXMuX3ZhbHVlIC0gdGhpcy5fc3RlcCAqIHN0ZXBzKTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBhZnRlcndhcmRzLCB5b3UgbWF5IHNldCBhbnkgdmFsdWUsIGl0IHdvbid0IGJlIGNoZWNrZWQgYWdhaW5zdCBvdXIgYm91bmRzIGFueW1vcmVcclxuICAgIHB1YmxpYyBkaXNhYmxlQ29uc3RyYWludHMoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fY29uc3RyYWludHNFbmFibGVkID0gZmFsc2U7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGVuYWJsZUNvbnN0cmFpbnRzKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX2NvbnN0cmFpbnRzRW5hYmxlZCA9IHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfdXBkYXRlVHJ1ZU1heCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl90cnVlTWF4ID0gTnVtYmVyVXRpbHMuR2V0VHJ1ZVN0ZXBwZWRCb3VuZHNNYXgodGhpcy5fbWluLCB0aGlzLl9tYXgsIHRoaXMuX3N0ZXApO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3VwZGF0ZVN0ZXBEZWNpbWFscygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl9zdGVwRGVjaW1hbHMgPSBOdW1iZXJVdGlscy5HZXREZWNpbWFsUGxhY2VzKHRoaXMuX3N0ZXApO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX3NldFZhbHVlKHZhbHVlOiBudW1iZXIpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLl92YWx1ZSA9IHZhbHVlO1xyXG4gICAgICAgIHRoaXMuX3ZhbHVlQXNTdHJpbmcgPSBOdW1iZXJVdGlscy5Ub1N0cmluZyh0aGlzLl92YWx1ZSk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2stcHJlY2lzaW9uLWFuZC1zY2FsZS1yZXN1bHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvcmUvbW9kZWwvY2hlY2stcHJlY2lzaW9uLWFuZC1zY2FsZS1yZXN1bHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8vIE91dHB1dCBvYmplY3Qgc2hhcGUgZm9yIE51bWJlclV0aWxzLkNoZWNrUHJlY2lzaW9uQW5kU2NhbGUoKS5cclxuZXhwb3J0IGludGVyZmFjZSBDaGVja1ByZWNpc2lvbkFuZFNjYWxlUmVzdWx0IHtcclxuICAgIGlzT2s6IGJvb2xlYW47XHJcbiAgICBuZWFyZXN0T2tOcj86IG51bWJlcjtcclxufSJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2std2l0aGluLXN0ZXBwZWQtYm91bmRzLXJlc3VsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmVjb21wb25lbnRzL3NyYy9saWIvY29yZS9tb2RlbC9jaGVjay13aXRoaW4tc3RlcHBlZC1ib3VuZHMtcmVzdWx0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogT3V0cHV0IG9iamVjdCBzaGFwZSBmb3IgTnVtYmVyVXRpbHMuQ2hlY2tXaXRoaW5TdGVwcGVkQm91bmRzKCkuIEZvciBlZmZpY2llbmN5LCB0aGlzIG1ldGhvZCBhbHNvIHJldHVybnMgdGhlIGZvdW5kIHJlbWFpbmRlciBpZiB0aGUgZ2l2ZW5cclxuICogbnVtYmVyIHdhcyBOT1Qgd2l0aGluIHRoZSBzcGVjaWZpZWQgc3RlcHBlZCBib3VuZHMuXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIENoZWNrV2l0aGluU3RlcHBlZEJvdW5kc1Jlc3VsdCB7XHJcbiAgICBpc09rOiBib29sZWFuLFxyXG4gICAgcmVtYWluZGVyPzogbnVtYmVyXHJcbn0iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export class CoDocumentRight {
|
|
2
|
+
}
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY28tZG9jdW1lbnQtcmlnaHQuYm8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvcmUvbW9kZWwvY28tZG9jdW1lbnQtcmlnaHQuYm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsTUFBTSxPQUFPLGVBQWU7Q0FNM0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYmplY3RSaWdodFR5cGUgfSBmcm9tICcuLi9lbnVtL29iamVjdC1yaWdodC10eXBlLmVudW0nO1xuXG5leHBvcnQgY2xhc3MgQ29Eb2N1bWVudFJpZ2h0IHtcblxuICAgIHB1YmxpYyB1c2VyR3JvdXBJZDogbnVtYmVyO1xuICAgIHB1YmxpYyBkb2N1bWVudElkOiBudW1iZXI7XG4gICAgcHVibGljIHJpZ2h0TGV2ZWw6IE9iamVjdFJpZ2h0VHlwZTtcblxufVxuIl19
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { FileType } from '../enum/file-type.enum';
|
|
2
|
+
import { FileTypeInternal } from '../enum/file-type-internal.enum';
|
|
3
|
+
import { FileUtils } from '../utils/file-utils';
|
|
4
|
+
import { CoDocumentImageDisplayKind } from '../enum/co-document-image-display-kind.enum';
|
|
5
|
+
import { ObjectRightType } from '../enum/object-right-type.enum';
|
|
6
|
+
import { Subject } from 'rxjs';
|
|
7
|
+
// See DocumentDTO.
|
|
8
|
+
export class CoDocument {
|
|
9
|
+
constructor() {
|
|
10
|
+
// @ComplexArray(CoDocumentRight)
|
|
11
|
+
this.rights = [];
|
|
12
|
+
this.retailFormulas = [];
|
|
13
|
+
//
|
|
14
|
+
// @NoDbField()
|
|
15
|
+
// @ComplexField(Subject)
|
|
16
|
+
this.documentBodyChange = new Subject();
|
|
17
|
+
}
|
|
18
|
+
set documentId(value) {
|
|
19
|
+
this._documentId = value;
|
|
20
|
+
// this._idObject.docId = value;
|
|
21
|
+
}
|
|
22
|
+
get documentId() {
|
|
23
|
+
return this._documentId;
|
|
24
|
+
}
|
|
25
|
+
set documentBody(documentBody) {
|
|
26
|
+
const prev = this._documentBody;
|
|
27
|
+
this._documentBody = documentBody;
|
|
28
|
+
if (prev !== this._documentBody) {
|
|
29
|
+
this.documentBodyChange.next(this._documentBody);
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
get documentBody() {
|
|
33
|
+
return this._documentBody;
|
|
34
|
+
}
|
|
35
|
+
// @NoDbField()
|
|
36
|
+
// public idForLink: number;
|
|
37
|
+
// The internal file type of this document (the MimeType iOneJS uses internally)
|
|
38
|
+
get fileTypeInternal() {
|
|
39
|
+
if (!this._fileTypeInternal) {
|
|
40
|
+
const fileType = FileUtils.FileNameToFileTypeInternal(this.fileName);
|
|
41
|
+
if (fileType) {
|
|
42
|
+
this._fileTypeInternal = fileType;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return this._fileTypeInternal;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* The mimetype of this document: uses database-fetched this.mimeType, or calculates / guesses the mime type of the document
|
|
49
|
+
* if that was not set.
|
|
50
|
+
*/
|
|
51
|
+
get mimeTypeInternal() {
|
|
52
|
+
if (this._mimeTypeInternal) {
|
|
53
|
+
return this._mimeTypeInternal;
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
this._initMimetypeInternal();
|
|
57
|
+
return this._mimeTypeInternal;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
set mimeTypeInternal(value) {
|
|
61
|
+
this._mimeTypeInternal = value;
|
|
62
|
+
}
|
|
63
|
+
// Gives either the document-(prio) or the thumbnail body. Or undefined if not exist.
|
|
64
|
+
get bodyAsDataUri() {
|
|
65
|
+
if (this._documentBody) {
|
|
66
|
+
return this.documentBodyAsDataUri;
|
|
67
|
+
}
|
|
68
|
+
else if (this.thumbnailBody) {
|
|
69
|
+
return this.thumbnailBodyAsDataUri;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
// The body of this document as a data uri. The data uri also contains the mimetype in its string, and the fact that it's base64.
|
|
73
|
+
get documentBodyAsDataUri() {
|
|
74
|
+
try {
|
|
75
|
+
return FileUtils.DocumentBodyToDataUri(this.documentBody, this.mimeTypeInternal);
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
return "";
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
// The Thumbnailbody of this document as a data uri. The data uri also contains the mimetype in its string, and the fact that it's base64.
|
|
82
|
+
get thumbnailBodyAsDataUri() {
|
|
83
|
+
try {
|
|
84
|
+
return FileUtils.DocumentBodyToDataUri(this.thumbnailBody, this.mimeTypeInternal);
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
return "";
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
get isAvatar() {
|
|
91
|
+
return this.imageDisplayKind === CoDocumentImageDisplayKind.Avatar;
|
|
92
|
+
}
|
|
93
|
+
//
|
|
94
|
+
// @NoDbField()
|
|
95
|
+
// private _idObject: any = {};
|
|
96
|
+
get readonly() {
|
|
97
|
+
return this.rightLevel === ObjectRightType.ReadOnly;
|
|
98
|
+
}
|
|
99
|
+
getId() {
|
|
100
|
+
return this.documentId;
|
|
101
|
+
}
|
|
102
|
+
// Returns whether this is an image document or not.
|
|
103
|
+
isImageDocument() {
|
|
104
|
+
return (this.fileTypeInternal === FileTypeInternal.Image);
|
|
105
|
+
}
|
|
106
|
+
// @BoSerializerStep()
|
|
107
|
+
preventOverridingThumbnailToEmpty() {
|
|
108
|
+
if (!this.thumbnailBody) {
|
|
109
|
+
this.thumbnailBody = this._documentBody;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
// POSTCONDITION: this._mimeTypeInternal contains, to our best abilities, the true mimeType of this document, a-la "image/jpg"
|
|
113
|
+
_initMimetypeInternal() {
|
|
114
|
+
// if no fileType, default to FileType.Image for internal mimetype initialization
|
|
115
|
+
if ((this.fileType === FileType.Image || !this.fileType) && this.fileName) {
|
|
116
|
+
const fileExtension = this.fileName.substr(this.fileName.lastIndexOf(".") + 1);
|
|
117
|
+
this._mimeTypeInternal = "image/" + fileExtension;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY28tZG9jdW1lbnQuYm8uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2NvcmUvbW9kZWwvY28tZG9jdW1lbnQuYm8udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ2xELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUN6RixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDakUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUvQixtQkFBbUI7QUFDbkIsTUFBTSxPQUFPLFVBQVU7SUEySm5CO1FBN0dBLGlDQUFpQztRQUMxQixXQUFNLEdBQXNCLEVBQUUsQ0FBQztRQW9CL0IsbUJBQWMsR0FBYSxFQUFFLENBQUM7UUFxRXJDLEVBQUU7UUFDRixlQUFlO1FBQ2YseUJBQXlCO1FBQ1QsdUJBQWtCLEdBQW9CLElBQUksT0FBTyxFQUFVLENBQUM7SUFpQjVFLENBQUM7SUEzSkQsSUFBVyxVQUFVLENBQUMsS0FBYTtRQUMvQixJQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztRQUN6QixnQ0FBZ0M7SUFDcEMsQ0FBQztJQUVELElBQVcsVUFBVTtRQUNqQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQXlDRCxJQUFXLFlBQVksQ0FBQyxZQUFvQjtRQUN4QyxNQUFNLElBQUksR0FBVyxJQUFJLENBQUMsYUFBYSxDQUFDO1FBRXhDLElBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDO1FBRWxDLElBQUksSUFBSSxLQUFLLElBQUksQ0FB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QUFDLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUN2RSxNQUFNLGFBQWEsR0FBVyxJQUFJLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN2RixJQUFJLENBQUMsaUJBQWlCLEdBQUcsUUFBUSxHQUFHLGFBQWEsQ0FBQztTQUNyRDtJQUNMLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRhYmxlTmFtZSB9IGZyb20gJy4uL2VudW0vdGFibGUtbmFtZS5lbnVtJztcclxuaW1wb3J0IHsgQ29Eb2N1bWVudFR5cGUgfSBmcm9tICcuLi9lbnVtL2NvLWRvY3VtZW50LXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IEZpbGVUeXBlIH0gZnJvbSAnLi4vZW51bS9maWxlLXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IEZpbGVUeXBlSW50ZXJuYWwgfSBmcm9tICcuLi9lbnVtL2ZpbGUtdHlwZS1pbnRlcm5hbC5lbnVtJztcclxuaW1wb3J0IHsgRmlsZVV0aWxzIH0gZnJvbSAnLi4vdXRpbHMvZmlsZS11dGlscyc7XHJcbmltcG9ydCB7IENvRG9jdW1lbnRJbWFnZURpc3BsYXlLaW5kIH0gZnJvbSAnLi4vZW51bS9jby1kb2N1bWVudC1pbWFnZS1kaXNwbGF5LWtpbmQuZW51bSc7XHJcbmltcG9ydCB7IE9iamVjdFJpZ2h0VHlwZSB9IGZyb20gJy4uL2VudW0vb2JqZWN0LXJpZ2h0LXR5cGUuZW51bSc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQ29Eb2N1bWVudFJpZ2h0IH0gZnJvbSAnLi9jby1kb2N1bWVudC1yaWdodC5ibyc7XHJcbi8vIFNlZSBEb2N1bWVudERUTy5cclxuZXhwb3J0IGNsYXNzIENvRG9jdW1lbnQge1xyXG4gICAgcHVibGljIHNldCBkb2N1bWVudElkKHZhbHVlOiBudW1iZXIpIHtcclxuICAgICAgICB0aGlzLl9kb2N1bWVudElkID0gdmFsdWU7XHJcbiAgICAgICAgLy8gdGhpcy5faWRPYmplY3QuZG9jSWQgPSB2YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IGRvY3VtZW50SWQoKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fZG9jdW1lbnRJZDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBARGF0ZUZpZWxkKClcclxuICAgIHB1YmxpYyBjcmVhdGlvbkRhdGU6IERhdGU7XHJcbiAgICAvLyBARGF0ZUZpZWxkKClcclxuICAgIHB1YmxpYyBtb2RpZmllZERhdGU6IERhdGU7XHJcbiAgICAvLyBwdWJsaWMgY3JlYXRpb25Vc2VyOiBzdHJpbmc7XHJcbiAgICAvLyBwdWJsaWMgbW9kaWZpZWRVc2VyOiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgZGVzY3JpcHRpb246IHN0cmluZztcclxuICAgIHB1YmxpYyB0aHVtYm5haWxCb2R5OiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgdGFibGU6IFRhYmxlTmFtZTtcclxuICAgIHB1YmxpYyBrZXk6IHN0cmluZztcclxuICAgIHB1YmxpYyBmaWxlUGF0aDogc3RyaW5nO1xyXG4gICAgcHVibGljIGRvY3VtZW50VHlwZTogQ29Eb2N1bWVudFR5cGU7XHJcbiAgICAvKipcclxuICAgICAqIFRoZSBkYXRhYmFzZS1mZXRjaGVkIG1pbWV0eXBlIG9mIHRoaXMgZG9jdW1lbnQuIE5vdGU6IGlzIGJhcmVseSBzZXQgdG8gYSB2YWx1ZSwgYW5kIHdoZW4gaXQncyBzZXQsIGl0J3MgdXN1YWxseSBnYXJiYWdlIGRhdGEuXHJcbiAgICAgKiBVc2UgLm1pbWVUeXBlSW50ZXJuYWwgaWYgeW91IHdhbnQgdGhlIGJlc3QgZWR1Y2F0ZWQgZ3Vlc3Mgb2YgdGhlIHRydWUgbWltZSB0eXBlIG9mIHRoaXMgZG9jdW1lbnQuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBtaW1lVHlwZTogc3RyaW5nO1xyXG4gICAgcHVibGljIHB1YmxpY2F0aW9uOiBudW1iZXI7XHJcbiAgICBwdWJsaWMgZmlsZVNpemU6IHN0cmluZztcclxuICAgIHB1YmxpYyBmaWxlVHlwZTogRmlsZVR5cGU7XHJcbiAgICBwdWJsaWMgaXNMb2FkZWQ6IGJvb2xlYW47XHJcbiAgICBwdWJsaWMgaW5kZXg6IG51bWJlcjtcclxuICAgIHB1YmxpYyBpbWFnZURpbWVuc2lvbnM6IHN0cmluZztcclxuICAgIHB1YmxpYyB0aXRsZTogc3RyaW5nO1xyXG4gICAgLy8gQEJvb2xlYW5UZXh0KFwiVFwiKVxyXG4gICAgLy8gcHVibGljIGRvd25sb2FkYWJsZTogYm9vbGVhbjtcclxuICAgIC8vIEBCb29sZWFuVGV4dChcIlRcIilcclxuICAgIC8vIHB1YmxpYyBhdHRhY2hUb05vdGlmaWNhdGlvbjogYm9vbGVhbjtcclxuICAgIC8vIEBCb29sZWFuVGV4dChcIlRcIilcclxuICAgIC8vIEBEZWZhdWx0U2VuZFZhbHVlKFwiRlwiKVxyXG4gICAgLy8gcHVibGljIHBhdGhJc1VybDogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgLy8gcHVibGljIGltYWdlVHlwZTogc3RyaW5nO1xyXG4gICAgcHVibGljIGltYWdlRGlzcGxheUtpbmQ6IENvRG9jdW1lbnRJbWFnZURpc3BsYXlLaW5kO1xyXG4gICAgLy8gQENvbXBsZXhBcnJheShUYWcpXHJcbiAgICAvLyBwdWJsaWMgdGFnczogVGFnW10gPSBbXTtcclxuICAgIHB1YmxpYyByaWdodExldmVsOiBPYmplY3RSaWdodFR5cGU7XHJcbiAgICAvLyBAQ29tcGxleEFycmF5KENvRG9jdW1lbnRSaWdodClcclxuICAgIHB1YmxpYyByaWdodHM6IENvRG9jdW1lbnRSaWdodFtdID0gW107XHJcblxyXG4gICAgcHVibGljIHNldCBkb2N1bWVudEJvZHkoZG9jdW1lbnRCb2R5OiBzdHJpbmcpIHtcclxuICAgICAgICBjb25zdCBwcmV2OiBzdHJpbmcgPSB0aGlzLl9kb2N1bWVudEJvZHk7XHJcblxyXG4gICAgICAgIHRoaXMuX2RvY3VtZW50Qm9keSA9IGRvY3VtZW50Qm9keTtcclxuXHJcbiAgICAgICAgaWYgKHByZXYgIT09IHRoaXMuX2RvY3VtZW50Qm9keSkge1xyXG4gICAgICAgICAgICB0aGlzLmRvY3VtZW50Qm9keUNoYW5nZS5uZXh0KHRoaXMuX2RvY3VtZW50Qm9keSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgZG9jdW1lbnRCb2R5KCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX2RvY3VtZW50Qm9keTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBARGVmYXVsdFNlbmRWYWx1ZShbXSlcclxuICAgIC8vIEBDb21wbGV4QXJyYXkoQXJ0aWNsZVNlb1ZhbHVlKVxyXG4gICAgLy8gcHVibGljIHNlb1RpdGxlczogQXJ0aWNsZVNlb1ZhbHVlW10gPSBbXTtcclxuICAgIHB1YmxpYyBmaWxlTmFtZTogc3RyaW5nO1xyXG4gICAgcHVibGljIHJldGFpbEZvcm11bGFzOiBzdHJpbmdbXSA9IFtdO1xyXG5cclxuICAgIC8vIEBOb0RiRmllbGQoKVxyXG4gICAgLy8gcHVibGljIGlkRm9yTGluazogbnVtYmVyO1xyXG5cclxuICAgIC8vIFRoZSBpbnRlcm5hbCBmaWxlIHR5cGUgb2YgdGhpcyBkb2N1bWVudCAodGhlIE1pbWVUeXBlIGlPbmVKUyB1c2VzIGludGVybmFsbHkpXHJcbiAgICBwdWJsaWMgZ2V0IGZpbGVUeXBlSW50ZXJuYWwoKTogRmlsZVR5cGVJbnRlcm5hbCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLl9maWxlVHlwZUludGVybmFsKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZpbGVUeXBlOiBGaWxlVHlwZUludGVybmFsID0gRmlsZVV0aWxzLkZpbGVOYW1lVG9GaWxlVHlwZUludGVybmFsKHRoaXMuZmlsZU5hbWUpO1xyXG4gICAgICAgICAgICBpZiAoZmlsZVR5cGUpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuX2ZpbGVUeXBlSW50ZXJuYWwgPSBmaWxlVHlwZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gdGhpcy5fZmlsZVR5cGVJbnRlcm5hbDtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIFRoZSBtaW1ldHlwZSBvZiB0aGlzIGRvY3VtZW50OiB1c2VzIGRhdGFiYXNlLWZldGNoZWQgdGhpcy5taW1lVHlwZSwgb3IgY2FsY3VsYXRlcyAvIGd1ZXNzZXMgdGhlIG1pbWUgdHlwZSBvZiB0aGUgZG9jdW1lbnRcclxuICAgICAqIGlmIHRoYXQgd2FzIG5vdCBzZXQuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBnZXQgbWltZVR5cGVJbnRlcm5hbCgpOiBzdHJpbmcge1xyXG4gICAgICAgIGlmICh0aGlzLl9taW1lVHlwZUludGVybmFsKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9taW1lVHlwZUludGVybmFsO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2luaXRNaW1ldHlwZUludGVybmFsKCk7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9taW1lVHlwZUludGVybmFsO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgc2V0IG1pbWVUeXBlSW50ZXJuYWwodmFsdWU6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuX21pbWVUeXBlSW50ZXJuYWwgPSB2YWx1ZTtcclxuICAgIH1cclxuXHJcbiAgICAvLyBHaXZlcyBlaXRoZXIgdGhlIGRvY3VtZW50LShwcmlvKSBvciB0aGUgdGh1bWJuYWlsIGJvZHkuIE9yIHVuZGVmaW5lZCBpZiBub3QgZXhpc3QuXHJcbiAgICBwdWJsaWMgZ2V0IGJvZHlBc0RhdGFVcmkoKTogc3RyaW5nIHtcclxuICAgICAgICBpZiAodGhpcy5fZG9jdW1lbnRCb2R5KSB7XHJcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRvY3VtZW50Qm9keUFzRGF0YVVyaTtcclxuICAgICAgICB9IGVsc2UgaWYgKHRoaXMudGh1bWJuYWlsQm9keSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdGhpcy50aHVtYm5haWxCb2R5QXNEYXRhVXJpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBUaGUgYm9keSBvZiB0aGlzIGRvY3VtZW50IGFzIGEgZGF0YSB1cmkuIFRoZSBkYXRhIHVyaSBhbHNvIGNvbnRhaW5zIHRoZSBtaW1ldHlwZSBpbiBpdHMgc3RyaW5nLCBhbmQgdGhlIGZhY3QgdGhhdCBpdCdzIGJhc2U2NC5cclxuICAgIHB1YmxpYyBnZXQgZG9jdW1lbnRCb2R5QXNEYXRhVXJpKCk6IHN0cmluZyB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgcmV0dXJuIEZpbGVVdGlscy5Eb2N1bWVudEJvZHlUb0RhdGFVcmkodGhpcy5kb2N1bWVudEJvZHksIHRoaXMubWltZVR5cGVJbnRlcm5hbCk7XHJcbiAgICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcclxuICAgICAgICAgICAgcmV0dXJuIFwiXCI7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIC8vIFRoZSBUaHVtYm5haWxib2R5IG9mIHRoaXMgZG9jdW1lbnQgYXMgYSBkYXRhIHVyaS4gVGhlIGRhdGEgdXJpIGFsc28gY29udGFpbnMgdGhlIG1pbWV0eXBlIGluIGl0cyBzdHJpbmcsIGFuZCB0aGUgZmFjdCB0aGF0IGl0J3MgYmFzZTY0LlxyXG4gICAgcHVibGljIGdldCB0aHVtYm5haWxCb2R5QXNEYXRhVXJpKCk6IHN0cmluZyB7XHJcbiAgICAgICAgdHJ5IHtcclxuICAgICAgICAgICAgcmV0dXJuIEZpbGVVdGlscy5Eb2N1bWVudEJvZHlUb0RhdGFVcmkodGhpcy50aHVtYm5haWxCb2R5LCB0aGlzLm1pbWVUeXBlSW50ZXJuYWwpO1xyXG4gICAgICAgIH0gY2F0Y2ggKGVycm9yKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBcIlwiO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IGlzQXZhdGFyKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmltYWdlRGlzcGxheUtpbmQgPT09IENvRG9jdW1lbnRJbWFnZURpc3BsYXlLaW5kLkF2YXRhcjtcclxuICAgIH1cclxuXHJcbiAgICAvLyBARGJGaWVsZEFsaWFzKFwiZG9jdW1lbnRCb2R5XCIpXHJcbiAgICBwcml2YXRlIF9kb2N1bWVudEJvZHk6IHN0cmluZztcclxuICAgIC8vXHJcbiAgICAvLyBARGJGaWVsZEFsaWFzKFwiZG9jdW1lbnRJZFwiKVxyXG4gICAgcHJpdmF0ZSBfZG9jdW1lbnRJZDogbnVtYmVyO1xyXG4gICAgLy9cclxuICAgIC8vIEBOb0RiRmllbGQoKVxyXG4gICAgLy8gQENvbXBsZXhGaWVsZChTdWJqZWN0KVxyXG4gICAgcHVibGljIHJlYWRvbmx5IGRvY3VtZW50Qm9keUNoYW5nZTogU3ViamVjdDxzdHJpbmc+ID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xyXG5cclxuICAgIC8vIFRoZSBpbnRlcm5hbCByZXByZXNlbnRhdGlvbiBvZiB0aGUgTWltZVR5cGUsIHNlZSBlbnVtIE1pbWVUeXBlIChhY3R1YWwgbWltZVR5cGUgZmllbGQgaXMgbm90IGZpbGxlZCBpbiBkYiBvZnRlbilcclxuICAgIC8vIEBOb0RiRmllbGQoKVxyXG4gICAgcHJpdmF0ZSBfZmlsZVR5cGVJbnRlcm5hbDogRmlsZVR5cGVJbnRlcm5hbDtcclxuICAgIC8vIGVnIFwiaW1hZ2UvanBlZ1wiXHJcbiAgICAvLyBATm9EYkZpZWxkKClcclxuICAgIHByaXZhdGUgX21pbWVUeXBlSW50ZXJuYWw6IHN0cmluZztcclxuICAgIC8vXHJcbiAgICAvLyBATm9EYkZpZWxkKClcclxuICAgIC8vIHByaXZhdGUgX2lkT2JqZWN0OiBhbnkgPSB7fTtcclxuXHJcbiAgICBwdWJsaWMgZ2V0IHJlYWRvbmx5KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLnJpZ2h0TGV2ZWwgPT09IE9iamVjdFJpZ2h0VHlwZS5SZWFkT25seTtcclxuICAgIH1cclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0SWQoKTogYW55IHtcclxuICAgICAgICByZXR1cm4gdGhpcy5kb2N1bWVudElkO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFJldHVybnMgd2hldGhlciB0aGlzIGlzIGFuIGltYWdlIGRvY3VtZW50IG9yIG5vdC5cclxuICAgIHB1YmxpYyBpc0ltYWdlRG9jdW1lbnQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICh0aGlzLmZpbGVUeXBlSW50ZXJuYWwgPT09IEZpbGVUeXBlSW50ZXJuYWwuSW1hZ2UpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIEBCb1NlcmlhbGl6ZXJTdGVwKClcclxuICAgIHB1YmxpYyBwcmV2ZW50T3ZlcnJpZGluZ1RodW1ibmFpbFRvRW1wdHkoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLnRodW1ibmFpbEJvZHkpIHtcclxuICAgICAgICAgICAgdGhpcy50aHVtYm5haWxCb2R5ID0gdGhpcy5fZG9jdW1lbnRCb2R5O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBQT1NUQ09ORElUSU9OOiB0aGlzLl9taW1lVHlwZUludGVybmFsIGNvbnRhaW5zLCB0byBvdXIgYmVzdCBhYmlsaXRpZXMsIHRoZSB0cnVlIG1pbWVUeXBlIG9mIHRoaXMgZG9jdW1lbnQsIGEtbGEgXCJpbWFnZS9qcGdcIlxyXG4gICAgcHJpdmF0ZSBfaW5pdE1pbWV0eXBlSW50ZXJuYWwoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gaWYgbm8gZmlsZVR5cGUsIGRlZmF1bHQgdG8gRmlsZVR5cGUuSW1hZ2UgZm9yIGludGVybmFsIG1pbWV0eXBlIGluaXRpYWxpemF0aW9uXHJcbiAgICAgICAgaWYgKCh0aGlzLmZpbGVUeXBlID09PSBGaWxlVHlwZS5JbWFnZSB8fCAhdGhpcy5maWxlVHlwZSkgJiYgdGhpcy5maWxlTmFtZSkge1xyXG4gICAgICAgICAgICBjb25zdCBmaWxlRXh0ZW5zaW9uOiBzdHJpbmcgPSB0aGlzLmZpbGVOYW1lLnN1YnN0cih0aGlzLmZpbGVOYW1lLmxhc3RJbmRleE9mKFwiLlwiKSArIDEpO1xyXG4gICAgICAgICAgICB0aGlzLl9taW1lVHlwZUludGVybmFsID0gXCJpbWFnZS9cIiArIGZpbGVFeHRlbnNpb247XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
|