@pepperi-addons/ngx-lib 0.4.2-beta.32 → 0.4.2-beta.320
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 +35 -0
- package/address/address.component.d.ts +9 -2
- package/attachment/attachment.component.d.ts +3 -1
- package/carousel/carousel.component.d.ts +3 -2
- package/checkbox/checkbox.component.d.ts +8 -1
- package/chips/chips.component.d.ts +4 -7
- package/chips/chips.service.d.ts +0 -3
- package/core/common/directives/auto-width.directive.d.ts +6 -2
- package/core/common/directives/base-destroyer.directive.d.ts +10 -0
- package/core/common/directives/public-api.d.ts +1 -0
- package/core/common/pipes/common-pipes.d.ts +5 -2
- package/core/common/services/addon.service.d.ts +6 -4
- package/core/common/services/file.service.d.ts +7 -2
- package/core/common/services/session.service.d.ts +2 -0
- package/core/common/services/utilities.service.d.ts +4 -4
- package/core/customization/customization.model.d.ts +4 -1
- package/core/customization/customization.service.d.ts +4 -0
- package/date/date.component.d.ts +4 -2
- package/draggable-items/draggable-item/draggable-item.component.d.ts +16 -2
- package/draggable-items/draggable-items.component.d.ts +3 -6
- package/draggable-items/draggable-items.module.d.ts +4 -3
- package/elements/README.md +256 -0
- package/esm2020/address/address.component.mjs +93 -5
- package/esm2020/assets/i18n/ar.ngx-lib.json +180 -0
- package/esm2020/assets/i18n/de.ngx-lib.json +180 -0
- package/esm2020/assets/i18n/en.ngx-lib.json +189 -0
- package/esm2020/assets/i18n/es.ngx-lib.json +180 -0
- package/esm2020/assets/i18n/fr.ngx-lib.json +180 -0
- package/esm2020/assets/i18n/he.ngx-lib.json +180 -0
- package/esm2020/assets/i18n/hu.ngx-lib.json +79 -0
- package/esm2020/assets/i18n/it.ngx-lib.json +180 -0
- package/esm2020/assets/i18n/ja.ngx-lib.json +180 -0
- package/esm2020/assets/i18n/nl.ngx-lib.json +79 -0
- package/esm2020/assets/i18n/pl.ngx-lib.json +180 -0
- package/esm2020/assets/i18n/pt.ngx-lib.json +180 -0
- package/esm2020/assets/i18n/ru.ngx-lib.json +79 -0
- package/esm2020/assets/i18n/sr.ngx-lib.json +180 -0
- package/esm2020/assets/i18n/zh.ngx-lib.json +180 -0
- package/esm2020/attachment/attachment.component.mjs +16 -6
- package/esm2020/carousel/carousel.component.mjs +14 -4
- package/esm2020/checkbox/checkbox.component.mjs +37 -3
- package/esm2020/chips/chips.component.mjs +11 -16
- package/esm2020/chips/chips.service.mjs +2 -11
- package/esm2020/color/color-picker.component.mjs +3 -3
- package/esm2020/color/color.component.mjs +3 -3
- package/esm2020/core/common/directives/auto-width.directive.mjs +29 -9
- package/esm2020/core/common/directives/base-destroyer.directive.mjs +22 -0
- package/esm2020/core/common/directives/public-api.mjs +2 -1
- package/esm2020/core/common/pipes/common-pipes.mjs +18 -8
- package/esm2020/core/common/services/addon.service.mjs +31 -7
- package/esm2020/core/common/services/data-convertor.service.mjs +3 -3
- package/esm2020/core/common/services/file.service.mjs +57 -20
- package/esm2020/core/common/services/session.service.mjs +5 -1
- package/esm2020/core/common/services/utilities.service.mjs +7 -7
- package/esm2020/core/customization/customization.model.mjs +46 -10
- package/esm2020/core/customization/customization.service.mjs +29 -1
- package/esm2020/core/http/services/http.service.mjs +17 -8
- package/esm2020/core/http/services/loader.service.mjs +3 -3
- package/esm2020/date/date.component.mjs +35 -13
- package/esm2020/dialog/dialog.component.mjs +3 -3
- package/esm2020/draggable-items/draggable-item/draggable-item.component.mjs +44 -4
- package/esm2020/draggable-items/draggable-items.component.mjs +7 -15
- package/esm2020/draggable-items/draggable-items.module.mjs +5 -1
- package/esm2020/field-title/field-title.component.mjs +6 -3
- package/esm2020/files-uploader/files-uploader.component.mjs +23 -32
- package/esm2020/form/field-generator.component.mjs +3 -3
- package/esm2020/form/form.component.mjs +7 -4
- package/esm2020/form/internal-button.component.mjs +2 -2
- package/esm2020/form/internal-carusel.component.mjs +10 -6
- package/esm2020/form/internal-field-generator.component.mjs +3 -3
- package/esm2020/form/internal-form.component.mjs +5 -3
- package/esm2020/form/internal-list.component.mjs +2 -2
- package/esm2020/form/internal-menu.component.mjs +4 -6
- package/esm2020/form/internal-page.component.mjs +3 -4
- package/esm2020/group-buttons/group-buttons.component.mjs +2 -2
- package/esm2020/icon/icon.component.mjs +36 -6
- package/esm2020/icon/icon.service.mjs +5 -1
- package/esm2020/image/image.component.mjs +15 -3
- package/esm2020/image/image.service.mjs +2 -4
- package/esm2020/images-filmstrip/images-filmstrip.component.mjs +99 -25
- package/esm2020/json-editor/json-editor.component.mjs +288 -0
- package/esm2020/json-editor/json-editor.module.mjs +83 -0
- package/esm2020/json-editor/json-tree-node.component.mjs +32 -0
- package/esm2020/json-editor/pepperi-addons-ngx-lib-json-editor.mjs +5 -0
- package/esm2020/json-editor/public-api.mjs +6 -0
- package/esm2020/lib/i18n/embedded-i18n.mjs +33 -0
- package/esm2020/link/link.component.mjs +25 -4
- package/esm2020/list/list-actions.component.mjs +1 -1
- package/esm2020/list/list-chooser.component.mjs +1 -1
- package/esm2020/list/list-pager.component.mjs +56 -9
- package/esm2020/list/list-sorting.component.mjs +1 -1
- package/esm2020/list/list-total.component.mjs +6 -3
- package/esm2020/list/list-views.component.mjs +1 -1
- package/esm2020/list/list.component.mjs +280 -50
- package/esm2020/list/list.model.mjs +1 -1
- package/esm2020/list/list.module.mjs +5 -1
- package/esm2020/list/virtual-scroller.mjs +16 -2
- package/esm2020/menu/menu-item.component.mjs +3 -3
- package/esm2020/menu/menu.component.mjs +6 -3
- package/esm2020/menu/menu.model.mjs +2 -1
- package/esm2020/page-layout/page-layout.component.mjs +28 -7
- package/esm2020/profile-data-views-list/profile-data-view/profile-data-view.component.mjs +1 -1
- package/esm2020/profile-data-views-list/profile-data-views-card/profile-data-views-card.component.mjs +25 -9
- package/esm2020/profile-data-views-list/profile-data-views-list.component.mjs +58 -26
- package/esm2020/profile-data-views-list/profile-data-views-list.model.mjs +1 -1
- package/esm2020/public-api.mjs +2 -1
- package/esm2020/quantity-selector/quantity-selector.component.mjs +67 -33
- package/esm2020/query-builder/common/model/legacy.mjs +1 -1
- package/esm2020/query-builder/common/model/operator.mjs +76 -64
- package/esm2020/query-builder/common/services/output-query.service.mjs +5 -3
- package/esm2020/query-builder/common/services/query-structure.service.mjs +34 -2
- package/esm2020/query-builder/query-builder-item/query-builder-item.component.mjs +14 -12
- package/esm2020/query-builder/query-builder-section/query-builder-section.component.mjs +3 -3
- package/esm2020/query-builder/query-builder.module.mjs +14 -3
- package/esm2020/query-builder/query-builder.service.mjs +4 -3
- package/esm2020/remote-loader/addon-block-loader.component.mjs +26 -16
- package/esm2020/remote-loader/addon-block-loader.service.mjs +5 -2
- package/esm2020/remote-loader/remote-loader-element.component.mjs +148 -27
- package/esm2020/remote-loader/remote-loader.component.mjs +1 -4
- package/esm2020/remote-loader/remote-loader.model.mjs +1 -1
- package/esm2020/remote-loader/remote-loader.service.mjs +49 -26
- package/esm2020/reset-configuration-field/pepperi-addons-ngx-lib-reset-configuration-field.mjs +5 -0
- package/esm2020/reset-configuration-field/public-api.mjs +3 -0
- package/esm2020/reset-configuration-field/reset-configuration-field.component.mjs +55 -0
- package/esm2020/reset-configuration-field/reset-configuration-field.module.mjs +36 -0
- package/esm2020/rich-html-textarea/rich-html-textarea.component.mjs +19 -3
- package/esm2020/search/search.component.mjs +43 -16
- package/esm2020/select/select.component.mjs +124 -53
- package/esm2020/select-panel/select-panel.component.mjs +4 -6
- package/esm2020/side-bar/side-bar.component.mjs +18 -4
- package/esm2020/signature/signature-dialog.component.mjs +9 -4
- package/esm2020/signature/signature.component.mjs +14 -7
- package/esm2020/size-detector/size-detector.component.mjs +16 -6
- package/esm2020/skeleton-loader/public-api.mjs +2 -2
- package/esm2020/skeleton-loader/skeleton-loader.component.mjs +33 -9
- package/esm2020/slider/slider.component.mjs +2 -2
- package/esm2020/smart-filters/boolean-filter/boolean-filter.component.mjs +1 -1
- package/esm2020/smart-filters/common/model/base-filter-component.mjs +5 -11
- package/esm2020/smart-filters/common/model/operator.mjs +15 -6
- package/esm2020/smart-filters/common/model/type.mjs +1 -1
- package/esm2020/smart-filters/date-filter/date-filter.component.mjs +1 -1
- package/esm2020/smart-filters/multi-select-filter/multi-select-filter.component.mjs +3 -3
- package/esm2020/smart-filters/number-filter/number-filter.component.mjs +3 -3
- package/esm2020/smart-filters/smart-filters.component.mjs +2 -2
- package/esm2020/smart-filters/text-filter/text-filter.component.mjs +27 -7
- package/esm2020/snack-bar/snack-bar.component.mjs +21 -6
- package/esm2020/textarea/textarea.component.mjs +12 -3
- package/esm2020/textbox/textbox-validation.directive.mjs +2 -4
- package/esm2020/textbox/textbox.component.mjs +85 -10
- package/esm2020/textbox-icon/textbox-icon.component.mjs +3 -3
- package/esm2020/top-bar/top-bar.component.mjs +26 -15
- package/fesm2015/pepperi-addons-ngx-lib-address.mjs +92 -5
- package/fesm2015/pepperi-addons-ngx-lib-address.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-attachment.mjs +15 -5
- package/fesm2015/pepperi-addons-ngx-lib-attachment.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-carousel.mjs +13 -3
- package/fesm2015/pepperi-addons-ngx-lib-carousel.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.mjs +37 -2
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-chips.mjs +11 -25
- package/fesm2015/pepperi-addons-ngx-lib-chips.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-color.mjs +4 -4
- package/fesm2015/pepperi-addons-ngx-lib-color.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-date.mjs +35 -12
- package/fesm2015/pepperi-addons-ngx-lib-date.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-dialog.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-dialog.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-draggable-items.mjs +54 -19
- package/fesm2015/pepperi-addons-ngx-lib-draggable-items.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-field-title.mjs +5 -2
- package/fesm2015/pepperi-addons-ngx-lib-field-title.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-files-uploader.mjs +22 -31
- package/fesm2015/pepperi-addons-ngx-lib-files-uploader.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-form.mjs +31 -25
- package/fesm2015/pepperi-addons-ngx-lib-form.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-group-buttons.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-group-buttons.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-icon.mjs +40 -5
- package/fesm2015/pepperi-addons-ngx-lib-icon.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-image.mjs +15 -5
- package/fesm2015/pepperi-addons-ngx-lib-image.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs +101 -24
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-json-editor.mjs +407 -0
- package/fesm2015/pepperi-addons-ngx-lib-json-editor.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-link.mjs +24 -3
- package/fesm2015/pepperi-addons-ngx-lib-link.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-list.mjs +367 -66
- package/fesm2015/pepperi-addons-ngx-lib-list.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-menu.mjs +8 -4
- package/fesm2015/pepperi-addons-ngx-lib-menu.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-page-layout.mjs +27 -6
- package/fesm2015/pepperi-addons-ngx-lib-page-layout.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.mjs +81 -33
- package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs +66 -31
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs +152 -84
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-remote-loader.mjs +237 -85
- package/fesm2015/pepperi-addons-ngx-lib-remote-loader.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-reset-configuration-field.mjs +95 -0
- package/fesm2015/pepperi-addons-ngx-lib-reset-configuration-field.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.mjs +18 -2
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-search.mjs +45 -15
- package/fesm2015/pepperi-addons-ngx-lib-search.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-select-panel.mjs +3 -5
- package/fesm2015/pepperi-addons-ngx-lib-select-panel.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-select.mjs +123 -51
- package/fesm2015/pepperi-addons-ngx-lib-select.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-side-bar.mjs +17 -3
- package/fesm2015/pepperi-addons-ngx-lib-side-bar.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-signature.mjs +23 -9
- package/fesm2015/pepperi-addons-ngx-lib-signature.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-size-detector.mjs +15 -5
- package/fesm2015/pepperi-addons-ngx-lib-size-detector.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-skeleton-loader.mjs +33 -9
- package/fesm2015/pepperi-addons-ngx-lib-skeleton-loader.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-slider.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-slider.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-smart-filters.mjs +53 -30
- package/fesm2015/pepperi-addons-ngx-lib-smart-filters.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-snack-bar.mjs +20 -5
- package/fesm2015/pepperi-addons-ngx-lib-snack-bar.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textarea.mjs +11 -2
- package/fesm2015/pepperi-addons-ngx-lib-textarea.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textbox-icon.mjs +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-textbox-icon.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs +87 -12
- package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-top-bar.mjs +26 -15
- package/fesm2015/pepperi-addons-ngx-lib-top-bar.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib.mjs +3441 -574
- package/fesm2015/pepperi-addons-ngx-lib.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-address.mjs +92 -5
- package/fesm2020/pepperi-addons-ngx-lib-address.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-attachment.mjs +15 -5
- package/fesm2020/pepperi-addons-ngx-lib-attachment.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-carousel.mjs +13 -3
- package/fesm2020/pepperi-addons-ngx-lib-carousel.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-checkbox.mjs +36 -2
- package/fesm2020/pepperi-addons-ngx-lib-checkbox.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-chips.mjs +11 -25
- package/fesm2020/pepperi-addons-ngx-lib-chips.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-color.mjs +4 -4
- package/fesm2020/pepperi-addons-ngx-lib-color.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-date.mjs +34 -12
- package/fesm2020/pepperi-addons-ngx-lib-date.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-dialog.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-dialog.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-draggable-items.mjs +54 -19
- package/fesm2020/pepperi-addons-ngx-lib-draggable-items.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-field-title.mjs +5 -2
- package/fesm2020/pepperi-addons-ngx-lib-field-title.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-files-uploader.mjs +22 -31
- package/fesm2020/pepperi-addons-ngx-lib-files-uploader.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-form.mjs +31 -25
- package/fesm2020/pepperi-addons-ngx-lib-form.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-group-buttons.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-group-buttons.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-icon.mjs +39 -5
- package/fesm2020/pepperi-addons-ngx-lib-icon.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-image.mjs +15 -5
- package/fesm2020/pepperi-addons-ngx-lib-image.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs +98 -24
- package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-json-editor.mjs +403 -0
- package/fesm2020/pepperi-addons-ngx-lib-json-editor.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-link.mjs +24 -3
- package/fesm2020/pepperi-addons-ngx-lib-link.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-list.mjs +362 -65
- package/fesm2020/pepperi-addons-ngx-lib-list.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-menu.mjs +8 -4
- package/fesm2020/pepperi-addons-ngx-lib-menu.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-page-layout.mjs +27 -6
- package/fesm2020/pepperi-addons-ngx-lib-page-layout.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-profile-data-views-list.mjs +81 -33
- package/fesm2020/pepperi-addons-ngx-lib-profile-data-views-list.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs +65 -31
- package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-query-builder.mjs +141 -82
- package/fesm2020/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-remote-loader.mjs +224 -70
- package/fesm2020/pepperi-addons-ngx-lib-remote-loader.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-reset-configuration-field.mjs +95 -0
- package/fesm2020/pepperi-addons-ngx-lib-reset-configuration-field.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-rich-html-textarea.mjs +18 -2
- package/fesm2020/pepperi-addons-ngx-lib-rich-html-textarea.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-search.mjs +42 -15
- package/fesm2020/pepperi-addons-ngx-lib-search.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-select-panel.mjs +3 -5
- package/fesm2020/pepperi-addons-ngx-lib-select-panel.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-select.mjs +122 -51
- package/fesm2020/pepperi-addons-ngx-lib-select.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-side-bar.mjs +17 -3
- package/fesm2020/pepperi-addons-ngx-lib-side-bar.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-signature.mjs +21 -9
- package/fesm2020/pepperi-addons-ngx-lib-signature.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-size-detector.mjs +15 -5
- package/fesm2020/pepperi-addons-ngx-lib-size-detector.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-skeleton-loader.mjs +33 -9
- package/fesm2020/pepperi-addons-ngx-lib-skeleton-loader.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-slider.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-slider.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-smart-filters.mjs +53 -30
- package/fesm2020/pepperi-addons-ngx-lib-smart-filters.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-snack-bar.mjs +20 -5
- package/fesm2020/pepperi-addons-ngx-lib-snack-bar.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textarea.mjs +11 -2
- package/fesm2020/pepperi-addons-ngx-lib-textarea.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textbox-icon.mjs +2 -2
- package/fesm2020/pepperi-addons-ngx-lib-textbox-icon.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textbox.mjs +85 -12
- package/fesm2020/pepperi-addons-ngx-lib-textbox.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-top-bar.mjs +25 -14
- package/fesm2020/pepperi-addons-ngx-lib-top-bar.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib.mjs +3436 -571
- package/fesm2020/pepperi-addons-ngx-lib.mjs.map +1 -1
- package/field-title/field-title.component.d.ts +2 -1
- package/files-uploader/files-uploader.component.d.ts +4 -2
- package/form/internal-carusel.component.d.ts +1 -0
- package/form/internal-menu.component.d.ts +1 -2
- package/icon/icon.component.d.ts +4 -0
- package/image/image.component.d.ts +3 -1
- package/images-filmstrip/images-filmstrip.component.d.ts +24 -8
- package/json-editor/index.d.ts +5 -0
- package/json-editor/json-editor.component.d.ts +75 -0
- package/json-editor/json-editor.component.theme.scss +5 -0
- package/json-editor/json-editor.module.d.ts +24 -0
- package/json-editor/json-tree-node.component.d.ts +18 -0
- package/json-editor/public-api.d.ts +2 -0
- package/lib/i18n/embedded-i18n.d.ts +1 -0
- package/link/link.component.d.ts +7 -2
- package/list/list-pager.component.d.ts +16 -6
- package/list/list-total.component.d.ts +2 -1
- package/list/list.component.d.ts +26 -5
- package/list/list.model.d.ts +2 -1
- package/list/list.module.d.ts +4 -3
- package/menu/menu.component.d.ts +2 -1
- package/menu/menu.model.d.ts +1 -0
- package/package.json +18 -2
- package/page-layout/page-layout.component.d.ts +8 -2
- package/profile-data-views-list/profile-data-view/profile-data-view.component.d.ts +3 -3
- package/profile-data-views-list/profile-data-views-card/profile-data-views-card.component.d.ts +5 -4
- package/profile-data-views-list/profile-data-views-list.component.d.ts +13 -10
- package/profile-data-views-list/profile-data-views-list.model.d.ts +8 -0
- package/public-api.d.ts +1 -0
- package/quantity-selector/quantity-selector.component.d.ts +9 -9
- package/query-builder/common/model/legacy.d.ts +3 -0
- package/query-builder/common/model/operator.d.ts +11 -1
- package/query-builder/common/services/query-structure.service.d.ts +1 -0
- package/query-builder/query-builder-item/query-builder-item.component.d.ts +3 -1
- package/query-builder/query-builder.module.d.ts +7 -3
- package/remote-loader/addon-block-loader.component.d.ts +4 -2
- package/remote-loader/remote-loader-element.component.d.ts +8 -1
- package/remote-loader/remote-loader.model.d.ts +1 -0
- package/remote-loader/remote-loader.service.d.ts +3 -1
- package/reset-configuration-field/index.d.ts +5 -0
- package/reset-configuration-field/public-api.d.ts +2 -0
- package/reset-configuration-field/reset-configuration-field.component.d.ts +23 -0
- package/reset-configuration-field/reset-configuration-field.module.d.ts +12 -0
- package/rich-html-textarea/rich-html-textarea.component.d.ts +4 -1
- package/rich-html-textarea/rich-html-textarea.component.theme.scss +4 -2
- package/search/search.component.d.ts +9 -3
- package/select/select.component.d.ts +18 -2
- package/select-panel/select-panel.component.d.ts +1 -2
- package/side-bar/side-bar.component.d.ts +4 -1
- package/signature/signature-dialog.component.d.ts +2 -1
- package/signature/signature.component.d.ts +2 -1
- package/size-detector/size-detector.component.d.ts +6 -3
- package/skeleton-loader/skeleton-loader.component.d.ts +15 -7
- package/slider/slider.component.theme.scss +4 -0
- package/smart-filters/boolean-filter/boolean-filter.component.d.ts +3 -0
- package/smart-filters/common/model/base-filter-component.d.ts +2 -4
- package/smart-filters/common/model/operator.d.ts +3 -0
- package/smart-filters/common/model/type.d.ts +1 -1
- package/smart-filters/date-filter/date-filter.component.d.ts +3 -0
- package/smart-filters/multi-select-filter/multi-select-filter.component.d.ts +3 -0
- package/smart-filters/number-filter/number-filter.component.d.ts +3 -0
- package/smart-filters/text-filter/text-filter.component.d.ts +4 -0
- package/snack-bar/snack-bar.component.d.ts +9 -4
- package/src/assets/i18n/ar.ngx-lib.json +180 -0
- package/src/assets/i18n/de.ngx-lib.json +106 -4
- package/src/assets/i18n/en.ngx-lib.json +17 -3
- package/src/assets/i18n/es.ngx-lib.json +113 -11
- package/src/assets/i18n/fr.ngx-lib.json +105 -4
- package/src/assets/i18n/he.ngx-lib.json +105 -4
- package/src/assets/i18n/it.ngx-lib.json +114 -13
- package/src/assets/i18n/ja.ngx-lib.json +105 -4
- package/src/assets/i18n/pl.ngx-lib.json +105 -4
- package/src/assets/i18n/pt.ngx-lib.json +105 -4
- package/src/assets/i18n/sr.ngx-lib.json +180 -0
- package/src/assets/i18n/zh.ngx-lib.json +105 -2
- package/src/core/style/abstracts/mixins.scss +135 -26
- package/src/core/style/abstracts/variables.scss +10 -1
- package/src/core/style/base/Spacing.stories.mdx +22 -22
- package/src/core/style/base/base.scss +24 -15
- package/src/core/style/base/typography.scss +2 -1
- package/src/core/style/components/button.scss +11 -0
- package/src/core/style/components/checkbox.scss +13 -63
- package/src/core/style/components/file.scss +4 -4
- package/src/core/style/components/general.scss +27 -9
- package/src/core/style/components/textarea.scss +13 -0
- package/textarea/textarea.component.d.ts +2 -1
- package/textbox/textbox.component.d.ts +10 -3
- package/theming.scss +5 -1
- package/top-bar/top-bar.component.d.ts +2 -0
- package/src/assets/images/sail-away.jpg +0 -0
- package/src/core/style/abstracts/AbstractsIntro.stories.mdx +0 -7
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
|
-
import { Subject } from 'rxjs';
|
|
3
|
-
import { takeUntil } from 'rxjs/operators';
|
|
4
2
|
import * as i0 from "@angular/core";
|
|
5
3
|
export class PepChipsService {
|
|
6
4
|
constructor() {
|
|
7
5
|
this._chips = [];
|
|
8
|
-
|
|
6
|
+
//
|
|
9
7
|
}
|
|
10
8
|
get chips() {
|
|
11
9
|
return this._chips;
|
|
@@ -29,17 +27,10 @@ export class PepChipsService {
|
|
|
29
27
|
selectable: chip.selectable !== undefined ? chip.selectable : true
|
|
30
28
|
});
|
|
31
29
|
}
|
|
32
|
-
destroy() {
|
|
33
|
-
this._destroyer.next();
|
|
34
|
-
this._destroyer.complete();
|
|
35
|
-
}
|
|
36
|
-
get destroyer() {
|
|
37
|
-
return takeUntil(this._destroyer);
|
|
38
|
-
}
|
|
39
30
|
}
|
|
40
31
|
PepChipsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepChipsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
41
32
|
PepChipsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepChipsService });
|
|
42
33
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepChipsService, decorators: [{
|
|
43
34
|
type: Injectable
|
|
44
35
|
}], ctorParameters: function () { return []; } });
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hpcHMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvY2hpcHMvY2hpcHMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUszQyxNQUFNLE9BQU8sZUFBZTtJQUd4QjtRQUZRLFdBQU0sR0FBZSxFQUFFLENBQUM7UUFHNUIsRUFBRTtJQUNOLENBQUM7SUFFRCxJQUFJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUVELElBQUksUUFBUTtRQUNSLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxRQUFRLENBQUMsS0FBaUI7UUFDdEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDakIsSUFBSSxLQUFLLEVBQUUsTUFBTSxFQUFFO1lBQ2YsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztTQUM3QztJQUNMLENBQUM7SUFFRCxPQUFPLENBQUMsSUFBYztRQUNsQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztZQUNiLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRztZQUNiLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSztZQUNqQixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEtBQUs7WUFDN0QsUUFBUSxFQUFFLElBQUksQ0FBQyxRQUFRLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLO1lBQzdELFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSTtZQUMvRCxVQUFVLEVBQUUsSUFBSSxDQUFDLFVBQVUsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUk7U0FDckUsQ0FBQyxDQUFBO0lBQ04sQ0FBQzs7NEdBL0JRLGVBQWU7Z0hBQWYsZUFBZTsyRkFBZixlQUFlO2tCQUQzQixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSVBlcENoaXAgfSBmcm9tICcuL2NoaXBzLm1vZGVsJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFBlcENoaXBzU2VydmljZSB7XG4gICAgcHJpdmF0ZSBfY2hpcHM6IElQZXBDaGlwW10gPSBbXTsgICAgXG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgLy9cbiAgICB9XG5cbiAgICBnZXQgY2hpcHMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jaGlwcztcbiAgICB9XG5cbiAgICBnZXQgc2VsZWN0ZWQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jaGlwcy5maWx0ZXIoY2hpcCA9PiBjaGlwLnNlbGVjdGVkKS5tYXAoY2hpcCA9PiBjaGlwLnZhbHVlKTtcbiAgICB9XG5cbiAgICBpbml0RGF0YShjaGlwczogSVBlcENoaXBbXSkge1xuICAgICAgICB0aGlzLl9jaGlwcyA9IFtdOyAgICAgIFxuICAgICAgICBpZiAoY2hpcHM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgY2hpcHMuZm9yRWFjaChjaGlwID0+IHRoaXMuYWRkQ2hpcChjaGlwKSk7XG4gICAgICAgIH0gICAgICAgIFxuICAgIH1cblxuICAgIGFkZENoaXAoY2hpcDogSVBlcENoaXApIHsgICAgICAgIFxuICAgICAgICB0aGlzLl9jaGlwcy5wdXNoKHtcbiAgICAgICAgICAgIGtleTogY2hpcC5rZXksXG4gICAgICAgICAgICB2YWx1ZTogY2hpcC52YWx1ZSxcbiAgICAgICAgICAgIGRpc2FibGVkOiBjaGlwLmRpc2FibGVkICE9PSB1bmRlZmluZWQgPyBjaGlwLmRpc2FibGVkIDogZmFsc2UsXG4gICAgICAgICAgICBzZWxlY3RlZDogY2hpcC5zZWxlY3RlZCAhPT0gdW5kZWZpbmVkID8gY2hpcC5zZWxlY3RlZCA6IGZhbHNlLFxuICAgICAgICAgICAgcmVtb3ZhYmxlOiBjaGlwLnJlbW92YWJsZSAhPT0gdW5kZWZpbmVkID8gY2hpcC5yZW1vdmFibGUgOiB0cnVlLFxuICAgICAgICAgICAgc2VsZWN0YWJsZTogY2hpcC5zZWxlY3RhYmxlICE9PSB1bmRlZmluZWQgPyBjaGlwLnNlbGVjdGFibGUgOiB0cnVlXG4gICAgICAgIH0pXG4gICAgfVxufSJdfQ==
|
|
@@ -213,12 +213,12 @@ export class PepColorPickerComponent {
|
|
|
213
213
|
}
|
|
214
214
|
PepColorPickerComponent.CURRENT_HUE = '--pep-color-picker-current-hue';
|
|
215
215
|
PepColorPickerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepColorPickerComponent, deps: [{ token: i1.PepColorService }, { token: i2.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
216
|
-
PepColorPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PepColorPickerComponent, selector: "ng-component", ngImport: i0, template: "<div class=\"pep-color-picker-container\">\n <pep-dialog [title]=\"'COLOR.DIALOG_TITLE' | translate\" (close)=\"closeDialog($event)\">\n <ng-container pep-dialog-content>\n <div class=\"color-chooser-content\">\n <div class=\"current-color\" [ngStyle]=\"{ 'background': data?.value ? data.value : 'transparent' }\"></div>\n\n <pep-slider class=\"slider-box\" [label]=\"'COLOR.CHANGE_HUE' | translate\" [minValue]=\"currentHueMin\"\n [maxValue]=\"currentHueMax\" [value]=\"currentHue\" [background]=\"currentHueBackground\"\n (valueChange)=\"onHueChange($event)\">\n </pep-slider>\n <pep-slider class=\"slider-box\" [label]=\"'COLOR.CHANGE_SATURATION' | translate\"\n [minValue]=\"currentSaturationMin\" [maxValue]=\"currentSaturationMax\" [value]=\"currentSaturation\"\n [background]=\"currentSaturationBackground\" (valueChange)=\"onSaturationChange($event)\">\n </pep-slider>\n <pep-slider class=\"slider-box\" [label]=\"'COLOR.CHANGE_LIGHTNESS' | translate\"\n [minValue]=\"currentLightnessMin\" [maxValue]=\"currentLightnessMax\"\n [value]=\"currentLightnessMax - currentLightness + currentLightnessMin\"\n [background]=\"currentLightnessBackground\" (valueChange)=\"onLightnessChange($event)\">\n </pep-slider>\n </div>\n <div class=\"color-value-content\">\n <div class=\"color-value\" [ngClass]=\"{ 'with-complient': checkAAComplient }\">\n <pep-textbox [key]=\"'colorValue'\" [label]=\"'COLOR.ADD_VALUE_HERE' | translate \"\n [value]=\"data?.value\" (valueChange)=\"onColorValueChange($event)\">\n </pep-textbox>\n </div>\n <div *ngIf=\"checkAAComplient\" class=\"color-complient-container\">\n <pep-field-title [label]=\"'COLOR.AA_COMPLIENT' | translate \">\n </pep-field-title>\n <div class=\"color-complient\" [ngStyle]=\"{ 'background': complientColor }\">\n <mat-icon *ngIf=\"isUserChooseAAComplientColor\">\n <pep-icon name=\"system_ok\">\n </pep-icon>\n </mat-icon>\n </div>\n </div>\n </div>\n </ng-container>\n <ng-container pep-dialog-actions>\n <div class=\"color-actions pep-spacing-element-negative\">\n <mat-checkbox *ngIf=\"data.showAAComplient\" class=\"pep-spacing-element\" type=\"checkbox\"\n id=\"checkAAComplient\" (change)=\"checkAAComplient = !checkAAComplient\" [checked]=\"checkAAComplient\">\n <span class=\"body-xs ellipsis\">{{ 'COLOR.AA_COMPLIENT' | translate }}</span>\n </mat-checkbox>\n <div>\n <button mat-button [mat-dialog-close]=\"null\" class=\"pep-spacing-element pep-button md weak\">\n {{'ACTIONS.CANCEL' | translate}}\n </button>\n <button mat-button class=\"pep-spacing-element pep-button md strong\" (click)=\"onSave($event)\">\n {{'ACTIONS.
|
|
216
|
+
PepColorPickerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PepColorPickerComponent, selector: "ng-component", ngImport: i0, template: "<div class=\"pep-color-picker-container\">\n <pep-dialog [title]=\"'COLOR.DIALOG_TITLE' | translate\" (close)=\"closeDialog($event)\">\n <ng-container pep-dialog-content>\n <div class=\"color-chooser-content\">\n <div class=\"current-color\" [ngStyle]=\"{ 'background': data?.value ? data.value : 'transparent' }\"></div>\n\n <pep-slider class=\"slider-box\" [label]=\"'COLOR.CHANGE_HUE' | translate\" [minValue]=\"currentHueMin\"\n [maxValue]=\"currentHueMax\" [value]=\"currentHue\" [background]=\"currentHueBackground\"\n (valueChange)=\"onHueChange($event)\">\n </pep-slider>\n <pep-slider class=\"slider-box\" [label]=\"'COLOR.CHANGE_SATURATION' | translate\"\n [minValue]=\"currentSaturationMin\" [maxValue]=\"currentSaturationMax\" [value]=\"currentSaturation\"\n [background]=\"currentSaturationBackground\" (valueChange)=\"onSaturationChange($event)\">\n </pep-slider>\n <pep-slider class=\"slider-box\" [label]=\"'COLOR.CHANGE_LIGHTNESS' | translate\"\n [minValue]=\"currentLightnessMin\" [maxValue]=\"currentLightnessMax\"\n [value]=\"currentLightnessMax - currentLightness + currentLightnessMin\"\n [background]=\"currentLightnessBackground\" (valueChange)=\"onLightnessChange($event)\">\n </pep-slider>\n </div>\n <div class=\"color-value-content\">\n <div class=\"color-value\" [ngClass]=\"{ 'with-complient': checkAAComplient }\">\n <pep-textbox [key]=\"'colorValue'\" [label]=\"'COLOR.ADD_VALUE_HERE' | translate \"\n [value]=\"data?.value\" (valueChange)=\"onColorValueChange($event)\">\n </pep-textbox>\n </div>\n <div *ngIf=\"checkAAComplient\" class=\"color-complient-container\">\n <pep-field-title [label]=\"'COLOR.AA_COMPLIENT' | translate \">\n </pep-field-title>\n <div class=\"color-complient\" [ngStyle]=\"{ 'background': complientColor }\">\n <mat-icon *ngIf=\"isUserChooseAAComplientColor\">\n <pep-icon name=\"system_ok\">\n </pep-icon>\n </mat-icon>\n </div>\n </div>\n </div>\n </ng-container>\n <ng-container pep-dialog-actions>\n <div class=\"color-actions pep-spacing-element-negative\" [ngStyle]=\"{'justify-content': data.showAAComplient ? 'space-between' : 'flex-end'}\">\n <mat-checkbox *ngIf=\"data.showAAComplient\" class=\"pep-spacing-element\" type=\"checkbox\"\n id=\"checkAAComplient\" (change)=\"checkAAComplient = !checkAAComplient\" [checked]=\"checkAAComplient\">\n <span class=\"body-xs ellipsis\">{{ 'COLOR.AA_COMPLIENT' | translate }}</span>\n </mat-checkbox>\n <div>\n <button mat-button [mat-dialog-close]=\"null\" class=\"pep-spacing-element pep-button md weak\">\n {{'ACTIONS.CANCEL' | translate}}\n </button>\n <button mat-button class=\"pep-spacing-element pep-button md strong\" (click)=\"onSave($event)\">\n {{'ACTIONS.DONE' | translate}}\n </button>\n </div>\n </div>\n </ng-container>\n </pep-dialog>\n</div>", styles: [".mat-slider-track-background,.mat-slider-horizontal .mat-slider-track-fill{display:none}.pepperi-color-picker-container ::ng-deep .mat-dialog-content,.pep-color-picker-container ::ng-deep .mat-dialog-content{padding:var(--pep-spacing-sm, .5rem) var(--pep-spacing-sm, .5rem) 0}.pepperi-color-picker-container .color-chooser-content,.pep-color-picker-container .color-chooser-content{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr);grid-column-gap:var(--pep-spacing-xl, 1.5rem);grid-row-gap:var(--pep-spacing-sm, .5rem);margin-top:var(--pep-spacing-sm, .5rem)}.pepperi-color-picker-container .color-chooser-content .current-color,.pep-color-picker-container .color-chooser-content .current-color{grid-row:1/span 3;grid-column:7/span 4;border-radius:var(--pep-border-radius-md, .25rem);width:9.25rem;height:9.25rem}.pepperi-color-picker-container .color-chooser-content .slider-box,.pep-color-picker-container .color-chooser-content .slider-box{grid-column:1/span 6}.pepperi-color-picker-container .color-value-content,.pep-color-picker-container .color-value-content{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(1,1fr);grid-column-gap:var(--pep-spacing-xl, 1.5rem);grid-row-gap:var(--pep-spacing-sm, .5rem);margin-top:1.5rem}.pepperi-color-picker-container .color-value-content .color-value,.pep-color-picker-container .color-value-content .color-value{grid-row:1/span 1;grid-column:1/span 9}.pepperi-color-picker-container .color-value-content .color-value.with-complient,.pep-color-picker-container .color-value-content .color-value.with-complient{grid-column:1/span 6}.pepperi-color-picker-container .color-value-content .color-complient-container,.pep-color-picker-container .color-value-content .color-complient-container{grid-column:7/span 4}.pepperi-color-picker-container .color-value-content .color-complient-container .color-complient,.pep-color-picker-container .color-value-content .color-complient-container .color-complient{display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);height:var(--pep-form-field-height, 2.5rem);width:9.25rem}.pepperi-color-picker-container ::ng-deep .mat-dialog-actions,.pep-color-picker-container ::ng-deep .mat-dialog-actions{display:block}.pepperi-color-picker-container ::ng-deep .mat-dialog-actions .color-actions,.pep-color-picker-container ::ng-deep .mat-dialog-actions .color-actions{display:flex;justify-content:space-between;align-items:center}\n", ".pepperi-color-picker-container .color-value-content .color-complient-container .color-complient ::ng-deep .mat-icon .svg-icon,.pep-color-picker-container .color-value-content .color-complient-container .color-complient ::ng-deep .mat-icon .svg-icon{fill:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}\n"], dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i5.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i2.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.PepDialogComponent, selector: "pep-dialog", inputs: ["title", "showClose", "showHeader", "showFooter"], outputs: ["close"] }, { kind: "component", type: i8.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }, { kind: "component", type: i9.PepSliderComponent, selector: "pep-slider", inputs: ["label", "disabled", "hint", "background", "step", "minValue", "maxValue", "value"], outputs: ["valueChange", "inputChange"] }, { kind: "component", type: i10.PepFieldTitleComponent, selector: "pep-field-title", inputs: ["label", "mandatory", "disabled", "maxFieldCharacters", "hint", "xAlignment", "showTitle", "inputLength", "fontBodyType", "multiLine"] }, { kind: "component", type: i11.PepTextboxComponent, selector: "pep-textbox", inputs: ["key", "value", "minFractionDigits", "maxFractionDigits", "accessory", "label", "placeholder", "type", "mandatory", "disabled", "readonly", "maxFieldCharacters", "hint", "textColor", "xAlignment", "rowSpan", "minValue", "maxValue", "visible", "form", "isActive", "showTitle", "renderTitle", "renderError", "renderSymbol", "layoutType", "parentFieldKey", "regex", "regexError", "isInFocus"], outputs: ["valueChange", "keyup", "validationChange"] }, { kind: "pipe", type: i12.TranslatePipe, name: "translate" }] });
|
|
217
217
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepColorPickerComponent, decorators: [{
|
|
218
218
|
type: Component,
|
|
219
|
-
args: [{ template: "<div class=\"pep-color-picker-container\">\n <pep-dialog [title]=\"'COLOR.DIALOG_TITLE' | translate\" (close)=\"closeDialog($event)\">\n <ng-container pep-dialog-content>\n <div class=\"color-chooser-content\">\n <div class=\"current-color\" [ngStyle]=\"{ 'background': data?.value ? data.value : 'transparent' }\"></div>\n\n <pep-slider class=\"slider-box\" [label]=\"'COLOR.CHANGE_HUE' | translate\" [minValue]=\"currentHueMin\"\n [maxValue]=\"currentHueMax\" [value]=\"currentHue\" [background]=\"currentHueBackground\"\n (valueChange)=\"onHueChange($event)\">\n </pep-slider>\n <pep-slider class=\"slider-box\" [label]=\"'COLOR.CHANGE_SATURATION' | translate\"\n [minValue]=\"currentSaturationMin\" [maxValue]=\"currentSaturationMax\" [value]=\"currentSaturation\"\n [background]=\"currentSaturationBackground\" (valueChange)=\"onSaturationChange($event)\">\n </pep-slider>\n <pep-slider class=\"slider-box\" [label]=\"'COLOR.CHANGE_LIGHTNESS' | translate\"\n [minValue]=\"currentLightnessMin\" [maxValue]=\"currentLightnessMax\"\n [value]=\"currentLightnessMax - currentLightness + currentLightnessMin\"\n [background]=\"currentLightnessBackground\" (valueChange)=\"onLightnessChange($event)\">\n </pep-slider>\n </div>\n <div class=\"color-value-content\">\n <div class=\"color-value\" [ngClass]=\"{ 'with-complient': checkAAComplient }\">\n <pep-textbox [key]=\"'colorValue'\" [label]=\"'COLOR.ADD_VALUE_HERE' | translate \"\n [value]=\"data?.value\" (valueChange)=\"onColorValueChange($event)\">\n </pep-textbox>\n </div>\n <div *ngIf=\"checkAAComplient\" class=\"color-complient-container\">\n <pep-field-title [label]=\"'COLOR.AA_COMPLIENT' | translate \">\n </pep-field-title>\n <div class=\"color-complient\" [ngStyle]=\"{ 'background': complientColor }\">\n <mat-icon *ngIf=\"isUserChooseAAComplientColor\">\n <pep-icon name=\"system_ok\">\n </pep-icon>\n </mat-icon>\n </div>\n </div>\n </div>\n </ng-container>\n <ng-container pep-dialog-actions>\n <div class=\"color-actions pep-spacing-element-negative\">\n <mat-checkbox *ngIf=\"data.showAAComplient\" class=\"pep-spacing-element\" type=\"checkbox\"\n id=\"checkAAComplient\" (change)=\"checkAAComplient = !checkAAComplient\" [checked]=\"checkAAComplient\">\n <span class=\"body-xs ellipsis\">{{ 'COLOR.AA_COMPLIENT' | translate }}</span>\n </mat-checkbox>\n <div>\n <button mat-button [mat-dialog-close]=\"null\" class=\"pep-spacing-element pep-button md weak\">\n {{'ACTIONS.CANCEL' | translate}}\n </button>\n <button mat-button class=\"pep-spacing-element pep-button md strong\" (click)=\"onSave($event)\">\n {{'ACTIONS.
|
|
219
|
+
args: [{ template: "<div class=\"pep-color-picker-container\">\n <pep-dialog [title]=\"'COLOR.DIALOG_TITLE' | translate\" (close)=\"closeDialog($event)\">\n <ng-container pep-dialog-content>\n <div class=\"color-chooser-content\">\n <div class=\"current-color\" [ngStyle]=\"{ 'background': data?.value ? data.value : 'transparent' }\"></div>\n\n <pep-slider class=\"slider-box\" [label]=\"'COLOR.CHANGE_HUE' | translate\" [minValue]=\"currentHueMin\"\n [maxValue]=\"currentHueMax\" [value]=\"currentHue\" [background]=\"currentHueBackground\"\n (valueChange)=\"onHueChange($event)\">\n </pep-slider>\n <pep-slider class=\"slider-box\" [label]=\"'COLOR.CHANGE_SATURATION' | translate\"\n [minValue]=\"currentSaturationMin\" [maxValue]=\"currentSaturationMax\" [value]=\"currentSaturation\"\n [background]=\"currentSaturationBackground\" (valueChange)=\"onSaturationChange($event)\">\n </pep-slider>\n <pep-slider class=\"slider-box\" [label]=\"'COLOR.CHANGE_LIGHTNESS' | translate\"\n [minValue]=\"currentLightnessMin\" [maxValue]=\"currentLightnessMax\"\n [value]=\"currentLightnessMax - currentLightness + currentLightnessMin\"\n [background]=\"currentLightnessBackground\" (valueChange)=\"onLightnessChange($event)\">\n </pep-slider>\n </div>\n <div class=\"color-value-content\">\n <div class=\"color-value\" [ngClass]=\"{ 'with-complient': checkAAComplient }\">\n <pep-textbox [key]=\"'colorValue'\" [label]=\"'COLOR.ADD_VALUE_HERE' | translate \"\n [value]=\"data?.value\" (valueChange)=\"onColorValueChange($event)\">\n </pep-textbox>\n </div>\n <div *ngIf=\"checkAAComplient\" class=\"color-complient-container\">\n <pep-field-title [label]=\"'COLOR.AA_COMPLIENT' | translate \">\n </pep-field-title>\n <div class=\"color-complient\" [ngStyle]=\"{ 'background': complientColor }\">\n <mat-icon *ngIf=\"isUserChooseAAComplientColor\">\n <pep-icon name=\"system_ok\">\n </pep-icon>\n </mat-icon>\n </div>\n </div>\n </div>\n </ng-container>\n <ng-container pep-dialog-actions>\n <div class=\"color-actions pep-spacing-element-negative\" [ngStyle]=\"{'justify-content': data.showAAComplient ? 'space-between' : 'flex-end'}\">\n <mat-checkbox *ngIf=\"data.showAAComplient\" class=\"pep-spacing-element\" type=\"checkbox\"\n id=\"checkAAComplient\" (change)=\"checkAAComplient = !checkAAComplient\" [checked]=\"checkAAComplient\">\n <span class=\"body-xs ellipsis\">{{ 'COLOR.AA_COMPLIENT' | translate }}</span>\n </mat-checkbox>\n <div>\n <button mat-button [mat-dialog-close]=\"null\" class=\"pep-spacing-element pep-button md weak\">\n {{'ACTIONS.CANCEL' | translate}}\n </button>\n <button mat-button class=\"pep-spacing-element pep-button md strong\" (click)=\"onSave($event)\">\n {{'ACTIONS.DONE' | translate}}\n </button>\n </div>\n </div>\n </ng-container>\n </pep-dialog>\n</div>", styles: [".mat-slider-track-background,.mat-slider-horizontal .mat-slider-track-fill{display:none}.pepperi-color-picker-container ::ng-deep .mat-dialog-content,.pep-color-picker-container ::ng-deep .mat-dialog-content{padding:var(--pep-spacing-sm, .5rem) var(--pep-spacing-sm, .5rem) 0}.pepperi-color-picker-container .color-chooser-content,.pep-color-picker-container .color-chooser-content{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(3,1fr);grid-column-gap:var(--pep-spacing-xl, 1.5rem);grid-row-gap:var(--pep-spacing-sm, .5rem);margin-top:var(--pep-spacing-sm, .5rem)}.pepperi-color-picker-container .color-chooser-content .current-color,.pep-color-picker-container .color-chooser-content .current-color{grid-row:1/span 3;grid-column:7/span 4;border-radius:var(--pep-border-radius-md, .25rem);width:9.25rem;height:9.25rem}.pepperi-color-picker-container .color-chooser-content .slider-box,.pep-color-picker-container .color-chooser-content .slider-box{grid-column:1/span 6}.pepperi-color-picker-container .color-value-content,.pep-color-picker-container .color-value-content{display:grid;grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(1,1fr);grid-column-gap:var(--pep-spacing-xl, 1.5rem);grid-row-gap:var(--pep-spacing-sm, .5rem);margin-top:1.5rem}.pepperi-color-picker-container .color-value-content .color-value,.pep-color-picker-container .color-value-content .color-value{grid-row:1/span 1;grid-column:1/span 9}.pepperi-color-picker-container .color-value-content .color-value.with-complient,.pep-color-picker-container .color-value-content .color-value.with-complient{grid-column:1/span 6}.pepperi-color-picker-container .color-value-content .color-complient-container,.pep-color-picker-container .color-value-content .color-complient-container{grid-column:7/span 4}.pepperi-color-picker-container .color-value-content .color-complient-container .color-complient,.pep-color-picker-container .color-value-content .color-complient-container .color-complient{display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);height:var(--pep-form-field-height, 2.5rem);width:9.25rem}.pepperi-color-picker-container ::ng-deep .mat-dialog-actions,.pep-color-picker-container ::ng-deep .mat-dialog-actions{display:block}.pepperi-color-picker-container ::ng-deep .mat-dialog-actions .color-actions,.pep-color-picker-container ::ng-deep .mat-dialog-actions .color-actions{display:flex;justify-content:space-between;align-items:center}\n", ".pepperi-color-picker-container .color-value-content .color-complient-container .color-complient ::ng-deep .mat-icon .svg-icon,.pep-color-picker-container .color-value-content .color-complient-container .color-complient ::ng-deep .mat-icon .svg-icon{fill:hsl(var(--pep-color-system-primary-invert-h, 255),var(--pep-color-system-primary-invert-s, 100%),var(--pep-color-system-primary-invert-l, 100%))}\n"] }]
|
|
220
220
|
}], ctorParameters: function () { return [{ type: i1.PepColorService }, { type: i2.MatDialogRef }, { type: undefined, decorators: [{
|
|
221
221
|
type: Inject,
|
|
222
222
|
args: [MAT_DIALOG_DATA]
|
|
223
223
|
}] }]; } });
|
|
224
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvY29sb3IvY29sb3ItcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvY29sb3IvY29sb3ItcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBZ0IsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBY3pFLElBQUssb0JBR0o7QUFIRCxXQUFLLG9CQUFvQjtJQUNyQiw2REFBUSxDQUFBO0lBQ1IsNkRBQU8sQ0FBQTtBQUNYLENBQUMsRUFISSxvQkFBb0IsS0FBcEIsb0JBQW9CLFFBR3hCO0FBZ0JELE1BQU0sT0FBTyx1QkFBdUI7SUFNaEMsWUFDWSxZQUE2QixFQUM3QixTQUFnRCxFQUN4QixJQUErQjtRQUZ2RCxpQkFBWSxHQUFaLFlBQVksQ0FBaUI7UUFDN0IsY0FBUyxHQUFULFNBQVMsQ0FBdUM7UUFDeEIsU0FBSSxHQUFKLElBQUksQ0FBMkI7UUFQbEQsaUJBQVksR0FBRyxNQUFNLENBQUM7UUFFdkMscUJBQWdCLEdBQUcsSUFBSSxDQUFDO1FBa0JoQix5QkFBb0IsR0FBRzs7Ozs7OztrQ0FPRCxDQUFDO1FBRS9CLGVBQVUsR0FBRyxHQUFHLENBQUM7UUFDakIsa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFDbEIsa0JBQWEsR0FBRyxHQUFHLENBQUM7UUFDcEIseUJBQW9CLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDO1FBRXpDLGdDQUEyQixHQUFHOztrRUFFd0IsQ0FBQztRQUUvRCxzQkFBaUIsR0FBRyxFQUFFLENBQUM7UUFDdkIseUJBQW9CLEdBQUcsQ0FBQyxDQUFDO1FBQ3pCLHlCQUFvQixH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ZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbi8vIGltcG9ydCB7XG4vLyAgICAgaGV4MmhzbCxcbi8vICAgICBoc2xTdHJpbmcyaHNsLFxuLy8gICAgIHJnYlN0cmluZzJoc2wsXG4vLyAgICAgSVBlcEhzbENvbG9yLFxuLy8gICAgIGZpbmRDbG9zZXN0QWNjZXNzaWJsZUNvbG9yLFxuLy8gICAgIGhzbDJoZXgsXG4vLyAgICAgY29udmVydEhzbFRvU3RyaW5nSHNsLFxuLy8gfSBmcm9tICcuL2NvbG9yLXV0aWxzJztcbmltcG9ydCB7IFBlcENvbG9yU2VydmljZSwgSVBlcEhzbENvbG9yIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWInO1xuXG5pbXBvcnQgeyBQZXBDb2xvclR5cGUgfSBmcm9tICcuL2NvbG9yLm1vZGVsJztcblxuZW51bSBQZXBDb250cmFzdFJhdGlvVHlwZSB7XG4gICAgQUEgPSA0LjUsXG4gICAgQUFBID0gNyxcbn1cblxuaW50ZXJmYWNlIElQZXBDb2xvclBpY2tlckRpYWxvZ0RhdGEge1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gICAgdHlwZTogUGVwQ29sb3JUeXBlO1xuICAgIC8vIFRPRE8gZml4IHR5cG8gQ29tcGxpZW50IC0+IENvbXBsaWFudFxuICAgIHNob3dBQUNvbXBsaWVudDogYm9vbGVhbjtcbiAgICBjaGVja0FBQ29tcGxpZW50OiBib29sZWFuO1xuICAgIHRleHRDb2xvcjogc3RyaW5nO1xuICAgIGNvbnRyYXN0UmF0aW86IFBlcENvbnRyYXN0UmF0aW9UeXBlO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogJy4vY29sb3ItcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jb2xvci1waWNrZXIuY29tcG9uZW50LnNjc3MnLCAnLi9jb2xvci1waWNrZXIuY29tcG9uZW50LnRoZW1lLnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUGVwQ29sb3JQaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHN0YXRpYyBDVVJSRU5UX0hVRSA9ICctLXBlcC1jb2xvci1waWNrZXItY3VycmVudC1odWUnO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVmYXVsdENvbG9yID0gJyNjY2MnO1xuXG4gICAgY2hlY2tBQUNvbXBsaWVudCA9IHRydWU7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBjb2xvclNlcnZpY2U6IFBlcENvbG9yU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxQZXBDb2xvclBpY2tlckNvbXBvbmVudD4sXG4gICAgICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogSVBlcENvbG9yUGlja2VyRGlhbG9nRGF0YVxuICAgICkge1xuICAgICAgICB0aGlzLmRhdGEudHlwZSA9IGRhdGEgPyBkYXRhLnR5cGUgOiAnYW55JztcbiAgICAgICAgdGhpcy5kYXRhLnNob3dBQUNvbXBsaWVudCA9ICFkYXRhXG4gICAgICAgICAgICA/IGZhbHNlXG4gICAgICAgICAgICA6IGRhdGEuc2hvd0FBQ29tcGxpZW50ID8/IHRydWU7XG4gICAgICAgIHRoaXMuZGF0YS50ZXh0Q29sb3IgPSBkYXRhICYmIGRhdGEudGV4dENvbG9yID8gZGF0YS50ZXh0Q29sb3IgOiAnI2ZmZic7XG4gICAgICAgIHRoaXMuZGF0YS5jb250cmFzdFJhdGlvID1cbiAgICAgICAgICAgIGRhdGEgJiYgZGF0YS5jb250cmFzdFJhdGlvXG4gICAgICAgICAgICAgICAgPyBkYXRhLmNvbnRyYXN0UmF0aW9cbiAgICAgICAgICAgICAgICA6IFBlcENvbnRyYXN0UmF0aW9UeXBlLkFBO1xuICAgIH1cblxuICAgIHByaXZhdGUgZGVmYXVsdEh1ZUJhY2tncm91bmQgPSBgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LFxuICAgICAgICBoc2woMCwgMTAwJSwgNTAlKSAwJSxcbiAgICAgICAgaHNsKDYwLCAxMDAlLCA1MCUpIDE3JSxcbiAgICAgICAgaHNsKDEyMCwgMTAwJSwgNTAlKSAzMyUsXG4gICAgICAgIGhzbCgxODAsIDEwMCUsIDUwJSkgNTAlLFxuICAgICAgICBoc2woMjQwLCAxMDAlLCA1MCUpIDY3JSxcbiAgICAgICAgaHNsKDMwMCwgMTAwJSwgNTAlKSA4MyUsXG4gICAgICAgIGhzbCgzNjAsIDEwMCUsIDUwJSkgMTAwJSlgO1xuXG4gICAgY3VycmVudEh1ZSA9IDEwMDtcbiAgICBjdXJyZW50SHVlTWluID0gMDtcbiAgICBjdXJyZW50SHVlTWF4ID0gMzYwO1xuICAgIGN1cnJlbnRIdWVCYWNrZ3JvdW5kID0gdGhpcy5kZWZhdWx0SHVlQmFja2dyb3VuZDtcblxuICAgIHByaXZhdGUgZGVmYXVsdFNhdHVyYXRpb25CYWNrZ3JvdW5kID0gYGxpbmVhci1ncmFkaWVudCh0byByaWdodCxcbiAgICAgICAgaHNsKHZhcigtLXBlcC1jb2xvci1waWNrZXItY3VycmVudC1odWUpLCAwLjAxJSwgNTAlKSAwJSxcbiAgICAgICAgaHNsKHZhcigtLXBlcC1jb2xvci1waWNrZXItY3VycmVudC1odWUpLCAxMDAlLCA1MCUpIDEwMCUpYDtcblxuICAgIGN1cnJlbnRTYXR1cmF0aW9uID0gNTA7XG4gICAgY3VycmVudFNhdHVyYXRpb25NaW4gPSAwO1xuICAgIGN1cnJlbnRTYXR1cmF0aW9uTWF4ID0gMTAwO1xuICAgIGN1cnJlbnRTYXR1cmF0aW9uQmFja2dyb3VuZCA9IHRoaXMuZGVmYXVsdFNhdHVyYXRpb25CYWNrZ3JvdW5kO1xuXG4gICAgcHJpdmF0ZSBkZWZhdWx0TGlnaHRuZXNzQmFja2dyb3VuZCA9IGBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsXG4gICAgICAgIGhzbCh2YXIoLS1wZXAtY29sb3ItcGlja2VyLWN1cnJlbnQtaHVlKSwgMTAwJSwgMTAwJSkgMCUsXG4gICAgICAgIGhzbCh2YXIoLS1wZXAtY29sb3ItcGlja2VyLWN1cnJlbnQtaHVlKSwgMTAwJSwgNTAlKSA1MCUsXG4gICAgICAgIGhzbCh2YXIoLS1wZXAtY29sb3ItcGlja2VyLWN1cnJlbnQtaHVlKSwgMTAwJSwgMC4wMSUpIDEwMCUpYDtcblxuICAgIGN1cnJlbnRMaWdodG5lc3MgPSA1MDtcbiAgICBjdXJyZW50TGlnaHRuZXNzTWluID0gMDtcbiAgICBjdXJyZW50TGlnaHRuZXNzTWF4ID0gMTAwO1xuICAgIGN1cnJlbnRMaWdodG5lc3NCYWNrZ3JvdW5kID0gdGhpcy5kZWZhdWx0TGlnaHRuZXNzQmFja2dyb3VuZDtcblxuICAgIGNvbXBsaWVudENvbG9yOiBzdHJpbmc7XG4gICAgaXNVc2VyQ2hvb3NlQUFDb21wbGllbnRDb2xvcjogYm9vbGVhbjtcblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmluaXRWYXJzKCk7XG4gICAgICAgIHRoaXMuY2hlY2tBQUNvbXBsaWVudCA9IHRoaXMuZGF0YS5jaGVja0FBQ29tcGxpZW50O1xuICAgICAgICB0aGlzLmNvbnZlcnRWYWx1ZVN0cmluZ1RvQ29sb3IodGhpcy5kYXRhLnZhbHVlKTtcbiAgICB9XG5cbiAgICBpbml0VmFycygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGF0YS50eXBlID09PSAnbWFpbicpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudExpZ2h0bmVzc01heCA9IDEwO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50TGlnaHRuZXNzID0gNTtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudEh1ZUJhY2tncm91bmQgPSB0aGlzLmRlZmF1bHRIdWVCYWNrZ3JvdW5kO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50U2F0dXJhdGlvbkJhY2tncm91bmQgPSB0aGlzLmRlZmF1bHRTYXR1cmF0aW9uQmFja2dyb3VuZDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudExpZ2h0bmVzc0JhY2tncm91bmQgPSB0aGlzLmRlZmF1bHRMaWdodG5lc3NCYWNrZ3JvdW5kO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZGF0YS50eXBlID09PSAnc3VjY2VzcycpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudEh1ZU1pbiA9IDcwO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50SHVlTWF4ID0gMTUwO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50SHVlID0gMTAwO1xuXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRTYXR1cmF0aW9uTWluID0gNTA7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRTYXR1cmF0aW9uTWF4ID0gMTAwO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50U2F0dXJhdGlvbiA9IDUwO1xuXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRMaWdodG5lc3NNaW4gPSAxMDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudExpZ2h0bmVzc01heCA9IDY1O1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50TGlnaHRuZXNzID0gNTA7XG5cbiAgICAgICAgICAgIHRoaXMuY3VycmVudEh1ZUJhY2tncm91bmQgPSBgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LFxuICAgICAgICAgICAgICAgIGhzbCg3MCwgMTAwJSwgNTAlKSAwJSxcbiAgICAgICAgICAgICAgICBoc2woMTUwLCAxMDAlLCA1MCUpIDEwMCUpYDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFNhdHVyYXRpb25CYWNrZ3JvdW5kID0gYGxpbmVhci1ncmFkaWVudCh0byByaWdodCxcbiAgICAgICAgICAgICAgICBoc2wodmFyKC0tcGVwLWNvbG9yLXBpY2tlci1jdXJyZW50LWh1ZSksIDUwJSwgNTAlKSA1MCUsXG4gICAgICAgICAgICAgICAgaHNsKHZhcigtLXBlcC1jb2xvci1waWNrZXItY3VycmVudC1odWUpLCAxMDAlLCA1MCUpIDEwMCUpYDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudExpZ2h0bmVzc0JhY2tncm91bmQgPSBgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LFxuICAgICAgICAgICAgICAgIGhzbCh2YXIoLS1wZXAtY29sb3ItcGlja2VyLWN1cnJlbnQtaHVlKSwgMTAwJSwgNjUlKSAxMCUsXG4gICAgICAgICAgICAgICAgaHNsKHZhcigtLXBlcC1jb2xvci1waWNrZXItY3VycmVudC1odWUpLCAxMDAlLCAzNSUpIDM1JSxcbiAgICAgICAgICAgICAgICBoc2wodmFyKC0tcGVwLWNvbG9yLXBpY2tlci1jdXJyZW50LWh1ZSksIDEwMCUsIDEwJSkgNjUlKWA7XG5cbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmRhdGEudHlwZSA9PT0gJ2NhdXRpb24nKSB7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRIdWVNaW4gPSAtMjA7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRIdWVNYXggPSAyMDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudEh1ZSA9IDEwO1xuXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRTYXR1cmF0aW9uTWluID0gNzU7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRTYXR1cmF0aW9uTWF4ID0gMTAwO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50U2F0dXJhdGlvbiA9IDc1O1xuXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRMaWdodG5lc3NNaW4gPSAyNTtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudExpZ2h0bmVzc01heCA9IDc1O1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50TGlnaHRuZXNzID0gNTA7XG5cbiAgICAgICAgICAgIHRoaXMuY3VycmVudEh1ZUJhY2tncm91bmQgPSBgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LFxuICAgICAgICAgICAgICAgIGhzbCgzNDAsIDEwMCUsIDUwJSkgMCUsXG4gICAgICAgICAgICAgICAgaHNsKDIwLCAxMDAlLCA1MCUpIDEwMCUpYDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFNhdHVyYXRpb25CYWNrZ3JvdW5kID0gYGxpbmVhci1ncmFkaWVudCh0byByaWdodCxcbiAgICAgICAgICAgICAgICBoc2wodmFyKC0tcGVwLWNvbG9yLXBpY2tlci1jdXJyZW50LWh1ZSksIDc1JSwgNTAlKSA3NSUsXG4gICAgICAgICAgICAgICAgaHNsKHZhcigtLXBlcC1jb2xvci1waWNrZXItY3VycmVudC1odWUpLCAxMDAlLCA1MCUpIDEwMCUpYDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudExpZ2h0bmVzc0JhY2tncm91bmQgPSBgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LFxuICAgICAgICAgICAgICAgIGhzbCh2YXIoLS1wZXAtY29sb3ItcGlja2VyLWN1cnJlbnQtaHVlKSwgMTAwJSwgNzUlKSAyNSUsXG4gICAgICAgICAgICAgICAgaHNsKHZhcigtLXBlcC1jb2xvci1waWNrZXItY3VycmVudC1odWUpLCAxMDAlLCA1MCUpIDUwJSxcbiAgICAgICAgICAgICAgICBoc2wodmFyKC0tcGVwLWNvbG9yLXBpY2tlci1jdXJyZW50LWh1ZSksIDEwMCUsIDI1JSkgNzUlKWA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRDdXJyZW50SHVlSW5Dc3MoKTogdm9pZCB7XG4gICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcbiAgICAgICAgICAgIFBlcENvbG9yUGlja2VyQ29tcG9uZW50LkNVUlJFTlRfSFVFLFxuICAgICAgICAgICAgdGhpcy5jdXJyZW50SHVlLnRvU3RyaW5nKClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBjb252ZXJ0VmFsdWVTdHJpbmdUb0NvbG9yKGNvbG9yKTogdm9pZCB7XG4gICAgICAgIGlmIChjb2xvci5pbmRleE9mKCdoc2wnKSA9PT0gMCkge1xuICAgICAgICAgICAgY29uc3QgaHNsID0gdGhpcy5jb2xvclNlcnZpY2UuaHNsU3RyaW5nMmhzbChjb2xvcik7XG4gICAgICAgICAgICB0aGlzLmNvbnZlcnRDb2xvclRvVmFsdWVTdHJpbmcoaHNsKTtcbiAgICAgICAgfSBlbHNlIGlmIChjb2xvci5pbmRleE9mKCdyZ2InKSA9PT0gMCkge1xuICAgICAgICAgICAgY29uc3QgaHNsID0gdGhpcy5jb2xvclNlcnZpY2UucmdiU3RyaW5nMmhzbChjb2xvcik7XG4gICAgICAgICAgICB0aGlzLmNvbnZlcnRDb2xvclRvVmFsdWVTdHJpbmcoaHNsKTtcbiAgICAgICAgfSBlbHNlIGlmIChjb2xvci5pbmRleE9mKCcjJykgPT09IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGhzbCA9IHRoaXMuY29sb3JTZXJ2aWNlLmhleDJoc2woY29sb3IpO1xuICAgICAgICAgICAgdGhpcy5jb252ZXJ0Q29sb3JUb1ZhbHVlU3RyaW5nKGhzbCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBIYW5kbGUgZGVmYXVsdC5cbiAgICAgICAgICAgIGNvbnN0IGhzbCA9IHRoaXMuY29sb3JTZXJ2aWNlLmhleDJoc2wodGhpcy5kZWZhdWx0Q29sb3IpO1xuICAgICAgICAgICAgdGhpcy5jb252ZXJ0Q29sb3JUb1ZhbHVlU3RyaW5nKGhzbCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNldEN1cnJlbnRIdWVJbkNzcygpO1xuICAgIH1cblxuICAgIGNvbnZlcnRDb2xvclRvVmFsdWVTdHJpbmcoaHNsQ29sb3I6IElQZXBIc2xDb2xvcik6IHZvaWQge1xuICAgICAgICAvLyBSZWd1bGFyIGh1ZVxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBoc2xDb2xvci5oID49IHRoaXMuY3VycmVudEh1ZU1pbiAmJlxuICAgICAgICAgICAgaHNsQ29sb3IuaCA8PSB0aGlzLmN1cnJlbnRIdWVNYXhcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRIdWUgPSBoc2xDb2xvci5oO1xuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgdGhpcy5jdXJyZW50SHVlTWluIDwgMCAmJlxuICAgICAgICAgICAgaHNsQ29sb3IuaCA+PSAwICYmXG4gICAgICAgICAgICBoc2xDb2xvci5oIDw9IDM2MFxuICAgICAgICApIHtcbiAgICAgICAgICAgIC8vIEZvciBtaW4gd2l0aCAtIChjaGFuZ2UgdG8gdGhlIG90aGVyIHNpZGUgb2YgdGhlIGNpcmNsZSlcbiAgICAgICAgICAgIGhzbENvbG9yLmggPSBoc2xDb2xvci5oIC0gMzYwO1xuXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgaHNsQ29sb3IuaCA+PSB0aGlzLmN1cnJlbnRIdWVNaW4gJiZcbiAgICAgICAgICAgICAgICBoc2xDb2xvci5oIDw9IHRoaXMuY3VycmVudEh1ZU1heFxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50SHVlID0gaHNsQ29sb3IuaDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY3VycmVudFNhdHVyYXRpb24gPVxuICAgICAgICAgICAgaHNsQ29sb3IucyA+PSB0aGlzLmN1cnJlbnRTYXR1cmF0aW9uTWluICYmXG4gICAgICAgICAgICAgICAgaHNsQ29sb3IucyA8PSB0aGlzLmN1cnJlbnRTYXR1cmF0aW9uTWF4XG4gICAgICAgICAgICAgICAgPyBoc2xDb2xvci5zXG4gICAgICAgICAgICAgICAgOiB0aGlzLmN1cnJlbnRTYXR1cmF0aW9uO1xuXG4gICAgICAgIHRoaXMuY3VycmVudExpZ2h0bmVzcyA9XG4gICAgICAgICAgICBoc2xDb2xvci5sID49IHRoaXMuY3VycmVudExpZ2h0bmVzc01pbiAmJlxuICAgICAgICAgICAgICAgIGhzbENvbG9yLmwgPD0gdGhpcy5jdXJyZW50TGlnaHRuZXNzTWF4XG4gICAgICAgICAgICAgICAgPyBoc2xDb2xvci5sXG4gICAgICAgICAgICAgICAgOiB0aGlzLmN1cnJlbnRMaWdodG5lc3M7XG5cbiAgICAgICAgLy8gV3JpdGUgdGhlIHZhbHVlIChpZiBodWUgaXMgY2hhbmdlZCB0byB0aGUgb3RoZXIgc2lkZSBvZiB0aGUgY2lyY2xlIHJldHVybiBpdCBiYWNrKS5cbiAgICAgICAgY29uc3QgaHNsID0ge1xuICAgICAgICAgICAgaDogdGhpcy5jdXJyZW50SHVlLFxuICAgICAgICAgICAgczogdGhpcy5jdXJyZW50U2F0dXJhdGlvbixcbiAgICAgICAgICAgIGw6IHRoaXMuY3VycmVudExpZ2h0bmVzcyxcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5kYXRhLnZhbHVlID0gdGhpcy5jb2xvclNlcnZpY2UuY29udmVydEhzbFRvU3RyaW5nSHNsKGhzbCk7XG5cbiAgICAgICAgLy8gQ2hlY2sgdGhlIGNvbnRyYXN0IHJhdGlvIC0gc2V0IHRoZSBjbG9zZXN0IGFjY2Vzc2libGUgY29sb3IgdG8gY29tcGxpZW50Q29sb3JcbiAgICAgICAgLy8gYW5kIHVwZGF0ZSBpc1VzZXJDaG9vc2VBQUNvbXBsaWVudENvbG9yLlxuICAgICAgICBjb25zdCBhZGp1c3RhYmxlQ29sb3IgPSB0aGlzLmNvbG9yU2VydmljZS5oc2wyaGV4KGhzbCk7XG4gICAgICAgIGNvbnN0IGNsb3Nlc3RIZXggPSB0aGlzLmNvbG9yU2VydmljZS5maW5kQ2xvc2VzdEFjY2Vzc2libGVDb2xvcihcbiAgICAgICAgICAgIGFkanVzdGFibGVDb2xvcixcbiAgICAgICAgICAgIHRoaXMuZGF0YS50ZXh0Q29sb3IsXG4gICAgICAgICAgICB0aGlzLmRhdGEuY29udHJhc3RSYXRpb1xuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuaXNVc2VyQ2hvb3NlQUFDb21wbGllbnRDb2xvciA9IGFkanVzdGFibGVDb2xvciA9PT0gY2xvc2VzdEhleDtcbiAgICAgICAgdGhpcy5jb21wbGllbnRDb2xvciA9IHRoaXMuY29sb3JTZXJ2aWNlLmNvbnZlcnRIc2xUb1N0cmluZ0hzbChcbiAgICAgICAgICAgIHRoaXMuY29sb3JTZXJ2aWNlLmhleDJoc2woY2xvc2VzdEhleClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBvbkh1ZUNoYW5nZSh2YWx1ZSk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnZlcnRDb2xvclRvVmFsdWVTdHJpbmcoeyBoOiB2YWx1ZSB9KTtcbiAgICAgICAgdGhpcy5zZXRDdXJyZW50SHVlSW5Dc3MoKTtcbiAgICB9XG5cbiAgICBvblNhdHVyYXRpb25DaGFuZ2UodmFsdWUpOiB2b2lkIHtcbiAgICAgICAgLy8gdGhpcy5jdXJyZW50U2F0dXJhdGlvbiA9IGV2ZW50LnZhbHVlO1xuICAgICAgICB0aGlzLmNvbnZlcnRDb2xvclRvVmFsdWVTdHJpbmcoeyBzOiB2YWx1ZSB9KTtcbiAgICB9XG5cbiAgICBvbkxpZ2h0bmVzc0NoYW5nZSh2YWx1ZSk6IHZvaWQge1xuICAgICAgICAvLyB0aGlzLmN1cnJlbnRMaWdodG5lc3MgPSBldmVudC52YWx1ZTtcbiAgICAgICAgdGhpcy5jb252ZXJ0Q29sb3JUb1ZhbHVlU3RyaW5nKHtcbiAgICAgICAgICAgIGw6XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50TGlnaHRuZXNzTWF4IC1cbiAgICAgICAgICAgICAgICB2YWx1ZSArXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50TGlnaHRuZXNzTWluLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkNvbG9yVmFsdWVDaGFuZ2UoY29sb3IpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb252ZXJ0VmFsdWVTdHJpbmdUb0NvbG9yKGNvbG9yKTtcbiAgICB9XG5cbiAgICBvblNhdmUoZXZlbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29sb3IgPSB0aGlzLmNoZWNrQUFDb21wbGllbnRcbiAgICAgICAgICAgID8gdGhpcy5jb21wbGllbnRDb2xvclxuICAgICAgICAgICAgOiB0aGlzLmRhdGEudmFsdWU7XG5cbiAgICAgICAgLy8gdGhpcy5ub3RpZnkuZW1pdCh7IGtleTogdGhpcy5rZXksIHZhbHVlOiBjb2xvciB9KTtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoY29sb3IpO1xuICAgIH1cblxuICAgIGNsb3NlRGlhbG9nKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKGV2ZW50KTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicGVwLWNvbG9yLXBpY2tlci1jb250YWluZXJcIj5cbiAgICA8cGVwLWRpYWxvZyBbdGl0bGVdPVwiJ0NPTE9SLkRJQUxPR19USVRMRScgfCB0cmFuc2xhdGVcIiAoY2xvc2UpPVwiY2xvc2VEaWFsb2coJGV2ZW50KVwiPlxuICAgICAgICA8bmctY29udGFpbmVyIHBlcC1kaWFsb2ctY29udGVudD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2xvci1jaG9vc2VyLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY3VycmVudC1jb2xvclwiIFtuZ1N0eWxlXT1cInsgJ2JhY2tncm91bmQnOiBkYXRhPy52YWx1ZSA/IGRhdGEudmFsdWUgOiAndHJhbnNwYXJlbnQnIH1cIj48L2Rpdj5cblxuICAgICAgICAgICAgICAgIDxwZXAtc2xpZGVyIGNsYXNzPVwic2xpZGVyLWJveFwiIFtsYWJlbF09XCInQ09MT1IuQ0hBTkdFX0hVRScgfCB0cmFuc2xhdGVcIiBbbWluVmFsdWVdPVwiY3VycmVudEh1ZU1pblwiXG4gICAgICAgICAgICAgICAgICAgIFttYXhWYWx1ZV09XCJjdXJyZW50SHVlTWF4XCIgW3ZhbHVlXT1cImN1cnJlbnRIdWVcIiBbYmFja2dyb3VuZF09XCJjdXJyZW50SHVlQmFja2dyb3VuZFwiXG4gICAgICAgICAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJvbkh1ZUNoYW5nZSgkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgPC9wZXAtc2xpZGVyPlxuICAgICAgICAgICAgICAgIDxwZXAtc2xpZGVyIGNsYXNzPVwic2xpZGVyLWJveFwiIFtsYWJlbF09XCInQ09MT1IuQ0hBTkdFX1NBVFVSQVRJT04nIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgW21pblZhbHVlXT1cImN1cnJlbnRTYXR1cmF0aW9uTWluXCIgW21heFZhbHVlXT1cImN1cnJlbnRTYXR1cmF0aW9uTWF4XCIgW3ZhbHVlXT1cImN1cnJlbnRTYXR1cmF0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgW2JhY2tncm91bmRdPVwiY3VycmVudFNhdHVyYXRpb25CYWNrZ3JvdW5kXCIgKHZhbHVlQ2hhbmdlKT1cIm9uU2F0dXJhdGlvbkNoYW5nZSgkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgPC9wZXAtc2xpZGVyPlxuICAgICAgICAgICAgICAgIDxwZXAtc2xpZGVyIGNsYXNzPVwic2xpZGVyLWJveFwiIFtsYWJlbF09XCInQ09MT1IuQ0hBTkdFX0xJR0hUTkVTUycgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBbbWluVmFsdWVdPVwiY3VycmVudExpZ2h0bmVzc01pblwiIFttYXhWYWx1ZV09XCJjdXJyZW50TGlnaHRuZXNzTWF4XCJcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cImN1cnJlbnRMaWdodG5lc3NNYXggLSBjdXJyZW50TGlnaHRuZXNzICsgY3VycmVudExpZ2h0bmVzc01pblwiXG4gICAgICAgICAgICAgICAgICAgIFtiYWNrZ3JvdW5kXT1cImN1cnJlbnRMaWdodG5lc3NCYWNrZ3JvdW5kXCIgKHZhbHVlQ2hhbmdlKT1cIm9uTGlnaHRuZXNzQ2hhbmdlKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICA8L3BlcC1zbGlkZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2xvci12YWx1ZS1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbG9yLXZhbHVlXCIgW25nQ2xhc3NdPVwieyAnd2l0aC1jb21wbGllbnQnOiBjaGVja0FBQ29tcGxpZW50IH1cIj5cbiAgICAgICAgICAgICAgICAgICAgPHBlcC10ZXh0Ym94IFtrZXldPVwiJ2NvbG9yVmFsdWUnXCIgW2xhYmVsXT1cIidDT0xPUi5BRERfVkFMVUVfSEVSRScgfCB0cmFuc2xhdGUgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJkYXRhPy52YWx1ZVwiICh2YWx1ZUNoYW5nZSk9XCJvbkNvbG9yVmFsdWVDaGFuZ2UoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICA8L3BlcC10ZXh0Ym94PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjaGVja0FBQ29tcGxpZW50XCIgY2xhc3M9XCJjb2xvci1jb21wbGllbnQtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxwZXAtZmllbGQtdGl0bGUgW2xhYmVsXT1cIidDT0xPUi5BQV9DT01QTElFTlQnIHwgdHJhbnNsYXRlIFwiPlxuICAgICAgICAgICAgICAgICAgICA8L3BlcC1maWVsZC10aXRsZT5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbG9yLWNvbXBsaWVudFwiIFtuZ1N0eWxlXT1cInsgJ2JhY2tncm91bmQnOiBjb21wbGllbnRDb2xvciB9XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJpc1VzZXJDaG9vc2VBQUNvbXBsaWVudENvbG9yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBlcC1pY29uIG5hbWU9XCJzeXN0ZW1fb2tcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3BlcC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy1jb250YWluZXIgcGVwLWRpYWxvZy1hY3Rpb25zPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbG9yLWFjdGlvbnMgcGVwLXNwYWNpbmctZWxlbWVudC1uZWdhdGl2ZVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtY2hlY2tib3ggKm5nSWY9XCJkYXRhLnNob3dBQUNvbXBsaWVudFwiIGNsYXNzPVwicGVwLXNwYWNpbmctZWxlbWVudFwiIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgICAgIGlkPVwiY2hlY2tBQUNvbXBsaWVudFwiIChjaGFuZ2UpPVwiY2hlY2tBQUNvbXBsaWVudCA9ICFjaGVja0FBQ29tcGxpZW50XCIgW2NoZWNrZWRdPVwiY2hlY2tBQUNvbXBsaWVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJvZHkteHMgZWxsaXBzaXNcIj57eyAnQ09MT1IuQUFfQ09NUExJRU5UJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L21hdC1jaGVja2JveD5cbiAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gW21hdC1kaWFsb2ctY2xvc2VdPVwibnVsbFwiIGNsYXNzPVwicGVwLXNwYWNpbmctZWxlbWVudCBwZXAtYnV0dG9uIG1kIHdlYWtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7J0FDVElPTlMuQ0FOQ0VMJyB8IHRyYW5zbGF0ZX19XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gY2xhc3M9XCJwZXAtc3BhY2luZy1lbGVtZW50IHBlcC1idXR0b24gbWQgc3Ryb25nXCIgKGNsaWNrKT1cIm9uU2F2ZSgkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eydBQ1RJT05TLk9LJyB8IHRyYW5zbGF0ZX19XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvcGVwLWRpYWxvZz5cbjwvZGl2PiJdfQ==
|
|
224
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvY29sb3IvY29sb3ItcGlja2VyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvY29sb3IvY29sb3ItcGlja2VyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFELE9BQU8sRUFBZ0IsZUFBZSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7Ozs7Ozs7Ozs7O0FBY3pFLElBQUssb0JBR0o7QUFIRCxXQUFLLG9CQUFvQjtJQUNyQiw2REFBUSxDQUFBO0lBQ1IsNkRBQU8sQ0FBQTtBQUNYLENBQUMsRUFISSxvQkFBb0IsS0FBcEIsb0JBQW9CLFFBR3hCO0FBZ0JELE1BQU0sT0FBTyx1QkFBdUI7SUFNaEMsWUFDWSxZQUE2QixFQUM3QixTQUFnRCxFQUN4QixJQUErQjtRQUZ2RCxpQkFBWSxHQUFaLFlBQVksQ0FBaUI7UUFDN0IsY0FBUyxHQUFULFNBQVMsQ0FBdUM7UUFDeEIsU0FBSSxHQUFKLElBQUksQ0FBMkI7UUFQbEQsaUJBQVksR0FBRyxNQUFNLENBQUM7UUFFdkMscUJBQWdCLEdBQUcsSUFBSSxDQUFDO1FBa0JoQix5QkFBb0IsR0FBRzs7Ozs7OztrQ0FPRCxDQUFDO1FBRS9CLGVBQVUsR0FBRyxHQUFHLENBQUM7UUFDakIsa0JBQWEsR0FBRyxDQUFDLENBQUM7UUFDbEIsa0JBQWEsR0FBRyxHQUFHLENBQUM7UUFDcEIseUJBQW9CLEdBQUcsSUFBSSxDQUFDLG9CQUFvQixDQUFDO1FBRXpDLGdDQUEyQixHQUFHOztrRUFFd0IsQ0FBQztRQUUvRCxzQkFBaUIsR0FBRyxFQUFFLENBQUM7UUFDdkIseUJBQW9CLEdBQUcsQ0FBQyxDQUFDO1FBQ3pCLHlCQUFvQixH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ZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdERpYWxvZ1JlZiwgTUFUX0RJQUxPR19EQVRBIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbi8vIGltcG9ydCB7XG4vLyAgICAgaGV4MmhzbCxcbi8vICAgICBoc2xTdHJpbmcyaHNsLFxuLy8gICAgIHJnYlN0cmluZzJoc2wsXG4vLyAgICAgSVBlcEhzbENvbG9yLFxuLy8gICAgIGZpbmRDbG9zZXN0QWNjZXNzaWJsZUNvbG9yLFxuLy8gICAgIGhzbDJoZXgsXG4vLyAgICAgY29udmVydEhzbFRvU3RyaW5nSHNsLFxuLy8gfSBmcm9tICcuL2NvbG9yLXV0aWxzJztcbmltcG9ydCB7IFBlcENvbG9yU2VydmljZSwgSVBlcEhzbENvbG9yIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWInO1xuXG5pbXBvcnQgeyBQZXBDb2xvclR5cGUgfSBmcm9tICcuL2NvbG9yLm1vZGVsJztcblxuZW51bSBQZXBDb250cmFzdFJhdGlvVHlwZSB7XG4gICAgQUEgPSA0LjUsXG4gICAgQUFBID0gNyxcbn1cblxuaW50ZXJmYWNlIElQZXBDb2xvclBpY2tlckRpYWxvZ0RhdGEge1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gICAgdHlwZTogUGVwQ29sb3JUeXBlO1xuICAgIC8vIFRPRE8gZml4IHR5cG8gQ29tcGxpZW50IC0+IENvbXBsaWFudFxuICAgIHNob3dBQUNvbXBsaWVudDogYm9vbGVhbjtcbiAgICBjaGVja0FBQ29tcGxpZW50OiBib29sZWFuO1xuICAgIHRleHRDb2xvcjogc3RyaW5nO1xuICAgIGNvbnRyYXN0UmF0aW86IFBlcENvbnRyYXN0UmF0aW9UeXBlO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgICB0ZW1wbGF0ZVVybDogJy4vY29sb3ItcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jb2xvci1waWNrZXIuY29tcG9uZW50LnNjc3MnLCAnLi9jb2xvci1waWNrZXIuY29tcG9uZW50LnRoZW1lLnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUGVwQ29sb3JQaWNrZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIHN0YXRpYyBDVVJSRU5UX0hVRSA9ICctLXBlcC1jb2xvci1waWNrZXItY3VycmVudC1odWUnO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZGVmYXVsdENvbG9yID0gJyNjY2MnO1xuXG4gICAgY2hlY2tBQUNvbXBsaWVudCA9IHRydWU7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBjb2xvclNlcnZpY2U6IFBlcENvbG9yU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxQZXBDb2xvclBpY2tlckNvbXBvbmVudD4sXG4gICAgICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGF0YTogSVBlcENvbG9yUGlja2VyRGlhbG9nRGF0YVxuICAgICkge1xuICAgICAgICB0aGlzLmRhdGEudHlwZSA9IGRhdGEgPyBkYXRhLnR5cGUgOiAnYW55JztcbiAgICAgICAgdGhpcy5kYXRhLnNob3dBQUNvbXBsaWVudCA9ICFkYXRhXG4gICAgICAgICAgICA/IGZhbHNlXG4gICAgICAgICAgICA6IGRhdGEuc2hvd0FBQ29tcGxpZW50ID8/IHRydWU7XG4gICAgICAgIHRoaXMuZGF0YS50ZXh0Q29sb3IgPSBkYXRhICYmIGRhdGEudGV4dENvbG9yID8gZGF0YS50ZXh0Q29sb3IgOiAnI2ZmZic7XG4gICAgICAgIHRoaXMuZGF0YS5jb250cmFzdFJhdGlvID1cbiAgICAgICAgICAgIGRhdGEgJiYgZGF0YS5jb250cmFzdFJhdGlvXG4gICAgICAgICAgICAgICAgPyBkYXRhLmNvbnRyYXN0UmF0aW9cbiAgICAgICAgICAgICAgICA6IFBlcENvbnRyYXN0UmF0aW9UeXBlLkFBO1xuICAgIH1cblxuICAgIHByaXZhdGUgZGVmYXVsdEh1ZUJhY2tncm91bmQgPSBgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LFxuICAgICAgICBoc2woMCwgMTAwJSwgNTAlKSAwJSxcbiAgICAgICAgaHNsKDYwLCAxMDAlLCA1MCUpIDE3JSxcbiAgICAgICAgaHNsKDEyMCwgMTAwJSwgNTAlKSAzMyUsXG4gICAgICAgIGhzbCgxODAsIDEwMCUsIDUwJSkgNTAlLFxuICAgICAgICBoc2woMjQwLCAxMDAlLCA1MCUpIDY3JSxcbiAgICAgICAgaHNsKDMwMCwgMTAwJSwgNTAlKSA4MyUsXG4gICAgICAgIGhzbCgzNjAsIDEwMCUsIDUwJSkgMTAwJSlgO1xuXG4gICAgY3VycmVudEh1ZSA9IDEwMDtcbiAgICBjdXJyZW50SHVlTWluID0gMDtcbiAgICBjdXJyZW50SHVlTWF4ID0gMzYwO1xuICAgIGN1cnJlbnRIdWVCYWNrZ3JvdW5kID0gdGhpcy5kZWZhdWx0SHVlQmFja2dyb3VuZDtcblxuICAgIHByaXZhdGUgZGVmYXVsdFNhdHVyYXRpb25CYWNrZ3JvdW5kID0gYGxpbmVhci1ncmFkaWVudCh0byByaWdodCxcbiAgICAgICAgaHNsKHZhcigtLXBlcC1jb2xvci1waWNrZXItY3VycmVudC1odWUpLCAwLjAxJSwgNTAlKSAwJSxcbiAgICAgICAgaHNsKHZhcigtLXBlcC1jb2xvci1waWNrZXItY3VycmVudC1odWUpLCAxMDAlLCA1MCUpIDEwMCUpYDtcblxuICAgIGN1cnJlbnRTYXR1cmF0aW9uID0gNTA7XG4gICAgY3VycmVudFNhdHVyYXRpb25NaW4gPSAwO1xuICAgIGN1cnJlbnRTYXR1cmF0aW9uTWF4ID0gMTAwO1xuICAgIGN1cnJlbnRTYXR1cmF0aW9uQmFja2dyb3VuZCA9IHRoaXMuZGVmYXVsdFNhdHVyYXRpb25CYWNrZ3JvdW5kO1xuXG4gICAgcHJpdmF0ZSBkZWZhdWx0TGlnaHRuZXNzQmFja2dyb3VuZCA9IGBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsXG4gICAgICAgIGhzbCh2YXIoLS1wZXAtY29sb3ItcGlja2VyLWN1cnJlbnQtaHVlKSwgMTAwJSwgMTAwJSkgMCUsXG4gICAgICAgIGhzbCh2YXIoLS1wZXAtY29sb3ItcGlja2VyLWN1cnJlbnQtaHVlKSwgMTAwJSwgNTAlKSA1MCUsXG4gICAgICAgIGhzbCh2YXIoLS1wZXAtY29sb3ItcGlja2VyLWN1cnJlbnQtaHVlKSwgMTAwJSwgMC4wMSUpIDEwMCUpYDtcblxuICAgIGN1cnJlbnRMaWdodG5lc3MgPSA1MDtcbiAgICBjdXJyZW50TGlnaHRuZXNzTWluID0gMDtcbiAgICBjdXJyZW50TGlnaHRuZXNzTWF4ID0gMTAwO1xuICAgIGN1cnJlbnRMaWdodG5lc3NCYWNrZ3JvdW5kID0gdGhpcy5kZWZhdWx0TGlnaHRuZXNzQmFja2dyb3VuZDtcblxuICAgIGNvbXBsaWVudENvbG9yOiBzdHJpbmc7XG4gICAgaXNVc2VyQ2hvb3NlQUFDb21wbGllbnRDb2xvcjogYm9vbGVhbjtcblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmluaXRWYXJzKCk7XG4gICAgICAgIHRoaXMuY2hlY2tBQUNvbXBsaWVudCA9IHRoaXMuZGF0YS5jaGVja0FBQ29tcGxpZW50O1xuICAgICAgICB0aGlzLmNvbnZlcnRWYWx1ZVN0cmluZ1RvQ29sb3IodGhpcy5kYXRhLnZhbHVlKTtcbiAgICB9XG5cbiAgICBpbml0VmFycygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGF0YS50eXBlID09PSAnbWFpbicpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudExpZ2h0bmVzc01heCA9IDEwO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50TGlnaHRuZXNzID0gNTtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudEh1ZUJhY2tncm91bmQgPSB0aGlzLmRlZmF1bHRIdWVCYWNrZ3JvdW5kO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50U2F0dXJhdGlvbkJhY2tncm91bmQgPSB0aGlzLmRlZmF1bHRTYXR1cmF0aW9uQmFja2dyb3VuZDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudExpZ2h0bmVzc0JhY2tncm91bmQgPSB0aGlzLmRlZmF1bHRMaWdodG5lc3NCYWNrZ3JvdW5kO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZGF0YS50eXBlID09PSAnc3VjY2VzcycpIHtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudEh1ZU1pbiA9IDcwO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50SHVlTWF4ID0gMTUwO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50SHVlID0gMTAwO1xuXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRTYXR1cmF0aW9uTWluID0gNTA7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRTYXR1cmF0aW9uTWF4ID0gMTAwO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50U2F0dXJhdGlvbiA9IDUwO1xuXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRMaWdodG5lc3NNaW4gPSAxMDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudExpZ2h0bmVzc01heCA9IDY1O1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50TGlnaHRuZXNzID0gNTA7XG5cbiAgICAgICAgICAgIHRoaXMuY3VycmVudEh1ZUJhY2tncm91bmQgPSBgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LFxuICAgICAgICAgICAgICAgIGhzbCg3MCwgMTAwJSwgNTAlKSAwJSxcbiAgICAgICAgICAgICAgICBoc2woMTUwLCAxMDAlLCA1MCUpIDEwMCUpYDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFNhdHVyYXRpb25CYWNrZ3JvdW5kID0gYGxpbmVhci1ncmFkaWVudCh0byByaWdodCxcbiAgICAgICAgICAgICAgICBoc2wodmFyKC0tcGVwLWNvbG9yLXBpY2tlci1jdXJyZW50LWh1ZSksIDUwJSwgNTAlKSA1MCUsXG4gICAgICAgICAgICAgICAgaHNsKHZhcigtLXBlcC1jb2xvci1waWNrZXItY3VycmVudC1odWUpLCAxMDAlLCA1MCUpIDEwMCUpYDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudExpZ2h0bmVzc0JhY2tncm91bmQgPSBgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LFxuICAgICAgICAgICAgICAgIGhzbCh2YXIoLS1wZXAtY29sb3ItcGlja2VyLWN1cnJlbnQtaHVlKSwgMTAwJSwgNjUlKSAxMCUsXG4gICAgICAgICAgICAgICAgaHNsKHZhcigtLXBlcC1jb2xvci1waWNrZXItY3VycmVudC1odWUpLCAxMDAlLCAzNSUpIDM1JSxcbiAgICAgICAgICAgICAgICBoc2wodmFyKC0tcGVwLWNvbG9yLXBpY2tlci1jdXJyZW50LWh1ZSksIDEwMCUsIDEwJSkgNjUlKWA7XG5cbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmRhdGEudHlwZSA9PT0gJ2NhdXRpb24nKSB7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRIdWVNaW4gPSAtMjA7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRIdWVNYXggPSAyMDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudEh1ZSA9IDEwO1xuXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRTYXR1cmF0aW9uTWluID0gNzU7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRTYXR1cmF0aW9uTWF4ID0gMTAwO1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50U2F0dXJhdGlvbiA9IDc1O1xuXG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRMaWdodG5lc3NNaW4gPSAyNTtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudExpZ2h0bmVzc01heCA9IDc1O1xuICAgICAgICAgICAgdGhpcy5jdXJyZW50TGlnaHRuZXNzID0gNTA7XG5cbiAgICAgICAgICAgIHRoaXMuY3VycmVudEh1ZUJhY2tncm91bmQgPSBgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LFxuICAgICAgICAgICAgICAgIGhzbCgzNDAsIDEwMCUsIDUwJSkgMCUsXG4gICAgICAgICAgICAgICAgaHNsKDIwLCAxMDAlLCA1MCUpIDEwMCUpYDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudFNhdHVyYXRpb25CYWNrZ3JvdW5kID0gYGxpbmVhci1ncmFkaWVudCh0byByaWdodCxcbiAgICAgICAgICAgICAgICBoc2wodmFyKC0tcGVwLWNvbG9yLXBpY2tlci1jdXJyZW50LWh1ZSksIDc1JSwgNTAlKSA3NSUsXG4gICAgICAgICAgICAgICAgaHNsKHZhcigtLXBlcC1jb2xvci1waWNrZXItY3VycmVudC1odWUpLCAxMDAlLCA1MCUpIDEwMCUpYDtcbiAgICAgICAgICAgIHRoaXMuY3VycmVudExpZ2h0bmVzc0JhY2tncm91bmQgPSBgbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LFxuICAgICAgICAgICAgICAgIGhzbCh2YXIoLS1wZXAtY29sb3ItcGlja2VyLWN1cnJlbnQtaHVlKSwgMTAwJSwgNzUlKSAyNSUsXG4gICAgICAgICAgICAgICAgaHNsKHZhcigtLXBlcC1jb2xvci1waWNrZXItY3VycmVudC1odWUpLCAxMDAlLCA1MCUpIDUwJSxcbiAgICAgICAgICAgICAgICBoc2wodmFyKC0tcGVwLWNvbG9yLXBpY2tlci1jdXJyZW50LWh1ZSksIDEwMCUsIDI1JSkgNzUlKWA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRDdXJyZW50SHVlSW5Dc3MoKTogdm9pZCB7XG4gICAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudC5zdHlsZS5zZXRQcm9wZXJ0eShcbiAgICAgICAgICAgIFBlcENvbG9yUGlja2VyQ29tcG9uZW50LkNVUlJFTlRfSFVFLFxuICAgICAgICAgICAgdGhpcy5jdXJyZW50SHVlLnRvU3RyaW5nKClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBjb252ZXJ0VmFsdWVTdHJpbmdUb0NvbG9yKGNvbG9yKTogdm9pZCB7XG4gICAgICAgIGlmIChjb2xvci5pbmRleE9mKCdoc2wnKSA9PT0gMCkge1xuICAgICAgICAgICAgY29uc3QgaHNsID0gdGhpcy5jb2xvclNlcnZpY2UuaHNsU3RyaW5nMmhzbChjb2xvcik7XG4gICAgICAgICAgICB0aGlzLmNvbnZlcnRDb2xvclRvVmFsdWVTdHJpbmcoaHNsKTtcbiAgICAgICAgfSBlbHNlIGlmIChjb2xvci5pbmRleE9mKCdyZ2InKSA9PT0gMCkge1xuICAgICAgICAgICAgY29uc3QgaHNsID0gdGhpcy5jb2xvclNlcnZpY2UucmdiU3RyaW5nMmhzbChjb2xvcik7XG4gICAgICAgICAgICB0aGlzLmNvbnZlcnRDb2xvclRvVmFsdWVTdHJpbmcoaHNsKTtcbiAgICAgICAgfSBlbHNlIGlmIChjb2xvci5pbmRleE9mKCcjJykgPT09IDApIHtcbiAgICAgICAgICAgIGNvbnN0IGhzbCA9IHRoaXMuY29sb3JTZXJ2aWNlLmhleDJoc2woY29sb3IpO1xuICAgICAgICAgICAgdGhpcy5jb252ZXJ0Q29sb3JUb1ZhbHVlU3RyaW5nKGhzbCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBIYW5kbGUgZGVmYXVsdC5cbiAgICAgICAgICAgIGNvbnN0IGhzbCA9IHRoaXMuY29sb3JTZXJ2aWNlLmhleDJoc2wodGhpcy5kZWZhdWx0Q29sb3IpO1xuICAgICAgICAgICAgdGhpcy5jb252ZXJ0Q29sb3JUb1ZhbHVlU3RyaW5nKGhzbCk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnNldEN1cnJlbnRIdWVJbkNzcygpO1xuICAgIH1cblxuICAgIGNvbnZlcnRDb2xvclRvVmFsdWVTdHJpbmcoaHNsQ29sb3I6IElQZXBIc2xDb2xvcik6IHZvaWQge1xuICAgICAgICAvLyBSZWd1bGFyIGh1ZVxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBoc2xDb2xvci5oID49IHRoaXMuY3VycmVudEh1ZU1pbiAmJlxuICAgICAgICAgICAgaHNsQ29sb3IuaCA8PSB0aGlzLmN1cnJlbnRIdWVNYXhcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRIdWUgPSBoc2xDb2xvci5oO1xuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgdGhpcy5jdXJyZW50SHVlTWluIDwgMCAmJlxuICAgICAgICAgICAgaHNsQ29sb3IuaCA+PSAwICYmXG4gICAgICAgICAgICBoc2xDb2xvci5oIDw9IDM2MFxuICAgICAgICApIHtcbiAgICAgICAgICAgIC8vIEZvciBtaW4gd2l0aCAtIChjaGFuZ2UgdG8gdGhlIG90aGVyIHNpZGUgb2YgdGhlIGNpcmNsZSlcbiAgICAgICAgICAgIGhzbENvbG9yLmggPSBoc2xDb2xvci5oIC0gMzYwO1xuXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgaHNsQ29sb3IuaCA+PSB0aGlzLmN1cnJlbnRIdWVNaW4gJiZcbiAgICAgICAgICAgICAgICBoc2xDb2xvci5oIDw9IHRoaXMuY3VycmVudEh1ZU1heFxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50SHVlID0gaHNsQ29sb3IuaDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY3VycmVudFNhdHVyYXRpb24gPVxuICAgICAgICAgICAgaHNsQ29sb3IucyA+PSB0aGlzLmN1cnJlbnRTYXR1cmF0aW9uTWluICYmXG4gICAgICAgICAgICAgICAgaHNsQ29sb3IucyA8PSB0aGlzLmN1cnJlbnRTYXR1cmF0aW9uTWF4XG4gICAgICAgICAgICAgICAgPyBoc2xDb2xvci5zXG4gICAgICAgICAgICAgICAgOiB0aGlzLmN1cnJlbnRTYXR1cmF0aW9uO1xuXG4gICAgICAgIHRoaXMuY3VycmVudExpZ2h0bmVzcyA9XG4gICAgICAgICAgICBoc2xDb2xvci5sID49IHRoaXMuY3VycmVudExpZ2h0bmVzc01pbiAmJlxuICAgICAgICAgICAgICAgIGhzbENvbG9yLmwgPD0gdGhpcy5jdXJyZW50TGlnaHRuZXNzTWF4XG4gICAgICAgICAgICAgICAgPyBoc2xDb2xvci5sXG4gICAgICAgICAgICAgICAgOiB0aGlzLmN1cnJlbnRMaWdodG5lc3M7XG5cbiAgICAgICAgLy8gV3JpdGUgdGhlIHZhbHVlIChpZiBodWUgaXMgY2hhbmdlZCB0byB0aGUgb3RoZXIgc2lkZSBvZiB0aGUgY2lyY2xlIHJldHVybiBpdCBiYWNrKS5cbiAgICAgICAgY29uc3QgaHNsID0ge1xuICAgICAgICAgICAgaDogdGhpcy5jdXJyZW50SHVlLFxuICAgICAgICAgICAgczogdGhpcy5jdXJyZW50U2F0dXJhdGlvbixcbiAgICAgICAgICAgIGw6IHRoaXMuY3VycmVudExpZ2h0bmVzcyxcbiAgICAgICAgfTtcbiAgICAgICAgdGhpcy5kYXRhLnZhbHVlID0gdGhpcy5jb2xvclNlcnZpY2UuY29udmVydEhzbFRvU3RyaW5nSHNsKGhzbCk7XG5cbiAgICAgICAgLy8gQ2hlY2sgdGhlIGNvbnRyYXN0IHJhdGlvIC0gc2V0IHRoZSBjbG9zZXN0IGFjY2Vzc2libGUgY29sb3IgdG8gY29tcGxpZW50Q29sb3JcbiAgICAgICAgLy8gYW5kIHVwZGF0ZSBpc1VzZXJDaG9vc2VBQUNvbXBsaWVudENvbG9yLlxuICAgICAgICBjb25zdCBhZGp1c3RhYmxlQ29sb3IgPSB0aGlzLmNvbG9yU2VydmljZS5oc2wyaGV4KGhzbCk7XG4gICAgICAgIGNvbnN0IGNsb3Nlc3RIZXggPSB0aGlzLmNvbG9yU2VydmljZS5maW5kQ2xvc2VzdEFjY2Vzc2libGVDb2xvcihcbiAgICAgICAgICAgIGFkanVzdGFibGVDb2xvcixcbiAgICAgICAgICAgIHRoaXMuZGF0YS50ZXh0Q29sb3IsXG4gICAgICAgICAgICB0aGlzLmRhdGEuY29udHJhc3RSYXRpb1xuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuaXNVc2VyQ2hvb3NlQUFDb21wbGllbnRDb2xvciA9IGFkanVzdGFibGVDb2xvciA9PT0gY2xvc2VzdEhleDtcbiAgICAgICAgdGhpcy5jb21wbGllbnRDb2xvciA9IHRoaXMuY29sb3JTZXJ2aWNlLmNvbnZlcnRIc2xUb1N0cmluZ0hzbChcbiAgICAgICAgICAgIHRoaXMuY29sb3JTZXJ2aWNlLmhleDJoc2woY2xvc2VzdEhleClcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBvbkh1ZUNoYW5nZSh2YWx1ZSk6IHZvaWQge1xuICAgICAgICB0aGlzLmNvbnZlcnRDb2xvclRvVmFsdWVTdHJpbmcoeyBoOiB2YWx1ZSB9KTtcbiAgICAgICAgdGhpcy5zZXRDdXJyZW50SHVlSW5Dc3MoKTtcbiAgICB9XG5cbiAgICBvblNhdHVyYXRpb25DaGFuZ2UodmFsdWUpOiB2b2lkIHtcbiAgICAgICAgLy8gdGhpcy5jdXJyZW50U2F0dXJhdGlvbiA9IGV2ZW50LnZhbHVlO1xuICAgICAgICB0aGlzLmNvbnZlcnRDb2xvclRvVmFsdWVTdHJpbmcoeyBzOiB2YWx1ZSB9KTtcbiAgICB9XG5cbiAgICBvbkxpZ2h0bmVzc0NoYW5nZSh2YWx1ZSk6IHZvaWQge1xuICAgICAgICAvLyB0aGlzLmN1cnJlbnRMaWdodG5lc3MgPSBldmVudC52YWx1ZTtcbiAgICAgICAgdGhpcy5jb252ZXJ0Q29sb3JUb1ZhbHVlU3RyaW5nKHtcbiAgICAgICAgICAgIGw6XG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50TGlnaHRuZXNzTWF4IC1cbiAgICAgICAgICAgICAgICB2YWx1ZSArXG4gICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50TGlnaHRuZXNzTWluLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkNvbG9yVmFsdWVDaGFuZ2UoY29sb3IpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jb252ZXJ0VmFsdWVTdHJpbmdUb0NvbG9yKGNvbG9yKTtcbiAgICB9XG5cbiAgICBvblNhdmUoZXZlbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY29sb3IgPSB0aGlzLmNoZWNrQUFDb21wbGllbnRcbiAgICAgICAgICAgID8gdGhpcy5jb21wbGllbnRDb2xvclxuICAgICAgICAgICAgOiB0aGlzLmRhdGEudmFsdWU7XG5cbiAgICAgICAgLy8gdGhpcy5ub3RpZnkuZW1pdCh7IGtleTogdGhpcy5rZXksIHZhbHVlOiBjb2xvciB9KTtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UoY29sb3IpO1xuICAgIH1cblxuICAgIGNsb3NlRGlhbG9nKGV2ZW50KSB7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKGV2ZW50KTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicGVwLWNvbG9yLXBpY2tlci1jb250YWluZXJcIj5cbiAgICA8cGVwLWRpYWxvZyBbdGl0bGVdPVwiJ0NPTE9SLkRJQUxPR19USVRMRScgfCB0cmFuc2xhdGVcIiAoY2xvc2UpPVwiY2xvc2VEaWFsb2coJGV2ZW50KVwiPlxuICAgICAgICA8bmctY29udGFpbmVyIHBlcC1kaWFsb2ctY29udGVudD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2xvci1jaG9vc2VyLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY3VycmVudC1jb2xvclwiIFtuZ1N0eWxlXT1cInsgJ2JhY2tncm91bmQnOiBkYXRhPy52YWx1ZSA/IGRhdGEudmFsdWUgOiAndHJhbnNwYXJlbnQnIH1cIj48L2Rpdj5cblxuICAgICAgICAgICAgICAgIDxwZXAtc2xpZGVyIGNsYXNzPVwic2xpZGVyLWJveFwiIFtsYWJlbF09XCInQ09MT1IuQ0hBTkdFX0hVRScgfCB0cmFuc2xhdGVcIiBbbWluVmFsdWVdPVwiY3VycmVudEh1ZU1pblwiXG4gICAgICAgICAgICAgICAgICAgIFttYXhWYWx1ZV09XCJjdXJyZW50SHVlTWF4XCIgW3ZhbHVlXT1cImN1cnJlbnRIdWVcIiBbYmFja2dyb3VuZF09XCJjdXJyZW50SHVlQmFja2dyb3VuZFwiXG4gICAgICAgICAgICAgICAgICAgICh2YWx1ZUNoYW5nZSk9XCJvbkh1ZUNoYW5nZSgkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgPC9wZXAtc2xpZGVyPlxuICAgICAgICAgICAgICAgIDxwZXAtc2xpZGVyIGNsYXNzPVwic2xpZGVyLWJveFwiIFtsYWJlbF09XCInQ09MT1IuQ0hBTkdFX1NBVFVSQVRJT04nIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgW21pblZhbHVlXT1cImN1cnJlbnRTYXR1cmF0aW9uTWluXCIgW21heFZhbHVlXT1cImN1cnJlbnRTYXR1cmF0aW9uTWF4XCIgW3ZhbHVlXT1cImN1cnJlbnRTYXR1cmF0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgW2JhY2tncm91bmRdPVwiY3VycmVudFNhdHVyYXRpb25CYWNrZ3JvdW5kXCIgKHZhbHVlQ2hhbmdlKT1cIm9uU2F0dXJhdGlvbkNoYW5nZSgkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgPC9wZXAtc2xpZGVyPlxuICAgICAgICAgICAgICAgIDxwZXAtc2xpZGVyIGNsYXNzPVwic2xpZGVyLWJveFwiIFtsYWJlbF09XCInQ09MT1IuQ0hBTkdFX0xJR0hUTkVTUycgfCB0cmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICBbbWluVmFsdWVdPVwiY3VycmVudExpZ2h0bmVzc01pblwiIFttYXhWYWx1ZV09XCJjdXJyZW50TGlnaHRuZXNzTWF4XCJcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cImN1cnJlbnRMaWdodG5lc3NNYXggLSBjdXJyZW50TGlnaHRuZXNzICsgY3VycmVudExpZ2h0bmVzc01pblwiXG4gICAgICAgICAgICAgICAgICAgIFtiYWNrZ3JvdW5kXT1cImN1cnJlbnRMaWdodG5lc3NCYWNrZ3JvdW5kXCIgKHZhbHVlQ2hhbmdlKT1cIm9uTGlnaHRuZXNzQ2hhbmdlKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICA8L3BlcC1zbGlkZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb2xvci12YWx1ZS1jb250ZW50XCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbG9yLXZhbHVlXCIgW25nQ2xhc3NdPVwieyAnd2l0aC1jb21wbGllbnQnOiBjaGVja0FBQ29tcGxpZW50IH1cIj5cbiAgICAgICAgICAgICAgICAgICAgPHBlcC10ZXh0Ym94IFtrZXldPVwiJ2NvbG9yVmFsdWUnXCIgW2xhYmVsXT1cIidDT0xPUi5BRERfVkFMVUVfSEVSRScgfCB0cmFuc2xhdGUgXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJkYXRhPy52YWx1ZVwiICh2YWx1ZUNoYW5nZSk9XCJvbkNvbG9yVmFsdWVDaGFuZ2UoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICA8L3BlcC10ZXh0Ym94PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjaGVja0FBQ29tcGxpZW50XCIgY2xhc3M9XCJjb2xvci1jb21wbGllbnQtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgICAgIDxwZXAtZmllbGQtdGl0bGUgW2xhYmVsXT1cIidDT0xPUi5BQV9DT01QTElFTlQnIHwgdHJhbnNsYXRlIFwiPlxuICAgICAgICAgICAgICAgICAgICA8L3BlcC1maWVsZC10aXRsZT5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbG9yLWNvbXBsaWVudFwiIFtuZ1N0eWxlXT1cInsgJ2JhY2tncm91bmQnOiBjb21wbGllbnRDb2xvciB9XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJpc1VzZXJDaG9vc2VBQUNvbXBsaWVudENvbG9yXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHBlcC1pY29uIG5hbWU9XCJzeXN0ZW1fb2tcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3BlcC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9tYXQtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDxuZy1jb250YWluZXIgcGVwLWRpYWxvZy1hY3Rpb25zPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbG9yLWFjdGlvbnMgcGVwLXNwYWNpbmctZWxlbWVudC1uZWdhdGl2ZVwiIFtuZ1N0eWxlXT1cInsnanVzdGlmeS1jb250ZW50JzogZGF0YS5zaG93QUFDb21wbGllbnQgPyAnc3BhY2UtYmV0d2VlbicgOiAnZmxleC1lbmQnfVwiPlxuICAgICAgICAgICAgICAgIDxtYXQtY2hlY2tib3ggKm5nSWY9XCJkYXRhLnNob3dBQUNvbXBsaWVudFwiIGNsYXNzPVwicGVwLXNwYWNpbmctZWxlbWVudFwiIHR5cGU9XCJjaGVja2JveFwiXG4gICAgICAgICAgICAgICAgICAgIGlkPVwiY2hlY2tBQUNvbXBsaWVudFwiIChjaGFuZ2UpPVwiY2hlY2tBQUNvbXBsaWVudCA9ICFjaGVja0FBQ29tcGxpZW50XCIgW2NoZWNrZWRdPVwiY2hlY2tBQUNvbXBsaWVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImJvZHkteHMgZWxsaXBzaXNcIj57eyAnQ09MT1IuQUFfQ09NUExJRU5UJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L21hdC1jaGVja2JveD5cbiAgICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gW21hdC1kaWFsb2ctY2xvc2VdPVwibnVsbFwiIGNsYXNzPVwicGVwLXNwYWNpbmctZWxlbWVudCBwZXAtYnV0dG9uIG1kIHdlYWtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7J0FDVElPTlMuQ0FOQ0VMJyB8IHRyYW5zbGF0ZX19XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gY2xhc3M9XCJwZXAtc3BhY2luZy1lbGVtZW50IHBlcC1idXR0b24gbWQgc3Ryb25nXCIgKGNsaWNrKT1cIm9uU2F2ZSgkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eydBQ1RJT05TLkRPTkUnIHwgdHJhbnNsYXRlfX1cbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9wZXAtZGlhbG9nPlxuPC9kaXY+Il19
|
|
@@ -56,10 +56,10 @@ export class PepColorComponent {
|
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
58
|
PepColorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepColorComponent, deps: [{ token: i1.PepDialogService }, { token: i0.Renderer2 }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
59
|
-
PepColorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PepColorComponent, selector: "pep-color", inputs: { key: "key", value: "value", label: "label", disabled: "disabled", xAlignment: "xAlignment", rowSpan: "rowSpan", type: "type", showTitle: "showTitle", renderTitle: "renderTitle", showAAComplient: "showAAComplient", checkAAComplient: "checkAAComplient", layoutType: "layoutType" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<pep-field-title *ngIf=\"renderTitle\" [label]=\"label\" [disabled]=\"disabled\" [xAlignment]=\"xAlignment\"\n [showTitle]=\"showTitle\">\n</pep-field-title>\n<div [id]=\"key\" class=\"pep-color-container\" [ngClass]=\"{ 'right-alignment': xAlignment == 'right' }\">\n <div pepRtlDirection (click)=\"!disabled ? chooseColor() : ''\" class=\"pep-color pep-input\"\n [ngClass]=\"{disable: disabled, 'one-row': rowSpan === 1}\"\n style=\"background: {{ value ? value + '!important' : 'transparent' }}; opacity: {{ disabled && value ? 0.12 : 1}};\">\n <button *ngIf=\"!disabled\" class=\"pep-button icon-button xs weak
|
|
59
|
+
PepColorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PepColorComponent, selector: "pep-color", inputs: { key: "key", value: "value", label: "label", disabled: "disabled", xAlignment: "xAlignment", rowSpan: "rowSpan", type: "type", showTitle: "showTitle", renderTitle: "renderTitle", showAAComplient: "showAAComplient", checkAAComplient: "checkAAComplient", layoutType: "layoutType" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<pep-field-title *ngIf=\"renderTitle\" [label]=\"label\" [disabled]=\"disabled\" [xAlignment]=\"xAlignment\"\n [showTitle]=\"showTitle\">\n</pep-field-title>\n<div [id]=\"key\" class=\"pep-color-container\" [ngClass]=\"{ 'right-alignment': xAlignment == 'right' }\">\n <div pepRtlDirection (click)=\"!disabled ? chooseColor() : ''\" class=\"pep-color pep-input\"\n [ngClass]=\"{disable: disabled, 'one-row': rowSpan === 1}\"\n style=\"background: {{ value ? value + '!important' : 'transparent' }}; opacity: {{ disabled && value ? 0.12 : 1}};\">\n <button *ngIf=\"!disabled\" class=\"pep-button icon-button xs weak special mat-button btn-edit\" tabindex=\"-1\"\n pepButtonBlur mat-button>\n <mat-icon>\n <pep-icon name=\"system_edit\"></pep-icon>\n </mat-icon>\n </button>\n </div>\n</div>", styles: [":host{display:grid}.pepperi-color-container .pepperi-color,.pepperi-color-container .pep-color,.pep-color-container .pepperi-color,.pep-color-container .pep-color{padding:0;display:grid}.pepperi-color-container .pepperi-color .btn-edit,.pepperi-color-container .pep-color .btn-edit,.pep-color-container .pepperi-color .btn-edit,.pep-color-container .pep-color .btn-edit{width:calc(var(--pep-form-field-height, 2.5rem) - var(--pep-spacing-lg, 1rem));min-width:unset;padding:0;margin:0 var(--pep-spacing-md, .75rem);justify-self:end;align-self:center}.pepperi-color-container.right-alignment .pepperi-color .btn-edit,.pepperi-color-container.right-alignment .pep-color .btn-edit,.pep-color-container.right-alignment .pepperi-color .btn-edit,.pep-color-container.right-alignment .pep-color .btn-edit{justify-self:start}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i5.PepButtonBlurDirective, selector: "[pepButtonBlur]" }, { kind: "directive", type: i5.PepRtlDirectionDirective, selector: "[pepRtlDirection]" }, { kind: "component", type: i6.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }, { kind: "component", type: i7.PepFieldTitleComponent, selector: "pep-field-title", inputs: ["label", "mandatory", "disabled", "maxFieldCharacters", "hint", "xAlignment", "showTitle", "inputLength", "fontBodyType", "multiLine"] }] });
|
|
60
60
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepColorComponent, decorators: [{
|
|
61
61
|
type: Component,
|
|
62
|
-
args: [{ selector: 'pep-color', template: "<pep-field-title *ngIf=\"renderTitle\" [label]=\"label\" [disabled]=\"disabled\" [xAlignment]=\"xAlignment\"\n [showTitle]=\"showTitle\">\n</pep-field-title>\n<div [id]=\"key\" class=\"pep-color-container\" [ngClass]=\"{ 'right-alignment': xAlignment == 'right' }\">\n <div pepRtlDirection (click)=\"!disabled ? chooseColor() : ''\" class=\"pep-color pep-input\"\n [ngClass]=\"{disable: disabled, 'one-row': rowSpan === 1}\"\n style=\"background: {{ value ? value + '!important' : 'transparent' }}; opacity: {{ disabled && value ? 0.12 : 1}};\">\n <button *ngIf=\"!disabled\" class=\"pep-button icon-button xs weak
|
|
62
|
+
args: [{ selector: 'pep-color', template: "<pep-field-title *ngIf=\"renderTitle\" [label]=\"label\" [disabled]=\"disabled\" [xAlignment]=\"xAlignment\"\n [showTitle]=\"showTitle\">\n</pep-field-title>\n<div [id]=\"key\" class=\"pep-color-container\" [ngClass]=\"{ 'right-alignment': xAlignment == 'right' }\">\n <div pepRtlDirection (click)=\"!disabled ? chooseColor() : ''\" class=\"pep-color pep-input\"\n [ngClass]=\"{disable: disabled, 'one-row': rowSpan === 1}\"\n style=\"background: {{ value ? value + '!important' : 'transparent' }}; opacity: {{ disabled && value ? 0.12 : 1}};\">\n <button *ngIf=\"!disabled\" class=\"pep-button icon-button xs weak special mat-button btn-edit\" tabindex=\"-1\"\n pepButtonBlur mat-button>\n <mat-icon>\n <pep-icon name=\"system_edit\"></pep-icon>\n </mat-icon>\n </button>\n </div>\n</div>", styles: [":host{display:grid}.pepperi-color-container .pepperi-color,.pepperi-color-container .pep-color,.pep-color-container .pepperi-color,.pep-color-container .pep-color{padding:0;display:grid}.pepperi-color-container .pepperi-color .btn-edit,.pepperi-color-container .pep-color .btn-edit,.pep-color-container .pepperi-color .btn-edit,.pep-color-container .pep-color .btn-edit{width:calc(var(--pep-form-field-height, 2.5rem) - var(--pep-spacing-lg, 1rem));min-width:unset;padding:0;margin:0 var(--pep-spacing-md, .75rem);justify-self:end;align-self:center}.pepperi-color-container.right-alignment .pepperi-color .btn-edit,.pepperi-color-container.right-alignment .pep-color .btn-edit,.pep-color-container.right-alignment .pepperi-color .btn-edit,.pep-color-container.right-alignment .pep-color .btn-edit{justify-self:start}\n"] }]
|
|
63
63
|
}], ctorParameters: function () { return [{ type: i1.PepDialogService }, { type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { key: [{
|
|
64
64
|
type: Input
|
|
65
65
|
}], value: [{
|
|
@@ -87,4 +87,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
87
87
|
}], valueChange: [{
|
|
88
88
|
type: Output
|
|
89
89
|
}] } });
|
|
90
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpYi9jb2xvci9jb2xvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL2NvbG9yL2NvbG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBRVQsS0FBSyxFQUNMLE1BQU0sRUFHTixZQUFZLEdBR2YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNILHVCQUF1QixFQUd2Qiw0QkFBNEIsR0FDL0IsTUFBTSx5QkFBeUIsQ0FBQztBQUVqQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7O0FBUW5FLE1BQU0sT0FBTyxpQkFBaUI7SUFtQjFCLFlBQ1ksYUFBK0IsRUFDL0IsUUFBbUIsRUFDbkIsT0FBbUI7UUFGbkIsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBQy9CLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsWUFBTyxHQUFQLE9BQU8sQ0FBWTtRQXJCdEIsUUFBRyxHQUFHLEVBQUUsQ0FBQztRQUNULFVBQUssR0FBRyxFQUFFLENBQUM7UUFDWCxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ1gsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixlQUFVLEdBQTJCLDRCQUE0QixDQUFDO1FBQ2xFLFlBQU8sR0FBRyxDQUFDLENBQUM7UUFDWixTQUFJLEdBQWlCLEtBQUssQ0FBQztRQUUzQixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ2pCLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBRW5CLG9CQUFlLEdBQUcsSUFBSSxDQUFDO1FBQ3ZCLHFCQUFnQixHQUFHLElBQUksQ0FBQztRQUN4QixlQUFVLEdBQWtCLE1BQU0sQ0FBQztRQUc1QyxnQkFBVyxHQUF5QixJQUFJLFlBQVksRUFBVSxDQUFDO0lBTTNELENBQUM7SUFFTCxRQUFRO1FBQ0osSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQ2xCLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxFQUMxQix1QkFBdUIsQ0FBQyw0QkFBNEIsQ0FDdkQsQ0FBQztRQUVGLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUNsQixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFDMUIsdUJBQXVCLENBQUMsdUNBQXVDLENBQ2xFLENBQUM7U0FDTDtJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1AsRUFBRTtJQUNOLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBVTtRQUNsQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRUQsV0FBVztRQUNQLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUMzQyx1QkFBdUIsRUFDdkI7WUFDSSxLQUFLLEVBQUUsSUFBSSxDQUFDLEtBQUs7WUFDakIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsZUFBZSxFQUFFLElBQUksQ0FBQyxlQUFlO1lBQ3JDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxnQkFBZ0I7U0FDMUMsQ0FDSixDQUFDO1FBRUYsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3hDLElBQUksS0FBSyxLQUFLLFNBQVMsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFO2dCQUN2QyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQzNCO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzs4R0FoRVEsaUJBQWlCO2tHQUFqQixpQkFBaUIsNFhDMUI5Qiw0MkJBY007MkZEWU8saUJBQWlCO2tCQUw3QixTQUFTOytCQUNJLFdBQVc7d0pBS1osR0FBRztzQkFBWCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUVHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBR04sV0FBVztzQkFEVixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgT25Jbml0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBSZW5kZXJlcjIsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgT25DaGFuZ2VzLFxuICAgIE9uRGVzdHJveSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIFBlcEN1c3RvbWl6YXRpb25TZXJ2aWNlLFxuICAgIFBlcExheW91dFR5cGUsXG4gICAgUGVwSG9yaXpvbnRhbEFsaWdubWVudCxcbiAgICBERUZBVUxUX0hPUklaT05UQUxfQUxJR05NRU5ULFxufSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYic7XG5pbXBvcnQgeyBQZXBEaWFsb2dTZXJ2aWNlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvZGlhbG9nJztcbmltcG9ydCB7IFBlcENvbG9yUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jb2xvci1waWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFBlcENvbG9yVHlwZSB9IGZyb20gJy4vY29sb3IubW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3BlcC1jb2xvcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NvbG9yLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jb2xvci5jb21wb25lbnQuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBQZXBDb2xvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgICBASW5wdXQoKSBrZXkgPSAnJztcbiAgICBASW5wdXQoKSB2YWx1ZSA9ICcnO1xuICAgIEBJbnB1dCgpIGxhYmVsID0gJyc7XG4gICAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBASW5wdXQoKSB4QWxpZ25tZW50OiBQZXBIb3Jpem9udGFsQWxpZ25tZW50ID0gREVGQVVMVF9IT1JJWk9OVEFMX0FMSUdOTUVOVDtcbiAgICBASW5wdXQoKSByb3dTcGFuID0gMTtcbiAgICBASW5wdXQoKSB0eXBlOiBQZXBDb2xvclR5cGUgPSAnYW55JztcblxuICAgIEBJbnB1dCgpIHNob3dUaXRsZSA9IHRydWU7XG4gICAgQElucHV0KCkgcmVuZGVyVGl0bGUgPSB0cnVlO1xuXG4gICAgQElucHV0KCkgc2hvd0FBQ29tcGxpZW50ID0gdHJ1ZTtcbiAgICBASW5wdXQoKSBjaGVja0FBQ29tcGxpZW50ID0gdHJ1ZTtcbiAgICBASW5wdXQoKSBsYXlvdXRUeXBlOiBQZXBMYXlvdXRUeXBlID0gJ2Zvcm0nO1xuXG4gICAgQE91dHB1dCgpXG4gICAgdmFsdWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxzdHJpbmc+ID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBkaWFsb2dTZXJ2aWNlOiBQZXBEaWFsb2dTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZlxuICAgICkgeyB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhcbiAgICAgICAgICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAgUGVwQ3VzdG9taXphdGlvblNlcnZpY2UuU1RBTkRfQUxPTkVfRklFTERfQ0xBU1NfTkFNRVxuICAgICAgICApO1xuXG4gICAgICAgIGlmICghdGhpcy5yZW5kZXJUaXRsZSkge1xuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhcbiAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICAgICBQZXBDdXN0b21pemF0aW9uU2VydmljZS5TVEFORF9BTE9ORV9GSUVMRF9OT19TUEFDSU5HX0NMQVNTX05BTUVcbiAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgLy9cbiAgICB9XG5cbiAgICBjaGFuZ2VDb2xvcih2YWx1ZTogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy52YWx1ZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBjaG9vc2VDb2xvcigpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2dTZXJ2aWNlLm9wZW5EaWFsb2coXG4gICAgICAgICAgICBQZXBDb2xvclBpY2tlckNvbXBvbmVudCxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy52YWx1ZSxcbiAgICAgICAgICAgICAgICB0eXBlOiB0aGlzLnR5cGUsXG4gICAgICAgICAgICAgICAgc2hvd0FBQ29tcGxpZW50OiB0aGlzLnNob3dBQUNvbXBsaWVudCxcbiAgICAgICAgICAgICAgICBjaGVja0FBQ29tcGxpZW50OiB0aGlzLmNoZWNrQUFDb21wbGllbnRcbiAgICAgICAgICAgIH1cbiAgICAgICAgKTtcblxuICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICBpZiAodmFsdWUgIT09IHVuZGVmaW5lZCAmJiB2YWx1ZSAhPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlQ29sb3IodmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8cGVwLWZpZWxkLXRpdGxlICpuZ0lmPVwicmVuZGVyVGl0bGVcIiBbbGFiZWxdPVwibGFiZWxcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIiBbeEFsaWdubWVudF09XCJ4QWxpZ25tZW50XCJcbiAgICBbc2hvd1RpdGxlXT1cInNob3dUaXRsZVwiPlxuPC9wZXAtZmllbGQtdGl0bGU+XG48ZGl2IFtpZF09XCJrZXlcIiBjbGFzcz1cInBlcC1jb2xvci1jb250YWluZXJcIiBbbmdDbGFzc109XCJ7ICdyaWdodC1hbGlnbm1lbnQnOiB4QWxpZ25tZW50ID09ICdyaWdodCcgfVwiPlxuICAgIDxkaXYgcGVwUnRsRGlyZWN0aW9uIChjbGljayk9XCIhZGlzYWJsZWQgPyBjaG9vc2VDb2xvcigpIDogJydcIiBjbGFzcz1cInBlcC1jb2xvciBwZXAtaW5wdXRcIlxuICAgICAgICBbbmdDbGFzc109XCJ7ZGlzYWJsZTogZGlzYWJsZWQsICdvbmUtcm93Jzogcm93U3BhbiA9PT0gMX1cIlxuICAgICAgICBzdHlsZT1cImJhY2tncm91bmQ6IHt7IHZhbHVlID8gdmFsdWUgKyAnIWltcG9ydGFudCcgOiAndHJhbnNwYXJlbnQnIH19OyBvcGFjaXR5OiB7eyBkaXNhYmxlZCAmJiB2YWx1ZSA/IDAuMTIgOiAxfX07XCI+XG4gICAgICAgIDxidXR0b24gKm5nSWY9XCIhZGlzYWJsZWRcIiBjbGFzcz1cInBlcC1idXR0b24gaWNvbi1idXR0b24geHMgd2VhayBzcGVjaWFsIG1hdC1idXR0b24gYnRuLWVkaXRcIiB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgICAgIHBlcEJ1dHRvbkJsdXIgbWF0LWJ1dHRvbj5cbiAgICAgICAgICAgIDxtYXQtaWNvbj5cbiAgICAgICAgICAgICAgICA8cGVwLWljb24gbmFtZT1cInN5c3RlbV9lZGl0XCI+PC9wZXAtaWNvbj5cbiAgICAgICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -6,24 +6,43 @@ export class PepInputAutoWidthDirective {
|
|
|
6
6
|
this.el = el;
|
|
7
7
|
this.includePadding = true;
|
|
8
8
|
this.input = null;
|
|
9
|
+
this.lastValue = null;
|
|
10
|
+
this.onBlurHandler = () => this.setWidthUsingText();
|
|
11
|
+
this.onKeyupHandler = () => this.setWidthUsingText();
|
|
9
12
|
}
|
|
10
13
|
ngAfterViewInit() {
|
|
11
|
-
if (this.el.nativeElement
|
|
12
|
-
this.input = this.el;
|
|
14
|
+
if (this.el.nativeElement?.tagName?.toLowerCase() === 'input') {
|
|
15
|
+
this.input = this.el.nativeElement;
|
|
13
16
|
}
|
|
14
17
|
else {
|
|
15
|
-
const list = this.el.nativeElement
|
|
16
|
-
|
|
18
|
+
const list = this.el.nativeElement?.querySelectorAll
|
|
19
|
+
? this.el.nativeElement.querySelectorAll('input')
|
|
20
|
+
: null;
|
|
21
|
+
this.input = list && list.length > 0 ? list[0] : null;
|
|
17
22
|
}
|
|
18
23
|
if (this.input) {
|
|
19
|
-
this.input.addEventListener('blur', this.
|
|
20
|
-
this.input.addEventListener('keyup', this.
|
|
24
|
+
this.input.addEventListener('blur', this.onBlurHandler);
|
|
25
|
+
this.input.addEventListener('keyup', this.onKeyupHandler);
|
|
21
26
|
}
|
|
22
27
|
this.setWidthUsingText();
|
|
23
28
|
}
|
|
29
|
+
ngDoCheck() {
|
|
30
|
+
if (!this.input) {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
// Keep the width in sync when value is updated programmatically (Angular bindings),
|
|
34
|
+
// not only on user key events.
|
|
35
|
+
if (this.input.value !== this.lastValue) {
|
|
36
|
+
this.setWidthUsingText();
|
|
37
|
+
}
|
|
38
|
+
}
|
|
24
39
|
ngOnDestroy() {
|
|
25
|
-
this.input
|
|
26
|
-
|
|
40
|
+
if (!this.input) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
this.input.removeEventListener('blur', this.onBlurHandler);
|
|
44
|
+
this.input.removeEventListener('keyup', this.onKeyupHandler);
|
|
45
|
+
this.input = null;
|
|
27
46
|
}
|
|
28
47
|
get paddingWidth() {
|
|
29
48
|
return this.includePadding
|
|
@@ -40,6 +59,7 @@ export class PepInputAutoWidthDirective {
|
|
|
40
59
|
if (this.input) {
|
|
41
60
|
const text = this.input.value;
|
|
42
61
|
this.setWidth(this.textWidth(text) + this.paddingWidth);
|
|
62
|
+
this.lastValue = text;
|
|
43
63
|
}
|
|
44
64
|
}
|
|
45
65
|
_sumPropertyValues(properties) {
|
|
@@ -74,4 +94,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
74
94
|
}], ctorParameters: function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, propDecorators: { includePadding: [{
|
|
75
95
|
type: Input
|
|
76
96
|
}] } });
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0by13aWR0aC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3NyYy9jb3JlL2NvbW1vbi9kaXJlY3RpdmVzL2F1dG8td2lkdGguZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHSCxTQUFTLEVBRVQsS0FBSyxHQUdSLE1BQU0sZUFBZSxDQUFDOztBQUt2QixNQUFNLE9BQU8sMEJBQTBCO0lBUW5DLFlBQW9CLFFBQW1CLEVBQVUsRUFBYztRQUEzQyxhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQVUsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQVB0RCxtQkFBYyxHQUFHLElBQUksQ0FBQztRQUV2QixVQUFLLEdBQTRCLElBQUksQ0FBQztRQUN0QyxjQUFTLEdBQWtCLElBQUksQ0FBQztRQUNoQyxrQkFBYSxHQUFHLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO1FBQy9DLG1CQUFjLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7SUFFVSxDQUFDO0lBRW5FLGVBQWU7UUFDWCxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsS0FBSyxPQUFPLEVBQUU7WUFDM0QsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWlDLENBQUM7U0FDMUQ7YUFBTTtZQUNILE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLGdCQUFnQjtnQkFDaEQsQ0FBQyxDQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBa0M7Z0JBQ25GLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDWCxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksSUFBSSxJQUFJLENBQUMs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QUFHLENBQUMsSUFBSTtZQUNKLFNBQVM7Z0JBQ1QsR0FBRztnQkFDSCxXQUFXO2dCQUNYLEdBQUc7Z0JBQ0gsVUFBVTtnQkFDVixHQUFHO2dCQUNILFFBQVE7Z0JBQ1IsR0FBRztnQkFDSCxVQUFVLENBQUM7UUFDZixPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNsRCxDQUFDOzt1SEF0R1EsMEJBQTBCOzJHQUExQiwwQkFBMEI7MkZBQTFCLDBCQUEwQjtrQkFIdEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsZ0JBQWdCO2lCQUM3Qjt5SEFFWSxjQUFjO3NCQUF0QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIERvQ2hlY2ssXG4gICAgRGlyZWN0aXZlLFxuICAgIEVsZW1lbnRSZWYsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIFJlbmRlcmVyMixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3BlcEF1dG9XaWR0aF0nLFxufSlcbmV4cG9ydCBjbGFzcyBQZXBJbnB1dEF1dG9XaWR0aERpcmVjdGl2ZSBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIERvQ2hlY2ssIE9uRGVzdHJveSB7XG4gICAgQElucHV0KCkgaW5jbHVkZVBhZGRpbmcgPSB0cnVlO1xuXG4gICAgcHJpdmF0ZSBpbnB1dDogSFRNTElucHV0RWxlbWVudCB8IG51bGwgPSBudWxsO1xuICAgIHByaXZhdGUgbGFzdFZhbHVlOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgICBwcml2YXRlIG9uQmx1ckhhbmRsZXIgPSAoKSA9PiB0aGlzLnNldFdpZHRoVXNpbmdUZXh0KCk7XG4gICAgcHJpdmF0ZSBvbktleXVwSGFuZGxlciA9ICgpID0+IHRoaXMuc2V0V2lkdGhVc2luZ1RleHQoKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMiwgcHJpdmF0ZSBlbDogRWxlbWVudFJlZikge31cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZWwubmF0aXZlRWxlbWVudD8udGFnTmFtZT8udG9Mb3dlckNhc2UoKSA9PT0gJ2lucHV0Jykge1xuICAgICAgICAgICAgdGhpcy5pbnB1dCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uc3QgbGlzdCA9IHRoaXMuZWwubmF0aXZlRWxlbWVudD8ucXVlcnlTZWxlY3RvckFsbFxuICAgICAgICAgICAgICAgID8gKHRoaXMuZWwubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKCdpbnB1dCcpIGFzIE5vZGVMaXN0T2Y8SFRNTElucHV0RWxlbWVudD4pXG4gICAgICAgICAgICAgICAgOiBudWxsO1xuICAgICAgICAgICAgdGhpcy5pbnB1dCA9IGxpc3QgJiYgbGlzdC5sZW5ndGggPiAwID8gbGlzdFswXSA6IG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5pbnB1dCkge1xuICAgICAgICAgICAgdGhpcy5pbnB1dC5hZGRFdmVudExpc3RlbmVyKCdibHVyJywgdGhpcy5vbkJsdXJIYW5kbGVyKTtcbiAgICAgICAgICAgIHRoaXMuaW5wdXQuYWRkRXZlbnRMaXN0ZW5lcigna2V5dXAnLCB0aGlzLm9uS2V5dXBIYW5kbGVyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuc2V0V2lkdGhVc2luZ1RleHQoKTtcbiAgICB9XG5cbiAgICBuZ0RvQ2hlY2soKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5pbnB1dCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gS2VlcCB0aGUgd2lkdGggaW4gc3luYyB3aGVuIHZhbHVlIGlzIHVwZGF0ZWQgcHJvZ3JhbW1hdGljYWxseSAoQW5ndWxhciBiaW5kaW5ncyksXG4gICAgICAgIC8vIG5vdCBvbmx5IG9uIHVzZXIga2V5IGV2ZW50cy5cbiAgICAgICAgaWYgKHRoaXMuaW5wdXQudmFsdWUgIT09IHRoaXMubGFzdFZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLnNldFdpZHRoVXNpbmdUZXh0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgaWYgKCF0aGlzLmlucHV0KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmlucHV0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2JsdXInLCB0aGlzLm9uQmx1ckhhbmRsZXIpO1xuICAgICAgICB0aGlzLmlucHV0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2tleXVwJywgdGhpcy5vbktleXVwSGFuZGxlcik7XG4gICAgICAgIHRoaXMuaW5wdXQgPSBudWxsO1xuICAgIH1cblxuICAgIGdldCBwYWRkaW5nV2lkdGgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaW5jbHVkZVBhZGRpbmdcbiAgICAgICAgICAgID8gdGhpcy5fc3VtUHJvcGVydHlWYWx1ZXMoWydwYWRkaW5nLWxlZnQnLCAncGFkZGluZy1yaWdodCddKVxuICAgICAgICAgICAgOiAwO1xuICAgIH1cblxuICAgIGdldCBzdHlsZSgpIHtcbiAgICAgICAgcmV0dXJuIGdldENvbXB1dGVkU3R5bGUodGhpcy5pbnB1dCwgJycpO1xuICAgIH1cblxuICAgIHNldFdpZHRoKHdpZHRoOiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRTdHlsZSh0aGlzLmlucHV0LCAnd2lkdGgnLCB3aWR0aCArICdweCcpO1xuICAgIH1cblxuICAgIHNldFdpZHRoVXNpbmdUZXh0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pbnB1dCkge1xuICAgICAgICAgICAgY29uc3QgdGV4dCA9IHRoaXMuaW5wdXQudmFsdWU7XG4gICAgICAgICAgICB0aGlzLnNldFdpZHRoKHRoaXMudGV4dFdpZHRoKHRleHQpICsgdGhpcy5wYWRkaW5nV2lkdGgpO1xuICAgICAgICAgICAgdGhpcy5sYXN0VmFsdWUgPSB0ZXh0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfc3VtUHJvcGVydHlWYWx1ZXMocHJvcGVydGllczogc3RyaW5nW10pOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gcHJvcGVydGllc1xuICAgICAgICAgICAgLm1hcCgocHJvcGVydHkpID0+XG4gICAgICAgICAgICAgICAgcGFyc2VJbnQodGhpcy5zdHlsZS5nZXRQcm9wZXJ0eVZhbHVlKHByb3BlcnR5KSwgMTApXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAucmVkdWNlKChhLCBiKSA9PiBhICsgYiwgMCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSB0ZXh0V2lkdGgodmFsdWU6IHN0cmluZyk6IG51bWJlciB7XG4gICAgICAgIGNvbnN0IGN0eCA9IHRoaXMucmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnY2FudmFzJykuZ2V0Q29udGV4dCgnMmQnKTtcbiAgICAgICAgY29uc3Qge1xuICAgICAgICAgICAgZm9udFN0eWxlLFxuICAgICAgICAgICAgZm9udFZhcmlhbnQsXG4gICAgICAgICAgICBmb250V2VpZ2h0LFxuICAgICAgICAgICAgZm9udFNpemUsXG4gICAgICAgICAgICBmb250RmFtaWx5LFxuICAgICAgICB9ID0gdGhpcy5zdHlsZTtcblxuICAgICAgICAvLyBmb250IHN0cmluZyBmb3JtYXQ6IHtub3JtYWwsIG5vcm1hbCwgNzAwLCAyMHB4LCBSb2JvdG8sIFwiSGVsdmV0aWNhIE5ldWVcIiwgc2Fucy1zZXJpZn1cbiAgICAgICAgY3R4LmZvbnQgPVxuICAgICAgICAgICAgZm9udFN0eWxlICtcbiAgICAgICAgICAgICcgJyArXG4gICAgICAgICAgICBmb250VmFyaWFudCArXG4gICAgICAgICAgICAnICcgK1xuICAgICAgICAgICAgZm9udFdlaWdodCArXG4gICAgICAgICAgICAnICcgK1xuICAgICAgICAgICAgZm9udFNpemUgK1xuICAgICAgICAgICAgJyAnICtcbiAgICAgICAgICAgIGZvbnRGYW1pbHk7XG4gICAgICAgIHJldHVybiBjdHggPyBjdHgubWVhc3VyZVRleHQodmFsdWUpLndpZHRoIDogMDtcbiAgICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Directive } from "@angular/core";
|
|
2
|
+
import { Subject, takeUntil } from "rxjs";
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class BaseDestroyerDirective {
|
|
5
|
+
constructor() {
|
|
6
|
+
this._destroyed = new Subject();
|
|
7
|
+
}
|
|
8
|
+
getDestroyer() {
|
|
9
|
+
return takeUntil(this._destroyed);
|
|
10
|
+
}
|
|
11
|
+
ngOnDestroy() {
|
|
12
|
+
this._destroyed.next();
|
|
13
|
+
this._destroyed.complete();
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
BaseDestroyerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BaseDestroyerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
17
|
+
BaseDestroyerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "14.0.2", type: BaseDestroyerDirective, ngImport: i0 });
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: BaseDestroyerDirective, decorators: [{
|
|
19
|
+
type: Directive,
|
|
20
|
+
args: [{}]
|
|
21
|
+
}], ctorParameters: function () { return []; } });
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS1kZXN0cm95ZXIuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpYi9zcmMvY29yZS9jb21tb24vZGlyZWN0aXZlcy9iYXNlLWRlc3Ryb3llci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBYSxNQUFNLGVBQWUsQ0FBQztBQUNyRCxPQUFPLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFHMUMsTUFBTSxPQUFnQixzQkFBc0I7SUFHeEM7UUFFSSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVTLFlBQVk7UUFDbEIsT0FBTyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQy9CLENBQUM7O21IQWZpQixzQkFBc0I7dUdBQXRCLHNCQUFzQjsyRkFBdEIsc0JBQXNCO2tCQUQzQyxTQUFTO21CQUFDLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIE9uRGVzdHJveSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBTdWJqZWN0LCB0YWtlVW50aWwgfSBmcm9tIFwicnhqc1wiO1xuXG5ARGlyZWN0aXZlKHt9KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VEZXN0cm95ZXJEaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3llZDogU3ViamVjdDx2b2lkPjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICkge1xuICAgICAgICB0aGlzLl9kZXN0cm95ZWQgPSBuZXcgU3ViamVjdCgpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBnZXREZXN0cm95ZXIoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIHRha2VVbnRpbCh0aGlzLl9kZXN0cm95ZWQpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9kZXN0cm95ZWQubmV4dCgpO1xuICAgICAgICB0aGlzLl9kZXN0cm95ZWQuY29tcGxldGUoKTtcbiAgICB9XG59Il19
|
|
@@ -10,4 +10,5 @@ export * from './menu-blur.directive';
|
|
|
10
10
|
export * from './prevent-multi-click.directive';
|
|
11
11
|
export * from './print.directive';
|
|
12
12
|
export * from './div-loader.directive';
|
|
13
|
-
|
|
13
|
+
export * from './base-destroyer.directive';
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvc3JjL2NvcmUvY29tbW9uL2RpcmVjdGl2ZXMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0Qyw4Q0FBOEM7QUFDOUMsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyw0QkFBNEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygbmd4LWxpYi9jb3JlL2NvbW1vbi9kaXJlY3RpdmVzXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vYXV0by13aWR0aC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9idXR0b24tYmx1ci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9idXR0b24tbG9hZGVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2RhdGEtcWEuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbWVudS1ibHVyLmRpcmVjdGl2ZSc7XG4vLyBleHBvcnQgKiBmcm9tICcuL2RlYm91bmNlLWNsaWNrLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3ByZXZlbnQtbXVsdGktY2xpY2suZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vcHJpbnQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vZGl2LWxvYWRlci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9iYXNlLWRlc3Ryb3llci5kaXJlY3RpdmUnO1xuIl19
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { coerceNumberProperty } from '@angular/cdk/coercion';
|
|
1
2
|
import { Pipe } from '@angular/core';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
import * as i1 from "@angular/platform-browser";
|
|
5
|
+
import * as i2 from "../services/utilities.service";
|
|
4
6
|
export class PepCapitalizePipe {
|
|
5
7
|
transform(value) {
|
|
6
8
|
if (value) {
|
|
@@ -58,12 +60,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
58
60
|
args: [{ name: 'pepReplaceLineBreaks' }]
|
|
59
61
|
}] });
|
|
60
62
|
export class PepDateFormatterPipe {
|
|
61
|
-
transform(value, culture,
|
|
63
|
+
transform(value, culture, isDateTime = false) {
|
|
62
64
|
let res = '';
|
|
63
65
|
value = new Date(value);
|
|
64
66
|
if (value) {
|
|
65
67
|
res = value.toLocaleDateString(culture || 'en-US');
|
|
66
|
-
if (
|
|
68
|
+
if (isDateTime) {
|
|
67
69
|
res +=
|
|
68
70
|
' ' +
|
|
69
71
|
value.toLocaleTimeString(culture || 'en-US', {
|
|
@@ -82,12 +84,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
82
84
|
args: [{ name: 'pepDateFormatter' }]
|
|
83
85
|
}] });
|
|
84
86
|
export class PepDateStringFormatterPipe {
|
|
85
|
-
transform(value, culture,
|
|
87
|
+
transform(value, culture, isDateTime = false) {
|
|
86
88
|
let res = '';
|
|
87
89
|
const tmpDate = new Date(value);
|
|
88
90
|
if (value) {
|
|
89
91
|
res = tmpDate.toLocaleDateString(culture || 'en-US');
|
|
90
|
-
if (
|
|
92
|
+
if (isDateTime) {
|
|
91
93
|
res += ' ' + tmpDate.toLocaleTimeString(culture || 'en-US');
|
|
92
94
|
}
|
|
93
95
|
}
|
|
@@ -154,14 +156,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
154
156
|
args: [{ name: 'pepSplitUppercase' }]
|
|
155
157
|
}] });
|
|
156
158
|
export class PepToNumberPipe {
|
|
159
|
+
constructor(utilitiesService) {
|
|
160
|
+
this.utilitiesService = utilitiesService;
|
|
161
|
+
}
|
|
157
162
|
transform(value) {
|
|
158
|
-
|
|
163
|
+
const decimalSeparator = this.utilitiesService.getDecimalSeparator();
|
|
164
|
+
// We need to remove the thousands separator so - If the decimal separator is '.' we need to remove the ',' from the value else we remove the '.'.
|
|
165
|
+
value = decimalSeparator === '.' ? value.replace(/,/g, '') : value.replace(/./g, '');
|
|
166
|
+
const numberValue = coerceNumberProperty(value);
|
|
167
|
+
return numberValue;
|
|
168
|
+
// return parseInt(value);
|
|
159
169
|
}
|
|
160
170
|
}
|
|
161
|
-
PepToNumberPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepToNumberPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
171
|
+
PepToNumberPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepToNumberPipe, deps: [{ token: i2.PepUtilitiesService }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
162
172
|
PepToNumberPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: PepToNumberPipe, name: "pepToNumber" });
|
|
163
173
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepToNumberPipe, decorators: [{
|
|
164
174
|
type: Pipe,
|
|
165
175
|
args: [{ name: 'pepToNumber' }]
|
|
166
|
-
}] });
|
|
167
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLXBpcGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpYi9zcmMvY29yZS9jb21tb24vcGlwZXMvY29tbW9uLXBpcGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOzs7QUFXcEQsTUFBTSxPQUFPLGlCQUFpQjtJQUMxQixTQUFTLENBQUMsS0FBVTtRQUNoQixJQUFJLEtBQUssRUFBRTtZQUNQLE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ3pEO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQzs7OEdBTlEsaUJBQWlCOzRHQUFqQixpQkFBaUI7MkZBQWpCLGlCQUFpQjtrQkFEN0IsSUFBSTttQkFBQyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUU7O0FBVy9CLE1BQU0sT0FBTyxhQUFhO0lBQ3RCLFNBQVMsQ0FBQyxLQUFVO1FBQ2hCLElBQUksS0FBSyxFQUFFO1lBQ1AsTUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3RCLE9BQU8sQ0FBQyxDQUFDO1NBQ1o7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDOzswR0FQUSxhQUFhO3dHQUFiLGFBQWE7MkZBQWIsYUFBYTtrQkFEekIsSUFBSTttQkFBQyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7O0FBYzNCLE1BQU0sT0FBTyxhQUFhO0lBQ3RCLFNBQVMsQ0FBQyxLQUFVO1FBQ2hCLElBQUksS0FBSyxFQUFFO1lBQ1AsTUFBTSxDQUFDLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3hCLE9BQU8sQ0FBQyxDQUFDO1NBQ1o7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNqQixDQUFDOzsw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MUQsS0FBSyxRQUFRO2dCQUNULE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyx5QkFBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUUzRCxLQUFLLEtBQUs7Z0JBQ04sT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBRXhELEtBQUssYUFBYTtnQkFDZCxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsOEJBQThCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFaEU7Z0JBQ0ksTUFBTSxJQUFJLEtBQUssQ0FBQyxnQ0FBZ0MsSUFBSSxFQUFFLENBQUMsQ0FBQztTQUMvRDtJQUNMLENBQUM7O3dHQTFCUSxXQUFXO3NHQUFYLFdBQVc7MkZBQVgsV0FBVztrQkFEdkIsSUFBSTttQkFBQyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUU7O0FBK0J6QixNQUFNLE9BQU8scUJBQXFCO0lBQzlCLFNBQVMsQ0FBQyxLQUFhO1FBQ25CLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDM0QsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQzs7a0hBSlEscUJBQXFCO2dIQUFyQixxQkFBcUI7MkZBQXJCLHFCQUFxQjtrQkFEakMsSUFBSTttQkFBQyxFQUFFLElBQUksRUFBRSxtQkFBbUIsRUFBRTs7QUFTbkMsTUFBTSxPQUFPLGVBQWU7SUFDeEIsU0FBUyxDQUFDLEtBQWE7UUFDbkIsT0FBTyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQzs7NEdBSFEsZUFBZTswR0FBZixlQUFlOzJGQUFmLGVBQWU7a0JBRDNCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgICBEb21TYW5pdGl6ZXIsXG4gICAgU2FmZUh0bWwsXG4gICAgU2FmZVN0eWxlLFxuICAgIFNhZmVTY3JpcHQsXG4gICAgU2FmZVVybCxcbiAgICBTYWZlUmVzb3VyY2VVcmwsXG59IGZyb20gJ0Bhbmd1bGFyL3BsYXRmb3JtLWJyb3dzZXInO1xuXG5AUGlwZSh7IG5hbWU6ICdwZXBDYXBpdGFsaXplJyB9KVxuZXhwb3J0IGNsYXNzIFBlcENhcGl0YWxpemVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICByZXR1cm4gdmFsdWUuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgKyB2YWx1ZS5zbGljZSgxKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxufVxuXG5AUGlwZSh7IG5hbWU6ICdwZXBFbmNvZGUnIH0pXG5leHBvcnQgY2xhc3MgUGVwRW5jb2RlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybSh2YWx1ZTogYW55KSB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgY29uc3QgdiA9IGJ0b2EodmFsdWUpO1xuICAgICAgICAgICAgcmV0dXJuIHY7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH1cbn1cblxuZGVjbGFyZSBmdW5jdGlvbiBlc2NhcGUoczogc3RyaW5nKTogc3RyaW5nO1xuXG5AUGlwZSh7IG5hbWU6ICdwZXBFc2NhcGUnIH0pXG5leHBvcnQgY2xhc3MgUGVwRXNjYXBlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybSh2YWx1ZTogYW55KSB7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgY29uc3QgdiA9IGVzY2FwZSh2YWx1ZSk7XG4gICAgICAgICAgICByZXR1cm4gdjtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxufVxuXG5AUGlwZSh7IG5hbWU6ICdwZXBSZXBsYWNlTGluZUJyZWFrcycgfSlcbmV4cG9ydCBjbGFzcyBQZXBSZXBsYWNlTGluZUJyZWFrc1BpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IG5ld1ZhbHVlID0gdmFsdWUucmVwbGFjZSgvKDxiclxcID9cXC8/PikvZywgJyAnKTtcbiAgICAgICAgcmV0dXJuIG5ld1ZhbHVlO1xuICAgIH1cbn1cblxuQFBpcGUoeyBuYW1lOiAncGVwRGF0ZUZvcm1hdHRlcicgfSlcbmV4cG9ydCBjbGFzcyBQZXBEYXRlRm9ybWF0dGVyUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybSh2YWx1ZTogRGF0ZSwgY3VsdHVyZTogYW55LCBzaG93VGltZSA9IGZhbHNlKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IHJlcyA9ICcnO1xuICAgICAgICB2YWx1ZSA9IG5ldyBEYXRlKHZhbHVlKTtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICByZXMgPSB2YWx1ZS50b0xvY2FsZURhdGVTdHJpbmcoY3VsdHVyZSB8fCAnZW4tVVMnKTtcbiAgICAgICAgICAgIGlmIChzaG93VGltZSkge1xuICAgICAgICAgICAgICAgIHJlcyArPVxuICAgICAgICAgICAgICAgICAgICAnICcgK1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZS50b0xvY2FsZVRpbWVTdHJpbmcoY3VsdHVyZSB8fCAnZW4tVVMnLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBob3VyOiAnMi1kaWdpdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW51dGU6ICcyLWRpZ2l0JyxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5cbkBQaXBlKHsgbmFtZTogJ3BlcERhdGVTdHJpbmdGb3JtYXR0ZXInIH0pXG5leHBvcnQgY2xhc3MgUGVwRGF0ZVN0cmluZ0Zvcm1hdHRlclBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZywgY3VsdHVyZTogYW55LCBzaG93VGltZSA9IGZhbHNlKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IHJlcyA9ICcnO1xuICAgICAgICBjb25zdCB0bXBEYXRlID0gbmV3IERhdGUodmFsdWUpO1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHJlcyA9IHRtcERhdGUudG9Mb2NhbGVEYXRlU3RyaW5nKGN1bHR1cmUgfHwgJ2VuLVVTJyk7XG4gICAgICAgICAgICBpZiAoc2hvd1RpbWUpIHtcbiAgICAgICAgICAgICAgICByZXMgKz0gJyAnICsgdG1wRGF0ZS50b0xvY2FsZVRpbWVTdHJpbmcoY3VsdHVyZSB8fCAnZW4tVVMnKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH1cbn1cblxuQFBpcGUoeyBuYW1lOiAncGVwU2FmZUh0bWwnIH0pXG5leHBvcnQgY2xhc3MgUGVwU2FmZUh0bWxQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplcikge31cblxuICAgIHRyYW5zZm9ybShodG1sKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0SHRtbChodG1sKTtcbiAgICB9XG59XG5cbkBQaXBlKHsgbmFtZTogJ3BlcFNhZmUnIH0pXG5leHBvcnQgY2xhc3MgUGVwU2FmZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHt9XG5cbiAgICBwdWJsaWMgdHJhbnNmb3JtKFxuICAgICAgICB2YWx1ZTogYW55LFxuICAgICAgICB0eXBlOiBzdHJpbmdcbiAgICApOiBTYWZlSHRtbCB8IFNhZmVTdHlsZSB8IFNhZmVTY3JpcHQgfCBTYWZlVXJsIHwgU2FmZVJlc291cmNlVXJsIHtcbiAgICAgICAgc3dpdGNoICh0eXBlKSB7XG4gICAgICAgICAgICBjYXNlICdodG1sJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwodmFsdWUpO1xuXG4gICAgICAgICAgICBjYXNlICdzdHlsZSc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RTdHlsZSh2YWx1ZSk7XG5cbiAgICAgICAgICAgIGNhc2UgJ3NjcmlwdCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RTY3JpcHQodmFsdWUpO1xuXG4gICAgICAgICAgICBjYXNlICd1cmwnOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0VXJsKHZhbHVlKTtcblxuICAgICAgICAgICAgY2FzZSAncmVzb3VyY2VVcmwnOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwodmFsdWUpO1xuXG4gICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgSW52YWxpZCBzYWZlIHR5cGUgc3BlY2lmaWVkOiAke3R5cGV9YCk7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBQaXBlKHsgbmFtZTogJ3BlcFNwbGl0VXBwZXJjYXNlJyB9KVxuZXhwb3J0IGNsYXNzIFBlcFNwbGl0VXBwZXJjYXNlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgbmV3VmFsdWUgPSB2YWx1ZS5yZXBsYWNlKC8oW2Etel0pKFtBLVpdKS9nLCAnJDEgJDInKTtcbiAgICAgICAgcmV0dXJuIG5ld1ZhbHVlO1xuICAgIH1cbn1cblxuQFBpcGUoeyBuYW1lOiAncGVwVG9OdW1iZXInIH0pXG5leHBvcnQgY2xhc3MgUGVwVG9OdW1iZXJQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKHZhbHVlOiBzdHJpbmcpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gcGFyc2VJbnQodmFsdWUpO1xuICAgIH1cbn1cbiJdfQ==
|
|
176
|
+
}], ctorParameters: function () { return [{ type: i2.PepUtilitiesService }]; } });
|
|
177
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLXBpcGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpYi9zcmMvY29yZS9jb21tb24vcGlwZXMvY29tbW9uLXBpcGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQzdELE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDOzs7O0FBWXBELE1BQU0sT0FBTyxpQkFBaUI7SUFDMUIsU0FBUyxDQUFDLEtBQVU7UUFDaEIsSUFBSSxLQUFLLEVBQUU7WUFDUCxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUN6RDtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7OzhHQU5RLGlCQUFpQjs0R0FBakIsaUJBQWlCOzJGQUFqQixpQkFBaUI7a0JBRDdCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFOztBQVcvQixNQUFNLE9BQU8sYUFBYTtJQUN0QixTQUFTLENBQUMsS0FBVTtRQUNoQixJQUFJLEtBQUssRUFBRTtZQUNQLE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN0QixPQUFPLENBQUMsQ0FBQztTQUNaO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDakIsQ0FBQzs7MEdBUFEsYUFBYTt3R0FBYixhQUFhOzJGQUFiLGFBQWE7a0JBRHpCLElBQUk7bUJBQUMsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFOztBQWMzQixNQUFNLE9BQU8sYUFBYTtJQUN0QixTQUFTLENBQUMsS0FBVTtRQUNoQixJQUFJLEtBQUssRUFBRTtZQUNQLE1BQU0sQ0FBQyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUN4QixPQUFPLENB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QUksRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDckYsTUFBTSxXQUFXLEdBQUcsb0JBQW9CLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEQsT0FBTyxXQUFXLENBQUM7UUFDbkIsMEJBQTBCO0lBQzlCLENBQUM7OzRHQVZRLGVBQWU7MEdBQWYsZUFBZTsyRkFBZixlQUFlO2tCQUQzQixJQUFJO21CQUFDLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvZXJjZU51bWJlclByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG4gICAgRG9tU2FuaXRpemVyLFxuICAgIFNhZmVIdG1sLFxuICAgIFNhZmVTdHlsZSxcbiAgICBTYWZlU2NyaXB0LFxuICAgIFNhZmVVcmwsXG4gICAgU2FmZVJlc291cmNlVXJsLFxufSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcbmltcG9ydCB7IFBlcFV0aWxpdGllc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy91dGlsaXRpZXMuc2VydmljZSc7XG5cbkBQaXBlKHsgbmFtZTogJ3BlcENhcGl0YWxpemUnIH0pXG5leHBvcnQgY2xhc3MgUGVwQ2FwaXRhbGl6ZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICB0cmFuc2Zvcm0odmFsdWU6IGFueSkge1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSArIHZhbHVlLnNsaWNlKDEpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG59XG5cbkBQaXBlKHsgbmFtZTogJ3BlcEVuY29kZScgfSlcbmV4cG9ydCBjbGFzcyBQZXBFbmNvZGVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICBjb25zdCB2ID0gYnRvYSh2YWx1ZSk7XG4gICAgICAgICAgICByZXR1cm4gdjtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxufVxuXG5kZWNsYXJlIGZ1bmN0aW9uIGVzY2FwZShzOiBzdHJpbmcpOiBzdHJpbmc7XG5cbkBQaXBlKHsgbmFtZTogJ3BlcEVzY2FwZScgfSlcbmV4cG9ydCBjbGFzcyBQZXBFc2NhcGVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKHZhbHVlOiBhbnkpIHtcbiAgICAgICAgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICBjb25zdCB2ID0gZXNjYXBlKHZhbHVlKTtcbiAgICAgICAgICAgIHJldHVybiB2O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB2YWx1ZTtcbiAgICB9XG59XG5cbkBQaXBlKHsgbmFtZTogJ3BlcFJlcGxhY2VMaW5lQnJlYWtzJyB9KVxuZXhwb3J0IGNsYXNzIFBlcFJlcGxhY2VMaW5lQnJlYWtzUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgbmV3VmFsdWUgPSB2YWx1ZS5yZXBsYWNlKC8oPGJyXFwgP1xcLz8+KS9nLCAnICcpO1xuICAgICAgICByZXR1cm4gbmV3VmFsdWU7XG4gICAgfVxufVxuXG5AUGlwZSh7IG5hbWU6ICdwZXBEYXRlRm9ybWF0dGVyJyB9KVxuZXhwb3J0IGNsYXNzIFBlcERhdGVGb3JtYXR0ZXJQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgdHJhbnNmb3JtKHZhbHVlOiBEYXRlLCBjdWx0dXJlOiBhbnksIGlzRGF0ZVRpbWUgPSBmYWxzZSk6IHN0cmluZyB7XG4gICAgICAgIGxldCByZXMgPSAnJztcbiAgICAgICAgdmFsdWUgPSBuZXcgRGF0ZSh2YWx1ZSk7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgcmVzID0gdmFsdWUudG9Mb2NhbGVEYXRlU3RyaW5nKGN1bHR1cmUgfHwgJ2VuLVVTJyk7XG4gICAgICAgICAgICBpZiAoaXNEYXRlVGltZSkge1xuICAgICAgICAgICAgICAgIHJlcyArPVxuICAgICAgICAgICAgICAgICAgICAnICcgK1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZS50b0xvY2FsZVRpbWVTdHJpbmcoY3VsdHVyZSB8fCAnZW4tVVMnLCB7XG4gICAgICAgICAgICAgICAgICAgICAgICBob3VyOiAnMi1kaWdpdCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBtaW51dGU6ICcyLWRpZ2l0JyxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5cbkBQaXBlKHsgbmFtZTogJ3BlcERhdGVTdHJpbmdGb3JtYXR0ZXInIH0pXG5leHBvcnQgY2xhc3MgUGVwRGF0ZVN0cmluZ0Zvcm1hdHRlclBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZywgY3VsdHVyZTogYW55LCBpc0RhdGVUaW1lID0gZmFsc2UpOiBzdHJpbmcge1xuICAgICAgICBsZXQgcmVzID0gJyc7XG4gICAgICAgIGNvbnN0IHRtcERhdGUgPSBuZXcgRGF0ZSh2YWx1ZSk7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgcmVzID0gdG1wRGF0ZS50b0xvY2FsZURhdGVTdHJpbmcoY3VsdHVyZSB8fCAnZW4tVVMnKTtcbiAgICAgICAgICAgIGlmIChpc0RhdGVUaW1lKSB7XG4gICAgICAgICAgICAgICAgcmVzICs9ICcgJyArIHRtcERhdGUudG9Mb2NhbGVUaW1lU3RyaW5nKGN1bHR1cmUgfHwgJ2VuLVVTJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlcztcbiAgICB9XG59XG5cbkBQaXBlKHsgbmFtZTogJ3BlcFNhZmVIdG1sJyB9KVxuZXhwb3J0IGNsYXNzIFBlcFNhZmVIdG1sUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHt9XG5cbiAgICB0cmFuc2Zvcm0oaHRtbCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdEh0bWwoaHRtbCk7XG4gICAgfVxufVxuXG5AUGlwZSh7IG5hbWU6ICdwZXBTYWZlJyB9KVxuZXhwb3J0IGNsYXNzIFBlcFNhZmVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIHNhbml0aXplcjogRG9tU2FuaXRpemVyKSB7fVxuXG4gICAgcHVibGljIHRyYW5zZm9ybShcbiAgICAgICAgdmFsdWU6IGFueSxcbiAgICAgICAgdHlwZTogc3RyaW5nXG4gICAgKTogU2FmZUh0bWwgfCBTYWZlU3R5bGUgfCBTYWZlU2NyaXB0IHwgU2FmZVVybCB8IFNhZmVSZXNvdXJjZVVybCB7XG4gICAgICAgIHN3aXRjaCAodHlwZSkge1xuICAgICAgICAgICAgY2FzZSAnaHRtbCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKHZhbHVlKTtcblxuICAgICAgICAgICAgY2FzZSAnc3R5bGUnOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0U3R5bGUodmFsdWUpO1xuXG4gICAgICAgICAgICBjYXNlICdzY3JpcHQnOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0U2NyaXB0KHZhbHVlKTtcblxuICAgICAgICAgICAgY2FzZSAndXJsJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFVybCh2YWx1ZSk7XG5cbiAgICAgICAgICAgIGNhc2UgJ3Jlc291cmNlVXJsJzpcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKHZhbHVlKTtcblxuICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYEludmFsaWQgc2FmZSB0eXBlIHNwZWNpZmllZDogJHt0eXBlfWApO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AUGlwZSh7IG5hbWU6ICdwZXBTcGxpdFVwcGVyY2FzZScgfSlcbmV4cG9ydCBjbGFzcyBQZXBTcGxpdFVwcGVyY2FzZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcbiAgICB0cmFuc2Zvcm0odmFsdWU6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IG5ld1ZhbHVlID0gdmFsdWUucmVwbGFjZSgvKFthLXpdKShbQS1aXSkvZywgJyQxICQyJyk7XG4gICAgICAgIHJldHVybiBuZXdWYWx1ZTtcbiAgICB9XG59XG5cbkBQaXBlKHsgbmFtZTogJ3BlcFRvTnVtYmVyJyB9KVxuZXhwb3J0IGNsYXNzIFBlcFRvTnVtYmVyUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgdXRpbGl0aWVzU2VydmljZTogUGVwVXRpbGl0aWVzU2VydmljZSkge31cblxuICAgIHRyYW5zZm9ybSh2YWx1ZTogc3RyaW5nKTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgZGVjaW1hbFNlcGFyYXRvciA9IHRoaXMudXRpbGl0aWVzU2VydmljZS5nZXREZWNpbWFsU2VwYXJhdG9yKCk7XG4gICAgICAgIC8vIFdlIG5lZWQgdG8gcmVtb3ZlIHRoZSB0aG91c2FuZHMgc2VwYXJhdG9yIHNvIC0gSWYgdGhlIGRlY2ltYWwgc2VwYXJhdG9yIGlzICcuJyB3ZSBuZWVkIHRvIHJlbW92ZSB0aGUgJywnIGZyb20gdGhlIHZhbHVlIGVsc2Ugd2UgcmVtb3ZlIHRoZSAnLicuXG4gICAgICAgIHZhbHVlID0gZGVjaW1hbFNlcGFyYXRvciA9PT0gJy4nID8gdmFsdWUucmVwbGFjZSgvLC9nLCAnJykgOiB2YWx1ZS5yZXBsYWNlKC8uL2csICcnKTtcbiAgICAgICAgY29uc3QgbnVtYmVyVmFsdWUgPSBjb2VyY2VOdW1iZXJQcm9wZXJ0eSh2YWx1ZSk7XG4gICAgICAgIHJldHVybiBudW1iZXJWYWx1ZTtcbiAgICAgICAgLy8gcmV0dXJuIHBhcnNlSW50KHZhbHVlKTtcbiAgICB9XG59XG4iXX0=
|