@colijnit/sharedcomponents 1.0.56 → 1.0.58
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 +8 -11
- package/bundles/colijnit-sharedcomponents.umd.js +10297 -0
- package/bundles/colijnit-sharedcomponents.umd.js.map +1 -0
- package/colijnit-sharedcomponents.d.ts +91 -0
- package/colijnit-sharedcomponents.metadata.json +1 -0
- package/esm2015/colijnit-sharedcomponents.js +92 -0
- package/esm2015/lib/assets/dictionary/text.properties.js +11 -0
- package/esm2015/lib/businessobject/build-images-and-documentation-result.js +2 -0
- package/esm2015/lib/businessobject/co-document-right.bo.js +3 -0
- package/esm2015/lib/businessobject/drag-drop-container-element.js +2 -0
- package/esm2015/lib/businessobject/drag-drop-container.js +7 -0
- package/esm2015/lib/components/activity-list/activity-list.component.js +130 -0
- package/esm2015/lib/components/activity-list/activity-list.module.js +24 -0
- package/esm2015/lib/components/app-file-dropzone/app-file-dropzone.component.js +47 -0
- package/esm2015/lib/components/app-file-dropzone/app-file-dropzone.module.js +20 -0
- package/esm2015/lib/components/date-planning/component/agenda/agenda-base-view.component.js +61 -0
- package/esm2015/lib/components/date-planning/component/agenda/agenda-day-view.component.js +36 -0
- package/esm2015/lib/components/date-planning/component/agenda/agenda-event.component.js +56 -0
- package/esm2015/lib/components/date-planning/component/agenda/agenda-events.component.js +47 -0
- package/esm2015/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.js +68 -0
- package/esm2015/lib/components/date-planning/component/agenda/agenda-header.component.js +243 -0
- package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-cell.component.js +36 -0
- package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.js +50 -0
- package/esm2015/lib/components/date-planning/component/agenda/agenda-hour-view.component.js +46 -0
- package/esm2015/lib/components/date-planning/component/agenda/agenda-month-view.component.js +61 -0
- package/esm2015/lib/components/date-planning/component/agenda/agenda-select-event.component.js +39 -0
- package/esm2015/lib/components/date-planning/component/agenda/agenda-view.component.js +35 -0
- package/esm2015/lib/components/date-planning/component/agenda/agenda-week-select-view.component.js +64 -0
- package/esm2015/lib/components/date-planning/component/agenda/agenda-week-view.component.js +48 -0
- package/esm2015/lib/components/date-planning/component/agenda/view-select.component.js +42 -0
- package/esm2015/lib/components/date-planning/component/calendar/calendar-all-months.component.js +34 -0
- package/esm2015/lib/components/date-planning/component/calendar/calendar-all-years.component.js +48 -0
- package/esm2015/lib/components/date-planning/component/calendar/calendar-header.component.js +107 -0
- package/esm2015/lib/components/date-planning/component/calendar/calendar-view.component.js +178 -0
- package/esm2015/lib/components/date-planning/component/calendar/calendar.component.js +34 -0
- package/esm2015/lib/components/date-planning/date-planning.component.js +113 -0
- package/esm2015/lib/components/date-planning/date-planning.module.js +63 -0
- package/esm2015/lib/components/docsign/component/signature/signature.component.js +75 -0
- package/esm2015/lib/components/docsign/component/signatures/signatures.component.js +44 -0
- package/esm2015/lib/components/docsign/docsign.component.js +242 -0
- package/esm2015/lib/components/docsign/docsign.module.js +23 -0
- package/esm2015/lib/components/file-upload/file-upload.component.js +189 -0
- package/esm2015/lib/components/file-upload/file-upload.module.js +25 -0
- package/esm2015/lib/components/file-upload-popup/file-upload-popup.component.js +397 -0
- package/esm2015/lib/components/file-upload-popup/file-upload-popup.module.js +30 -0
- package/esm2015/lib/components/files-upload/components/base-file-upload.component.js +469 -0
- package/esm2015/lib/components/files-upload/components/drag-drop-container.component.js +115 -0
- package/esm2015/lib/components/files-upload/files-upload.component.js +131 -0
- package/esm2015/lib/components/files-upload/files-upload.module.js +47 -0
- package/esm2015/lib/components/image-display/image-display.component.js +36 -0
- package/esm2015/lib/components/image-display/image-display.module.js +23 -0
- package/esm2015/lib/components/key-pad/key-pad.component.js +200 -0
- package/esm2015/lib/components/key-pad/key-pad.module.js +22 -0
- package/esm2015/lib/components/layout-switcher/layout-switcher.component.js +74 -0
- package/esm2015/lib/components/layout-switcher/layout-switcher.module.js +21 -0
- package/esm2015/lib/components/linear-gauge/co-linear-gauge.component.js +59 -0
- package/esm2015/lib/components/linear-gauge/co-linear-gauge.module.js +19 -0
- package/esm2015/lib/components/multi-property-toggler/multiple-property-toggler.component.js +89 -0
- package/esm2015/lib/components/multi-property-toggler/multiple-property-toggler.module.js +21 -0
- package/esm2015/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.js +79 -0
- package/esm2015/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.js +21 -0
- package/esm2015/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.js +85 -0
- package/esm2015/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.js +21 -0
- package/esm2015/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.js +64 -0
- package/esm2015/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.js +26 -0
- package/esm2015/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.js +40 -0
- package/esm2015/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.js +23 -0
- package/esm2015/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.js +61 -0
- package/esm2015/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.js +28 -0
- package/esm2015/lib/components/send-method-dialog/components/signature-button/signature-button.component.js +38 -0
- package/esm2015/lib/components/send-method-dialog/components/signature-button/signature-button.module.js +21 -0
- package/esm2015/lib/components/send-method-dialog/model/email-address-viewmodel.js +7 -0
- package/esm2015/lib/components/send-method-dialog/send-method-dialog.component.js +258 -0
- package/esm2015/lib/components/send-method-dialog/send-method-dialog.module.js +35 -0
- package/esm2015/lib/components/send-method-dialog/send-method-params.interface.js +2 -0
- package/esm2015/lib/components/send-method-dialog/service/send-method.service.js +59 -0
- package/esm2015/lib/components/simple-tags/simple-tags.component.js +229 -0
- package/esm2015/lib/components/simple-tags/simple-tags.module.js +26 -0
- package/esm2015/lib/components/statusbar/statusbar-popup.component.js +97 -0
- package/esm2015/lib/components/statusbar/statusbar.component.js +81 -0
- package/esm2015/lib/components/statusbar/statusbar.module.js +27 -0
- package/esm2015/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.js +47 -0
- package/esm2015/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.js +47 -0
- package/esm2015/lib/components/stock/components/order-stock-history/order-stock-history.component.js +47 -0
- package/esm2015/lib/components/stock/components/order-stock-tab/order-stock-tab.component.js +47 -0
- package/esm2015/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.js +47 -0
- package/esm2015/lib/components/stock/components/order-tab/order-tab.component.js +67 -0
- package/esm2015/lib/components/stock/components/stock-history/stock-history.component.js +53 -0
- package/esm2015/lib/components/stock/components/stock-location/stock-location.component.js +240 -0
- package/esm2015/lib/components/stock/components/stock-prognose/stock-prognose.component.js +52 -0
- package/esm2015/lib/components/stock/components/stock-tab/stock-tab.component.js +41 -0
- package/esm2015/lib/components/stock/localization/translation.js +63 -0
- package/esm2015/lib/components/stock/stock-history-tabs/stock-history-tabs.component.js +33 -0
- package/esm2015/lib/components/stock/stock-information/stock-information.component.js +48 -0
- package/esm2015/lib/components/stock/stock-information-grid/stock-information-grid.component.js +457 -0
- package/esm2015/lib/components/stock/stock-tabs/stock-tabs.component.js +241 -0
- package/esm2015/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.js +2 -0
- package/esm2015/lib/components/stock/stock-transfer/stock-change-amount.component.js +72 -0
- package/esm2015/lib/components/stock/stock-transfer/stock-transfer.component.js +149 -0
- package/esm2015/lib/components/stock/stock.component.js +193 -0
- package/esm2015/lib/components/stock/stock.module.js +80 -0
- package/esm2015/lib/components/stock-statusbar/stock-statusbar.component.js +23 -0
- package/esm2015/lib/components/stock-statusbar/stock-statusbar.module.js +19 -0
- package/esm2015/lib/components/tab-bar/tab-bar.component.js +88 -0
- package/esm2015/lib/components/tab-bar/tab-bar.module.js +21 -0
- package/esm2015/lib/components/tab-bar/tab.interface.js +2 -0
- package/esm2015/lib/components/tile-renderer/tile-render.component.js +80 -0
- package/esm2015/lib/components/tile-renderer/tile-render.module.js +26 -0
- package/esm2015/lib/decorator/input-boolean.decorator.js +34 -0
- package/esm2015/lib/enum/calendar-view.enum.js +9 -0
- package/esm2015/lib/enum/document-email-report.enum.js +18 -0
- package/esm2015/lib/enum/domain-multiple-name.enum.js +13 -0
- package/esm2015/lib/enum/file-type.js +14 -0
- package/esm2015/lib/enum/files-upload-config-objects.js +3 -0
- package/esm2015/lib/enum/gauge-color.enum.js +10 -0
- package/esm2015/lib/enum/icon.enum.js +44 -0
- package/esm2015/lib/enum/internal-param.enum.js +38 -0
- package/esm2015/lib/enum/keyboard-code.enum.js +32 -0
- package/esm2015/lib/enum/language-code.enum.js +8 -0
- package/esm2015/lib/enum/month.enum.js +17 -0
- package/esm2015/lib/enum/read-write-access-config-names.enum.js +2 -0
- package/esm2015/lib/enum/table-name.enum.js +86 -0
- package/esm2015/lib/enum/tag-category.enum.js +22 -0
- package/esm2015/lib/enum/tags-component-config-names.js +2 -0
- package/esm2015/lib/enum/thumb-three-way-state.js +19 -0
- package/esm2015/lib/enum/tile-size-type.js +7 -0
- package/esm2015/lib/enum/time-period.enum.js +11 -0
- package/esm2015/lib/event/co-drag-event.js +2 -0
- package/esm2015/lib/event/co-drop-event.js +2 -0
- package/esm2015/lib/interface/key-value-pair.js +2 -0
- package/esm2015/lib/interface/operation-callback-simple-function.js +4 -0
- package/esm2015/lib/localization/localization.module.js +19 -0
- package/esm2015/lib/localization/localize.pipe.js +26 -0
- package/esm2015/lib/localization/localize.service.js +30 -0
- package/esm2015/lib/localization/translation.js +3 -0
- package/esm2015/lib/model/agenda-event-per-day.model.js +6 -0
- package/esm2015/lib/model/agenda-event.model.js +8 -0
- package/esm2015/lib/model/agenda-null-objects.js +11 -0
- package/esm2015/lib/model/constant/all-months.js +17 -0
- package/esm2015/lib/model/date-range.js +5 -0
- package/esm2015/lib/model/day.model.js +7 -0
- package/esm2015/lib/model/icon-svg.js +43 -0
- package/esm2015/lib/model/month.model.js +11 -0
- package/esm2015/lib/model/send-method.js +8 -0
- package/esm2015/lib/model/settings.js +4 -0
- package/esm2015/lib/model/tag-tree-item.bo.js +16 -0
- package/esm2015/lib/model/time-window.bo.js +26 -0
- package/esm2015/lib/model/tree-object.js +15 -0
- package/esm2015/lib/model/week.model.js +6 -0
- package/esm2015/lib/model/weekday.model.js +10 -0
- package/esm2015/lib/pipe/array-number.pipe.js +15 -0
- package/esm2015/lib/pipe/file-type-image.pipe.js +51 -0
- package/esm2015/lib/pipe/master-pipes.js +9 -0
- package/esm2015/lib/pipe/ucfirst.pipe.js +16 -0
- package/esm2015/lib/service/dictionary.service.js +76 -0
- package/esm2015/lib/service/drag-drop.service.js +365 -0
- package/esm2015/lib/service/icon-cache.service.js +51 -0
- package/esm2015/lib/service/options.service.js +48 -0
- package/esm2015/lib/service/shared-connector.service.js +433 -0
- package/esm2015/lib/service/shared.service.js +60 -0
- package/esm2015/lib/service/stock.service.js +110 -0
- package/esm2015/lib/utils/array-utils.js +202 -0
- package/esm2015/lib/utils/calendar.utils.js +68 -0
- package/esm2015/lib/utils/check-precision-and-scale-result.js +2 -0
- package/esm2015/lib/utils/check-within-stepped-bounds-result.js +2 -0
- package/esm2015/lib/utils/co-document-shared-field-logic.js +50 -0
- package/esm2015/lib/utils/date-utils.js +264 -0
- package/esm2015/lib/utils/enum-utils.js +128 -0
- package/esm2015/lib/utils/function/not-nill.function.js +5 -0
- package/esm2015/lib/utils/is-nill.function.js +5 -0
- package/esm2015/lib/utils/map-utils.js +41 -0
- package/esm2015/lib/utils/number-utils.js +390 -0
- package/esm2015/lib/utils/object-utils.js +278 -0
- package/esm2015/lib/utils/ref-code-utils.js +49 -0
- package/esm2015/lib/utils/string-utils.js +93 -0
- package/esm2015/public-api.js +31 -0
- package/fesm2015/colijnit-sharedcomponents.js +10555 -0
- package/fesm2015/colijnit-sharedcomponents.js.map +1 -0
- package/lib/assets/dictionary/text.properties.d.ts +3 -0
- package/lib/businessobject/build-images-and-documentation-result.d.ts +5 -0
- package/lib/businessobject/co-document-right.bo.d.ts +6 -0
- package/lib/businessobject/drag-drop-container-element.d.ts +6 -0
- package/lib/businessobject/drag-drop-container.d.ts +6 -0
- package/lib/components/access/read-write-access.scss +25 -0
- package/lib/components/access/style/_layout.scss +23 -0
- package/lib/components/access/style/_theme.scss +4 -0
- package/lib/components/activity-list/activity-list.component.d.ts +33 -0
- package/lib/components/activity-list/activity-list.module.d.ts +2 -0
- package/lib/components/activity-list/style/_layout.scss +68 -0
- package/lib/components/activity-list/style/_theme.scss +4 -0
- package/lib/components/app-file-dropzone/app-file-dropzone.component.d.ts +14 -0
- package/lib/components/app-file-dropzone/app-file-dropzone.module.d.ts +2 -0
- package/lib/components/app-file-dropzone/style/_layout.scss +61 -0
- package/lib/components/app-file-dropzone/style/_theme.scss +4 -0
- package/lib/components/date-planning/component/agenda/agenda-base-view.component.d.ts +21 -0
- package/lib/components/date-planning/component/agenda/agenda-day-view.component.d.ts +7 -0
- package/lib/components/date-planning/component/agenda/agenda-event.component.d.ts +18 -0
- package/lib/components/date-planning/component/agenda/agenda-events.component.d.ts +13 -0
- package/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.d.ts +18 -0
- package/lib/components/date-planning/component/agenda/agenda-header.component.d.ts +48 -0
- package/lib/components/date-planning/component/agenda/agenda-hour-cell.component.d.ts +9 -0
- package/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.d.ts +8 -0
- package/lib/components/date-planning/component/agenda/agenda-hour-view.component.d.ts +7 -0
- package/lib/components/date-planning/component/agenda/agenda-month-view.component.d.ts +10 -0
- package/lib/components/date-planning/component/agenda/agenda-select-event.component.d.ts +12 -0
- package/lib/components/date-planning/component/agenda/agenda-view.component.d.ts +12 -0
- package/lib/components/date-planning/component/agenda/agenda-week-select-view.component.d.ts +10 -0
- package/lib/components/date-planning/component/agenda/agenda-week-view.component.d.ts +9 -0
- package/lib/components/date-planning/component/agenda/view-select.component.d.ts +11 -0
- package/lib/components/date-planning/component/calendar/calendar-all-months.component.d.ts +9 -0
- package/lib/components/date-planning/component/calendar/calendar-all-years.component.d.ts +9 -0
- package/lib/components/date-planning/component/calendar/calendar-header.component.d.ts +23 -0
- package/lib/components/date-planning/component/calendar/calendar-view.component.d.ts +31 -0
- package/lib/components/date-planning/component/calendar/calendar.component.d.ts +10 -0
- package/lib/components/date-planning/date-planning.component.d.ts +28 -0
- package/lib/components/date-planning/date-planning.module.d.ts +2 -0
- package/lib/components/docsign/component/signature/signature.component.d.ts +16 -0
- package/lib/components/docsign/component/signatures/signatures.component.d.ts +12 -0
- package/lib/components/docsign/docsign.component.d.ts +94 -0
- package/lib/components/docsign/docsign.module.d.ts +2 -0
- package/lib/components/docsign/style/_material-definition.scss +12 -0
- package/lib/components/file-upload/file-upload.component.d.ts +42 -0
- package/lib/components/file-upload/file-upload.module.d.ts +2 -0
- package/lib/components/file-upload/style/_layout.scss +59 -0
- package/lib/components/file-upload/style/_material-definition.scss +2 -0
- package/lib/components/file-upload/style/_theme.scss +4 -0
- package/lib/components/file-upload/style/material.scss +4 -0
- package/lib/components/file-upload-popup/file-upload-popup.component.d.ts +75 -0
- package/lib/components/file-upload-popup/file-upload-popup.module.d.ts +2 -0
- package/lib/components/file-upload-popup/style/_layout.scss +48 -0
- package/lib/components/file-upload-popup/style/_material-definition.scss +2 -0
- package/lib/components/file-upload-popup/style/_theme.scss +5 -0
- package/lib/components/files-upload/components/base-file-upload.component.d.ts +98 -0
- package/lib/components/files-upload/components/drag-drop-container.component.d.ts +34 -0
- package/lib/components/files-upload/files-upload.component.d.ts +32 -0
- package/lib/components/files-upload/files-upload.module.d.ts +2 -0
- package/lib/components/files-upload/style/_layout.scss +49 -0
- package/lib/components/files-upload/style/_theme.scss +5 -0
- package/lib/components/files-upload/style/material.scss +4 -0
- package/lib/components/image-display/image-display.component.d.ts +14 -0
- package/lib/components/image-display/image-display.module.d.ts +2 -0
- package/lib/components/image-display/style/_layout.scss +56 -0
- package/lib/components/image-display/style/_material-definition.scss +4 -0
- package/lib/components/image-display/style/_theme.scss +6 -0
- package/lib/components/key-pad/key-pad.component.d.ts +38 -0
- package/lib/components/key-pad/key-pad.module.d.ts +2 -0
- package/lib/components/layout-switcher/layout-switcher.component.d.ts +16 -0
- package/lib/components/layout-switcher/layout-switcher.module.d.ts +2 -0
- package/lib/components/linear-gauge/co-linear-gauge.component.d.ts +11 -0
- package/lib/components/linear-gauge/co-linear-gauge.module.d.ts +2 -0
- package/lib/components/multi-property-toggler/multiple-property-toggler.component.d.ts +27 -0
- package/lib/components/multi-property-toggler/multiple-property-toggler.module.d.ts +2 -0
- package/lib/components/multi-property-toggler/style/_layout.scss +24 -0
- package/lib/components/multi-property-toggler/style/_theme.scss +4 -0
- package/lib/components/multi-property-toggler/style/material.scss +4 -0
- package/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.d.ts +19 -0
- package/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.d.ts +2 -0
- package/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.d.ts +19 -0
- package/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.d.ts +2 -0
- package/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.d.ts +14 -0
- package/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.d.ts +2 -0
- package/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.d.ts +8 -0
- package/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.d.ts +2 -0
- package/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.d.ts +13 -0
- package/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.d.ts +2 -0
- package/lib/components/send-method-dialog/components/signature-button/signature-button.component.d.ts +12 -0
- package/lib/components/send-method-dialog/components/signature-button/signature-button.module.d.ts +2 -0
- package/lib/components/send-method-dialog/model/email-address-viewmodel.d.ts +5 -0
- package/lib/components/send-method-dialog/send-method-dialog.component.d.ts +71 -0
- package/lib/components/send-method-dialog/send-method-dialog.module.d.ts +2 -0
- package/lib/components/send-method-dialog/send-method-params.interface.d.ts +13 -0
- package/lib/components/send-method-dialog/service/send-method.service.d.ts +23 -0
- package/lib/components/simple-tags/simple-tags.component.d.ts +31 -0
- package/lib/components/simple-tags/simple-tags.module.d.ts +2 -0
- package/lib/components/simple-tags/style/material.scss +4 -0
- package/lib/components/statusbar/statusbar-popup.component.d.ts +21 -0
- package/lib/components/statusbar/statusbar.component.d.ts +26 -0
- package/lib/components/statusbar/statusbar.module.d.ts +2 -0
- package/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.d.ts +9 -0
- package/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.d.ts +9 -0
- package/lib/components/stock/components/order-stock-history/order-stock-history.component.d.ts +9 -0
- package/lib/components/stock/components/order-stock-tab/order-stock-tab.component.d.ts +11 -0
- package/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.d.ts +9 -0
- package/lib/components/stock/components/order-tab/order-tab.component.d.ts +20 -0
- package/lib/components/stock/components/stock-history/stock-history.component.d.ts +13 -0
- package/lib/components/stock/components/stock-location/stock-location.component.d.ts +50 -0
- package/lib/components/stock/components/stock-prognose/stock-prognose.component.d.ts +11 -0
- package/lib/components/stock/components/stock-tab/stock-tab.component.d.ts +9 -0
- package/lib/components/stock/localization/translation.d.ts +60 -0
- package/lib/components/stock/stock-history-tabs/stock-history-tabs.component.d.ts +7 -0
- package/lib/components/stock/stock-information/stock-information.component.d.ts +8 -0
- package/lib/components/stock/stock-information-grid/stock-information-grid.component.d.ts +75 -0
- package/lib/components/stock/stock-tabs/stock-tabs.component.d.ts +56 -0
- package/{projects/sharedcomponents/src/lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.ts → lib/components/stock/stock-transfer/co-drop-down-list-fields.interface.d.ts} +2 -2
- package/lib/components/stock/stock-transfer/stock-change-amount.component.d.ts +18 -0
- package/lib/components/stock/stock-transfer/stock-transfer.component.d.ts +42 -0
- package/lib/components/stock/stock.component.d.ts +57 -0
- package/lib/components/stock/stock.module.d.ts +2 -0
- package/lib/components/stock/style/material.scss +4 -0
- package/lib/components/stock-statusbar/stock-statusbar.component.d.ts +4 -0
- package/lib/components/stock-statusbar/stock-statusbar.module.d.ts +2 -0
- package/lib/components/stock-statusbar/style/_material-definition.scss +0 -0
- package/lib/components/stock-statusbar/style/_theme.scss +0 -0
- package/lib/components/stock-statusbar/style/material.scss +4 -0
- package/lib/components/tab-bar/style/_theme.scss +0 -0
- package/lib/components/tab-bar/style/material.scss +4 -0
- package/lib/components/tab-bar/tab-bar.component.d.ts +21 -0
- package/lib/components/tab-bar/tab-bar.module.d.ts +2 -0
- package/lib/components/tab-bar/tab.interface.d.ts +5 -0
- package/lib/components/tags/component/tag-join-label/style/material.scss +3 -0
- package/lib/components/tile-renderer/style/_layout.scss +90 -0
- package/lib/components/tile-renderer/style/_material-definition.scss +0 -0
- package/lib/components/tile-renderer/style/_theme.scss +4 -0
- package/lib/components/tile-renderer/style/material.scss +4 -0
- package/lib/components/tile-renderer/tile-render.component.d.ts +31 -0
- package/lib/components/tile-renderer/tile-render.module.d.ts +2 -0
- package/lib/decorator/input-boolean.decorator.d.ts +8 -0
- package/{projects/sharedcomponents/src/lib/enum/calendar-view.enum.ts → lib/enum/calendar-view.enum.d.ts} +2 -3
- package/lib/enum/document-email-report.enum.d.ts +15 -0
- package/lib/enum/domain-multiple-name.enum.d.ts +10 -0
- package/lib/enum/file-type.d.ts +7 -0
- package/lib/enum/files-upload-config-objects.d.ts +22 -0
- package/lib/enum/gauge-color.enum.d.ts +8 -0
- package/{projects/sharedcomponents/src/lib/enum/icon.enum.ts → lib/enum/icon.enum.d.ts} +8 -3
- package/lib/enum/internal-param.enum.d.ts +34 -0
- package/lib/enum/keyboard-code.enum.d.ts +30 -0
- package/lib/enum/language-code.enum.d.ts +6 -0
- package/{projects/sharedcomponents/src/lib/enum/month.enum.ts → lib/enum/month.enum.d.ts} +1 -2
- package/lib/enum/read-write-access-config-names.enum.d.ts +4 -0
- package/lib/enum/table-name.enum.d.ts +84 -0
- package/{projects/sharedcomponents/src/lib/enum/tag-category.enum.ts → lib/enum/tag-category.enum.d.ts} +1 -2
- package/lib/enum/tags-component-config-names.d.ts +4 -0
- package/lib/enum/thumb-three-way-state.d.ts +6 -0
- package/lib/enum/tile-size-type.d.ts +4 -0
- package/{projects/sharedcomponents/src/lib/enum/time-period.enum.ts → lib/enum/time-period.enum.d.ts} +1 -2
- package/lib/event/co-drag-event.d.ts +5 -0
- package/lib/event/co-drop-event.d.ts +8 -0
- package/lib/interface/key-value-pair.d.ts +4 -0
- package/lib/interface/operation-callback-simple-function.d.ts +4 -0
- package/lib/localization/localization.module.d.ts +2 -0
- package/lib/localization/localize.pipe.d.ts +7 -0
- package/lib/localization/localize.service.d.ts +7 -0
- package/lib/localization/translation.d.ts +2 -0
- package/lib/model/agenda-event-per-day.model.d.ts +5 -0
- package/lib/model/agenda-event.model.d.ts +17 -0
- package/lib/model/agenda-null-objects.d.ts +10 -0
- package/lib/model/constant/all-months.d.ts +2 -0
- package/lib/model/date-range.d.ts +7 -0
- package/lib/model/day.model.d.ts +8 -0
- package/lib/model/icon-svg.d.ts +4 -0
- package/lib/model/month.model.d.ts +5 -0
- package/lib/model/send-method.d.ts +7 -0
- package/lib/model/settings.d.ts +3 -0
- package/lib/model/tag-tree-item.bo.d.ts +18 -0
- package/lib/model/time-window.bo.d.ts +13 -0
- package/lib/model/tree-object.d.ts +8 -0
- package/lib/model/week.model.d.ts +4 -0
- package/lib/model/weekday.model.d.ts +16 -0
- package/lib/pipe/array-number.pipe.d.ts +4 -0
- package/lib/pipe/file-type-image.pipe.d.ts +12 -0
- package/lib/pipe/master-pipes.d.ts +1 -0
- package/lib/pipe/ucfirst.pipe.d.ts +4 -0
- package/lib/service/dictionary.service.d.ts +21 -0
- package/lib/service/drag-drop.service.d.ts +86 -0
- package/lib/service/icon-cache.service.d.ts +18 -0
- package/lib/service/options.service.d.ts +13 -0
- package/lib/service/shared-connector.service.d.ts +55 -0
- package/lib/service/shared.service.d.ts +18 -0
- package/lib/service/stock.service.d.ts +41 -0
- package/{projects/sharedcomponents/src/lib → lib}/style/_variables.scss +1 -1
- package/lib/utils/array-utils.d.ts +63 -0
- package/lib/utils/calendar.utils.d.ts +10 -0
- package/{projects/sharedcomponents/src/lib/utils/check-precision-and-scale-result.ts → lib/utils/check-precision-and-scale-result.d.ts} +0 -1
- package/lib/utils/co-document-shared-field-logic.d.ts +7 -0
- package/lib/utils/date-utils.d.ts +44 -0
- package/lib/utils/enum-utils.d.ts +31 -0
- package/lib/utils/function/not-nill.function.d.ts +1 -0
- package/lib/utils/is-nill.function.d.ts +1 -0
- package/lib/utils/map-utils.d.ts +16 -0
- package/lib/utils/number-utils.d.ts +125 -0
- package/lib/utils/object-utils.d.ts +40 -0
- package/lib/utils/ref-code-utils.d.ts +10 -0
- package/lib/utils/string-utils.d.ts +38 -0
- package/package.json +31 -68
- package/{projects/sharedcomponents/src/public-api.ts → public-api.d.ts} +4 -4
- package/.browserslistrc +0 -16
- package/.editorconfig +0 -16
- package/.vscode/extensions.json +0 -4
- package/.vscode/launch.json +0 -20
- package/.vscode/tasks.json +0 -42
- package/Sharedcomponents.iml +0 -11
- package/angular.json +0 -177
- package/custom-login-bundle.webpack.config.js +0 -3
- package/karma.conf.js +0 -44
- package/move-assets.js +0 -14
- package/projects/sharedcomponents/.browserslistrc +0 -16
- package/projects/sharedcomponents/README.md +0 -24
- package/projects/sharedcomponents/karma.conf.js +0 -44
- package/projects/sharedcomponents/ng-package.json +0 -17
- package/projects/sharedcomponents/package.json +0 -23
- package/projects/sharedcomponents/src/lib/assets/dictionary/text.properties.ts +0 -8
- package/projects/sharedcomponents/src/lib/assets/icons/account.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/angle_left_solid.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/angle_right_solid.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/arrow_fat_right.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/arrow_point_left.svg +0 -8
- package/projects/sharedcomponents/src/lib/assets/icons/arrow_point_right.svg +0 -4
- package/projects/sharedcomponents/src/lib/assets/icons/at_solid.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/bring_forward_regular.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/check_duotone.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/check_round.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/cross_skinny.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/delete_left_regular.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/delivery_truck.svg +0 -12
- package/projects/sharedcomponents/src/lib/assets/icons/email.svg +0 -5
- package/projects/sharedcomponents/src/lib/assets/icons/envelope_regular.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/eye_regular.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/file_export_regular.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/file_export_solid.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/file_pdf_regular.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/file_pdf_solid.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/file_signature_regular.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/house_blank_regular.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/lock.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/message_sms_regular.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/message_sms_solid.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/pdf.svg +0 -15
- package/projects/sharedcomponents/src/lib/assets/icons/print.svg +0 -10
- package/projects/sharedcomponents/src/lib/assets/icons/print_regular.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/print_solid.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/signature_field.svg +0 -9
- package/projects/sharedcomponents/src/lib/assets/icons/tag_regular.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/x_solid.svg +0 -1
- package/projects/sharedcomponents/src/lib/assets/icons/xml.svg +0 -1
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-base-view.component.ts +0 -68
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-day-view.component.ts +0 -35
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-event.component.ts +0 -73
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-events.component.ts +0 -53
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-half-hour-cell.component.ts +0 -81
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-header.component.ts +0 -275
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-cell.component.ts +0 -38
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-view-labels.component.ts +0 -50
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-hour-view.component.ts +0 -46
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-month-view.component.ts +0 -65
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-select-event.component.ts +0 -39
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-view.component.ts +0 -41
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-week-select-view.component.ts +0 -63
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/agenda-week-view.component.ts +0 -50
- package/projects/sharedcomponents/src/lib/components/date-planning/component/agenda/view-select.component.ts +0 -43
- package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-all-months.component.ts +0 -37
- package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-all-years.component.ts +0 -52
- package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-header.component.ts +0 -123
- package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar-view.component.ts +0 -200
- package/projects/sharedcomponents/src/lib/components/date-planning/component/calendar/calendar.component.ts +0 -35
- package/projects/sharedcomponents/src/lib/components/date-planning/date-planning.component.ts +0 -141
- package/projects/sharedcomponents/src/lib/components/date-planning/date-planning.module.ts +0 -61
- package/projects/sharedcomponents/src/lib/components/docsign/component/signature/signature.component.ts +0 -82
- package/projects/sharedcomponents/src/lib/components/docsign/component/signatures/signatures.component.ts +0 -50
- package/projects/sharedcomponents/src/lib/components/docsign/docsign.component.ts +0 -270
- package/projects/sharedcomponents/src/lib/components/docsign/docsign.module.ts +0 -22
- package/projects/sharedcomponents/src/lib/components/key-pad/key-pad.component.ts +0 -216
- package/projects/sharedcomponents/src/lib/components/key-pad/key-pad.module.ts +0 -20
- package/projects/sharedcomponents/src/lib/components/layout-switcher/layout-switcher.component.ts +0 -98
- package/projects/sharedcomponents/src/lib/components/layout-switcher/layout-switcher.module.ts +0 -21
- package/projects/sharedcomponents/src/lib/components/linear-gauge/co-linear-gauge.component.ts +0 -57
- package/projects/sharedcomponents/src/lib/components/linear-gauge/co-linear-gauge.module.ts +0 -17
- package/projects/sharedcomponents/src/lib/components/login/components/login-base.component.ts +0 -98
- package/projects/sharedcomponents/src/lib/components/login/components/login-change-password.component.ts +0 -194
- package/projects/sharedcomponents/src/lib/components/login/components/login-mfa-code-entry.component.ts +0 -41
- package/projects/sharedcomponents/src/lib/components/login/components/login-mfa-code-setup.component.ts +0 -44
- package/projects/sharedcomponents/src/lib/components/login/components/login-username-password.component.ts +0 -167
- package/projects/sharedcomponents/src/lib/components/login/localization/login-translation.ts +0 -15
- package/projects/sharedcomponents/src/lib/components/login/login.component.ts +0 -137
- package/projects/sharedcomponents/src/lib/components/login/login.module.ts +0 -53
- package/projects/sharedcomponents/src/lib/components/login/service/login-adapter.service.ts +0 -58
- package/projects/sharedcomponents/src/lib/components/login/service/login.service.ts +0 -50
- package/projects/sharedcomponents/src/lib/components/screen-config-generator/enums/field-type.enum.ts +0 -9
- package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Config.ts +0 -6
- package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Field.ts +0 -8
- package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Header.ts +0 -8
- package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Module.ts +0 -6
- package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/Rubric.ts +0 -10
- package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/ScreenConfig.ts +0 -9
- package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/SubCat.ts +0 -9
- package/projects/sharedcomponents/src/lib/components/screen-config-generator/models/SubRubric.ts +0 -8
- package/projects/sharedcomponents/src/lib/components/screen-config-generator/screen-config-generator.component.ts +0 -539
- package/projects/sharedcomponents/src/lib/components/screen-config-generator/screen-config-generator.module.ts +0 -21
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/layout-selection/layout-selection.component.ts +0 -91
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/layout-selection/layout-selection.module.ts +0 -19
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/printer-selection/printer-selection.component.ts +0 -84
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/printer-selection/printer-selection.module.ts +0 -19
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-email/send-method-email.component.ts +0 -63
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-email/send-method-email.module.ts +0 -24
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.component.ts +0 -38
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-pdf/send-method-pdf.module.ts +0 -21
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.component.ts +0 -60
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/send-method-printer/send-method-printer.module.ts +0 -26
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/signature-button/signature-button.component.ts +0 -42
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/components/signature-button/signature-button.module.ts +0 -19
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/model/email-address-viewmodel.ts +0 -9
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/send-method-dialog.component.ts +0 -325
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/send-method-dialog.module.ts +0 -32
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/send-method-params.interface.ts +0 -13
- package/projects/sharedcomponents/src/lib/components/send-method-dialog/service/send-method.service.ts +0 -63
- package/projects/sharedcomponents/src/lib/components/simple-tags/simple-tags.component.ts +0 -243
- package/projects/sharedcomponents/src/lib/components/simple-tags/simple-tags.module.ts +0 -24
- package/projects/sharedcomponents/src/lib/components/statusbar/statusbar-popup.component.ts +0 -100
- package/projects/sharedcomponents/src/lib/components/statusbar/statusbar.component.ts +0 -107
- package/projects/sharedcomponents/src/lib/components/statusbar/statusbar.module.ts +0 -25
- package/projects/sharedcomponents/src/lib/components/stock/components/allocation-stock-history/allocation-stock-history.component.ts +0 -45
- package/projects/sharedcomponents/src/lib/components/stock/components/order-commission-stock-history/order-commission-stock-history.component.ts +0 -45
- package/projects/sharedcomponents/src/lib/components/stock/components/order-stock-history/order-stock-history.component.ts +0 -45
- package/projects/sharedcomponents/src/lib/components/stock/components/order-stock-tab/order-stock-tab.component.ts +0 -43
- package/projects/sharedcomponents/src/lib/components/stock/components/order-supply-stock-history/order-supply-stock-history.component.ts +0 -45
- package/projects/sharedcomponents/src/lib/components/stock/components/order-tab/order-tab.component.ts +0 -71
- package/projects/sharedcomponents/src/lib/components/stock/components/stock-history/stock-history.component.ts +0 -52
- package/projects/sharedcomponents/src/lib/components/stock/components/stock-location/stock-location.component.ts +0 -276
- package/projects/sharedcomponents/src/lib/components/stock/components/stock-prognose/stock-prognose.component.ts +0 -49
- package/projects/sharedcomponents/src/lib/components/stock/components/stock-tab/stock-tab.component.ts +0 -40
- package/projects/sharedcomponents/src/lib/components/stock/localization/translation.ts +0 -60
- package/projects/sharedcomponents/src/lib/components/stock/stock-history-tabs/stock-history-tabs.component.ts +0 -32
- package/projects/sharedcomponents/src/lib/components/stock/stock-information/stock-information.component.ts +0 -56
- package/projects/sharedcomponents/src/lib/components/stock/stock-information-grid/stock-information-grid.component.ts +0 -500
- package/projects/sharedcomponents/src/lib/components/stock/stock-tabs/stock-tabs.component.ts +0 -276
- package/projects/sharedcomponents/src/lib/components/stock/stock-transfer/stock-change-amount.component.ts +0 -77
- package/projects/sharedcomponents/src/lib/components/stock/stock-transfer/stock-transfer.component.ts +0 -178
- package/projects/sharedcomponents/src/lib/components/stock/stock.component.ts +0 -228
- package/projects/sharedcomponents/src/lib/components/stock/stock.module.ts +0 -97
- package/projects/sharedcomponents/src/lib/components/stock-statusbar/stock-statusbar.component.ts +0 -23
- package/projects/sharedcomponents/src/lib/components/stock-statusbar/stock-statusbar.module.ts +0 -17
- package/projects/sharedcomponents/src/lib/components/tab-bar/tab-bar.component.ts +0 -106
- package/projects/sharedcomponents/src/lib/components/tab-bar/tab-bar.module.ts +0 -20
- package/projects/sharedcomponents/src/lib/components/tab-bar/tab.interface.ts +0 -5
- package/projects/sharedcomponents/src/lib/components/tags/component/tag-join-label/tag-join-label.component.ts +0 -61
- package/projects/sharedcomponents/src/lib/components/tags/component/tag-label/tag-label.component.ts +0 -47
- package/projects/sharedcomponents/src/lib/components/tags/component/treeview/model/tree-view-node-item.ts +0 -132
- package/projects/sharedcomponents/src/lib/components/tags/component/treeview/treeview.component.ts +0 -258
- package/projects/sharedcomponents/src/lib/components/tags/tags.component.ts +0 -192
- package/projects/sharedcomponents/src/lib/components/tags/tags.module.ts +0 -27
- package/projects/sharedcomponents/src/lib/directives/click-outside.directive.ts +0 -25
- package/projects/sharedcomponents/src/lib/enum/gauge-color.enum.ts +0 -8
- package/projects/sharedcomponents/src/lib/enum/keyboard-code.enum.ts +0 -30
- package/projects/sharedcomponents/src/lib/enum/language-code.enum.ts +0 -6
- package/projects/sharedcomponents/src/lib/enum/login-component-extra-action-type.enum.ts +0 -4
- package/projects/sharedcomponents/src/lib/enum/login-component-page.type.enum.ts +0 -6
- package/projects/sharedcomponents/src/lib/enum/login-component-query-variables-name.enum.ts +0 -5
- package/projects/sharedcomponents/src/lib/enum/thumb-three-way-state.ts +0 -18
- package/projects/sharedcomponents/src/lib/localization/localization.module.ts +0 -17
- package/projects/sharedcomponents/src/lib/localization/localize.pipe.ts +0 -21
- package/projects/sharedcomponents/src/lib/localization/localize.service.ts +0 -28
- package/projects/sharedcomponents/src/lib/localization/translation.ts +0 -2
- package/projects/sharedcomponents/src/lib/model/agenda-event-per-day.model.ts +0 -6
- package/projects/sharedcomponents/src/lib/model/agenda-event.model.ts +0 -19
- package/projects/sharedcomponents/src/lib/model/agenda-null-objects.ts +0 -11
- package/projects/sharedcomponents/src/lib/model/constant/all-months.ts +0 -17
- package/projects/sharedcomponents/src/lib/model/date-range.ts +0 -10
- package/projects/sharedcomponents/src/lib/model/day.model.ts +0 -9
- package/projects/sharedcomponents/src/lib/model/icon-svg.ts +0 -37
- package/projects/sharedcomponents/src/lib/model/month.model.ts +0 -11
- package/projects/sharedcomponents/src/lib/model/send-method.ts +0 -13
- package/projects/sharedcomponents/src/lib/model/settings.ts +0 -5
- package/projects/sharedcomponents/src/lib/model/tag-tree-item.bo.ts +0 -28
- package/projects/sharedcomponents/src/lib/model/time-window.bo.ts +0 -21
- package/projects/sharedcomponents/src/lib/model/tree-object.ts +0 -13
- package/projects/sharedcomponents/src/lib/model/tree-view-default.model.ts +0 -107
- package/projects/sharedcomponents/src/lib/model/tree-view-node-default.model.ts +0 -196
- package/projects/sharedcomponents/src/lib/model/tree-view-node-item-options.model.ts +0 -12
- package/projects/sharedcomponents/src/lib/model/tree-view-node.model.ts +0 -150
- package/projects/sharedcomponents/src/lib/model/tree-view.model.ts +0 -57
- package/projects/sharedcomponents/src/lib/model/week.model.ts +0 -5
- package/projects/sharedcomponents/src/lib/model/weekday.model.ts +0 -17
- package/projects/sharedcomponents/src/lib/pipe/array-number.pipe.ts +0 -14
- package/projects/sharedcomponents/src/lib/pipe/master-pipes.ts +0 -7
- package/projects/sharedcomponents/src/lib/pipe/ucfirst.pipe.ts +0 -14
- package/projects/sharedcomponents/src/lib/service/dictionary.service.ts +0 -86
- package/projects/sharedcomponents/src/lib/service/icon-cache.service.ts +0 -51
- package/projects/sharedcomponents/src/lib/service/options.service.ts +0 -43
- package/projects/sharedcomponents/src/lib/service/shared-connector.service.ts +0 -401
- package/projects/sharedcomponents/src/lib/service/shared-initializer.service.ts +0 -29
- package/projects/sharedcomponents/src/lib/service/shared.service.ts +0 -49
- package/projects/sharedcomponents/src/lib/service/stock.service.ts +0 -124
- package/projects/sharedcomponents/src/lib/utils/array-utils.ts +0 -225
- package/projects/sharedcomponents/src/lib/utils/calendar.utils.ts +0 -75
- package/projects/sharedcomponents/src/lib/utils/css-utils.ts +0 -275
- package/projects/sharedcomponents/src/lib/utils/date-utils.ts +0 -302
- package/projects/sharedcomponents/src/lib/utils/function/not-nill.function.ts +0 -4
- package/projects/sharedcomponents/src/lib/utils/is-nill.function.ts +0 -4
- package/projects/sharedcomponents/src/lib/utils/map-utils.ts +0 -44
- package/projects/sharedcomponents/src/lib/utils/number-utils.ts +0 -439
- package/projects/sharedcomponents/src/lib/utils/object-utils.ts +0 -310
- package/projects/sharedcomponents/src/lib/utils/string-utils.ts +0 -67
- package/projects/sharedcomponents/src/lib/utils/tree-utils.ts +0 -63
- package/projects/sharedcomponents/src/test.ts +0 -27
- package/projects/sharedcomponents/tsconfig.lib.json +0 -18
- package/projects/sharedcomponents/tsconfig.lib.prod.json +0 -10
- package/projects/sharedcomponents/tsconfig.spec.json +0 -17
- package/script/create-bundle-version.js +0 -19
- package/script/merge-icons.js +0 -39
- package/src/app/app.component.scss +0 -31
- package/src/app/app.component.spec.ts +0 -31
- package/src/app/app.component.ts +0 -454
- package/src/app/app.module.ts +0 -69
- package/src/app/bundle/index.html +0 -14
- package/src/app/bundle/login/login-bundle.component.scss +0 -6
- package/src/app/bundle/login/login-bundle.component.ts +0 -111
- package/src/app/bundle/login/login-bundle.module.ts +0 -30
- package/src/app/bundle/main-login-bundle.ts +0 -11
- package/src/app/bundle/polyfills.ts +0 -63
- package/src/app/test-data.service.ts +0 -60
- package/src/environments/environment.bundle.prod.ts +0 -3
- 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 -53
- package/src/styles.scss +0 -54
- package/src/test.ts +0 -26
- package/tsconfig.app.json +0 -15
- package/tsconfig.bundle.json +0 -38
- package/tsconfig.json +0 -64
- package/tsconfig.spec.json +0 -18
- package/webpack.login.bundle.config.js +0 -32
- /package/{projects/sharedcomponents/src/lib/components/docsign → lib/components/access}/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib/components/stock-statusbar → lib/components/access}/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib/components/date-planning → lib/components/activity-list}/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib/components/key-pad → lib/components/activity-list}/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib/components/screen-config-generator → lib/components/app-file-dropzone}/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib/components/stock → lib/components/app-file-dropzone}/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/date-planning/component/agenda/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/date-planning/component/agenda/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/date-planning/component/agenda/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/date-planning/component/agenda/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/date-planning/component/calendar/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/date-planning/component/calendar/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/date-planning/component/calendar/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/date-planning/component/calendar/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/date-planning/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib/components/stock-statusbar → lib/components/date-planning}/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/date-planning/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/date-planning/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/docsign/component/signature/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/docsign/component/signature/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/docsign/component/signature/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/docsign/component/signature/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/docsign/component/signatures/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/docsign/component/signatures/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/docsign/component/signatures/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/docsign/component/signatures/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/docsign/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/docsign/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/docsign/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib/components/tab-bar → lib/components/file-upload-popup}/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib/components/stock-statusbar/style/_theme.scss → lib/components/files-upload/style/_material-definition.scss} +0 -0
- /package/{projects/sharedcomponents/src/lib/components/tags/component → lib/components/image-display}/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/key-pad/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/key-pad/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/key-pad/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib/components/login → lib/components/key-pad}/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/layout-switcher/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/layout-switcher/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/layout-switcher/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/layout-switcher/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/linear-gauge/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/linear-gauge/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/linear-gauge/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/linear-gauge/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/login/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/login/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/login/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib/components/screen-config-generator → lib/components/login}/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib/components/tab-bar/style/_theme.scss → lib/components/multi-property-toggler/style/_material-definition.scss} +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/screen-config-generator/style/_layout.scss +0 -0
- /package/{src/assets/.gitkeep → lib/components/screen-config-generator/style/_material-definition.scss} +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/screen-config-generator/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib/components/simple-tags → lib/components/screen-config-generator}/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/layout-selection/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/layout-selection/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/layout-selection/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/layout-selection/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/printer-selection/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/printer-selection/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/printer-selection/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/printer-selection/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/send-method-email/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/send-method-email/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/send-method-email/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/send-method-email/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/send-method-pdf/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/send-method-pdf/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/send-method-pdf/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/send-method-pdf/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/send-method-printer/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/send-method-printer/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/send-method-printer/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/send-method-printer/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/signature-button/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/signature-button/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/signature-button/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/components/signature-button/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/send-method-dialog/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/simple-tags/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/simple-tags/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/simple-tags/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/statusbar/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/statusbar/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/statusbar/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/statusbar/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/stock/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/stock/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/stock/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/stock-statusbar/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/tab-bar/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/tab-bar/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/tags/component/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/tags/component/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/tags/component/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib/components/tags/component/tag-join-label → lib/components/tags/component}/style/material.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/tags/component/tag-join-label/style/_layout.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/tags/component/tag-join-label/style/_material-definition.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/components/tags/component/tag-join-label/style/_theme.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/style/_mixin.scss +0 -0
- /package/{projects/sharedcomponents/src/lib → lib}/style/sharedcomponents-globals.scss +0 -0
- /package/{projects/sharedcomponents/src/lib/utils/check-within-stepped-bounds-result.ts → lib/utils/check-within-stepped-bounds-result.d.ts} +0 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { EventEmitter, Injectable } from "@angular/core";
|
|
3
|
+
import { SharedConnectorService } from "./shared-connector.service";
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "./shared-connector.service";
|
|
6
|
+
export class StockService {
|
|
7
|
+
constructor(_sharedService) {
|
|
8
|
+
this._sharedService = _sharedService;
|
|
9
|
+
this.warehouseSelected = new EventEmitter();
|
|
10
|
+
}
|
|
11
|
+
// public async getPrintStockStickers(data: PrintStockStickers): Promise<void> {
|
|
12
|
+
// await this._sharedService.getPrintStockStickers(data);
|
|
13
|
+
// }
|
|
14
|
+
// public async getPrintPriceStickers(data: PrintPriceStickers): Promise<void> {
|
|
15
|
+
// await this._sharedService.getPrintPriceStickers(data);
|
|
16
|
+
// }
|
|
17
|
+
getStockHistory(data) {
|
|
18
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
return yield this._sharedService.getStockHistory(data);
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
getStockInformation(data) {
|
|
23
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
24
|
+
return yield this._sharedService.getStockInformation(data);
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
// public async getStockStickerPrintLayouts(data: StockStickersPrintLayouts): Promise<StockStickersPrintLayouts[]> {
|
|
28
|
+
// return await this._connector.getStockStickerPrintLayouts(data);
|
|
29
|
+
// }
|
|
30
|
+
getArticleDetails(data) {
|
|
31
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
32
|
+
return yield this._sharedService.getArticleDetails(data);
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
updateArticleDetails(data) {
|
|
36
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
37
|
+
return yield this._sharedService.updateArticleDetails(data);
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
getStockState() {
|
|
41
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
42
|
+
return yield this._sharedService.getStockStatus();
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
getArtStockStatus(goodId, branchNo, requestedAmount, warehouseId) {
|
|
46
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
47
|
+
return yield this._sharedService.getArtStockStatus(goodId, branchNo, requestedAmount, warehouseId);
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
// public async getStockStickerTemplates(data: StockStickersPrintLayouts): Promise<StockStickersPrintLayouts[]> {
|
|
51
|
+
// return await this._sharedService.getStockStickerTemplates(data);
|
|
52
|
+
// }
|
|
53
|
+
getStockManagementWarehouses() {
|
|
54
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
55
|
+
return yield this._sharedService.getStockManagementWarehouses();
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
getStockManagementLocations(warehouseNo) {
|
|
59
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
60
|
+
return yield this._sharedService.getStockManagementLocations(warehouseNo);
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
// public async getOrderConfirmationDefaultSendMethod(relationId: number): Promise<number> {
|
|
64
|
+
// return await this._sharedService.getOrderConfirmationDefaultSendMethod(relationId);
|
|
65
|
+
// }
|
|
66
|
+
// public async getDefaultEmailAddressListForOrderConfirmation(transactionUUID: string): Promise<string[]> {
|
|
67
|
+
// return await this._sharedService.getDefaultEmailAddressListForOrderConfirmation(transactionUUID);
|
|
68
|
+
// }
|
|
69
|
+
// public async getPurchaseOrderEmailLayouts(transactionUUID: string): Promise<StockStickersEmailLayouts[]> {
|
|
70
|
+
// return await this._sharedService.getPurchaseOrderEmailLayouts(transactionUUID);
|
|
71
|
+
// }
|
|
72
|
+
getArticleTransaction(data) {
|
|
73
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
74
|
+
return yield this._sharedService.getArticleTransaction(data);
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
stockPrognose(goodId, warehouseNumber) {
|
|
78
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
79
|
+
return yield this._sharedService.getStockPrognose(goodId, warehouseNumber);
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
lockArticleDetails(data) {
|
|
83
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
84
|
+
return yield this._sharedService.lockArticleDetails(data);
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
commit() {
|
|
88
|
+
return this._sharedService.commit();
|
|
89
|
+
}
|
|
90
|
+
getArticleFlat(sku) {
|
|
91
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
92
|
+
return yield this._sharedService.getArticleFlat(sku);
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
searchArticles(request) {
|
|
96
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
97
|
+
return yield this._sharedService.searchArticles(request);
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
StockService.ɵprov = i0.ɵɵdefineInjectable({ factory: function StockService_Factory() { return new StockService(i0.ɵɵinject(i1.SharedConnectorService)); }, token: StockService, providedIn: "root" });
|
|
102
|
+
StockService.decorators = [
|
|
103
|
+
{ type: Injectable, args: [{
|
|
104
|
+
providedIn: 'root',
|
|
105
|
+
},] }
|
|
106
|
+
];
|
|
107
|
+
StockService.ctorParameters = () => [
|
|
108
|
+
{ type: SharedConnectorService }
|
|
109
|
+
];
|
|
110
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2suc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZGNvbXBvbmVudHMvc3JjL2xpYi9zZXJ2aWNlL3N0b2NrLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxZQUFZLEVBQUUsVUFBVSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBYXZELE9BQU8sRUFBQyxzQkFBc0IsRUFBQyxNQUFNLDRCQUE0QixDQUFDOzs7QUFXbEUsTUFBTSxPQUFPLFlBQVk7SUFPdkIsWUFDVSxjQUFzQztRQUF0QyxtQkFBYyxHQUFkLGNBQWMsQ0FBd0I7UUFIaEMsc0JBQWlCLEdBQTRDLElBQUksWUFBWSxFQUE2QixDQUFBO0lBSzFILENBQUM7SUFFRCxnRkFBZ0Y7SUFDaEYsMkRBQTJEO0lBQzNELElBQUk7SUFFSixnRkFBZ0Y7SUFDaEYsMkRBQTJEO0lBQzNELElBQUk7SUFFUyxlQUFlLENBQUMsSUFBNEI7O1lBQ3ZELE9BQU8sTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN6RCxDQUFDO0tBQUE7SUFFWSxtQkFBbUIsQ0FBQyxJQUFrQjs7WUFDakQsT0FBTyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0QsQ0FBQztLQUFBO0lBRUQsb0hBQW9IO0lBQ3BILG9FQUFvRTtJQUNwRSxJQUFJO0lBRVMsaUJBQWlCLENBQUMsSUFBNEI7O1lBQ3pELE9BQU8sTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzNELENBQUM7S0FBQTtJQUVZLG9CQUFvQixDQUFDLElBQXNCOztZQUN0RCxPQUFPLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5RCxDQUFDO0tBQUE7SUFFWSxhQUFhOztZQUN4QixPQUFPLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUNwRCxDQUFDO0tBQUE7SUFFWSxpQkFBaUIsQ0FBQyxNQUFjLEVBQUUsUUFBaUIsRUFBRSxlQUF3QixFQUFFLFdBQW9COztZQUM5RyxPQUFPLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFLGVBQWUsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUNyRyxDQUFDO0tBQUE7SUFFRCxpSEFBaUg7SUFDakgscUVBQXFFO0lBQ3JFLElBQUk7SUFFUyw0QkFBNEI7O1lBQ3ZDLE9BQU8sTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLDRCQUE0QixFQUFFLENBQUM7UUFDbEUsQ0FBQztLQUFBO0lBRVksMkJBQTJCLENBQUMsV0FBbUI7O1lBQzFELE9BQU8sTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLDJCQUEyQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzVFLENBQUM7S0FBQTtJQUVELDRGQUE0RjtJQUM1Rix3RkFBd0Y7SUFDeEYsSUFBSTtJQUVKLDRHQUE0RztJQUM1RyxzR0FBc0c7SUFDdEcsSUFBSTtJQUVKLDZHQUE2RztJQUM3RyxvRkFBb0Y7SUFDcEYsSUFBSTtJQUVTLHFCQUFxQixDQUFDLElBQXdCOztZQUN6RCxPQUFPLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMvRCxDQUFDO0tBQUE7SUFFWSxhQUFhLENBQUMsTUFBYyxFQUFFLGVBQXVCOztZQUNoRSxPQUFPLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFDN0UsQ0FBQztLQUFBO0lBRVksa0JBQWtCLENBQUMsSUFBNEI7O1lBQzFELE9BQU8sTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzVELENBQUM7S0FBQTtJQUVNLE1BQU07UUFDWCxPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDdEMsQ0FBQztJQUVZLGNBQWMsQ0FBQyxHQUFXOztZQUNyQyxPQUFPLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdkQsQ0FBQztLQUFBO0lBRVksY0FBYyxDQUFDLE9BQStCOztZQUN6RCxPQUFPLE1BQU0sSUFBSSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0QsQ0FBQztLQUFBOzs7O1lBakdGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQjs7O1lBVk8sc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtFdmVudEVtaXR0ZXIsIEluamVjdGFibGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7UHJpbnRTdG9ja1N0aWNrZXJzfSBmcm9tIFwiQGNvbGlqbml0L3NoYXJlZGFwaS9idWlsZC9tb2RlbC9wcmludC1zdG9jay1zdGlja2Vyc1wiO1xyXG5pbXBvcnQge0dldFN0b2NrSGlzdG9yeVJlcXVlc3R9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9nZXQtc3RvY2staGlzdG9yeS1yZXF1ZXN0XCI7XHJcbmltcG9ydCB7QXJ0aWNsZVN0b2NrIGFzIEFydGljbGVTdG9ja0JvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1zdG9jay5ib1wiO1xyXG5pbXBvcnQge0FydGljbGVTdG9ja30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtc3RvY2tcIjtcclxuaW1wb3J0IHtTdG9ja0hpc3RvcnlCb30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLWhpc3RvcnkuYm9cIjtcclxuaW1wb3J0IHtBcnRpY2xlRGV0YWlsc0JvfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvYXJ0aWNsZS1kZXRhaWxzLmJvXCI7XHJcbmltcG9ydCB7QXJ0aWNsZVN0b2NrTWFuYWdlbWVudH0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtc3RvY2stbWFuYWdlbWVudFwiO1xyXG5pbXBvcnQge1N0b2NrU3RhdHVzfSBmcm9tIFwiQGNvbGlqbml0L2FydGljbGVhcGkvYnVpbGQvbW9kZWwvc3RvY2stc3RhdHVzLmJvXCI7XHJcbmltcG9ydCB7U3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlc30gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL3N0b2NrLW1hbmFnZW1lbnQtd2FyZWhvdXNlcy5ib1wiO1xyXG5pbXBvcnQge1N0b2NrTG9jYXRpb259IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9zdG9jay1sb2NhdGlvbi5ib1wiO1xyXG5pbXBvcnQge0FydGljbGVUcmFuc2FjdGlvbn0gZnJvbSBcIkBjb2xpam5pdC9hcnRpY2xlYXBpL2J1aWxkL21vZGVsL2FydGljbGUtdHJhbnNhY3Rpb25cIjtcclxuaW1wb3J0IHtBcnRpY2xlVHJhbnNhY3Rpb24gYXMgQXJ0aWNsZVRyYW5zYWN0aW9uQm99IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLXRyYW5zYWN0aW9uLmJvXCI7XHJcbmltcG9ydCB7U2hhcmVkQ29ubmVjdG9yU2VydmljZX0gZnJvbSBcIi4vc2hhcmVkLWNvbm5lY3Rvci5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7U2VuZE1ldGhvZFBhcmFtc30gZnJvbSBcIi4uL2NvbXBvbmVudHMvc2VuZC1tZXRob2QtZGlhbG9nL3NlbmQtbWV0aG9kLXBhcmFtcy5pbnRlcmZhY2VcIjtcclxuaW1wb3J0IHtEYXRhU2VydmljZVJlc3BvbnNlRGF0YX0gZnJvbSAnQGNvbGlqbml0L2lvbmVjb25uZWN0b3IvYnVpbGQvbW9kZWwvZGF0YS1zZXJ2aWNlLXJlc3BvbnNlLWRhdGEnO1xyXG5pbXBvcnQge1N0b2NrRm9yZWNhc3R9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9zdG9jay1mb3JlY2FzdC5ib1wiO1xyXG5pbXBvcnQge0FydGljbGVFeHRlbmRlZFJlcXVlc3R9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWV4dGVuZGVkLXJlcXVlc3RcIjtcclxuaW1wb3J0IHtBcnRpY2xlRXh0ZW5kZWR9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWV4dGVuZGVkLmJvXCI7XHJcbmltcG9ydCB7QXJ0aWNsZUZsYXR9IGZyb20gXCJAY29saWpuaXQvYXJ0aWNsZWFwaS9idWlsZC9tb2RlbC9hcnRpY2xlLWZsYXQuYm9cIjtcclxuXHJcbkBJbmplY3RhYmxlKHtcclxuICBwcm92aWRlZEluOiAncm9vdCcsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTdG9ja1NlcnZpY2Uge1xyXG5cclxuICBwdWJsaWMgc3RvY2tTdGlja2VyczogUHJpbnRTdG9ja1N0aWNrZXJzO1xyXG4gIHB1YmxpYyBwcmludExheW91dFBhcmFtczogU2VuZE1ldGhvZFBhcmFtcztcclxuXHJcbiAgcHVibGljIHJlYWRvbmx5IHdhcmVob3VzZVNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8U3RvY2tNYW5hZ2VtZW50V2FyZWhvdXNlcz4gPSBuZXcgRXZlbnRFbWl0dGVyPFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXM+KClcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9zaGFyZWRTZXJ2aWNlOiBTaGFyZWRDb25uZWN0b3JTZXJ2aWNlLFxyXG4gICkge1xyXG4gIH1cclxuXHJcbiAgLy8gcHVibGljIGFzeW5jIGdldFByaW50U3RvY2tTdGlja2VycyhkYXRhOiBQcmludFN0b2NrU3RpY2tlcnMpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAvLyAgIGF3YWl0IHRoaXMuX3NoYXJlZFNlcnZpY2UuZ2V0UHJpbnRTdG9ja1N0aWNrZXJzKGRhdGEpO1xyXG4gIC8vIH1cclxuXHJcbiAgLy8gcHVibGljIGFzeW5jIGdldFByaW50UHJpY2VTdGlja2VycyhkYXRhOiBQcmludFByaWNlU3RpY2tlcnMpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAvLyAgIGF3YWl0IHRoaXMuX3NoYXJlZFNlcnZpY2UuZ2V0UHJpbnRQcmljZVN0aWNrZXJzKGRhdGEpO1xyXG4gIC8vIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldFN0b2NrSGlzdG9yeShkYXRhOiBHZXRTdG9ja0hpc3RvcnlSZXF1ZXN0KTogUHJvbWlzZTxTdG9ja0hpc3RvcnlCb1tdPiB7XHJcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5fc2hhcmVkU2VydmljZS5nZXRTdG9ja0hpc3RvcnkoZGF0YSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0U3RvY2tJbmZvcm1hdGlvbihkYXRhOiBBcnRpY2xlU3RvY2spOiBQcm9taXNlPEFydGljbGVTdG9ja0JvW10+IHtcclxuICAgIHJldHVybiBhd2FpdCB0aGlzLl9zaGFyZWRTZXJ2aWNlLmdldFN0b2NrSW5mb3JtYXRpb24oZGF0YSk7XHJcbiAgfVxyXG5cclxuICAvLyBwdWJsaWMgYXN5bmMgZ2V0U3RvY2tTdGlja2VyUHJpbnRMYXlvdXRzKGRhdGE6IFN0b2NrU3RpY2tlcnNQcmludExheW91dHMpOiBQcm9taXNlPFN0b2NrU3RpY2tlcnNQcmludExheW91dHNbXT4ge1xyXG4gIC8vICAgcmV0dXJuIGF3YWl0IHRoaXMuX2Nvbm5lY3Rvci5nZXRTdG9ja1N0aWNrZXJQcmludExheW91dHMoZGF0YSk7XHJcbiAgLy8gfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0QXJ0aWNsZURldGFpbHMoZGF0YTogQXJ0aWNsZVN0b2NrTWFuYWdlbWVudCk6IFByb21pc2U8QXJ0aWNsZURldGFpbHNCb1tdPiB7XHJcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5fc2hhcmVkU2VydmljZS5nZXRBcnRpY2xlRGV0YWlscyhkYXRhKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyB1cGRhdGVBcnRpY2xlRGV0YWlscyhkYXRhOiBBcnRpY2xlRGV0YWlsc0JvKTogUHJvbWlzZTxib29sZWFuPiB7XHJcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5fc2hhcmVkU2VydmljZS51cGRhdGVBcnRpY2xlRGV0YWlscyhkYXRhKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRTdG9ja1N0YXRlKCk6IFByb21pc2U8U3RvY2tTdGF0dXNbXT4ge1xyXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuX3NoYXJlZFNlcnZpY2UuZ2V0U3RvY2tTdGF0dXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRBcnRTdG9ja1N0YXR1cyhnb29kSWQ6IG51bWJlciwgYnJhbmNoTm8/OiBzdHJpbmcsIHJlcXVlc3RlZEFtb3VudD86IG51bWJlciwgd2FyZWhvdXNlSWQ/OiBudW1iZXIpOiBQcm9taXNlPG51bWJlcj4ge1xyXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuX3NoYXJlZFNlcnZpY2UuZ2V0QXJ0U3RvY2tTdGF0dXMoZ29vZElkLCBicmFuY2hObywgcmVxdWVzdGVkQW1vdW50LCB3YXJlaG91c2VJZCk7XHJcbiAgfVxyXG5cclxuICAvLyBwdWJsaWMgYXN5bmMgZ2V0U3RvY2tTdGlja2VyVGVtcGxhdGVzKGRhdGE6IFN0b2NrU3RpY2tlcnNQcmludExheW91dHMpOiBQcm9taXNlPFN0b2NrU3RpY2tlcnNQcmludExheW91dHNbXT4ge1xyXG4gIC8vICAgcmV0dXJuIGF3YWl0IHRoaXMuX3NoYXJlZFNlcnZpY2UuZ2V0U3RvY2tTdGlja2VyVGVtcGxhdGVzKGRhdGEpO1xyXG4gIC8vIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIGdldFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXMoKTogUHJvbWlzZTxTdG9ja01hbmFnZW1lbnRXYXJlaG91c2VzW10+IHtcclxuICAgIHJldHVybiBhd2FpdCB0aGlzLl9zaGFyZWRTZXJ2aWNlLmdldFN0b2NrTWFuYWdlbWVudFdhcmVob3VzZXMoKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRTdG9ja01hbmFnZW1lbnRMb2NhdGlvbnMod2FyZWhvdXNlTm86IG51bWJlcik6IFByb21pc2U8U3RvY2tMb2NhdGlvbltdPiB7XHJcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5fc2hhcmVkU2VydmljZS5nZXRTdG9ja01hbmFnZW1lbnRMb2NhdGlvbnMod2FyZWhvdXNlTm8pO1xyXG4gIH1cclxuXHJcbiAgLy8gcHVibGljIGFzeW5jIGdldE9yZGVyQ29uZmlybWF0aW9uRGVmYXVsdFNlbmRNZXRob2QocmVsYXRpb25JZDogbnVtYmVyKTogUHJvbWlzZTxudW1iZXI+IHtcclxuICAvLyAgIHJldHVybiBhd2FpdCB0aGlzLl9zaGFyZWRTZXJ2aWNlLmdldE9yZGVyQ29uZmlybWF0aW9uRGVmYXVsdFNlbmRNZXRob2QocmVsYXRpb25JZCk7XHJcbiAgLy8gfVxyXG5cclxuICAvLyBwdWJsaWMgYXN5bmMgZ2V0RGVmYXVsdEVtYWlsQWRkcmVzc0xpc3RGb3JPcmRlckNvbmZpcm1hdGlvbih0cmFuc2FjdGlvblVVSUQ6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nW10+IHtcclxuICAvLyAgIHJldHVybiBhd2FpdCB0aGlzLl9zaGFyZWRTZXJ2aWNlLmdldERlZmF1bHRFbWFpbEFkZHJlc3NMaXN0Rm9yT3JkZXJDb25maXJtYXRpb24odHJhbnNhY3Rpb25VVUlEKTtcclxuICAvLyB9XHJcblxyXG4gIC8vIHB1YmxpYyBhc3luYyBnZXRQdXJjaGFzZU9yZGVyRW1haWxMYXlvdXRzKHRyYW5zYWN0aW9uVVVJRDogc3RyaW5nKTogUHJvbWlzZTxTdG9ja1N0aWNrZXJzRW1haWxMYXlvdXRzW10+IHtcclxuICAvLyAgIHJldHVybiBhd2FpdCB0aGlzLl9zaGFyZWRTZXJ2aWNlLmdldFB1cmNoYXNlT3JkZXJFbWFpbExheW91dHModHJhbnNhY3Rpb25VVUlEKTtcclxuICAvLyB9XHJcblxyXG4gIHB1YmxpYyBhc3luYyBnZXRBcnRpY2xlVHJhbnNhY3Rpb24oZGF0YTogQXJ0aWNsZVRyYW5zYWN0aW9uKTogUHJvbWlzZTxBcnRpY2xlVHJhbnNhY3Rpb25Cb1tdPiB7XHJcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5fc2hhcmVkU2VydmljZS5nZXRBcnRpY2xlVHJhbnNhY3Rpb24oZGF0YSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgc3RvY2tQcm9nbm9zZShnb29kSWQ6IG51bWJlciwgd2FyZWhvdXNlTnVtYmVyOiBudW1iZXIpOiBQcm9taXNlPFN0b2NrRm9yZWNhc3RbXT4ge1xyXG4gICAgcmV0dXJuIGF3YWl0IHRoaXMuX3NoYXJlZFNlcnZpY2UuZ2V0U3RvY2tQcm9nbm9zZShnb29kSWQsIHdhcmVob3VzZU51bWJlcik7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgbG9ja0FydGljbGVEZXRhaWxzKGRhdGE6IEFydGljbGVTdG9ja01hbmFnZW1lbnQpOiBQcm9taXNlPGJvb2xlYW4+IHtcclxuICAgIHJldHVybiBhd2FpdCB0aGlzLl9zaGFyZWRTZXJ2aWNlLmxvY2tBcnRpY2xlRGV0YWlscyhkYXRhKTtcclxuICB9XHJcblxyXG4gIHB1YmxpYyBjb21taXQoKTogUHJvbWlzZTxEYXRhU2VydmljZVJlc3BvbnNlRGF0YT4ge1xyXG4gICAgcmV0dXJuIHRoaXMuX3NoYXJlZFNlcnZpY2UuY29tbWl0KCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYXN5bmMgZ2V0QXJ0aWNsZUZsYXQoc2t1OiBzdHJpbmcpOiBQcm9taXNlPEFydGljbGVGbGF0PiB7XHJcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5fc2hhcmVkU2VydmljZS5nZXRBcnRpY2xlRmxhdChza3UpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGFzeW5jIHNlYXJjaEFydGljbGVzKHJlcXVlc3Q6IEFydGljbGVFeHRlbmRlZFJlcXVlc3QpOiBQcm9taXNlPEFydGljbGVFeHRlbmRlZFtdPiB7XHJcbiAgICByZXR1cm4gYXdhaXQgdGhpcy5fc2hhcmVkU2VydmljZS5zZWFyY2hBcnRpY2xlcyhyZXF1ZXN0KTtcclxuICB9XHJcblxyXG5cclxuXHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
import { ObjectUtils } from "./object-utils";
|
|
2
|
+
import { NumberUtils } from "./number-utils";
|
|
3
|
+
import { isNill } from "./is-nill.function";
|
|
4
|
+
import { notNill } from "./function/not-nill.function";
|
|
5
|
+
export class ArrayUtils {
|
|
6
|
+
/**
|
|
7
|
+
* Returns whether at least one element in given array could be found by given finder function.
|
|
8
|
+
*
|
|
9
|
+
* @param {T[]} array
|
|
10
|
+
* @param {(element: T) => boolean} finder A finder function that takes an element of the array and returns a boolean that represents
|
|
11
|
+
* the 'found status' for that element; whether it should have been found or not.
|
|
12
|
+
*/
|
|
13
|
+
static ContainsAnElementFoundBy(array, finder) {
|
|
14
|
+
if (!array || !finder) {
|
|
15
|
+
return false;
|
|
16
|
+
}
|
|
17
|
+
return notNill(this.Find(array, finder));
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Cross-browser Array.find() function. Returns the first item in given array for which the foundBy function returns true. Returns
|
|
21
|
+
* undefined when none was found.
|
|
22
|
+
*
|
|
23
|
+
* Example usage:
|
|
24
|
+
* const foundItem: BusinessObject = ArrayUtils.Find<BusinessObject>(modelArray, (modelItem: BusinessObject) => <br>
|
|
25
|
+
* (return modelItem.getId() === '1')
|
|
26
|
+
* * });
|
|
27
|
+
*
|
|
28
|
+
* @param array The array with items to search in.
|
|
29
|
+
* @param foundBy The finder function applied on each items of the array, when that returns true, the item is considered found.
|
|
30
|
+
*/
|
|
31
|
+
static Find(array, foundBy) {
|
|
32
|
+
if (!array || !foundBy) {
|
|
33
|
+
return undefined;
|
|
34
|
+
}
|
|
35
|
+
for (let i = 0, len = array.length; i < len; i++) {
|
|
36
|
+
const itemCur = array[i];
|
|
37
|
+
if (foundBy(itemCur)) {
|
|
38
|
+
return itemCur;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return undefined;
|
|
42
|
+
}
|
|
43
|
+
// @returns empty array when nothing found, otherwise array with found items
|
|
44
|
+
static FindAll(array, foundBy) {
|
|
45
|
+
const answer = [];
|
|
46
|
+
if (!array || !foundBy) {
|
|
47
|
+
return answer;
|
|
48
|
+
}
|
|
49
|
+
for (let i = 0, len = array.length; i < len; i++) {
|
|
50
|
+
const itemCur = array[i];
|
|
51
|
+
if (foundBy(itemCur)) {
|
|
52
|
+
answer.push(itemCur);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return answer;
|
|
56
|
+
}
|
|
57
|
+
// returns a simple clone of given array, using array.slice(0)
|
|
58
|
+
static CloneArray(array) {
|
|
59
|
+
let answer = [];
|
|
60
|
+
if (array) {
|
|
61
|
+
answer = array.slice(0);
|
|
62
|
+
}
|
|
63
|
+
return answer;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Returns a 'semi deep clone' of given array. Its first-level members are object-shallow-cloned (optionally with a strongly typed constructor),
|
|
67
|
+
* or just as plain object (see param arrayItemsClass).
|
|
68
|
+
* @param array
|
|
69
|
+
* @param arrayItemsClass If provided, the cloned array's first-level items will be strongly typed to / constructed as this class. Otherwise
|
|
70
|
+
* it'll be a plain object.
|
|
71
|
+
* @param deepClone Set to true if array items contain FUNCTIONS that need to be cloned..
|
|
72
|
+
* @returns {Array} semi-deep clone of given array
|
|
73
|
+
*/
|
|
74
|
+
static CloneArrayAndItsItems(array, arrayItemsClass, deepClone = false) {
|
|
75
|
+
const cloneArray = [];
|
|
76
|
+
if (array) {
|
|
77
|
+
for (let i = 0, len = array.length; i < len; i++) {
|
|
78
|
+
if (deepClone) {
|
|
79
|
+
cloneArray.push(ObjectUtils.GetDeepClone(array[i]));
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
cloneArray.push(ObjectUtils.GetShallowClone(array[i], arrayItemsClass));
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
return [];
|
|
88
|
+
}
|
|
89
|
+
return cloneArray;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Removes element at given index from given array. Doesn't just set it to null like JavaScripts standard 'delete' does, but really
|
|
93
|
+
* removes the element using splice().
|
|
94
|
+
*
|
|
95
|
+
* @param {number} index
|
|
96
|
+
* @param {any[]} array in-out
|
|
97
|
+
* @returns {boolean} True if and only if the element on given index is succesfully removed from given array.
|
|
98
|
+
*/
|
|
99
|
+
static RemoveElementAtIndex(index, array) {
|
|
100
|
+
if (NumberUtils.IsNaN(index) || index < 0 || !Array.isArray(array) || array.length === 0) {
|
|
101
|
+
return false;
|
|
102
|
+
}
|
|
103
|
+
if (index in array) {
|
|
104
|
+
array.splice(index, 1);
|
|
105
|
+
return true;
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
return false;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Removes given element from given array. Doesn't just set it to null like JavaScripts standard 'delete' does, but really removes the
|
|
113
|
+
* element using splice(). Also works on associative arrays.
|
|
114
|
+
*
|
|
115
|
+
* @param {T} element The element to remove.
|
|
116
|
+
* @param {T[]} array The array to remove the element from.
|
|
117
|
+
* @returns {boolean} True iff given element was truly successfully removed from given array.
|
|
118
|
+
*/
|
|
119
|
+
static RemoveElement(element, array) {
|
|
120
|
+
if (!Array.isArray(array)) {
|
|
121
|
+
return false;
|
|
122
|
+
}
|
|
123
|
+
const index = array.indexOf(element);
|
|
124
|
+
return ArrayUtils.RemoveElementAtIndex(index, array);
|
|
125
|
+
}
|
|
126
|
+
// 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.
|
|
127
|
+
static IsArrayWithElements(arrayToCheck, classItemsMustBeInstanceOf) {
|
|
128
|
+
if (isNill(arrayToCheck)) {
|
|
129
|
+
return false;
|
|
130
|
+
}
|
|
131
|
+
if (Array.isArray(arrayToCheck) && arrayToCheck.length > 0) {
|
|
132
|
+
if (classItemsMustBeInstanceOf) {
|
|
133
|
+
return arrayToCheck[0] instanceof classItemsMustBeInstanceOf;
|
|
134
|
+
}
|
|
135
|
+
else {
|
|
136
|
+
return true;
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
else {
|
|
140
|
+
return false;
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
// Removes all elements from given array for which given filter function holds true. Returns true if at least one removed, else false.
|
|
144
|
+
static RemoveElementsByFilter(array, filterFunction) {
|
|
145
|
+
if (!ArrayUtils.IsArrayWithElements(array) || !filterFunction) {
|
|
146
|
+
return false;
|
|
147
|
+
}
|
|
148
|
+
let atLeastOneRemoved = false;
|
|
149
|
+
const len = array.length;
|
|
150
|
+
for (let i = len - 1; i >= 0; i--) {
|
|
151
|
+
const item = array[i];
|
|
152
|
+
if (filterFunction.call(this, item) === true) {
|
|
153
|
+
array.splice(i, 1);
|
|
154
|
+
atLeastOneRemoved = true;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
return atLeastOneRemoved;
|
|
158
|
+
}
|
|
159
|
+
static MoveElement(element, toIndex, array) {
|
|
160
|
+
if (!Array.isArray(array) || isNill(toIndex)) {
|
|
161
|
+
return false;
|
|
162
|
+
}
|
|
163
|
+
const fromIndex = array.indexOf(element);
|
|
164
|
+
const toIndexCorrected = NumberUtils.GetNearestNumberWithinBounds(toIndex, 0, array.length - 1);
|
|
165
|
+
if (fromIndex === -1 || array[toIndexCorrected] === element) {
|
|
166
|
+
// element did not exist in given array, or already existed on given toIndex
|
|
167
|
+
return false;
|
|
168
|
+
}
|
|
169
|
+
array.splice(toIndexCorrected, 0, array.splice(fromIndex, 1)[0]);
|
|
170
|
+
return true;
|
|
171
|
+
}
|
|
172
|
+
// PRE: elements exists in given array. POST: given elementToPlace has a lower index than given afterThisElement. Array is in-out manipulated.
|
|
173
|
+
static PlaceElementAfterOther(array, elementToPlace, afterThisElement) {
|
|
174
|
+
if (array) {
|
|
175
|
+
const afterThisElIdx = array.indexOf(afterThisElement);
|
|
176
|
+
const elToPlaceIdx = array.indexOf(elementToPlace);
|
|
177
|
+
if (afterThisElIdx >= elToPlaceIdx) {
|
|
178
|
+
ArrayUtils.MoveElement(elementToPlace, afterThisElIdx + 1, array);
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
/**
|
|
183
|
+
* Returns max value from all resulting values from applying given itemValueFunction to all items of given array.
|
|
184
|
+
* @param array
|
|
185
|
+
* @param itemValueFunction The function applied to each array item that gives it a numerical value. The max num val found is returned.
|
|
186
|
+
*/
|
|
187
|
+
static GetMaxCalculatedValue(array, itemValueFunction) {
|
|
188
|
+
if (!array || !itemValueFunction) {
|
|
189
|
+
return NaN;
|
|
190
|
+
}
|
|
191
|
+
let max = undefined;
|
|
192
|
+
const len = array.length;
|
|
193
|
+
for (let i = 0; i < len; i++) {
|
|
194
|
+
const valueCur = itemValueFunction.call(this);
|
|
195
|
+
if (valueCur > max) {
|
|
196
|
+
max = valueCur;
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
return max;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXktdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvdXRpbHMvYXJyYXktdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUMzQyxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDMUMsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBRXJELE1BQU0sT0FBTyxVQUFVO0lBQ25COzs7Ozs7T0FNRztJQUNJLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBSSxLQUFVLEVBQUUsTUFBK0I7UUFDakYsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNuQixPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELE9BQU8sT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUksS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQUVEOzs7Ozs7Ozs7OztPQVdHO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBSSxLQUFVLEVBQUUsT0FBNkI7UUFDM0QsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNwQixPQUFPLFNBQVMsQ0FBQztTQUNwQjtRQUVELEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLEdBQUcsR0FBVyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDOUQsTUFBTSxPQUFPLEdBQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVCLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFHO2dCQUNuQixPQUFPLE9BQU8sQ0FBQzthQUNsQjtTQUNKO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDckIsQ0FBQztJQUVELDRFQUE0RTtJQUNyRSxNQUFNLENBQUMsT0FBTyxDQUFJLEtBQVUsRUFBRSxPQUE2QjtRQUM5RCxNQUFNLE1BQU0sR0FBUSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNwQixPQUFPLE1BQU0sQ0FBQztTQUNqQjtRQUVELEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLEdBQUcsR0FBVyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDOUQsTUFBTSxPQUFPLEdBQU0sS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVCLElBQUksT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFO2dCQUNsQixNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ3hCO1NBQ0o7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNsQixDQUFDO0lBRUQsOERBQThEO0lBQ3ZELE1BQU0sQ0FBQyxVQUFVLENBQUksS0FBVTtRQUNsQyxJQUFJLE1BQU0sR0FBUSxFQUFFLENBQUM7UUFFckIsSUFBSSxLQUFLLEVBQUU7WUFDUCxNQUFNLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUMzQjtRQUVELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFRDs7Ozs7Ozs7T0FRRztJQUNJLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBSSxLQUFVLEVBQUUsZUFBcUIsRUFBRSxZQUFxQixLQUFLO1FBQ2hHLE1BQU0sVUFBVSxHQUFRLEVBQUUsQ0FBQztRQUUzQixJQUFJLEtBQUssRUFBRTtZQUNQLEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLEdBQUcsR0FBVyxLQUFLLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQzlELElBQUksU0FBUyxFQUFFO29CQUNYLFVBQVUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUN2RDtxQkFBTTtvQkFDSCxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUM7aUJBQzNFO2FBQ0o7U0FDSjthQUFNO1lBQ0gsT0FBTyxFQUFFLENBQUM7U0FDYjtRQUVELE9BQU8sVUFBVSxDQUFDO0lBQ3RCLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksTUFBTSxDQUFDLG9CQUFvQixDQUFDLEtBQWEsRUFBRSxLQUFZO1FBQzFELElBQUksV0FBVyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN0RixPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELElBQUksS0FBSyxJQUFJLEtBQUssRUFBRTtZQUNoQixLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztZQUN2QixPQUFPLElBQUksQ0FBQztTQUNmO2FBQU07WUFDSCxPQUFPLEtBQUssQ0FBQztTQUNoQjtJQUNMLENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0ksTUFBTSxDQUFDLGFBQWEsQ0FBSSxPQUFVLEVBQUUsS0FBVTtRQUNqRCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUN2QixPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELE1BQU0sS0FBSyxHQUFXLEtBQUssQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0MsT0FBTyxVQUFVLENBQUMsb0JBQW9CLENBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFRCwrSUFBK0k7SUFDeEksTUFBTSxDQUFDLG1CQUFtQixDQUFJLFlBQWlCLEVBQUUsMEJBQWdDO1FBQ3BGLElBQUksTUFBTSxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQ3RCLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO1FBRUQsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLFlBQVksQ0FBQyxJQUFJLFlBQVksQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQ3hELElBQUksMEJBQTBCLEVBQUU7Z0JBQzVCLE9BQU8sWUFBWSxDQUFDLENBQUMsQ0FBQyxZQUFZLDBCQUEwQixDQUFDO2FBQ2hFO2lCQUFNO2dCQUNILE9BQU8sSUFBSSxDQUFDO2FBQ2Y7U0FDSjthQUFNO1lBQ0gsT0FBTyxLQUFLLENBQUM7U0FDaEI7SUFDTCxDQUFDO0lBRUQsc0lBQXNJO0lBQy9ILE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxLQUFZLEVBQUUsY0FBc0M7UUFDckYsSUFBSSxDQUFDLFVBQVUsQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtZQUMzRCxPQUFPLEtBQUssQ0FBQztTQUNoQjtRQUVELElBQUksaUJBQWlCLEdBQVksS0FBSyxDQUFDO1FBRXZDLE1BQU0sR0FBRyxHQUFXLEtBQUssQ0FBQyxNQUFNLENBQUM7UUFDakMsS0FBSyxJQUFJLENBQUMsR0FBVyxHQUFHLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDdkMsTUFBTSxJQUFJLEdBQVEsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzNCLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLEtBQUssSUFBSSxFQUFFO2dCQUMxQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztnQkFDbkIsaUJBQWlCLEdBQUcsSUFBSSxDQUFDO2FBQzVCO1NBQ0o7UUFFRCxPQUFPLGlCQUFpQixDQUFDO0lBQzdCLENBQUM7SUFFTSxNQUFNLENBQUMsV0FBVyxDQUFJLE9BQVUsRUFBRSxPQUFlLEVBQUUsS0FBVTtRQUNoRSxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUU7WUFDMUMsT0FBTyxLQUFLLENBQUM7U0FDaEI7UUFFRCxNQUFNLFNBQVMsR0FBVyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2pELE1BQU0sZ0JBQWdCLEdBQVcsV0FBVyxDQUFDLDRCQUE0QixDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztRQUN4RyxJQUFJLFNBQVMsS0FBSyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxPQUFPLEVBQUU7WUFDekQsNEVBQTRFO1lBQzVFLE9BQU8sS0FBSyxDQUFDO1NBQ2hCO1FBQ0QsS0FBSyxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqRSxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDO0lBRUQsOElBQThJO0lBQ3ZJLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxLQUFZLEVBQUUsY0FBbUIsRUFBRSxnQkFBcUI7UUFDekYsSUFBSSxLQUFLLEVBQUU7WUFDUCxNQUFNLGNBQWMsR0FBVyxLQUFLLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7WUFDL0QsTUFBTSxZQUFZLEdBQVcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztZQUMzRCxJQUFJLGNBQWMsSUFBSSxZQUFZLEVBQUU7Z0JBQ2hDLFVBQVUsQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFLGNBQWMsR0FBRyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7YUFDckU7U0FDSjtJQUNMLENBQUM7SUFFSDs7OztPQUlHO0lBQ0ksTUFBTSxDQUFDLHFCQUFxQixDQUFJLEtBQVUsRUFBRSxpQkFBc0M7UUFDdkYsSUFBSSxDQUFDLEtBQUssSUFBSSxDQUFDLGlCQUFpQixFQUFFO1lBQ2hDLE9BQU8sR0FBRyxDQUFDO1NBQ1o7UUFFRCxJQUFJLEdBQUcsR0FBVyxTQUFTLENBQUM7UUFFNUIsTUFBTSxHQUFHLEdBQVcsS0FBSyxDQUFDLE1BQU0sQ0FBQztRQUNqQyxLQUFLLElBQUksQ0FBQyxHQUFXLENBQUMsRUFBRSxDQUFDLEdBQUcsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ3BDLE1BQU0sUUFBUSxHQUFXLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN0RCxJQUFJLFFBQVEsR0FBRyxHQUFHLEVBQUU7Z0JBQ2xCLEdBQUcsR0FBRyxRQUFRLENBQUM7YUFDaEI7U0FDRjtRQUVELE9BQU8sR0FBRyxDQUFDO0lBQ2IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtPYmplY3RVdGlsc30gZnJvbSBcIi4vb2JqZWN0LXV0aWxzXCI7XHJcbmltcG9ydCB7TnVtYmVyVXRpbHN9IGZyb20gXCIuL251bWJlci11dGlsc1wiO1xyXG5pbXBvcnQge2lzTmlsbH0gZnJvbSBcIi4vaXMtbmlsbC5mdW5jdGlvblwiO1xyXG5pbXBvcnQge25vdE5pbGx9IGZyb20gXCIuL2Z1bmN0aW9uL25vdC1uaWxsLmZ1bmN0aW9uXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgQXJyYXlVdGlscyB7XHJcbiAgICAvKipcclxuICAgICAqIFJldHVybnMgd2hldGhlciBhdCBsZWFzdCBvbmUgZWxlbWVudCBpbiBnaXZlbiBhcnJheSBjb3VsZCBiZSBmb3VuZCBieSBnaXZlbiBmaW5kZXIgZnVuY3Rpb24uXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHtUW119IGFycmF5XHJcbiAgICAgKiBAcGFyYW0geyhlbGVtZW50OiBUKSA9PiBib29sZWFufSBmaW5kZXIgQSBmaW5kZXIgZnVuY3Rpb24gdGhhdCB0YWtlcyBhbiBlbGVtZW50IG9mIHRoZSBhcnJheSBhbmQgcmV0dXJucyBhIGJvb2xlYW4gdGhhdCByZXByZXNlbnRzXHJcbiAgICAgKiB0aGUgJ2ZvdW5kIHN0YXR1cycgZm9yIHRoYXQgZWxlbWVudDsgd2hldGhlciBpdCBzaG91bGQgaGF2ZSBiZWVuIGZvdW5kIG9yIG5vdC5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHN0YXRpYyBDb250YWluc0FuRWxlbWVudEZvdW5kQnk8VD4oYXJyYXk6IFRbXSwgZmluZGVyOiAoZWxlbWVudDogVCkgPT4gYm9vbGVhbik6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmICghYXJyYXkgfHwgIWZpbmRlcikge1xyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gbm90TmlsbCh0aGlzLkZpbmQ8VD4oYXJyYXksIGZpbmRlcikpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQ3Jvc3MtYnJvd3NlciBBcnJheS5maW5kKCkgZnVuY3Rpb24uIFJldHVybnMgdGhlIGZpcnN0IGl0ZW0gaW4gZ2l2ZW4gYXJyYXkgZm9yIHdoaWNoIHRoZSBmb3VuZEJ5IGZ1bmN0aW9uIHJldHVybnMgdHJ1ZS4gUmV0dXJuc1xyXG4gICAgICogdW5kZWZpbmVkIHdoZW4gbm9uZSB3YXMgZm91bmQuXHJcbiAgICAgKlxyXG4gICAgICogRXhhbXBsZSB1c2FnZTpcclxuICAgICAqIGNvbnN0IGZvdW5kSXRlbTogQnVzaW5lc3NPYmplY3QgPSBBcnJheVV0aWxzLkZpbmQ8QnVzaW5lc3NPYmplY3Q+KG1vZGVsQXJyYXksIChtb2RlbEl0ZW06IEJ1c2luZXNzT2JqZWN0KSA9PiA8YnI+XHJcbiAgICAgKiAgICAgKHJldHVybiBtb2RlbEl0ZW0uZ2V0SWQoKSA9PT0gJzEnKVxyXG4gICAgICogICAqIH0pO1xyXG4gICAgICpcclxuICAgICAqIEBwYXJhbSBhcnJheSBUaGUgYXJyYXkgd2l0aCBpdGVtcyB0byBzZWFyY2ggaW4uXHJcbiAgICAgKiBAcGFyYW0gZm91bmRCeSBUaGUgZmluZGVyIGZ1bmN0aW9uIGFwcGxpZWQgb24gZWFjaCBpdGVtcyBvZiB0aGUgYXJyYXksIHdoZW4gdGhhdCByZXR1cm5zIHRydWUsIHRoZSBpdGVtIGlzIGNvbnNpZGVyZWQgZm91bmQuXHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBzdGF0aWMgRmluZDxUPihhcnJheTogVFtdLCBmb3VuZEJ5OiAoaXRlbTogVCkgPT4gYm9vbGVhbik6IFQge1xyXG4gICAgICAgIGlmICghYXJyYXkgfHwgIWZvdW5kQnkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDAsIGxlbjogbnVtYmVyID0gYXJyYXkubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgY29uc3QgaXRlbUN1cjogVCA9IGFycmF5W2ldO1xyXG4gICAgICAgICAgICBpZiAoZm91bmRCeShpdGVtQ3VyKSApIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBpdGVtQ3VyO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQHJldHVybnMgZW1wdHkgYXJyYXkgd2hlbiBub3RoaW5nIGZvdW5kLCBvdGhlcndpc2UgYXJyYXkgd2l0aCBmb3VuZCBpdGVtc1xyXG4gICAgcHVibGljIHN0YXRpYyBGaW5kQWxsPFQ+KGFycmF5OiBUW10sIGZvdW5kQnk6IChpdGVtOiBUKSA9PiBib29sZWFuKTogVFtdIHtcclxuICAgICAgICBjb25zdCBhbnN3ZXI6IFRbXSA9IFtdO1xyXG4gICAgICAgIGlmICghYXJyYXkgfHwgIWZvdW5kQnkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGFuc3dlcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDAsIGxlbjogbnVtYmVyID0gYXJyYXkubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgY29uc3QgaXRlbUN1cjogVCA9IGFycmF5W2ldO1xyXG4gICAgICAgICAgICBpZiAoZm91bmRCeShpdGVtQ3VyKSkge1xyXG4gICAgICAgICAgICAgICAgYW5zd2VyLnB1c2goaXRlbUN1cik7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGFuc3dlcjtcclxuICAgIH1cclxuXHJcbiAgICAvLyByZXR1cm5zIGEgc2ltcGxlIGNsb25lIG9mIGdpdmVuIGFycmF5LCB1c2luZyBhcnJheS5zbGljZSgwKVxyXG4gICAgcHVibGljIHN0YXRpYyBDbG9uZUFycmF5PFQ+KGFycmF5OiBUW10pOiBUW10ge1xyXG4gICAgICAgIGxldCBhbnN3ZXI6IFRbXSA9IFtdO1xyXG5cclxuICAgICAgICBpZiAoYXJyYXkpIHtcclxuICAgICAgICAgICAgYW5zd2VyID0gYXJyYXkuc2xpY2UoMCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4gYW5zd2VyO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogUmV0dXJucyBhICdzZW1pIGRlZXAgY2xvbmUnIG9mIGdpdmVuIGFycmF5LiBJdHMgZmlyc3QtbGV2ZWwgbWVtYmVycyBhcmUgb2JqZWN0LXNoYWxsb3ctY2xvbmVkIChvcHRpb25hbGx5IHdpdGggYSBzdHJvbmdseSB0eXBlZCBjb25zdHJ1Y3RvciksXHJcbiAgICAgKiBvciBqdXN0IGFzIHBsYWluIG9iamVjdCAoc2VlIHBhcmFtIGFycmF5SXRlbXNDbGFzcykuXHJcbiAgICAgKiBAcGFyYW0gYXJyYXlcclxuICAgICAqIEBwYXJhbSBhcnJheUl0ZW1zQ2xhc3MgSWYgcHJvdmlkZWQsIHRoZSBjbG9uZWQgYXJyYXkncyBmaXJzdC1sZXZlbCBpdGVtcyB3aWxsIGJlIHN0cm9uZ2x5IHR5cGVkIHRvIC8gY29uc3RydWN0ZWQgYXMgdGhpcyBjbGFzcy4gT3RoZXJ3aXNlXHJcbiAgICAgKiBpdCdsbCBiZSBhIHBsYWluIG9iamVjdC5cclxuICAgICAqIEBwYXJhbSBkZWVwQ2xvbmUgU2V0IHRvIHRydWUgaWYgYXJyYXkgaXRlbXMgY29udGFpbiBGVU5DVElPTlMgdGhhdCBuZWVkIHRvIGJlIGNsb25lZC4uXHJcbiAgICAgKiBAcmV0dXJucyB7QXJyYXl9IHNlbWktZGVlcCBjbG9uZSBvZiBnaXZlbiBhcnJheVxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIENsb25lQXJyYXlBbmRJdHNJdGVtczxUPihhcnJheTogVFtdLCBhcnJheUl0ZW1zQ2xhc3M/OiBhbnksIGRlZXBDbG9uZTogYm9vbGVhbiA9IGZhbHNlKTogVFtdIHtcclxuICAgICAgICBjb25zdCBjbG9uZUFycmF5OiBUW10gPSBbXTtcclxuXHJcbiAgICAgICAgaWYgKGFycmF5KSB7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDAsIGxlbjogbnVtYmVyID0gYXJyYXkubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgICAgIGlmIChkZWVwQ2xvbmUpIHtcclxuICAgICAgICAgICAgICAgICAgICBjbG9uZUFycmF5LnB1c2goT2JqZWN0VXRpbHMuR2V0RGVlcENsb25lKGFycmF5W2ldKSk7XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGNsb25lQXJyYXkucHVzaChPYmplY3RVdGlscy5HZXRTaGFsbG93Q2xvbmUoYXJyYXlbaV0sIGFycmF5SXRlbXNDbGFzcykpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIFtdO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGNsb25lQXJyYXk7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZW1vdmVzIGVsZW1lbnQgYXQgZ2l2ZW4gaW5kZXggZnJvbSBnaXZlbiBhcnJheS4gRG9lc24ndCBqdXN0IHNldCBpdCB0byBudWxsIGxpa2UgSmF2YVNjcmlwdHMgc3RhbmRhcmQgJ2RlbGV0ZScgZG9lcywgYnV0IHJlYWxseVxyXG4gICAgICogcmVtb3ZlcyB0aGUgZWxlbWVudCB1c2luZyBzcGxpY2UoKS5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0ge251bWJlcn0gaW5kZXhcclxuICAgICAqIEBwYXJhbSB7YW55W119IGFycmF5IGluLW91dFxyXG4gICAgICogQHJldHVybnMge2Jvb2xlYW59IFRydWUgaWYgYW5kIG9ubHkgaWYgdGhlIGVsZW1lbnQgb24gZ2l2ZW4gaW5kZXggaXMgc3VjY2VzZnVsbHkgcmVtb3ZlZCBmcm9tIGdpdmVuIGFycmF5LlxyXG4gICAgICovXHJcbiAgICBwdWJsaWMgc3RhdGljIFJlbW92ZUVsZW1lbnRBdEluZGV4KGluZGV4OiBudW1iZXIsIGFycmF5OiBhbnlbXSk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGlmIChOdW1iZXJVdGlscy5Jc05hTihpbmRleCkgfHwgaW5kZXggPCAwIHx8ICFBcnJheS5pc0FycmF5KGFycmF5KSB8fCBhcnJheS5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKGluZGV4IGluIGFycmF5KSB7XHJcbiAgICAgICAgICAgIGFycmF5LnNwbGljZShpbmRleCwgMSk7XHJcbiAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBSZW1vdmVzIGdpdmVuIGVsZW1lbnQgZnJvbSBnaXZlbiBhcnJheS4gRG9lc24ndCBqdXN0IHNldCBpdCB0byBudWxsIGxpa2UgSmF2YVNjcmlwdHMgc3RhbmRhcmQgJ2RlbGV0ZScgZG9lcywgYnV0IHJlYWxseSByZW1vdmVzIHRoZVxyXG4gICAgICogZWxlbWVudCB1c2luZyBzcGxpY2UoKS4gQWxzbyB3b3JrcyBvbiBhc3NvY2lhdGl2ZSBhcnJheXMuXHJcbiAgICAgKlxyXG4gICAgICogQHBhcmFtIHtUfSBlbGVtZW50IFRoZSBlbGVtZW50IHRvIHJlbW92ZS5cclxuICAgICAqIEBwYXJhbSB7VFtdfSBhcnJheSBUaGUgYXJyYXkgdG8gcmVtb3ZlIHRoZSBlbGVtZW50IGZyb20uXHJcbiAgICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZmYgZ2l2ZW4gZWxlbWVudCB3YXMgdHJ1bHkgc3VjY2Vzc2Z1bGx5IHJlbW92ZWQgZnJvbSBnaXZlbiBhcnJheS5cclxuICAgICAqL1xyXG4gICAgcHVibGljIHN0YXRpYyBSZW1vdmVFbGVtZW50PFQ+KGVsZW1lbnQ6IFQsIGFycmF5OiBUW10pOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoYXJyYXkpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IGluZGV4OiBudW1iZXIgPSBhcnJheS5pbmRleE9mKGVsZW1lbnQpO1xyXG4gICAgICAgIHJldHVybiBBcnJheVV0aWxzLlJlbW92ZUVsZW1lbnRBdEluZGV4KGluZGV4LCBhcnJheSk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQ2hlY2tzIGlmIGdpdmVuIGFycmF5IGlzIGRlZmluZWQsIGFuZCBpcyBhbiBhcnJheSwgYW5kIGhhcyBsZW5ndGggPiAwLCBhbmQsIG9wdGlvbmFsbHkgY2hlY2tzIHRoYXQgdGhlIGZpcnN0IGVsZW1lbnQgaXMgb2YgdHlwZSBnaXZlbiBjbGF6ei5cclxuICAgIHB1YmxpYyBzdGF0aWMgSXNBcnJheVdpdGhFbGVtZW50czxUPihhcnJheVRvQ2hlY2s6IFRbXSwgY2xhc3NJdGVtc011c3RCZUluc3RhbmNlT2Y/OiBhbnkpOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoaXNOaWxsKGFycmF5VG9DaGVjaykpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkoYXJyYXlUb0NoZWNrKSAmJiBhcnJheVRvQ2hlY2subGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICBpZiAoY2xhc3NJdGVtc011c3RCZUluc3RhbmNlT2YpIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiBhcnJheVRvQ2hlY2tbMF0gaW5zdGFuY2VvZiBjbGFzc0l0ZW1zTXVzdEJlSW5zdGFuY2VPZjtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvLyBSZW1vdmVzIGFsbCBlbGVtZW50cyBmcm9tIGdpdmVuIGFycmF5IGZvciB3aGljaCBnaXZlbiBmaWx0ZXIgZnVuY3Rpb24gaG9sZHMgdHJ1ZS4gUmV0dXJucyB0cnVlIGlmIGF0IGxlYXN0IG9uZSByZW1vdmVkLCBlbHNlIGZhbHNlLlxyXG4gICAgcHVibGljIHN0YXRpYyBSZW1vdmVFbGVtZW50c0J5RmlsdGVyKGFycmF5OiBhbnlbXSwgZmlsdGVyRnVuY3Rpb246IChpdGVtOiBhbnkpID0+IGJvb2xlYW4pOiBib29sZWFuIHtcclxuICAgICAgICBpZiAoIUFycmF5VXRpbHMuSXNBcnJheVdpdGhFbGVtZW50cyhhcnJheSkgfHwgIWZpbHRlckZ1bmN0aW9uKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGxldCBhdExlYXN0T25lUmVtb3ZlZDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgICAgICBjb25zdCBsZW46IG51bWJlciA9IGFycmF5Lmxlbmd0aDtcclxuICAgICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSBsZW4gLSAxOyBpID49IDA7IGktLSkge1xyXG4gICAgICAgICAgICBjb25zdCBpdGVtOiBhbnkgPSBhcnJheVtpXTtcclxuICAgICAgICAgICAgaWYgKGZpbHRlckZ1bmN0aW9uLmNhbGwodGhpcywgaXRlbSkgPT09IHRydWUpIHtcclxuICAgICAgICAgICAgICAgIGFycmF5LnNwbGljZShpLCAxKTtcclxuICAgICAgICAgICAgICAgIGF0TGVhc3RPbmVSZW1vdmVkID0gdHJ1ZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGF0TGVhc3RPbmVSZW1vdmVkO1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgTW92ZUVsZW1lbnQ8VD4oZWxlbWVudDogVCwgdG9JbmRleDogbnVtYmVyLCBhcnJheTogVFtdKTogYm9vbGVhbiB7XHJcbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KGFycmF5KSB8fCBpc05pbGwodG9JbmRleCkpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgZnJvbUluZGV4OiBudW1iZXIgPSBhcnJheS5pbmRleE9mKGVsZW1lbnQpO1xyXG4gICAgICAgIGNvbnN0IHRvSW5kZXhDb3JyZWN0ZWQ6IG51bWJlciA9IE51bWJlclV0aWxzLkdldE5lYXJlc3ROdW1iZXJXaXRoaW5Cb3VuZHModG9JbmRleCwgMCwgYXJyYXkubGVuZ3RoIC0gMSk7XHJcbiAgICAgICAgaWYgKGZyb21JbmRleCA9PT0gLTEgfHwgYXJyYXlbdG9JbmRleENvcnJlY3RlZF0gPT09IGVsZW1lbnQpIHtcclxuICAgICAgICAgICAgLy8gZWxlbWVudCBkaWQgbm90IGV4aXN0IGluIGdpdmVuIGFycmF5LCBvciBhbHJlYWR5IGV4aXN0ZWQgb24gZ2l2ZW4gdG9JbmRleFxyXG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGFycmF5LnNwbGljZSh0b0luZGV4Q29ycmVjdGVkLCAwLCBhcnJheS5zcGxpY2UoZnJvbUluZGV4LCAxKVswXSk7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUFJFOiBlbGVtZW50cyBleGlzdHMgaW4gZ2l2ZW4gYXJyYXkuIFBPU1Q6IGdpdmVuIGVsZW1lbnRUb1BsYWNlIGhhcyBhIGxvd2VyIGluZGV4IHRoYW4gZ2l2ZW4gYWZ0ZXJUaGlzRWxlbWVudC4gQXJyYXkgaXMgaW4tb3V0IG1hbmlwdWxhdGVkLlxyXG4gICAgcHVibGljIHN0YXRpYyBQbGFjZUVsZW1lbnRBZnRlck90aGVyKGFycmF5OiBhbnlbXSwgZWxlbWVudFRvUGxhY2U6IGFueSwgYWZ0ZXJUaGlzRWxlbWVudDogYW55KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKGFycmF5KSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGFmdGVyVGhpc0VsSWR4OiBudW1iZXIgPSBhcnJheS5pbmRleE9mKGFmdGVyVGhpc0VsZW1lbnQpO1xyXG4gICAgICAgICAgICBjb25zdCBlbFRvUGxhY2VJZHg6IG51bWJlciA9IGFycmF5LmluZGV4T2YoZWxlbWVudFRvUGxhY2UpO1xyXG4gICAgICAgICAgICBpZiAoYWZ0ZXJUaGlzRWxJZHggPj0gZWxUb1BsYWNlSWR4KSB7XHJcbiAgICAgICAgICAgICAgICBBcnJheVV0aWxzLk1vdmVFbGVtZW50KGVsZW1lbnRUb1BsYWNlLCBhZnRlclRoaXNFbElkeCArIDEsIGFycmF5KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgLyoqXHJcbiAgICogUmV0dXJucyBtYXggdmFsdWUgZnJvbSBhbGwgcmVzdWx0aW5nIHZhbHVlcyBmcm9tIGFwcGx5aW5nIGdpdmVuIGl0ZW1WYWx1ZUZ1bmN0aW9uIHRvIGFsbCBpdGVtcyBvZiBnaXZlbiBhcnJheS5cclxuICAgKiBAcGFyYW0gYXJyYXlcclxuICAgKiBAcGFyYW0gaXRlbVZhbHVlRnVuY3Rpb24gVGhlIGZ1bmN0aW9uIGFwcGxpZWQgdG8gZWFjaCBhcnJheSBpdGVtIHRoYXQgZ2l2ZXMgaXQgYSBudW1lcmljYWwgdmFsdWUuIFRoZSBtYXggbnVtIHZhbCBmb3VuZCBpcyByZXR1cm5lZC5cclxuICAgKi9cclxuICBwdWJsaWMgc3RhdGljIEdldE1heENhbGN1bGF0ZWRWYWx1ZTxUPihhcnJheTogVFtdLCBpdGVtVmFsdWVGdW5jdGlvbjogKGl0ZW06IFQpID0+IG51bWJlcik6IG51bWJlciB7XHJcbiAgICBpZiAoIWFycmF5IHx8ICFpdGVtVmFsdWVGdW5jdGlvbikge1xyXG4gICAgICByZXR1cm4gTmFOO1xyXG4gICAgfVxyXG5cclxuICAgIGxldCBtYXg6IG51bWJlciA9IHVuZGVmaW5lZDtcclxuXHJcbiAgICBjb25zdCBsZW46IG51bWJlciA9IGFycmF5Lmxlbmd0aDtcclxuICAgIGZvciAobGV0IGk6IG51bWJlciA9IDA7IGkgPCBsZW47IGkrKykge1xyXG4gICAgICBjb25zdCB2YWx1ZUN1cjogbnVtYmVyID0gaXRlbVZhbHVlRnVuY3Rpb24uY2FsbCh0aGlzKTtcclxuICAgICAgaWYgKHZhbHVlQ3VyID4gbWF4KSB7XHJcbiAgICAgICAgbWF4ID0gdmFsdWVDdXI7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gbWF4O1xyXG4gIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { Weekday } from "../model/weekday.model";
|
|
2
|
+
import { Inject, LOCALE_ID } from "@angular/core";
|
|
3
|
+
import { LanguageCode } from "../enum/language-code.enum";
|
|
4
|
+
import { Week } from "../model/week.model";
|
|
5
|
+
export class CalendarUtils {
|
|
6
|
+
constructor(_locale) {
|
|
7
|
+
this._locale = _locale;
|
|
8
|
+
CalendarUtils.Locale = _locale;
|
|
9
|
+
}
|
|
10
|
+
// public static GetCurrentYear(): number {
|
|
11
|
+
// return this.Now.getFullYear();
|
|
12
|
+
// }
|
|
13
|
+
//
|
|
14
|
+
// public static GetCurrentMonth(): number {
|
|
15
|
+
// return this.Now.getUTCMonth() + 1;
|
|
16
|
+
// }
|
|
17
|
+
static GetDayHours(day) {
|
|
18
|
+
const datesByTheHour = [];
|
|
19
|
+
if (day) {
|
|
20
|
+
let newDate = new Date(day);
|
|
21
|
+
newDate.setHours(0, 0, 0, 0);
|
|
22
|
+
datesByTheHour.push(newDate);
|
|
23
|
+
for (let i = 0; i < 23; i++) {
|
|
24
|
+
newDate = new Date(newDate);
|
|
25
|
+
newDate.setHours(newDate.getHours() + 1);
|
|
26
|
+
datesByTheHour.push(newDate);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
return datesByTheHour;
|
|
30
|
+
}
|
|
31
|
+
static GetDaysOfWeek(date) {
|
|
32
|
+
let day = new Date();
|
|
33
|
+
const daysOfWeek = [];
|
|
34
|
+
let options;
|
|
35
|
+
let month;
|
|
36
|
+
for (let i = 0; i < 3; i++) {
|
|
37
|
+
const dayPerWeek = new Weekday();
|
|
38
|
+
const dayHours = CalendarUtils.GetDayHours(day);
|
|
39
|
+
dayPerWeek.newMonth = day.getMonth() !== month;
|
|
40
|
+
dayPerWeek.weekdaySelected = day.getDay() === date.getDay();
|
|
41
|
+
dayPerWeek.weekdayDay = day.getDate();
|
|
42
|
+
options = { weekday: "short" };
|
|
43
|
+
dayPerWeek.weekdayShort = day.toLocaleDateString(CalendarUtils.Locale, options);
|
|
44
|
+
options = { weekday: "long" };
|
|
45
|
+
dayPerWeek.weekdayLong = day.toLocaleDateString(CalendarUtils.Locale, options);
|
|
46
|
+
options = { month: "short" };
|
|
47
|
+
dayPerWeek.weekdayMonthShort = day.toLocaleDateString(CalendarUtils.Locale, options);
|
|
48
|
+
options = { month: "long" };
|
|
49
|
+
dayPerWeek.weekdayMonthLong = day.toLocaleDateString(CalendarUtils.Locale, options);
|
|
50
|
+
dayPerWeek.weekdayYear = day.getFullYear();
|
|
51
|
+
dayPerWeek.date = new Date(day);
|
|
52
|
+
dayPerWeek.datesByTheHour = dayHours;
|
|
53
|
+
daysOfWeek.push(dayPerWeek);
|
|
54
|
+
month = day.getMonth();
|
|
55
|
+
day = new Date(day);
|
|
56
|
+
day.setDate(day.getDate() + 1);
|
|
57
|
+
}
|
|
58
|
+
const week = new Week();
|
|
59
|
+
week.weekDays = daysOfWeek;
|
|
60
|
+
return week;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
CalendarUtils.Locale = undefined;
|
|
64
|
+
CalendarUtils.Now = new Date();
|
|
65
|
+
CalendarUtils.ctorParameters = () => [
|
|
66
|
+
{ type: LanguageCode, decorators: [{ type: Inject, args: [LOCALE_ID,] }] }
|
|
67
|
+
];
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXIudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvdXRpbHMvY2FsZW5kYXIudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLE9BQU8sRUFBQyxNQUFNLHdCQUF3QixDQUFDO0FBQy9DLE9BQU8sRUFBQyxNQUFNLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ2hELE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RCxPQUFPLEVBQUMsSUFBSSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFekMsTUFBTSxPQUFPLGFBQWE7SUFLdEIsWUFDd0MsT0FBcUI7UUFBckIsWUFBTyxHQUFQLE9BQU8sQ0FBYztRQUV6RCxhQUFhLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQztJQUNuQyxDQUFDO0lBRUQsMkNBQTJDO0lBQzNDLHFDQUFxQztJQUNyQyxJQUFJO0lBQ0osRUFBRTtJQUNGLDRDQUE0QztJQUM1Qyx5Q0FBeUM7SUFDekMsSUFBSTtJQUVHLE1BQU0sQ0FBQyxXQUFXLENBQUMsR0FBUztRQUMvQixNQUFNLGNBQWMsR0FBVyxFQUFFLENBQUM7UUFDbEMsSUFBSSxHQUFHLEVBQUU7WUFDTCxJQUFJLE9BQU8sR0FBUyxJQUFJLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUNsQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzdCLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDN0IsS0FBSyxJQUFJLENBQUMsR0FBVyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDakMsT0FBTyxHQUFHLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUM1QixPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDekMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUNoQztTQUNKO1FBQ0QsT0FBTyxjQUFjLENBQUM7SUFDMUIsQ0FBQztJQUVNLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBVTtRQUNsQyxJQUFJLEdBQUcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3JCLE1BQU0sVUFBVSxHQUFjLEVBQUUsQ0FBQztRQUNqQyxJQUFJLE9BQVksQ0FBQztRQUNqQixJQUFJLEtBQWEsQ0FBQztRQUNsQixLQUFLLElBQUksQ0FBQyxHQUFXLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ2hDLE1BQU0sVUFBVSxHQUFZLElBQUksT0FBTyxFQUFFLENBQUM7WUFDMUMsTUFBTSxRQUFRLEdBQVcsYUFBYSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN4RCxVQUFVLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQyxRQUFRLEVBQUUsS0FBSyxLQUFLLENBQUM7WUFDL0MsVUFBVSxDQUFDLGVBQWUsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLEtBQUssSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQzVELFVBQVUsQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3RDLE9BQU8sR0FBRyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsQ0FBQztZQUMvQixVQUFVLENBQUMsWUFBWSxHQUFHLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBQ2hGLE9BQU8sR0FBRyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUM5QixVQUFVLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQyxrQkFBa0IsQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1lBRS9FLE9BQU8sR0FBRyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsQ0FBQztZQUM3QixVQUFVLENBQUMsaUJBQWlCLEdBQUcsR0FBRyxDQUFDLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7WUFDckYsT0FBTyxHQUFHLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxDQUFDO1lBQzVCLFVBQVUsQ0FBQyxnQkFBZ0IsR0FBRyxHQUFHLENBQUMsa0JBQWtCLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRSxPQUFPLENBQUMsQ0FBQztZQUNwRixVQUFVLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUUzQyxVQUFVLENBQUMsSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ2hDLFVBQVUsQ0FBQyxjQUFjLEdBQUcsUUFBUSxDQUFDO1lBQ3JDLFVBQVUsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7WUFDNUIsS0FBSyxHQUFHLEdBQUcsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUN2QixHQUFHLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDcEIsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7U0FDbEM7UUFDRCxNQUFNLElBQUksR0FBUyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQzlCLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQzNCLE9BQU8sSUFBSSxDQUFDO0lBQ2hCLENBQUM7O0FBakVhLG9CQUFNLEdBQWlCLFNBQVMsQ0FBQztBQUVqQyxpQkFBRyxHQUFTLElBQUksSUFBSSxFQUFFLENBQUM7O1lBTmpDLFlBQVksdUJBU1gsTUFBTSxTQUFDLFNBQVMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RhdGVVdGlsc30gZnJvbSBcIi4vZGF0ZS11dGlsc1wiO1xyXG5pbXBvcnQge1dlZWtkYXl9IGZyb20gXCIuLi9tb2RlbC93ZWVrZGF5Lm1vZGVsXCI7XHJcbmltcG9ydCB7SW5qZWN0LCBMT0NBTEVfSUR9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7TGFuZ3VhZ2VDb2RlfSBmcm9tIFwiLi4vZW51bS9sYW5ndWFnZS1jb2RlLmVudW1cIjtcclxuaW1wb3J0IHtXZWVrfSBmcm9tIFwiLi4vbW9kZWwvd2Vlay5tb2RlbFwiO1xyXG5cclxuZXhwb3J0IGNsYXNzIENhbGVuZGFyVXRpbHMge1xyXG4gICAgcHVibGljIHN0YXRpYyBMb2NhbGU6IExhbmd1YWdlQ29kZSA9IHVuZGVmaW5lZDtcclxuXHJcbiAgICBwdWJsaWMgc3RhdGljIE5vdzogRGF0ZSA9IG5ldyBEYXRlKCk7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgQEluamVjdChMT0NBTEVfSUQpIHByaXZhdGUgcmVhZG9ubHkgX2xvY2FsZTogTGFuZ3VhZ2VDb2RlXHJcbiAgICApIHtcclxuICAgICAgICBDYWxlbmRhclV0aWxzLkxvY2FsZSA9IF9sb2NhbGU7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gcHVibGljIHN0YXRpYyBHZXRDdXJyZW50WWVhcigpOiBudW1iZXIge1xyXG4gICAgLy8gICAgIHJldHVybiB0aGlzLk5vdy5nZXRGdWxsWWVhcigpO1xyXG4gICAgLy8gfVxyXG4gICAgLy9cclxuICAgIC8vIHB1YmxpYyBzdGF0aWMgR2V0Q3VycmVudE1vbnRoKCk6IG51bWJlciB7XHJcbiAgICAvLyAgICAgcmV0dXJuIHRoaXMuTm93LmdldFVUQ01vbnRoKCkgKyAxO1xyXG4gICAgLy8gfVxyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgR2V0RGF5SG91cnMoZGF5OiBEYXRlKTogRGF0ZVtdIHtcclxuICAgICAgICBjb25zdCBkYXRlc0J5VGhlSG91cjogRGF0ZVtdID0gW107XHJcbiAgICAgICAgaWYgKGRheSkge1xyXG4gICAgICAgICAgICBsZXQgbmV3RGF0ZTogRGF0ZSA9IG5ldyBEYXRlKGRheSk7XHJcbiAgICAgICAgICAgIG5ld0RhdGUuc2V0SG91cnMoMCwgMCwgMCwgMCk7XHJcbiAgICAgICAgICAgIGRhdGVzQnlUaGVIb3VyLnB1c2gobmV3RGF0ZSk7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDA7IGkgPCAyMzsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICBuZXdEYXRlID0gbmV3IERhdGUobmV3RGF0ZSk7XHJcbiAgICAgICAgICAgICAgICBuZXdEYXRlLnNldEhvdXJzKG5ld0RhdGUuZ2V0SG91cnMoKSArIDEpO1xyXG4gICAgICAgICAgICAgICAgZGF0ZXNCeVRoZUhvdXIucHVzaChuZXdEYXRlKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gZGF0ZXNCeVRoZUhvdXI7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHN0YXRpYyBHZXREYXlzT2ZXZWVrKGRhdGU6IERhdGUpOiBXZWVrIHtcclxuICAgICAgICBsZXQgZGF5ID0gbmV3IERhdGUoKTtcclxuICAgICAgICBjb25zdCBkYXlzT2ZXZWVrOiBXZWVrZGF5W10gPSBbXTtcclxuICAgICAgICBsZXQgb3B0aW9uczogYW55O1xyXG4gICAgICAgIGxldCBtb250aDogbnVtYmVyO1xyXG4gICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDA7IGkgPCAzOyBpKyspIHtcclxuICAgICAgICAgICAgY29uc3QgZGF5UGVyV2VlazogV2Vla2RheSA9IG5ldyBXZWVrZGF5KCk7XHJcbiAgICAgICAgICAgIGNvbnN0IGRheUhvdXJzOiBEYXRlW10gPSBDYWxlbmRhclV0aWxzLkdldERheUhvdXJzKGRheSk7XHJcbiAgICAgICAgICAgIGRheVBlcldlZWsubmV3TW9udGggPSBkYXkuZ2V0TW9udGgoKSAhPT0gbW9udGg7XHJcbiAgICAgICAgICAgIGRheVBlcldlZWsud2Vla2RheVNlbGVjdGVkID0gZGF5LmdldERheSgpID09PSBkYXRlLmdldERheSgpO1xyXG4gICAgICAgICAgICBkYXlQZXJXZWVrLndlZWtkYXlEYXkgPSBkYXkuZ2V0RGF0ZSgpO1xyXG4gICAgICAgICAgICBvcHRpb25zID0geyB3ZWVrZGF5OiBcInNob3J0XCIgfTtcclxuICAgICAgICAgICAgZGF5UGVyV2Vlay53ZWVrZGF5U2hvcnQgPSBkYXkudG9Mb2NhbGVEYXRlU3RyaW5nKENhbGVuZGFyVXRpbHMuTG9jYWxlLCBvcHRpb25zKTtcclxuICAgICAgICAgICAgb3B0aW9ucyA9IHsgd2Vla2RheTogXCJsb25nXCIgfTtcclxuICAgICAgICAgICAgZGF5UGVyV2Vlay53ZWVrZGF5TG9uZyA9IGRheS50b0xvY2FsZURhdGVTdHJpbmcoQ2FsZW5kYXJVdGlscy5Mb2NhbGUsIG9wdGlvbnMpO1xyXG5cclxuICAgICAgICAgICAgb3B0aW9ucyA9IHsgbW9udGg6IFwic2hvcnRcIiB9O1xyXG4gICAgICAgICAgICBkYXlQZXJXZWVrLndlZWtkYXlNb250aFNob3J0ID0gZGF5LnRvTG9jYWxlRGF0ZVN0cmluZyhDYWxlbmRhclV0aWxzLkxvY2FsZSwgb3B0aW9ucyk7XHJcbiAgICAgICAgICAgIG9wdGlvbnMgPSB7IG1vbnRoOiBcImxvbmdcIiB9O1xyXG4gICAgICAgICAgICBkYXlQZXJXZWVrLndlZWtkYXlNb250aExvbmcgPSBkYXkudG9Mb2NhbGVEYXRlU3RyaW5nKENhbGVuZGFyVXRpbHMuTG9jYWxlLCBvcHRpb25zKTtcclxuICAgICAgICAgICAgZGF5UGVyV2Vlay53ZWVrZGF5WWVhciA9IGRheS5nZXRGdWxsWWVhcigpO1xyXG5cclxuICAgICAgICAgICAgZGF5UGVyV2Vlay5kYXRlID0gbmV3IERhdGUoZGF5KTtcclxuICAgICAgICAgICAgZGF5UGVyV2Vlay5kYXRlc0J5VGhlSG91ciA9IGRheUhvdXJzO1xyXG4gICAgICAgICAgICBkYXlzT2ZXZWVrLnB1c2goZGF5UGVyV2Vlayk7XHJcbiAgICAgICAgICAgIG1vbnRoID0gZGF5LmdldE1vbnRoKCk7XHJcbiAgICAgICAgICAgIGRheSA9IG5ldyBEYXRlKGRheSk7XHJcbiAgICAgICAgICAgIGRheS5zZXREYXRlKGRheS5nZXREYXRlKCkgKyAxKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgY29uc3Qgd2VlazogV2VlayA9IG5ldyBXZWVrKCk7XHJcbiAgICAgICAgd2Vlay53ZWVrRGF5cyA9IGRheXNPZldlZWs7XHJcbiAgICAgICAgcmV0dXJuIHdlZWs7XHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2stcHJlY2lzaW9uLWFuZC1zY2FsZS1yZXN1bHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaGFyZWRjb21wb25lbnRzL3NyYy9saWIvdXRpbHMvY2hlY2stcHJlY2lzaW9uLWFuZC1zY2FsZS1yZXN1bHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIi8vIE91dHB1dCBvYmplY3Qgc2hhcGUgZm9yIE51bWJlclV0aWxzLkNoZWNrUHJlY2lzaW9uQW5kU2NhbGUoKS5cclxuZXhwb3J0IGludGVyZmFjZSBDaGVja1ByZWNpc2lvbkFuZFNjYWxlUmVzdWx0IHtcclxuICAgIGlzT2s6IGJvb2xlYW47XHJcbiAgICBuZWFyZXN0T2tOcj86IG51bWJlcjtcclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2std2l0aGluLXN0ZXBwZWQtYm91bmRzLXJlc3VsdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3NoYXJlZGNvbXBvbmVudHMvc3JjL2xpYi91dGlscy9jaGVjay13aXRoaW4tc3RlcHBlZC1ib3VuZHMtcmVzdWx0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcclxuICogT3V0cHV0IG9iamVjdCBzaGFwZSBmb3IgTnVtYmVyVXRpbHMuQ2hlY2tXaXRoaW5TdGVwcGVkQm91bmRzKCkuIEZvciBlZmZpY2llbmN5LCB0aGlzIG1ldGhvZCBhbHNvIHJldHVybnMgdGhlIGZvdW5kIHJlbWFpbmRlciBpZiB0aGUgZ2l2ZW5cclxuICogbnVtYmVyIHdhcyBOT1Qgd2l0aGluIHRoZSBzcGVjaWZpZWQgc3RlcHBlZCBib3VuZHMuXHJcbiAqL1xyXG5leHBvcnQgaW50ZXJmYWNlIENoZWNrV2l0aGluU3RlcHBlZEJvdW5kc1Jlc3VsdCB7XHJcbiAgICBpc09rOiBib29sZWFuO1xyXG4gICAgcmVtYWluZGVyPzogbnVtYmVyO1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { FileType } from "../enum/file-type";
|
|
2
|
+
export class CoDocumentSharedFieldLogic {
|
|
3
|
+
static BuildAllDocuments(documentation, images) {
|
|
4
|
+
let allDocuments = [];
|
|
5
|
+
allDocuments = allDocuments.concat(documentation);
|
|
6
|
+
allDocuments = allDocuments.concat(images);
|
|
7
|
+
allDocuments.sort((a, b) => {
|
|
8
|
+
return a.index < b.index ? -1 : 1;
|
|
9
|
+
});
|
|
10
|
+
return allDocuments;
|
|
11
|
+
}
|
|
12
|
+
static BuildImagesAndDocumentation(documents) {
|
|
13
|
+
const images = [];
|
|
14
|
+
const documentation = [];
|
|
15
|
+
const len = documents.length;
|
|
16
|
+
for (let i = 0; i < len; i++) {
|
|
17
|
+
// re-index documents order
|
|
18
|
+
documents[i].index = i + 1;
|
|
19
|
+
if (documents[i].fileType === FileType.Image) {
|
|
20
|
+
images.push(documents[i]);
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
documentation.push(documents[i]);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return {
|
|
27
|
+
images: images,
|
|
28
|
+
documentation: documentation
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
// Returns an index number that is 1 higher than the highest one in the collection
|
|
32
|
+
static GenerateAvailableIndexNr(documents) {
|
|
33
|
+
const indexNumbers = [];
|
|
34
|
+
documents.forEach((collectionItem) => {
|
|
35
|
+
if (collectionItem && collectionItem.index > -1) {
|
|
36
|
+
indexNumbers.push(collectionItem.index);
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
indexNumbers.sort((a, b) => {
|
|
40
|
+
return a - b;
|
|
41
|
+
});
|
|
42
|
+
if (indexNumbers && indexNumbers.length > 0) {
|
|
43
|
+
return indexNumbers[indexNumbers.length - 1] + 1;
|
|
44
|
+
}
|
|
45
|
+
else {
|
|
46
|
+
return 0;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY28tZG9jdW1lbnQtc2hhcmVkLWZpZWxkLWxvZ2ljLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2hhcmVkY29tcG9uZW50cy9zcmMvbGliL3V0aWxzL2NvLWRvY3VtZW50LXNoYXJlZC1maWVsZC1sb2dpYy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFJM0MsTUFBTSxPQUFPLDBCQUEwQjtJQUU1QixNQUFNLENBQUMsaUJBQWlCLENBQUMsYUFBMkIsRUFBRSxNQUFvQjtRQUM3RSxJQUFJLFlBQVksR0FBaUIsRUFBRSxDQUFDO1FBQ3BDLFlBQVksR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQ2xELFlBQVksR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzNDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFhLEVBQUUsQ0FBYSxFQUFFLEVBQUU7WUFDL0MsT0FBTyxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdEMsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLFlBQVksQ0FBQztJQUN4QixDQUFDO0lBRU0sTUFBTSxDQUFDLDJCQUEyQixDQUFDLFNBQXVCO1FBQzdELE1BQU0sTUFBTSxHQUFpQixFQUFFLENBQUM7UUFDaEMsTUFBTSxhQUFhLEdBQWlCLEVBQUUsQ0FBQztRQUV2QyxNQUFNLEdBQUcsR0FBVyxTQUFTLENBQUMsTUFBTSxDQUFDO1FBQ3JDLEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDbEMsMkJBQTJCO1lBQzNCLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUMzQixJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEtBQUssUUFBUSxDQUFDLEtBQUssRUFBRTtnQkFDMUMsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUM3QjtpQkFBTTtnQkFDSCxhQUFhLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3BDO1NBQ0o7UUFFRCxPQUFPO1lBQ0gsTUFBTSxFQUFFLE1BQU07WUFDZCxhQUFhLEVBQUUsYUFBYTtTQUMvQixDQUFDO0lBQ04sQ0FBQztJQUVELGtGQUFrRjtJQUMzRSxNQUFNLENBQUMsd0JBQXdCLENBQUMsU0FBdUI7UUFDMUQsTUFBTSxZQUFZLEdBQWEsRUFBRSxDQUFDO1FBQ2xDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxjQUFjLEVBQUUsRUFBRTtZQUNqQyxJQUFJLGNBQWMsSUFBSSxjQUFjLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFO2dCQUM3QyxZQUFZLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUMzQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQVMsRUFBRSxDQUFTLEVBQUUsRUFBRTtZQUN2QyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDakIsQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLFlBQVksSUFBSSxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUN6QyxPQUFPLFlBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNwRDthQUFNO1lBQ0gsT0FBTyxDQUFDLENBQUM7U0FDWjtJQUNMLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29Eb2N1bWVudH0gZnJvbSBcIkBjb2xpam5pdC9tYWluYXBpL2J1aWxkL21vZGVsL2NvLWRvY3VtZW50XCI7XHJcbmltcG9ydCB7RmlsZVR5cGV9IGZyb20gXCIuLi9lbnVtL2ZpbGUtdHlwZVwiO1xyXG5pbXBvcnQge0J1aWxkSW1hZ2VzQW5kRG9jdW1lbnRhdGlvblJlc3VsdH0gZnJvbSBcIi4uL2J1c2luZXNzb2JqZWN0L2J1aWxkLWltYWdlcy1hbmQtZG9jdW1lbnRhdGlvbi1yZXN1bHRcIjtcclxuXHJcblxyXG5leHBvcnQgY2xhc3MgQ29Eb2N1bWVudFNoYXJlZEZpZWxkTG9naWMge1xyXG5cclxuICAgIHB1YmxpYyBzdGF0aWMgQnVpbGRBbGxEb2N1bWVudHMoZG9jdW1lbnRhdGlvbjogQ29Eb2N1bWVudFtdLCBpbWFnZXM6IENvRG9jdW1lbnRbXSk6IENvRG9jdW1lbnRbXSB7XHJcbiAgICAgICAgbGV0IGFsbERvY3VtZW50czogQ29Eb2N1bWVudFtdID0gW107XHJcbiAgICAgICAgYWxsRG9jdW1lbnRzID0gYWxsRG9jdW1lbnRzLmNvbmNhdChkb2N1bWVudGF0aW9uKTtcclxuICAgICAgICBhbGxEb2N1bWVudHMgPSBhbGxEb2N1bWVudHMuY29uY2F0KGltYWdlcyk7XHJcbiAgICAgICAgYWxsRG9jdW1lbnRzLnNvcnQoKGE6IENvRG9jdW1lbnQsIGI6IENvRG9jdW1lbnQpID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIGEuaW5kZXggPCBiLmluZGV4ID8gLTEgOiAxO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHJldHVybiBhbGxEb2N1bWVudHM7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIHN0YXRpYyBCdWlsZEltYWdlc0FuZERvY3VtZW50YXRpb24oZG9jdW1lbnRzOiBDb0RvY3VtZW50W10pOiBCdWlsZEltYWdlc0FuZERvY3VtZW50YXRpb25SZXN1bHQge1xyXG4gICAgICAgIGNvbnN0IGltYWdlczogQ29Eb2N1bWVudFtdID0gW107XHJcbiAgICAgICAgY29uc3QgZG9jdW1lbnRhdGlvbjogQ29Eb2N1bWVudFtdID0gW107XHJcblxyXG4gICAgICAgIGNvbnN0IGxlbjogbnVtYmVyID0gZG9jdW1lbnRzLmxlbmd0aDtcclxuICAgICAgICBmb3IgKGxldCBpOiBudW1iZXIgPSAwOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgLy8gcmUtaW5kZXggZG9jdW1lbnRzIG9yZGVyXHJcbiAgICAgICAgICAgIGRvY3VtZW50c1tpXS5pbmRleCA9IGkgKyAxO1xyXG4gICAgICAgICAgICBpZiAoZG9jdW1lbnRzW2ldLmZpbGVUeXBlID09PSBGaWxlVHlwZS5JbWFnZSkge1xyXG4gICAgICAgICAgICAgICAgaW1hZ2VzLnB1c2goZG9jdW1lbnRzW2ldKTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGRvY3VtZW50YXRpb24ucHVzaChkb2N1bWVudHNbaV0pO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICBpbWFnZXM6IGltYWdlcyxcclxuICAgICAgICAgICAgZG9jdW1lbnRhdGlvbjogZG9jdW1lbnRhdGlvblxyXG4gICAgICAgIH07XHJcbiAgICB9XHJcblxyXG4gICAgLy8gUmV0dXJucyBhbiBpbmRleCBudW1iZXIgdGhhdCBpcyAxIGhpZ2hlciB0aGFuIHRoZSBoaWdoZXN0IG9uZSBpbiB0aGUgY29sbGVjdGlvblxyXG4gICAgcHVibGljIHN0YXRpYyBHZW5lcmF0ZUF2YWlsYWJsZUluZGV4TnIoZG9jdW1lbnRzOiBDb0RvY3VtZW50W10pOiBudW1iZXIge1xyXG4gICAgICAgIGNvbnN0IGluZGV4TnVtYmVyczogbnVtYmVyW10gPSBbXTtcclxuICAgICAgICBkb2N1bWVudHMuZm9yRWFjaCgoY29sbGVjdGlvbkl0ZW0pID0+IHtcclxuICAgICAgICAgICAgaWYgKGNvbGxlY3Rpb25JdGVtICYmIGNvbGxlY3Rpb25JdGVtLmluZGV4ID4gLTEpIHtcclxuICAgICAgICAgICAgICAgIGluZGV4TnVtYmVycy5wdXNoKGNvbGxlY3Rpb25JdGVtLmluZGV4KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBpbmRleE51bWJlcnMuc29ydCgoYTogbnVtYmVyLCBiOiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgcmV0dXJuIGEgLSBiO1xyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICBpZiAoaW5kZXhOdW1iZXJzICYmIGluZGV4TnVtYmVycy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBpbmRleE51bWJlcnNbaW5kZXhOdW1iZXJzLmxlbmd0aCAtIDFdICsgMTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm4gMDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
|