@pepperi-addons/ngx-lib 0.2.59-query-builder.7 → 0.2.61
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 +39 -39
- package/address/address.component.theme.scss +8 -8
- package/address/pepperi-addons-ngx-lib-address.metadata.json +1 -1
- package/attachment/attachment.component.d.ts +0 -1
- package/attachment/attachment.component.theme.scss +3 -3
- package/attachment/pepperi-addons-ngx-lib-attachment.metadata.json +1 -1
- package/bread-crumbs/bread-crumbs.component.theme.scss +8 -8
- package/bread-crumbs/pepperi-addons-ngx-lib-bread-crumbs.metadata.json +1 -1
- package/bundles/pepperi-addons-ngx-lib-address.umd.js +1 -1
- package/bundles/pepperi-addons-ngx-lib-address.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-attachment.umd.js +1 -6
- package/bundles/pepperi-addons-ngx-lib-attachment.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-bread-crumbs.umd.js +1 -1
- package/bundles/pepperi-addons-ngx-lib-bread-crumbs.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-button.umd.js +1 -1
- package/bundles/pepperi-addons-ngx-lib-button.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-carousel.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-checkbox.umd.js +1 -4
- package/bundles/pepperi-addons-ngx-lib-checkbox.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-color.umd.js +2 -7
- package/bundles/pepperi-addons-ngx-lib-color.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-date.umd.js +3 -5
- package/bundles/pepperi-addons-ngx-lib-date.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-dialog.umd.js +2 -2
- package/bundles/pepperi-addons-ngx-lib-dialog.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-field-title.umd.js +1 -1
- package/bundles/pepperi-addons-ngx-lib-field-title.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-files-uploader.umd.js +1 -1
- package/bundles/pepperi-addons-ngx-lib-files-uploader.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-form.umd.js +23 -26
- package/bundles/pepperi-addons-ngx-lib-form.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-group-buttons.umd.js +1 -1
- package/bundles/pepperi-addons-ngx-lib-group-buttons.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-icon.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-image.umd.js +1 -6
- package/bundles/pepperi-addons-ngx-lib-image.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-images-filmstrip.umd.js +1 -6
- package/bundles/pepperi-addons-ngx-lib-images-filmstrip.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-list.umd.js +8 -8
- package/bundles/pepperi-addons-ngx-lib-list.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-menu.umd.js +2 -2
- package/bundles/pepperi-addons-ngx-lib-menu.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-page-layout.umd.js +1 -1
- package/bundles/pepperi-addons-ngx-lib-page-layout.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-quantity-selector.umd.js +1 -6
- package/bundles/pepperi-addons-ngx-lib-quantity-selector.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-rich-html-textarea.umd.js +1 -6
- package/bundles/pepperi-addons-ngx-lib-rich-html-textarea.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-search.umd.js +1 -1
- package/bundles/pepperi-addons-ngx-lib-search.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-select.umd.js +1 -6
- package/bundles/pepperi-addons-ngx-lib-select.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-separator.umd.js +1 -9
- package/bundles/pepperi-addons-ngx-lib-separator.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-side-bar.umd.js +1 -1
- package/bundles/pepperi-addons-ngx-lib-side-bar.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-signature.umd.js +1 -6
- package/bundles/pepperi-addons-ngx-lib-signature.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-size-detector.umd.js +1 -1
- package/bundles/pepperi-addons-ngx-lib-size-detector.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-slider.umd.js +1 -1
- package/bundles/pepperi-addons-ngx-lib-slider.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-smart-filters.umd.js +40 -307
- package/bundles/pepperi-addons-ngx-lib-smart-filters.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-textarea.umd.js +1 -6
- package/bundles/pepperi-addons-ngx-lib-textarea.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-textbox-icon.umd.js +1 -1
- package/bundles/pepperi-addons-ngx-lib-textbox-icon.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-textbox.umd.js +3 -5
- package/bundles/pepperi-addons-ngx-lib-textbox.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-top-bar.umd.js +1 -1
- package/bundles/pepperi-addons-ngx-lib-top-bar.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib.umd.js +36 -38
- package/bundles/pepperi-addons-ngx-lib.umd.js.map +1 -1
- package/button/button.component.theme.scss +2 -2
- package/button/pepperi-addons-ngx-lib-button.metadata.json +1 -1
- package/checkbox/checkbox.component.theme.scss +2 -2
- package/checkbox/pepperi-addons-ngx-lib-checkbox.metadata.json +1 -1
- package/color/color-picker.component.theme.scss +175 -175
- package/color/color.component.d.ts +0 -1
- package/color/color.component.theme.scss +7 -7
- package/color/pepperi-addons-ngx-lib-color.metadata.json +1 -1
- package/core/common/services/addon.service.d.ts +2 -1
- package/core/common/services/file.service.d.ts +4 -4
- package/core/customization/customization.service.d.ts +0 -1
- package/date/date.component.theme.scss +169 -169
- package/date/pepperi-addons-ngx-lib-date.metadata.json +1 -1
- package/dialog/dialog.component.theme.scss +5 -5
- package/dialog/pepperi-addons-ngx-lib-dialog.metadata.json +1 -1
- package/esm2015/address/address.component.js +2 -2
- package/esm2015/address/address.module.js +1 -1
- package/esm2015/address/public-api.js +1 -1
- package/esm2015/attachment/attachment.component.js +2 -7
- package/esm2015/attachment/attachment.module.js +1 -1
- package/esm2015/attachment/public-api.js +1 -1
- package/esm2015/bread-crumbs/bread-crumbs.component.js +2 -2
- package/esm2015/bread-crumbs/bread-crumbs.model.js +1 -1
- package/esm2015/bread-crumbs/bread-crumbs.module.js +1 -1
- package/esm2015/bread-crumbs/public-api.js +1 -1
- package/esm2015/button/button.component.js +2 -2
- package/esm2015/button/button.model.js +1 -1
- package/esm2015/button/button.module.js +1 -1
- package/esm2015/button/public-api.js +1 -1
- package/esm2015/carousel/carousel-item.directive.js +1 -1
- package/esm2015/carousel/carousel.component.js +15 -15
- package/esm2015/carousel/carousel.module.js +1 -1
- package/esm2015/carousel/public-api.js +1 -1
- package/esm2015/checkbox/checkbox.component.js +2 -5
- package/esm2015/checkbox/checkbox.module.js +1 -1
- package/esm2015/checkbox/public-api.js +1 -1
- package/esm2015/color/color-picker.component.js +28 -28
- package/esm2015/color/color.component.js +2 -7
- package/esm2015/color/color.model.js +1 -1
- package/esm2015/color/color.module.js +1 -1
- package/esm2015/color/public-api.js +1 -1
- package/esm2015/core/clipboard/clipboard.directive.js +1 -1
- package/esm2015/core/clipboard/clipboard.service.js +1 -1
- package/esm2015/core/clipboard/index.js +1 -1
- package/esm2015/core/clipboard/public-api.js +1 -1
- package/esm2015/core/common/directives/auto-width.directive.js +1 -1
- package/esm2015/core/common/directives/button-blur.directive.js +1 -1
- package/esm2015/core/common/directives/button-loader.directive.js +1 -1
- package/esm2015/core/common/directives/data-qa.directive.js +1 -1
- package/esm2015/core/common/directives/index.js +1 -1
- package/esm2015/core/common/directives/menu-blur.directive.js +1 -1
- package/esm2015/core/common/directives/prevent-multi-click.directive.js +1 -1
- package/esm2015/core/common/directives/public-api.js +1 -1
- package/esm2015/core/common/index.js +1 -1
- package/esm2015/core/common/model/index.js +1 -1
- package/esm2015/core/common/model/papi.model.js +1 -1
- package/esm2015/core/common/model/public-api.js +1 -1
- package/esm2015/core/common/model/utilities.model.js +1 -1
- package/esm2015/core/common/model/wapi.model.js +1 -1
- package/esm2015/core/common/pipes/common-pipes.js +1 -1
- package/esm2015/core/common/pipes/index.js +1 -1
- package/esm2015/core/common/pipes/public-api.js +1 -1
- package/esm2015/core/common/public-api.js +1 -1
- package/esm2015/core/common/services/addon.service.js +19 -4
- package/esm2015/core/common/services/color.service.js +1 -1
- package/esm2015/core/common/services/cookie.service.js +1 -1
- package/esm2015/core/common/services/data-convertor.service.js +1 -1
- package/esm2015/core/common/services/file.service.js +9 -9
- package/esm2015/core/common/services/index.js +1 -1
- package/esm2015/core/common/services/jwt-helper.service.js +1 -1
- package/esm2015/core/common/services/public-api.js +1 -1
- package/esm2015/core/common/services/session.service.js +1 -1
- package/esm2015/core/common/services/utilities.service.js +4 -25
- package/esm2015/core/common/services/validator.service.js +1 -1
- package/esm2015/core/common/services/window-scrolling.service.js +5 -5
- package/esm2015/core/customization/customization.model.js +1 -1
- package/esm2015/core/customization/customization.service.js +2 -4
- package/esm2015/core/customization/index.js +1 -1
- package/esm2015/core/customization/public-api.js +1 -1
- package/esm2015/core/http/index.js +1 -1
- package/esm2015/core/http/interceptors/error.interceptor.js +1 -1
- package/esm2015/core/http/interceptors/index.js +1 -1
- package/esm2015/core/http/interceptors/loader.interceptor.js +1 -1
- package/esm2015/core/http/interceptors/profiler.interceptor.js +1 -1
- package/esm2015/core/http/public-api.js +1 -1
- package/esm2015/core/http/services/http.service.js +1 -1
- package/esm2015/core/http/services/loader.service.js +1 -1
- package/esm2015/core/index.js +1 -1
- package/esm2015/core/layout/index.js +1 -1
- package/esm2015/core/layout/layout.service.js +1 -1
- package/esm2015/core/layout/public-api.js +1 -1
- package/esm2015/core/layout/rtl.directive.js +1 -1
- package/esm2015/core/portal/attach.directive.js +1 -1
- package/esm2015/core/portal/index.js +1 -1
- package/esm2015/core/portal/portal.service.js +1 -1
- package/esm2015/core/portal/public-api.js +1 -1
- package/esm2015/core/portal/target.directive.js +1 -1
- package/esm2015/core/public-api.js +1 -1
- package/esm2015/core/scroll-to/index.js +1 -1
- package/esm2015/core/scroll-to/public-api.js +1 -1
- package/esm2015/core/scroll-to/scroll-to.service.js +1 -1
- package/esm2015/date/date.component.js +4 -6
- package/esm2015/date/date.module.js +1 -1
- package/esm2015/date/public-api.js +1 -1
- package/esm2015/dialog/default-dialog.component.js +2 -2
- package/esm2015/dialog/dialog.component.js +2 -2
- package/esm2015/dialog/dialog.model.js +1 -1
- package/esm2015/dialog/dialog.module.js +1 -1
- package/esm2015/dialog/dialog.service.js +1 -1
- package/esm2015/dialog/public-api.js +1 -1
- package/esm2015/field-title/field-title.component.js +2 -2
- package/esm2015/field-title/field-title.module.js +1 -1
- package/esm2015/field-title/public-api.js +1 -1
- package/esm2015/files-uploader/files-uploader.component.js +2 -2
- package/esm2015/files-uploader/files-uploader.module.js +1 -1
- package/esm2015/files-uploader/public-api.js +1 -1
- package/esm2015/form/field-generator.component.js +2 -2
- package/esm2015/form/form.component.js +2 -2
- package/esm2015/form/form.module.js +1 -1
- package/esm2015/form/indicators.component.js +2 -2
- package/esm2015/form/internal-button.component.js +18 -21
- package/esm2015/form/internal-carusel.component.js +2 -2
- package/esm2015/form/internal-carusel.service.js +1 -1
- package/esm2015/form/internal-list.component.js +2 -2
- package/esm2015/form/internal-menu.component.js +2 -2
- package/esm2015/form/internal-page.component.js +2 -2
- package/esm2015/form/internal-page.service.js +1 -1
- package/esm2015/form/public-api.js +1 -1
- package/esm2015/group-buttons/group-buttons.component.js +2 -2
- package/esm2015/group-buttons/group-buttons.module.js +1 -1
- package/esm2015/group-buttons/public-api.js +1 -1
- package/esm2015/icon/icon-generated-all.model.js +1 -1
- package/esm2015/icon/icon-generated.model.js +1 -1
- package/esm2015/icon/icon-registry.service.js +2 -2
- package/esm2015/icon/icon.component.js +1 -1
- package/esm2015/icon/icon.module.js +1 -1
- package/esm2015/icon/public-api.js +1 -1
- package/esm2015/image/image.component.js +2 -7
- package/esm2015/image/image.module.js +1 -1
- package/esm2015/image/public-api.js +1 -1
- package/esm2015/images-filmstrip/images-filmstrip.component.js +2 -7
- package/esm2015/images-filmstrip/images-filmstrip.module.js +1 -1
- package/esm2015/images-filmstrip/public-api.js +1 -1
- package/esm2015/list/list-actions.component.js +2 -2
- package/esm2015/list/list-carousel.component.js +2 -2
- package/esm2015/list/list-chooser.component.js +2 -2
- package/esm2015/list/list-pager.component.js +2 -2
- package/esm2015/list/list-sorting.component.js +2 -2
- package/esm2015/list/list-total.component.js +2 -2
- package/esm2015/list/list-views.component.js +2 -2
- package/esm2015/list/list.component.js +2 -2
- package/esm2015/list/list.model.js +1 -1
- package/esm2015/list/list.module.js +1 -1
- package/esm2015/list/public-api.js +1 -1
- package/esm2015/menu/menu-item.component.js +2 -2
- package/esm2015/menu/menu.component.js +2 -2
- package/esm2015/menu/menu.model.js +1 -1
- package/esm2015/menu/menu.module.js +1 -1
- package/esm2015/menu/public-api.js +1 -1
- package/esm2015/ngx-lib.module.js +1 -1
- package/esm2015/page-layout/page-layout.component.js +2 -2
- package/esm2015/page-layout/page-layout.module.js +1 -1
- package/esm2015/page-layout/public-api.js +1 -1
- package/esm2015/public-api.js +1 -1
- package/esm2015/quantity-selector/public-api.js +1 -1
- package/esm2015/quantity-selector/quantity-selector-validation.directive.js +1 -1
- package/esm2015/quantity-selector/quantity-selector.component.js +2 -7
- package/esm2015/quantity-selector/quantity-selector.module.js +1 -1
- package/esm2015/quantity-selector/quantity-selector.pipes.js +1 -1
- package/esm2015/rich-html-textarea/public-api.js +1 -1
- package/esm2015/rich-html-textarea/rich-html-textarea.component.js +2 -7
- package/esm2015/rich-html-textarea/rich-html-textarea.module.js +1 -1
- package/esm2015/search/public-api.js +1 -1
- package/esm2015/search/search.component.js +2 -2
- package/esm2015/search/search.model.js +1 -1
- package/esm2015/search/search.module.js +1 -1
- package/esm2015/select/public-api.js +1 -1
- package/esm2015/select/select.component.js +2 -7
- package/esm2015/select/select.module.js +1 -1
- package/esm2015/separator/public-api.js +1 -1
- package/esm2015/separator/separator.component.js +2 -10
- package/esm2015/separator/separator.module.js +1 -1
- package/esm2015/side-bar/public-api.js +1 -1
- package/esm2015/side-bar/side-bar.component.js +2 -2
- package/esm2015/side-bar/side-bar.model.js +1 -1
- package/esm2015/side-bar/side-bar.module.js +1 -1
- package/esm2015/signature/public-api.js +1 -1
- package/esm2015/signature/signature.component.js +2 -7
- package/esm2015/signature/signature.module.js +1 -1
- package/esm2015/size-detector/public-api.js +1 -1
- package/esm2015/size-detector/size-detector.component.js +2 -2
- package/esm2015/size-detector/size-detector.module.js +1 -1
- package/esm2015/slider/public-api.js +1 -1
- package/esm2015/slider/slider.component.js +2 -2
- package/esm2015/slider/slider.module.js +1 -1
- package/esm2015/smart-filters/boolean-filter/boolean-filter.component.js +3 -23
- package/esm2015/smart-filters/common/filter-actions.component.js +2 -2
- package/esm2015/smart-filters/common/model/base-filter-component.js +8 -35
- package/esm2015/smart-filters/common/model/creator.js +2 -8
- package/esm2015/smart-filters/common/model/field.js +1 -12
- package/esm2015/smart-filters/common/model/filter.js +1 -1
- package/esm2015/smart-filters/common/model/operator.js +8 -8
- package/esm2015/smart-filters/common/model/type.js +1 -1
- package/esm2015/smart-filters/date-filter/date-filter.component.js +2 -45
- package/esm2015/smart-filters/multi-select-filter/multi-select-filter.component.js +14 -53
- package/esm2015/smart-filters/number-filter/number-filter.component.js +2 -27
- package/esm2015/smart-filters/public-api.js +1 -2
- package/esm2015/smart-filters/smart-filters.component.js +2 -2
- package/esm2015/smart-filters/smart-filters.module.js +3 -16
- package/esm2015/textarea/public-api.js +1 -1
- package/esm2015/textarea/textarea.component.js +2 -7
- package/esm2015/textarea/textarea.module.js +1 -1
- package/esm2015/textbox/public-api.js +1 -1
- package/esm2015/textbox/textbox-validation.directive.js +1 -1
- package/esm2015/textbox/textbox.component.js +4 -6
- package/esm2015/textbox/textbox.module.js +1 -1
- package/esm2015/textbox-icon/public-api.js +1 -1
- package/esm2015/textbox-icon/textbox-icon.component.js +2 -2
- package/esm2015/textbox-icon/textbox-icon.module.js +1 -1
- package/esm2015/top-bar/public-api.js +1 -1
- package/esm2015/top-bar/top-bar.component.js +2 -2
- package/esm2015/top-bar/top-bar.model.js +1 -1
- package/esm2015/top-bar/top-bar.module.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-address.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-address.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-attachment.js +1 -6
- package/fesm2015/pepperi-addons-ngx-lib-attachment.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-button.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-button.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-carousel.js +14 -14
- package/fesm2015/pepperi-addons-ngx-lib-carousel.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.js +1 -4
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-color.js +28 -33
- package/fesm2015/pepperi-addons-ngx-lib-color.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-date.js +3 -5
- package/fesm2015/pepperi-addons-ngx-lib-date.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-dialog.js +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-dialog.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-field-title.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-field-title.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-files-uploader.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-files-uploader.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-form.js +23 -26
- package/fesm2015/pepperi-addons-ngx-lib-form.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-group-buttons.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-group-buttons.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-icon.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-icon.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-image.js +1 -6
- package/fesm2015/pepperi-addons-ngx-lib-image.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.js +1 -6
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-list.js +8 -8
- package/fesm2015/pepperi-addons-ngx-lib-list.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-menu.js +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-menu.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-page-layout.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-page-layout.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.js +1 -6
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.js +1 -6
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-search.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-search.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-select.js +1 -6
- package/fesm2015/pepperi-addons-ngx-lib-select.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-separator.js +1 -9
- package/fesm2015/pepperi-addons-ngx-lib-separator.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-side-bar.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-side-bar.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-signature.js +1 -6
- package/fesm2015/pepperi-addons-ngx-lib-signature.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-size-detector.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-size-detector.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-slider.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-slider.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-smart-filters.js +37 -294
- package/fesm2015/pepperi-addons-ngx-lib-smart-filters.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textarea.js +1 -6
- package/fesm2015/pepperi-addons-ngx-lib-textarea.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textbox-icon.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textbox-icon.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textbox.js +3 -5
- package/fesm2015/pepperi-addons-ngx-lib-textbox.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-top-bar.js +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-top-bar.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib.js +34 -42
- package/fesm2015/pepperi-addons-ngx-lib.js.map +1 -1
- package/field-title/field-title.component.theme.scss +2 -2
- package/field-title/pepperi-addons-ngx-lib-field-title.metadata.json +1 -1
- package/files-uploader/files-uploader.component.theme.scss +2 -2
- package/files-uploader/pepperi-addons-ngx-lib-files-uploader.metadata.json +1 -1
- package/form/form.component.theme.scss +2 -2
- package/form/indicators.component.theme.scss +7 -7
- package/form/internal-button.component.d.ts +1 -0
- package/form/internal-button.component.theme.scss +2 -2
- package/form/internal-menu.component.theme.scss +3 -3
- package/form/pepperi-addons-ngx-lib-form.metadata.json +1 -1
- package/group-buttons/group-buttons.component.theme.scss +15 -15
- package/group-buttons/pepperi-addons-ngx-lib-group-buttons.metadata.json +1 -1
- package/image/image.component.d.ts +0 -1
- package/image/image.component.theme.scss +35 -35
- package/image/pepperi-addons-ngx-lib-image.metadata.json +1 -1
- package/images-filmstrip/images-filmstrip.component.d.ts +0 -1
- package/images-filmstrip/images-filmstrip.component.theme.scss +32 -32
- package/images-filmstrip/pepperi-addons-ngx-lib-images-filmstrip.metadata.json +1 -1
- package/list/list-actions.component.theme.scss +3 -3
- package/list/list-carousel.component.theme.scss +9 -9
- package/list/list-chooser.component.theme.scss +3 -3
- package/list/list-pager.component.theme.scss +3 -3
- package/list/list-sorting.component.theme.scss +3 -3
- package/list/list-total.component.theme.scss +10 -10
- package/list/list-views.component.theme.scss +3 -3
- package/list/list.component.theme.scss +5 -5
- package/list/list_old.component.theme.scss +5 -5
- package/list/pepperi-addons-ngx-lib-list.metadata.json +1 -1
- package/menu/menu.component.theme.scss +2 -2
- package/menu/pepperi-addons-ngx-lib-menu.metadata.json +1 -1
- package/package.json +1 -1
- package/page-layout/page-layout.component.theme.scss +7 -7
- package/page-layout/pepperi-addons-ngx-lib-page-layout.metadata.json +1 -1
- package/pepperi-addons-ngx-lib.metadata.json +1 -1
- package/quantity-selector/pepperi-addons-ngx-lib-quantity-selector.metadata.json +1 -1
- package/quantity-selector/quantity-selector.component.d.ts +0 -1
- package/quantity-selector/quantity-selector.component.theme.scss +77 -77
- package/rich-html-textarea/pepperi-addons-ngx-lib-rich-html-textarea.metadata.json +1 -1
- package/rich-html-textarea/rich-html-textarea.component.d.ts +0 -1
- package/rich-html-textarea/rich-html-textarea.component.theme.scss +236 -236
- package/search/pepperi-addons-ngx-lib-search.metadata.json +1 -1
- package/search/search.component.theme.scss +3 -3
- package/select/pepperi-addons-ngx-lib-select.metadata.json +1 -1
- package/select/select.component.d.ts +0 -1
- package/select/select.component.theme.scss +2 -2
- package/separator/pepperi-addons-ngx-lib-separator.metadata.json +1 -1
- package/separator/separator.component.theme.scss +2 -2
- package/side-bar/pepperi-addons-ngx-lib-side-bar.metadata.json +1 -1
- package/side-bar/side-bar.component.theme.scss +25 -25
- package/signature/pepperi-addons-ngx-lib-signature.metadata.json +1 -1
- package/signature/signature.component.d.ts +0 -1
- package/signature/signature.component.theme.scss +28 -28
- package/size-detector/pepperi-addons-ngx-lib-size-detector.metadata.json +1 -1
- package/slider/pepperi-addons-ngx-lib-slider.metadata.json +1 -1
- package/slider/slider.component.theme.scss +65 -65
- package/smart-filters/boolean-filter/boolean-filter.component.d.ts +1 -6
- package/smart-filters/common/model/base-filter-component.d.ts +0 -7
- package/smart-filters/common/model/field.d.ts +0 -4
- package/smart-filters/common/model/operator.d.ts +0 -1
- package/smart-filters/common/model/type.d.ts +2 -2
- package/smart-filters/date-filter/date-filter.component.d.ts +1 -8
- package/smart-filters/multi-select-filter/multi-select-filter.component.d.ts +0 -6
- package/smart-filters/number-filter/number-filter.component.d.ts +0 -5
- package/smart-filters/pepperi-addons-ngx-lib-smart-filters.metadata.json +1 -1
- package/smart-filters/public-api.d.ts +0 -1
- package/smart-filters/smart-filters.component.theme.scss +10 -10
- package/src/assets/i18n/de.ngx-lib.json +77 -77
- package/src/assets/i18n/en.ngx-lib.json +138 -139
- package/src/assets/i18n/es.ngx-lib.json +77 -77
- package/src/assets/i18n/fr.ngx-lib.json +78 -78
- package/src/assets/i18n/he.ngx-lib.json +78 -78
- package/src/assets/i18n/hu.ngx-lib.json +78 -78
- package/src/assets/i18n/it.ngx-lib.json +78 -78
- package/src/assets/i18n/ja.ngx-lib.json +78 -78
- package/src/assets/i18n/nl.ngx-lib.json +78 -78
- package/src/assets/i18n/pl.ngx-lib.json +78 -78
- package/src/assets/i18n/pt.ngx-lib.json +78 -78
- package/src/assets/i18n/ru.ngx-lib.json +78 -78
- package/src/assets/i18n/zh.ngx-lib.json +76 -76
- package/src/assets/images/no-image.svg +41 -41
- package/src/core/style/abstracts/breakpoints.scss +35 -35
- package/src/core/style/abstracts/functions.scss +422 -422
- package/src/core/style/abstracts/mixins.scss +797 -797
- package/src/core/style/abstracts/variables.scss +545 -545
- package/src/core/style/base/base.scss +873 -873
- package/src/core/style/base/grids.scss +4 -4
- package/src/core/style/base/helpers.scss +70 -70
- package/src/core/style/base/typography.scss +255 -255
- package/src/core/style/components/button.scss +349 -349
- package/src/core/style/components/checkbox.scss +473 -473
- package/src/core/style/components/datetime.scss +22 -22
- package/src/core/style/components/file.scss +219 -219
- package/src/core/style/components/general.scss +1086 -1088
- package/src/core/style/components/input.scss +94 -94
- package/src/core/style/components/quantity-selector.scss +14 -14
- package/src/core/style/components/radio-button.scss +168 -168
- package/src/core/style/components/select.scss +185 -185
- package/src/core/style/components/signature.scss +12 -12
- package/src/core/style/components/splitter.scss +64 -64
- package/src/core/style/components/textarea.scss +195 -195
- package/src/core/style/themes/black-theme.scss +7 -7
- package/src/core/style/themes/default-theme.scss +144 -144
- package/src/core/style/themes/light-theme.scss +7 -7
- package/src/core/style/themes/nature-theme.scss +7 -7
- package/src/core/style/vendors/normalize.scss +497 -497
- package/textarea/pepperi-addons-ngx-lib-textarea.metadata.json +1 -1
- package/textarea/textarea.component.d.ts +0 -1
- package/textarea/textarea.component.theme.scss +2 -2
- package/textbox/pepperi-addons-ngx-lib-textbox.metadata.json +1 -1
- package/textbox/textbox.component.theme.scss +3 -3
- package/textbox-icon/pepperi-addons-ngx-lib-textbox-icon.metadata.json +1 -1
- package/textbox-icon/textbox-icon.component.theme.scss +2 -2
- package/theming.scss +220 -224
- package/top-bar/pepperi-addons-ngx-lib-top-bar.metadata.json +1 -1
- package/top-bar/top-bar.component.theme.scss +9 -9
- package/bundles/pepperi-addons-ngx-lib-query-builder.umd.js +0 -1113
- package/bundles/pepperi-addons-ngx-lib-query-builder.umd.js.map +0 -1
- package/esm2015/query-builder/common/model/filter.js +0 -2
- package/esm2015/query-builder/common/model/legacy.js +0 -2
- package/esm2015/query-builder/common/model/operator-unit.js +0 -42
- package/esm2015/query-builder/common/model/operator.js +0 -207
- package/esm2015/query-builder/common/model/structure.js +0 -2
- package/esm2015/query-builder/common/model/type-map.js +0 -27
- package/esm2015/query-builder/common/model/type.js +0 -6
- package/esm2015/query-builder/common/services/output-query.service.js +0 -114
- package/esm2015/query-builder/common/services/type-convertor.service.js +0 -44
- package/esm2015/query-builder/pepperi-addons-ngx-lib-query-builder.js +0 -9
- package/esm2015/query-builder/public-api.js +0 -8
- package/esm2015/query-builder/query-builder-item/query-builder-item.component.js +0 -103
- package/esm2015/query-builder/query-builder-section/query-builder-section.component.js +0 -64
- package/esm2015/query-builder/query-builder.component.js +0 -101
- package/esm2015/query-builder/query-builder.module.js +0 -43
- package/esm2015/query-builder/query-builder.service.js +0 -283
- package/esm2015/smart-filters/text-filter/text-filter.component.js +0 -79
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.js +0 -1010
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.js.map +0 -1
- package/query-builder/common/model/filter.d.ts +0 -6
- package/query-builder/common/model/legacy.d.ts +0 -20
- package/query-builder/common/model/operator-unit.d.ts +0 -13
- package/query-builder/common/model/operator.d.ts +0 -21
- package/query-builder/common/model/structure.d.ts +0 -4
- package/query-builder/common/model/type-map.d.ts +0 -12
- package/query-builder/common/model/type.d.ts +0 -4
- package/query-builder/common/services/output-query.service.d.ts +0 -43
- package/query-builder/common/services/type-convertor.service.d.ts +0 -10
- package/query-builder/package.json +0 -14
- package/query-builder/pepperi-addons-ngx-lib-query-builder.d.ts +0 -8
- package/query-builder/pepperi-addons-ngx-lib-query-builder.metadata.json +0 -1
- package/query-builder/public-api.d.ts +0 -4
- package/query-builder/query-builder-item/query-builder-item.component.d.ts +0 -30
- package/query-builder/query-builder-section/query-builder-section.component.d.ts +0 -27
- package/query-builder/query-builder-section/query-builder-section.component.theme.scss +0 -6
- package/query-builder/query-builder.component.d.ts +0 -35
- package/query-builder/query-builder.module.d.ts +0 -2
- package/query-builder/query-builder.service.d.ts +0 -94
- package/smart-filters/text-filter/text-filter.component.d.ts +0 -17
|
@@ -15,36 +15,12 @@ export class PepMultiSelectFilterComponent extends BaseFilterComponent {
|
|
|
15
15
|
super(...arguments);
|
|
16
16
|
this.options = [];
|
|
17
17
|
this.searchControl = new FormControl();
|
|
18
|
-
//inline props
|
|
19
|
-
this.selected = '';
|
|
20
|
-
this.inlineOptions = [];
|
|
21
18
|
this.MAX_OPTIONS_TO_SHOW = 6.35;
|
|
22
19
|
this.numberOptionsToShowSearch = 10;
|
|
23
20
|
}
|
|
24
21
|
ngOnInit() {
|
|
25
|
-
super.ngOnInit;
|
|
26
|
-
if (this.inline) {
|
|
27
|
-
this.inlineControlInit();
|
|
28
|
-
}
|
|
29
|
-
else {
|
|
30
|
-
this.noneInlineControlInit();
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
ngAfterViewInit() {
|
|
34
|
-
// Calc for the first time.
|
|
35
|
-
this.calcOptionsHeight(this.options.length);
|
|
36
|
-
}
|
|
37
|
-
inlineControlInit() {
|
|
38
|
-
var _a, _b, _c, _d;
|
|
39
|
-
//load options from field
|
|
40
|
-
this.inlineOptions = ((_b = (_a = this.field) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.length) > 0 ? this.field.options : [];
|
|
41
|
-
// Init the selected values from first value.
|
|
42
|
-
if (((_d = (_c = this.firstControl) === null || _c === void 0 ? void 0 : _c.value) === null || _d === void 0 ? void 0 : _d.length) > 0) {
|
|
43
|
-
this.selected = this.firstControl.value.join(';');
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
noneInlineControlInit() {
|
|
47
22
|
var _a;
|
|
23
|
+
super.ngOnInit;
|
|
48
24
|
if (((_a = this.field.options) === null || _a === void 0 ? void 0 : _a.length) > 0) {
|
|
49
25
|
this.options = this.field.options.map((opt) => {
|
|
50
26
|
return { value: opt.value, count: opt.count, selected: false };
|
|
@@ -75,6 +51,10 @@ export class PepMultiSelectFilterComponent extends BaseFilterComponent {
|
|
|
75
51
|
}, 125);
|
|
76
52
|
});
|
|
77
53
|
}
|
|
54
|
+
ngAfterViewInit() {
|
|
55
|
+
// Calc for the first time.
|
|
56
|
+
this.calcOptionsHeight(this.options.length);
|
|
57
|
+
}
|
|
78
58
|
initOptionsSelectedValues(selectedValues) {
|
|
79
59
|
this.options.forEach((opt) => {
|
|
80
60
|
const isValueSelected = selectedValues && selectedValues.includes(opt.value);
|
|
@@ -102,20 +82,13 @@ export class PepMultiSelectFilterComponent extends BaseFilterComponent {
|
|
|
102
82
|
}
|
|
103
83
|
// Override
|
|
104
84
|
getFilterValue() {
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
.filter((opt) => opt.selected)
|
|
113
|
-
.map((opt) => opt.value);
|
|
114
|
-
const filterValue = {
|
|
115
|
-
first: selectedValues,
|
|
116
|
-
};
|
|
117
|
-
return selectedValues.length > 0 ? filterValue : null;
|
|
118
|
-
}
|
|
85
|
+
const selectedValues = this.options
|
|
86
|
+
.filter((opt) => opt.selected)
|
|
87
|
+
.map((opt) => opt.value);
|
|
88
|
+
const filterValue = {
|
|
89
|
+
first: selectedValues,
|
|
90
|
+
};
|
|
91
|
+
return selectedValues.length > 0 ? filterValue : null;
|
|
119
92
|
}
|
|
120
93
|
// Override
|
|
121
94
|
initFilter() {
|
|
@@ -126,23 +99,11 @@ export class PepMultiSelectFilterComponent extends BaseFilterComponent {
|
|
|
126
99
|
option.selected = event.checked;
|
|
127
100
|
this.firstControl.setValue(this.options.filter((opt) => opt.selected).map((opt) => opt.value), { emitEvent: false });
|
|
128
101
|
}
|
|
129
|
-
onMultiSelectChanged(value) {
|
|
130
|
-
if (value) {
|
|
131
|
-
const selected = value.split(';');
|
|
132
|
-
this.firstControl.setValue(selected);
|
|
133
|
-
}
|
|
134
|
-
else {
|
|
135
|
-
this.firstControl.setValue(null);
|
|
136
|
-
}
|
|
137
|
-
if (this.emitOnChange) {
|
|
138
|
-
this.applyFilter();
|
|
139
|
-
}
|
|
140
|
-
}
|
|
141
102
|
}
|
|
142
103
|
PepMultiSelectFilterComponent.decorators = [
|
|
143
104
|
{ type: Component, args: [{
|
|
144
105
|
selector: 'pep-multi-select-filter',
|
|
145
|
-
template: "<
|
|
106
|
+
template: "<div [formGroup]=\"form\">\n <pep-search *ngIf=\"options?.length > numberOptionsToShowSearch\" [searchControl]=\"searchControl\"\n [triggerOn]=\"'keydown'\" [shrinkInSmallScreen]=\"false\"></pep-search>\n <div pepRtlClass class=\"multi-select-options pep-border-top pep-border-bottom\"\n [ngClass]=\"{'with-no-search': options?.length <= numberOptionsToShowSearch}\">\n <div #optionsContainer class=\"flip-scroll\" pepRtlClass>\n <virtual-scroller #scroll [items]=\"filteredOptions$ | async\" [parentScroll]=\"optionsContainer\">\n <mat-checkbox *ngFor=\"let opt of scroll.viewPortItems\"\n class=\"pep-checkbox-container pep-input no-default-background md\" [title]=\"opt.value\"\n [checked]=\"opt.selected\" (change)=\"onOptionChange(opt, $event)\">\n <div class=\"title\">\n <span class=\"body-sm ellipsis\">{{ opt.value }}</span>\n <span *ngIf=\"opt.count\" class=\"color-dimmed body-xs ellipsis\">({{opt.count}})</span>\n </div>\n </mat-checkbox>\n <ng-container *ngIf=\"scroll.viewPortItems?.length === 0\">\n <span class=\"no-options body-sm ellipsis\" [title]=\"field.name\">\n {{ ( options.length > 0 ? \"SMART_FILTERS.NO_SEARCH_RESULTS\" : \"SMART_FILTERS.NO_OPTIONS\") |\n translate }}\n </span>\n </ng-container>\n </virtual-scroller>\n </div>\n </div>\n</div>",
|
|
146
107
|
styles: [".multi-select-options{margin:.5rem calc(.25rem * -1) 0;margin:var(--pep-spacing-sm,.5rem) calc(var(--pep-spacing-xs, .25rem) * -1) 0}.multi-select-options.with-no-search{margin:calc(.5rem * -1) calc(.25rem * -1) 0;margin:calc(var(--pep-spacing-sm, .5rem) * -1) calc(var(--pep-spacing-xs, .25rem) * -1) 0}.multi-select-options .no-options{display:flex;padding:.5rem .75rem;padding:var(--pep-spacing-sm,.5rem) var(--pep-spacing-md,.75rem)}.multi-select-options .flip-scroll{padding:.5rem .25rem;padding:var(--pep-spacing-sm,.5rem) var(--pep-spacing-xs,.25rem);min-height:3.25rem;max-height:34.75rem;direction:rtl}.multi-select-options .flip-scroll.rtl,.multi-select-options .flip-scroll virtual-scroller{direction:ltr}.multi-select-options .flip-scroll.rtl virtual-scroller{direction:rtl}.multi-select-options .pep-checkbox-container{height:2.25rem;-webkit-padding-end:0;padding-inline-end:0}.multi-select-options .pep-checkbox-container ::ng-deep.mat-checkbox-layout{width:100%;height:100%;grid-template-columns:auto 1fr}.multi-select-options .pep-checkbox-container ::ng-deep.mat-checkbox-layout .mat-checkbox-label{align-self:center}.multi-select-options .pep-checkbox-container .title{display:flex;justify-content:space-between;align-items:center;margin:0 .25rem;margin:0 var(--pep-spacing-xs,.25rem)}"]
|
|
147
108
|
},] }
|
|
148
109
|
];
|
|
@@ -150,4 +111,4 @@ PepMultiSelectFilterComponent.propDecorators = {
|
|
|
150
111
|
optionsContainer: [{ type: ViewChild, args: ['optionsContainer',] }],
|
|
151
112
|
virtualScroller: [{ type: ViewChild, args: [VirtualScrollerComponent,] }]
|
|
152
113
|
};
|
|
153
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3NtYXJ0LWZpbHRlcnMvbXVsdGktc2VsZWN0LWZpbHRlci9tdWx0aS1zZWxlY3QtZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBTUgsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUVILHVCQUF1QixHQUMxQixNQUFNLDBCQUEwQixDQUFDO0FBS2xDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWhFLE1BQU0sMEJBQTBCO0lBQWhDO1FBR0ksYUFBUSxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0NBQUE7QUFPRCxNQUFNLE9BQU8sNkJBQ1QsU0FBUSxtQkFBbUI7SUFOL0I7O1FBUUksWUFBTyxHQUFpQyxFQUFFLENBQUM7UUFFM0Msa0JBQWEsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBQ2xDLGNBQWM7UUFDZCxhQUFRLEdBQUcsRUFBRSxDQUFDO1FBQ2Qsa0JBQWEsR0FBaUIsRUFBRSxDQUFDO1FBS2hCLHdCQUFtQixHQUFHLElBQUksQ0FBQztRQUk1Qyw4QkFBeUIsR0FBRyxFQUFFLENBQUM7SUFpS25DLENBQUM7SUEvSkcsUUFBUTtRQUNKLEtBQUssQ0FBQyxRQUFRLENBQUM7UUFFZixJQUFJLElBQUksQ0FBQyxNQUFNLEVBQUU7WUFD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RyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUNsRSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FDdkIsQ0FBQztJQUNOLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxLQUFhO1FBQzlCLElBQUksS0FBSyxFQUFFO1lBQ1AsTUFBTSxRQUFRLEdBQWEsS0FBSyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM1QyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUN4QzthQUFNO1lBQ0gsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDcEM7UUFFRCxJQUFJLElBQUksQ0FBQyxZQUFZLEVBQUU7WUFDbkIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1NBQ3RCO0lBQ0wsQ0FBQzs7O1lBckxKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUseUJBQXlCO2dCQUNuQyw2OURBQW1EOzthQUV0RDs7OytCQVdJLFNBQVMsU0FBQyxrQkFBa0I7OEJBSTVCLFNBQVMsU0FBQyx3QkFBd0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQWZ0ZXJWaWV3SW5pdCxcclxuICAgIEVsZW1lbnRSZWYsXHJcbiAgICBFdmVudEVtaXR0ZXIsXHJcbiAgICBJbnB1dCxcclxuICAgIE91dHB1dCxcclxuICAgIFZpZXdDaGlsZCxcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQmFzZUZpbHRlckNvbXBvbmVudCB9IGZyb20gJy4uL2NvbW1vbi9tb2RlbC9iYXNlLWZpbHRlci1jb21wb25lbnQnO1xyXG5pbXBvcnQge1xyXG4gICAgSVBlcFNtYXJ0RmlsdGVyT3BlcmF0b3IsXHJcbiAgICBQZXBTbWFydEZpbHRlck9wZXJhdG9ycyxcclxufSBmcm9tICcuLi9jb21tb24vbW9kZWwvb3BlcmF0b3InO1xyXG5pbXBvcnQgeyBJUGVwT3B0aW9uIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWInO1xyXG5pbXBvcnQgeyBJUGVwU21hcnRGaWx0ZXJEYXRhVmFsdWUgfSBmcm9tICcuLi9jb21tb24vbW9kZWwvZmlsdGVyJztcclxuaW1wb3J0IHsgSVBlcFNtYXJ0RmlsdGVyRmllbGRPcHRpb24gfSBmcm9tICcuLi9jb21tb24vbW9kZWwvZmllbGQnO1xyXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1hdENoZWNrYm94Q2hhbmdlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xyXG5pbXBvcnQgeyBWaXJ0dWFsU2Nyb2xsZXJDb21wb25lbnQgfSBmcm9tICduZ3gtdmlydHVhbC1zY3JvbGxlcic7XHJcblxyXG5jbGFzcyBQZXBNdWx0aVNlbGVjdEZpbHRlck9wdGlvbiBpbXBsZW1lbnRzIElQZXBTbWFydEZpbHRlckZpZWxkT3B0aW9uIHtcclxuICAgIHZhbHVlOiBzdHJpbmc7XHJcbiAgICBjb3VudD86IG51bWJlcjtcclxuICAgIHNlbGVjdGVkID0gZmFsc2U7XHJcbn1cclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdwZXAtbXVsdGktc2VsZWN0LWZpbHRlcicsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vbXVsdGktc2VsZWN0LWZpbHRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9tdWx0aS1zZWxlY3QtZmlsdGVyLmNvbXBvbmVudC5zY3NzJ10sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQZXBNdWx0aVNlbGVjdEZpbHRlckNvbXBvbmVudFxyXG4gICAgZXh0ZW5kcyBCYXNlRmlsdGVyQ29tcG9uZW50XHJcbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgICBvcHRpb25zOiBQZXBNdWx0aVNlbGVjdEZpbHRlck9wdGlvbltdID0gW107XHJcbiAgICBmaWx0ZXJlZE9wdGlvbnMkOiBPYnNlcnZhYmxlPGFueT47XHJcbiAgICBzZWFyY2hDb250cm9sID0gbmV3IEZvcm1Db250cm9sKCk7XHJcbiAgICAvL2lubGluZSBwcm9wc1xyXG4gICAgc2VsZWN0ZWQgPSAnJztcclxuICAgIGlubGluZU9wdGlvbnM6IElQZXBPcHRpb25bXSA9IFtdO1xyXG5cclxuICAgIEBWaWV3Q2hpbGQoJ29wdGlvbnNDb250YWluZXInKVxyXG4gICAgb3B0aW9uc0NvbnRhaW5lcjogRWxlbWVudFJlZjtcclxuXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IE1BWF9PUFRJT05TX1RPX1NIT1cgPSA2LjM1O1xyXG4gICAgQFZpZXdDaGlsZChWaXJ0dWFsU2Nyb2xsZXJDb21wb25lbnQpXHJcbiAgICBwcml2YXRlIHZpcnR1YWxTY3JvbGxlcjogVmlydHVhbFNjcm9sbGVyQ29tcG9uZW50O1xyXG5cclxuICAgIG51bWJlck9wdGlvbnNUb1Nob3dTZWFyY2ggPSAxMDtcclxuXHJcbiAgICBuZ09uSW5pdCgpIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdDtcclxuXHJcbiAgICAgICAgaWYgKHRoaXMuaW5saW5lKSB7XHJcbiAgICAgICAgICAgIHRoaXMuaW5saW5lQ29udHJvbEluaXQoKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLm5vbmVJbmxpbmVDb250cm9sSW5pdCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcblxyXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgICAgIC8vIENhbGMgZm9yIHRoZSBmaXJzdCB0aW1lLlxyXG4gICAgICAgIHRoaXMuY2FsY09wdGlvbnNIZWlnaHQodGhpcy5vcHRpb25zLmxlbmd0aCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBpbmxpbmVDb250cm9sSW5pdCgpIHtcclxuICAgICAgICAvL2xvYWQgb3B0aW9ucyBmcm9tIGZpZWxkICAgICAgICBcclxuICAgICAgICB0aGlzLmlubGluZU9wdGlvbnMgPSB0aGlzLmZpZWxkPy5vcHRpb25zPy5sZW5ndGggPiAwID8gdGhpcy5maWVsZC5vcHRpb25zIGFzIElQZXBPcHRpb25bXSA6IFtdO1xyXG5cclxuICAgICAgICAvLyBJbml0IHRoZSBzZWxlY3RlZCB2YWx1ZXMgZnJvbSBmaXJzdCB2YWx1ZS4gICAgICAgIFxyXG4gICAgICAgIGlmICh0aGlzLmZpcnN0Q29udHJvbD8udmFsdWU/Lmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZCA9IHRoaXMuZmlyc3RDb250cm9sLnZhbHVlLmpvaW4oJzsnKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBub25lSW5saW5lQ29udHJvbEluaXQoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuZmllbGQub3B0aW9ucz8ubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICB0aGlzLm9wdGlvbnMgPSB0aGlzLmZpZWxkLm9wdGlvbnMubWFwKChvcHQpID0+IHtcclxuICAgICAgICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvcHQudmFsdWUsIGNvdW50OiBvcHQuY291bnQsIHNlbGVjdGVkOiBmYWxzZSB9O1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICB0aGlzLnNlYXJjaENvbnRyb2wuZGlzYWJsZSgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLy8gSW5pdCB0aGUgc2VsZWN0ZWQgdmFsdWVzIGZyb20gZmlyc3QgdmFsdWUuXHJcbiAgICAgICAgY29uc3QgZmlyc3RDb250cm9sID0gdGhpcy5maXJzdENvbnRyb2w7XHJcbiAgICAgICAgaWYgKGZpcnN0Q29udHJvbC52YWx1ZSkge1xyXG4gICAgICAgICAgICB0aGlzLmluaXRPcHRpb25zU2VsZWN0ZWRWYWx1ZXMoZmlyc3RDb250cm9sLnZhbHVlKTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIEFkZCBzdWJzY3JpcHRpb24gZm9yIHRoZSBmaXJzdCB2YWx1ZSBjaGFuZ2UgdG8gc2V0IHRoZSBzZWxlY3RlZCBvcHRpb25zLlxyXG4gICAgICAgIGZpcnN0Q29udHJvbC52YWx1ZUNoYW5nZXNcclxuICAgICAgICAgICAgLnBpcGUodGhpcy5nZXREZXN0cm95ZXIoKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoc2VsZWN0ZWRWYWx1ZXM6IHN0cmluZ1tdKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmluaXRPcHRpb25zU2VsZWN0ZWRWYWx1ZXMoc2VsZWN0ZWRWYWx1ZXMpO1xyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgLy8gRmlsdGVyIHRoZSBvcHRpb25zIGJ5IHRoZSBzZWFyY2ggY29udHJvbC5cclxuICAgICAgICB0aGlzLmZpbHRlcmVkT3B0aW9ucyQgPSB0aGlzLnNlYXJjaENvbnRyb2wudmFsdWVDaGFuZ2VzLnBpcGUoXHJcbiAgICAgICAgICAgIHRoaXMuZ2V0RGVzdHJveWVyKCksXHJcbiAgICAgICAgICAgIHN0YXJ0V2l0aDxhbnk+KCcnKSxcclxuICAgICAgICAgICAgbWFwKChvcHRpb24pID0+XHJcbiAgICAgICAgICAgICAgICB0eXBlb2Ygb3B0aW9uID09PSAnc3RyaW5nJyA/IG9wdGlvbiA6IG9wdGlvbiAmJiBvcHRpb24udmFsdWVcclxuICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgbWFwKCh2YWx1ZSkgPT4gKHZhbHVlID8gdGhpcy5maWx0ZXJPcHRpb25zKHZhbHVlKSA6IHRoaXMub3B0aW9ucykpXHJcbiAgICAgICAgKTtcclxuXHJcbiAgICAgICAgLy8gRWFjaCB0aW1lIHRoZSBmaWx0ZXIgY2hhbmdlLlxyXG4gICAgICAgIHRoaXMuZmlsdGVyZWRPcHRpb25zJC5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgIChmaWx0ZXJkT3B0aW9uczogUGVwTXVsdGlTZWxlY3RGaWx0ZXJPcHRpb25bXSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jYWxjT3B0aW9uc0hlaWdodChmaWx0ZXJkT3B0aW9ucy5sZW5ndGgpO1xyXG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgLy8gOCBpcyB0aGUgcGFkZGluZyB0b3Agb2YgdGhlIG11bHRpLXNlbGVjdC1vcHRpb25zXHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy52aXJ0dWFsU2Nyb2xsZXIuc2Nyb2xsVG9Qb3NpdGlvbigtOCk7XHJcbiAgICAgICAgICAgICAgICB9LCAxMjUpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuXHJcbiAgICB9XHJcblxyXG4gICAgaW5pdE9wdGlvbnNTZWxlY3RlZFZhbHVlcyhzZWxlY3RlZFZhbHVlczogc3RyaW5nW10pOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9wdGlvbnMuZm9yRWFjaCgob3B0KSA9PiB7XHJcbiAgICAgICAgICAgIGNvbnN0IGlzVmFsdWVTZWxlY3RlZCA9XHJcbiAgICAgICAgICAgICAgICBzZWxlY3RlZFZhbHVlcyAmJiBzZWxlY3RlZFZhbHVlcy5pbmNsdWRlcyhvcHQudmFsdWUpO1xyXG4gICAgICAgICAgICBvcHQuc2VsZWN0ZWQgPSBpc1ZhbHVlU2VsZWN0ZWQ7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBjYWxjT3B0aW9uc0hlaWdodChvcHRpb25zQ291bnQ6IG51bWJlcikge1xyXG4gICAgICAgIGlmICh0aGlzLm9wdGlvbnNDb250YWluZXIpIHtcclxuICAgICAgICAgICAgY29uc3Qgb3B0aW9uc1RvU2hvdyA9XHJcbiAgICAgICAgICAgICAgICBvcHRpb25zQ291bnQgPiB0aGlzLk1BWF9PUFRJT05TX1RPX1NIT1dcclxuICAgICAgICAgICAgICAgICAgICA/IHRoaXMuTUFYX09QVElPTlNfVE9fU0hPV1xyXG4gICAgICAgICAgICAgICAgICAgIDogb3B0aW9uc0NvdW50O1xyXG4gICAgICAgICAgICAvLyBvcHRpb25zVG9TaG93ICogMi4yNSBpcyAxIG9wdGlvbiBoZWlnaHQgKyAxIGlzIHRoZSBwYWRkaW5nIHRvcCAmIGJvdHRvbSBvZiB0aGUgY29udGFpbmVyLlxyXG4gICAgICAgICAgICBjb25zdCBvcHRpb25zSGVpZ2h0ID0gb3B0aW9uc1RvU2hvdyAqIDIuMjUgKyAxICsgJ3JlbSc7XHJcblxyXG4gICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnNldFN0eWxlKFxyXG4gICAgICAgICAgICAgICAgdGhpcy5vcHRpb25zQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsXHJcbiAgICAgICAgICAgICAgICAnaGVpZ2h0JyxcclxuICAgICAgICAgICAgICAgIG9wdGlvbnNIZWlnaHRcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBmaWx0ZXJPcHRpb25zKHZhbHVlOiBzdHJpbmcpOiBhbnlbXSB7XHJcbiAgICAgICAgY29uc3QgZmlsdGVyVmFsdWUgPSB2YWx1ZS50b0xvd2VyQ2FzZSgpO1xyXG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMuZmlsdGVyKFxyXG4gICAgICAgICAgICAob3B0KSA9PlxyXG4gICAgICAgICAgICAgICAgb3B0LnZhbHVlICYmXHJcbiAgICAgICAgICAgICAgICBvcHQudmFsdWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhmaWx0ZXJWYWx1ZS50b0xvd2VyQ2FzZSgpKVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gT3ZlcnJpZGVcclxuICAgIGdldERlZmF1bHRPcGVyYXRvcigpOiBJUGVwU21hcnRGaWx0ZXJPcGVyYXRvciB7XHJcbiAgICAgICAgcmV0dXJuIFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkluO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIE92ZXJyaWRlXHJcbiAgICBnZXRGaWx0ZXJWYWx1ZSgpOiBJUGVwU21hcnRGaWx0ZXJEYXRhVmFsdWUge1xyXG4gICAgICAgIGlmICh0aGlzLmlubGluZSkge1xyXG4gICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgZmlyc3Q6IHRoaXMuZmlyc3RDb250cm9sLnZhbHVlXHJcbiAgICAgICAgICAgIH07XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWRWYWx1ZXMgPSB0aGlzLm9wdGlvbnNcclxuICAgICAgICAgICAgICAgIC5maWx0ZXIoKG9wdCkgPT4gb3B0LnNlbGVjdGVkKVxyXG4gICAgICAgICAgICAgICAgLm1hcCgob3B0KSA9PiBvcHQudmFsdWUpO1xyXG4gICAgICAgICAgICBjb25zdCBmaWx0ZXJWYWx1ZSA9IHtcclxuICAgICAgICAgICAgICAgIGZpcnN0OiBzZWxlY3RlZFZhbHVlcyxcclxuICAgICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICAgIHJldHVybiBzZWxlY3RlZFZhbHVlcy5sZW5ndGggPiAwID8gZmlsdGVyVmFsdWUgOiBudWxsO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICB9XHJcblxyXG4gICAgLy8gT3ZlcnJpZGVcclxuICAgIGluaXRGaWx0ZXIoKSB7XHJcbiAgICAgICAgdGhpcy5vcHRpb25zLmZvckVhY2goKG9wdCkgPT4gKG9wdC5zZWxlY3RlZCA9IGZhbHNlKSk7XHJcbiAgICAgICAgdGhpcy5zZWFyY2hDb250cm9sLnNldFZhbHVlKCcnKTtcclxuICAgIH1cclxuXHJcbiAgICBvbk9wdGlvbkNoYW5nZShcclxuICAgICAgICBvcHRpb246IFBlcE11bHRpU2VsZWN0RmlsdGVyT3B0aW9uLFxyXG4gICAgICAgIGV2ZW50OiBNYXRDaGVja2JveENoYW5nZVxyXG4gICAgKSB7XHJcbiAgICAgICAgb3B0aW9uLnNlbGVjdGVkID0gZXZlbnQuY2hlY2tlZDtcclxuICAgICAgICB0aGlzLmZpcnN0Q29udHJvbC5zZXRWYWx1ZShcclxuICAgICAgICAgICAgdGhpcy5vcHRpb25zLmZpbHRlcigob3B0KSA9PiBvcHQuc2VsZWN0ZWQpLm1hcCgob3B0KSA9PiBvcHQudmFsdWUpLFxyXG4gICAgICAgICAgICB7IGVtaXRFdmVudDogZmFsc2UgfVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgb25NdWx0aVNlbGVjdENoYW5nZWQodmFsdWU6IHN0cmluZykge1xyXG4gICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgICBjb25zdCBzZWxlY3RlZDogc3RyaW5nW10gPSB2YWx1ZS5zcGxpdCgnOycpO1xyXG4gICAgICAgICAgICB0aGlzLmZpcnN0Q29udHJvbC5zZXRWYWx1ZShzZWxlY3RlZCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgdGhpcy5maXJzdENvbnRyb2wuc2V0VmFsdWUobnVsbCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy5lbWl0T25DaGFuZ2UpIHtcclxuICAgICAgICAgICAgdGhpcy5hcHBseUZpbHRlcigpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbn1cclxuIl19
|
|
114
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibXVsdGktc2VsZWN0LWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3NtYXJ0LWZpbHRlcnMvbXVsdGktc2VsZWN0LWZpbHRlci9tdWx0aS1zZWxlY3QtZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBTUgsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUVILHVCQUF1QixHQUMxQixNQUFNLDBCQUEwQixDQUFDO0FBSWxDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWhFLE1BQU0sMEJBQTBCO0lBQWhDO1FBR0ksYUFBUSxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0NBQUE7QUFPRCxNQUFNLE9BQU8sNkJBQ1QsU0FBUSxtQkFBbUI7SUFOL0I7O1FBUUksWUFBTyxHQUFpQyxFQUFFLENBQUM7UUFFM0Msa0JBQWEsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBS2pCLHdCQUFtQixHQUFHLElBQUksQ0FBQztRQUk1Qyw4QkFBeUIsR0FBRyxFQUFFLENBQUM7SUF3SG5DLENBQUM7SUF0SEcsUUFBUTs7UUFDSixLQUFLLENBQUMsUUFBUSxDQUFDO1FBRWYsSUFBSSxDQUFBLE1BQUEsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLDBDQUFFLE1BQU0sSUFBRyxDQUFDLEVBQUU7WUFDaEMsSUFBSSxDQUFDLE9BQU8sR0FB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Q0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxjQUFjLENBQ1YsTUFBa0MsRUFDbEMsS0FBd0I7UUFFeEIsTUFBTSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDO1FBQ2hDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxFQUNsRSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsQ0FDdkIsQ0FBQztJQUNOLENBQUM7OztZQTFJSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLHlCQUF5QjtnQkFDbkMseWtEQUFtRDs7YUFFdEQ7OzsrQkFRSSxTQUFTLFNBQUMsa0JBQWtCOzhCQUk1QixTQUFTLFNBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuLi9jb21tb24vbW9kZWwvYmFzZS1maWx0ZXItY29tcG9uZW50JztcbmltcG9ydCB7XG4gICAgSVBlcFNtYXJ0RmlsdGVyT3BlcmF0b3IsXG4gICAgUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMsXG59IGZyb20gJy4uL2NvbW1vbi9tb2RlbC9vcGVyYXRvcic7XG5pbXBvcnQgeyBJUGVwU21hcnRGaWx0ZXJEYXRhVmFsdWUgfSBmcm9tICcuLi9jb21tb24vbW9kZWwvZmlsdGVyJztcbmltcG9ydCB7IElQZXBTbWFydEZpbHRlckZpZWxkT3B0aW9uIH0gZnJvbSAnLi4vY29tbW9uL21vZGVsL2ZpZWxkJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTWF0Q2hlY2tib3hDaGFuZ2UgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGVja2JveCc7XG5pbXBvcnQgeyBWaXJ0dWFsU2Nyb2xsZXJDb21wb25lbnQgfSBmcm9tICduZ3gtdmlydHVhbC1zY3JvbGxlcic7XG5cbmNsYXNzIFBlcE11bHRpU2VsZWN0RmlsdGVyT3B0aW9uIGltcGxlbWVudHMgSVBlcFNtYXJ0RmlsdGVyRmllbGRPcHRpb24ge1xuICAgIHZhbHVlOiBzdHJpbmc7XG4gICAgY291bnQ/OiBudW1iZXI7XG4gICAgc2VsZWN0ZWQgPSBmYWxzZTtcbn1cblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdwZXAtbXVsdGktc2VsZWN0LWZpbHRlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL211bHRpLXNlbGVjdC1maWx0ZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL211bHRpLXNlbGVjdC1maWx0ZXIuY29tcG9uZW50LnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUGVwTXVsdGlTZWxlY3RGaWx0ZXJDb21wb25lbnRcbiAgICBleHRlbmRzIEJhc2VGaWx0ZXJDb21wb25lbnRcbiAgICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgb3B0aW9uczogUGVwTXVsdGlTZWxlY3RGaWx0ZXJPcHRpb25bXSA9IFtdO1xuICAgIGZpbHRlcmVkT3B0aW9ucyQ6IE9ic2VydmFibGU8YW55PjtcbiAgICBzZWFyY2hDb250cm9sID0gbmV3IEZvcm1Db250cm9sKCk7XG5cbiAgICBAVmlld0NoaWxkKCdvcHRpb25zQ29udGFpbmVyJylcbiAgICBvcHRpb25zQ29udGFpbmVyOiBFbGVtZW50UmVmO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBNQVhfT1BUSU9OU19UT19TSE9XID0gNi4zNTtcbiAgICBAVmlld0NoaWxkKFZpcnR1YWxTY3JvbGxlckNvbXBvbmVudClcbiAgICBwcml2YXRlIHZpcnR1YWxTY3JvbGxlcjogVmlydHVhbFNjcm9sbGVyQ29tcG9uZW50O1xuXG4gICAgbnVtYmVyT3B0aW9uc1RvU2hvd1NlYXJjaCA9IDEwO1xuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHN1cGVyLm5nT25Jbml0O1xuXG4gICAgICAgIGlmICh0aGlzLmZpZWxkLm9wdGlvbnM/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIHRoaXMub3B0aW9ucyA9IHRoaXMuZmllbGQub3B0aW9ucy5tYXAoKG9wdCkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiB7IHZhbHVlOiBvcHQudmFsdWUsIGNvdW50OiBvcHQuY291bnQsIHNlbGVjdGVkOiBmYWxzZSB9O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnNlYXJjaENvbnRyb2wuZGlzYWJsZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSW5pdCB0aGUgc2VsZWN0ZWQgdmFsdWVzIGZyb20gZmlyc3QgdmFsdWUuXG4gICAgICAgIGNvbnN0IGZpcnN0Q29udHJvbCA9IHRoaXMuZmlyc3RDb250cm9sO1xuICAgICAgICBpZiAoZmlyc3RDb250cm9sLnZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLmluaXRPcHRpb25zU2VsZWN0ZWRWYWx1ZXMoZmlyc3RDb250cm9sLnZhbHVlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEFkZCBzdWJzY3JpcHRpb24gZm9yIHRoZSBmaXJzdCB2YWx1ZSBjaGFuZ2UgdG8gc2V0IHRoZSBzZWxlY3RlZCBvcHRpb25zLlxuICAgICAgICBmaXJzdENvbnRyb2wudmFsdWVDaGFuZ2VzXG4gICAgICAgICAgICAucGlwZSh0aGlzLmdldERlc3Ryb3llcigpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoc2VsZWN0ZWRWYWx1ZXM6IHN0cmluZ1tdKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pbml0T3B0aW9uc1NlbGVjdGVkVmFsdWVzKHNlbGVjdGVkVmFsdWVzKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIC8vIEZpbHRlciB0aGUgb3B0aW9ucyBieSB0aGUgc2VhcmNoIGNvbnRyb2wuXG4gICAgICAgIHRoaXMuZmlsdGVyZWRPcHRpb25zJCA9IHRoaXMuc2VhcmNoQ29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShcbiAgICAgICAgICAgIHRoaXMuZ2V0RGVzdHJveWVyKCksXG4gICAgICAgICAgICBzdGFydFdpdGg8YW55PignJyksXG4gICAgICAgICAgICBtYXAoKG9wdGlvbikgPT5cbiAgICAgICAgICAgICAgICB0eXBlb2Ygb3B0aW9uID09PSAnc3RyaW5nJyA/IG9wdGlvbiA6IG9wdGlvbiAmJiBvcHRpb24udmFsdWVcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICBtYXAoKHZhbHVlKSA9PiAodmFsdWUgPyB0aGlzLmZpbHRlck9wdGlvbnModmFsdWUpIDogdGhpcy5vcHRpb25zKSlcbiAgICAgICAgKTtcblxuICAgICAgICAvLyBFYWNoIHRpbWUgdGhlIGZpbHRlciBjaGFuZ2UuXG4gICAgICAgIHRoaXMuZmlsdGVyZWRPcHRpb25zJC5zdWJzY3JpYmUoXG4gICAgICAgICAgICAoZmlsdGVyZE9wdGlvbnM6IFBlcE11bHRpU2VsZWN0RmlsdGVyT3B0aW9uW10pID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmNhbGNPcHRpb25zSGVpZ2h0KGZpbHRlcmRPcHRpb25zLmxlbmd0aCk7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIC8vIDggaXMgdGhlIHBhZGRpbmcgdG9wIG9mIHRoZSBtdWx0aS1zZWxlY3Qtb3B0aW9uc1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnZpcnR1YWxTY3JvbGxlci5zY3JvbGxUb1Bvc2l0aW9uKC04KTtcbiAgICAgICAgICAgICAgICB9LCAxMjUpO1xuICAgICAgICAgICAgfVxuICAgICAgICApO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgLy8gQ2FsYyBmb3IgdGhlIGZpcnN0IHRpbWUuXG4gICAgICAgIHRoaXMuY2FsY09wdGlvbnNIZWlnaHQodGhpcy5vcHRpb25zLmxlbmd0aCk7XG4gICAgfVxuXG4gICAgaW5pdE9wdGlvbnNTZWxlY3RlZFZhbHVlcyhzZWxlY3RlZFZhbHVlczogc3RyaW5nW10pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vcHRpb25zLmZvckVhY2goKG9wdCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgaXNWYWx1ZVNlbGVjdGVkID1cbiAgICAgICAgICAgICAgICBzZWxlY3RlZFZhbHVlcyAmJiBzZWxlY3RlZFZhbHVlcy5pbmNsdWRlcyhvcHQudmFsdWUpO1xuICAgICAgICAgICAgb3B0LnNlbGVjdGVkID0gaXNWYWx1ZVNlbGVjdGVkO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNhbGNPcHRpb25zSGVpZ2h0KG9wdGlvbnNDb3VudDogbnVtYmVyKSB7XG4gICAgICAgIGlmICh0aGlzLm9wdGlvbnNDb250YWluZXIpIHtcbiAgICAgICAgICAgIGNvbnN0IG9wdGlvbnNUb1Nob3cgPVxuICAgICAgICAgICAgICAgIG9wdGlvbnNDb3VudCA+IHRoaXMuTUFYX09QVElPTlNfVE9fU0hPV1xuICAgICAgICAgICAgICAgICAgICA/IHRoaXMuTUFYX09QVElPTlNfVE9fU0hPV1xuICAgICAgICAgICAgICAgICAgICA6IG9wdGlvbnNDb3VudDtcbiAgICAgICAgICAgIC8vIG9wdGlvbnNUb1Nob3cgKiAyLjI1IGlzIDEgb3B0aW9uIGhlaWdodCArIDEgaXMgdGhlIHBhZGRpbmcgdG9wICYgYm90dG9tIG9mIHRoZSBjb250YWluZXIuXG4gICAgICAgICAgICBjb25zdCBvcHRpb25zSGVpZ2h0ID0gb3B0aW9uc1RvU2hvdyAqIDIuMjUgKyAxICsgJ3JlbSc7XG5cbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0U3R5bGUoXG4gICAgICAgICAgICAgICAgdGhpcy5vcHRpb25zQ29udGFpbmVyLm5hdGl2ZUVsZW1lbnQsXG4gICAgICAgICAgICAgICAgJ2hlaWdodCcsXG4gICAgICAgICAgICAgICAgb3B0aW9uc0hlaWdodFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgZmlsdGVyT3B0aW9ucyh2YWx1ZTogc3RyaW5nKTogYW55W10ge1xuICAgICAgICBjb25zdCBmaWx0ZXJWYWx1ZSA9IHZhbHVlLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnMuZmlsdGVyKFxuICAgICAgICAgICAgKG9wdCkgPT5cbiAgICAgICAgICAgICAgICBvcHQudmFsdWUgJiZcbiAgICAgICAgICAgICAgICBvcHQudmFsdWUudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyhmaWx0ZXJWYWx1ZS50b0xvd2VyQ2FzZSgpKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8vIE92ZXJyaWRlXG4gICAgZ2V0RGVmYXVsdE9wZXJhdG9yKCk6IElQZXBTbWFydEZpbHRlck9wZXJhdG9yIHtcbiAgICAgICAgcmV0dXJuIFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkluO1xuICAgIH1cblxuICAgIC8vIE92ZXJyaWRlXG4gICAgZ2V0RmlsdGVyVmFsdWUoKTogSVBlcFNtYXJ0RmlsdGVyRGF0YVZhbHVlIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWRWYWx1ZXMgPSB0aGlzLm9wdGlvbnNcbiAgICAgICAgICAgIC5maWx0ZXIoKG9wdCkgPT4gb3B0LnNlbGVjdGVkKVxuICAgICAgICAgICAgLm1hcCgob3B0KSA9PiBvcHQudmFsdWUpO1xuICAgICAgICBjb25zdCBmaWx0ZXJWYWx1ZSA9IHtcbiAgICAgICAgICAgIGZpcnN0OiBzZWxlY3RlZFZhbHVlcyxcbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gc2VsZWN0ZWRWYWx1ZXMubGVuZ3RoID4gMCA/IGZpbHRlclZhbHVlIDogbnVsbDtcbiAgICB9XG5cbiAgICAvLyBPdmVycmlkZVxuICAgIGluaXRGaWx0ZXIoKSB7XG4gICAgICAgIHRoaXMub3B0aW9ucy5mb3JFYWNoKChvcHQpID0+IChvcHQuc2VsZWN0ZWQgPSBmYWxzZSkpO1xuICAgICAgICB0aGlzLnNlYXJjaENvbnRyb2wuc2V0VmFsdWUoJycpO1xuICAgIH1cblxuICAgIG9uT3B0aW9uQ2hhbmdlKFxuICAgICAgICBvcHRpb246IFBlcE11bHRpU2VsZWN0RmlsdGVyT3B0aW9uLFxuICAgICAgICBldmVudDogTWF0Q2hlY2tib3hDaGFuZ2VcbiAgICApIHtcbiAgICAgICAgb3B0aW9uLnNlbGVjdGVkID0gZXZlbnQuY2hlY2tlZDtcbiAgICAgICAgdGhpcy5maXJzdENvbnRyb2wuc2V0VmFsdWUoXG4gICAgICAgICAgICB0aGlzLm9wdGlvbnMuZmlsdGVyKChvcHQpID0+IG9wdC5zZWxlY3RlZCkubWFwKChvcHQpID0+IG9wdC52YWx1ZSksXG4gICAgICAgICAgICB7IGVtaXRFdmVudDogZmFsc2UgfVxuICAgICAgICApO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -8,8 +8,6 @@ export class PepNumberFilterComponent extends BaseFilterComponent {
|
|
|
8
8
|
super(...arguments);
|
|
9
9
|
this.PepSmartFilterOperators = PepSmartFilterOperators;
|
|
10
10
|
this.chooseTypeOptions = [];
|
|
11
|
-
this.operatorWidth = '38%';
|
|
12
|
-
this.fieldsWidth = '70%';
|
|
13
11
|
}
|
|
14
12
|
ngOnInit() {
|
|
15
13
|
this.firstControl.valueChanges
|
|
@@ -22,7 +20,6 @@ export class PepNumberFilterComponent extends BaseFilterComponent {
|
|
|
22
20
|
.subscribe(() => {
|
|
23
21
|
this.setFieldsStateAndValidators();
|
|
24
22
|
});
|
|
25
|
-
this.setControlsWidth();
|
|
26
23
|
}
|
|
27
24
|
// Override
|
|
28
25
|
getDefaultOperator() {
|
|
@@ -66,38 +63,16 @@ export class PepNumberFilterComponent extends BaseFilterComponent {
|
|
|
66
63
|
super.setFieldsStateAndValidators();
|
|
67
64
|
}
|
|
68
65
|
}
|
|
69
|
-
setControlsWidth() {
|
|
70
|
-
if (this.operator === PepSmartFilterOperators.NumberRange) {
|
|
71
|
-
this.operatorWidth = '30%';
|
|
72
|
-
this.fieldsWidth = '70%';
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
this.operatorWidth = '38%';
|
|
76
|
-
this.fieldsWidth = '62%';
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
66
|
onOperatorChanged(value) {
|
|
80
67
|
const operator = Object.values(PepSmartFilterOperators).find((operator) => operator.id === value);
|
|
81
68
|
this.operator = operator;
|
|
82
|
-
if (this._parentForm) {
|
|
83
|
-
this.updateParentForm();
|
|
84
|
-
}
|
|
85
|
-
if (this.emitOnChange) {
|
|
86
|
-
this.applyFilter();
|
|
87
|
-
}
|
|
88
|
-
this.setControlsWidth();
|
|
89
|
-
}
|
|
90
|
-
onValueChanged() {
|
|
91
|
-
if (this.emitOnChange) {
|
|
92
|
-
this.applyFilter();
|
|
93
|
-
}
|
|
94
69
|
}
|
|
95
70
|
}
|
|
96
71
|
PepNumberFilterComponent.decorators = [
|
|
97
72
|
{ type: Component, args: [{
|
|
98
73
|
selector: 'pep-number-filter',
|
|
99
|
-
template: "<div [formGroup]=\"form\"
|
|
74
|
+
template: "<div [formGroup]=\"form\">\n <ng-container>\n <pep-select [key]=\"'typeOperator'\" [value]=\"operator.id\" [label]=\"'SMART_FILTERS.TYPE' | translate\"\n [emptyOption]=\"false\" [options]=\"chooseTypeOptions\" (valueChange)=\"onOperatorChanged($event)\">\n </pep-select>\n </ng-container>\n <div *ngIf=\"operator !== PepSmartFilterOperators.NumberRange\">\n <!-- Amount -->\n <pep-textbox [form]=\"form\" [key]=\"firstControlKey\" [label]=\"'SMART_FILTERS.AMOUNT' | translate\"\n [renderError]=\"false\" [type]=\"field.type\" [formattedValue]=\"firstControl.value\"\n [value]=\"firstControl.value\">\n </pep-textbox>\n </div>\n <div *ngIf=\"operator === PepSmartFilterOperators.NumberRange\" fxLayout=\"row\" fxLayout.xs=\"column\"\n fxLayoutGap=\"1rem\">\n <!-- Min number -->\n <pep-textbox [form]=\"form\" [key]=\"firstControlKey\" [label]=\"'SMART_FILTERS.MIN' | translate\"\n [renderError]=\"false\" fxFlex=\"50%\" [type]=\"field.type\" [formattedValue]=\"firstControl.value\"\n [value]=\"firstControl.value\" [maxValue]=\"secondControl.value\">\n </pep-textbox>\n <!-- Max number -->\n <pep-textbox [form]=\"form\" [key]=\"secondControlKey\" [label]=\"'SMART_FILTERS.MAX' | translate\"\n [renderError]=\"false\" fxFlex=\"50%\" [type]=\"field.type\" [formattedValue]=\"secondControl.value\"\n [value]=\"secondControl.value\" [minValue]=\"firstControl.value\">\n </pep-textbox>\n </div>\n</div>",
|
|
100
75
|
styles: [""]
|
|
101
76
|
},] }
|
|
102
77
|
];
|
|
103
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibnVtYmVyLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3NtYXJ0LWZpbHRlcnMvbnVtYmVyLWZpbHRlci9udW1iZXItZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBRUgsdUJBQXVCLEdBQzFCLE1BQU0sMEJBQTBCLENBQUM7QUFFbEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTVDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBT3RELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxtQkFBbUI7SUFMakU7O1FBTUksNEJBQXVCLEdBQUcsdUJBQXVCLENBQUM7UUFDbEQsc0JBQWlCLEdBQXNCLEVBQUUsQ0FBQztJQXlFOUMsQ0FBQztJQXZFRyxRQUFRO1FBQ0osSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZO2FBQ3pCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLEVBQUUsb0JBQW9CLEVBQUUsQ0FBQzthQUNqRCxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLDJCQUEyQixFQUFFLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7UUFFUCxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVk7YUFDMUIsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRSxvQkFBb0IsRUFBRSxDQUFDO2FBQ2pELFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDWixJQUFJLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztRQUN2QyxDQUFDLENBQUMsQ0FBQztJQUNYLENBQUM7SUFFRCxXQUFXO0lBQ1gsa0JBQWtCO1FBQ2QsT0FBTyx1QkFBdUIsQ0FBQyxNQUFNLENBQUM7SUFDMUMsQ0FBQztJQUVELFdBQVc7SUFDWCxjQUFjO1FBQ1YsTUFBTSxXQUFXLEdBQUc7WUFDaEIsS0FBSyxFQUFFLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSztTQUNqQyxDQUFDO1FBRUYsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLHVCQUF1QixDQUFDLFdBQVcsRUFBRTtZQUN2RCxXQUFXLENBQUMsUUFBUSxDQUFDLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUM7U0FDcEQ7UUFFRCxPQUFPLFdBQVcsQ0FBQztJQUN2QixDQUFDO0lBRUQsV0FBVztJQUNYLG9CQUFvQjtRQUNoQixJQUFJLENBQUMsaUJBQWlCLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNyRCxPQUFPO2dCQUNILEdBQUcsRUFBRSxRQUFRLENBQUMsRUFBRTtnQkFDaEIsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUN6QixHQUFHLElBQUksQ0FBQyw0QkFBNEIsSUFBSSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQzFEO2FBQ0osQ0FBQztRQUNOLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVc7SUFDWCwyQkFBMkI7UUFDdkIsSUFBSSxJQUFJLENBQUMsUUFBUSxLQUFLLHVCQUF1QixDQUFDLFdBQVcsRUFBRTtZQUN2RCxNQUFNLGVBQWUsR0FBRyxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUM5QyxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFO2dCQUMxQixlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDO2FBQ3ZFO1lBQ0QsSUFBSSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsZUFBZSxDQUFDLENBQUM7WUFHakQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUM1QixNQUFNLGdCQUFnQixHQUFHLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1lBQy9DLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUU7Z0JBQ3pCLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQzthQUMxRTtZQUNELElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDdEQ7YUFBTTtZQUNILEtBQUssQ0FBQywyQkFBMkIsRUFBRSxDQUFDO1NBQ3ZDO0lBQ0wsQ0FBQztJQUVELGlCQUFpQixDQUFDLEtBQWE7UUFDM0IsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLElBQUksQ0FDeEQsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLEtBQUssS0FBSyxDQUN0QyxDQUFDO1FBQ0YsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUM7SUFDN0IsQ0FBQzs7O1lBL0VKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3QixxakRBQTZDOzthQUVoRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25DaGFuZ2VzLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhc2VGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuLi9jb21tb24vbW9kZWwvYmFzZS1maWx0ZXItY29tcG9uZW50JztcbmltcG9ydCB7XG4gICAgSVBlcFNtYXJ0RmlsdGVyT3BlcmF0b3IsXG4gICAgUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMsXG59IGZyb20gJy4uL2NvbW1vbi9tb2RlbC9vcGVyYXRvcic7XG5pbXBvcnQgeyBJUGVwU21hcnRGaWx0ZXJEYXRhVmFsdWUgfSBmcm9tICcuLi9jb21tb24vbW9kZWwvZmlsdGVyJztcbmltcG9ydCB7IFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBJUGVwT3B0aW9uIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWInO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncGVwLW51bWJlci1maWx0ZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9udW1iZXItZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9udW1iZXItZmlsdGVyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFBlcE51bWJlckZpbHRlckNvbXBvbmVudCBleHRlbmRzIEJhc2VGaWx0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzID0gUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnM7XG4gICAgY2hvb3NlVHlwZU9wdGlvbnM6IEFycmF5PElQZXBPcHRpb24+ID0gW107XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5maXJzdENvbnRyb2wudmFsdWVDaGFuZ2VzXG4gICAgICAgICAgICAucGlwZSh0aGlzLmdldERlc3Ryb3llcigpLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXRGaWVsZHNTdGF0ZUFuZFZhbGlkYXRvcnMoKTtcbiAgICAgICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuc2Vjb25kQ29udHJvbC52YWx1ZUNoYW5nZXNcbiAgICAgICAgICAgIC5waXBlKHRoaXMuZ2V0RGVzdHJveWVyKCksIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldEZpZWxkc1N0YXRlQW5kVmFsaWRhdG9ycygpO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLy8gT3ZlcnJpZGVcbiAgICBnZXREZWZhdWx0T3BlcmF0b3IoKTogSVBlcFNtYXJ0RmlsdGVyT3BlcmF0b3Ige1xuICAgICAgICByZXR1cm4gUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuRXF1YWxzO1xuICAgIH1cblxuICAgIC8vIE92ZXJyaWRlXG4gICAgZ2V0RmlsdGVyVmFsdWUoKTogSVBlcFNtYXJ0RmlsdGVyRGF0YVZhbHVlIHtcbiAgICAgICAgY29uc3QgZmlsdGVyVmFsdWUgPSB7XG4gICAgICAgICAgICBmaXJzdDogdGhpcy5maXJzdENvbnRyb2wudmFsdWUsXG4gICAgICAgIH07XG5cbiAgICAgICAgaWYgKHRoaXMub3BlcmF0b3IgPT09IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLk51bWJlclJhbmdlKSB7XG4gICAgICAgICAgICBmaWx0ZXJWYWx1ZVsnc2Vjb25kJ10gPSB0aGlzLnNlY29uZENvbnRyb2wudmFsdWU7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gZmlsdGVyVmFsdWU7XG4gICAgfVxuXG4gICAgLy8gT3ZlcnJpZGVcbiAgICBsb2FkT3BlcmF0b3JzT3B0aW9ucygpIHtcbiAgICAgICAgdGhpcy5jaG9vc2VUeXBlT3B0aW9ucyA9IHRoaXMub3BlcmF0b3JzLm1hcCgob3BlcmF0b3IpID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAga2V5OiBvcGVyYXRvci5pZCxcbiAgICAgICAgICAgICAgICB2YWx1ZTogdGhpcy50cmFuc2xhdGUuaW5zdGFudChcbiAgICAgICAgICAgICAgICAgICAgYCR7dGhpcy5PUEVSQVRPUlNfVFJBTlNMQVRJT05fUFJFRklYfS4ke29wZXJhdG9yLm5hbWV9YFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICB9O1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvLyBPdmVycmlkZVxuICAgIHNldEZpZWxkc1N0YXRlQW5kVmFsaWRhdG9ycygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMub3BlcmF0b3IgPT09IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLk51bWJlclJhbmdlKSB7XG4gICAgICAgICAgICBjb25zdCBmaXJzdFZhbGlkYXRvcnMgPSBbVmFsaWRhdG9ycy5yZXF1aXJlZF07XG4gICAgICAgICAgICBpZiAodGhpcy5zZWNvbmRDb250cm9sLnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgZmlyc3RWYWxpZGF0b3JzLnB1c2godGhpcy52YWxpZGF0b3IuaXNMZXNzVGhhbih0aGlzLnNlY29uZENvbnRyb2wpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuZmlyc3RDb250cm9sLnNldFZhbGlkYXRvcnMoZmlyc3RWYWxpZGF0b3JzKTtcblxuXG4gICAgICAgICAgICB0aGlzLnNlY29uZENvbnRyb2wuZW5hYmxlKCk7XG4gICAgICAgICAgICBjb25zdCBzZWNvbmRWYWxpZGF0b3JzID0gW1ZhbGlkYXRvcnMucmVxdWlyZWRdO1xuICAgICAgICAgICAgaWYgKHRoaXMuZmlyc3RDb250cm9sLnZhbHVlKSB7XG4gICAgICAgICAgICAgICAgc2Vjb25kVmFsaWRhdG9ycy5wdXNoKHRoaXMudmFsaWRhdG9yLmlzR3JlYXRlclRoYW4odGhpcy5maXJzdENvbnRyb2wpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHRoaXMuc2Vjb25kQ29udHJvbC5zZXRWYWxpZGF0b3JzKHNlY29uZFZhbGlkYXRvcnMpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc3VwZXIuc2V0RmllbGRzU3RhdGVBbmRWYWxpZGF0b3JzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbk9wZXJhdG9yQ2hhbmdlZCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIGNvbnN0IG9wZXJhdG9yID0gT2JqZWN0LnZhbHVlcyhQZXBTbWFydEZpbHRlck9wZXJhdG9ycykuZmluZChcbiAgICAgICAgICAgIChvcGVyYXRvcikgPT4gb3BlcmF0b3IuaWQgPT09IHZhbHVlXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMub3BlcmF0b3IgPSBvcGVyYXRvcjtcbiAgICB9XG59XG4iXX0=
|
|
@@ -9,11 +9,10 @@ export * from './boolean-filter/boolean-filter.component';
|
|
|
9
9
|
export * from './date-filter/date-filter.component';
|
|
10
10
|
export * from './multi-select-filter/multi-select-filter.component';
|
|
11
11
|
export * from './number-filter/number-filter.component';
|
|
12
|
-
export * from './text-filter/text-filter.component';
|
|
13
12
|
// Model
|
|
14
13
|
export * from './common/model/creator';
|
|
15
14
|
export * from './common/model/field';
|
|
16
15
|
export * from './common/model/filter';
|
|
17
16
|
export * from './common/model/operator';
|
|
18
17
|
export * from './common/model/type';
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvc21hcnQtZmlsdGVycy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsc0NBQXNDLENBQUM7QUFDckQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxxREFBcUQsQ0FBQztBQUNwRSxjQUFjLHlDQUF5QyxDQUFDO0FBRXhELFFBQVE7QUFDUixjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMsc0JBQXNCLENBQUM7QUFDckMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIG5neC1saWIvc21hcnQtZmlsdGVyc1xuICovXG5leHBvcnQgKiBmcm9tICcuL3NtYXJ0LWZpbHRlcnMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vc21hcnQtZmlsdGVycy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21tb24vbW9kZWwvYmFzZS1maWx0ZXItY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY29tbW9uL2ZpbHRlci1hY3Rpb25zLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2Jvb2xlYW4tZmlsdGVyL2Jvb2xlYW4tZmlsdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2RhdGUtZmlsdGVyL2RhdGUtZmlsdGVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL211bHRpLXNlbGVjdC1maWx0ZXIvbXVsdGktc2VsZWN0LWZpbHRlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9udW1iZXItZmlsdGVyL251bWJlci1maWx0ZXIuY29tcG9uZW50JztcblxuLy8gTW9kZWxcbmV4cG9ydCAqIGZyb20gJy4vY29tbW9uL21vZGVsL2NyZWF0b3InO1xuZXhwb3J0ICogZnJvbSAnLi9jb21tb24vbW9kZWwvZmllbGQnO1xuZXhwb3J0ICogZnJvbSAnLi9jb21tb24vbW9kZWwvZmlsdGVyJztcbmV4cG9ydCAqIGZyb20gJy4vY29tbW9uL21vZGVsL29wZXJhdG9yJztcbmV4cG9ydCAqIGZyb20gJy4vY29tbW9uL21vZGVsL3R5cGUnO1xuIl19
|
|
@@ -110,7 +110,7 @@ export class PepSmartFiltersComponent {
|
|
|
110
110
|
PepSmartFiltersComponent.decorators = [
|
|
111
111
|
{ type: Component, args: [{
|
|
112
112
|
selector: 'pep-smart-filters',
|
|
113
|
-
template: "<div class=\"smart-filters-container\" dir=\"{{ layoutService.isRtl() ? 'rtl' : 'ltr' }}\">\
|
|
113
|
+
template: "<div class=\"smart-filters-container\" dir=\"{{ layoutService.isRtl() ? 'rtl' : 'ltr' }}\">\n <div class=\"title\">\n <span class=\"body-md bold\">{{ title?.length > 0 ? title : (\"SMART_FILTERS.TITLE\" | translate)}}</span>\n <mat-chip *ngIf=\"filtersDataMap.size > 0\" [selectable]=\"false\" [removable]=\"true\" (click)=\"onFiltersClear()\"\n class=\"clear-filter pep-button chip xs weak\">\n <span class=\"body-xs ellipsis \">\n {{ \"ACTIONS.CLEAR\" | translate}}\n </span>\n </mat-chip>\n </div>\n\n <mat-accordion [displayMode]=\"'flat'\" [multi]=\"true\" class=\"pep-accordion2\">\n <mat-expansion-panel *ngFor=\"let field of fields; let i = index\" hideToggle=\"true\" [expanded]=\"field.isOpen\"\n (opened)=\"toggleField(i, true)\" (closed)=\"toggleField(i, false)\">\n <mat-expansion-panel-header [collapsedHeight]=\"expansionPanelHeaderHeight\"\n [expandedHeight]=\"expansionPanelHeaderHeight\">\n <mat-panel-title class=\"pep-spacing-element-negative\">\n <div class=\"smart-filter-title-container\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon [name]=\"field.isOpen ? 'number_minus' : 'number_plus'\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\" [title]=\"field.name\">\n {{ field.name }}\n </span>\n <mat-chip *ngIf=\"filtersDataMap.get(field.id)\" [selectable]=\"false\" [removable]=\"true\"\n (click)=\"onFilterClear(field)\" class=\"clear-filter pep-button chip xs weak\">\n <span *ngIf=\"field.componentType === 'multi-select'\" class=\"body-xs pep-spacing-element\">\n {{ filtersDataMap.get(field.id).value?.first?.length }}\n <!-- {{ field.componentType === 'multi-select' ?\n filtersDataMap.get(field.id).value?.first?.length : 1 }} -->\n </span>\n <mat-icon>\n <pep-icon name=\"system_close\"></pep-icon>\n </mat-icon>\n </mat-chip>\n </div>\n </mat-panel-title>\n </mat-expansion-panel-header>\n <div class=\"expansion-content smart-filter-content\">\n <ng-container [ngSwitch]=\"field.componentType\">\n <ng-container *ngSwitchCase=\"'boolean'\">\n <pep-boolean-filter [field]=\"field\" [filter]=\"filtersDataMap.get(field.id)\"\n (filterChange)=\"onFilterChange(field, $event)\" (filterClear)=\"onFilterClear(field)\">\n </pep-boolean-filter>\n </ng-container>\n <ng-container *ngSwitchCase=\"'date'\">\n <pep-date-filter [field]=\"field\" [filter]=\"filtersDataMap.get(field.id)\"\n (filterChange)=\"onFilterChange(field, $event)\" (filterClear)=\"onFilterClear(field)\">\n </pep-date-filter>\n </ng-container>\n <ng-container *ngSwitchCase=\"'multi-select'\">\n <pep-multi-select-filter [field]=\"field\" [filter]=\"filtersDataMap.get(field.id)\"\n (filterChange)=\"onFilterChange(field, $event)\" (filterClear)=\"onFilterClear(field)\">\n </pep-multi-select-filter>\n </ng-container>\n <ng-container *ngSwitchCase=\"'number'\">\n <pep-number-filter [field]=\"field\" [filter]=\"filtersDataMap.get(field.id)\"\n (filterChange)=\"onFilterChange(field, $event)\" (filterClear)=\"onFilterClear(field)\">\n </pep-number-filter>\n </ng-container>\n <!-- <div *ngSwitchDefault>\n </div> -->\n </ng-container>\n </div>\n </mat-expansion-panel>\n </mat-accordion>\n</div>",
|
|
114
114
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
115
115
|
styles: [".smart-filters-container .title{height:calc(.5rem + 2.5rem);height:calc(var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));display:flex;flex-flow:wrap;align-items:center;justify-content:space-between}.smart-filters-container .title .clear-filter{display:flex;flex-direction:row;align-items:center;justify-content:center;margin:0 .25rem;margin:0 var(--pep-spacing-xs,.25rem);padding:0 .75rem;padding:0 var(--pep-spacing-md,.75rem)}.smart-filters-container .title .clear-filter:after{background-color:transparent}.smart-filters-container .smart-filter-title-container{display:grid;grid-auto-flow:column;grid-template-columns:auto 1fr auto;width:100%}.smart-filters-container .smart-filter-title-container>*{align-self:center}.smart-filters-container .smart-filter-title-container .clear-filter{display:flex;flex-direction:row;align-items:center;justify-content:center;-webkit-margin-end:.5rem;margin-inline-end:.5rem;-webkit-margin-end:var(--pep-spacing-sm,.5rem);margin-inline-end:var(--pep-spacing-sm,.5rem)}.smart-filters-container .smart-filter-title-container .clear-filter:after{background-color:transparent}.smart-filters-container .smart-filter-title-container .mat-icon pep-icon{height:.75rem;width:.75rem}"]
|
|
116
116
|
},] }
|
|
@@ -127,4 +127,4 @@ PepSmartFiltersComponent.propDecorators = {
|
|
|
127
127
|
filtersChange: [{ type: Output }],
|
|
128
128
|
fieldToggleChange: [{ type: Output }]
|
|
129
129
|
};
|
|
130
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZmlsdGVycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3NtYXJ0LWZpbHRlcnMvc21hcnQtZmlsdGVycy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxLQUFLLEVBQ0wsdUJBQXVCLEVBQ3ZCLE1BQU0sRUFDTixZQUFZLEVBQ1osVUFBVSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBS3ZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBUzNELE1BQU0sT0FBTyx3QkFBd0I7SUEyRGpDLFlBQ1ksV0FBdUIsRUFDeEIsYUFBK0I7UUFEOUIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDeEIsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBM0RqQyxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBRXBCLG1CQUFjLEdBQXFDLElBQUksR0FBRyxFQUd2RCxDQUFDO1FBRUksYUFBUSxHQUEwQixFQUFFLENBQUM7UUFrQnJDLFlBQU8sR0FBZ0MsRUFBRSxDQUFDO1FBUzFDLHVCQUFrQixHQUFHLEtBQUssQ0FBQztRQVduQyxZQUFZO1FBQ1osK0RBQStEO1FBRS9ELGtCQUFhLEdBQXdDLElBQUksWUFBWSxFQUVsRSxDQUFDO1FBR0osc0JBQWlCLEdBQXVDLElBQUksWUFBWSxFQUF3QixDQUFDO1FBRWpHLCtCQUEwQixHQUFHLEdBQUcsQ0FBQztJQUs3QixDQUFDO0lBcERMLElBQ0ksT0FBTyxDQUFDLEtBQTRCO1FBQ3BDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUNELElBQUksT0FBTztRQUNQLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDM0MsMERBQTBEO2FBQ3pELEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ1QsSUFBSSxHQUFHLEVBQUU7Z0JBQ0wsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQzthQUN2QztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRVAsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFHRCxJQUNJLE1BQU0sQ0FBQyxLQUFrQztRQUN6QyxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztJQUN6QixDQUFDO0lBQ0QsSUFBSSxNQUFNO1FBQ04sT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3hCLENBQUM7SUFHRCxJQUNJLGlCQUFpQixDQUFDLEtBQWM7UUFDaEMsSUFBSSxLQUFLLEVBQUU7WUFDUCxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztTQUN2QztJQUNMLENBQUM7SUFDRCxJQUFJLGlCQUFpQjtRQUNqQixPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQztJQUNuQyxDQUFDO0lBbUJPLDRCQUE0QjtRQUNoQywyREFBMkQ7UUFDM0QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUNoRSxJQUFJLENBQ1AsQ0FBQztRQUNGLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDOUQsSUFBSSxDQUNQLENBQUM7UUFDRixJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQzlELElBQUksQ0FDUCxDQUFDO0lBQ04sQ0FBQztJQUVPLFlBQVksQ0FBQyxLQUE0QjtRQUM3QyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzVCLElBQUksS0FBSyxFQUFFO1lBQ1AsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO2dCQUNyQiwrQ0FBK0M7Z0JBQy9DLElBQUksWUFBWSxHQUFHLElBQUksQ0FBQztnQkFFeEIsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtvQkFDdkMsWUFBWSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUMzQixDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsS0FBSyxNQUFNLENBQUMsT0FBTyxDQUNkLENBQUM7aUJBQ2hDO2dCQUVELElBQUksWUFBWSxFQUFFO29CQUNkLDZDQUE2QztvQkFDN0MsSUFDSSxNQUFNLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQ2xDLFlBQVksQ0FBQyxhQUFhLENBQzdCLEVBQ0g7d0JBQ0UsSUFBSSxtQkFBbUIsR0FBRyxJQUFJLENBQUM7d0JBQy9CLElBQUksTUFBTSxDQUFDLFlBQVksRUFBRTs0QkFDckIsc0RBQXNEOzRCQUN0RCxJQUNJLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUN2QyxZQUFZLENBQUMsYUFBYSxDQUM3QixFQUNIO2dDQUNFLG1CQUFtQixHQUFHLEtBQUssQ0FBQzs2QkFDL0I7eUJBQ0o7d0JBRUQsa0JBQWtCO3dCQUNsQixJQUFJLG1CQUFtQixFQUFFOzRCQUNyQixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO3lCQUNuRDtxQkFDSjtpQkFDSjtZQUNMLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRU8sa0JBQWtCO1FBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQWEsRUFBRSxNQUFlO1FBQ3RDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNuQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUNwRCxDQUFDO0lBRUQsWUFBWTtRQUNSLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDaEMsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFlO1FBQ3ZCLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFRCxpRUFBaUU7SUFDakUsY0FBYztRQUNWLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsNERBQTREO0lBQzVELGFBQWEsQ0FBQyxLQUEyQjtRQUNyQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBRUQsMERBQTBEO0lBQzFELGNBQWMsQ0FDVixLQUEyQixFQUMzQixVQUErQjtRQUUvQixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQzlDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7OztZQWxLSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLG1CQUFtQjtnQkFDN0IseTJJQUE2QztnQkFFN0MsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2xEOzs7WUFkRyxVQUFVO1lBTUwsZ0JBQWdCOzs7b0JBV3BCLEtBQUs7c0JBUUwsS0FBSztxQkFrQkwsS0FBSztnQ0FTTCxLQUFLOzRCQVlMLE1BQU07Z0NBS04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBDb21wb25lbnQsXHJcbiAgICBJbnB1dCxcclxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gICAgT3V0cHV0LFxyXG4gICAgRXZlbnRFbWl0dGVyLFxyXG4gICAgRWxlbWVudFJlZixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICAgIElQZXBTbWFydEZpbHRlckZpZWxkLFxyXG4gICAgUGVwU21hcnRGaWx0ZXJCYXNlRmllbGQsXHJcbn0gZnJvbSAnLi9jb21tb24vbW9kZWwvZmllbGQnO1xyXG5pbXBvcnQgeyBQZXBMYXlvdXRTZXJ2aWNlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWInO1xyXG5pbXBvcnQgeyBJUGVwU21hcnRGaWx0ZXJEYXRhIH0gZnJvbSAnLi9jb21tb24vbW9kZWwvZmlsdGVyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICdwZXAtc21hcnQtZmlsdGVycycsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vc21hcnQtZmlsdGVycy5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi9zbWFydC1maWx0ZXJzLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBlcFNtYXJ0RmlsdGVyc0NvbXBvbmVudCB7XHJcblxyXG4gICAgQElucHV0KCkgdGl0bGUgPSAnJztcclxuXHJcbiAgICBmaWx0ZXJzRGF0YU1hcDogTWFwPHN0cmluZywgSVBlcFNtYXJ0RmlsdGVyRGF0YT4gPSBuZXcgTWFwPFxyXG4gICAgICAgIHN0cmluZyxcclxuICAgICAgICBJUGVwU21hcnRGaWx0ZXJEYXRhXHJcbiAgICA+KCk7XHJcblxyXG4gICAgcHJpdmF0ZSBfZmlsdGVyczogSVBlcFNtYXJ0RmlsdGVyRGF0YVtdID0gW107XHJcbiAgICBASW5wdXQoKVxyXG4gICAgc2V0IGZpbHRlcnModmFsdWU6IElQZXBTbWFydEZpbHRlckRhdGFbXSkge1xyXG4gICAgICAgIHRoaXMuX2ZpbHRlcnMgPSB2YWx1ZTtcclxuICAgICAgICB0aGlzLnNldHVwRmlsdGVycyh2YWx1ZSk7XHJcbiAgICB9XHJcbiAgICBnZXQgZmlsdGVycygpOiBJUGVwU21hcnRGaWx0ZXJEYXRhW10ge1xyXG4gICAgICAgIHRoaXMuX2ZpbHRlcnMgPSBbLi4udGhpcy5maWx0ZXJzRGF0YU1hcC5rZXlzKCldXHJcbiAgICAgICAgICAgIC8vIC5maWx0ZXIoKGtleSkgPT4gdGhpcy5maWx0ZXJzRGF0YU1hcC5nZXQoa2V5KSAhPT0gbnVsbClcclxuICAgICAgICAgICAgLm1hcCgoa2V5KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBpZiAoa2V5KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuZmlsdGVyc0RhdGFNYXAuZ2V0KGtleSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICByZXR1cm4gdGhpcy5fZmlsdGVycztcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9maWVsZHM6IEFycmF5PElQZXBTbWFydEZpbHRlckZpZWxkPiA9IFtdO1xyXG4gICAgQElucHV0KClcclxuICAgIHNldCBmaWVsZHModmFsdWU6IEFycmF5PElQZXBTbWFydEZpbHRlckZpZWxkPikge1xyXG4gICAgICAgIHRoaXMuX2ZpZWxkcyA9IHZhbHVlO1xyXG4gICAgfVxyXG4gICAgZ2V0IGZpZWxkcygpOiBBcnJheTxJUGVwU21hcnRGaWx0ZXJGaWVsZD4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl9maWVsZHM7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfdXNlQXNXZWJDb21wb25lbnQgPSBmYWxzZTtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBzZXQgdXNlQXNXZWJDb21wb25lbnQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy5leHBvcnRGdW5jdGlvbnNPbkhvc3RFbGVtZW50KCk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgZ2V0IHVzZUFzV2ViQ29tcG9uZW50KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLl91c2VBc1dlYkNvbXBvbmVudDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBAT3V0cHV0KClcclxuICAgIC8vIGZpbHRlcnNDbGVhcjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xyXG4gICAgQE91dHB1dCgpXHJcbiAgICBmaWx0ZXJzQ2hhbmdlOiBFdmVudEVtaXR0ZXI8SVBlcFNtYXJ0RmlsdGVyRGF0YVtdPiA9IG5ldyBFdmVudEVtaXR0ZXI8XHJcbiAgICAgICAgSVBlcFNtYXJ0RmlsdGVyRGF0YVtdXHJcbiAgICA+KCk7XHJcblxyXG4gICAgQE91dHB1dCgpXHJcbiAgICBmaWVsZFRvZ2dsZUNoYW5nZTogRXZlbnRFbWl0dGVyPElQZXBTbWFydEZpbHRlckZpZWxkPiA9IG5ldyBFdmVudEVtaXR0ZXI8SVBlcFNtYXJ0RmlsdGVyRmllbGQ+KCk7XHJcblxyXG4gICAgZXhwYW5zaW9uUGFuZWxIZWFkZXJIZWlnaHQgPSAnKic7XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgcHJpdmF0ZSBob3N0RWxlbWVudDogRWxlbWVudFJlZixcclxuICAgICAgICBwdWJsaWMgbGF5b3V0U2VydmljZTogUGVwTGF5b3V0U2VydmljZVxyXG4gICAgKSB7IH1cclxuXHJcbiAgICBwcml2YXRlIGV4cG9ydEZ1bmN0aW9uc09uSG9zdEVsZW1lbnQoKSB7XHJcbiAgICAgICAgLy8gVGhpcyBpcyBmb3Igd2ViIGNvbXBvbmVudCB1c2FnZSBmb3IgdXNlIHRob3NlIGZ1bmN0aW9ucy5cclxuICAgICAgICB0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2xlYXJGaWx0ZXJzID0gdGhpcy5jbGVhckZpbHRlcnMuYmluZChcclxuICAgICAgICAgICAgdGhpc1xyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LmNsZWFyRmlsdGVyID0gdGhpcy5jbGVhckZpbHRlci5iaW5kKFxyXG4gICAgICAgICAgICB0aGlzXHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQudG9nZ2xlRmllbGQgPSB0aGlzLnRvZ2dsZUZpZWxkLmJpbmQoXHJcbiAgICAgICAgICAgIHRoaXNcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgc2V0dXBGaWx0ZXJzKHZhbHVlOiBJUGVwU21hcnRGaWx0ZXJEYXRhW10pIHtcclxuICAgICAgICB0aGlzLmZpbHRlcnNEYXRhTWFwLmNsZWFyKCk7XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICAgIHZhbHVlLmZvckVhY2goKGZpbHRlcikgPT4ge1xyXG4gICAgICAgICAgICAgICAgLy8gVmFsaWRhdGUgYmVmb3JlIGFkZCB0aGUgZmlsdGVyIGludG8gdGhlIG1hcC5cclxuICAgICAgICAgICAgICAgIGxldCBjdXJyZW50RmllbGQgPSBudWxsO1xyXG5cclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmZpZWxkcyAmJiB0aGlzLmZpZWxkcy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY3VycmVudEZpZWxkID0gdGhpcy5maWVsZHMuZmluZChcclxuICAgICAgICAgICAgICAgICAgICAgICAgKGZpZWxkKSA9PiBmaWVsZC5pZCA9PT0gZmlsdGVyLmZpZWxkSWRcclxuICAgICAgICAgICAgICAgICAgICApIGFzIFBlcFNtYXJ0RmlsdGVyQmFzZUZpZWxkO1xyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIGlmIChjdXJyZW50RmllbGQpIHtcclxuICAgICAgICAgICAgICAgICAgICAvLyBPbmx5IGlmIHRoZSBvcGVyYXRvciBpcyBmcm9tIHRoZSBzYW1lIHR5cGVcclxuICAgICAgICAgICAgICAgICAgICBpZiAoXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlci5vcGVyYXRvci5jb21wb25lbnRUeXBlLmluY2x1ZGVzKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY3VycmVudEZpZWxkLmNvbXBvbmVudFR5cGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBsZXQgaXNPcGVyYXRvclVuaXRWYWxpZCA9IHRydWU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChmaWx0ZXIub3BlcmF0b3JVbml0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBPbmx5IGlmIHRoZSBvcGVyYXRvciB1bml0IGlzIG5vdCBmcm9tIHRoZSBzYW1lIHR5cGVcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAhZmlsdGVyLm9wZXJhdG9yVW5pdC5jb21wb25lbnRUeXBlLmluY2x1ZGVzKFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50RmllbGQuY29tcG9uZW50VHlwZVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzT3BlcmF0b3JVbml0VmFsaWQgPSBmYWxzZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgLy8gQWRkIHRoZSBmaWx0ZXIuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc09wZXJhdG9yVW5pdFZhbGlkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbHRlcnNEYXRhTWFwLnNldChmaWx0ZXIuZmllbGRJZCwgZmlsdGVyKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgcmFpc2VGaWx0ZXJzQ2hhbmdlKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZmlsdGVyc0NoYW5nZS5lbWl0KHRoaXMuZmlsdGVycyk7XHJcbiAgICB9XHJcblxyXG4gICAgdG9nZ2xlRmllbGQoaW5kZXg6IG51bWJlciwgaXNPcGVuOiBib29sZWFuKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5maWVsZHNbaW5kZXhdLmlzT3BlbiA9IGlzT3BlbjtcclxuICAgICAgICB0aGlzLmZpZWxkVG9nZ2xlQ2hhbmdlLmVtaXQodGhpcy5maWVsZHNbaW5kZXhdKTtcclxuICAgIH1cclxuXHJcbiAgICBjbGVhckZpbHRlcnMoKSB7XHJcbiAgICAgICAgdGhpcy5maWx0ZXJzRGF0YU1hcC5jbGVhcigpO1xyXG4gICAgfVxyXG5cclxuICAgIGNsZWFyRmlsdGVyKGZpZWxkSWQ6IHN0cmluZykge1xyXG4gICAgICAgIHRoaXMuZmlsdGVyc0RhdGFNYXAuZGVsZXRlKGZpZWxkSWQpO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIENsZWFyIGFsbCB0aGUgZmlsdGVycyBhbmQgcmFpc2UgZXZlbnQgdGhhdCBmaWx0ZXJzIGhhcyBjaGFuZ2UuXHJcbiAgICBvbkZpbHRlcnNDbGVhcigpIHtcclxuICAgICAgICB0aGlzLmNsZWFyRmlsdGVycygpO1xyXG4gICAgICAgIHRoaXMucmFpc2VGaWx0ZXJzQ2hhbmdlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gQ2xlYXIgdGhlIGZpbHRlciBhbmQgcmFpc2UgZXZlbnQgdGhhdCBmaWx0ZXJzIGhhcyBjaGFuZ2UuXHJcbiAgICBvbkZpbHRlckNsZWFyKGZpZWxkOiBJUGVwU21hcnRGaWx0ZXJGaWVsZCkge1xyXG4gICAgICAgIHRoaXMuY2xlYXJGaWx0ZXIoZmllbGQuaWQpO1xyXG4gICAgICAgIHRoaXMucmFpc2VGaWx0ZXJzQ2hhbmdlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgLy8gU2V0IHRoZSBmaWx0ZXIgYW5kIHJhaXNlIGV2ZW50IHRoYXQgZmlsdGVycyBoYXMgY2hhbmdlLlxyXG4gICAgb25GaWx0ZXJDaGFuZ2UoXHJcbiAgICAgICAgZmllbGQ6IElQZXBTbWFydEZpbHRlckZpZWxkLFxyXG4gICAgICAgIGZpbHRlckRhdGE6IElQZXBTbWFydEZpbHRlckRhdGFcclxuICAgICkge1xyXG4gICAgICAgIHRoaXMuY2xlYXJGaWx0ZXIoZmllbGQuaWQpO1xyXG4gICAgICAgIHRoaXMuZmlsdGVyc0RhdGFNYXAuc2V0KGZpZWxkLmlkLCBmaWx0ZXJEYXRhKTtcclxuICAgICAgICB0aGlzLnJhaXNlRmlsdGVyc0NoYW5nZSgpO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZmlsdGVycy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3NtYXJ0LWZpbHRlcnMvc21hcnQtZmlsdGVycy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILFNBQVMsRUFDVCxLQUFLLEVBQ0wsdUJBQXVCLEVBQ3ZCLE1BQU0sRUFDTixZQUFZLEVBQ1osVUFBVSxHQUNiLE1BQU0sZUFBZSxDQUFDO0FBS3ZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBUzNELE1BQU0sT0FBTyx3QkFBd0I7SUEyRGpDLFlBQ1ksV0FBdUIsRUFDeEIsYUFBK0I7UUFEOUIsZ0JBQVcsR0FBWCxXQUFXLENBQVk7UUFDeEIsa0JBQWEsR0FBYixhQUFhLENBQWtCO1FBM0RqQyxVQUFLLEdBQUcsRUFBRSxDQUFDO1FBRXBCLG1CQUFjLEdBQXFDLElBQUksR0FBRyxFQUd2RCxDQUFDO1FBRUksYUFBUSxHQUEwQixFQUFFLENBQUM7UUFrQnJDLFlBQU8sR0FBZ0MsRUFBRSxDQUFDO1FBUzFDLHVCQUFrQixHQUFHLEtBQUssQ0FBQztRQVduQyxZQUFZO1FBQ1osK0RBQStEO1FBRS9ELGtCQUFhLEdBQXdDLElBQUksWUFBWSxFQUVsRSxDQUFDO1FBR0osc0JBQWlCLEdBQXVDLElBQUksWUFBWSxFQUF3QixDQUFDO1FBRWpHLCtCQUEwQixHQUFHLEdBQUcsQ0FBQztJQUs3QixDQUFDO0lBcERMLElBQ0ksT0FBTyxDQUFDLEtBQTRCO1FBQ3BDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUNELElBQUksT0FBTztRQUNQLElBQUksQ0FBQyxRQUFRLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFF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ImltcG9ydCB7XG4gICAgQ29tcG9uZW50LFxuICAgIElucHV0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIE91dHB1dCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgRWxlbWVudFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICAgIElQZXBTbWFydEZpbHRlckZpZWxkLFxuICAgIFBlcFNtYXJ0RmlsdGVyQmFzZUZpZWxkLFxufSBmcm9tICcuL2NvbW1vbi9tb2RlbC9maWVsZCc7XG5pbXBvcnQgeyBQZXBMYXlvdXRTZXJ2aWNlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWInO1xuaW1wb3J0IHsgSVBlcFNtYXJ0RmlsdGVyRGF0YSB9IGZyb20gJy4vY29tbW9uL21vZGVsL2ZpbHRlcic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAncGVwLXNtYXJ0LWZpbHRlcnMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9zbWFydC1maWx0ZXJzLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9zbWFydC1maWx0ZXJzLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFBlcFNtYXJ0RmlsdGVyc0NvbXBvbmVudCB7XG5cbiAgICBASW5wdXQoKSB0aXRsZSA9ICcnO1xuXG4gICAgZmlsdGVyc0RhdGFNYXA6IE1hcDxzdHJpbmcsIElQZXBTbWFydEZpbHRlckRhdGE+ID0gbmV3IE1hcDxcbiAgICAgICAgc3RyaW5nLFxuICAgICAgICBJUGVwU21hcnRGaWx0ZXJEYXRhXG4gICAgPigpO1xuXG4gICAgcHJpdmF0ZSBfZmlsdGVyczogSVBlcFNtYXJ0RmlsdGVyRGF0YVtdID0gW107XG4gICAgQElucHV0KClcbiAgICBzZXQgZmlsdGVycyh2YWx1ZTogSVBlcFNtYXJ0RmlsdGVyRGF0YVtdKSB7XG4gICAgICAgIHRoaXMuX2ZpbHRlcnMgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5zZXR1cEZpbHRlcnModmFsdWUpO1xuICAgIH1cbiAgICBnZXQgZmlsdGVycygpOiBJUGVwU21hcnRGaWx0ZXJEYXRhW10ge1xuICAgICAgICB0aGlzLl9maWx0ZXJzID0gWy4uLnRoaXMuZmlsdGVyc0RhdGFNYXAua2V5cygpXVxuICAgICAgICAgICAgLy8gLmZpbHRlcigoa2V5KSA9PiB0aGlzLmZpbHRlcnNEYXRhTWFwLmdldChrZXkpICE9PSBudWxsKVxuICAgICAgICAgICAgLm1hcCgoa2V5KSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGtleSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5maWx0ZXJzRGF0YU1hcC5nZXQoa2V5KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICByZXR1cm4gdGhpcy5fZmlsdGVycztcbiAgICB9XG5cbiAgICBwcml2YXRlIF9maWVsZHM6IEFycmF5PElQZXBTbWFydEZpbHRlckZpZWxkPiA9IFtdO1xuICAgIEBJbnB1dCgpXG4gICAgc2V0IGZpZWxkcyh2YWx1ZTogQXJyYXk8SVBlcFNtYXJ0RmlsdGVyRmllbGQ+KSB7XG4gICAgICAgIHRoaXMuX2ZpZWxkcyA9IHZhbHVlO1xuICAgIH1cbiAgICBnZXQgZmllbGRzKCk6IEFycmF5PElQZXBTbWFydEZpbHRlckZpZWxkPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9maWVsZHM7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBfdXNlQXNXZWJDb21wb25lbnQgPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIHNldCB1c2VBc1dlYkNvbXBvbmVudCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuZXhwb3J0RnVuY3Rpb25zT25Ib3N0RWxlbWVudCgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIGdldCB1c2VBc1dlYkNvbXBvbmVudCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3VzZUFzV2ViQ29tcG9uZW50O1xuICAgIH1cblxuICAgIC8vIEBPdXRwdXQoKVxuICAgIC8vIGZpbHRlcnNDbGVhcjogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICAgIEBPdXRwdXQoKVxuICAgIGZpbHRlcnNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxJUGVwU21hcnRGaWx0ZXJEYXRhW10+ID0gbmV3IEV2ZW50RW1pdHRlcjxcbiAgICAgICAgSVBlcFNtYXJ0RmlsdGVyRGF0YVtdXG4gICAgPigpO1xuXG4gICAgQE91dHB1dCgpXG4gICAgZmllbGRUb2dnbGVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxJUGVwU21hcnRGaWx0ZXJGaWVsZD4gPSBuZXcgRXZlbnRFbWl0dGVyPElQZXBTbWFydEZpbHRlckZpZWxkPigpO1xuXG4gICAgZXhwYW5zaW9uUGFuZWxIZWFkZXJIZWlnaHQgPSAnKic7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBob3N0RWxlbWVudDogRWxlbWVudFJlZixcbiAgICAgICAgcHVibGljIGxheW91dFNlcnZpY2U6IFBlcExheW91dFNlcnZpY2VcbiAgICApIHsgfVxuXG4gICAgcHJpdmF0ZSBleHBvcnRGdW5jdGlvbnNPbkhvc3RFbGVtZW50KCkge1xuICAgICAgICAvLyBUaGlzIGlzIGZvciB3ZWIgY29tcG9uZW50IHVzYWdlIGZvciB1c2UgdGhvc2UgZnVuY3Rpb25zLlxuICAgICAgICB0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2xlYXJGaWx0ZXJzID0gdGhpcy5jbGVhckZpbHRlcnMuYmluZChcbiAgICAgICAgICAgIHRoaXNcbiAgICAgICAgKTtcbiAgICAgICAgdGhpcy5ob3N0RWxlbWVudC5uYXRpdmVFbGVtZW50LmNsZWFyRmlsdGVyID0gdGhpcy5jbGVhckZpbHRlci5iaW5kKFxuICAgICAgICAgICAgdGhpc1xuICAgICAgICApO1xuICAgICAgICB0aGlzLmhvc3RFbGVtZW50Lm5hdGl2ZUVsZW1lbnQudG9nZ2xlRmllbGQgPSB0aGlzLnRvZ2dsZUZpZWxkLmJpbmQoXG4gICAgICAgICAgICB0aGlzXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXR1cEZpbHRlcnModmFsdWU6IElQZXBTbWFydEZpbHRlckRhdGFbXSkge1xuICAgICAgICB0aGlzLmZpbHRlcnNEYXRhTWFwLmNsZWFyKCk7XG4gICAgICAgIGlmICh2YWx1ZSkge1xuICAgICAgICAgICAgdmFsdWUuZm9yRWFjaCgoZmlsdGVyKSA9PiB7XG4gICAgICAgICAgICAgICAgLy8gVmFsaWRhdGUgYmVmb3JlIGFkZCB0aGUgZmlsdGVyIGludG8gdGhlIG1hcC5cbiAgICAgICAgICAgICAgICBsZXQgY3VycmVudEZpZWxkID0gbnVsbDtcblxuICAgICAgICAgICAgICAgIGlmICh0aGlzLmZpZWxkcyAmJiB0aGlzLmZpZWxkcy5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbnRGaWVsZCA9IHRoaXMuZmllbGRzLmZpbmQoXG4gICAgICAgICAgICAgICAgICAgICAgICAoZmllbGQpID0+IGZpZWxkLmlkID09PSBmaWx0ZXIuZmllbGRJZFxuICAgICAgICAgICAgICAgICAgICApIGFzIFBlcFNtYXJ0RmlsdGVyQmFzZUZpZWxkO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIGlmIChjdXJyZW50RmllbGQpIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gT25seSBpZiB0aGUgb3BlcmF0b3IgaXMgZnJvbSB0aGUgc2FtZSB0eXBlXG4gICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbHRlci5vcGVyYXRvci5jb21wb25lbnRUeXBlLmluY2x1ZGVzKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnJlbnRGaWVsZC5jb21wb25lbnRUeXBlXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGlzT3BlcmF0b3JVbml0VmFsaWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGZpbHRlci5vcGVyYXRvclVuaXQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBPbmx5IGlmIHRoZSBvcGVyYXRvciB1bml0IGlzIG5vdCBmcm9tIHRoZSBzYW1lIHR5cGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICFmaWx0ZXIub3BlcmF0b3JVbml0LmNvbXBvbmVudFR5cGUuaW5jbHVkZXMoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXJyZW50RmllbGQuY29tcG9uZW50VHlwZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzT3BlcmF0b3JVbml0VmFsaWQgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEFkZCB0aGUgZmlsdGVyLlxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGlzT3BlcmF0b3JVbml0VmFsaWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbHRlcnNEYXRhTWFwLnNldChmaWx0ZXIuZmllbGRJZCwgZmlsdGVyKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByYWlzZUZpbHRlcnNDaGFuZ2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmlsdGVyc0NoYW5nZS5lbWl0KHRoaXMuZmlsdGVycyk7XG4gICAgfVxuXG4gICAgdG9nZ2xlRmllbGQoaW5kZXg6IG51bWJlciwgaXNPcGVuOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmllbGRzW2luZGV4XS5pc09wZW4gPSBpc09wZW47XG4gICAgICAgIHRoaXMuZmllbGRUb2dnbGVDaGFuZ2UuZW1pdCh0aGlzLmZpZWxkc1tpbmRleF0pO1xuICAgIH1cblxuICAgIGNsZWFyRmlsdGVycygpIHtcbiAgICAgICAgdGhpcy5maWx0ZXJzRGF0YU1hcC5jbGVhcigpO1xuICAgIH1cblxuICAgIGNsZWFyRmlsdGVyKGZpZWxkSWQ6IHN0cmluZykge1xuICAgICAgICB0aGlzLmZpbHRlcnNEYXRhTWFwLmRlbGV0ZShmaWVsZElkKTtcbiAgICB9XG5cbiAgICAvLyBDbGVhciBhbGwgdGhlIGZpbHRlcnMgYW5kIHJhaXNlIGV2ZW50IHRoYXQgZmlsdGVycyBoYXMgY2hhbmdlLlxuICAgIG9uRmlsdGVyc0NsZWFyKCkge1xuICAgICAgICB0aGlzLmNsZWFyRmlsdGVycygpO1xuICAgICAgICB0aGlzLnJhaXNlRmlsdGVyc0NoYW5nZSgpO1xuICAgIH1cblxuICAgIC8vIENsZWFyIHRoZSBmaWx0ZXIgYW5kIHJhaXNlIGV2ZW50IHRoYXQgZmlsdGVycyBoYXMgY2hhbmdlLlxuICAgIG9uRmlsdGVyQ2xlYXIoZmllbGQ6IElQZXBTbWFydEZpbHRlckZpZWxkKSB7XG4gICAgICAgIHRoaXMuY2xlYXJGaWx0ZXIoZmllbGQuaWQpO1xuICAgICAgICB0aGlzLnJhaXNlRmlsdGVyc0NoYW5nZSgpO1xuICAgIH1cblxuICAgIC8vIFNldCB0aGUgZmlsdGVyIGFuZCByYWlzZSBldmVudCB0aGF0IGZpbHRlcnMgaGFzIGNoYW5nZS5cbiAgICBvbkZpbHRlckNoYW5nZShcbiAgICAgICAgZmllbGQ6IElQZXBTbWFydEZpbHRlckZpZWxkLFxuICAgICAgICBmaWx0ZXJEYXRhOiBJUGVwU21hcnRGaWx0ZXJEYXRhXG4gICAgKSB7XG4gICAgICAgIHRoaXMuY2xlYXJGaWx0ZXIoZmllbGQuaWQpO1xuICAgICAgICB0aGlzLmZpbHRlcnNEYXRhTWFwLnNldChmaWVsZC5pZCwgZmlsdGVyRGF0YSk7XG4gICAgICAgIHRoaXMucmFpc2VGaWx0ZXJzQ2hhbmdlKCk7XG4gICAgfVxufVxuIl19
|
|
@@ -17,13 +17,10 @@ import { PepDateModule } from '@pepperi-addons/ngx-lib/date';
|
|
|
17
17
|
import { PepSelectModule } from '@pepperi-addons/ngx-lib/select';
|
|
18
18
|
import { PepTextboxModule } from '@pepperi-addons/ngx-lib/textbox';
|
|
19
19
|
import { PepSearchModule } from '@pepperi-addons/ngx-lib/search';
|
|
20
|
-
import { PepButtonModule } from '@pepperi-addons/ngx-lib/button';
|
|
21
20
|
import { PepIconModule, PepIconRegistry, pepIconNumberMinus, pepIconNumberPlus, } from '@pepperi-addons/ngx-lib/icon';
|
|
22
|
-
import { PepGroupButtonsModule } from '@pepperi-addons/ngx-lib/group-buttons';
|
|
23
21
|
// import { BaseFilterComponent } from './common/model/base-filter-component';
|
|
24
22
|
import { PepSmartFiltersComponent } from './smart-filters.component';
|
|
25
23
|
import { PepFilterActionsComponent } from './common/filter-actions.component';
|
|
26
|
-
import { PepTextFilterComponent } from './text-filter/text-filter.component';
|
|
27
24
|
import { PepBooleanFilterComponent } from './boolean-filter/boolean-filter.component';
|
|
28
25
|
import { PepDateFilterComponent } from './date-filter/date-filter.component';
|
|
29
26
|
import { PepMultiSelectFilterComponent } from './multi-select-filter/multi-select-filter.component';
|
|
@@ -62,30 +59,20 @@ PepSmartFiltersModule.decorators = [
|
|
|
62
59
|
PepTextboxModule,
|
|
63
60
|
PepSearchModule,
|
|
64
61
|
PepIconModule,
|
|
65
|
-
PepButtonModule,
|
|
66
|
-
PepGroupButtonsModule
|
|
67
|
-
],
|
|
68
|
-
exports: [
|
|
69
|
-
PepSmartFiltersComponent,
|
|
70
|
-
PepTextFilterComponent,
|
|
71
|
-
PepBooleanFilterComponent,
|
|
72
|
-
PepDateFilterComponent,
|
|
73
|
-
PepMultiSelectFilterComponent,
|
|
74
|
-
PepNumberFilterComponent
|
|
75
62
|
],
|
|
63
|
+
exports: [PepSmartFiltersComponent],
|
|
76
64
|
declarations: [
|
|
77
65
|
// BaseFilterComponent,
|
|
78
66
|
PepSmartFiltersComponent,
|
|
79
67
|
PepFilterActionsComponent,
|
|
80
|
-
PepTextFilterComponent,
|
|
81
68
|
PepBooleanFilterComponent,
|
|
82
69
|
PepDateFilterComponent,
|
|
83
70
|
PepMultiSelectFilterComponent,
|
|
84
|
-
PepNumberFilterComponent
|
|
71
|
+
PepNumberFilterComponent,
|
|
85
72
|
],
|
|
86
73
|
},] }
|
|
87
74
|
];
|
|
88
75
|
PepSmartFiltersModule.ctorParameters = () => [
|
|
89
76
|
{ type: PepIconRegistry }
|
|
90
77
|
];
|
|
91
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic21hcnQtZmlsdGVycy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3NtYXJ0LWZpbHRlcnMvc21hcnQtZmlsdGVycy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV6RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDckUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDakUsT0FBTyxFQUNILGFBQWEsRUFDYixlQUFlLEVBQ2Ysa0JBQWtCLEVBQ2xCLGlCQUFpQixHQUNwQixNQUFNLDhCQUE4QixDQUFDO0FBRXRDLDhFQUE4RTtBQUM5RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNyRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUN0RixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUNwRyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQXNDbkYsTUFBTSxPQUFPLHFCQUFxQjtJQUM5QixZQUFvQixlQUFnQztRQUFoQyxvQkFBZSxHQUFmLGVBQWUsQ0FBaUI7UUFDaEQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxhQUFhLENBQUM7WUFDL0Isa0JBQWtCO1lBQ2xCLGlCQUFpQjtTQUNwQixDQUFDLENBQUM7SUFDUCxDQUFDOzs7WUExQ0osUUFBUSxTQUFDO2dCQUNOLE9BQU8sRUFBRTtvQkFDTCxZQUFZO29CQUNaLG1CQUFtQjtvQkFDbkIsZ0JBQWdCO29CQUNoQixtQkFBbUI7b0JBQ25CLGVBQWU7b0JBQ2YsaUJBQWlCO29CQUNqQixjQUFjO29CQUNkLGtCQUFrQjtvQkFDbEIsYUFBYTtvQkFDYixrQkFBa0I7b0JBQ2xCLGNBQWM7b0JBQ2QsY0FBYztvQkFDZCxtQkFBbUI7b0JBQ25CLHFCQUFxQjtvQkFDckIsa0JBQWtCO29CQUNsQixlQUFlO29CQUNmLGlCQUFpQjtvQkFDakIsYUFBYTtvQkFDYixlQUFlO29CQUNmLGdCQUFnQjtvQkFDaEIsZUFBZTtvQkFDZixhQUFhO2lCQUNoQjtnQkFDRCxPQUFPLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztnQkFDbkMsWUFBWSxFQUFFO29CQUNWLHVCQUF1QjtvQkFDdkIsd0JBQXdCO29CQUN4Qix5QkFBeUI7b0JBQ3pCLHlCQUF5QjtvQkFDekIsc0JBQXNCO29CQUN0Qiw2QkFBNkI7b0JBQzdCLHdCQUF3QjtpQkFDM0I7YUFDSjs7O1lBaERHLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBGbGV4TGF5b3V0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZmxleC1sYXlvdXQnO1xuXG5pbXBvcnQgeyBNYXRDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1hdENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xuaW1wb3J0IHsgTWF0Q2hpcHNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jaGlwcyc7XG5pbXBvcnQgeyBNYXRFeHBhbnNpb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9leHBhbnNpb24nO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRJbnB1dE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcbmltcG9ydCB7IE1hdFJhZGlvTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcmFkaW8nO1xuXG5pbXBvcnQgeyBWaXJ0dWFsU2Nyb2xsZXJNb2R1bGUgfSBmcm9tICduZ3gtdmlydHVhbC1zY3JvbGxlcic7XG5cbmltcG9ydCB7IFBlcE5neExpYk1vZHVsZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcbmltcG9ydCB7IFBlcENoZWNrYm94TW9kdWxlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvY2hlY2tib3gnO1xuaW1wb3J0IHsgUGVwRGF0ZU1vZHVsZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL2RhdGUnO1xuaW1wb3J0IHsgUGVwU2VsZWN0TW9kdWxlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvc2VsZWN0JztcbmltcG9ydCB7IFBlcFRleHRib3hNb2R1bGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi90ZXh0Ym94JztcbmltcG9ydCB7IFBlcFNlYXJjaE1vZHVsZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL3NlYXJjaCc7XG5pbXBvcnQge1xuICAgIFBlcEljb25Nb2R1bGUsXG4gICAgUGVwSWNvblJlZ2lzdHJ5LFxuICAgIHBlcEljb25OdW1iZXJNaW51cyxcbiAgICBwZXBJY29uTnVtYmVyUGx1cyxcbn0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvaWNvbic7XG5cbi8vIGltcG9ydCB7IEJhc2VGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbW1vbi9tb2RlbC9iYXNlLWZpbHRlci1jb21wb25lbnQnO1xuaW1wb3J0IHsgUGVwU21hcnRGaWx0ZXJzQ29tcG9uZW50IH0gZnJvbSAnLi9zbWFydC1maWx0ZXJzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQZXBGaWx0ZXJBY3Rpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9jb21tb24vZmlsdGVyLWFjdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7IFBlcEJvb2xlYW5GaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL2Jvb2xlYW4tZmlsdGVyL2Jvb2xlYW4tZmlsdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQZXBEYXRlRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9kYXRlLWZpbHRlci9kYXRlLWZpbHRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGVwTXVsdGlTZWxlY3RGaWx0ZXJDb21wb25lbnQgfSBmcm9tICcuL211bHRpLXNlbGVjdC1maWx0ZXIvbXVsdGktc2VsZWN0LWZpbHRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGVwTnVtYmVyRmlsdGVyQ29tcG9uZW50IH0gZnJvbSAnLi9udW1iZXItZmlsdGVyL251bWJlci1maWx0ZXIuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIENvbW1vbk1vZHVsZSxcbiAgICAgICAgUmVhY3RpdmVGb3Jtc01vZHVsZSxcbiAgICAgICAgRmxleExheW91dE1vZHVsZSxcbiAgICAgICAgLy8gTWF0ZXJpYWwgbW9kdWxlc1xuICAgICAgICBNYXRDb21tb25Nb2R1bGUsXG4gICAgICAgIE1hdENoZWNrYm94TW9kdWxlLFxuICAgICAgICBNYXRDaGlwc01vZHVsZSxcbiAgICAgICAgTWF0RXhwYW5zaW9uTW9kdWxlLFxuICAgICAgICBNYXRJY29uTW9kdWxlLFxuICAgICAgICBNYXRGb3JtRmllbGRNb2R1bGUsXG4gICAgICAgIE1hdElucHV0TW9kdWxlLFxuICAgICAgICBNYXRSYWRpb01vZHVsZSxcbiAgICAgICAgLy8gRXh0ZXJuYWwgbW9kdWxlc1xuICAgICAgICBWaXJ0dWFsU2Nyb2xsZXJNb2R1bGUsXG4gICAgICAgIC8vIG5neC1saWIgbW9kdWxlc1xuICAgICAgICBQZXBOZ3hMaWJNb2R1bGUsXG4gICAgICAgIFBlcENoZWNrYm94TW9kdWxlLFxuICAgICAgICBQZXBEYXRlTW9kdWxlLFxuICAgICAgICBQZXBTZWxlY3RNb2R1bGUsXG4gICAgICAgIFBlcFRleHRib3hNb2R1bGUsXG4gICAgICAgIFBlcFNlYXJjaE1vZHVsZSxcbiAgICAgICAgUGVwSWNvbk1vZHVsZSxcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtQZXBTbWFydEZpbHRlcnNDb21wb25lbnRdLFxuICAgIGRlY2xhcmF0aW9uczogW1xuICAgICAgICAvLyBCYXNlRmlsdGVyQ29tcG9uZW50LFxuICAgICAgICBQZXBTbWFydEZpbHRlcnNDb21wb25lbnQsXG4gICAgICAgIFBlcEZpbHRlckFjdGlvbnNDb21wb25lbnQsXG4gICAgICAgIFBlcEJvb2xlYW5GaWx0ZXJDb21wb25lbnQsXG4gICAgICAgIFBlcERhdGVGaWx0ZXJDb21wb25lbnQsXG4gICAgICAgIFBlcE11bHRpU2VsZWN0RmlsdGVyQ29tcG9uZW50LFxuICAgICAgICBQZXBOdW1iZXJGaWx0ZXJDb21wb25lbnQsXG4gICAgXSxcbn0pXG5leHBvcnQgY2xhc3MgUGVwU21hcnRGaWx0ZXJzTW9kdWxlIHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBlcEljb25SZWdpc3RyeTogUGVwSWNvblJlZ2lzdHJ5KSB7XG4gICAgICAgIHRoaXMucGVwSWNvblJlZ2lzdHJ5LnJlZ2lzdGVySWNvbnMoW1xuICAgICAgICAgICAgcGVwSWNvbk51bWJlck1pbnVzLFxuICAgICAgICAgICAgcGVwSWNvbk51bWJlclBsdXMsXG4gICAgICAgIF0pO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export * from './textarea.module';
|
|
5
5
|
export * from './textarea.component';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
6
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvdGV4dGFyZWEvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGNBQWMsbUJBQW1CLENBQUM7QUFDbEMsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygbmd4LWxpYi90ZXh0YXJlYVxuICovXG5leHBvcnQgKiBmcm9tICcuL3RleHRhcmVhLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL3RleHRhcmVhLmNvbXBvbmVudCc7XG4iXX0=
|