@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
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pepperi-addons-ngx-lib-query-builder.umd.js","sources":["../../../projects/ngx-lib/query-builder/common/model/operator.ts","../../../projects/ngx-lib/query-builder/common/services/type-convertor.service.ts","../../../projects/ngx-lib/query-builder/query-builder-section/query-builder-section.component.ts","../../../projects/ngx-lib/query-builder/query-builder-item/query-builder-item.component.ts","../../../projects/ngx-lib/query-builder/common/model/type-map.ts","../../../projects/ngx-lib/query-builder/common/model/operator-unit.ts","../../../projects/ngx-lib/query-builder/common/services/output-query.service.ts","../../../projects/ngx-lib/query-builder/common/model/type.ts","../../../projects/ngx-lib/query-builder/query-builder.service.ts","../../../projects/ngx-lib/query-builder/query-builder.component.ts","../../../projects/ngx-lib/query-builder/query-builder.module.ts","../../../projects/ngx-lib/query-builder/public-api.ts","../../../projects/ngx-lib/query-builder/pepperi-addons-ngx-lib-query-builder.ts"],"sourcesContent":["import { PepSmartFilterOperators, IPepSmartFilterOperator } from '@pepperi-addons/ngx-lib/smart-filters';\r\nimport { PepSmartFilterType } from '@pepperi-addons/ngx-lib/smart-filters';\r\n\r\nexport interface IPepQueryBuilderOperator {\r\n legacy: string, //legacy Operator \r\n smartFilter: IPepSmartFilterOperator, //smart filter operator \r\n type: PepSmartFilterType[] | null //smart filter type\r\n}\r\n\r\nconst Equals: IPepQueryBuilderOperator = {\r\n legacy: 'IsEqual',\r\n smartFilter: PepSmartFilterOperators.Equals,\r\n type: ['boolean', 'int', 'text']\r\n};\r\n\r\nconst NotEqual: IPepQueryBuilderOperator = {\r\n legacy: 'IsNotEqual',\r\n smartFilter: PepSmartFilterOperators.NotEqual,\r\n type: null\r\n};\r\n\r\nconst LessThan: IPepQueryBuilderOperator = {\r\n legacy: '<',\r\n smartFilter: PepSmartFilterOperators.LessThan,\r\n type: null\r\n};\r\n\r\nconst GreaterThan: IPepQueryBuilderOperator = {\r\n legacy: '>',\r\n smartFilter: PepSmartFilterOperators.GreaterThan,\r\n type: null\r\n};\r\n\r\n/*\r\nconst GreaterThanOrEquals: IPepQueryBuilderOperator = {\r\n legacy: {\r\n operator: '>=',\r\n type: 'Integer'\r\n },\r\n smartFilter: {\r\n item: PepSmartFilterOperators.GreaterThanOrEquals,\r\n type: 'int'\r\n }\r\n};\r\n\r\nconst LessThanOrEquals: IPepQueryBuilderOperator = {\r\n legacy: {\r\n operator: '<=',\r\n type: 'Integer'\r\n },\r\n smartFilter: {\r\n item: PepSmartFilterOperators.LessThanOrEquals,\r\n type: 'int',\r\n type: 'Integer'\r\n }\r\n}; */\r\n\r\nconst NumberRange: IPepQueryBuilderOperator = {\r\n legacy: 'Between',\r\n smartFilter: PepSmartFilterOperators.NumberRange,\r\n type: ['int']\r\n};\r\n\r\nconst Contains: IPepQueryBuilderOperator = {\r\n legacy: 'Contains',\r\n smartFilter: PepSmartFilterOperators.Contains,\r\n type: null\r\n};\r\n\r\n/*\r\nconst BeginsWith: IPepQueryBuilderOperator = {\r\n legacy: {\r\n operator: 'BeginsWith',\r\n type: 'String'\r\n },\r\n smartFilter: {\r\n item: PepSmartFilterOperators.BeginsWith,\r\n type: 'text'\r\n }\r\n};\r\n\r\nconst EndsWith: IPepQueryBuilderOperator = {\r\n legacy: {\r\n operator: 'EndsWith',\r\n type: 'String'\r\n },\r\n smartFilter: {\r\n item: PepSmartFilterOperators.EndsWith,\r\n type: 'text'\r\n }\r\n};\r\n\r\nconst Before: IPepQueryBuilderOperator = {\r\n legacy: {\r\n operator: 'Before',\r\n type: 'Date'\r\n },\r\n smartFilter: {\r\n item: PepSmartFilterOperators.Before,\r\n type: 'date'\r\n }\r\n};\r\n\r\nconst After: IPepQueryBuilderOperator = {\r\n legacy: {\r\n operator: 'After',\r\n type: 'Date'\r\n },\r\n smartFilter: {\r\n item: PepSmartFilterOperators.After,\r\n type: 'date'\r\n }\r\n}; */\r\n\r\nconst InTheLast: IPepQueryBuilderOperator = {\r\n legacy: 'InTheLast',\r\n smartFilter: PepSmartFilterOperators.InTheLast,\r\n type: null\r\n};\r\n\r\nconst NotInTheLast: IPepQueryBuilderOperator = {\r\n legacy: 'NotInTheLast',\r\n smartFilter: PepSmartFilterOperators.NotInTheLast,\r\n type: null\r\n};\r\n\r\nconst Today: IPepQueryBuilderOperator = {\r\n legacy: 'Today',\r\n smartFilter: PepSmartFilterOperators.Today,\r\n type: null\r\n};\r\n\r\nconst ThisWeek: IPepQueryBuilderOperator = {\r\n legacy: 'ThisWeek',\r\n smartFilter: PepSmartFilterOperators.ThisWeek,\r\n type: null\r\n};\r\n\r\nconst ThisMonth: IPepQueryBuilderOperator = {\r\n legacy: 'ThisMonth',\r\n smartFilter: PepSmartFilterOperators.ThisMonth,\r\n type: null\r\n};\r\n\r\nconst DateRange: IPepQueryBuilderOperator = {\r\n legacy: 'Between',\r\n smartFilter: PepSmartFilterOperators.DateRange,\r\n type: ['date-time']\r\n};\r\n\r\nconst DueIn: IPepQueryBuilderOperator = {\r\n legacy: 'DueIn',\r\n smartFilter: PepSmartFilterOperators.DueIn,\r\n type: null\r\n};\r\n\r\nconst NotDueIn: IPepQueryBuilderOperator = {\r\n legacy: 'NotDueIn',\r\n smartFilter: PepSmartFilterOperators.NotDueIn,\r\n type: null\r\n};\r\n\r\nconst On: IPepQueryBuilderOperator = {\r\n legacy: 'On',\r\n smartFilter: PepSmartFilterOperators.On,\r\n type: null\r\n};\r\n\r\nconst IsEmpty: IPepQueryBuilderOperator = {\r\n legacy: 'IsEmpty',\r\n smartFilter: PepSmartFilterOperators.IsEmpty,\r\n type: null\r\n};\r\n\r\nconst IsNotEmpty: IPepQueryBuilderOperator = {\r\n legacy: 'IsNotEmpty',\r\n smartFilter: PepSmartFilterOperators.IsNotEmpty,\r\n type: null\r\n};\r\n\r\nconst In: IPepQueryBuilderOperator = {\r\n legacy: 'IsEqual',\r\n smartFilter: PepSmartFilterOperators.In,\r\n type: ['multi-select']\r\n};\r\n\r\n\r\nconst PepQueryBuilderOperators = [\r\n Equals,\r\n NotEqual,\r\n LessThan,\r\n // LessThanOrEquals,\r\n GreaterThan,\r\n // GreaterThanOrEquals,\r\n NumberRange,\r\n Contains,\r\n // BeginsWith,\r\n // EndsWith,\r\n // After,\r\n // Before,\r\n InTheLast,\r\n NotInTheLast,\r\n Today,\r\n ThisWeek,\r\n ThisMonth,\r\n DateRange,\r\n DueIn,\r\n NotDueIn,\r\n On,\r\n IsEmpty,\r\n IsNotEmpty,\r\n In\r\n]\r\n\r\n/**\r\n * gets a smart filter operator item\r\n * @param operator legacy operator\r\n * @param type smart filter's type\r\n * @returns smart filter operator item\r\n */\r\nexport function getSmartBuilderOperator(operator: string, type: PepSmartFilterType): IPepSmartFilterOperator | null {\r\n const smartFilterOperator = PepQueryBuilderOperators.find(item =>\r\n item.legacy === operator &&\r\n (item.type === null || item.type.includes(type))\r\n );\r\n return smartFilterOperator ? smartFilterOperator.smartFilter : null;\r\n}\r\n\r\n/**\r\n * gets a legacy operator value\r\n * @param operator smart filter operator item\r\n * @param type smart filter's type\r\n * @returns legacy operator value\r\n */\r\nexport function getLegacyOperator(operator: IPepSmartFilterOperator, type: PepSmartFilterType): string | null {\r\n const legacyOperator = PepQueryBuilderOperators.find(item =>\r\n item.smartFilter === operator &&\r\n (item.type === null || item.type.includes(type))\r\n );\r\n return legacyOperator ? legacyOperator.legacy : null;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { IPepOption } from '@pepperi-addons/ngx-lib';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PepTypeConvertorService {\r\n private readonly _operators: IPepOption[] = [];\r\n private readonly _booleans: IPepOption[] = [];\r\n\r\n public get operators(): IPepOption[] {\r\n return this._operators;\r\n }\r\n\r\n public get booleans(): IPepOption[] {\r\n return this._booleans;\r\n }\r\n\r\n constructor() {\r\n this.initOperators();\r\n this.initBooleans();\r\n }\r\n\r\n private initOperators() {\r\n this._operators.push({\r\n key: 'AND',\r\n value: 'And'\r\n });\r\n this._operators.push({\r\n key: 'OR',\r\n value: 'Or'\r\n });\r\n }\r\n\r\n private initBooleans() {\r\n this._booleans.push({\r\n key: 'True',\r\n value: 'True'\r\n });\r\n this._booleans.push({\r\n key: 'False',\r\n value: 'False'\r\n });\r\n }\r\n\r\n}","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n ViewChild,\r\n ViewContainerRef\r\n} from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport {\r\n IPepButtonClickEvent,\r\n PepButton,\r\n} from '@pepperi-addons/ngx-lib/button';\r\nimport { IPepOption } from '@pepperi-addons/ngx-lib';\r\nimport { PepTypeConvertorService } from '../common/services/type-convertor.service';\r\nimport { IPepQueryDepth } from '../common/model/structure';\r\n\r\n@Component({\r\n selector: 'pep-query-builder-section',\r\n templateUrl: './query-builder-section.component.html',\r\n styleUrls: ['./query-builder-section.component.scss'],\r\n})\r\nexport class PepQueryBuilderSectionComponent {\r\n @Input() form: FormGroup;\r\n @Input() depth: IPepQueryDepth;\r\n @Input() hasFields = true;\r\n\r\n @Output()\r\n createSection = new EventEmitter();\r\n @Output()\r\n createItem = new EventEmitter();\r\n @Output()\r\n remove = new EventEmitter();\r\n @Output()\r\n operatorChange = new EventEmitter();\r\n\r\n @ViewChild('sectionContainer', { read: ViewContainerRef, static: true }) sectionContainer: ViewContainerRef;\r\n\r\n toggleButtons: Array<PepButton>;\r\n\r\n constructor(private _typeConvertorService: PepTypeConvertorService) {\r\n }\r\n\r\n ngOnInit() {\r\n this.initOperators();\r\n }\r\n\r\n get f() {\r\n return this.form.controls;\r\n }\r\n\r\n initOperators() {\r\n this.toggleButtons = this._typeConvertorService.operators.map((operator: IPepOption) => {\r\n return {\r\n key: operator.key,\r\n value: operator.value,\r\n callback: (event: IPepButtonClickEvent) =>\r\n this.onOperatorChanged(event)\r\n } as PepButton\r\n });\r\n }\r\n\r\n onOperatorChanged(event) {\r\n if (event?.source?.key) {\r\n this.f.operator.setValue(event.source.key);\r\n this.operatorChange.emit();\r\n }\r\n }\r\n\r\n onAddRuleClicked() {\r\n this.createItem.emit();\r\n }\r\n\r\n onAddRuleSetClicked() {\r\n this.createSection.emit();\r\n }\r\n\r\n onDeleteSectionClicked() {\r\n this.remove.emit();\r\n }\r\n\r\n\r\n}\r\n","import { Component, EventEmitter, Input, Output } from '@angular/core';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { PepSmartFilterBaseField, IPepSmartFilterField } from '@pepperi-addons/ngx-lib/smart-filters';\r\nimport { IPepSmartFilterData } from '@pepperi-addons/ngx-lib/smart-filters';\r\nimport { IPepOption } from '@pepperi-addons/ngx-lib';\r\nimport { PepTypeConvertorService } from '../common/services/type-convertor.service';\r\n\r\n@Component({\r\n selector: 'pep-query-builder-item',\r\n templateUrl: './query-builder-item.component.html',\r\n styleUrls: ['./query-builder-item.component.scss'],\r\n})\r\nexport class PepQueryBuilderItemComponent {\r\n @Input() formKey: string;\r\n _fields: Array<any> = [];\r\n _options: IPepOption[] = [];\r\n @Input()\r\n set fields(list: Array<IPepSmartFilterField>) {\r\n if (list?.length > 0) {\r\n this._fields = list;\r\n this._options = list.map(field => {\r\n return {\r\n key: field.id,\r\n value: field.name\r\n }\r\n })\r\n }\r\n }\r\n _selectedField: PepSmartFilterBaseField = null;\r\n @Input()\r\n set selected(value: any) {\r\n if (value) {\r\n this._selectedField = value;\r\n }\r\n }\r\n _filter: IPepSmartFilterData;\r\n @Input()\r\n set filter(value: IPepSmartFilterData) {\r\n if (value) {\r\n this._filter = value;\r\n }\r\n }\r\n _parentForm: FormGroup;\r\n @Input()\r\n set parentForm(value: FormGroup) {\r\n if (value) {\r\n this._parentForm = value;\r\n this.addToParentForm();\r\n }\r\n }\r\n\r\n @Output()\r\n filterChange = new EventEmitter();\r\n @Output()\r\n remove = new EventEmitter();\r\n\r\n form: FormGroup;\r\n\r\n constructor(\r\n private _fb: FormBuilder,\r\n public typeConvertorService: PepTypeConvertorService\r\n ) {\r\n this.setupForm();\r\n }\r\n\r\n ngOnInit() {\r\n //\r\n }\r\n\r\n setupForm() {\r\n this.form = this._fb.group({\r\n fieldId: this._fb.control(null),\r\n fieldType: this._fb.control(null),\r\n operator: this._fb.control(null),\r\n operatorUnit: this._fb.control(null),\r\n values: this._fb.group({\r\n first: this._fb.control(null),\r\n second: this._fb.control(null)\r\n }),\r\n });\r\n }\r\n\r\n addToParentForm() {\r\n this._parentForm.setControl(this.formKey, this.form);\r\n }\r\n\r\n onFieldChanged(key) {\r\n const item = this._fields.find(field => field.id === key);\r\n\r\n this.setupForm();\r\n this.addToParentForm();\r\n\r\n /**\r\n * hack due to angular's change detection bug -\r\n * ERROR Error: There is no FormControl instance attached to form control element with name: [formControlName]\r\n */\r\n this._selectedField = null;\r\n setTimeout(() => {\r\n this._selectedField = item ? item : null;\r\n }, 0);\r\n\r\n this._filter = null;\r\n }\r\n\r\n onFilterChanged() {\r\n if (this.form.valid) {\r\n this.filterChange.emit();\r\n }\r\n }\r\n\r\n onDeleteItemClicked() {\r\n this.remove.emit();\r\n }\r\n\r\n\r\n\r\n}\r\n","import { PepSmartFilterType } from '@pepperi-addons/ngx-lib/smart-filters';\r\n\r\n\r\nexport class PepQueryBuilderTypeMap {\r\n private map: Map<string, PepSmartFilterType>;\r\n\r\n constructor() {\r\n this.loadTypes();\r\n }\r\n\r\n private loadTypes() {\r\n this.map = new Map<string, PepSmartFilterType>();\r\n this.map.set('Bool', 'boolean');\r\n this.map.set('JsonBool', 'boolean');\r\n this.map.set('Integer', 'int');\r\n this.map.set('Double', 'int');\r\n this.map.set('String', 'text');\r\n this.map.set('Guid', 'text');\r\n this.map.set('Date', 'date');\r\n this.map.set('DateTime', 'date-time');\r\n this.map.set('MultipleStringValues', 'multi-select');\r\n }\r\n\r\n /**\r\n * Converts legacy field type to smart builder type\r\n * @param type legacy type\r\n * @returns smart builder field type\r\n */\r\n getSmartBuilderType(key: string): PepSmartFilterType | null {\r\n const item = this.map.get(key);\r\n return item ? item : null;\r\n }\r\n\r\n}\r\n\r\n","\r\nimport { IPepSmartFilterOperatorUnit, PepSmartFilterOperatorUnits } from '@pepperi-addons/ngx-lib/smart-filters';\r\n\r\ninterface IPepQueryBuilderOperationUnit {\r\n legacy: string,\r\n smartFilter: IPepSmartFilterOperatorUnit,\r\n}\r\n\r\nconst Days: IPepQueryBuilderOperationUnit = {\r\n legacy: 'Days',\r\n smartFilter: PepSmartFilterOperatorUnits.Days\r\n};\r\n\r\nconst Weeks: IPepQueryBuilderOperationUnit = {\r\n legacy: 'Weeks',\r\n smartFilter: PepSmartFilterOperatorUnits.Weeks\r\n};\r\n\r\nconst Months: IPepQueryBuilderOperationUnit = {\r\n legacy: 'Months',\r\n smartFilter: PepSmartFilterOperatorUnits.Months\r\n};\r\n\r\nconst Years: IPepQueryBuilderOperationUnit = {\r\n legacy: 'Years',\r\n smartFilter: PepSmartFilterOperatorUnits.Years\r\n};\r\n\r\nconst PepQueryBuilderOperationUnit = [\r\n Days,\r\n Weeks,\r\n Months,\r\n Years,\r\n];\r\n\r\n/**\r\n * gets a smart filter operation unit item\r\n * @param operationUnit legacy operation unit\r\n * @returns smart filter operation unit item\r\n */\r\nexport function getSmartBuilderOperationUnit(operationUnit: string): IPepSmartFilterOperatorUnit | null {\r\n const smartFilterOperationUnit: IPepQueryBuilderOperationUnit = PepQueryBuilderOperationUnit.find(unit => unit.legacy === operationUnit);\r\n return smartFilterOperationUnit ? smartFilterOperationUnit.smartFilter : null;\r\n}\r\n\r\n/**\r\n * gets a legacy operation unit value\r\n * @param operationUnit smart filter operation unit item\r\n * @returns legacy operation unit value\r\n */\r\nexport function getLegacyOperationUnit(operationUnit: IPepSmartFilterOperatorUnit): string | null {\r\n const legacyOperationUnit: IPepQueryBuilderOperationUnit = PepQueryBuilderOperationUnit.find(unit => unit.smartFilter === operationUnit);\r\n return legacyOperationUnit ? legacyOperationUnit.legacy : null;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { IPepQueryItem } from '../model/legacy';\r\nimport { getLegacyOperator } from '../model/operator';\r\nimport { getLegacyOperationUnit } from '../model/operator-unit';\r\nimport { PepSmartFilterOperators } from '@pepperi-addons/ngx-lib/smart-filters';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PepOutputQueryService {\r\n private _complexIdCounter: number;\r\n private _expressionIdCounter: number;\r\n\r\n constructor() {\r\n //\r\n }\r\n\r\n /**\r\n * generates a legacy query structure \r\n * @param filters UI smart filters structure \r\n * @returns legacy query\r\n */\r\n generateQuery(filters: any) {\r\n this.initParams();\r\n\r\n return this.sectionWalk(filters);\r\n }\r\n\r\n /**\r\n * init params\r\n */\r\n private initParams() {\r\n this._complexIdCounter = 1;\r\n this._expressionIdCounter = 1;\r\n }\r\n\r\n /**\r\n * a recursive function dynamically builds legacy query structure\r\n * @param current UI object represents either a section or filter component\r\n * @returns section query data\r\n */\r\n private sectionWalk(current: any) {\r\n let section: any = null;\r\n\r\n Object.keys(current).forEach(key => {\r\n if (key.includes('item')) {\r\n section = this.addToSection(section, {\r\n ExpressionId: (this._expressionIdCounter++).toString(),\r\n ApiName: current[key].fieldId,\r\n Operation: getLegacyOperator(current[key].operator, current[key].fieldType),\r\n Values: this.getItemValues(current[key])\r\n } as IPepQueryItem, current.operator);\r\n } else if (key.includes('section')) {\r\n const childSection = this.sectionWalk(current[key]);\r\n if (childSection) {\r\n section = this.addToSection(section, childSection, current.operator);\r\n }\r\n }\r\n });\r\n\r\n return section;\r\n }\r\n\r\n /**\r\n * adds a legacy filter object to the current query structure\r\n * @param section section query data\r\n * @param item filter item\r\n * @param operator query operator\r\n * @returns \r\n */\r\n private addToSection(section: any, item: any, operator: string): any {\r\n return section ? this.createSection(section, item, operator) : item;\r\n }\r\n\r\n /**\r\n * creates a legacy complex object\r\n * @param left LeftNode object\r\n * @param right RightNode object\r\n * @param operator query operator\r\n * @returns legacy complex object\r\n */\r\n private createSection(left: any, right: any, operator: string) {\r\n return {\r\n ComplexId: (this._complexIdCounter++).toString(),\r\n LeftNode: left,\r\n RightNode: right,\r\n Operation: operator\r\n }\r\n }\r\n\r\n /**\r\n * gets legacy filter values object\r\n * @param current UI filter object's values\r\n * @returns an array represents legacy values\r\n */\r\n private getItemValues(current: any) {\r\n let values: any[] = [];\r\n\r\n if (current?.values?.first) {\r\n if (current.operator === PepSmartFilterOperators.In) { //multi select \r\n values = current.values.first;\r\n } else if (\r\n current.operator === PepSmartFilterOperators.InTheLast ||\r\n current.operator === PepSmartFilterOperators.NotInTheLast ||\r\n current.operator === PepSmartFilterOperators.DueIn ||\r\n current.operator === PepSmartFilterOperators.NotDueIn\r\n ) { //operation unit \r\n values.push(current.values.first);\r\n if (current.operatorUnit) {\r\n values.push(getLegacyOperationUnit(current.operatorUnit));\r\n }\r\n } else {\r\n values.push(current.values.first);\r\n if (current.values.second) {\r\n values.push(current.values.second);\r\n }\r\n }\r\n }\r\n\r\n return values;\r\n }\r\n\r\n}","export enum PepOperatorTypes {\r\n And = 'AND',\r\n Or = 'OR'\r\n}\r\n","import { Injectable, ViewContainerRef, ComponentFactoryResolver } from '@angular/core';\r\nimport { FormBuilder, FormGroup } from '@angular/forms';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { } from 'lodash';\r\nimport { IPepQueryBuilderField, IPepQuerySection, IPepQueryItem } from './common/model/legacy';\r\nimport {\r\n IPepSmartFilterField,\r\n IPepSmartFilterData,\r\n PepSmartFilterOperators,\r\n IPepSmartFilterOperator,\r\n PepSmartFilterType,\r\n createSmartFilter,\r\n createSmartFilterField\r\n} from '@pepperi-addons/ngx-lib/smart-filters';\r\nimport { getSmartBuilderOperator } from './common/model/operator';\r\nimport { PepQueryBuilderSectionComponent } from './query-builder-section/query-builder-section.component';\r\nimport { PepQueryBuilderItemComponent } from './query-builder-item/query-builder-item.component';\r\nimport { PepQueryBuilderTypeMap } from './common/model/type-map';\r\nimport { getSmartBuilderOperationUnit } from './common/model/operator-unit';\r\nimport { PepOutputQueryService } from './common/services/output-query.service';\r\nimport { IPepQueryBuilderValues } from './common/model/filter';\r\nimport { PepOperatorTypes } from './common/model/type';\r\n\r\nconst MAX_STRUCTURE_DEPTH = 3;\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class PepQueryBuilderService {\r\n private _outputQuery$ = new BehaviorSubject<any>(null);\r\n\r\n private _smartFilterFields: Array<IPepSmartFilterField>;\r\n private _form: FormGroup;\r\n private _maxStructureDepth = MAX_STRUCTURE_DEPTH;\r\n\r\n public outputQuery$ = this._outputQuery$.asObservable();\r\n\r\n constructor(private _fb: FormBuilder, private _resolver: ComponentFactoryResolver, private _outputQueryService: PepOutputQueryService) {\r\n\r\n }\r\n\r\n set maxDepth(value) {\r\n this._maxStructureDepth = value;\r\n }\r\n\r\n get maxDepth() {\r\n return this._maxStructureDepth;\r\n }\r\n\r\n set fields(list: Array<IPepQueryBuilderField>) {\r\n this._smartFilterFields = this.convertToSmartFilterFields(list);\r\n }\r\n\r\n get hasFields(): boolean {\r\n return this._smartFilterFields?.length > 0;\r\n }\r\n\r\n set form(value: FormGroup) {\r\n this._form = value;\r\n }\r\n\r\n get form() {\r\n return this._form;\r\n }\r\n\r\n /**\r\n * builds a dynamic UI query structure\r\n * might has a different structure than the query's due to parent-child elements merge\r\n * @param query legacy query \r\n * @param containerRef reference to root element\r\n */\r\n buildQueryStructure(\r\n query: IPepQuerySection,\r\n containerRef: ViewContainerRef\r\n ) {\r\n //update root operator \r\n if (this.hasProperty(query, 'ComplexId') &&\r\n query?.Operation &&\r\n query.Operation !== this._form.get('operator').value) {\r\n this._form.get('operator').setValue(query.Operation);\r\n }\r\n this.flatten(null, query, containerRef, this._form, 1);\r\n }\r\n\r\n /**\r\n * checks if the object contains property\r\n * @param obj object\r\n * @param prop property name\r\n * @returns true if contains, false otherwise\r\n */\r\n private hasProperty(obj, prop) {\r\n return Object.prototype.hasOwnProperty.call(obj, prop);\r\n }\r\n\r\n /**\r\n * a recursive function dynamically builds UI filters structure\r\n * @param parent legacy complex object\r\n * @param current child legacy object (either another complex or expression type)\r\n * @param containerRef parent element\r\n * @param parentForm parent form\r\n */\r\n private flatten(parent: IPepQuerySection, current: IPepQuerySection | IPepQueryItem, containerRef: ViewContainerRef, parentForm: FormGroup, depth: number) {\r\n if (this.hasProperty(current, 'ComplexId')) {\r\n const section = current as IPepQuerySection;\r\n if (parent?.Operation === current.Operation) {\r\n this.flatten(parent, section.LeftNode, containerRef, parentForm, depth);\r\n this.flatten(parent, section.RightNode, containerRef, parentForm, depth);\r\n } else {\r\n const result = this.createSection(section.Operation, containerRef, parentForm, depth);\r\n this.flatten(section, section.LeftNode, result.containerRef, result.parentForm, depth + 1);\r\n this.flatten(section, section.RightNode, result.containerRef, result.parentForm, depth + 1);\r\n }\r\n } else if (this.hasProperty(current, 'ExpressionId')) {\r\n this.createItem(current as IPepQueryItem, containerRef, parentForm);\r\n }\r\n }\r\n\r\n /**\r\n * creates a container object of two or more child filter items\r\n * @param operator AND/OR operator\r\n * @param containerRef parent element\r\n * @param parentForm parent form\r\n * @param depth\r\n * @returns an object containing the current element and current form\r\n */\r\n createSection(operator: PepOperatorTypes, containerRef: ViewContainerRef, parentForm: FormGroup, depth: number) {\r\n const factory = this._resolver.resolveComponentFactory(PepQueryBuilderSectionComponent);\r\n const componentRef = containerRef.createComponent(factory);\r\n\r\n const sectionGroup = this._fb.group({\r\n operator: this._fb.control(operator || PepOperatorTypes.And)\r\n });\r\n let counter = 1;\r\n Object.keys(parentForm.controls).forEach(item => { if (item.includes('section')) { counter++; } });\r\n const formKey = `section${counter}`;\r\n parentForm.addControl(formKey, sectionGroup);\r\n\r\n componentRef.instance.form = sectionGroup;\r\n componentRef.instance.depth = {\r\n current: depth,\r\n max: this._maxStructureDepth\r\n };\r\n componentRef.instance.createSection.subscribe(() => {\r\n const section = this.createSection(PepOperatorTypes.And, componentRef.instance.sectionContainer, sectionGroup, depth + 1);\r\n this.createItem(null, section.containerRef, section.parentForm);\r\n });\r\n componentRef.instance.createItem.subscribe(() => {\r\n this.createItem(null, componentRef.instance.sectionContainer, sectionGroup);\r\n });\r\n componentRef.instance.remove.subscribe(() => {\r\n parentForm.removeControl(formKey);\r\n componentRef.destroy();\r\n this.createOutputQuery();\r\n });\r\n componentRef.instance.operatorChange.subscribe(() => {\r\n this.createOutputQuery();\r\n });\r\n\r\n return {\r\n containerRef: componentRef.instance.sectionContainer,\r\n parentForm: sectionGroup\r\n };\r\n }\r\n\r\n /**\r\n * creates a component represents filter item (leaf element - has no childs)\r\n * @param current filter legacy element\r\n * @param containerRef parent element\r\n * @param parentForm parent form\r\n */\r\n createItem(current: IPepQueryItem, containerRef: ViewContainerRef, parentForm: FormGroup) {\r\n const factory = this._resolver.resolveComponentFactory(PepQueryBuilderItemComponent);\r\n const componentRef = containerRef.createComponent(factory);\r\n\r\n let counter = 1;\r\n Object.keys(parentForm.controls).forEach(item => { if (item.includes('item')) { counter++; } });\r\n const formKey = `item${counter}`;\r\n\r\n componentRef.instance.formKey = formKey;\r\n componentRef.instance.fields = this._smartFilterFields;\r\n const selectedField = this.getSelectedField(current);\r\n if (selectedField) {\r\n componentRef.instance.selected = selectedField;\r\n if (current) {\r\n componentRef.instance.filter = this.getFilter(current, selectedField);\r\n }\r\n }\r\n componentRef.instance.parentForm = parentForm;\r\n componentRef.instance.filterChange.subscribe(() => {\r\n this.createOutputQuery();\r\n });\r\n componentRef.instance.remove.subscribe(() => {\r\n parentForm.removeControl(formKey);\r\n componentRef.destroy();\r\n this.createOutputQuery();\r\n });\r\n }\r\n\r\n /**\r\n * creates a smart filter object\r\n * @param current filter legacy element\r\n * @param field filter's selected field\r\n * @returns smart filter object\r\n */\r\n private getFilter(current: IPepQueryItem, field: any): IPepSmartFilterData | null {\r\n const operator: IPepSmartFilterOperator = getSmartBuilderOperator(current.Operation, field.type);\r\n if (operator) {\r\n const filterValues: IPepQueryBuilderValues = this.getFilterValues(current, operator, field);\r\n return createSmartFilter(\r\n current.ApiName,\r\n operator,\r\n filterValues.first,\r\n filterValues.second,\r\n filterValues.operationUnit\r\n );\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n /**\r\n * get smart filter field\r\n * @param current filter legacy element\r\n * @returns smart filter field, if not found returns the first fields\r\n */\r\n private getSelectedField(current: IPepQueryItem): IPepSmartFilterField | null {\r\n if (current) {\r\n const item = this._smartFilterFields.find(field => field.id === current.ApiName);\r\n return item ? item : this._smartFilterFields?.length > 0 ? this._smartFilterFields[0] : null;\r\n } else {\r\n return this._smartFilterFields?.length > 0 ? this._smartFilterFields[0] : null;\r\n }\r\n }\r\n\r\n /**\r\n * gets smart filter's values data\r\n * @param current filter legacy element\r\n * @param operator smart filter operator\r\n * @param field filter's selected field\r\n * @returns object contains the filter values data\r\n */\r\n private getFilterValues(current: IPepQueryItem, operator: IPepSmartFilterOperator, field: any) {\r\n const data: IPepQueryBuilderValues = {\r\n first: null,\r\n second: null,\r\n operationUnit: null\r\n };\r\n\r\n if (operator === PepSmartFilterOperators.In) { //multi select \r\n //filter keys don't exist on field options\r\n data.first = current?.Values?.length > 0 ? current.Values.filter(item => {\r\n return field.options.find(option => option.key === item);\r\n }) : null;\r\n } else if (\r\n operator === PepSmartFilterOperators.InTheLast ||\r\n operator === PepSmartFilterOperators.NotInTheLast ||\r\n operator === PepSmartFilterOperators.DueIn ||\r\n operator === PepSmartFilterOperators.NotDueIn\r\n ) { //operation unit\r\n data.first = current?.Values?.length > 0 ? current.Values[0] : null;\r\n if (current?.Values?.length === 2) {\r\n data.operationUnit = getSmartBuilderOperationUnit(current.Values[1]);\r\n }\r\n } else {\r\n data.first = current?.Values?.length > 0 ? current.Values[0] : null;\r\n data.second = current?.Values?.length === 2 ? current.Values[1] : null;\r\n }\r\n\r\n return data;\r\n }\r\n\r\n /**\r\n * converts legacy fields to smart filter fields\r\n * @param fields legacy fields array\r\n * @returns smart filter fields array\r\n */\r\n private convertToSmartFilterFields(fields: Array<IPepQueryBuilderField>) {\r\n if (fields?.length > 0) {\r\n const typeMapper = new PepQueryBuilderTypeMap();\r\n return fields.map((field) => {\r\n return createSmartFilterField(\r\n {\r\n id: field.FieldID,\r\n name: field.Title,\r\n options: field.OptionalValues?.map(option => {\r\n return {\r\n key: option.Key,\r\n value: option.Value\r\n }\r\n })\r\n } as IPepSmartFilterField\r\n , typeMapper.getSmartBuilderType(field.FieldType) as PepSmartFilterType)\r\n })\r\n } else {\r\n return [];\r\n }\r\n }\r\n\r\n /**\r\n * creates a legacy output query \r\n */\r\n createOutputQuery() {\r\n if (this._form.valid) {\r\n const query = this._outputQueryService.generateQuery(this._form.value);\r\n this._outputQuery$.next(query);\r\n }\r\n }\r\n\r\n}","import {\r\n Component,\r\n EventEmitter,\r\n Input,\r\n Output,\r\n OnInit,\r\n OnDestroy,\r\n ViewChild\r\n} from '@angular/core';\r\nimport { FormBuilder } from '@angular/forms';\r\nimport { PepQueryBuilderSectionComponent } from './query-builder-section/query-builder-section.component';\r\nimport { IPepQueryBuilderField, IPepQuerySection } from './common/model/legacy';\r\nimport { PepQueryBuilderService } from './query-builder.service';\r\nimport { IPepQueryDepth } from './common/model/structure';\r\nimport { PepOperatorTypes } from './common/model/type';\r\nimport { Subscription } from 'rxjs';\r\n\r\n@Component({\r\n selector: 'pep-query-builder',\r\n templateUrl: './query-builder.component.html',\r\n styleUrls: ['./query-builder.component.scss'],\r\n})\r\nexport class PepQueryBuilderComponent implements OnInit, OnDestroy {\r\n _query: IPepQuerySection = null;\r\n @Input()\r\n set query(object: IPepQuerySection) {\r\n this._query = object;\r\n this.loadQuery()\r\n }\r\n @Input()\r\n set fields(list: Array<IPepQueryBuilderField>) {\r\n this.queryBuilderService.fields = list;\r\n this.hasFields = this.queryBuilderService.hasFields;\r\n this.loadQuery();\r\n }\r\n @Input()\r\n set maxDepth(value: number) {\r\n this.queryBuilderService.maxDepth = value;\r\n }\r\n\r\n @Output()\r\n queryChange: EventEmitter<IPepQuerySection> = new EventEmitter<IPepQuerySection>();\r\n @Output()\r\n formValidationChange: EventEmitter<boolean> = new EventEmitter<boolean>();\r\n\r\n @ViewChild('rootContainer', { static: true }) root: PepQueryBuilderSectionComponent;\r\n\r\n _formSubscription$: Subscription;\r\n _outputQuerySubscription$: Subscription;\r\n _lastFormValidStatus = true;\r\n depth: IPepQueryDepth;\r\n hasFields = false;\r\n\r\n constructor(\r\n private _fb: FormBuilder,\r\n public queryBuilderService: PepQueryBuilderService\r\n ) {\r\n this.setupForm();\r\n this.initDepth();\r\n this._formSubscription$ = this.queryBuilderService.form.valueChanges.subscribe((val) => {\r\n if (this.queryBuilderService.form.valid !== this._lastFormValidStatus) {\r\n this._lastFormValidStatus = this.queryBuilderService.form.valid;\r\n this.formValidationChange.emit(this._lastFormValidStatus);\r\n }\r\n });\r\n this._outputQuerySubscription$ = this.queryBuilderService.outputQuery$.subscribe((outputQuery) => {\r\n this.queryChange.emit(outputQuery);\r\n });\r\n }\r\n\r\n ngOnInit() {\r\n //\r\n }\r\n\r\n setupForm() {\r\n this.queryBuilderService.form = this._fb.group({\r\n operator: this._fb.control(PepOperatorTypes.And)\r\n });\r\n }\r\n\r\n initDepth() {\r\n this.depth = {\r\n current: 0,\r\n max: this.queryBuilderService.maxDepth\r\n }\r\n }\r\n\r\n /**\r\n * builds UI query structure as soon as both the fields and query loads\r\n */\r\n loadQuery() {\r\n if (\r\n this._query &&\r\n this.queryBuilderService.hasFields &&\r\n this.root?.sectionContainer\r\n ) {\r\n this.queryBuilderService.buildQueryStructure(this._query, this.root.sectionContainer);\r\n }\r\n }\r\n\r\n onCreateSection() {\r\n const section = this.queryBuilderService.createSection(PepOperatorTypes.And, this.root.sectionContainer, this.queryBuilderService.form, 1);\r\n this.queryBuilderService.createItem(null, section.containerRef, section.parentForm);\r\n }\r\n\r\n onCreateItem() {\r\n this.queryBuilderService.createItem(null, this.root.sectionContainer, this.queryBuilderService.form);\r\n }\r\n\r\n onOperatorChange() {\r\n this.queryBuilderService.createOutputQuery();\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this._formSubscription$) {\r\n this._formSubscription$.unsubscribe();\r\n }\r\n if (this._outputQuerySubscription$) {\r\n this._outputQuerySubscription$.unsubscribe();\r\n }\r\n }\r\n\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { FlexLayoutModule } from '@angular/flex-layout';\r\nimport { PepSmartFiltersModule } from '@pepperi-addons/ngx-lib/smart-filters';\r\nimport { PepSelectModule } from '@pepperi-addons/ngx-lib/select';\r\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\r\nimport { PepGroupButtonsModule } from '@pepperi-addons/ngx-lib/group-buttons';\r\n\r\nimport { PepQueryBuilderService } from './query-builder.service';\r\nimport { PepOutputQueryService } from './common/services/output-query.service';\r\nimport { PepTypeConvertorService } from './common/services/type-convertor.service';\r\n\r\nimport { PepQueryBuilderComponent } from './query-builder.component';\r\nimport { PepQueryBuilderSectionComponent } from './query-builder-section/query-builder-section.component';\r\nimport { PepQueryBuilderItemComponent } from './query-builder-item/query-builder-item.component';\r\n\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FlexLayoutModule,\r\n PepSelectModule,\r\n PepButtonModule,\r\n PepGroupButtonsModule,\r\n PepSmartFiltersModule\r\n ],\r\n exports: [\r\n PepQueryBuilderComponent\r\n ],\r\n declarations: [\r\n PepQueryBuilderComponent,\r\n PepQueryBuilderSectionComponent,\r\n PepQueryBuilderItemComponent\r\n ],\r\n providers: [\r\n PepQueryBuilderService,\r\n PepOutputQueryService,\r\n PepTypeConvertorService\r\n ]\r\n})\r\nexport class PepQueryBuilderModule { }\r\n","/*\r\n * Public API Surface of ngx-lib/query-builder\r\n */\r\nexport * from './query-builder.module';\r\nexport * from './query-builder.component';\r\nexport * from './query-builder.service';\r\nexport * from './common/model/legacy';\r\n\r\n\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {PepOutputQueryService as ɵa} from './common/services/output-query.service';\nexport {PepTypeConvertorService as ɵc} from './common/services/type-convertor.service';\nexport {PepQueryBuilderItemComponent as ɵd} from './query-builder-item/query-builder-item.component';\nexport {PepQueryBuilderSectionComponent as ɵb} from './query-builder-section/query-builder-section.component';"],"names":["PepSmartFilterOperators","Injectable","EventEmitter","Component","Input","Output","ViewChild","ViewContainerRef","FormBuilder","PepSmartFilterOperatorUnits","BehaviorSubject","createSmartFilter","createSmartFilterField","ComponentFactoryResolver","NgModule","CommonModule","ReactiveFormsModule","FlexLayoutModule","PepSelectModule","PepButtonModule","PepGroupButtonsModule","PepSmartFiltersModule"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpYi9xdWVyeS1idWlsZGVyL2NvbW1vbi9tb2RlbC9maWx0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElQZXBTbWFydEZpbHRlck9wZXJhdG9yVW5pdCB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL3NtYXJ0LWZpbHRlcnMnO1xyXG5cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVBlcFF1ZXJ5QnVpbGRlclZhbHVlcyB7XHJcbiAgICBmaXJzdDogYW55O1xyXG4gICAgc2Vjb25kOiBhbnk7XHJcbiAgICBvcGVyYXRpb25Vbml0OiBJUGVwU21hcnRGaWx0ZXJPcGVyYXRvclVuaXQ7XHJcbn1cclxuXHJcblxyXG5cclxuXHJcbiJdfQ==
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGVnYWN5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpYi9xdWVyeS1idWlsZGVyL2NvbW1vbi9tb2RlbC9sZWdhY3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEtleVZhbHVlUGFpciB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcclxuaW1wb3J0IHsgUGVwT3BlcmF0b3JUeXBlcyB9IGZyb20gJy4vdHlwZSc7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElQZXBRdWVyeUJ1aWxkZXJGaWVsZCB7XHJcbiAgICBGaWVsZElEOiBzdHJpbmc7XHJcbiAgICBGaWVsZFR5cGU6IHN0cmluZztcclxuICAgIFRpdGxlOiBzdHJpbmc7XHJcbiAgICBPcHRpb25hbFZhbHVlczogQXJyYXk8S2V5VmFsdWVQYWlyPHN0cmluZz4+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIElQZXBRdWVyeVNlY3Rpb24ge1xyXG4gICAgQ29tcGxleElkOiBzdHJpbmc7XHJcbiAgICBPcGVyYXRpb246IFBlcE9wZXJhdG9yVHlwZXM7XHJcbiAgICBMZWZ0Tm9kZT86IElQZXBRdWVyeVNlY3Rpb24gfCBJUGVwUXVlcnlJdGVtO1xyXG4gICAgUmlnaHROb2RlPzogSVBlcFF1ZXJ5U2VjdGlvbiB8IElQZXBRdWVyeUl0ZW07XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVBlcFF1ZXJ5SXRlbSB7XHJcbiAgICBFeHByZXNzaW9uSWQ6IHN0cmluZztcclxuICAgIEFwaU5hbWU6IHN0cmluZztcclxuICAgIE9wZXJhdGlvbjogc3RyaW5nO1xyXG4gICAgVmFsdWVzOiBhbnlbXTtcclxufVxyXG5cclxuIl19
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { PepSmartFilterOperatorUnits } from '@pepperi-addons/ngx-lib/smart-filters';
|
|
2
|
-
const Days = {
|
|
3
|
-
legacy: 'Days',
|
|
4
|
-
smartFilter: PepSmartFilterOperatorUnits.Days
|
|
5
|
-
};
|
|
6
|
-
const Weeks = {
|
|
7
|
-
legacy: 'Weeks',
|
|
8
|
-
smartFilter: PepSmartFilterOperatorUnits.Weeks
|
|
9
|
-
};
|
|
10
|
-
const Months = {
|
|
11
|
-
legacy: 'Months',
|
|
12
|
-
smartFilter: PepSmartFilterOperatorUnits.Months
|
|
13
|
-
};
|
|
14
|
-
const Years = {
|
|
15
|
-
legacy: 'Years',
|
|
16
|
-
smartFilter: PepSmartFilterOperatorUnits.Years
|
|
17
|
-
};
|
|
18
|
-
const PepQueryBuilderOperationUnit = [
|
|
19
|
-
Days,
|
|
20
|
-
Weeks,
|
|
21
|
-
Months,
|
|
22
|
-
Years,
|
|
23
|
-
];
|
|
24
|
-
/**
|
|
25
|
-
* gets a smart filter operation unit item
|
|
26
|
-
* @param operationUnit legacy operation unit
|
|
27
|
-
* @returns smart filter operation unit item
|
|
28
|
-
*/
|
|
29
|
-
export function getSmartBuilderOperationUnit(operationUnit) {
|
|
30
|
-
const smartFilterOperationUnit = PepQueryBuilderOperationUnit.find(unit => unit.legacy === operationUnit);
|
|
31
|
-
return smartFilterOperationUnit ? smartFilterOperationUnit.smartFilter : null;
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* gets a legacy operation unit value
|
|
35
|
-
* @param operationUnit smart filter operation unit item
|
|
36
|
-
* @returns legacy operation unit value
|
|
37
|
-
*/
|
|
38
|
-
export function getLegacyOperationUnit(operationUnit) {
|
|
39
|
-
const legacyOperationUnit = PepQueryBuilderOperationUnit.find(unit => unit.smartFilter === operationUnit);
|
|
40
|
-
return legacyOperationUnit ? legacyOperationUnit.legacy : null;
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0b3ItdW5pdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvcXVlcnktYnVpbGRlci9jb21tb24vbW9kZWwvb3BlcmF0b3ItdW5pdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQStCLDJCQUEyQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFPakgsTUFBTSxJQUFJLEdBQWtDO0lBQ3hDLE1BQU0sRUFBRSxNQUFNO0lBQ2QsV0FBVyxFQUFFLDJCQUEyQixDQUFDLElBQUk7Q0FDaEQsQ0FBQztBQUVGLE1BQU0sS0FBSyxHQUFrQztJQUN6QyxNQUFNLEVBQUUsT0FBTztJQUNmLFdBQVcsRUFBRSwyQkFBMkIsQ0FBQyxLQUFLO0NBQ2pELENBQUM7QUFFRixNQUFNLE1BQU0sR0FBa0M7SUFDMUMsTUFBTSxFQUFFLFFBQVE7SUFDaEIsV0FBVyxFQUFFLDJCQUEyQixDQUFDLE1BQU07Q0FDbEQsQ0FBQztBQUVGLE1BQU0sS0FBSyxHQUFrQztJQUN6QyxNQUFNLEVBQUUsT0FBTztJQUNmLFdBQVcsRUFBRSwyQkFBMkIsQ0FBQyxLQUFLO0NBQ2pELENBQUM7QUFFRixNQUFNLDRCQUE0QixHQUFHO0lBQ2pDLElBQUk7SUFDSixLQUFLO0lBQ0wsTUFBTTtJQUNOLEtBQUs7Q0FDUixDQUFDO0FBRUY7Ozs7R0FJRztBQUNILE1BQU0sVUFBVSw0QkFBNEIsQ0FBQyxhQUFxQjtJQUM5RCxNQUFNLHdCQUF3QixHQUFrQyw0QkFBNEIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxLQUFLLGFBQWEsQ0FBQyxDQUFDO0lBQ3pJLE9BQU8sd0JBQXdCLENBQUMsQ0FBQyxDQUFDLHdCQUF3QixDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0FBQ2xGLENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsTUFBTSxVQUFVLHNCQUFzQixDQUFDLGFBQTBDO0lBQzdFLE1BQU0sbUJBQW1CLEdBQWtDLDRCQUE0QixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLEtBQUssYUFBYSxDQUFDLENBQUM7SUFDekksT0FBTyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsbUJBQW1CLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDbkUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxyXG5pbXBvcnQgeyBJUGVwU21hcnRGaWx0ZXJPcGVyYXRvclVuaXQsIFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JVbml0cyB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL3NtYXJ0LWZpbHRlcnMnO1xyXG5cclxuaW50ZXJmYWNlIElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRpb25Vbml0IHtcclxuICAgIGxlZ2FjeTogc3RyaW5nLFxyXG4gICAgc21hcnRGaWx0ZXI6IElQZXBTbWFydEZpbHRlck9wZXJhdG9yVW5pdCxcclxufVxyXG5cclxuY29uc3QgRGF5czogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdGlvblVuaXQgPSB7XHJcbiAgICBsZWdhY3k6ICdEYXlzJyxcclxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9yVW5pdHMuRGF5c1xyXG59O1xyXG5cclxuY29uc3QgV2Vla3M6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRpb25Vbml0ID0ge1xyXG4gICAgbGVnYWN5OiAnV2Vla3MnLFxyXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JVbml0cy5XZWVrc1xyXG59O1xyXG5cclxuY29uc3QgTW9udGhzOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0aW9uVW5pdCA9IHtcclxuICAgIGxlZ2FjeTogJ01vbnRocycsXHJcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvclVuaXRzLk1vbnRoc1xyXG59O1xyXG5cclxuY29uc3QgWWVhcnM6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRpb25Vbml0ID0ge1xyXG4gICAgbGVnYWN5OiAnWWVhcnMnLFxyXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JVbml0cy5ZZWFyc1xyXG59O1xyXG5cclxuY29uc3QgUGVwUXVlcnlCdWlsZGVyT3BlcmF0aW9uVW5pdCA9IFtcclxuICAgIERheXMsXHJcbiAgICBXZWVrcyxcclxuICAgIE1vbnRocyxcclxuICAgIFllYXJzLFxyXG5dO1xyXG5cclxuLyoqXHJcbiAqIGdldHMgYSBzbWFydCBmaWx0ZXIgb3BlcmF0aW9uIHVuaXQgaXRlbVxyXG4gKiBAcGFyYW0gb3BlcmF0aW9uVW5pdCBsZWdhY3kgb3BlcmF0aW9uIHVuaXRcclxuICogQHJldHVybnMgc21hcnQgZmlsdGVyIG9wZXJhdGlvbiB1bml0IGl0ZW1cclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRTbWFydEJ1aWxkZXJPcGVyYXRpb25Vbml0KG9wZXJhdGlvblVuaXQ6IHN0cmluZyk6IElQZXBTbWFydEZpbHRlck9wZXJhdG9yVW5pdCB8IG51bGwge1xyXG4gICAgY29uc3Qgc21hcnRGaWx0ZXJPcGVyYXRpb25Vbml0OiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0aW9uVW5pdCA9IFBlcFF1ZXJ5QnVpbGRlck9wZXJhdGlvblVuaXQuZmluZCh1bml0ID0+IHVuaXQubGVnYWN5ID09PSBvcGVyYXRpb25Vbml0KTtcclxuICAgIHJldHVybiBzbWFydEZpbHRlck9wZXJhdGlvblVuaXQgPyBzbWFydEZpbHRlck9wZXJhdGlvblVuaXQuc21hcnRGaWx0ZXIgOiBudWxsO1xyXG59XHJcblxyXG4vKipcclxuICogZ2V0cyBhIGxlZ2FjeSBvcGVyYXRpb24gdW5pdCB2YWx1ZVxyXG4gKiBAcGFyYW0gb3BlcmF0aW9uVW5pdCBzbWFydCBmaWx0ZXIgb3BlcmF0aW9uIHVuaXQgaXRlbVxyXG4gKiBAcmV0dXJucyBsZWdhY3kgb3BlcmF0aW9uIHVuaXQgdmFsdWVcclxuICovXHJcbmV4cG9ydCBmdW5jdGlvbiBnZXRMZWdhY3lPcGVyYXRpb25Vbml0KG9wZXJhdGlvblVuaXQ6IElQZXBTbWFydEZpbHRlck9wZXJhdG9yVW5pdCk6IHN0cmluZyB8IG51bGwge1xyXG4gICAgY29uc3QgbGVnYWN5T3BlcmF0aW9uVW5pdDogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdGlvblVuaXQgPSBQZXBRdWVyeUJ1aWxkZXJPcGVyYXRpb25Vbml0LmZpbmQodW5pdCA9PiB1bml0LnNtYXJ0RmlsdGVyID09PSBvcGVyYXRpb25Vbml0KTtcclxuICAgIHJldHVybiBsZWdhY3lPcGVyYXRpb25Vbml0ID8gbGVnYWN5T3BlcmF0aW9uVW5pdC5sZWdhY3kgOiBudWxsO1xyXG59XHJcbiJdfQ==
|
|
@@ -1,207 +0,0 @@
|
|
|
1
|
-
import { PepSmartFilterOperators } from '@pepperi-addons/ngx-lib/smart-filters';
|
|
2
|
-
const Equals = {
|
|
3
|
-
legacy: 'IsEqual',
|
|
4
|
-
smartFilter: PepSmartFilterOperators.Equals,
|
|
5
|
-
type: ['boolean', 'int', 'text']
|
|
6
|
-
};
|
|
7
|
-
const NotEqual = {
|
|
8
|
-
legacy: 'IsNotEqual',
|
|
9
|
-
smartFilter: PepSmartFilterOperators.NotEqual,
|
|
10
|
-
type: null
|
|
11
|
-
};
|
|
12
|
-
const LessThan = {
|
|
13
|
-
legacy: '<',
|
|
14
|
-
smartFilter: PepSmartFilterOperators.LessThan,
|
|
15
|
-
type: null
|
|
16
|
-
};
|
|
17
|
-
const GreaterThan = {
|
|
18
|
-
legacy: '>',
|
|
19
|
-
smartFilter: PepSmartFilterOperators.GreaterThan,
|
|
20
|
-
type: null
|
|
21
|
-
};
|
|
22
|
-
/*
|
|
23
|
-
const GreaterThanOrEquals: IPepQueryBuilderOperator = {
|
|
24
|
-
legacy: {
|
|
25
|
-
operator: '>=',
|
|
26
|
-
type: 'Integer'
|
|
27
|
-
},
|
|
28
|
-
smartFilter: {
|
|
29
|
-
item: PepSmartFilterOperators.GreaterThanOrEquals,
|
|
30
|
-
type: 'int'
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
const LessThanOrEquals: IPepQueryBuilderOperator = {
|
|
35
|
-
legacy: {
|
|
36
|
-
operator: '<=',
|
|
37
|
-
type: 'Integer'
|
|
38
|
-
},
|
|
39
|
-
smartFilter: {
|
|
40
|
-
item: PepSmartFilterOperators.LessThanOrEquals,
|
|
41
|
-
type: 'int',
|
|
42
|
-
type: 'Integer'
|
|
43
|
-
}
|
|
44
|
-
}; */
|
|
45
|
-
const NumberRange = {
|
|
46
|
-
legacy: 'Between',
|
|
47
|
-
smartFilter: PepSmartFilterOperators.NumberRange,
|
|
48
|
-
type: ['int']
|
|
49
|
-
};
|
|
50
|
-
const Contains = {
|
|
51
|
-
legacy: 'Contains',
|
|
52
|
-
smartFilter: PepSmartFilterOperators.Contains,
|
|
53
|
-
type: null
|
|
54
|
-
};
|
|
55
|
-
/*
|
|
56
|
-
const BeginsWith: IPepQueryBuilderOperator = {
|
|
57
|
-
legacy: {
|
|
58
|
-
operator: 'BeginsWith',
|
|
59
|
-
type: 'String'
|
|
60
|
-
},
|
|
61
|
-
smartFilter: {
|
|
62
|
-
item: PepSmartFilterOperators.BeginsWith,
|
|
63
|
-
type: 'text'
|
|
64
|
-
}
|
|
65
|
-
};
|
|
66
|
-
|
|
67
|
-
const EndsWith: IPepQueryBuilderOperator = {
|
|
68
|
-
legacy: {
|
|
69
|
-
operator: 'EndsWith',
|
|
70
|
-
type: 'String'
|
|
71
|
-
},
|
|
72
|
-
smartFilter: {
|
|
73
|
-
item: PepSmartFilterOperators.EndsWith,
|
|
74
|
-
type: 'text'
|
|
75
|
-
}
|
|
76
|
-
};
|
|
77
|
-
|
|
78
|
-
const Before: IPepQueryBuilderOperator = {
|
|
79
|
-
legacy: {
|
|
80
|
-
operator: 'Before',
|
|
81
|
-
type: 'Date'
|
|
82
|
-
},
|
|
83
|
-
smartFilter: {
|
|
84
|
-
item: PepSmartFilterOperators.Before,
|
|
85
|
-
type: 'date'
|
|
86
|
-
}
|
|
87
|
-
};
|
|
88
|
-
|
|
89
|
-
const After: IPepQueryBuilderOperator = {
|
|
90
|
-
legacy: {
|
|
91
|
-
operator: 'After',
|
|
92
|
-
type: 'Date'
|
|
93
|
-
},
|
|
94
|
-
smartFilter: {
|
|
95
|
-
item: PepSmartFilterOperators.After,
|
|
96
|
-
type: 'date'
|
|
97
|
-
}
|
|
98
|
-
}; */
|
|
99
|
-
const InTheLast = {
|
|
100
|
-
legacy: 'InTheLast',
|
|
101
|
-
smartFilter: PepSmartFilterOperators.InTheLast,
|
|
102
|
-
type: null
|
|
103
|
-
};
|
|
104
|
-
const NotInTheLast = {
|
|
105
|
-
legacy: 'NotInTheLast',
|
|
106
|
-
smartFilter: PepSmartFilterOperators.NotInTheLast,
|
|
107
|
-
type: null
|
|
108
|
-
};
|
|
109
|
-
const Today = {
|
|
110
|
-
legacy: 'Today',
|
|
111
|
-
smartFilter: PepSmartFilterOperators.Today,
|
|
112
|
-
type: null
|
|
113
|
-
};
|
|
114
|
-
const ThisWeek = {
|
|
115
|
-
legacy: 'ThisWeek',
|
|
116
|
-
smartFilter: PepSmartFilterOperators.ThisWeek,
|
|
117
|
-
type: null
|
|
118
|
-
};
|
|
119
|
-
const ThisMonth = {
|
|
120
|
-
legacy: 'ThisMonth',
|
|
121
|
-
smartFilter: PepSmartFilterOperators.ThisMonth,
|
|
122
|
-
type: null
|
|
123
|
-
};
|
|
124
|
-
const DateRange = {
|
|
125
|
-
legacy: 'Between',
|
|
126
|
-
smartFilter: PepSmartFilterOperators.DateRange,
|
|
127
|
-
type: ['date-time']
|
|
128
|
-
};
|
|
129
|
-
const DueIn = {
|
|
130
|
-
legacy: 'DueIn',
|
|
131
|
-
smartFilter: PepSmartFilterOperators.DueIn,
|
|
132
|
-
type: null
|
|
133
|
-
};
|
|
134
|
-
const NotDueIn = {
|
|
135
|
-
legacy: 'NotDueIn',
|
|
136
|
-
smartFilter: PepSmartFilterOperators.NotDueIn,
|
|
137
|
-
type: null
|
|
138
|
-
};
|
|
139
|
-
const On = {
|
|
140
|
-
legacy: 'On',
|
|
141
|
-
smartFilter: PepSmartFilterOperators.On,
|
|
142
|
-
type: null
|
|
143
|
-
};
|
|
144
|
-
const IsEmpty = {
|
|
145
|
-
legacy: 'IsEmpty',
|
|
146
|
-
smartFilter: PepSmartFilterOperators.IsEmpty,
|
|
147
|
-
type: null
|
|
148
|
-
};
|
|
149
|
-
const IsNotEmpty = {
|
|
150
|
-
legacy: 'IsNotEmpty',
|
|
151
|
-
smartFilter: PepSmartFilterOperators.IsNotEmpty,
|
|
152
|
-
type: null
|
|
153
|
-
};
|
|
154
|
-
const In = {
|
|
155
|
-
legacy: 'IsEqual',
|
|
156
|
-
smartFilter: PepSmartFilterOperators.In,
|
|
157
|
-
type: ['multi-select']
|
|
158
|
-
};
|
|
159
|
-
const PepQueryBuilderOperators = [
|
|
160
|
-
Equals,
|
|
161
|
-
NotEqual,
|
|
162
|
-
LessThan,
|
|
163
|
-
// LessThanOrEquals,
|
|
164
|
-
GreaterThan,
|
|
165
|
-
// GreaterThanOrEquals,
|
|
166
|
-
NumberRange,
|
|
167
|
-
Contains,
|
|
168
|
-
// BeginsWith,
|
|
169
|
-
// EndsWith,
|
|
170
|
-
// After,
|
|
171
|
-
// Before,
|
|
172
|
-
InTheLast,
|
|
173
|
-
NotInTheLast,
|
|
174
|
-
Today,
|
|
175
|
-
ThisWeek,
|
|
176
|
-
ThisMonth,
|
|
177
|
-
DateRange,
|
|
178
|
-
DueIn,
|
|
179
|
-
NotDueIn,
|
|
180
|
-
On,
|
|
181
|
-
IsEmpty,
|
|
182
|
-
IsNotEmpty,
|
|
183
|
-
In
|
|
184
|
-
];
|
|
185
|
-
/**
|
|
186
|
-
* gets a smart filter operator item
|
|
187
|
-
* @param operator legacy operator
|
|
188
|
-
* @param type smart filter's type
|
|
189
|
-
* @returns smart filter operator item
|
|
190
|
-
*/
|
|
191
|
-
export function getSmartBuilderOperator(operator, type) {
|
|
192
|
-
const smartFilterOperator = PepQueryBuilderOperators.find(item => item.legacy === operator &&
|
|
193
|
-
(item.type === null || item.type.includes(type)));
|
|
194
|
-
return smartFilterOperator ? smartFilterOperator.smartFilter : null;
|
|
195
|
-
}
|
|
196
|
-
/**
|
|
197
|
-
* gets a legacy operator value
|
|
198
|
-
* @param operator smart filter operator item
|
|
199
|
-
* @param type smart filter's type
|
|
200
|
-
* @returns legacy operator value
|
|
201
|
-
*/
|
|
202
|
-
export function getLegacyOperator(operator, type) {
|
|
203
|
-
const legacyOperator = PepQueryBuilderOperators.find(item => item.smartFilter === operator &&
|
|
204
|
-
(item.type === null || item.type.includes(type)));
|
|
205
|
-
return legacyOperator ? legacyOperator.legacy : null;
|
|
206
|
-
}
|
|
207
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvY29tbW9uL21vZGVsL29wZXJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBMkIsTUFBTSx1Q0FBdUMsQ0FBQztBQVN6RyxNQUFNLE1BQU0sR0FBNkI7SUFDckMsTUFBTSxFQUFFLFNBQVM7SUFDakIsV0FBVyxFQUFFLHVCQUF1QixDQUFDLE1BQU07SUFDM0MsSUFBSSxFQUFFLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUM7Q0FDbkMsQ0FBQztBQUVGLE1BQU0sUUFBUSxHQUE2QjtJQUN2QyxNQUFNLEVBQUUsWUFBWTtJQUNwQixXQUFXLEVBQUUsdUJBQXVCLENBQUMsUUFBUTtJQUM3QyxJQUFJLEVBQUUsSUFBSTtDQUNiLENBQUM7QUFFRixNQUFNLFFBQVEsR0FBNkI7SUFDdkMsTUFBTSxFQUFFLEdBQUc7SUFDWCxXQUFXLEVBQUUsdUJBQXVCLENBQUMsUUFBUTtJQUM3QyxJQUFJLEVBQUUsSUFBSTtDQUNiLENBQUM7QUFFRixNQUFNLFdBQVcsR0FBNkI7SUFDMUMsTUFBTSxFQUFFLEdBQUc7SUFDWCxXQUFXLEVBQUUsdUJBQXVCLENBQUMsV0FBVztJQUNoRCxJQUFJLEVBQUUsSUFBSTtDQUNiLENBQUM7QUFFRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQXNCSztBQUVMLE1BQU0sV0FBVyxHQUE2QjtJQUMxQyxNQUFNLEVBQUUsU0FBUztJQUNqQixXQUFXLEVBQUUsdUJBQXVCLENBQUMsV0FBVztJQUNoRCxJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUM7Q0FDaEIsQ0FBQztBQUVGLE1BQU0sUUFBUSxHQUE2QjtJQUN2QyxNQUFNLEVBQUUsVUFBVTtJQUNsQixXQUFXLEVBQUUsdUJBQXVCLENBQUMsUUFBUTtJQUM3QyxJQUFJLEVBQUUsSUFBSTtDQUNiLENBQUM7QUFFRjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztLQTJDSztBQUVMLE1BQU0sU0FBUyxHQUE2QjtJQUN4QyxNQUFNLEVBQUUsV0FBVztJQUNuQixXQUFXLEVBQUUsdUJBQXVCLENBQUMsU0FBUztJQUM5QyxJQUFJLEVBQUUsSUFBSTtDQUNiLENBQUM7QUFFRixNQUFNLFlBQVksR0FBNkI7SUFDM0MsTUFBTSxFQUFFLGNBQWM7SUFDdEIsV0FBVyxFQUFFLHVCQUF1QixDQUFDLFlBQVk7SUFDakQsSUFBSSxFQUFFLElBQUk7Q0FDYixDQUFDO0FBRUYsTUFBTSxLQUFLLEdBQTZCO0lBQ3BDLE1BQU0sRUFBRSxPQUFPO0lBQ2YsV0FBVyxFQUFFLHVCQUF1QixDQUFDLEtBQUs7SUFDMUMsSUFBSSxFQUFFLElBQUk7Q0FDYixDQUFDO0FBRUYsTUFBTSxRQUFRLEdBQTZCO0lBQ3ZDLE1BQU0sRUFBRSxVQUFVO0lBQ2xCLFdBQVcsRUFBRSx1QkFBdUIsQ0FBQyxRQUFRO0lBQzdDLElBQUksRUFBRSxJQUFJO0NBQ2IsQ0FBQztBQUVGLE1BQU0sU0FBUyxHQUE2QjtJQUN4QyxNQUFNLEVBQUUsV0FBVztJQUNuQixXQUFXLEVBQUUsdUJBQXVCLENBQUMsU0FBUztJQUM5QyxJQUFJLEVBQUUsSUFBSTtDQUNiLENBQUM7QUFFRixNQUFNLFNBQVMsR0FBNkI7SUFDeEMsTUFBTSxFQUFFLFNBQVM7SUFDakIsV0FBVyxFQUFFLHVCQUF1QixDQUFDLFNBQVM7SUFDOUMsSUFBSSxFQUFFLENBQUMsV0FBVyxDQUFDO0NBQ3RCLENBQUM7QUFFRixNQUFNLEtBQUssR0FBNkI7SUFDcEMsTUFBTSxFQUFFLE9BQU87SUFDZixXQUFXLEVBQUUsdUJBQXVCLENBQUMsS0FBSztJQUMxQyxJQUFJLEVBQUUsSUFBSTtDQUNiLENBQUM7QUFFRixNQUFNLFFBQVEsR0FBNkI7SUFDdkMsTUFBTSxFQUFFLFVBQVU7SUFDbEIsV0FBVyxFQUFFLHVCQUF1QixDQUFDLFFBQVE7SUFDN0MsSUFBSSxFQUFFLElBQUk7Q0FDYixDQUFDO0FBRUYsTUFBTSxFQUFFLEdBQTZCO0lBQ2pDLE1BQU0sRUFBRSxJQUFJO0lBQ1osV0FBVyxFQUFFLHVCQUF1QixDQUFDLEVBQUU7SUFDdkMsSUFBSSxFQUFFLElBQUk7Q0FDYixDQUFDO0FBRUYsTUFBTSxPQUFPLEdBQTZCO0lBQ3RDLE1BQU0sRUFBRSxTQUFTO0lBQ2pCLFdBQVcsRUFBRSx1QkFBdUIsQ0FBQyxPQUFPO0lBQzVDLElBQUksRUFBRSxJQUFJO0NBQ2IsQ0FBQztBQUVGLE1BQU0sVUFBVSxHQUE2QjtJQUN6QyxNQUFNLEVBQUUsWUFBWTtJQUNwQixXQUFXLEVBQUUsdUJBQXVCLENBQUMsVUFBVTtJQUMvQyxJQUFJLEVBQUUsSUFBSTtDQUNiLENBQUM7QUFFRixNQUFNLEVBQUUsR0FBNkI7SUFDakMsTUFBTSxFQUFFLFNBQVM7SUFDakIsV0FBVyxFQUFFLHVCQUF1QixDQUFDLEVBQUU7SUFDdkMsSUFBSSxFQUFFLENBQUMsY0FBYyxDQUFDO0NBQ3pCLENBQUM7QUFHRixNQUFNLHdCQUF3QixHQUFHO0lBQzdCLE1BQU07SUFDTixRQUFRO0lBQ1IsUUFBUTtJQUNSLHNCQUFzQjtJQUN0QixXQUFXO0lBQ1gseUJBQXlCO0lBQ3pCLFdBQVc7SUFDWCxRQUFRO0lBQ1IsZ0JBQWdCO0lBQ2hCLGNBQWM7SUFDZCxXQUFXO0lBQ1gsWUFBWTtJQUNaLFNBQVM7SUFDVCxZQUFZO0lBQ1osS0FBSztJQUNMLFFBQVE7SUFDUixTQUFTO0lBQ1QsU0FBUztJQUNULEtBQUs7SUFDTCxRQUFRO0lBQ1IsRUFBRTtJQUNGLE9BQU87SUFDUCxVQUFVO0lBQ1YsRUFBRTtDQUNMLENBQUE7QUFFRDs7Ozs7R0FLRztBQUNILE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxRQUFnQixFQUFFLElBQXdCO0lBQzlFLE1BQU0sbUJBQW1CLEdBQUcsd0JBQXdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQzdELElBQUksQ0FBQyxNQUFNLEtBQUssUUFBUTtRQUN4QixDQUFDLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQ25ELENBQUM7SUFDRixPQUFPLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxtQkFBbUIsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztBQUN4RSxDQUFDO0FBRUQ7Ozs7O0dBS0c7QUFDSCxNQUFNLFVBQVUsaUJBQWlCLENBQUMsUUFBaUMsRUFBRSxJQUF3QjtJQUN6RixNQUFNLGNBQWMsR0FBRyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FDeEQsSUFBSSxDQUFDLFdBQVcsS0FBSyxRQUFRO1FBQzdCLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FDbkQsQ0FBQztJQUNGLE9BQU8sY0FBYyxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDekQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLCBJUGVwU21hcnRGaWx0ZXJPcGVyYXRvciB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL3NtYXJ0LWZpbHRlcnMnO1xyXG5pbXBvcnQgeyBQZXBTbWFydEZpbHRlclR5cGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9zbWFydC1maWx0ZXJzJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yIHtcclxuICAgIGxlZ2FjeTogc3RyaW5nLCAvL2xlZ2FjeSBPcGVyYXRvciAgICBcclxuICAgIHNtYXJ0RmlsdGVyOiBJUGVwU21hcnRGaWx0ZXJPcGVyYXRvciwgLy9zbWFydCBmaWx0ZXIgb3BlcmF0b3IgICAgXHJcbiAgICB0eXBlOiBQZXBTbWFydEZpbHRlclR5cGVbXSB8IG51bGwgLy9zbWFydCBmaWx0ZXIgdHlwZVxyXG59XHJcblxyXG5jb25zdCBFcXVhbHM6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcclxuICAgIGxlZ2FjeTogJ0lzRXF1YWwnLFxyXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkVxdWFscyxcclxuICAgIHR5cGU6IFsnYm9vbGVhbicsICdpbnQnLCAndGV4dCddXHJcbn07XHJcblxyXG5jb25zdCBOb3RFcXVhbDogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xyXG4gICAgbGVnYWN5OiAnSXNOb3RFcXVhbCcsXHJcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTm90RXF1YWwsXHJcbiAgICB0eXBlOiBudWxsXHJcbn07XHJcblxyXG5jb25zdCBMZXNzVGhhbjogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xyXG4gICAgbGVnYWN5OiAnPCcsXHJcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTGVzc1RoYW4sXHJcbiAgICB0eXBlOiBudWxsXHJcbn07XHJcblxyXG5jb25zdCBHcmVhdGVyVGhhbjogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xyXG4gICAgbGVnYWN5OiAnPicsXHJcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuR3JlYXRlclRoYW4sXHJcbiAgICB0eXBlOiBudWxsXHJcbn07XHJcblxyXG4vKlxyXG5jb25zdCBHcmVhdGVyVGhhbk9yRXF1YWxzOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XHJcbiAgICBsZWdhY3k6IHtcclxuICAgICAgICBvcGVyYXRvcjogJz49JyxcclxuICAgICAgICB0eXBlOiAnSW50ZWdlcidcclxuICAgIH0sXHJcbiAgICBzbWFydEZpbHRlcjoge1xyXG4gICAgICAgIGl0ZW06IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkdyZWF0ZXJUaGFuT3JFcXVhbHMsXHJcbiAgICAgICAgdHlwZTogJ2ludCdcclxuICAgIH1cclxufTtcclxuXHJcbmNvbnN0IExlc3NUaGFuT3JFcXVhbHM6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcclxuICAgIGxlZ2FjeToge1xyXG4gICAgICAgIG9wZXJhdG9yOiAnPD0nLFxyXG4gICAgICAgIHR5cGU6ICdJbnRlZ2VyJ1xyXG4gICAgfSxcclxuICAgIHNtYXJ0RmlsdGVyOiB7XHJcbiAgICAgICAgaXRlbTogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTGVzc1RoYW5PckVxdWFscyxcclxuICAgICAgICB0eXBlOiAnaW50JyxcclxuICAgICAgICB0eXBlOiAnSW50ZWdlcidcclxuICAgIH1cclxufTsgKi9cclxuXHJcbmNvbnN0IE51bWJlclJhbmdlOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XHJcbiAgICBsZWdhY3k6ICdCZXR3ZWVuJyxcclxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5OdW1iZXJSYW5nZSxcclxuICAgIHR5cGU6IFsnaW50J11cclxufTtcclxuXHJcbmNvbnN0IENvbnRhaW5zOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XHJcbiAgICBsZWdhY3k6ICdDb250YWlucycsXHJcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuQ29udGFpbnMsXHJcbiAgICB0eXBlOiBudWxsXHJcbn07XHJcblxyXG4vKlxyXG5jb25zdCBCZWdpbnNXaXRoOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XHJcbiAgICBsZWdhY3k6IHtcclxuICAgICAgICBvcGVyYXRvcjogJ0JlZ2luc1dpdGgnLFxyXG4gICAgICAgIHR5cGU6ICdTdHJpbmcnXHJcbiAgICB9LFxyXG4gICAgc21hcnRGaWx0ZXI6IHtcclxuICAgICAgICBpdGVtOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5CZWdpbnNXaXRoLFxyXG4gICAgICAgIHR5cGU6ICd0ZXh0J1xyXG4gICAgfVxyXG59O1xyXG5cclxuY29uc3QgRW5kc1dpdGg6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcclxuICAgIGxlZ2FjeToge1xyXG4gICAgICAgIG9wZXJhdG9yOiAnRW5kc1dpdGgnLFxyXG4gICAgICAgIHR5cGU6ICdTdHJpbmcnXHJcbiAgICB9LFxyXG4gICAgc21hcnRGaWx0ZXI6IHtcclxuICAgICAgICBpdGVtOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5FbmRzV2l0aCxcclxuICAgICAgICB0eXBlOiAndGV4dCdcclxuICAgIH1cclxufTtcclxuXHJcbmNvbnN0IEJlZm9yZTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xyXG4gICAgbGVnYWN5OiB7XHJcbiAgICAgICAgb3BlcmF0b3I6ICdCZWZvcmUnLFxyXG4gICAgICAgIHR5cGU6ICdEYXRlJ1xyXG4gICAgfSxcclxuICAgIHNtYXJ0RmlsdGVyOiB7XHJcbiAgICAgICAgaXRlbTogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuQmVmb3JlLFxyXG4gICAgICAgIHR5cGU6ICdkYXRlJ1xyXG4gICAgfVxyXG59O1xyXG5cclxuY29uc3QgQWZ0ZXI6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcclxuICAgIGxlZ2FjeToge1xyXG4gICAgICAgIG9wZXJhdG9yOiAnQWZ0ZXInLFxyXG4gICAgICAgIHR5cGU6ICdEYXRlJ1xyXG4gICAgfSxcclxuICAgIHNtYXJ0RmlsdGVyOiB7XHJcbiAgICAgICAgaXRlbTogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuQWZ0ZXIsXHJcbiAgICAgICAgdHlwZTogJ2RhdGUnXHJcbiAgICB9XHJcbn07ICovXHJcblxyXG5jb25zdCBJblRoZUxhc3Q6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcclxuICAgIGxlZ2FjeTogJ0luVGhlTGFzdCcsXHJcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuSW5UaGVMYXN0LFxyXG4gICAgdHlwZTogbnVsbFxyXG59O1xyXG5cclxuY29uc3QgTm90SW5UaGVMYXN0OiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XHJcbiAgICBsZWdhY3k6ICdOb3RJblRoZUxhc3QnLFxyXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLk5vdEluVGhlTGFzdCxcclxuICAgIHR5cGU6IG51bGxcclxufTtcclxuXHJcbmNvbnN0IFRvZGF5OiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XHJcbiAgICBsZWdhY3k6ICdUb2RheScsXHJcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuVG9kYXksXHJcbiAgICB0eXBlOiBudWxsXHJcbn07XHJcblxyXG5jb25zdCBUaGlzV2VlazogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xyXG4gICAgbGVnYWN5OiAnVGhpc1dlZWsnLFxyXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLlRoaXNXZWVrLFxyXG4gICAgdHlwZTogbnVsbFxyXG59O1xyXG5cclxuY29uc3QgVGhpc01vbnRoOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XHJcbiAgICBsZWdhY3k6ICdUaGlzTW9udGgnLFxyXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLlRoaXNNb250aCxcclxuICAgIHR5cGU6IG51bGxcclxufTtcclxuXHJcbmNvbnN0IERhdGVSYW5nZTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xyXG4gICAgbGVnYWN5OiAnQmV0d2VlbicsXHJcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuRGF0ZVJhbmdlLFxyXG4gICAgdHlwZTogWydkYXRlLXRpbWUnXVxyXG59O1xyXG5cclxuY29uc3QgRHVlSW46IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcclxuICAgIGxlZ2FjeTogJ0R1ZUluJyxcclxuICAgIHNtYXJ0RmlsdGVyOiBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5EdWVJbixcclxuICAgIHR5cGU6IG51bGxcclxufTtcclxuXHJcbmNvbnN0IE5vdER1ZUluOiBJUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3IgPSB7XHJcbiAgICBsZWdhY3k6ICdOb3REdWVJbicsXHJcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuTm90RHVlSW4sXHJcbiAgICB0eXBlOiBudWxsXHJcbn07XHJcblxyXG5jb25zdCBPbjogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xyXG4gICAgbGVnYWN5OiAnT24nLFxyXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLk9uLFxyXG4gICAgdHlwZTogbnVsbFxyXG59O1xyXG5cclxuY29uc3QgSXNFbXB0eTogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xyXG4gICAgbGVnYWN5OiAnSXNFbXB0eScsXHJcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuSXNFbXB0eSxcclxuICAgIHR5cGU6IG51bGxcclxufTtcclxuXHJcbmNvbnN0IElzTm90RW1wdHk6IElQZXBRdWVyeUJ1aWxkZXJPcGVyYXRvciA9IHtcclxuICAgIGxlZ2FjeTogJ0lzTm90RW1wdHknLFxyXG4gICAgc21hcnRGaWx0ZXI6IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLklzTm90RW1wdHksXHJcbiAgICB0eXBlOiBudWxsXHJcbn07XHJcblxyXG5jb25zdCBJbjogSVBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9yID0ge1xyXG4gICAgbGVnYWN5OiAnSXNFcXVhbCcsXHJcbiAgICBzbWFydEZpbHRlcjogUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuSW4sXHJcbiAgICB0eXBlOiBbJ211bHRpLXNlbGVjdCddXHJcbn07XHJcblxyXG5cclxuY29uc3QgUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3JzID0gW1xyXG4gICAgRXF1YWxzLFxyXG4gICAgTm90RXF1YWwsXHJcbiAgICBMZXNzVGhhbixcclxuICAgIC8vICAgTGVzc1RoYW5PckVxdWFscyxcclxuICAgIEdyZWF0ZXJUaGFuLFxyXG4gICAgLy8gICBHcmVhdGVyVGhhbk9yRXF1YWxzLFxyXG4gICAgTnVtYmVyUmFuZ2UsXHJcbiAgICBDb250YWlucyxcclxuICAgIC8vICAgQmVnaW5zV2l0aCxcclxuICAgIC8vICAgRW5kc1dpdGgsXHJcbiAgICAvLyAgIEFmdGVyLFxyXG4gICAgLy8gICBCZWZvcmUsXHJcbiAgICBJblRoZUxhc3QsXHJcbiAgICBOb3RJblRoZUxhc3QsXHJcbiAgICBUb2RheSxcclxuICAgIFRoaXNXZWVrLFxyXG4gICAgVGhpc01vbnRoLFxyXG4gICAgRGF0ZVJhbmdlLFxyXG4gICAgRHVlSW4sXHJcbiAgICBOb3REdWVJbixcclxuICAgIE9uLFxyXG4gICAgSXNFbXB0eSxcclxuICAgIElzTm90RW1wdHksXHJcbiAgICBJblxyXG5dXHJcblxyXG4vKipcclxuICogZ2V0cyBhIHNtYXJ0IGZpbHRlciBvcGVyYXRvciBpdGVtXHJcbiAqIEBwYXJhbSBvcGVyYXRvciBsZWdhY3kgb3BlcmF0b3JcclxuICogQHBhcmFtIHR5cGUgc21hcnQgZmlsdGVyJ3MgdHlwZVxyXG4gKiBAcmV0dXJucyBzbWFydCBmaWx0ZXIgb3BlcmF0b3IgaXRlbVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldFNtYXJ0QnVpbGRlck9wZXJhdG9yKG9wZXJhdG9yOiBzdHJpbmcsIHR5cGU6IFBlcFNtYXJ0RmlsdGVyVHlwZSk6IElQZXBTbWFydEZpbHRlck9wZXJhdG9yIHwgbnVsbCB7XHJcbiAgICBjb25zdCBzbWFydEZpbHRlck9wZXJhdG9yID0gUGVwUXVlcnlCdWlsZGVyT3BlcmF0b3JzLmZpbmQoaXRlbSA9PlxyXG4gICAgICAgIGl0ZW0ubGVnYWN5ID09PSBvcGVyYXRvciAmJlxyXG4gICAgICAgIChpdGVtLnR5cGUgPT09IG51bGwgfHwgaXRlbS50eXBlLmluY2x1ZGVzKHR5cGUpKVxyXG4gICAgKTtcclxuICAgIHJldHVybiBzbWFydEZpbHRlck9wZXJhdG9yID8gc21hcnRGaWx0ZXJPcGVyYXRvci5zbWFydEZpbHRlciA6IG51bGw7XHJcbn1cclxuXHJcbi8qKlxyXG4gKiBnZXRzIGEgbGVnYWN5IG9wZXJhdG9yIHZhbHVlXHJcbiAqIEBwYXJhbSBvcGVyYXRvciBzbWFydCBmaWx0ZXIgb3BlcmF0b3IgaXRlbVxyXG4gKiBAcGFyYW0gdHlwZSBzbWFydCBmaWx0ZXIncyB0eXBlXHJcbiAqIEByZXR1cm5zIGxlZ2FjeSBvcGVyYXRvciB2YWx1ZVxyXG4gKi9cclxuZXhwb3J0IGZ1bmN0aW9uIGdldExlZ2FjeU9wZXJhdG9yKG9wZXJhdG9yOiBJUGVwU21hcnRGaWx0ZXJPcGVyYXRvciwgdHlwZTogUGVwU21hcnRGaWx0ZXJUeXBlKTogc3RyaW5nIHwgbnVsbCB7XHJcbiAgICBjb25zdCBsZWdhY3lPcGVyYXRvciA9IFBlcFF1ZXJ5QnVpbGRlck9wZXJhdG9ycy5maW5kKGl0ZW0gPT5cclxuICAgICAgICBpdGVtLnNtYXJ0RmlsdGVyID09PSBvcGVyYXRvciAmJlxyXG4gICAgICAgIChpdGVtLnR5cGUgPT09IG51bGwgfHwgaXRlbS50eXBlLmluY2x1ZGVzKHR5cGUpKVxyXG4gICAgKTtcclxuICAgIHJldHVybiBsZWdhY3lPcGVyYXRvciA/IGxlZ2FjeU9wZXJhdG9yLmxlZ2FjeSA6IG51bGw7XHJcbn1cclxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RydWN0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpYi9xdWVyeS1idWlsZGVyL2NvbW1vbi9tb2RlbC9zdHJ1Y3R1cmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgSVBlcFF1ZXJ5RGVwdGgge1xyXG4gICAgY3VycmVudDogbnVtYmVyLFxyXG4gICAgbWF4OiBudW1iZXJcclxufSJdfQ==
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
export class PepQueryBuilderTypeMap {
|
|
2
|
-
constructor() {
|
|
3
|
-
this.loadTypes();
|
|
4
|
-
}
|
|
5
|
-
loadTypes() {
|
|
6
|
-
this.map = new Map();
|
|
7
|
-
this.map.set('Bool', 'boolean');
|
|
8
|
-
this.map.set('JsonBool', 'boolean');
|
|
9
|
-
this.map.set('Integer', 'int');
|
|
10
|
-
this.map.set('Double', 'int');
|
|
11
|
-
this.map.set('String', 'text');
|
|
12
|
-
this.map.set('Guid', 'text');
|
|
13
|
-
this.map.set('Date', 'date');
|
|
14
|
-
this.map.set('DateTime', 'date-time');
|
|
15
|
-
this.map.set('MultipleStringValues', 'multi-select');
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Converts legacy field type to smart builder type
|
|
19
|
-
* @param type legacy type
|
|
20
|
-
* @returns smart builder field type
|
|
21
|
-
*/
|
|
22
|
-
getSmartBuilderType(key) {
|
|
23
|
-
const item = this.map.get(key);
|
|
24
|
-
return item ? item : null;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS1tYXAuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvY29tbW9uL21vZGVsL3R5cGUtbWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyxzQkFBc0I7SUFHL0I7UUFDSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVPLFNBQVM7UUFDYixJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksR0FBRyxFQUE4QixDQUFDO1FBQ2pELElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNoQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDcEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQy9CLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDL0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzdCLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztRQUM3QixJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxVQUFVLEVBQUUsV0FBVyxDQUFDLENBQUM7UUFDdEMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsc0JBQXNCLEVBQUUsY0FBYyxDQUFDLENBQUM7SUFDekQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxtQkFBbUIsQ0FBQyxHQUFXO1FBQzNCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9CLE9BQU8sSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUM5QixDQUFDO0NBRUoiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQZXBTbWFydEZpbHRlclR5cGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9zbWFydC1maWx0ZXJzJztcclxuXHJcblxyXG5leHBvcnQgY2xhc3MgUGVwUXVlcnlCdWlsZGVyVHlwZU1hcCB7XHJcbiAgICBwcml2YXRlIG1hcDogTWFwPHN0cmluZywgUGVwU21hcnRGaWx0ZXJUeXBlPjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHtcclxuICAgICAgICB0aGlzLmxvYWRUeXBlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgbG9hZFR5cGVzKCkge1xyXG4gICAgICAgIHRoaXMubWFwID0gbmV3IE1hcDxzdHJpbmcsIFBlcFNtYXJ0RmlsdGVyVHlwZT4oKTtcclxuICAgICAgICB0aGlzLm1hcC5zZXQoJ0Jvb2wnLCAnYm9vbGVhbicpO1xyXG4gICAgICAgIHRoaXMubWFwLnNldCgnSnNvbkJvb2wnLCAnYm9vbGVhbicpO1xyXG4gICAgICAgIHRoaXMubWFwLnNldCgnSW50ZWdlcicsICdpbnQnKTtcclxuICAgICAgICB0aGlzLm1hcC5zZXQoJ0RvdWJsZScsICdpbnQnKTtcclxuICAgICAgICB0aGlzLm1hcC5zZXQoJ1N0cmluZycsICd0ZXh0Jyk7XHJcbiAgICAgICAgdGhpcy5tYXAuc2V0KCdHdWlkJywgJ3RleHQnKTtcclxuICAgICAgICB0aGlzLm1hcC5zZXQoJ0RhdGUnLCAnZGF0ZScpO1xyXG4gICAgICAgIHRoaXMubWFwLnNldCgnRGF0ZVRpbWUnLCAnZGF0ZS10aW1lJyk7XHJcbiAgICAgICAgdGhpcy5tYXAuc2V0KCdNdWx0aXBsZVN0cmluZ1ZhbHVlcycsICdtdWx0aS1zZWxlY3QnKTtcclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIENvbnZlcnRzIGxlZ2FjeSBmaWVsZCB0eXBlIHRvIHNtYXJ0IGJ1aWxkZXIgdHlwZVxyXG4gICAgICogQHBhcmFtIHR5cGUgbGVnYWN5IHR5cGVcclxuICAgICAqIEByZXR1cm5zIHNtYXJ0IGJ1aWxkZXIgZmllbGQgdHlwZVxyXG4gICAgICovXHJcbiAgICBnZXRTbWFydEJ1aWxkZXJUeXBlKGtleTogc3RyaW5nKTogUGVwU21hcnRGaWx0ZXJUeXBlIHwgbnVsbCB7XHJcbiAgICAgICAgY29uc3QgaXRlbSA9IHRoaXMubWFwLmdldChrZXkpO1xyXG4gICAgICAgIHJldHVybiBpdGVtID8gaXRlbSA6IG51bGw7XHJcbiAgICB9XHJcblxyXG59XHJcblxyXG4iXX0=
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export var PepOperatorTypes;
|
|
2
|
-
(function (PepOperatorTypes) {
|
|
3
|
-
PepOperatorTypes["And"] = "AND";
|
|
4
|
-
PepOperatorTypes["Or"] = "OR";
|
|
5
|
-
})(PepOperatorTypes || (PepOperatorTypes = {}));
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvcXVlcnktYnVpbGRlci9jb21tb24vbW9kZWwvdHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQU4sSUFBWSxnQkFHWDtBQUhELFdBQVksZ0JBQWdCO0lBQ3hCLCtCQUFXLENBQUE7SUFDWCw2QkFBUyxDQUFBO0FBQ2IsQ0FBQyxFQUhXLGdCQUFnQixLQUFoQixnQkFBZ0IsUUFHM0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZW51bSBQZXBPcGVyYXRvclR5cGVzIHtcclxuICAgIEFuZCA9ICdBTkQnLFxyXG4gICAgT3IgPSAnT1InXHJcbn1cclxuIl19
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { getLegacyOperator } from '../model/operator';
|
|
3
|
-
import { getLegacyOperationUnit } from '../model/operator-unit';
|
|
4
|
-
import { PepSmartFilterOperators } from '@pepperi-addons/ngx-lib/smart-filters';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class PepOutputQueryService {
|
|
7
|
-
constructor() {
|
|
8
|
-
//
|
|
9
|
-
}
|
|
10
|
-
/**
|
|
11
|
-
* generates a legacy query structure
|
|
12
|
-
* @param filters UI smart filters structure
|
|
13
|
-
* @returns legacy query
|
|
14
|
-
*/
|
|
15
|
-
generateQuery(filters) {
|
|
16
|
-
this.initParams();
|
|
17
|
-
return this.sectionWalk(filters);
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* init params
|
|
21
|
-
*/
|
|
22
|
-
initParams() {
|
|
23
|
-
this._complexIdCounter = 1;
|
|
24
|
-
this._expressionIdCounter = 1;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* a recursive function dynamically builds legacy query structure
|
|
28
|
-
* @param current UI object represents either a section or filter component
|
|
29
|
-
* @returns section query data
|
|
30
|
-
*/
|
|
31
|
-
sectionWalk(current) {
|
|
32
|
-
let section = null;
|
|
33
|
-
Object.keys(current).forEach(key => {
|
|
34
|
-
if (key.includes('item')) {
|
|
35
|
-
section = this.addToSection(section, {
|
|
36
|
-
ExpressionId: (this._expressionIdCounter++).toString(),
|
|
37
|
-
ApiName: current[key].fieldId,
|
|
38
|
-
Operation: getLegacyOperator(current[key].operator, current[key].fieldType),
|
|
39
|
-
Values: this.getItemValues(current[key])
|
|
40
|
-
}, current.operator);
|
|
41
|
-
}
|
|
42
|
-
else if (key.includes('section')) {
|
|
43
|
-
const childSection = this.sectionWalk(current[key]);
|
|
44
|
-
if (childSection) {
|
|
45
|
-
section = this.addToSection(section, childSection, current.operator);
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
});
|
|
49
|
-
return section;
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* adds a legacy filter object to the current query structure
|
|
53
|
-
* @param section section query data
|
|
54
|
-
* @param item filter item
|
|
55
|
-
* @param operator query operator
|
|
56
|
-
* @returns
|
|
57
|
-
*/
|
|
58
|
-
addToSection(section, item, operator) {
|
|
59
|
-
return section ? this.createSection(section, item, operator) : item;
|
|
60
|
-
}
|
|
61
|
-
/**
|
|
62
|
-
* creates a legacy complex object
|
|
63
|
-
* @param left LeftNode object
|
|
64
|
-
* @param right RightNode object
|
|
65
|
-
* @param operator query operator
|
|
66
|
-
* @returns legacy complex object
|
|
67
|
-
*/
|
|
68
|
-
createSection(left, right, operator) {
|
|
69
|
-
return {
|
|
70
|
-
ComplexId: (this._complexIdCounter++).toString(),
|
|
71
|
-
LeftNode: left,
|
|
72
|
-
RightNode: right,
|
|
73
|
-
Operation: operator
|
|
74
|
-
};
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* gets legacy filter values object
|
|
78
|
-
* @param current UI filter object's values
|
|
79
|
-
* @returns an array represents legacy values
|
|
80
|
-
*/
|
|
81
|
-
getItemValues(current) {
|
|
82
|
-
var _a;
|
|
83
|
-
let values = [];
|
|
84
|
-
if ((_a = current === null || current === void 0 ? void 0 : current.values) === null || _a === void 0 ? void 0 : _a.first) {
|
|
85
|
-
if (current.operator === PepSmartFilterOperators.In) { //multi select
|
|
86
|
-
values = current.values.first;
|
|
87
|
-
}
|
|
88
|
-
else if (current.operator === PepSmartFilterOperators.InTheLast ||
|
|
89
|
-
current.operator === PepSmartFilterOperators.NotInTheLast ||
|
|
90
|
-
current.operator === PepSmartFilterOperators.DueIn ||
|
|
91
|
-
current.operator === PepSmartFilterOperators.NotDueIn) { //operation unit
|
|
92
|
-
values.push(current.values.first);
|
|
93
|
-
if (current.operatorUnit) {
|
|
94
|
-
values.push(getLegacyOperationUnit(current.operatorUnit));
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
values.push(current.values.first);
|
|
99
|
-
if (current.values.second) {
|
|
100
|
-
values.push(current.values.second);
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
return values;
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
PepOutputQueryService.ɵprov = i0.ɵɵdefineInjectable({ factory: function PepOutputQueryService_Factory() { return new PepOutputQueryService(); }, token: PepOutputQueryService, providedIn: "root" });
|
|
108
|
-
PepOutputQueryService.decorators = [
|
|
109
|
-
{ type: Injectable, args: [{
|
|
110
|
-
providedIn: 'root'
|
|
111
|
-
},] }
|
|
112
|
-
];
|
|
113
|
-
PepOutputQueryService.ctorParameters = () => [];
|
|
114
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3V0cHV0LXF1ZXJ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL3F1ZXJ5LWJ1aWxkZXIvY29tbW9uL3NlcnZpY2VzL291dHB1dC1xdWVyeS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdEQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sdUNBQXVDLENBQUM7O0FBTWhGLE1BQU0sT0FBTyxxQkFBcUI7SUFJOUI7UUFDSSxFQUFFO0lBQ04sQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxhQUFhLENBQUMsT0FBWTtRQUN0QixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFFbEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFRDs7T0FFRztJQUNLLFVBQVU7UUFDZCxJQUFJLENBQUMsaUJBQWlCLEdBQUcsQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxDQUFDLENBQUM7SUFDbEMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSyxXQUFXLENBQUMsT0FBWTtRQUM1QixJQUFJLE9BQU8sR0FBUSxJQUFJLENBQUM7UUFFeEIsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDL0IsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUN0QixPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLEVBQUU7b0JBQ2pDLFlBQVksRUFBRSxDQUFDLElBQUksQ0FBQyxvQkFB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QVUsU0FBQztnQkFDUixVQUFVLEVBQUUsTUFBTTthQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSVBlcFF1ZXJ5SXRlbSB9IGZyb20gJy4uL21vZGVsL2xlZ2FjeSc7XHJcbmltcG9ydCB7IGdldExlZ2FjeU9wZXJhdG9yIH0gZnJvbSAnLi4vbW9kZWwvb3BlcmF0b3InO1xyXG5pbXBvcnQgeyBnZXRMZWdhY3lPcGVyYXRpb25Vbml0IH0gZnJvbSAnLi4vbW9kZWwvb3BlcmF0b3ItdW5pdCc7XHJcbmltcG9ydCB7IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvc21hcnQtZmlsdGVycyc7XHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQZXBPdXRwdXRRdWVyeVNlcnZpY2Uge1xyXG4gICAgcHJpdmF0ZSBfY29tcGxleElkQ291bnRlcjogbnVtYmVyO1xyXG4gICAgcHJpdmF0ZSBfZXhwcmVzc2lvbklkQ291bnRlcjogbnVtYmVyO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgICAgIC8vXHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBnZW5lcmF0ZXMgYSBsZWdhY3kgcXVlcnkgc3RydWN0dXJlIFxyXG4gICAgICogQHBhcmFtIGZpbHRlcnMgVUkgc21hcnQgZmlsdGVycyBzdHJ1Y3R1cmUgICAgIFxyXG4gICAgICogQHJldHVybnMgbGVnYWN5IHF1ZXJ5XHJcbiAgICAgKi9cclxuICAgIGdlbmVyYXRlUXVlcnkoZmlsdGVyczogYW55KSB7XHJcbiAgICAgICAgdGhpcy5pbml0UGFyYW1zKCk7XHJcblxyXG4gICAgICAgIHJldHVybiB0aGlzLnNlY3Rpb25XYWxrKGZpbHRlcnMpO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogaW5pdCBwYXJhbXNcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBpbml0UGFyYW1zKCkge1xyXG4gICAgICAgIHRoaXMuX2NvbXBsZXhJZENvdW50ZXIgPSAxO1xyXG4gICAgICAgIHRoaXMuX2V4cHJlc3Npb25JZENvdW50ZXIgPSAxO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogYSByZWN1cnNpdmUgZnVuY3Rpb24gZHluYW1pY2FsbHkgYnVpbGRzIGxlZ2FjeSBxdWVyeSBzdHJ1Y3R1cmVcclxuICAgICAqIEBwYXJhbSBjdXJyZW50IFVJIG9iamVjdCByZXByZXNlbnRzIGVpdGhlciBhIHNlY3Rpb24gb3IgZmlsdGVyIGNvbXBvbmVudFxyXG4gICAgICogQHJldHVybnMgc2VjdGlvbiBxdWVyeSBkYXRhXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgc2VjdGlvbldhbGsoY3VycmVudDogYW55KSB7XHJcbiAgICAgICAgbGV0IHNlY3Rpb246IGFueSA9IG51bGw7XHJcblxyXG4gICAgICAgIE9iamVjdC5rZXlzKGN1cnJlbnQpLmZvckVhY2goa2V5ID0+IHtcclxuICAgICAgICAgICAgaWYgKGtleS5pbmNsdWRlcygnaXRlbScpKSB7XHJcbiAgICAgICAgICAgICAgICBzZWN0aW9uID0gdGhpcy5hZGRUb1NlY3Rpb24oc2VjdGlvbiwge1xyXG4gICAgICAgICAgICAgICAgICAgIEV4cHJlc3Npb25JZDogKHRoaXMuX2V4cHJlc3Npb25JZENvdW50ZXIrKykudG9TdHJpbmcoKSxcclxuICAgICAgICAgICAgICAgICAgICBBcGlOYW1lOiBjdXJyZW50W2tleV0uZmllbGRJZCxcclxuICAgICAgICAgICAgICAgICAgICBPcGVyYXRpb246IGdldExlZ2FjeU9wZXJhdG9yKGN1cnJlbnRba2V5XS5vcGVyYXRvciwgY3VycmVudFtrZXldLmZpZWxkVHlwZSksXHJcbiAgICAgICAgICAgICAgICAgICAgVmFsdWVzOiB0aGlzLmdldEl0ZW1WYWx1ZXMoY3VycmVudFtrZXldKVxyXG4gICAgICAgICAgICAgICAgfSBhcyBJUGVwUXVlcnlJdGVtLCBjdXJyZW50Lm9wZXJhdG9yKTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmIChrZXkuaW5jbHVkZXMoJ3NlY3Rpb24nKSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgY2hpbGRTZWN0aW9uID0gdGhpcy5zZWN0aW9uV2FsayhjdXJyZW50W2tleV0pO1xyXG4gICAgICAgICAgICAgICAgaWYgKGNoaWxkU2VjdGlvbikge1xyXG4gICAgICAgICAgICAgICAgICAgIHNlY3Rpb24gPSB0aGlzLmFkZFRvU2VjdGlvbihzZWN0aW9uLCBjaGlsZFNlY3Rpb24sIGN1cnJlbnQub3BlcmF0b3IpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHJldHVybiBzZWN0aW9uO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogYWRkcyBhIGxlZ2FjeSBmaWx0ZXIgb2JqZWN0IHRvIHRoZSBjdXJyZW50IHF1ZXJ5IHN0cnVjdHVyZVxyXG4gICAgICogQHBhcmFtIHNlY3Rpb24gc2VjdGlvbiBxdWVyeSBkYXRhXHJcbiAgICAgKiBAcGFyYW0gaXRlbSBmaWx0ZXIgaXRlbVxyXG4gICAgICogQHBhcmFtIG9wZXJhdG9yIHF1ZXJ5IG9wZXJhdG9yXHJcbiAgICAgKiBAcmV0dXJucyBcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBhZGRUb1NlY3Rpb24oc2VjdGlvbjogYW55LCBpdGVtOiBhbnksIG9wZXJhdG9yOiBzdHJpbmcpOiBhbnkge1xyXG4gICAgICAgIHJldHVybiBzZWN0aW9uID8gdGhpcy5jcmVhdGVTZWN0aW9uKHNlY3Rpb24sIGl0ZW0sIG9wZXJhdG9yKSA6IGl0ZW07XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBjcmVhdGVzIGEgbGVnYWN5IGNvbXBsZXggb2JqZWN0XHJcbiAgICAgKiBAcGFyYW0gbGVmdCBMZWZ0Tm9kZSBvYmplY3RcclxuICAgICAqIEBwYXJhbSByaWdodCBSaWdodE5vZGUgb2JqZWN0XHJcbiAgICAgKiBAcGFyYW0gb3BlcmF0b3IgcXVlcnkgb3BlcmF0b3JcclxuICAgICAqIEByZXR1cm5zIGxlZ2FjeSBjb21wbGV4IG9iamVjdFxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIGNyZWF0ZVNlY3Rpb24obGVmdDogYW55LCByaWdodDogYW55LCBvcGVyYXRvcjogc3RyaW5nKSB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgQ29tcGxleElkOiAodGhpcy5fY29tcGxleElkQ291bnRlcisrKS50b1N0cmluZygpLFxyXG4gICAgICAgICAgICBMZWZ0Tm9kZTogbGVmdCxcclxuICAgICAgICAgICAgUmlnaHROb2RlOiByaWdodCxcclxuICAgICAgICAgICAgT3BlcmF0aW9uOiBvcGVyYXRvclxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKipcclxuICAgICAqIGdldHMgbGVnYWN5IGZpbHRlciB2YWx1ZXMgb2JqZWN0XHJcbiAgICAgKiBAcGFyYW0gY3VycmVudCBVSSBmaWx0ZXIgb2JqZWN0J3MgdmFsdWVzXHJcbiAgICAgKiBAcmV0dXJucyBhbiBhcnJheSByZXByZXNlbnRzIGxlZ2FjeSB2YWx1ZXNcclxuICAgICAqL1xyXG4gICAgcHJpdmF0ZSBnZXRJdGVtVmFsdWVzKGN1cnJlbnQ6IGFueSkge1xyXG4gICAgICAgIGxldCB2YWx1ZXM6IGFueVtdID0gW107XHJcblxyXG4gICAgICAgIGlmIChjdXJyZW50Py52YWx1ZXM/LmZpcnN0KSB7XHJcbiAgICAgICAgICAgIGlmIChjdXJyZW50Lm9wZXJhdG9yID09PSBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5JbikgeyAvL211bHRpIHNlbGVjdCBcclxuICAgICAgICAgICAgICAgIHZhbHVlcyA9IGN1cnJlbnQudmFsdWVzLmZpcnN0O1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKFxyXG4gICAgICAgICAgICAgICAgY3VycmVudC5vcGVyYXRvciA9PT0gUGVwU21hcnRGaWx0ZXJPcGVyYXRvcnMuSW5UaGVMYXN0IHx8XHJcbiAgICAgICAgICAgICAgICBjdXJyZW50Lm9wZXJhdG9yID09PSBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5Ob3RJblRoZUxhc3QgfHxcclxuICAgICAgICAgICAgICAgIGN1cnJlbnQub3BlcmF0b3IgPT09IFBlcFNtYXJ0RmlsdGVyT3BlcmF0b3JzLkR1ZUluIHx8XHJcbiAgICAgICAgICAgICAgICBjdXJyZW50Lm9wZXJhdG9yID09PSBQZXBTbWFydEZpbHRlck9wZXJhdG9ycy5Ob3REdWVJblxyXG4gICAgICAgICAgICApIHsgLy9vcGVyYXRpb24gdW5pdCAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgdmFsdWVzLnB1c2goY3VycmVudC52YWx1ZXMuZmlyc3QpO1xyXG4gICAgICAgICAgICAgICAgaWYgKGN1cnJlbnQub3BlcmF0b3JVbml0KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdmFsdWVzLnB1c2goZ2V0TGVnYWN5T3BlcmF0aW9uVW5pdChjdXJyZW50Lm9wZXJhdG9yVW5pdCkpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgdmFsdWVzLnB1c2goY3VycmVudC52YWx1ZXMuZmlyc3QpO1xyXG4gICAgICAgICAgICAgICAgaWYgKGN1cnJlbnQudmFsdWVzLnNlY29uZCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlcy5wdXNoKGN1cnJlbnQudmFsdWVzLnNlY29uZCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHJldHVybiB2YWx1ZXM7XHJcbiAgICB9XHJcblxyXG59Il19
|