@pepperi-addons/ngx-lib 0.2.60 → 0.2.61-query-builder.1
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 +5 -8
- package/address/pepperi-addons-ngx-lib-address.metadata.json +1 -1
- package/attachment/attachment.component.d.ts +1 -0
- package/attachment/attachment.component.theme.scss +1 -3
- package/attachment/pepperi-addons-ngx-lib-attachment.metadata.json +1 -1
- package/bread-crumbs/bread-crumbs.component.theme.scss +9 -9
- package/bread-crumbs/pepperi-addons-ngx-lib-bread-crumbs.metadata.json +1 -1
- package/bundles/pepperi-addons-ngx-lib-address.umd.js +2 -2
- package/bundles/pepperi-addons-ngx-lib-address.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-attachment.umd.js +7 -2
- package/bundles/pepperi-addons-ngx-lib-attachment.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-bread-crumbs.umd.js +2 -2
- package/bundles/pepperi-addons-ngx-lib-bread-crumbs.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-button.umd.js +2 -2
- 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 +5 -2
- package/bundles/pepperi-addons-ngx-lib-checkbox.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-color.umd.js +9 -4
- package/bundles/pepperi-addons-ngx-lib-color.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-date.umd.js +6 -4
- package/bundles/pepperi-addons-ngx-lib-date.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-dialog.umd.js +3 -3
- package/bundles/pepperi-addons-ngx-lib-dialog.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-field-title.umd.js +2 -2
- package/bundles/pepperi-addons-ngx-lib-field-title.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-files-uploader.umd.js +2 -2
- package/bundles/pepperi-addons-ngx-lib-files-uploader.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-form.umd.js +27 -24
- package/bundles/pepperi-addons-ngx-lib-form.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-group-buttons.umd.js +2 -2
- 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 +7 -2
- package/bundles/pepperi-addons-ngx-lib-image.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-images-filmstrip.umd.js +7 -2
- package/bundles/pepperi-addons-ngx-lib-images-filmstrip.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-list.umd.js +9 -9
- 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 +7 -2
- package/bundles/pepperi-addons-ngx-lib-quantity-selector.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-query-builder.umd.js +1101 -0
- package/bundles/pepperi-addons-ngx-lib-query-builder.umd.js.map +1 -0
- package/bundles/pepperi-addons-ngx-lib-rich-html-textarea.umd.js +7 -2
- 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 +7 -2
- package/bundles/pepperi-addons-ngx-lib-select.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-separator.umd.js +10 -2
- package/bundles/pepperi-addons-ngx-lib-separator.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-side-bar.umd.js +2 -2
- package/bundles/pepperi-addons-ngx-lib-side-bar.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-signature.umd.js +7 -2
- 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 +2 -2
- package/bundles/pepperi-addons-ngx-lib-slider.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-smart-filters.umd.js +308 -41
- package/bundles/pepperi-addons-ngx-lib-smart-filters.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-textarea.umd.js +7 -2
- 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 +6 -4
- package/bundles/pepperi-addons-ngx-lib-textbox.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib-top-bar.umd.js +2 -2
- package/bundles/pepperi-addons-ngx-lib-top-bar.umd.js.map +1 -1
- package/bundles/pepperi-addons-ngx-lib.umd.js +38 -36
- package/bundles/pepperi-addons-ngx-lib.umd.js.map +1 -1
- package/button/button.component.theme.scss +0 -2
- package/button/pepperi-addons-ngx-lib-button.metadata.json +1 -1
- package/checkbox/checkbox.component.theme.scss +0 -2
- package/checkbox/pepperi-addons-ngx-lib-checkbox.metadata.json +1 -1
- package/color/color-picker.component.theme.scss +169 -175
- package/color/color.component.d.ts +1 -0
- package/color/color.component.theme.scss +0 -7
- package/color/pepperi-addons-ngx-lib-color.metadata.json +1 -1
- package/core/common/services/addon.service.d.ts +1 -2
- package/core/common/services/file.service.d.ts +4 -4
- package/core/customization/customization.service.d.ts +1 -0
- package/date/date.component.theme.scss +0 -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 +3 -3
- package/esm2015/address/address.module.js +1 -1
- package/esm2015/address/public-api.js +1 -1
- package/esm2015/attachment/attachment.component.js +8 -3
- package/esm2015/attachment/attachment.module.js +1 -1
- package/esm2015/attachment/public-api.js +1 -1
- package/esm2015/bread-crumbs/bread-crumbs.component.js +3 -3
- 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 +3 -3
- 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 +6 -3
- package/esm2015/checkbox/checkbox.module.js +1 -1
- package/esm2015/checkbox/public-api.js +1 -1
- package/esm2015/color/color-picker.component.js +29 -29
- package/esm2015/color/color.component.js +8 -3
- 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 +4 -19
- 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 +25 -4
- 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 +4 -2
- 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 +7 -5
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- 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 +3 -3
- package/esm2015/form/internal-button.component.js +21 -18
- 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 +3 -3
- 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 +8 -3
- package/esm2015/image/image.module.js +1 -1
- package/esm2015/image/public-api.js +1 -1
- package/esm2015/images-filmstrip/images-filmstrip.component.js +8 -3
- 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 +3 -3
- 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 +8 -3
- package/esm2015/quantity-selector/quantity-selector.module.js +1 -1
- package/esm2015/quantity-selector/quantity-selector.pipes.js +1 -1
- package/esm2015/query-builder/common/model/filter.js +2 -0
- package/esm2015/query-builder/common/model/legacy.js +2 -0
- package/esm2015/query-builder/common/model/operator-unit.js +42 -0
- package/esm2015/query-builder/common/model/operator.js +207 -0
- package/esm2015/query-builder/common/model/structure.js +2 -0
- package/esm2015/query-builder/common/model/type-map.js +27 -0
- package/esm2015/query-builder/common/model/type.js +6 -0
- package/esm2015/query-builder/common/services/output-query.service.js +111 -0
- package/esm2015/query-builder/common/services/type-convertor.service.js +40 -0
- package/esm2015/query-builder/pepperi-addons-ngx-lib-query-builder.js +9 -0
- package/esm2015/query-builder/public-api.js +8 -0
- package/esm2015/query-builder/query-builder-item/query-builder-item.component.js +115 -0
- package/esm2015/query-builder/query-builder-section/query-builder-section.component.js +64 -0
- package/esm2015/query-builder/query-builder.component.js +104 -0
- package/esm2015/query-builder/query-builder.module.js +35 -0
- package/esm2015/query-builder/query-builder.service.js +280 -0
- package/esm2015/rich-html-textarea/public-api.js +1 -1
- package/esm2015/rich-html-textarea/rich-html-textarea.component.js +8 -3
- 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 +8 -3
- package/esm2015/select/select.module.js +1 -1
- package/esm2015/separator/public-api.js +1 -1
- package/esm2015/separator/separator.component.js +11 -3
- 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 +3 -3
- 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 +8 -3
- 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 +3 -3
- package/esm2015/slider/slider.module.js +1 -1
- package/esm2015/smart-filters/boolean-filter/boolean-filter.component.js +23 -3
- package/esm2015/smart-filters/common/filter-actions.component.js +2 -2
- package/esm2015/smart-filters/common/model/base-filter-component.js +35 -8
- package/esm2015/smart-filters/common/model/creator.js +8 -2
- package/esm2015/smart-filters/common/model/field.js +12 -1
- 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 +45 -2
- package/esm2015/smart-filters/multi-select-filter/multi-select-filter.component.js +53 -14
- package/esm2015/smart-filters/number-filter/number-filter.component.js +27 -2
- package/esm2015/smart-filters/public-api.js +2 -1
- package/esm2015/smart-filters/smart-filters.component.js +3 -3
- package/esm2015/smart-filters/smart-filters.module.js +16 -3
- package/esm2015/smart-filters/text-filter/text-filter.component.js +79 -0
- package/esm2015/textarea/public-api.js +1 -1
- package/esm2015/textarea/textarea.component.js +8 -3
- 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 +7 -5
- 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 +3 -3
- 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 +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-address.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-attachment.js +7 -2
- package/fesm2015/pepperi-addons-ngx-lib-attachment.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.js +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-button.js +2 -2
- 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 +5 -2
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-color.js +35 -30
- package/fesm2015/pepperi-addons-ngx-lib-color.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-date.js +6 -4
- package/fesm2015/pepperi-addons-ngx-lib-date.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-dialog.js +3 -3
- package/fesm2015/pepperi-addons-ngx-lib-dialog.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-field-title.js +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-field-title.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-files-uploader.js +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-files-uploader.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-form.js +27 -24
- package/fesm2015/pepperi-addons-ngx-lib-form.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-group-buttons.js +2 -2
- 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 +7 -2
- package/fesm2015/pepperi-addons-ngx-lib-image.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.js +7 -2
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-list.js +9 -9
- 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 +7 -2
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.js +1011 -0
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.js.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.js +7 -2
- 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 +7 -2
- package/fesm2015/pepperi-addons-ngx-lib-select.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-separator.js +10 -2
- package/fesm2015/pepperi-addons-ngx-lib-separator.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-side-bar.js +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-side-bar.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-signature.js +7 -2
- 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 +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-slider.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-smart-filters.js +295 -38
- package/fesm2015/pepperi-addons-ngx-lib-smart-filters.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textarea.js +7 -2
- 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 +6 -4
- package/fesm2015/pepperi-addons-ngx-lib-textbox.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-top-bar.js +2 -2
- package/fesm2015/pepperi-addons-ngx-lib-top-bar.js.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib.js +42 -34
- package/fesm2015/pepperi-addons-ngx-lib.js.map +1 -1
- package/field-title/field-title.component.theme.scss +0 -2
- package/field-title/pepperi-addons-ngx-lib-field-title.metadata.json +1 -1
- package/files-uploader/files-uploader.component.theme.scss +0 -2
- package/files-uploader/pepperi-addons-ngx-lib-files-uploader.metadata.json +1 -1
- package/form/indicators.component.theme.scss +7 -7
- package/form/internal-button.component.d.ts +0 -1
- 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 +1 -0
- package/image/image.component.theme.scss +33 -35
- package/image/pepperi-addons-ngx-lib-image.metadata.json +1 -1
- package/images-filmstrip/images-filmstrip.component.d.ts +1 -0
- package/images-filmstrip/images-filmstrip.component.theme.scss +33 -32
- package/images-filmstrip/pepperi-addons-ngx-lib-images-filmstrip.metadata.json +1 -1
- package/list/list-total.component.theme.scss +10 -10
- package/list/pepperi-addons-ngx-lib-list.metadata.json +1 -1
- package/menu/pepperi-addons-ngx-lib-menu.metadata.json +1 -1
- package/package.json +5 -5
- 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 +1 -0
- package/quantity-selector/quantity-selector.component.theme.scss +77 -77
- package/query-builder/common/model/filter.d.ts +6 -0
- package/query-builder/common/model/legacy.d.ts +26 -0
- package/query-builder/common/model/operator-unit.d.ts +13 -0
- package/query-builder/common/model/operator.d.ts +21 -0
- package/query-builder/common/model/structure.d.ts +4 -0
- package/query-builder/common/model/type-map.d.ts +12 -0
- package/query-builder/common/model/type.d.ts +4 -0
- package/query-builder/common/services/output-query.service.d.ts +44 -0
- package/query-builder/common/services/type-convertor.service.d.ts +10 -0
- package/query-builder/package.json +14 -0
- package/query-builder/pepperi-addons-ngx-lib-query-builder.d.ts +8 -0
- package/query-builder/pepperi-addons-ngx-lib-query-builder.metadata.json +1 -0
- package/query-builder/public-api.d.ts +4 -0
- package/query-builder/query-builder-item/query-builder-item.component.d.ts +37 -0
- package/query-builder/query-builder-section/query-builder-section.component.d.ts +27 -0
- package/query-builder/query-builder-section/query-builder-section.component.theme.scss +7 -0
- package/query-builder/query-builder.component.d.ts +35 -0
- package/query-builder/query-builder.module.d.ts +2 -0
- package/query-builder/query-builder.service.d.ts +94 -0
- 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 +1 -0
- package/rich-html-textarea/rich-html-textarea.component.theme.scss +241 -237
- package/search/pepperi-addons-ngx-lib-search.metadata.json +1 -1
- package/select/pepperi-addons-ngx-lib-select.metadata.json +1 -1
- package/select/select.component.d.ts +1 -0
- package/select/select.component.theme.scss +0 -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 +26 -25
- package/signature/pepperi-addons-ngx-lib-signature.metadata.json +1 -1
- package/signature/signature.component.d.ts +1 -0
- package/signature/signature.component.theme.scss +8 -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 +66 -65
- package/smart-filters/boolean-filter/boolean-filter.component.d.ts +6 -1
- package/smart-filters/common/model/base-filter-component.d.ts +7 -0
- package/smart-filters/common/model/field.d.ts +4 -0
- package/smart-filters/common/model/operator.d.ts +1 -0
- package/smart-filters/common/model/type.d.ts +2 -2
- package/smart-filters/date-filter/date-filter.component.d.ts +8 -1
- package/smart-filters/multi-select-filter/multi-select-filter.component.d.ts +6 -0
- package/smart-filters/number-filter/number-filter.component.d.ts +5 -0
- package/smart-filters/pepperi-addons-ngx-lib-smart-filters.metadata.json +1 -1
- package/smart-filters/public-api.d.ts +1 -0
- package/smart-filters/smart-filters.component.theme.scss +9 -10
- package/smart-filters/text-filter/text-filter.component.d.ts +17 -0
- package/src/assets/i18n/de.ngx-lib.json +77 -77
- package/src/assets/i18n/en.ngx-lib.json +139 -138
- 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 +37 -35
- package/src/core/style/abstracts/functions.scss +439 -422
- package/src/core/style/abstracts/mixins.scss +800 -797
- package/src/core/style/abstracts/variables.scss +545 -545
- package/src/core/style/base/base.scss +874 -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 +259 -255
- package/src/core/style/components/button.scss +346 -349
- package/src/core/style/components/checkbox.scss +476 -473
- package/src/core/style/components/datetime.scss +182 -22
- package/src/core/style/components/file.scss +223 -219
- package/src/core/style/components/general.scss +1002 -1086
- package/src/core/style/components/input.scss +98 -94
- package/src/core/style/components/quantity-selector.scss +17 -14
- package/src/core/style/components/radio-button.scss +171 -168
- package/src/core/style/components/select.scss +187 -185
- package/src/core/style/components/signature.scss +14 -12
- package/src/core/style/components/splitter.scss +67 -64
- package/src/core/style/components/textarea.scss +198 -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 +1 -0
- 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/theming.scss +125 -220
- package/top-bar/pepperi-addons-ngx-lib-top-bar.metadata.json +1 -1
- package/top-bar/top-bar.component.theme.scss +9 -9
- package/form/form.component.theme.scss +0 -2
- package/form/internal-button.component.theme.scss +0 -2
- package/form/internal-menu.component.theme.scss +0 -3
- package/list/list-actions.component.theme.scss +0 -3
- package/list/list-carousel.component.theme.scss +0 -9
- package/list/list-chooser.component.theme.scss +0 -3
- package/list/list-pager.component.theme.scss +0 -3
- package/list/list-sorting.component.theme.scss +0 -3
- package/list/list-views.component.theme.scss +0 -3
- package/list/list.component.theme.scss +0 -5
- package/list/list_old.component.theme.scss +0 -5
- package/menu/menu.component.theme.scss +0 -2
- package/search/search.component.theme.scss +0 -3
- package/textbox-icon/textbox-icon.component.theme.scss +0 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pepperi-addons-ngx-lib-select.js","sources":["../../../projects/ngx-lib/select/select.component.ts","../../../projects/ngx-lib/select/select.module.ts","../../../projects/ngx-lib/select/public-api.ts","../../../projects/ngx-lib/select/pepperi-addons-ngx-lib-select.ts"],"sourcesContent":["import {\n Component,\n OnInit,\n OnChanges,\n Input,\n Output,\n EventEmitter,\n ViewChild,\n ElementRef,\n ChangeDetectionStrategy,\n OnDestroy,\n Renderer2,\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { MatSelect } from '@angular/material/select';\nimport {\n PepLayoutType,\n PepCustomizationService,\n PepHorizontalAlignment,\n DEFAULT_HORIZONTAL_ALIGNMENT,\n PepSelectFieldType,\n PepSelectField,\n IPepOption,\n} from '@pepperi-addons/ngx-lib';\n\n@Component({\n selector: 'pep-select',\n templateUrl: './select.component.html',\n styleUrls: ['./select.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PepSelectComponent implements OnChanges, OnInit, OnDestroy {\n @Input() key = '';\n @Input() value = '';\n @Input() label = '';\n @Input() type: PepSelectFieldType = 'select';\n @Input() mandatory = false;\n @Input() disabled = false;\n @Input() readonly = false;\n @Input() xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\n @Input() rowSpan = 1;\n @Input() options: Array<IPepOption> = [];\n\n private _visible = true;\n @Input()\n set visible(visible: boolean) {\n this._visible = visible;\n if (visible) {\n this.renderer.removeClass(\n this.element.nativeElement,\n 'hidden-element'\n );\n } else {\n this.renderer.addClass(\n this.element.nativeElement,\n 'hidden-element'\n );\n }\n }\n get visible(): boolean {\n return this._visible;\n }\n\n controlType = 'select';\n\n // @Input() field: PepFieldBase;\n @Input() form: FormGroup = null;\n @Input() layoutType: PepLayoutType = 'form';\n @Input() parentFieldKey: string = null;\n @Input() isActive = false;\n @Input() showTitle = true;\n @Input() emptyOption = true;\n\n @Output()\n valueChange: EventEmitter<string> = new EventEmitter<string>();\n @Output()\n formValidationChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n @ViewChild('select') select: MatSelect;\n\n standAlone = false;\n isInEditMode = false;\n isMulti = false;\n selectedValuesModel: string[];\n selectedValueModel: string;\n fieldFormattedValue = '';\n\n constructor(\n private customizationService: PepCustomizationService,\n private renderer: Renderer2,\n private element: ElementRef\n ) { }\n\n private addOptionsIfNeeded(): void {\n if (this.isMulti) {\n // Go gor all selected and add to options if not exist\n // for (let i = 0; i < this.selectedValuesModel.length; i++) {\n for (const selectedValue of this.selectedValuesModel) {\n let valueNotExist = false;\n\n if (\n this.options &&\n !this.options.find((opt) => opt.key === selectedValue)\n ) {\n valueNotExist = true;\n }\n\n // Add it to options.\n if (valueNotExist) {\n this.options.push({\n key: selectedValue,\n value: selectedValue,\n });\n }\n }\n } else {\n if (\n this.value &&\n this.value !== '' &&\n this.options &&\n !this.options.find((opt) => opt.key === this.value)\n ) {\n this.options.push({ key: this.value, value: this.value });\n }\n }\n }\n\n private setFieldFormattedValue(value: any): void {\n if (this.isMulti) {\n if (this.selectedValuesModel.length > 0) {\n this.fieldFormattedValue = this.selectedValuesModel\n .map((value) => {\n return this.options.find((opt) => opt.key === value)\n ?.value;\n })\n .join(', ');\n } else {\n this.fieldFormattedValue = '';\n }\n\n // this.fieldFormattedValue = typeof value === 'string' ? value.replace(new RegExp(';', 'g'), ', ') : '';\n } else {\n const selectedOpt = this.options.find((opt) => opt.key === value);\n\n if (selectedOpt) {\n this.fieldFormattedValue = selectedOpt.value;\n }\n }\n }\n\n private setDefaultForm(): void {\n const pepField = new PepSelectField({\n key: this.key,\n value: this.value,\n mandatory: this.mandatory,\n readonly: this.readonly,\n disabled: this.disabled,\n });\n this.form = this.customizationService.getDefaultFromGroup(pepField);\n }\n\n ngOnInit(): void {\n if (this.form === null) {\n this.standAlone = true;\n this.setDefaultForm();\n\n this.renderer.addClass(\n this.element.nativeElement,\n PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME\n );\n }\n }\n\n ngOnChanges(changes: any): void {\n if (this.standAlone) {\n this.setDefaultForm();\n }\n\n this.isMulti = this.type === 'multi';\n if (this.isMulti) {\n this.selectedValuesModel =\n this.value.length > 0 ? this.value.split(';') : [];\n } else {\n this.selectedValueModel = this.value;\n }\n\n this.addOptionsIfNeeded();\n this.setFieldFormattedValue(this.value);\n }\n\n ngOnDestroy(): void {\n //\n }\n\n selectionChange(event: any): void {\n if (!this.isMulti) {\n this.changeValue(this.selectedValueModel);\n }\n }\n\n openedChange(event: any): void {\n // Only on close.\n if (!event) {\n if (this.isMulti) {\n this.changeValue(this.selectedValuesModel.join(';'));\n }\n\n if (this.isInEditMode) {\n this.isInEditMode = false;\n }\n }\n }\n\n changeValue(value: any): void {\n this.setFieldFormattedValue(value);\n this.customizationService.updateFormFieldValue(\n this.form,\n this.key,\n // value,\n this.fieldFormattedValue,\n this.parentFieldKey\n );\n\n if (this.mandatory) {\n const fieldControl = this.form.controls[this.key];\n if (value) {\n fieldControl.setErrors(null);\n } else {\n fieldControl.setErrors({\n serverError: 'Required',\n });\n }\n this.formValidationChange.emit(this.form.valid);\n }\n\n this.valueChange.emit(value);\n }\n\n cardTemplateClicked(event: any): void {\n this.isInEditMode = true;\n\n setTimeout(() => {\n this.select.open();\n }, 0);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\n\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatSelectModule } from '@angular/material/select';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconSystemEdit,\n} from '@pepperi-addons/ngx-lib/icon';\nimport { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';\n\nimport { PepSelectComponent } from './select.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n FormsModule,\n // Material modules\n MatCommonModule,\n MatButtonModule,\n MatFormFieldModule,\n MatSelectModule,\n MatIconModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n PepFieldTitleModule,\n ],\n exports: [PepSelectComponent],\n declarations: [PepSelectComponent],\n})\nexport class PepSelectModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([pepIconSystemEdit]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/select\n */\nexport * from './select.module';\nexport * from './select.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pepperi-addons-ngx-lib-select.js","sources":["../../../projects/ngx-lib/select/select.component.ts","../../../projects/ngx-lib/select/select.module.ts","../../../projects/ngx-lib/select/public-api.ts","../../../projects/ngx-lib/select/pepperi-addons-ngx-lib-select.ts"],"sourcesContent":["import {\r\n Component,\r\n OnInit,\r\n OnChanges,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n ElementRef,\r\n ChangeDetectionStrategy,\r\n OnDestroy,\r\n Renderer2,\r\n} from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { MatSelect } from '@angular/material/select';\r\nimport {\r\n PepLayoutType,\r\n PepCustomizationService,\r\n PepHorizontalAlignment,\r\n DEFAULT_HORIZONTAL_ALIGNMENT,\r\n PepSelectFieldType,\r\n PepSelectField,\r\n IPepOption,\r\n} from '@pepperi-addons/ngx-lib';\r\n\r\n@Component({\r\n selector: 'pep-select',\r\n templateUrl: './select.component.html',\r\n styleUrls: ['./select.component.scss', './select.component.theme.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PepSelectComponent implements OnChanges, OnInit, OnDestroy {\r\n @Input() key = '';\r\n @Input() value = '';\r\n @Input() label = '';\r\n @Input() type: PepSelectFieldType = 'select';\r\n @Input() mandatory = false;\r\n @Input() disabled = false;\r\n @Input() readonly = false;\r\n @Input() xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\r\n @Input() rowSpan = 1;\r\n @Input() options: Array<IPepOption> = [];\r\n\r\n private _visible = true;\r\n @Input()\r\n set visible(visible: boolean) {\r\n this._visible = visible;\r\n if (visible) {\r\n this.renderer.removeClass(\r\n this.element.nativeElement,\r\n 'hidden-element'\r\n );\r\n } else {\r\n this.renderer.addClass(\r\n this.element.nativeElement,\r\n 'hidden-element'\r\n );\r\n }\r\n }\r\n get visible(): boolean {\r\n return this._visible;\r\n }\r\n\r\n controlType = 'select';\r\n\r\n // @Input() field: PepFieldBase;\r\n @Input() form: FormGroup = null;\r\n @Input() layoutType: PepLayoutType = 'form';\r\n @Input() parentFieldKey: string = null;\r\n @Input() isActive = false;\r\n @Input() showTitle = true;\r\n @Input() emptyOption = true;\r\n @Input() renderTitle = true;\r\n\r\n @Output()\r\n valueChange: EventEmitter<string> = new EventEmitter<string>();\r\n @Output()\r\n formValidationChange: EventEmitter<boolean> = new EventEmitter<boolean>();\r\n\r\n @ViewChild('select') select: MatSelect;\r\n\r\n standAlone = false;\r\n isInEditMode = false;\r\n isMulti = false;\r\n selectedValuesModel: string[];\r\n selectedValueModel: string;\r\n fieldFormattedValue = '';\r\n\r\n constructor(\r\n private customizationService: PepCustomizationService,\r\n private renderer: Renderer2,\r\n private element: ElementRef\r\n ) { }\r\n\r\n private addOptionsIfNeeded(): void {\r\n if (this.isMulti) {\r\n // Go gor all selected and add to options if not exist\r\n // for (let i = 0; i < this.selectedValuesModel.length; i++) {\r\n for (const selectedValue of this.selectedValuesModel) {\r\n let valueNotExist = false;\r\n\r\n if (\r\n this.options &&\r\n !this.options.find((opt) => opt.key === selectedValue)\r\n ) {\r\n valueNotExist = true;\r\n }\r\n\r\n // Add it to options.\r\n if (valueNotExist) {\r\n this.options.push({\r\n key: selectedValue,\r\n value: selectedValue,\r\n });\r\n }\r\n }\r\n } else {\r\n if (\r\n this.value &&\r\n this.value !== '' &&\r\n this.options &&\r\n !this.options.find((opt) => opt.key === this.value)\r\n ) {\r\n this.options.push({ key: this.value, value: this.value });\r\n }\r\n }\r\n }\r\n\r\n private setFieldFormattedValue(value: any): void {\r\n if (this.isMulti) {\r\n if (this.selectedValuesModel.length > 0) {\r\n this.fieldFormattedValue = this.selectedValuesModel\r\n .map((value) => {\r\n return this.options.find((opt) => opt.key === value)\r\n ?.value;\r\n })\r\n .join(', ');\r\n } else {\r\n this.fieldFormattedValue = '';\r\n }\r\n\r\n // this.fieldFormattedValue = typeof value === 'string' ? value.replace(new RegExp(';', 'g'), ', ') : '';\r\n } else {\r\n const selectedOpt = this.options.find((opt) => opt.key === value);\r\n\r\n if (selectedOpt) {\r\n this.fieldFormattedValue = selectedOpt.value;\r\n }\r\n }\r\n }\r\n\r\n private setDefaultForm(): void {\r\n const pepField = new PepSelectField({\r\n key: this.key,\r\n value: this.value,\r\n mandatory: this.mandatory,\r\n readonly: this.readonly,\r\n disabled: this.disabled,\r\n });\r\n this.form = this.customizationService.getDefaultFromGroup(pepField);\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.form === null) {\r\n this.standAlone = true;\r\n this.setDefaultForm();\r\n\r\n this.renderer.addClass(\r\n this.element.nativeElement,\r\n PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME\r\n );\r\n\r\n if (!this.renderTitle) {\r\n this.renderer.addClass(\r\n this.element.nativeElement,\r\n PepCustomizationService.STAND_ALONE_FIELD_NO_SPACING_CLASS_NAME\r\n );\r\n }\r\n }\r\n }\r\n\r\n ngOnChanges(changes: any): void {\r\n if (this.standAlone) {\r\n this.setDefaultForm();\r\n }\r\n\r\n this.isMulti = this.type === 'multi';\r\n if (this.isMulti) {\r\n this.selectedValuesModel =\r\n this.value.length > 0 ? this.value.split(';') : [];\r\n } else {\r\n this.selectedValueModel = this.value;\r\n }\r\n\r\n this.addOptionsIfNeeded();\r\n this.setFieldFormattedValue(this.value);\r\n }\r\n\r\n ngOnDestroy(): void {\r\n //\r\n }\r\n\r\n selectionChange(event: any): void {\r\n if (!this.isMulti) {\r\n this.changeValue(this.selectedValueModel);\r\n }\r\n }\r\n\r\n openedChange(event: any): void {\r\n // Only on close.\r\n if (!event) {\r\n if (this.isMulti) {\r\n this.changeValue(this.selectedValuesModel.join(';'));\r\n }\r\n\r\n if (this.isInEditMode) {\r\n this.isInEditMode = false;\r\n }\r\n }\r\n }\r\n\r\n changeValue(value: any): void {\r\n this.setFieldFormattedValue(value);\r\n this.customizationService.updateFormFieldValue(\r\n this.form,\r\n this.key,\r\n // value,\r\n this.fieldFormattedValue,\r\n this.parentFieldKey\r\n );\r\n\r\n if (this.mandatory) {\r\n const fieldControl = this.form.controls[this.key];\r\n if (value) {\r\n fieldControl.setErrors(null);\r\n } else {\r\n fieldControl.setErrors({\r\n serverError: 'Required',\r\n });\r\n }\r\n this.formValidationChange.emit(this.form.valid);\r\n }\r\n\r\n this.valueChange.emit(value);\r\n }\r\n\r\n cardTemplateClicked(event: any): void {\r\n this.isInEditMode = true;\r\n\r\n setTimeout(() => {\r\n this.select.open();\r\n }, 0);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule, FormsModule } from '@angular/forms';\r\n\r\nimport { MatCommonModule } from '@angular/material/core';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatIconModule } from '@angular/material/icon';\r\n\r\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\r\nimport {\r\n PepIconModule,\r\n PepIconRegistry,\r\n pepIconSystemEdit,\r\n} from '@pepperi-addons/ngx-lib/icon';\r\nimport { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';\r\n\r\nimport { PepSelectComponent } from './select.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FormsModule,\r\n // Material modules\r\n MatCommonModule,\r\n MatButtonModule,\r\n MatFormFieldModule,\r\n MatSelectModule,\r\n MatIconModule,\r\n // ngx-lib modules\r\n PepNgxLibModule,\r\n PepIconModule,\r\n PepFieldTitleModule,\r\n ],\r\n exports: [PepSelectComponent],\r\n declarations: [PepSelectComponent],\r\n})\r\nexport class PepSelectModule {\r\n constructor(private pepIconRegistry: PepIconRegistry) {\r\n this.pepIconRegistry.registerIcons([pepIconSystemEdit]);\r\n }\r\n}\r\n","/*\r\n * Public API Surface of ngx-lib/select\r\n */\r\nexport * from './select.module';\r\nexport * from './select.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,7 @@ class PepSeparatorComponent {
|
|
|
12
12
|
this.controlType = 'separator';
|
|
13
13
|
this.form = null;
|
|
14
14
|
this.layoutType = 'form';
|
|
15
|
+
// @Input() renderTitle = true;
|
|
15
16
|
this._visible = true;
|
|
16
17
|
this.standAlone = false;
|
|
17
18
|
}
|
|
@@ -31,15 +32,22 @@ class PepSeparatorComponent {
|
|
|
31
32
|
if (this.form === null) {
|
|
32
33
|
this.standAlone = true;
|
|
33
34
|
this.renderer.addClass(this.element.nativeElement, PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME);
|
|
35
|
+
// There is no pep-title-field here
|
|
36
|
+
// if (!this.renderTitle) {
|
|
37
|
+
// this.renderer.addClass(
|
|
38
|
+
// this.element.nativeElement,
|
|
39
|
+
// PepCustomizationService.STAND_ALONE_FIELD_NO_SPACING_CLASS_NAME
|
|
40
|
+
// );
|
|
41
|
+
// }
|
|
34
42
|
}
|
|
35
43
|
}
|
|
36
44
|
}
|
|
37
45
|
PepSeparatorComponent.decorators = [
|
|
38
46
|
{ type: Component, args: [{
|
|
39
47
|
selector: 'pep-separator',
|
|
40
|
-
template: "<ng-container *ngIf=\"layoutType === 'form'\">\n <div class=\"pep-separator-field wrap pep-border-bottom align-{{ xAlignment }}\" title=\"{{ label }}\">\n <span class=\"block-with-text body-md\">{{ label }}</span>\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"layoutType === 'card'\">\n <div class=\"pep-separator-field pep-small-separator-field pep-border-bottom text-align-{{ xAlignment }}\"\n dir=\"{{ xAlignment == 'right' ? 'rtl' : 'ltr' }}\" title=\"{{ label }}\">\n <span class=\"small-block-with-text body-sm\">{{ label }}</span>\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"layoutType === 'table'\">\n <label class=\"cl\" title=\"{{ label }}\">{{ label }}</label>\n</ng-container>",
|
|
48
|
+
template: "<ng-container *ngIf=\"layoutType === 'form'\">\r\n <div class=\"pep-separator-field wrap pep-border-bottom align-{{ xAlignment }}\" title=\"{{ label }}\">\r\n <span class=\"block-with-text body-md\">{{ label }}</span>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"layoutType === 'card'\">\r\n <div class=\"pep-separator-field pep-small-separator-field pep-border-bottom text-align-{{ xAlignment }}\"\r\n dir=\"{{ xAlignment == 'right' ? 'rtl' : 'ltr' }}\" title=\"{{ label }}\">\r\n <span class=\"small-block-with-text body-sm\">{{ label }}</span>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"layoutType === 'table'\">\r\n <label class=\"cl\" title=\"{{ label }}\">{{ label }}</label>\r\n</ng-container>",
|
|
41
49
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
42
|
-
styles: [":host{height:inherit;display:grid}:host>*{align-self:center}"]
|
|
50
|
+
styles: [":host{height:inherit;display:grid}:host>*{align-self:center}", ""]
|
|
43
51
|
},] }
|
|
44
52
|
];
|
|
45
53
|
PepSeparatorComponent.ctorParameters = () => [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pepperi-addons-ngx-lib-separator.js","sources":["../../../projects/ngx-lib/separator/separator.component.ts","../../../projects/ngx-lib/separator/separator.module.ts","../../../projects/ngx-lib/separator/public-api.ts","../../../projects/ngx-lib/separator/pepperi-addons-ngx-lib-separator.ts"],"sourcesContent":["import {\n Component,\n Input,\n OnInit,\n ChangeDetectionStrategy,\n Renderer2,\n ElementRef,\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport {\n PepLayoutType,\n PepCustomizationService,\n PepHorizontalAlignment,\n DEFAULT_HORIZONTAL_ALIGNMENT,\n} from '@pepperi-addons/ngx-lib';\n\n@Component({\n selector: 'pep-separator',\n templateUrl: './separator.component.html',\n styleUrls: ['./separator.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PepSeparatorComponent implements OnInit {\n @Input() key = '';\n @Input() label = '';\n @Input() xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\n\n controlType = 'separator';\n\n @Input() form: FormGroup = null;\n @Input() layoutType: PepLayoutType = 'form';\n\n private _visible = true;\n @Input()\n set visible(visible: boolean) {\n this._visible = visible;\n if (visible) {\n this.renderer.removeClass(\n this.element.nativeElement,\n 'hidden-element'\n );\n } else {\n this.renderer.addClass(\n this.element.nativeElement,\n 'hidden-element'\n );\n }\n }\n get visible(): boolean {\n return this._visible;\n }\n\n standAlone = false;\n\n constructor(private renderer: Renderer2, private element: ElementRef) { }\n\n ngOnInit(): void {\n if (this.form === null) {\n this.standAlone = true;\n\n this.renderer.addClass(\n this.element.nativeElement,\n PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME\n );\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { PepSeparatorComponent } from './separator.component';\n\n@NgModule({\n imports: [CommonModule],\n exports: [PepSeparatorComponent],\n declarations: [PepSeparatorComponent],\n})\nexport class PepSeparatorModule {}\n","/*\n * Public API Surface of ngx-lib/separator\n */\nexport * from './separator.module';\nexport * from './separator.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;MAsBa,qBAAqB;
|
|
1
|
+
{"version":3,"file":"pepperi-addons-ngx-lib-separator.js","sources":["../../../projects/ngx-lib/separator/separator.component.ts","../../../projects/ngx-lib/separator/separator.module.ts","../../../projects/ngx-lib/separator/public-api.ts","../../../projects/ngx-lib/separator/pepperi-addons-ngx-lib-separator.ts"],"sourcesContent":["import {\r\n Component,\r\n Input,\r\n OnInit,\r\n ChangeDetectionStrategy,\r\n Renderer2,\r\n ElementRef,\r\n} from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport {\r\n PepLayoutType,\r\n PepCustomizationService,\r\n PepHorizontalAlignment,\r\n DEFAULT_HORIZONTAL_ALIGNMENT,\r\n} from '@pepperi-addons/ngx-lib';\r\n\r\n@Component({\r\n selector: 'pep-separator',\r\n templateUrl: './separator.component.html',\r\n styleUrls: ['./separator.component.scss', './separator.component.theme.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PepSeparatorComponent implements OnInit {\r\n @Input() key = '';\r\n @Input() label = '';\r\n @Input() xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\r\n\r\n controlType = 'separator';\r\n\r\n @Input() form: FormGroup = null;\r\n @Input() layoutType: PepLayoutType = 'form';\r\n // @Input() renderTitle = true;\r\n\r\n private _visible = true;\r\n @Input()\r\n set visible(visible: boolean) {\r\n this._visible = visible;\r\n if (visible) {\r\n this.renderer.removeClass(\r\n this.element.nativeElement,\r\n 'hidden-element'\r\n );\r\n } else {\r\n this.renderer.addClass(\r\n this.element.nativeElement,\r\n 'hidden-element'\r\n );\r\n }\r\n }\r\n get visible(): boolean {\r\n return this._visible;\r\n }\r\n\r\n standAlone = false;\r\n\r\n constructor(private renderer: Renderer2, private element: ElementRef) { }\r\n\r\n ngOnInit(): void {\r\n if (this.form === null) {\r\n this.standAlone = true;\r\n\r\n this.renderer.addClass(\r\n this.element.nativeElement,\r\n PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME\r\n );\r\n\r\n // There is no pep-title-field here\r\n // if (!this.renderTitle) {\r\n // this.renderer.addClass(\r\n // this.element.nativeElement,\r\n // PepCustomizationService.STAND_ALONE_FIELD_NO_SPACING_CLASS_NAME\r\n // );\r\n // }\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { PepSeparatorComponent } from './separator.component';\r\n\r\n@NgModule({\r\n imports: [CommonModule],\r\n exports: [PepSeparatorComponent],\r\n declarations: [PepSeparatorComponent],\r\n})\r\nexport class PepSeparatorModule {}\r\n","/*\r\n * Public API Surface of ngx-lib/separator\r\n */\r\nexport * from './separator.module';\r\nexport * from './separator.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;MAsBa,qBAAqB;IAiC9B,YAAoB,QAAmB,EAAU,OAAmB;QAAhD,aAAQ,GAAR,QAAQ,CAAW;QAAU,YAAO,GAAP,OAAO,CAAY;QAhC3D,QAAG,GAAG,EAAE,CAAC;QACT,UAAK,GAAG,EAAE,CAAC;QACX,eAAU,GAA2B,4BAA4B,CAAC;QAE3E,gBAAW,GAAG,WAAW,CAAC;QAEjB,SAAI,GAAc,IAAI,CAAC;QACvB,eAAU,GAAkB,MAAM,CAAC;;QAGpC,aAAQ,GAAG,IAAI,CAAC;QAoBxB,eAAU,GAAG,KAAK,CAAC;KAEsD;IArBzE,IACI,OAAO,CAAC,OAAgB;QACxB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,OAAO,EAAE;YACT,IAAI,CAAC,QAAQ,CAAC,WAAW,CACrB,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,gBAAgB,CACnB,CAAC;SACL;aAAM;YACH,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,gBAAgB,CACnB,CAAC;SACL;KACJ;IACD,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC;KACxB;IAMD,QAAQ;QACJ,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE;YACpB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YAEvB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAClB,IAAI,CAAC,OAAO,CAAC,aAAa,EAC1B,uBAAuB,CAAC,4BAA4B,CACvD,CAAC;;;;;;;;SASL;KACJ;;;YA1DJ,SAAS,SAAC;gBACP,QAAQ,EAAE,eAAe;gBACzB,0wBAAyC;gBAEzC,eAAe,EAAE,uBAAuB,CAAC,MAAM;;aAClD;;;YAhBG,SAAS;YACT,UAAU;;;kBAiBT,KAAK;oBACL,KAAK;yBACL,KAAK;mBAIL,KAAK;yBACL,KAAK;sBAIL,KAAK;;;MCxBG,kBAAkB;;;YAL9B,QAAQ,SAAC;gBACN,OAAO,EAAE,CAAC,YAAY,CAAC;gBACvB,OAAO,EAAE,CAAC,qBAAqB,CAAC;gBAChC,YAAY,EAAE,CAAC,qBAAqB,CAAC;aACxC;;;ACTD;;;;ACAA;;;;;;"}
|
|
@@ -115,8 +115,8 @@ PepSideBarComponent.ONE_MULTI_BY_DIR_KEY = '--pep-one-multi-by-dir';
|
|
|
115
115
|
PepSideBarComponent.decorators = [
|
|
116
116
|
{ type: Component, args: [{
|
|
117
117
|
selector: 'pep-side-bar',
|
|
118
|
-
template: "<div class=\"pep-side-bar-container\">\n <ng-container *ngIf=\"isLargeScreen || ignoreResize; then largeScreensBlock; else notLargeScreensBlock\">\n </ng-container>\n <ng-template #largeScreensBlock>\n <div class=\"toggle-side-bar-container\" [ngClass]=\"{ 'is-open-state': state === 'open'}\">\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\n <div class=\"toggle-button-border\"></div>\n <button mat-button class=\"toggle-button pep-button xs regular icon-button \" (click)=\"toggleSideWrapper()\">\n <mat-icon>\n <pep-icon [name]=\"toggleButtonArrowName\">\n </pep-icon>\n </mat-icon>\n </button>\n </div>\n </ng-template>\n <ng-template #notLargeScreensBlock>\n <mat-sidenav-container [hasBackdrop]=\"true\">\n <mat-sidenav #sidenav mode=\"over\" autoFocus=\"false\" fixedInViewport=\"false\"\n (openedChange)=\"toggleSidenav($event)\">\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\n </mat-sidenav>\n </mat-sidenav-container>\n </ng-template>\n</div>\n\n<ng-template #sideLayoutTemplate>\n <div class=\"side-layout\">\n <div *ngIf=\"showHeader\" class=\"header-content\">\n <div class=\"content pep-border-bottom body-lg ellipsis\">\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\n </div>\n </div>\n <div class=\"main-content\">\n <div class=\"content\">\n <ng-container *ngTemplateOutlet=\"startContentTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"filtersTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"smartFiltersTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\n <ng-container *ngTemplateOutlet=\"endContentTemplate\"></ng-container>\n </div>\n </div>\n <div *ngIf=\"showFooter\" class=\"footer-content\">\n <div class=\"content pep-border-top body-lg ellipsis\">\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\n </div>\n </div>\n </div>\n</ng-template>\n\n\n<ng-template #headerTemplate>\n <ng-content select=\"[header-content]\"></ng-content>\n</ng-template>\n\n<ng-template #startContentTemplate>\n <ng-content select=\"[start-content]\"></ng-content>\n</ng-template>\n\n<ng-template #contentTemplate>\n <ng-content></ng-content>\n</ng-template>\n\n<ng-template #endContentTemplate>\n <ng-content select=\"[end-content]\"></ng-content>\n</ng-template>\n\n<ng-template #filtersTemplate>\n\n</ng-template>\n\n<ng-template #smartFiltersTemplate>\n <ng-content select=\"pep-smart-filters\"></ng-content>\n</ng-template>\n\n<ng-template #footerTemplate>\n <ng-content select=\"[footer-content]\"></ng-content>\n</ng-template>",
|
|
119
|
-
styles: [".pep-side-bar-container{height:100%}.pep-side-bar-container .toggle-side-bar-container{height:inherit;display:grid;grid-auto-flow:column;transition:transform .35s ease-out,width .35s ease-out;transform:translateX(calc(var(--pep-one-multi-by-dir) * 16rem));transform:translateX(calc(var(--pep-one-multi-by-dir) * var(--pep-side-bar-width, 16rem)));width:calc((1rem * 2) + 1px);width:calc((var(--pep-spacing-lg, 1rem) * 2) + 1px)}.pep-side-bar-container .toggle-side-bar-container.is-open-state{transition:transform .35s ease-out,width .35s ease-out;transform:unset;width:16rem;width:var(--pep-side-bar-width,16rem)}.pep-side-bar-container .toggle-side-bar-container.is-open-state .toggle-button{transition:margin-inline .35s ease-out,transform .35s ease-out;transform:rotate(180deg);margin-inline:-3rem .25rem}.pep-side-bar-container .toggle-side-bar-container.is-open-state .toggle-button-border{transition:opacity calc(calc(.35s / 3) * 2) ease-out,margin-inline .35s ease-out;opacity:0;margin-inline:-3rem .25rem}.pep-side-bar-container .toggle-side-bar-container .toggle-button{z-index:2;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-top:calc(calc(1.5rem + .5rem + 2.5rem) - .75rem);margin-top:calc(calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem)) - .75rem);transition:margin-inline .35s ease-out,transform .35s ease-out;transform:rotate(0deg);margin-inline:calc(-1 * .75rem) .25rem}.pep-side-bar-container .toggle-side-bar-container .toggle-button-border{transition:opacity calc(calc(.35s / 3) * 2) calc(.35s / 3) ease-out,margin-inline .35s ease-out;opacity:1;margin-inline:unset;width:1px;-webkit-padding-start:1rem;padding-inline-start:1rem;-webkit-padding-start:var(--pep-spacing-lg,1rem);padding-inline-start:var(--pep-spacing-lg,1rem);margin-top:1.5rem;margin-top:var(--pep-top-bar-spacing-top,1.5rem)}.pep-side-bar-container .mat-sidenav-container{position:absolute;bottom:0;left:0;right:0;z-index:999;height:calc(100vh - 4rem);height:calc(100vh - var(--pep-header-height, 4rem));visibility:hidden}.pep-side-bar-container .mat-sidenav-container.mat-drawer-opened{visibility:unset}.pep-side-bar-container .mat-sidenav-container .mat-sidenav{max-width:calc(calc(16rem + 2rem) + calc(1rem * 2));max-width:calc(calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem)) + calc(var(--pep-spacing-lg, 1rem) * 2));padding-inline:1rem;padding-inline:var(--pep-spacing-lg,1rem)}@media (max-width:599px){.pep-side-bar-container .mat-sidenav-container .mat-sidenav{padding-inline:0}}.pep-side-bar-container .mat-sidenav-container .mat-sidenav .side-layout{max-width:calc(16rem + 2rem);max-width:calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem));width:calc(16rem + 2rem);width:calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem))}.pep-side-bar-container .side-layout{display:block;max-width:16rem;max-width:var(--pep-side-bar-width,16rem);width:16rem;width:var(--pep-side-bar-width,16rem);padding:0 1rem;padding:0 var(--pep-spacing-lg,1rem);overflow:auto}.pep-side-bar-container .side-layout .header-content{height:calc(1.5rem + .5rem + 2.5rem);height:calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));padding-top:1.5rem;padding-top:var(--pep-top-bar-spacing-top,1.5rem);z-index:2;position:sticky;top:0}.pep-side-bar-container .side-layout .header-content .content{height:calc(.5rem + 2.5rem);height:calc(var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));display:flex;overflow:unset}.pep-side-bar-container .side-layout .footer-content{height:calc(1.5rem + .5rem + 2.5rem);height:calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem))}.pep-side-bar-container .side-layout .main-content{display:block;height:inherit;max-width:16rem;max-width:var(--pep-side-bar-width,16rem)}.pep-side-bar-container .side-layout .main-content .content{height:inherit}"]
|
|
118
|
+
template: "<div class=\"pep-side-bar-container\">\r\n <ng-container *ngIf=\"isLargeScreen || ignoreResize; then largeScreensBlock; else notLargeScreensBlock\">\r\n </ng-container>\r\n <ng-template #largeScreensBlock>\r\n <div class=\"toggle-side-bar-container\" [ngClass]=\"{ 'is-open-state': state === 'open'}\">\r\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\r\n <div class=\"toggle-button-border\"></div>\r\n <button mat-button class=\"toggle-button pep-button xs regular icon-button \" (click)=\"toggleSideWrapper()\">\r\n <mat-icon>\r\n <pep-icon [name]=\"toggleButtonArrowName\">\r\n </pep-icon>\r\n </mat-icon>\r\n </button>\r\n </div>\r\n </ng-template>\r\n <ng-template #notLargeScreensBlock>\r\n <mat-sidenav-container [hasBackdrop]=\"true\">\r\n <mat-sidenav #sidenav mode=\"over\" autoFocus=\"false\" fixedInViewport=\"false\"\r\n (openedChange)=\"toggleSidenav($event)\">\r\n <ng-container *ngTemplateOutlet=\"sideLayoutTemplate\"></ng-container>\r\n </mat-sidenav>\r\n </mat-sidenav-container>\r\n </ng-template>\r\n</div>\r\n\r\n<ng-template #sideLayoutTemplate>\r\n <div class=\"side-layout\">\r\n <div *ngIf=\"showHeader\" class=\"header-content\">\r\n <div class=\"content pep-border-bottom body-lg ellipsis\">\r\n <ng-container *ngTemplateOutlet=\"headerTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n <div class=\"main-content\">\r\n <div class=\"content\">\r\n <ng-container *ngTemplateOutlet=\"startContentTemplate\"></ng-container>\r\n <ng-container *ngTemplateOutlet=\"filtersTemplate\"></ng-container>\r\n <ng-container *ngTemplateOutlet=\"smartFiltersTemplate\"></ng-container>\r\n <ng-container *ngTemplateOutlet=\"contentTemplate\"></ng-container>\r\n <ng-container *ngTemplateOutlet=\"endContentTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n <div *ngIf=\"showFooter\" class=\"footer-content\">\r\n <div class=\"content pep-border-top body-lg ellipsis\">\r\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n\r\n<ng-template #headerTemplate>\r\n <ng-content select=\"[header-content]\"></ng-content>\r\n</ng-template>\r\n\r\n<ng-template #startContentTemplate>\r\n <ng-content select=\"[start-content]\"></ng-content>\r\n</ng-template>\r\n\r\n<ng-template #contentTemplate>\r\n <ng-content></ng-content>\r\n</ng-template>\r\n\r\n<ng-template #endContentTemplate>\r\n <ng-content select=\"[end-content]\"></ng-content>\r\n</ng-template>\r\n\r\n<ng-template #filtersTemplate>\r\n\r\n</ng-template>\r\n\r\n<ng-template #smartFiltersTemplate>\r\n <ng-content select=\"pep-smart-filters\"></ng-content>\r\n</ng-template>\r\n\r\n<ng-template #footerTemplate>\r\n <ng-content select=\"[footer-content]\"></ng-content>\r\n</ng-template>",
|
|
119
|
+
styles: [".pep-side-bar-container{height:100%}.pep-side-bar-container .toggle-side-bar-container{height:inherit;display:grid;grid-auto-flow:column;transition:transform .35s ease-out,width .35s ease-out;transform:translateX(calc(var(--pep-one-multi-by-dir) * 16rem));transform:translateX(calc(var(--pep-one-multi-by-dir) * var(--pep-side-bar-width, 16rem)));width:calc((1rem * 2) + 1px);width:calc((var(--pep-spacing-lg, 1rem) * 2) + 1px)}.pep-side-bar-container .toggle-side-bar-container.is-open-state{transition:transform .35s ease-out,width .35s ease-out;transform:unset;width:16rem;width:var(--pep-side-bar-width,16rem)}.pep-side-bar-container .toggle-side-bar-container.is-open-state .toggle-button{transition:margin-inline .35s ease-out,transform .35s ease-out;transform:rotate(180deg);margin-inline:-3rem .25rem}.pep-side-bar-container .toggle-side-bar-container.is-open-state .toggle-button-border{transition:opacity calc(calc(.35s / 3) * 2) ease-out,margin-inline .35s ease-out;opacity:0;margin-inline:-3rem .25rem}.pep-side-bar-container .toggle-side-bar-container .toggle-button{z-index:2;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-top:calc(calc(1.5rem + .5rem + 2.5rem) - .75rem);margin-top:calc(calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem)) - .75rem);transition:margin-inline .35s ease-out,transform .35s ease-out;transform:rotate(0deg);margin-inline:calc(-1 * .75rem) .25rem}.pep-side-bar-container .toggle-side-bar-container .toggle-button-border{transition:opacity calc(calc(.35s / 3) * 2) calc(.35s / 3) ease-out,margin-inline .35s ease-out;opacity:1;margin-inline:unset;width:1px;-webkit-padding-start:1rem;padding-inline-start:1rem;-webkit-padding-start:var(--pep-spacing-lg,1rem);padding-inline-start:var(--pep-spacing-lg,1rem);margin-top:1.5rem;margin-top:var(--pep-top-bar-spacing-top,1.5rem)}.pep-side-bar-container .mat-sidenav-container{position:absolute;bottom:0;left:0;right:0;z-index:999;height:calc(100vh - 4rem);height:calc(100vh - var(--pep-header-height, 4rem));visibility:hidden}.pep-side-bar-container .mat-sidenav-container.mat-drawer-opened{visibility:unset}.pep-side-bar-container .mat-sidenav-container .mat-sidenav{max-width:calc(calc(16rem + 2rem) + calc(1rem * 2));max-width:calc(calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem)) + calc(var(--pep-spacing-lg, 1rem) * 2));padding-inline:1rem;padding-inline:var(--pep-spacing-lg,1rem)}@media (max-width:599px){.pep-side-bar-container .mat-sidenav-container .mat-sidenav{padding-inline:0}}.pep-side-bar-container .mat-sidenav-container .mat-sidenav .side-layout{max-width:calc(16rem + 2rem);max-width:calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem));width:calc(16rem + 2rem);width:calc(var(--pep-side-bar-width, 16rem) + var(--pep-spacing-2xl, 2rem))}.pep-side-bar-container .side-layout{display:block;max-width:16rem;max-width:var(--pep-side-bar-width,16rem);width:16rem;width:var(--pep-side-bar-width,16rem);padding:0 1rem;padding:0 var(--pep-spacing-lg,1rem);overflow:auto}.pep-side-bar-container .side-layout .header-content{height:calc(1.5rem + .5rem + 2.5rem);height:calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));padding-top:1.5rem;padding-top:var(--pep-top-bar-spacing-top,1.5rem);z-index:2;position:sticky;top:0}.pep-side-bar-container .side-layout .header-content .content{height:calc(.5rem + 2.5rem);height:calc(var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));display:flex;overflow:unset}.pep-side-bar-container .side-layout .footer-content{height:calc(1.5rem + .5rem + 2.5rem);height:calc(var(--pep-top-bar-spacing-top, 1.5rem) + var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem))}.pep-side-bar-container .side-layout .main-content{display:block;height:inherit;max-width:16rem;max-width:var(--pep-side-bar-width,16rem)}.pep-side-bar-container .side-layout .main-content .content{height:inherit}", ".pep-side-bar-container .toggle-side-bar-container .toggle-button-border{-webkit-border-end:1px solid rgba(26,26,26,.24);border-inline-end:1px solid rgba(26,26,26,.24);-webkit-border-end:1px solid hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.24);border-inline-end:1px solid hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.24)}.pep-side-bar-container .mat-sidenav-container .mat-drawer-backdrop.mat-drawer-shown{background-color:rgba(26,26,26,.24);background-color:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.24)}.pep-side-bar-container .side-layout,.pep-side-bar-container .side-layout .header-content{background:#fff;background:hsl(var(--pep-color-system-primary-invert-h,255),var(--pep-color-system-primary-invert-s,100%),var(--pep-color-system-primary-invert-l,100%))}"]
|
|
120
120
|
},] },
|
|
121
121
|
{ type: Injectable }
|
|
122
122
|
];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pepperi-addons-ngx-lib-side-bar.js","sources":["../../../projects/ngx-lib/side-bar/side-bar.component.ts","../../../projects/ngx-lib/side-bar/side-bar.module.ts","../../../projects/ngx-lib/side-bar/public-api.ts","../../../projects/ngx-lib/side-bar/pepperi-addons-ngx-lib-side-bar.ts"],"sourcesContent":["import {\n Component,\n OnInit,\n Injectable,\n Input,\n Output,\n EventEmitter,\n ViewChild,\n ElementRef,\n Renderer2,\n} from '@angular/core';\nimport { MatSidenav } from '@angular/material/sidenav';\nimport {\n trigger,\n state,\n style,\n transition,\n animate,\n} from '@angular/animations';\nimport {\n PepCustomizationService,\n PepLayoutService,\n PepScreenSizeType,\n} from '@pepperi-addons/ngx-lib';\nimport { IPepSideBarStateChangeEvent, PepSideBarStateType } from './side-bar.model';\nimport { pepIconArrowLeft, pepIconArrowRight } from '@pepperi-addons/ngx-lib/icon';\n\n@Component({\n selector: 'pep-side-bar',\n templateUrl: './side-bar.component.html',\n styleUrls: ['./side-bar.component.scss']\n})\n@Injectable()\nexport class PepSideBarComponent implements OnInit {\n static ONE_MULTI_BY_DIR_KEY = '--pep-one-multi-by-dir';\n\n @Input() ignoreResize = false;\n @Input() showHeader = true;\n @Input() showFooter = false;\n\n private _useAsWebComponent = false;\n private readonly _animationTime = 350; // milliseconds.\n\n state: PepSideBarStateType = 'open';\n toggleButtonArrowName: string = pepIconArrowRight.name;\n isLargeScreen = true;\n\n @Input()\n set useAsWebComponent(value: boolean) {\n if (value) {\n this.exportFunctionsOnHostElement();\n }\n }\n get useAsWebComponent(): boolean {\n return this._useAsWebComponent;\n }\n\n @Output()\n stateChange: EventEmitter<IPepSideBarStateChangeEvent> = new EventEmitter<IPepSideBarStateChangeEvent>();\n\n @ViewChild('sidenav') sidenav: MatSidenav;\n\n isMouseIn = false;\n sideBarHeight = '100%';\n\n screenSize: PepScreenSizeType;\n PepScreenSizeType = PepScreenSizeType;\n\n constructor(\n private hostElement: ElementRef,\n private renderer: Renderer2,\n public layoutService: PepLayoutService\n ) {\n this.layoutService.onResize$.subscribe((size: PepScreenSizeType) => {\n this.screenSize = size;\n this.isLargeScreen = size < PepScreenSizeType.MD;\n });\n }\n\n private exportFunctionsOnHostElement() {\n // This is for web component usage for use those functions.\n this.hostElement.nativeElement.open = this.open.bind(this);\n this.hostElement.nativeElement.close = this.close.bind(this);\n }\n\n private setState(state: PepSideBarStateType) {\n this.state = state;\n this.toggleButtonArrowName =\n // state === 'open' ?\n // (this.layoutService.isRtl() ? pepIconArrowRight.name : pepIconArrowLeft.name) :\n (this.layoutService.isRtl() ? pepIconArrowLeft.name : pepIconArrowRight.name);\n }\n\n private toggleState() {\n this.setState(this.state === 'close' ? 'open' : 'close');\n }\n\n ngOnInit() {\n document.documentElement.style.setProperty(PepSideBarComponent.ONE_MULTI_BY_DIR_KEY, this.layoutService.isRtl() ? '1' : '-1');\n this.setState(this.isLargeScreen ? 'open' : 'close');\n }\n\n setSideBarHeight(event) {\n // const from = event.relatedTarget\n // ? event.relatedTarget\n // : event.fromElement;\n // const to = event.target ? event.target : event.toElement;\n\n // if (typeof from === 'undefined' || typeof to === 'undefined') {\n // return;\n // }\n // this.isMouseIn = true;\n\n // this.sideBarHeight = window.innerHeight - to.offsetTop + 'px';\n }\n\n mouseLeaveSideBar(event) {\n // const from = event.relatedTarget\n // ? event.relatedTarget\n // : event.fromElement;\n // const to = event.target ? event.target : event.toElement;\n\n // if (typeof from === 'undefined' || typeof to === 'undefined') {\n // return;\n // }\n // this.sideBarHeight = '100%';\n // this.isMouseIn = false;\n }\n\n open() {\n if (this.sidenav) {\n this.sidenav.open();\n }\n\n this.state = 'open';\n }\n\n close() {\n if (this.sidenav) {\n this.sidenav.close();\n }\n\n this.state = 'close';\n }\n\n toggle() {\n if (this.sidenav) {\n // const isOpen = this.sidenav.opened;\n this.sidenav.toggle();\n }\n\n this.toggleState();\n }\n\n toggleSideWrapper() {\n this.toggleState();\n // Raise event after animation finish.\n setTimeout(() => {\n this.stateChange.emit({ state: this.state });\n }, this._animationTime);\n }\n\n toggleSidenav(isOpen: boolean) {\n this.setState(isOpen ? 'open' : 'close');\n // Raise event after animation finish.\n setTimeout(() => {\n this.stateChange.emit({ state: this.state });\n }, this._animationTime);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatSidenavModule } from '@angular/material/sidenav';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconSystemClose,\n} from '@pepperi-addons/ngx-lib/icon';\n\nimport { PepSideBarComponent } from './side-bar.component';\n\n@NgModule({\n imports: [\n CommonModule,\n // Material modules,\n MatCommonModule,\n MatIconModule,\n MatSidenavModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n ],\n exports: [PepSideBarComponent],\n declarations: [PepSideBarComponent],\n})\nexport class PepSideBarModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([pepIconSystemClose]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/side-bar\n */\nexport * from './side-bar.module';\nexport * from './side-bar.component';\nexport * from './side-bar.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"pepperi-addons-ngx-lib-side-bar.js","sources":["../../../projects/ngx-lib/side-bar/side-bar.component.ts","../../../projects/ngx-lib/side-bar/side-bar.module.ts","../../../projects/ngx-lib/side-bar/public-api.ts","../../../projects/ngx-lib/side-bar/pepperi-addons-ngx-lib-side-bar.ts"],"sourcesContent":["import {\r\n Component,\r\n OnInit,\r\n Injectable,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n ViewChild,\r\n ElementRef,\r\n Renderer2,\r\n} from '@angular/core';\r\nimport { MatSidenav } from '@angular/material/sidenav';\r\nimport {\r\n trigger,\r\n state,\r\n style,\r\n transition,\r\n animate,\r\n} from '@angular/animations';\r\nimport {\r\n PepCustomizationService,\r\n PepLayoutService,\r\n PepScreenSizeType,\r\n} from '@pepperi-addons/ngx-lib';\r\nimport { IPepSideBarStateChangeEvent, PepSideBarStateType } from './side-bar.model';\r\nimport { pepIconArrowLeft, pepIconArrowRight } from '@pepperi-addons/ngx-lib/icon';\r\n\r\n@Component({\r\n selector: 'pep-side-bar',\r\n templateUrl: './side-bar.component.html',\r\n styleUrls: ['./side-bar.component.scss', './side-bar.component.theme.scss']\r\n})\r\n@Injectable()\r\nexport class PepSideBarComponent implements OnInit {\r\n static ONE_MULTI_BY_DIR_KEY = '--pep-one-multi-by-dir';\r\n\r\n @Input() ignoreResize = false;\r\n @Input() showHeader = true;\r\n @Input() showFooter = false;\r\n\r\n private _useAsWebComponent = false;\r\n private readonly _animationTime = 350; // milliseconds.\r\n\r\n state: PepSideBarStateType = 'open';\r\n toggleButtonArrowName: string = pepIconArrowRight.name;\r\n isLargeScreen = true;\r\n\r\n @Input()\r\n set useAsWebComponent(value: boolean) {\r\n if (value) {\r\n this.exportFunctionsOnHostElement();\r\n }\r\n }\r\n get useAsWebComponent(): boolean {\r\n return this._useAsWebComponent;\r\n }\r\n\r\n @Output()\r\n stateChange: EventEmitter<IPepSideBarStateChangeEvent> = new EventEmitter<IPepSideBarStateChangeEvent>();\r\n\r\n @ViewChild('sidenav') sidenav: MatSidenav;\r\n\r\n isMouseIn = false;\r\n sideBarHeight = '100%';\r\n\r\n screenSize: PepScreenSizeType;\r\n PepScreenSizeType = PepScreenSizeType;\r\n\r\n constructor(\r\n private hostElement: ElementRef,\r\n private renderer: Renderer2,\r\n public layoutService: PepLayoutService\r\n ) {\r\n this.layoutService.onResize$.subscribe((size: PepScreenSizeType) => {\r\n this.screenSize = size;\r\n this.isLargeScreen = size < PepScreenSizeType.MD;\r\n });\r\n }\r\n\r\n private exportFunctionsOnHostElement() {\r\n // This is for web component usage for use those functions.\r\n this.hostElement.nativeElement.open = this.open.bind(this);\r\n this.hostElement.nativeElement.close = this.close.bind(this);\r\n }\r\n\r\n private setState(state: PepSideBarStateType) {\r\n this.state = state;\r\n this.toggleButtonArrowName =\r\n // state === 'open' ?\r\n // (this.layoutService.isRtl() ? pepIconArrowRight.name : pepIconArrowLeft.name) :\r\n (this.layoutService.isRtl() ? pepIconArrowLeft.name : pepIconArrowRight.name);\r\n }\r\n\r\n private toggleState() {\r\n this.setState(this.state === 'close' ? 'open' : 'close');\r\n }\r\n\r\n ngOnInit() {\r\n document.documentElement.style.setProperty(PepSideBarComponent.ONE_MULTI_BY_DIR_KEY, this.layoutService.isRtl() ? '1' : '-1');\r\n this.setState(this.isLargeScreen ? 'open' : 'close');\r\n }\r\n\r\n setSideBarHeight(event) {\r\n // const from = event.relatedTarget\r\n // ? event.relatedTarget\r\n // : event.fromElement;\r\n // const to = event.target ? event.target : event.toElement;\r\n\r\n // if (typeof from === 'undefined' || typeof to === 'undefined') {\r\n // return;\r\n // }\r\n // this.isMouseIn = true;\r\n\r\n // this.sideBarHeight = window.innerHeight - to.offsetTop + 'px';\r\n }\r\n\r\n mouseLeaveSideBar(event) {\r\n // const from = event.relatedTarget\r\n // ? event.relatedTarget\r\n // : event.fromElement;\r\n // const to = event.target ? event.target : event.toElement;\r\n\r\n // if (typeof from === 'undefined' || typeof to === 'undefined') {\r\n // return;\r\n // }\r\n // this.sideBarHeight = '100%';\r\n // this.isMouseIn = false;\r\n }\r\n\r\n open() {\r\n if (this.sidenav) {\r\n this.sidenav.open();\r\n }\r\n\r\n this.state = 'open';\r\n }\r\n\r\n close() {\r\n if (this.sidenav) {\r\n this.sidenav.close();\r\n }\r\n\r\n this.state = 'close';\r\n }\r\n\r\n toggle() {\r\n if (this.sidenav) {\r\n // const isOpen = this.sidenav.opened;\r\n this.sidenav.toggle();\r\n }\r\n\r\n this.toggleState();\r\n }\r\n\r\n toggleSideWrapper() {\r\n this.toggleState();\r\n // Raise event after animation finish.\r\n setTimeout(() => {\r\n this.stateChange.emit({ state: this.state });\r\n }, this._animationTime);\r\n }\r\n\r\n toggleSidenav(isOpen: boolean) {\r\n this.setState(isOpen ? 'open' : 'close');\r\n // Raise event after animation finish.\r\n setTimeout(() => {\r\n this.stateChange.emit({ state: this.state });\r\n }, this._animationTime);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { MatCommonModule } from '@angular/material/core';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatSidenavModule } from '@angular/material/sidenav';\r\n\r\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\r\nimport {\r\n PepIconModule,\r\n PepIconRegistry,\r\n pepIconSystemClose,\r\n} from '@pepperi-addons/ngx-lib/icon';\r\n\r\nimport { PepSideBarComponent } from './side-bar.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n // Material modules,\r\n MatCommonModule,\r\n MatIconModule,\r\n MatSidenavModule,\r\n // ngx-lib modules\r\n PepNgxLibModule,\r\n PepIconModule,\r\n ],\r\n exports: [PepSideBarComponent],\r\n declarations: [PepSideBarComponent],\r\n})\r\nexport class PepSideBarModule {\r\n constructor(private pepIconRegistry: PepIconRegistry) {\r\n this.pepIconRegistry.registerIcons([pepIconSystemClose]);\r\n }\r\n}\r\n","/*\r\n * Public API Surface of ngx-lib/side-bar\r\n */\r\nexport * from './side-bar.module';\r\nexport * from './side-bar.component';\r\nexport * from './side-bar.model';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -36,6 +36,7 @@ class PepSignatureComponent {
|
|
|
36
36
|
this.controlType = 'signature';
|
|
37
37
|
this.form = null;
|
|
38
38
|
this.showTitle = true;
|
|
39
|
+
this.renderTitle = true;
|
|
39
40
|
this._layoutType = 'form';
|
|
40
41
|
this.isActive = false;
|
|
41
42
|
this.fileChange = new EventEmitter();
|
|
@@ -98,6 +99,9 @@ class PepSignatureComponent {
|
|
|
98
99
|
this.setFieldHeight();
|
|
99
100
|
this.setDefaultForm();
|
|
100
101
|
this.renderer.addClass(this.element.nativeElement, PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME);
|
|
102
|
+
if (!this.renderTitle) {
|
|
103
|
+
this.renderer.addClass(this.element.nativeElement, PepCustomizationService.STAND_ALONE_FIELD_NO_SPACING_CLASS_NAME);
|
|
104
|
+
}
|
|
101
105
|
}
|
|
102
106
|
}
|
|
103
107
|
ngOnChanges(changes) {
|
|
@@ -204,9 +208,9 @@ class PepSignatureComponent {
|
|
|
204
208
|
PepSignatureComponent.decorators = [
|
|
205
209
|
{ type: Component, args: [{
|
|
206
210
|
selector: 'pep-signature',
|
|
207
|
-
template: "<ng-container [formGroup]=\"form\">\n <ng-container>\n <ng-template #pepTemplate>\n <mat-form-field [formGroup]=\"form\" appearance=\"outline\">\n <div class=\"pep-file-wrapper\">\n <div class=\"pep-file body-sm\" [ngClass]=\"{ disable: disabled }\" [style.height]=\"fieldHeight\">\n <ng-container *ngIf=\"src != ''; then withImg; else noImg\"></ng-container>\n <ng-template #withImg>\n <button *ngIf=\"!disabled\" mat-button (click)=\"deleteSignature($event)\"\n class=\"pep-button icon-button weak md delete\" tabindex=\"-1\"\n [ngClass]=\"{ 'right-alignment': xAlignment == 'right' }\">\n <mat-icon>\n <pep-icon name=\"system_bin\"></pep-icon>\n </mat-icon>\n </button>\n <div class=\"pep-file-preview\" (click)=\"openSignModal()\">\n <img [src]=\"src\" [style.max-height]=\"fieldHeight\" class=\"pep-file-preview-img\"\n (error)=\"errorHandler($event)\" [alt]=\"label\"\n [ngClass]=\"['text-align-' + xAlignment]\" />\n </div>\n </ng-template>\n <ng-template #noImg>\n <div class=\"ellipsis pep-file-message\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"system_signature\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ (disabled ? 'MESSAGES.INFO_MISSING_SIGNATURE' : 'SIGNATURE.HINT') | translate }}\n </span>\n </div>\n </ng-template>\n </div>\n <input [id]=\"key\" matInput [formControlName]=\"key\" class=\"hidden-input signature\" type=\"text\"\n [value]=\"src\" (click)=\"openSignModal()\" (keypress)=\"onKeyPress_OpenSignModal($event)\"\n autocomplete=\"off\" readonly />\n </div>\n\n <mat-error><span class=\"body-xs\"\n [title]=\"mandatory && src.length == 0 ? ('MESSAGES.ERROR_IS_REQUIRED' | translate: { field: label }) : ('MESSAGES.ERROR_IS_NOT_VALID' | translate: { field: label })\"\n [innerText]=\"mandatory && src.length == 0 ? ('MESSAGES.ERROR_IS_REQUIRED' | translate: { field: label }) : ('MESSAGES.ERROR_IS_NOT_VALID' | translate: { field: label })\"></span>\n </mat-error>\n </mat-form-field>\n </ng-template>\n\n <ng-container *ngIf=\"layoutType === 'form'\">\n <div class=\"pep-file-container\" [ngClass]=\"{ 'one-row': rowSpan == 1, 'stand-alone': standAlone}\">\n <pep-field-title [label]=\"label\" [mandatory]=\"mandatory\" [disabled]=\"disabled\"
|
|
211
|
+
template: "<ng-container [formGroup]=\"form\">\r\n <ng-container>\r\n <ng-template #pepTemplate>\r\n <mat-form-field [formGroup]=\"form\" appearance=\"outline\">\r\n <div class=\"pep-file-wrapper\">\r\n <div class=\"pep-file body-sm\" [ngClass]=\"{ disable: disabled }\" [style.height]=\"fieldHeight\">\r\n <ng-container *ngIf=\"src != ''; then withImg; else noImg\"></ng-container>\r\n <ng-template #withImg>\r\n <button *ngIf=\"!disabled\" mat-button (click)=\"deleteSignature($event)\"\r\n class=\"pep-button icon-button weak md delete\" tabindex=\"-1\"\r\n [ngClass]=\"{ 'right-alignment': xAlignment == 'right' }\">\r\n <mat-icon>\r\n <pep-icon name=\"system_bin\"></pep-icon>\r\n </mat-icon>\r\n </button>\r\n <div class=\"pep-file-preview\" (click)=\"openSignModal()\">\r\n <img [src]=\"src\" [style.max-height]=\"fieldHeight\" class=\"pep-file-preview-img\"\r\n (error)=\"errorHandler($event)\" [alt]=\"label\"\r\n [ngClass]=\"['text-align-' + xAlignment]\" />\r\n </div>\r\n </ng-template>\r\n <ng-template #noImg>\r\n <div class=\"ellipsis pep-file-message\">\r\n <mat-icon class=\"pep-spacing-element\">\r\n <pep-icon name=\"system_signature\"></pep-icon>\r\n </mat-icon>\r\n <span class=\"body-sm ellipsis\">\r\n {{ (disabled ? 'MESSAGES.INFO_MISSING_SIGNATURE' : 'SIGNATURE.HINT') | translate }}\r\n </span>\r\n </div>\r\n </ng-template>\r\n </div>\r\n <input [id]=\"key\" matInput [formControlName]=\"key\" class=\"hidden-input signature\" type=\"text\"\r\n [value]=\"src\" (click)=\"openSignModal()\" (keypress)=\"onKeyPress_OpenSignModal($event)\"\r\n autocomplete=\"off\" readonly />\r\n </div>\r\n\r\n <mat-error><span class=\"body-xs\"\r\n [title]=\"mandatory && src.length == 0 ? ('MESSAGES.ERROR_IS_REQUIRED' | translate: { field: label }) : ('MESSAGES.ERROR_IS_NOT_VALID' | translate: { field: label })\"\r\n [innerText]=\"mandatory && src.length == 0 ? ('MESSAGES.ERROR_IS_REQUIRED' | translate: { field: label }) : ('MESSAGES.ERROR_IS_NOT_VALID' | translate: { field: label })\"></span>\r\n </mat-error>\r\n </mat-form-field>\r\n </ng-template>\r\n\r\n <ng-container *ngIf=\"layoutType === 'form'\">\r\n <div class=\"pep-file-container\" [ngClass]=\"{ 'one-row': rowSpan == 1, 'stand-alone': standAlone}\">\r\n <pep-field-title *ngIf=\"renderTitle\" [label]=\"label\" [mandatory]=\"mandatory\" [disabled]=\"disabled\"\r\n [xAlignment]=\"xAlignment\" [showTitle]=\"showTitle\">\r\n </pep-field-title>\r\n <ng-container *ngTemplateOutlet=\"pepTemplate\"></ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"layoutType === 'card'\">\r\n <ng-container *ngIf=\"false && isActive && !disabled; then selectedBlock; else notSelectedBlock\">\r\n </ng-container>\r\n <ng-template #selectedBlock>\r\n <div class=\"pep-file-container\" [ngClass]=\"{ 'one-row': rowSpan == 1}\">\r\n <ng-container *ngTemplateOutlet=\"pepTemplate\"></ng-container>\r\n </div>\r\n </ng-template>\r\n <ng-template #notSelectedBlock>\r\n <div class=\"pep-file-container\" [ngClass]=\"{ 'one-row': rowSpan == 1 }\">\r\n <ng-container *ngTemplateOutlet=\"pepReadonlyTemplate; context: { isTableView: false}\">\r\n </ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"layoutType === 'table'\">\r\n <ng-container *ngIf=\"false && isActive && !disabled; then selectedBlock; else notSelectedBlock\">\r\n </ng-container>\r\n <ng-template #selectedBlock>\r\n <div class=\"pep-file-container one-row\">\r\n <ng-container *ngTemplateOutlet=\"pepTemplate\"></ng-container>\r\n </div>\r\n </ng-template>\r\n <ng-template #notSelectedBlock>\r\n <div class=\"pep-file-container one-row\">\r\n <ng-container *ngTemplateOutlet=\"pepReadonlyTemplate; context: { isTableView: true}\">\r\n </ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- <ng-container *ngIf=\"inDialog === true\">\r\n <ng-container *ngTemplateOutlet=\"signaturePopupPad\"></ng-container>\r\n </ng-container> -->\r\n\r\n <!-- <div *ngIf=\"inDialog === false\" class=\"signature-backdrop modal\" [ngClass]=\"{ fade: !isVisibleModal }\" tabindex=\"-1\"\r\n role=\"dialog\" aria-labelledby=\"gridModalLabel\" aria-hidden=\"true\"\r\n [ngStyle]=\"{ display: isVisibleModal ? 'block' : 'none' }\">\r\n <div class=\"signature-modal modal-dialog\" role=\"document\">\r\n <div class=\"modal-content\">\r\n <ng-container *ngTemplateOutlet=\"signaturePopupPad\"></ng-container>\r\n </div>\r\n </div>\r\n </div> -->\r\n\r\n <ng-template #pepReadonlyTemplate let-isTableView=\"isTableView\">\r\n <div class=\"pep-file-container\">\r\n <div class=\"pep-file-wrapper\">\r\n <div class=\"pep-file body-sm disable\">\r\n <ng-container *ngIf=\"src != ''; then withImg; else noImg\"></ng-container>\r\n <ng-template #withImg>\r\n <div class=\"pep-file-preview\" (click)=\"openSignModal()\">\r\n <img *ngIf=\"!isTableView\" [src]=\"src\" [style.max-height]=\"fieldHeight\"\r\n class=\"pep-file-preview-img\" (error)=\"errorHandler($event)\" [alt]=\"label\"\r\n [ngClass]=\"['text-align-' + xAlignment]\" />\r\n <img *ngIf=\"isTableView\" [src]=\"src\" [style.max-height]=\"fieldHeight\"\r\n class=\"pep-report-file pep-file-preview-img\" (error)=\"errorHandler($event)\"\r\n [alt]=\"label\" [ngClass]=\"['text-align-' + xAlignment]\" />\r\n </div>\r\n </ng-template>\r\n <ng-template #noImg></ng-template>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #signaturePopupPad>\r\n <pep-dialog [title]=\"'SIGNATURE.DIALOG_TITLE' | translate\" [showFooter]=\"showActionBtn\">\r\n <ng-container pep-dialog-content>\r\n <signature-pad #signaturePad [options]=\"signaturePadOptions\" (onBeginEvent)=\"drawStart()\"\r\n (onEndEvent)=\"drawComplete()\">\r\n </signature-pad>\r\n </ng-container>\r\n <div pep-dialog-actions class=\"pep-spacing-element-negative\">\r\n <button mat-button class=\"pep-spacing-element pep-button md weak\" [disabled]=\"readonly || disabled\"\r\n (click)=\"clearSignModal()\">\r\n {{ 'ACTIONS.CLEAR' | translate }}\r\n </button>\r\n <button mat-button class=\"pep-spacing-element pep-button md strong\" [disabled]=\"readonly || disabled\"\r\n (click)=\"saveSignModal($event)\">\r\n {{ 'ACTIONS.DONE' | translate }}\r\n </button>\r\n </div>\r\n </pep-dialog>\r\n </ng-template>\r\n\r\n</ng-container>",
|
|
208
212
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
209
|
-
styles: [":host{display:block}signature-pad{display:grid;width:inherit;height:inherit}"]
|
|
213
|
+
styles: [":host{display:block}signature-pad{display:grid;width:inherit;height:inherit}", ".pep-signature-container .mat-form-field-flex,.pepperi-signature-container .mat-form-field-flex{padding:0!important}"]
|
|
210
214
|
},] }
|
|
211
215
|
];
|
|
212
216
|
PepSignatureComponent.ctorParameters = () => [
|
|
@@ -230,6 +234,7 @@ PepSignatureComponent.propDecorators = {
|
|
|
230
234
|
visible: [{ type: Input }],
|
|
231
235
|
form: [{ type: Input }],
|
|
232
236
|
showTitle: [{ type: Input }],
|
|
237
|
+
renderTitle: [{ type: Input }],
|
|
233
238
|
layoutType: [{ type: Input }],
|
|
234
239
|
isActive: [{ type: Input }],
|
|
235
240
|
fileChange: [{ type: Output }],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pepperi-addons-ngx-lib-signature.js","sources":["../../../projects/ngx-lib/signature/signature.component.ts","../../../projects/ngx-lib/signature/signature.module.ts","../../../projects/ngx-lib/signature/public-api.ts","../../../projects/ngx-lib/signature/pepperi-addons-ngx-lib-signature.ts"],"sourcesContent":["import {\n Component,\n OnInit,\n OnDestroy,\n ViewChild,\n Input,\n Output,\n EventEmitter,\n ChangeDetectorRef,\n ChangeDetectionStrategy,\n OnChanges,\n ElementRef,\n Renderer2,\n TemplateRef,\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { SignaturePad } from 'ngx-signaturepad/signature-pad';\nimport {\n PepFileService,\n PepLayoutType,\n PepCustomizationService,\n PepHorizontalAlignment,\n DEFAULT_HORIZONTAL_ALIGNMENT,\n PepSignatureField,\n} from '@pepperi-addons/ngx-lib';\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\nimport { MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'pep-signature',\n styleUrls: ['./signature.component.scss'],\n templateUrl: './signature.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PepSignatureComponent implements OnInit, OnChanges, OnDestroy {\n @Input() key = '';\n @Input() src = '';\n @Input() label = '';\n @Input() mandatory = false;\n @Input() disabled = false;\n @Input() readonly = false;\n @Input() xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\n\n private _rowSpan = 1;\n @Input()\n set rowSpan(value) {\n this._rowSpan = value;\n this.setFieldHeight();\n }\n get rowSpan(): number {\n return this._rowSpan;\n }\n\n @Input() signatureURL = '';\n // @Input() inDialog = false;\n\n private _visible = true;\n @Input()\n set visible(visible: boolean) {\n this._visible = visible;\n if (visible) {\n this.renderer.removeClass(\n this.element.nativeElement,\n 'hidden-element'\n );\n } else {\n this.renderer.addClass(\n this.element.nativeElement,\n 'hidden-element'\n );\n }\n }\n get visible(): boolean {\n return this._visible;\n }\n\n controlType = 'signature';\n\n @Input() form: FormGroup = null;\n @Input() showTitle = true;\n\n private _layoutType: PepLayoutType = 'form';\n @Input()\n set layoutType(value: PepLayoutType) {\n this._layoutType = value;\n this.setFieldHeight();\n }\n get layoutType(): PepLayoutType {\n return this._layoutType;\n }\n\n @Input() isActive = false;\n\n @Output()\n fileChange: EventEmitter<any> = new EventEmitter<any>();\n\n @ViewChild('signaturePad') signaturePad: SignaturePad;\n @ViewChild('signaturePopupPad', { read: TemplateRef })\n signaturePopupPad: TemplateRef<any>;\n dialogRef: MatDialogRef<any>;\n\n fieldHeight = '';\n standAlone = false;\n dataURI = null;\n showActionBtn = true;\n\n public isVisibleModal = false;\n acceptSignatureType = 'png';\n\n public signaturePadOptions: any = {\n // passed through to szimek/signature_pad constructor\n minWidth: 2,\n canvasWidth: 500,\n canvasHeight: 300,\n penColor: 'rgb(151, 151, 151)',\n };\n\n constructor(\n private dialogService: PepDialogService,\n private customizationService: PepCustomizationService,\n private fileService: PepFileService,\n private cd: ChangeDetectorRef,\n private renderer: Renderer2,\n private element: ElementRef\n ) { }\n\n private setFieldHeight(): void {\n this.fieldHeight = this.customizationService.calculateFieldHeight(\n this.layoutType,\n this.rowSpan,\n this.standAlone\n );\n }\n\n private setDefaultForm(): void {\n const pepField = new PepSignatureField({\n key: this.key,\n value: this.src,\n mandatory: this.mandatory,\n readonly: this.readonly,\n disabled: this.disabled,\n });\n this.form = this.customizationService.getDefaultFromGroup(pepField);\n }\n\n ngOnInit(): void {\n if (this.form === null) {\n this.standAlone = true;\n this.setFieldHeight();\n this.setDefaultForm();\n\n this.renderer.addClass(\n this.element.nativeElement,\n PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME\n );\n }\n }\n\n ngOnChanges(changes: any): void {\n if (this.standAlone) {\n this.setDefaultForm();\n }\n\n if (changes.src && changes.src.currentValue.length > 0) {\n // Empty dataURI if there is change in the src.\n this.dataURI = null;\n\n // For clean the cache.\n // this.src = this.src ? this.src + '?t=' + new Date().toTimeString() : '';\n }\n }\n\n ngOnDestroy(): void {\n //\n }\n\n drawComplete(): void {\n // will be notified of szimek/signature_pad's onEnd event\n }\n\n drawStart(): void {\n // will be notified of szimek/signature_pad's onBegin event\n }\n\n openSignModal(): void {\n // If the signature is not empty open it in image viewer.\n if (this.standAlone && this.dataURI) {\n const fileStrArr = this.dataURI.fileStr.split(';');\n\n if (fileStrArr.length === 2) {\n const win = window.open('', '_blank');\n const contentType = fileStrArr[0].split(':')[1];\n const base64 = fileStrArr[1].split(',')[1];\n const blob = this.fileService.convertFromb64toBlob(\n base64,\n contentType\n );\n const url = URL.createObjectURL(blob);\n win.location.href = url;\n }\n // signature allready exits\n } else {\n this.signatureURL = this.src;\n this.openSignatoreDlg(this.signatureURL);\n }\n }\n\n openSignatoreDlg(src = ''): void {\n this.showActionBtn =\n this.signatureURL && this.signatureURL !== '' ? false : true;\n\n this.dialogRef = this.dialogService.openDialog(this.signaturePopupPad);\n this.dialogRef.afterOpened().subscribe(() => {\n this.afterDialogOpened();\n });\n }\n\n afterDialogOpened(): void {\n if (this.signatureURL && this.signatureURL !== '') {\n this.signaturePad.fromDataURL(this.signatureURL);\n this.signaturePad.off();\n }\n }\n\n clearSignModal(): void {\n this.signatureURL = '';\n this.signaturePad.clear();\n this.signaturePad.on();\n }\n\n deleteSignature(event: any): void {\n this.signatureURL = '';\n this.changeValue(this.signatureURL);\n this.cd.detectChanges();\n }\n\n saveSignModal(event: any): void {\n if (!this.signaturePad.isEmpty()) {\n this.signatureURL = this.signaturePad.toDataURL('image/png');\n const fileValue = {\n acceptedExtensions: this.acceptSignatureType,\n fileStr: this.signatureURL,\n fileExt: this.acceptSignatureType,\n };\n this.changeValue(fileValue);\n } else {\n this.signatureURL = '';\n this.changeValue(this.signatureURL);\n }\n\n this.dialogRef.close(this.signatureURL);\n }\n\n errorHandler(event: any): void {\n this.signatureURL = this.src = ''; // this.blankImage;\n }\n\n changeValue(fileData: any): void {\n this.dataURI = fileData;\n this.src = this.standAlone && this.dataURI ? this.dataURI.fileStr : '';\n this.customizationService.updateFormFieldValue(\n this.form,\n this.key,\n this.dataURI ? this.dataURI.fileExt : ''\n );\n // this.valueChange.emit({\n // key: this.key,\n // value,\n // });\n\n this.fileChange.emit(fileData);\n // this.fileChange.emit(value.length > 0 ? JSON.parse(value) : value);\n }\n\n onKeyPress_OpenSignModal(event: any): void {\n const e = event as KeyboardEvent;\n\n if ([13, 32].indexOf(e.which) !== -1) {\n this.openSignModal();\n }\n e.preventDefault();\n }\n}","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ReactiveFormsModule } from '@angular/forms';\n\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatDialogModule } from '@angular/material/dialog';\n\nimport { SignaturePadModule } from 'ngx-signaturepad';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconSystemBin,\n pepIconSystemSignature,\n pepIconSystemClose,\n} from '@pepperi-addons/ngx-lib/icon';\nimport { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';\nimport { PepFilesUploaderModule } from '@pepperi-addons/ngx-lib/files-uploader';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\n\nimport { PepSignatureComponent } from './signature.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n // Material modules\n MatCommonModule,\n MatButtonModule,\n MatFormFieldModule,\n MatInputModule,\n MatIconModule,\n MatDialogModule,\n // External modules\n SignaturePadModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n PepFieldTitleModule,\n PepFilesUploaderModule,\n PepDialogModule,\n ],\n exports: [PepSignatureComponent],\n declarations: [PepSignatureComponent],\n})\nexport class PepSignatureModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([\n pepIconSystemBin,\n pepIconSystemSignature,\n pepIconSystemClose,\n ]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/signature\n */\nexport * from './signature.module';\nexport * from './signature.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pepperi-addons-ngx-lib-signature.js","sources":["../../../projects/ngx-lib/signature/signature.component.ts","../../../projects/ngx-lib/signature/signature.module.ts","../../../projects/ngx-lib/signature/public-api.ts","../../../projects/ngx-lib/signature/pepperi-addons-ngx-lib-signature.ts"],"sourcesContent":["import {\r\n Component,\r\n OnInit,\r\n OnDestroy,\r\n ViewChild,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n OnChanges,\r\n ElementRef,\r\n Renderer2,\r\n TemplateRef,\r\n} from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { SignaturePad } from 'ngx-signaturepad/signature-pad';\r\nimport {\r\n PepFileService,\r\n PepLayoutType,\r\n PepCustomizationService,\r\n PepHorizontalAlignment,\r\n DEFAULT_HORIZONTAL_ALIGNMENT,\r\n PepSignatureField,\r\n} from '@pepperi-addons/ngx-lib';\r\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\n\r\n@Component({\r\n selector: 'pep-signature',\r\n styleUrls: ['./signature.component.scss', './signature.component.theme.scss'],\r\n templateUrl: './signature.component.html',\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PepSignatureComponent implements OnInit, OnChanges, OnDestroy {\r\n @Input() key = '';\r\n @Input() src = '';\r\n @Input() label = '';\r\n @Input() mandatory = false;\r\n @Input() disabled = false;\r\n @Input() readonly = false;\r\n @Input() xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\r\n\r\n private _rowSpan = 1;\r\n @Input()\r\n set rowSpan(value) {\r\n this._rowSpan = value;\r\n this.setFieldHeight();\r\n }\r\n get rowSpan(): number {\r\n return this._rowSpan;\r\n }\r\n\r\n @Input() signatureURL = '';\r\n // @Input() inDialog = false;\r\n\r\n private _visible = true;\r\n @Input()\r\n set visible(visible: boolean) {\r\n this._visible = visible;\r\n if (visible) {\r\n this.renderer.removeClass(\r\n this.element.nativeElement,\r\n 'hidden-element'\r\n );\r\n } else {\r\n this.renderer.addClass(\r\n this.element.nativeElement,\r\n 'hidden-element'\r\n );\r\n }\r\n }\r\n get visible(): boolean {\r\n return this._visible;\r\n }\r\n\r\n controlType = 'signature';\r\n\r\n @Input() form: FormGroup = null;\r\n @Input() showTitle = true;\r\n @Input() renderTitle = true;\r\n\r\n private _layoutType: PepLayoutType = 'form';\r\n @Input()\r\n set layoutType(value: PepLayoutType) {\r\n this._layoutType = value;\r\n this.setFieldHeight();\r\n }\r\n get layoutType(): PepLayoutType {\r\n return this._layoutType;\r\n }\r\n\r\n @Input() isActive = false;\r\n\r\n @Output()\r\n fileChange: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n @ViewChild('signaturePad') signaturePad: SignaturePad;\r\n @ViewChild('signaturePopupPad', { read: TemplateRef })\r\n signaturePopupPad: TemplateRef<any>;\r\n dialogRef: MatDialogRef<any>;\r\n\r\n fieldHeight = '';\r\n standAlone = false;\r\n dataURI = null;\r\n showActionBtn = true;\r\n\r\n public isVisibleModal = false;\r\n acceptSignatureType = 'png';\r\n\r\n public signaturePadOptions: any = {\r\n // passed through to szimek/signature_pad constructor\r\n minWidth: 2,\r\n canvasWidth: 500,\r\n canvasHeight: 300,\r\n penColor: 'rgb(151, 151, 151)',\r\n };\r\n\r\n constructor(\r\n private dialogService: PepDialogService,\r\n private customizationService: PepCustomizationService,\r\n private fileService: PepFileService,\r\n private cd: ChangeDetectorRef,\r\n private renderer: Renderer2,\r\n private element: ElementRef\r\n ) { }\r\n\r\n private setFieldHeight(): void {\r\n this.fieldHeight = this.customizationService.calculateFieldHeight(\r\n this.layoutType,\r\n this.rowSpan,\r\n this.standAlone\r\n );\r\n }\r\n\r\n private setDefaultForm(): void {\r\n const pepField = new PepSignatureField({\r\n key: this.key,\r\n value: this.src,\r\n mandatory: this.mandatory,\r\n readonly: this.readonly,\r\n disabled: this.disabled,\r\n });\r\n this.form = this.customizationService.getDefaultFromGroup(pepField);\r\n }\r\n\r\n ngOnInit(): void {\r\n if (this.form === null) {\r\n this.standAlone = true;\r\n this.setFieldHeight();\r\n this.setDefaultForm();\r\n\r\n this.renderer.addClass(\r\n this.element.nativeElement,\r\n PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME\r\n );\r\n\r\n if (!this.renderTitle) {\r\n this.renderer.addClass(\r\n this.element.nativeElement,\r\n PepCustomizationService.STAND_ALONE_FIELD_NO_SPACING_CLASS_NAME\r\n );\r\n }\r\n }\r\n }\r\n\r\n ngOnChanges(changes: any): void {\r\n if (this.standAlone) {\r\n this.setDefaultForm();\r\n }\r\n\r\n if (changes.src && changes.src.currentValue.length > 0) {\r\n // Empty dataURI if there is change in the src.\r\n this.dataURI = null;\r\n\r\n // For clean the cache.\r\n // this.src = this.src ? this.src + '?t=' + new Date().toTimeString() : '';\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n //\r\n }\r\n\r\n drawComplete(): void {\r\n // will be notified of szimek/signature_pad's onEnd event\r\n }\r\n\r\n drawStart(): void {\r\n // will be notified of szimek/signature_pad's onBegin event\r\n }\r\n\r\n openSignModal(): void {\r\n // If the signature is not empty open it in image viewer.\r\n if (this.standAlone && this.dataURI) {\r\n const fileStrArr = this.dataURI.fileStr.split(';');\r\n\r\n if (fileStrArr.length === 2) {\r\n const win = window.open('', '_blank');\r\n const contentType = fileStrArr[0].split(':')[1];\r\n const base64 = fileStrArr[1].split(',')[1];\r\n const blob = this.fileService.convertFromb64toBlob(\r\n base64,\r\n contentType\r\n );\r\n const url = URL.createObjectURL(blob);\r\n win.location.href = url;\r\n }\r\n // signature allready exits\r\n } else {\r\n this.signatureURL = this.src;\r\n this.openSignatoreDlg(this.signatureURL);\r\n }\r\n }\r\n\r\n openSignatoreDlg(src = ''): void {\r\n this.showActionBtn =\r\n this.signatureURL && this.signatureURL !== '' ? false : true;\r\n\r\n this.dialogRef = this.dialogService.openDialog(this.signaturePopupPad);\r\n this.dialogRef.afterOpened().subscribe(() => {\r\n this.afterDialogOpened();\r\n });\r\n }\r\n\r\n afterDialogOpened(): void {\r\n if (this.signatureURL && this.signatureURL !== '') {\r\n this.signaturePad.fromDataURL(this.signatureURL);\r\n this.signaturePad.off();\r\n }\r\n }\r\n\r\n clearSignModal(): void {\r\n this.signatureURL = '';\r\n this.signaturePad.clear();\r\n this.signaturePad.on();\r\n }\r\n\r\n deleteSignature(event: any): void {\r\n this.signatureURL = '';\r\n this.changeValue(this.signatureURL);\r\n this.cd.detectChanges();\r\n }\r\n\r\n saveSignModal(event: any): void {\r\n if (!this.signaturePad.isEmpty()) {\r\n this.signatureURL = this.signaturePad.toDataURL('image/png');\r\n const fileValue = {\r\n acceptedExtensions: this.acceptSignatureType,\r\n fileStr: this.signatureURL,\r\n fileExt: this.acceptSignatureType,\r\n };\r\n this.changeValue(fileValue);\r\n } else {\r\n this.signatureURL = '';\r\n this.changeValue(this.signatureURL);\r\n }\r\n\r\n this.dialogRef.close(this.signatureURL);\r\n }\r\n\r\n errorHandler(event: any): void {\r\n this.signatureURL = this.src = ''; // this.blankImage;\r\n }\r\n\r\n changeValue(fileData: any): void {\r\n this.dataURI = fileData;\r\n this.src = this.standAlone && this.dataURI ? this.dataURI.fileStr : '';\r\n this.customizationService.updateFormFieldValue(\r\n this.form,\r\n this.key,\r\n this.dataURI ? this.dataURI.fileExt : ''\r\n );\r\n // this.valueChange.emit({\r\n // key: this.key,\r\n // value,\r\n // });\r\n\r\n this.fileChange.emit(fileData);\r\n // this.fileChange.emit(value.length > 0 ? JSON.parse(value) : value);\r\n }\r\n\r\n onKeyPress_OpenSignModal(event: any): void {\r\n const e = event as KeyboardEvent;\r\n\r\n if ([13, 32].indexOf(e.which) !== -1) {\r\n this.openSignModal();\r\n }\r\n e.preventDefault();\r\n }\r\n}","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { MatCommonModule } from '@angular/material/core';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\n\r\nimport { SignaturePadModule } from 'ngx-signaturepad';\r\n\r\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\r\nimport {\r\n PepIconModule,\r\n PepIconRegistry,\r\n pepIconSystemBin,\r\n pepIconSystemSignature,\r\n pepIconSystemClose,\r\n} from '@pepperi-addons/ngx-lib/icon';\r\nimport { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';\r\nimport { PepFilesUploaderModule } from '@pepperi-addons/ngx-lib/files-uploader';\r\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\r\n\r\nimport { PepSignatureComponent } from './signature.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n // Material modules\r\n MatCommonModule,\r\n MatButtonModule,\r\n MatFormFieldModule,\r\n MatInputModule,\r\n MatIconModule,\r\n MatDialogModule,\r\n // External modules\r\n SignaturePadModule,\r\n // ngx-lib modules\r\n PepNgxLibModule,\r\n PepIconModule,\r\n PepFieldTitleModule,\r\n PepFilesUploaderModule,\r\n PepDialogModule,\r\n ],\r\n exports: [PepSignatureComponent],\r\n declarations: [PepSignatureComponent],\r\n})\r\nexport class PepSignatureModule {\r\n constructor(private pepIconRegistry: PepIconRegistry) {\r\n this.pepIconRegistry.registerIcons([\r\n pepIconSystemBin,\r\n pepIconSystemSignature,\r\n pepIconSystemClose,\r\n ]);\r\n }\r\n}\r\n","/*\r\n * Public API Surface of ngx-lib/signature\r\n */\r\nexport * from './signature.module';\r\nexport * from './signature.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -77,7 +77,7 @@ class PepSizeDetectorComponent {
|
|
|
77
77
|
PepSizeDetectorComponent.decorators = [
|
|
78
78
|
{ type: Component, args: [{
|
|
79
79
|
selector: 'pep-size-detector',
|
|
80
|
-
template: "<!-- Bootstrap -->\n<!-- <div *ngFor=\"let s of sizes\" class=\"{{s.css + ' ' + (prefix + s.id) }}\">{{s.name}}</div> -->\n\n<!-- Angular flex-layout -->\n<div *ngFor=\"let s of sizes\" fxShow.xs=\"{{s.name == 'xs'}}\" fxShow.sm=\"{{s.name == 'sm'}}\"\n fxShow.md=\"{{s.name == 'md'}}\" fxShow.lg=\"{{s.name == 'lg'}}\" fxShow.xl=\"{{s.name == 'xl'}}\"\n class=\"{{s.css + ' ' + (prefix + s.id) }}\">\n <ng-container *ngIf=\"showScreenSize\"> The current screen size is - {{s.name}}</ng-container>\n</div>"
|
|
80
|
+
template: "<!-- Bootstrap -->\r\n<!-- <div *ngFor=\"let s of sizes\" class=\"{{s.css + ' ' + (prefix + s.id) }}\">{{s.name}}</div> -->\r\n\r\n<!-- Angular flex-layout -->\r\n<div *ngFor=\"let s of sizes\" fxShow.xs=\"{{s.name == 'xs'}}\" fxShow.sm=\"{{s.name == 'sm'}}\"\r\n fxShow.md=\"{{s.name == 'md'}}\" fxShow.lg=\"{{s.name == 'lg'}}\" fxShow.xl=\"{{s.name == 'xl'}}\"\r\n class=\"{{s.css + ' ' + (prefix + s.id) }}\">\r\n <ng-container *ngIf=\"showScreenSize\"> The current screen size is - {{s.name}}</ng-container>\r\n</div>"
|
|
81
81
|
},] }
|
|
82
82
|
];
|
|
83
83
|
PepSizeDetectorComponent.ctorParameters = () => [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pepperi-addons-ngx-lib-size-detector.js","sources":["../../../projects/ngx-lib/size-detector/size-detector.component.ts","../../../projects/ngx-lib/size-detector/size-detector.module.ts","../../../projects/ngx-lib/size-detector/public-api.ts","../../../projects/ngx-lib/size-detector/pepperi-addons-ngx-lib-size-detector.ts"],"sourcesContent":["import {\n Component,\n OnInit,\n AfterViewInit,\n HostListener,\n ElementRef,\n Input,\n Output,\n EventEmitter,\n} from '@angular/core';\nimport { PepLayoutService, PepScreenSizeType } from '@pepperi-addons/ngx-lib';\n\ninterface IPepSizeDetectorItem {\n id: PepScreenSizeType;\n name: string;\n css: string;\n}\n\n@Component({\n selector: 'pep-size-detector',\n templateUrl: './size-detector.component.html',\n})\nexport class PepSizeDetectorComponent implements AfterViewInit {\n @Input() showScreenSize = false;\n\n private _useAsWebComponent = false;\n @Input()\n set useAsWebComponent(value: boolean) {\n if (value) {\n this.exportFunctionsOnHostElement();\n }\n }\n get useAsWebComponent(): boolean {\n return this._useAsWebComponent;\n }\n\n @Output()\n sizeChange: EventEmitter<IPepSizeDetectorItem> = new EventEmitter<IPepSizeDetectorItem>();\n\n prefix = 'is-';\n sizes: Array<IPepSizeDetectorItem> = [\n {\n id: PepScreenSizeType.XS,\n name: 'xs',\n css: `d-block d-sm-none`,\n },\n {\n id: PepScreenSizeType.SM,\n name: 'sm',\n css: `d-none d-sm-block d-md-none`,\n },\n {\n id: PepScreenSizeType.MD,\n name: 'md',\n css: `d-none d-md-block d-lg-none`,\n },\n {\n id: PepScreenSizeType.LG,\n name: 'lg',\n css: `d-none d-lg-block d-xl-none`,\n },\n {\n id: PepScreenSizeType.XL,\n name: 'xl',\n css: `d-none d-xl-block`,\n },\n ];\n\n private currentSize: IPepSizeDetectorItem;\n\n constructor(\n private hostElement: ElementRef,\n private layoutService: PepLayoutService\n ) {\n this.layoutService.onResize$.subscribe((size: PepScreenSizeType) => {\n this.currentSize = this.sizes.find((s) => s.id === size);\n this.sizeChange.emit(this.currentSize);\n });\n }\n\n @HostListener('window:resize', ['$event'])\n onResize(event): void {\n this.detectScreenSize();\n }\n\n ngAfterViewInit(): void {\n this.detectScreenSize();\n }\n\n private detectScreenSize(): void {\n this.currentSize = this.sizes.find((x) => {\n const el = this.hostElement.nativeElement.querySelector(\n `.${this.prefix}${x.id}`\n );\n const isVisible = window.getComputedStyle(el).display !== 'none';\n\n return isVisible;\n });\n\n this.layoutService.onResize(this.currentSize.id);\n }\n\n private exportFunctionsOnHostElement() {\n // This is for web component usage for use those functions.\n this.hostElement.nativeElement.getCurrentSize = this.getCurrentSize.bind(\n this\n );\n }\n\n getCurrentSize(): IPepSizeDetectorItem {\n return this.currentSize;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { FlexLayoutModule } from '@angular/flex-layout';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\n\nimport { PepSizeDetectorComponent } from './size-detector.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n FlexLayoutModule,\n // ngx-lib modules\n PepNgxLibModule,\n ],\n exports: [PepSizeDetectorComponent],\n declarations: [PepSizeDetectorComponent],\n})\nexport class PepSizeDetectorModule {}\n","/*\n * Public API Surface of ngx-lib/size-detector\n */\nexport * from './size-detector.module';\nexport * from './size-detector.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;MAsBa,wBAAwB;IAgDjC,YACY,WAAuB,EACvB,aAA+B;QAD/B,gBAAW,GAAX,WAAW,CAAY;QACvB,kBAAa,GAAb,aAAa,CAAkB;QAjDlC,mBAAc,GAAG,KAAK,CAAC;QAExB,uBAAkB,GAAG,KAAK,CAAC;QAYnC,eAAU,GAAuC,IAAI,YAAY,EAAwB,CAAC;QAE1F,WAAM,GAAG,KAAK,CAAC;QACf,UAAK,GAAgC;YACjC;gBACI,EAAE,EAAE,iBAAiB,CAAC,EAAE;gBACxB,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,mBAAmB;aAC3B;YACD;gBACI,EAAE,EAAE,iBAAiB,CAAC,EAAE;gBACxB,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,6BAA6B;aACrC;YACD;gBACI,EAAE,EAAE,iBAAiB,CAAC,EAAE;gBACxB,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,6BAA6B;aACrC;YACD;gBACI,EAAE,EAAE,iBAAiB,CAAC,EAAE;gBACxB,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,6BAA6B;aACrC;YACD;gBACI,EAAE,EAAE,iBAAiB,CAAC,EAAE;gBACxB,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,mBAAmB;aAC3B;SACJ,CAAC;QAQE,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAuB;YAC3D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;YACzD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC1C,CAAC,CAAC;KACN;IApDD,IACI,iBAAiB,CAAC,KAAc;QAChC,IAAI,KAAK,EAAE;YACP,IAAI,CAAC,4BAA4B,EAAE,CAAC;SACvC;KACJ;IACD,IAAI,iBAAiB;QACjB,OAAO,IAAI,CAAC,kBAAkB,CAAC;KAClC;IA+CD,QAAQ,CAAC,KAAK;QACV,IAAI,CAAC,gBAAgB,EAAE,CAAC;KAC3B;IAED,eAAe;QACX,IAAI,CAAC,gBAAgB,EAAE,CAAC;KAC3B;IAEO,gBAAgB;QACpB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACjC,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CACnD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,CAC3B,CAAC;YACF,MAAM,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC;YAEjE,OAAO,SAAS,CAAC;SACpB,CAAC,CAAC;QAEH,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;KACpD;IAEO,4BAA4B;;QAEhC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CACpE,IAAI,CACP,CAAC;KACL;IAED,cAAc;QACV,OAAO,IAAI,CAAC,WAAW,CAAC;KAC3B;;;YA7FJ,SAAS,SAAC;gBACP,QAAQ,EAAE,mBAAmB;gBAC7B,
|
|
1
|
+
{"version":3,"file":"pepperi-addons-ngx-lib-size-detector.js","sources":["../../../projects/ngx-lib/size-detector/size-detector.component.ts","../../../projects/ngx-lib/size-detector/size-detector.module.ts","../../../projects/ngx-lib/size-detector/public-api.ts","../../../projects/ngx-lib/size-detector/pepperi-addons-ngx-lib-size-detector.ts"],"sourcesContent":["import {\r\n Component,\r\n OnInit,\r\n AfterViewInit,\r\n HostListener,\r\n ElementRef,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport { PepLayoutService, PepScreenSizeType } from '@pepperi-addons/ngx-lib';\r\n\r\ninterface IPepSizeDetectorItem {\r\n id: PepScreenSizeType;\r\n name: string;\r\n css: string;\r\n}\r\n\r\n@Component({\r\n selector: 'pep-size-detector',\r\n templateUrl: './size-detector.component.html',\r\n})\r\nexport class PepSizeDetectorComponent implements AfterViewInit {\r\n @Input() showScreenSize = false;\r\n\r\n private _useAsWebComponent = false;\r\n @Input()\r\n set useAsWebComponent(value: boolean) {\r\n if (value) {\r\n this.exportFunctionsOnHostElement();\r\n }\r\n }\r\n get useAsWebComponent(): boolean {\r\n return this._useAsWebComponent;\r\n }\r\n\r\n @Output()\r\n sizeChange: EventEmitter<IPepSizeDetectorItem> = new EventEmitter<IPepSizeDetectorItem>();\r\n\r\n prefix = 'is-';\r\n sizes: Array<IPepSizeDetectorItem> = [\r\n {\r\n id: PepScreenSizeType.XS,\r\n name: 'xs',\r\n css: `d-block d-sm-none`,\r\n },\r\n {\r\n id: PepScreenSizeType.SM,\r\n name: 'sm',\r\n css: `d-none d-sm-block d-md-none`,\r\n },\r\n {\r\n id: PepScreenSizeType.MD,\r\n name: 'md',\r\n css: `d-none d-md-block d-lg-none`,\r\n },\r\n {\r\n id: PepScreenSizeType.LG,\r\n name: 'lg',\r\n css: `d-none d-lg-block d-xl-none`,\r\n },\r\n {\r\n id: PepScreenSizeType.XL,\r\n name: 'xl',\r\n css: `d-none d-xl-block`,\r\n },\r\n ];\r\n\r\n private currentSize: IPepSizeDetectorItem;\r\n\r\n constructor(\r\n private hostElement: ElementRef,\r\n private layoutService: PepLayoutService\r\n ) {\r\n this.layoutService.onResize$.subscribe((size: PepScreenSizeType) => {\r\n this.currentSize = this.sizes.find((s) => s.id === size);\r\n this.sizeChange.emit(this.currentSize);\r\n });\r\n }\r\n\r\n @HostListener('window:resize', ['$event'])\r\n onResize(event): void {\r\n this.detectScreenSize();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.detectScreenSize();\r\n }\r\n\r\n private detectScreenSize(): void {\r\n this.currentSize = this.sizes.find((x) => {\r\n const el = this.hostElement.nativeElement.querySelector(\r\n `.${this.prefix}${x.id}`\r\n );\r\n const isVisible = window.getComputedStyle(el).display !== 'none';\r\n\r\n return isVisible;\r\n });\r\n\r\n this.layoutService.onResize(this.currentSize.id);\r\n }\r\n\r\n private exportFunctionsOnHostElement() {\r\n // This is for web component usage for use those functions.\r\n this.hostElement.nativeElement.getCurrentSize = this.getCurrentSize.bind(\r\n this\r\n );\r\n }\r\n\r\n getCurrentSize(): IPepSizeDetectorItem {\r\n return this.currentSize;\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\n\r\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\r\n\r\nimport { PepSizeDetectorComponent } from './size-detector.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n FlexLayoutModule,\r\n // ngx-lib modules\r\n PepNgxLibModule,\r\n ],\r\n exports: [PepSizeDetectorComponent],\r\n declarations: [PepSizeDetectorComponent],\r\n})\r\nexport class PepSizeDetectorModule {}\r\n","/*\r\n * Public API Surface of ngx-lib/size-detector\r\n */\r\nexport * from './size-detector.module';\r\nexport * from './size-detector.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;MAsBa,wBAAwB;IAgDjC,YACY,WAAuB,EACvB,aAA+B;QAD/B,gBAAW,GAAX,WAAW,CAAY;QACvB,kBAAa,GAAb,aAAa,CAAkB;QAjDlC,mBAAc,GAAG,KAAK,CAAC;QAExB,uBAAkB,GAAG,KAAK,CAAC;QAYnC,eAAU,GAAuC,IAAI,YAAY,EAAwB,CAAC;QAE1F,WAAM,GAAG,KAAK,CAAC;QACf,UAAK,GAAgC;YACjC;gBACI,EAAE,EAAE,iBAAiB,CAAC,EAAE;gBACxB,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,mBAAmB;aAC3B;YACD;gBACI,EAAE,EAAE,iBAAiB,CAAC,EAAE;gBACxB,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,6BAA6B;aACrC;YACD;gBACI,EAAE,EAAE,iBAAiB,CAAC,EAAE;gBACxB,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,6BAA6B;aACrC;YACD;gBACI,EAAE,EAAE,iBAAiB,CAAC,EAAE;gBACxB,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,6BAA6B;aACrC;YACD;gBACI,EAAE,EAAE,iBAAiB,CAAC,EAAE;gBACxB,IAAI,EAAE,IAAI;gBACV,GAAG,EAAE,mBAAmB;aAC3B;SACJ,CAAC;QAQE,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,IAAuB;YAC3D,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,CAAC;YACzD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC1C,CAAC,CAAC;KACN;IApDD,IACI,iBAAiB,CAAC,KAAc;QAChC,IAAI,KAAK,EAAE;YACP,IAAI,CAAC,4BAA4B,EAAE,CAAC;SACvC;KACJ;IACD,IAAI,iBAAiB;QACjB,OAAO,IAAI,CAAC,kBAAkB,CAAC;KAClC;IA+CD,QAAQ,CAAC,KAAK;QACV,IAAI,CAAC,gBAAgB,EAAE,CAAC;KAC3B;IAED,eAAe;QACX,IAAI,CAAC,gBAAgB,EAAE,CAAC;KAC3B;IAEO,gBAAgB;QACpB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACjC,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CACnD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,CAC3B,CAAC;YACF,MAAM,SAAS,GAAG,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC,OAAO,KAAK,MAAM,CAAC;YAEjE,OAAO,SAAS,CAAC;SACpB,CAAC,CAAC;QAEH,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;KACpD;IAEO,4BAA4B;;QAEhC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CACpE,IAAI,CACP,CAAC;KACL;IAED,cAAc;QACV,OAAO,IAAI,CAAC,WAAW,CAAC;KAC3B;;;YA7FJ,SAAS,SAAC;gBACP,QAAQ,EAAE,mBAAmB;gBAC7B,whBAA6C;aAChD;;;YAhBG,UAAU;YAKL,gBAAgB;;;6BAapB,KAAK;gCAGL,KAAK;yBAUL,MAAM;uBA4CN,YAAY,SAAC,eAAe,EAAE,CAAC,QAAQ,CAAC;;;MC5DhC,qBAAqB;;;YAXjC,QAAQ,SAAC;gBACN,OAAO,EAAE;oBACL,YAAY;oBACZ,mBAAmB;oBACnB,gBAAgB;;oBAEhB,eAAe;iBAClB;gBACD,OAAO,EAAE,CAAC,wBAAwB,CAAC;gBACnC,YAAY,EAAE,CAAC,wBAAwB,CAAC;aAC3C;;;ACnBD;;;;ACAA;;;;;;"}
|
|
@@ -77,8 +77,8 @@ class PepSliderComponent {
|
|
|
77
77
|
PepSliderComponent.decorators = [
|
|
78
78
|
{ type: Component, args: [{
|
|
79
79
|
selector: 'pep-slider',
|
|
80
|
-
template: "<div class=\"pep-slider-container\">\n <pep-field-title [label]=\"label\" [disabled]=\"disabled\" [hint]=\"hint\" [xAlignment]=\"xAlignment\">\n </pep-field-title>\n <mat-slider [min]=\"minValue\" [max]=\"maxValue\" [step]=\"step\" [value]=\"value\" [disabled]=\"disabled\" [title]=\"value\"\n (change)=\"onValueChange($event)\" (input)=\"onInputChange($event)\">\n </mat-slider>\n</div>",
|
|
81
|
-
styles: [""]
|
|
80
|
+
template: "<div class=\"pep-slider-container\">\r\n <pep-field-title [label]=\"label\" [disabled]=\"disabled\" [hint]=\"hint\" [xAlignment]=\"xAlignment\">\r\n </pep-field-title>\r\n <mat-slider [min]=\"minValue\" [max]=\"maxValue\" [step]=\"step\" [value]=\"value\" [disabled]=\"disabled\" [title]=\"value\"\r\n (change)=\"onValueChange($event)\" (input)=\"onInputChange($event)\">\r\n </mat-slider>\r\n</div>",
|
|
81
|
+
styles: ["", ".pep-slider-container ::ng-deep.mat-slider{background:rgba(26,26,26,.12);background:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.12)}.pep-slider-container ::ng-deep.mat-slider.mat-slider-horizontal{height:1rem;width:100%;padding:.5rem .25rem;border-radius:.5rem;border-radius:var(--pep-border-radius-lg,.5rem)}.pep-slider-container ::ng-deep.mat-slider .mat-slider-wrapper{height:.375rem;position:relative;top:calc(.375rem / 2 * -1);left:unset;right:unset;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem)}.pep-slider-container ::ng-deep.mat-slider .mat-slider-wrapper .mat-slider-track-wrapper{display:none}.pep-slider-container ::ng-deep.mat-slider .mat-slider-wrapper .mat-slider-thumb-container{width:94%;left:3%}.pep-slider-container ::ng-deep.mat-slider .mat-slider-wrapper .mat-slider-thumb-container .mat-slider-thumb{width:18px;height:18px;right:calc($sliderSize / 2 * -1);bottom:calc($sliderSize / 2 * -1);transform:scale(.7)!important;border-color:#fff;border-color:hsl(var(--pep-color-system-primary-invert-h,255),var(--pep-color-system-primary-invert-s,100%),var(--pep-color-system-primary-invert-l,100%));border-width:5px;background-color:transparent!important;box-shadow:0 0 0 .125rem rgba(23,102,166,.5);box-shadow:0 0 0 var(--pep-spacing-2xs,.125rem) hsla(var(--pep-color-text-link-h,207),var(--pep-color-text-link-s,76%),var(--pep-color-text-link-l,37%),.5)}"]
|
|
82
82
|
},] }
|
|
83
83
|
];
|
|
84
84
|
PepSliderComponent.ctorParameters = () => [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pepperi-addons-ngx-lib-slider.js","sources":["../../../projects/ngx-lib/slider/slider.component.ts","../../../projects/ngx-lib/slider/slider.module.ts","../../../projects/ngx-lib/slider/public-api.ts","../../../projects/ngx-lib/slider/pepperi-addons-ngx-lib-slider.ts"],"sourcesContent":["import {\n Component,\n OnDestroy,\n Input,\n Output,\n EventEmitter,\n Renderer2,\n ElementRef,\n OnInit,\n ViewChild,\n} from '@angular/core';\nimport { PepLayoutService, DEFAULT_HORIZONTAL_ALIGNMENT, PepHorizontalAlignment } from '@pepperi-addons/ngx-lib';\n\n/**\n * This is a slider component that support pepperi theme\n * style & state & sizes\n *\n * @export\n * @class PepSliderComponent\n * @implements {OnDestroy}\n */\n@Component({\n selector: 'pep-slider',\n templateUrl: './slider.component.html',\n styleUrls: ['./slider.component.scss'],\n})\nexport class PepSliderComponent implements OnInit {\n @Input() label = '';\n @Input() disabled = false;\n @Input() hint = '';\n\n private _background = '';\n @Input()\n set background(background: string) {\n if (!background) {\n background = '';\n }\n\n this._background = background;\n this.setBackground();\n }\n get background(): string {\n return this._background;\n }\n\n @Input() step = 1;\n @Input() minValue = NaN;\n @Input() maxValue = NaN;\n\n private _value = NaN;\n @Input()\n set value(value: number) {\n this._value = value;\n }\n get value(): number {\n return this._value;\n }\n\n @Output()\n valueChange: EventEmitter<number> = new EventEmitter<number>();\n\n @Output()\n inputChange: EventEmitter<number> = new EventEmitter<number>();\n\n xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\n sliderWrapper: any = null;\n\n constructor(private renderer: Renderer2, private element: ElementRef, private pepLayoutService: PepLayoutService) { }\n\n private setBackground(): void {\n // Get the wrapper for set the background.\n if (!this.sliderWrapper) {\n this.sliderWrapper = this.element.nativeElement.querySelector('.mat-slider-wrapper');\n }\n\n if (this.sliderWrapper) {\n this.renderer.setStyle(this.sliderWrapper, 'background', this.background?.length > 0 ? this.background : '');\n\n if (this.background?.length > 0) {\n this.renderer.removeClass(this.sliderWrapper, 'background-color-dimmed');\n } else {\n this.renderer.addClass(this.sliderWrapper, 'background-color-dimmed');\n }\n }\n }\n\n ngOnInit(): void {\n this.xAlignment = this.pepLayoutService.isRtl() ? 'right' : 'left';\n this.setBackground();\n }\n\n onValueChange(event) {\n this.valueChange.emit(event.value);\n }\n\n onInputChange(event) {\n this.inputChange.emit(event.value);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatCommonModule } from '@angular/material/core';\nimport { MatSliderModule } from '@angular/material/slider';\nimport { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\n\nimport { PepSliderComponent } from './slider.component';\n\n@NgModule({\n imports: [\n CommonModule,\n // Material modules\n MatCommonModule,\n MatSliderModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepFieldTitleModule,\n ],\n exports: [PepSliderComponent],\n declarations: [PepSliderComponent],\n})\nexport class PepSliderModule { }\n","/*\n * Public API Surface of ngx-lib/slider\n */\nexport * from './slider.module';\nexport * from './slider.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;AAaA;;;;;;;;MAaa,kBAAkB;IAyC3B,YAAoB,QAAmB,EAAU,OAAmB,EAAU,gBAAkC;QAA5F,aAAQ,GAAR,QAAQ,CAAW;QAAU,YAAO,GAAP,OAAO,CAAY;QAAU,qBAAgB,GAAhB,gBAAgB,CAAkB;QAxCvG,UAAK,GAAG,EAAE,CAAC;QACX,aAAQ,GAAG,KAAK,CAAC;QACjB,SAAI,GAAG,EAAE,CAAC;QAEX,gBAAW,GAAG,EAAE,CAAC;QAchB,SAAI,GAAG,CAAC,CAAC;QACT,aAAQ,GAAG,GAAG,CAAC;QACf,aAAQ,GAAG,GAAG,CAAC;QAEhB,WAAM,GAAG,GAAG,CAAC;QAUrB,gBAAW,GAAyB,IAAI,YAAY,EAAU,CAAC;QAG/D,gBAAW,GAAyB,IAAI,YAAY,EAAU,CAAC;QAE/D,eAAU,GAA2B,4BAA4B,CAAC;QAClE,kBAAa,GAAQ,IAAI,CAAC;KAE2F;IAnCrH,IACI,UAAU,CAAC,UAAkB;QAC7B,IAAI,CAAC,UAAU,EAAE;YACb,UAAU,GAAG,EAAE,CAAC;SACnB;QAED,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,aAAa,EAAE,CAAC;KACxB;IACD,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,WAAW,CAAC;KAC3B;IAOD,IACI,KAAK,CAAC,KAAa;QACnB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;KACvB;IACD,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,MAAM,CAAC;KACtB;IAaO,aAAa;;;QAEjB,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE;YACrB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,aAAa,CAAC,qBAAqB,CAAC,CAAC;SACxF;QAED,IAAI,IAAI,CAAC,aAAa,EAAE;YACpB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,EAAE,CAAA,MAAA,IAAI,CAAC,UAAU,0CAAE,MAAM,IAAG,CAAC,GAAG,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC,CAAC;YAE7G,IAAI,CAAA,MAAA,IAAI,CAAC,UAAU,0CAAE,MAAM,IAAG,CAAC,EAAE;gBAC7B,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,EAAE,yBAAyB,CAAC,CAAC;aAC5E;iBAAM;gBACH,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,yBAAyB,CAAC,CAAC;aACzE;SACJ;KACJ;IAED,QAAQ;QACJ,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,GAAG,OAAO,GAAG,MAAM,CAAC;QACnE,IAAI,CAAC,aAAa,EAAE,CAAC;KACxB;IAED,aAAa,CAAC,KAAK;QACf,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;KACtC;IAED,aAAa,CAAC,KAAK;QACf,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;KACtC;;;YA5EJ,SAAS,SAAC;gBACP,QAAQ,EAAE,YAAY;gBACtB,
|
|
1
|
+
{"version":3,"file":"pepperi-addons-ngx-lib-slider.js","sources":["../../../projects/ngx-lib/slider/slider.component.ts","../../../projects/ngx-lib/slider/slider.module.ts","../../../projects/ngx-lib/slider/public-api.ts","../../../projects/ngx-lib/slider/pepperi-addons-ngx-lib-slider.ts"],"sourcesContent":["import {\r\n Component,\r\n OnDestroy,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n Renderer2,\r\n ElementRef,\r\n OnInit,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { PepLayoutService, DEFAULT_HORIZONTAL_ALIGNMENT, PepHorizontalAlignment } from '@pepperi-addons/ngx-lib';\r\n\r\n/**\r\n * This is a slider component that support pepperi theme\r\n * style & state & sizes\r\n *\r\n * @export\r\n * @class PepSliderComponent\r\n * @implements {OnDestroy}\r\n */\r\n@Component({\r\n selector: 'pep-slider',\r\n templateUrl: './slider.component.html',\r\n styleUrls: ['./slider.component.scss', './slider.component.theme.scss'],\r\n})\r\nexport class PepSliderComponent implements OnInit {\r\n @Input() label = '';\r\n @Input() disabled = false;\r\n @Input() hint = '';\r\n\r\n private _background = '';\r\n @Input()\r\n set background(background: string) {\r\n if (!background) {\r\n background = '';\r\n }\r\n\r\n this._background = background;\r\n this.setBackground();\r\n }\r\n get background(): string {\r\n return this._background;\r\n }\r\n\r\n @Input() step = 1;\r\n @Input() minValue = NaN;\r\n @Input() maxValue = NaN;\r\n\r\n private _value = NaN;\r\n @Input()\r\n set value(value: number) {\r\n this._value = value;\r\n }\r\n get value(): number {\r\n return this._value;\r\n }\r\n\r\n @Output()\r\n valueChange: EventEmitter<number> = new EventEmitter<number>();\r\n\r\n @Output()\r\n inputChange: EventEmitter<number> = new EventEmitter<number>();\r\n\r\n xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\r\n sliderWrapper: any = null;\r\n\r\n constructor(private renderer: Renderer2, private element: ElementRef, private pepLayoutService: PepLayoutService) { }\r\n\r\n private setBackground(): void {\r\n // Get the wrapper for set the background.\r\n if (!this.sliderWrapper) {\r\n this.sliderWrapper = this.element.nativeElement.querySelector('.mat-slider-wrapper');\r\n }\r\n\r\n if (this.sliderWrapper) {\r\n this.renderer.setStyle(this.sliderWrapper, 'background', this.background?.length > 0 ? this.background : '');\r\n\r\n if (this.background?.length > 0) {\r\n this.renderer.removeClass(this.sliderWrapper, 'background-color-dimmed');\r\n } else {\r\n this.renderer.addClass(this.sliderWrapper, 'background-color-dimmed');\r\n }\r\n }\r\n }\r\n\r\n ngOnInit(): void {\r\n this.xAlignment = this.pepLayoutService.isRtl() ? 'right' : 'left';\r\n this.setBackground();\r\n }\r\n\r\n onValueChange(event) {\r\n this.valueChange.emit(event.value);\r\n }\r\n\r\n onInputChange(event) {\r\n this.inputChange.emit(event.value);\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { MatCommonModule } from '@angular/material/core';\r\nimport { MatSliderModule } from '@angular/material/slider';\r\nimport { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';\r\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\r\n\r\nimport { PepSliderComponent } from './slider.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n // Material modules\r\n MatCommonModule,\r\n MatSliderModule,\r\n // ngx-lib modules\r\n PepNgxLibModule,\r\n PepFieldTitleModule,\r\n ],\r\n exports: [PepSliderComponent],\r\n declarations: [PepSliderComponent],\r\n})\r\nexport class PepSliderModule { }\r\n","/*\r\n * Public API Surface of ngx-lib/slider\r\n */\r\nexport * from './slider.module';\r\nexport * from './slider.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|