@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
|
@@ -105,6 +105,7 @@
|
|
|
105
105
|
this.form = null;
|
|
106
106
|
this.uid = '';
|
|
107
107
|
this.showTitle = true;
|
|
108
|
+
this.renderTitle = true;
|
|
108
109
|
this._layoutType = 'form';
|
|
109
110
|
this.isActive = false;
|
|
110
111
|
this.sizeLimitMB = 5;
|
|
@@ -159,6 +160,9 @@
|
|
|
159
160
|
this.setFieldHeight();
|
|
160
161
|
this.setDefaultForm();
|
|
161
162
|
this.renderer.addClass(this.element.nativeElement, i2.PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME);
|
|
163
|
+
if (!this.renderTitle) {
|
|
164
|
+
this.renderer.addClass(this.element.nativeElement, i2.PepCustomizationService.STAND_ALONE_FIELD_NO_SPACING_CLASS_NAME);
|
|
165
|
+
}
|
|
162
166
|
}
|
|
163
167
|
};
|
|
164
168
|
PepImageComponent.prototype.setFieldHeight = function () {
|
|
@@ -265,9 +269,9 @@
|
|
|
265
269
|
PepImageComponent.decorators = [
|
|
266
270
|
{ type: i0.Component, args: [{
|
|
267
271
|
selector: 'pep-image',
|
|
268
|
-
template: "<ng-container [formGroup]=\"form\">\n <ng-container>\n <ng-template #readonlyTemplate>\n <div class=\"img-wrapper\" [ngClass]=\"{\n 'left-alignment': xAlignment == 'left',\n 'right-alignment': xAlignment == 'right',\n 'center-alignment': xAlignment == 'center'\n }\">\n <img [id]=\"key\" [style.max-height]=\"fieldHeight\" class=\"pep-report-file\" [alt]=\"label\" [src]=\"src\"\n (click)=\"itemImageClick($event)\" (error)=\"errorHandler($event)\" (load)=\"onImageLoad($event)\" />\n </div>\n </ng-template>\n\n <ng-container *ngIf=\"layoutType === 'form'\">\n <pep-field-title [label]=\"label\" [mandatory]=\"mandatory\" [disabled]=\"disabled\"
|
|
272
|
+
template: "<ng-container [formGroup]=\"form\">\r\n <ng-container>\r\n <ng-template #readonlyTemplate>\r\n <div class=\"img-wrapper\" [ngClass]=\"{\r\n 'left-alignment': xAlignment == 'left',\r\n 'right-alignment': xAlignment == 'right',\r\n 'center-alignment': xAlignment == 'center'\r\n }\">\r\n <img [id]=\"key\" [style.max-height]=\"fieldHeight\" class=\"pep-report-file\" [alt]=\"label\" [src]=\"src\"\r\n (click)=\"itemImageClick($event)\" (error)=\"errorHandler($event)\" (load)=\"onImageLoad($event)\" />\r\n </div>\r\n </ng-template>\r\n\r\n <ng-container *ngIf=\"layoutType === 'form'\">\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 *ngIf=\"disabled || readonly; then disabledTemplate; else editableTemplate\"></ng-container>\r\n <ng-template #disabledTemplate>\r\n <div class=\"pep-file body-sm\" [style.height]=\"fieldHeight\" [ngClass]=\"{'one-row': rowSpan == 1}\">\r\n <ng-container *ngTemplateOutlet=\"readonlyTemplate\"></ng-container>\r\n </div>\r\n </ng-template>\r\n <ng-template #editableTemplate>\r\n <div class=\"pep-file-container image-container\" [ngClass]=\"{ 'one-row': rowSpan == 1}\">\r\n <pep-files-uploader [id]=\"key\" [key]=\"key\" [fieldHeight]=\"fieldHeight\" [layoutType]=\"layoutType\"\r\n [standAlone]=\"standAlone\" [src]=\"srcLarge || src\" [label]=\"label\" [mandatory]=\"mandatory\"\r\n [disabled]=\"disabled\" [xAlignment]=\"xAlignment\" [rowSpan]=\"rowSpan\" [controlType]=\"controlType\"\r\n [form]=\"form\" [acceptedExtensions]=\"acceptImagesType\" (fileChange)=\"onFileChanged($event)\"\r\n (elementClick)=\"onFileClicked($event)\" [sizeLimitMB]=\"sizeLimitMB\">\r\n </pep-files-uploader>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"layoutType === 'card'\">\r\n <ng-container *ngTemplateOutlet=\"readonlyTemplate\"></ng-container>\r\n <!-- <div class=\"img-wrapper\"\r\n [ngClass]=\"{\r\n 'left-alignment': xAlignment == 'left',\r\n 'right-alignment': xAlignment == 'right',\r\n 'center-alignment': xAlignment == 'center'\r\n }\">\r\n <img [id]=\"key\" [style.max-height]=\"fieldHeight\" class=\"pep-report-file\" [alt]=\"label\" [src]=\"src\"\r\n (click)=\"itemImageClick($event)\" (error)=\"errorHandler($event)\" />\r\n </div> -->\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"layoutType === 'table'\">\r\n <ng-container *ngTemplateOutlet=\"readonlyTemplate\"></ng-container>\r\n <!-- <div class=\"img-wrapper\" [ngClass]=\"{\r\n 'left-alignment': xAlignment == 'left',\r\n 'right-alignment': xAlignment == 'right',\r\n 'center-alignment': xAlignment == 'center'\r\n }\">\r\n <img [id]=\"key\" [style.max-height]=\"fieldHeight\" class=\"pep-report-file pep-report-img\"\r\n [ngClass]=\"['text-align-' + xAlignment]\" [alt]=\"label\" [src]=\"src\" (click)=\"itemImageClick($event)\"\r\n (error)=\"errorHandler($event)\" (load)=\"onImageLoad($event)\" />\r\n </div> -->\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- Menu -->\r\n <ng-container *ngIf=\"menuField\">\r\n <button [id]=\"key\" (click)=\"onMenuClick($event)\" class=\"floating-field pep-button icon-button weak invert\"\r\n [ngClass]=\"{\r\n bottom: menuField?.Layout?.YAlignment == '2',\r\n top: menuField?.Layout?.YAlignment == '1',\r\n left: menuField?.Layout?.XAlignment == '1',\r\n right: menuField?.Layout?.XAlignment == '2'\r\n }\">\r\n <mat-icon>\r\n <pep-icon name=\"system_menu\"></pep-icon>\r\n </mat-icon>\r\n </button>\r\n </ng-container>\r\n\r\n <!-- Campaign -->\r\n <ng-container *ngIf=\"hasCampaignField && hasCampaignField?.FormattedValue\">\r\n <span [id]=\"key\" class=\"campaign floating-field\" title=\"{{ hasCampaignField?.FormattedValue }}\" [ngClass]=\"{\r\n bottom: hasCampaignField?.Layout?.YAlignment == '2',\r\n top: hasCampaignField?.Layout?.YAlignment == '1',\r\n left: hasCampaignField?.Layout?.XAlignment == '1',\r\n right: hasCampaignField?.Layout?.XAlignment == '2'\r\n }\">\r\n <mat-icon class=\"has-active-campaign\">\r\n <pep-icon name=\"system_bolt\"></pep-icon>\r\n </mat-icon>\r\n </span>\r\n </ng-container>\r\n\r\n <!-- Indicators -->\r\n <ng-container *ngIf=\"indicatorsField && indicatorsField?.FormattedValue != ''\">\r\n <span [id]=\"key\" class=\"indicators-container floating-field\" [ngClass]=\"{\r\n bottom: indicatorsField?.Layout?.YAlignment == '2',\r\n top: indicatorsField?.Layout?.YAlignment == '1',\r\n left: indicatorsField?.Layout?.XAlignment == '1',\r\n right: indicatorsField?.Layout?.XAlignment == '2'\r\n }\">\r\n <mat-icon>\r\n <ng-container *ngFor=\"let value of indicatorsField?.FormattedValue?.split(';')\">\r\n <pep-icon class=\"pull-left flip\" name=\"indicator_dot_placeholder\" [fill]=\"value\"></pep-icon>\r\n </ng-container>\r\n <ng-container *ngIf=\"indicatorsField?.FormattedValue?.split(';').length < 4\">\r\n <pep-icon class=\"pull-left flip\" name=\"indicator_dot_placeholder\"></pep-icon>\r\n </ng-container>\r\n </mat-icon>\r\n </span>\r\n </ng-container>\r\n</ng-container>",
|
|
269
273
|
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
|
270
|
-
styles: [":host{width:100%;height:inherit;display:grid}:host>*{align-self:center}.img-wrapper{display:flex;align-items:center;height:100%;max-width:100%}.img-wrapper.left-alignment{justify-content:flex-start}.img-wrapper.center-alignment{justify-content:center}.img-wrapper.right-alignment{justify-content:flex-end}.img-wrapper img{max-width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.pep-file-container,.pepperi-file-container{height:100%}.pep-file-container .img-wrapper,.pepperi-file-container .img-wrapper{height:calc(100% - 1.5rem)}.pep-file-container img,.pepperi-file-container img{cursor:pointer}.indicators-container{padding:0!important}.indicators-container mat-icon{height:100%;width:100%;padding:.4rem}.indicators-container mat-icon pep-icon{height:.75rem!important;width:.75rem!important;margin:.05rem}.floating-field{width:2.5rem;height:2.5rem;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem);padding:.5rem;cursor:pointer;position:absolute!important}.top{top:0}.bottom{bottom:0}.left{left:0}.right{right:0}"]
|
|
274
|
+
styles: [":host{width:100%;height:inherit;display:grid}:host>*{align-self:center}.img-wrapper{display:flex;align-items:center;height:100%;max-width:100%}.img-wrapper.left-alignment{justify-content:flex-start}.img-wrapper.center-alignment{justify-content:center}.img-wrapper.right-alignment{justify-content:flex-end}.img-wrapper img{max-width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.pep-file-container,.pepperi-file-container{height:100%}.pep-file-container .img-wrapper,.pepperi-file-container .img-wrapper{height:calc(100% - 1.5rem)}.pep-file-container img,.pepperi-file-container img{cursor:pointer}.indicators-container{padding:0!important}.indicators-container mat-icon{height:100%;width:100%;padding:.4rem}.indicators-container mat-icon pep-icon{height:.75rem!important;width:.75rem!important;margin:.05rem}.floating-field{width:2.5rem;height:2.5rem;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem);padding:.5rem;cursor:pointer;position:absolute!important}.top{top:0}.bottom{bottom:0}.left{left:0}.right{right:0}", ".indicators-container .circle{box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.08);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.08);border:1px solid hsl(0,0%,calc(10% + 20%));border:1px solid hsl(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),calc(var(--pep-color-system-primary-l, 10%) + 20%))}.floating-field.has-active-campaign .svg-icon{fill:#e60000;fill:hsl(var(--pep-color-system-caution-h,360),var(--pep-color-system-caution-s,100%),var(--pep-color-system-caution-l,45%))}.floating-field.indicators-container{background:hsla(0,0%,100%,.5);background:hsla(var(--pep-color-system-primary-invert-h,255),var(--pep-color-system-primary-invert-s,100%),var(--pep-color-system-primary-invert-l,100%),.5)}.floating-field.indicators-container:hover{cursor:inherit}.image-container .mat-form-field-disabled .mat-form-field-flex{background:transparent!important}"]
|
|
271
275
|
},] }
|
|
272
276
|
];
|
|
273
277
|
PepImageComponent.ctorParameters = function () { return [
|
|
@@ -296,6 +300,7 @@
|
|
|
296
300
|
form: [{ type: i0.Input }],
|
|
297
301
|
uid: [{ type: i0.Input }],
|
|
298
302
|
showTitle: [{ type: i0.Input }],
|
|
303
|
+
renderTitle: [{ type: i0.Input }],
|
|
299
304
|
layoutType: [{ type: i0.Input }],
|
|
300
305
|
isActive: [{ type: i0.Input }],
|
|
301
306
|
sizeLimitMB: [{ type: i0.Input }],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pepperi-addons-ngx-lib-image.umd.js","sources":["../../../projects/ngx-lib/image/image.service.ts","../../../projects/ngx-lib/image/image.component.ts","../../../projects/ngx-lib/image/image.module.ts","../../../projects/ngx-lib/image/public-api.ts","../../../projects/ngx-lib/image/pepperi-addons-ngx-lib-image.ts"],"sourcesContent":["import { Injectable, TemplateRef } from '@angular/core';\r\nimport {\r\n PepFileService,\r\n PepCustomizationService,\r\n IPepOption,\r\n} from '@pepperi-addons/ngx-lib';\r\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\r\nimport { PepImagesFilmstripComponent } from '@pepperi-addons/ngx-lib/images-filmstrip';\r\nimport { IPepFileChangeEvent } from '@pepperi-addons/ngx-lib/files-uploader';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PepImageService {\r\n constructor(\r\n private dialogService: PepDialogService,\r\n private customizationService: PepCustomizationService,\r\n private fileService: PepFileService,\r\n ) { }\r\n\r\n openImageDialog(imageSrc: string, options: IPepOption[], title = ''): void {\r\n const arr = [imageSrc].concat(\r\n (options || []).map((opt) => opt.value)\r\n );\r\n const imagesValue = arr.join(';');\r\n\r\n // Show image in modal.\r\n const config = this.dialogService.getDialogConfig({}, 'inline');\r\n config.maxWidth = '75vw';\r\n config.height = '95vh';\r\n\r\n this.dialogService.openDialog(\r\n PepImagesFilmstripComponent,\r\n {\r\n currIndex: 0,\r\n key: new Date().getDate(),\r\n value: imagesValue,\r\n label: title,\r\n uid: '',\r\n showThumbnails: arr.length > 1,\r\n },\r\n config\r\n );\r\n }\r\n\r\n openFromURI(event: IPepFileChangeEvent) {\r\n if (event) {\r\n const fileStrArr = event.fileStr.split(';');\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 }\r\n }\r\n}\r\n","import {\n Component,\n OnInit,\n OnChanges,\n Input,\n Output,\n EventEmitter,\n ChangeDetectorRef,\n ChangeDetectionStrategy,\n ElementRef,\n OnDestroy,\n Renderer2,\n Optional,\n} from '@angular/core';\nimport { FormGroup } from '@angular/forms';\nimport { TranslateService } from '@ngx-translate/core';\nimport {\n PepFileService,\n PepLayoutType,\n PepCustomizationService,\n PepHorizontalAlignment,\n DEFAULT_HORIZONTAL_ALIGNMENT,\n IPepFieldClickEvent,\n IPepOption,\n PepImageField,\n} from '@pepperi-addons/ngx-lib';\n\nimport { pepIconNoImage2 } from '@pepperi-addons/ngx-lib/icon';\nimport { PepImageService } from './image.service';\nimport { IPepFileChangeEvent } from '@pepperi-addons/ngx-lib/files-uploader';\n\n@Component({\n selector: 'pep-image',\n templateUrl: './image.component.html',\n styleUrls: ['./image.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class PepImageComponent implements OnChanges, OnInit, OnDestroy {\n public static MENU_CLICKED = '[MenuClicked]';\n\n @Input() key = '';\n @Input() srcLarge = '';\n @Input() src = '';\n @Input() options: IPepOption[] = [];\n @Input() label = '';\n // @Input() type = 'image';\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() indicatorsField: any = null;\n @Input() menuField: any = null;\n @Input() hasCampaignField: any = null;\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 = 'image';\n\n @Input() form: FormGroup = null;\n @Input() uid = '';\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 @Input() sizeLimitMB = 5;\n @Input() acceptImagesType = 'bmp,jpg,jpeg,png,gif'; // \"image/bmp, image/jpg, image/jpeg, image/png, image/tif, image/tiff\";\n\n @Output()\n fileChange: EventEmitter<any> = new EventEmitter<any>();\n\n @Output()\n elementClick: EventEmitter<IPepFieldClickEvent> = new EventEmitter<IPepFieldClickEvent>();\n\n fieldHeight = '';\n standAlone = false;\n dataURI = null;\n\n constructor(\n private imageService: PepImageService,\n private customizationService: PepCustomizationService,\n private fileService: PepFileService,\n private renderer: Renderer2,\n private element: ElementRef,\n private translate: TranslateService\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 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 PepImageField({\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 ngOnChanges(changes: any): void {\n if (this.standAlone) {\n this.setDefaultForm();\n }\n\n if (changes.src?.currentValue?.length > 0) {\n // Empty dataURI if there is change in the src.\n this.dataURI = null;\n }\n }\n\n ngOnDestroy(): void {\n //\n }\n\n errorHandler(event: any): void {\n event.target.src = this.fileService.getSvgAsImageSrc(\n pepIconNoImage2.data\n );\n event.target.title = this.translate.instant('IMAGE.NO_IMAGE');\n }\n\n onImageLoad(event: any): void {\n event.target.style.visibility = 'visible';\n event.target.title =\n event.target.title.length === 0\n ? this.translate.instant('IMAGE.CLICK_TO_ENLARGE')\n : event.target.title;\n }\n\n onMenuClick(event: any): void {\n this.elementClick.emit({\n key: this.key,\n value: PepImageComponent.MENU_CLICKED,\n controlType: this.controlType,\n eventWhich: event.which,\n });\n }\n\n onFileChanged(fileData: IPepFileChangeEvent): void {\n this.dataURI = fileData;\n this.src = this.srcLarge =\n this.standAlone && this.dataURI ? this.dataURI.fileStr : '';\n\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 objectIdIsNotEmpty(): boolean {\n return this.uid?.length > 0 && this.uid !== '0';\n }\n\n onFileClicked(event: IPepFieldClickEvent): void {\n let hasParentImage = true;\n if (\n // this.objectIdIsNotEmpty() &&\n this.src &&\n this.src.indexOf('no-image') > -1\n ) {\n hasParentImage = false;\n }\n\n this.elementClick.emit(event);\n }\n\n itemImageClick(event: any): void {\n let hasParentImage = true;\n const elemTarget = event.target || event.srcElement;\n const nextElement = elemTarget.nextElementSibling || null;\n const imageSRC = elemTarget.src || null;\n const nextElementSRC =\n nextElement && nextElement.src ? nextElement.src : null;\n\n if (\n (imageSRC && imageSRC.indexOf('no-image') > -1) ||\n (nextElementSRC && nextElementSRC.src.indexOf('no-image') > -1)\n ) {\n hasParentImage = false;\n }\n\n // this.openImageModal(hasParentImage);\n // if (this.dataURI) {\n // this.imageService.openFromURI(this.dataURI);\n // } else {\n // this.imageService.openImageDialog(this.srcLarge || this.src, this.options, this.label);\n // }\n\n this.elementClick.emit({\n key: this.key,\n controlType: this.controlType,\n eventWhich: event.which,\n otherData: {\n imageSrc: this.srcLarge || this.src,\n options: this.options,\n title: this.label\n }\n });\n }\n\n // openImageModal(hasParentImage: boolean): void {\n // if (this.dataURI) {\n // const fileStrArr = this.dataURI.fileStr.split(';');\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 // } else {\n // const arr = [this.srcLarge || this.src].concat(\n // (this.options || []).map((opt) => opt.value)\n // );\n // const imagesValue = arr.join(';');\n\n // // Show image in modal.\n // const config = this.dialogService.getDialogConfig({}, 'inline');\n // config.maxWidth = '75vw';\n // config.height = '95vh';\n\n // this.dialogService.openDialog(\n // PepImagesFilmstripComponent,\n // {\n // currIndex: 0,\n // key: this.key,\n // value: imagesValue,\n // label: this.label,\n // uid: this.uid,\n // showThumbnails: arr.length > 1,\n // },\n // config\n // );\n // }\n // }\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 { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconSystemMenu,\n pepIconSystemBolt,\n pepIconIndicatorDotPlaceholder,\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 {\n PepImagesFilmstripModule,\n PepImagesFilmstripComponent,\n} from '@pepperi-addons/ngx-lib/images-filmstrip';\n\nimport { PepImageComponent } from './image.component';\nimport { PepImageService } from './image.service';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n // Material modules,\n MatCommonModule,\n MatFormFieldModule,\n MatIconModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n PepFieldTitleModule,\n PepImagesFilmstripModule,\n PepFilesUploaderModule,\n ],\n exports: [PepImageComponent],\n declarations: [PepImageComponent],\n entryComponents: [PepImagesFilmstripComponent],\n providers: [PepImageService]\n})\nexport class PepImageModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([\n pepIconSystemMenu,\n pepIconSystemBolt,\n pepIconIndicatorDotPlaceholder,\n ]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/image\n */\nexport * from './image.module';\nexport * from './image.component';\nexport * from './image.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["PepImagesFilmstripComponent","Injectable","PepDialogService","PepCustomizationService","PepFileService","DEFAULT_HORIZONTAL_ALIGNMENT","EventEmitter","PepImageField","pepIconNoImage2","Component","ChangeDetectionStrategy","Renderer2","ElementRef","TranslateService","Input","Output","pepIconSystemMenu","pepIconSystemBolt","pepIconIndicatorDotPlaceholder","NgModule","CommonModule","ReactiveFormsModule","MatCommonModule","MatFormFieldModule","MatIconModule","PepNgxLibModule","PepIconModule","PepFieldTitleModule","PepImagesFilmstripModule","PepFilesUploaderModule","PepIconRegistry"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pepperi-addons-ngx-lib-image.umd.js","sources":["../../../projects/ngx-lib/image/image.service.ts","../../../projects/ngx-lib/image/image.component.ts","../../../projects/ngx-lib/image/image.module.ts","../../../projects/ngx-lib/image/public-api.ts","../../../projects/ngx-lib/image/pepperi-addons-ngx-lib-image.ts"],"sourcesContent":["import { Injectable, TemplateRef } from '@angular/core';\r\nimport {\r\n PepFileService,\r\n PepCustomizationService,\r\n IPepOption,\r\n} from '@pepperi-addons/ngx-lib';\r\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\r\nimport { PepImagesFilmstripComponent } from '@pepperi-addons/ngx-lib/images-filmstrip';\r\nimport { IPepFileChangeEvent } from '@pepperi-addons/ngx-lib/files-uploader';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PepImageService {\r\n constructor(\r\n private dialogService: PepDialogService,\r\n private customizationService: PepCustomizationService,\r\n private fileService: PepFileService,\r\n ) { }\r\n\r\n openImageDialog(imageSrc: string, options: IPepOption[], title = ''): void {\r\n const arr = [imageSrc].concat(\r\n (options || []).map((opt) => opt.value)\r\n );\r\n const imagesValue = arr.join(';');\r\n\r\n // Show image in modal.\r\n const config = this.dialogService.getDialogConfig({}, 'inline');\r\n config.maxWidth = '75vw';\r\n config.height = '95vh';\r\n\r\n this.dialogService.openDialog(\r\n PepImagesFilmstripComponent,\r\n {\r\n currIndex: 0,\r\n key: new Date().getDate(),\r\n value: imagesValue,\r\n label: title,\r\n uid: '',\r\n showThumbnails: arr.length > 1,\r\n },\r\n config\r\n );\r\n }\r\n\r\n openFromURI(event: IPepFileChangeEvent) {\r\n if (event) {\r\n const fileStrArr = event.fileStr.split(';');\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 }\r\n }\r\n}\r\n","import {\r\n Component,\r\n OnInit,\r\n OnChanges,\r\n Input,\r\n Output,\r\n EventEmitter,\r\n ChangeDetectorRef,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n OnDestroy,\r\n Renderer2,\r\n Optional,\r\n} from '@angular/core';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport {\r\n PepFileService,\r\n PepLayoutType,\r\n PepCustomizationService,\r\n PepHorizontalAlignment,\r\n DEFAULT_HORIZONTAL_ALIGNMENT,\r\n IPepFieldClickEvent,\r\n IPepOption,\r\n PepImageField,\r\n} from '@pepperi-addons/ngx-lib';\r\n\r\nimport { pepIconNoImage2 } from '@pepperi-addons/ngx-lib/icon';\r\nimport { PepImageService } from './image.service';\r\nimport { IPepFileChangeEvent } from '@pepperi-addons/ngx-lib/files-uploader';\r\n\r\n@Component({\r\n selector: 'pep-image',\r\n templateUrl: './image.component.html',\r\n styleUrls: ['./image.component.scss', './image.component.theme.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n})\r\nexport class PepImageComponent implements OnChanges, OnInit, OnDestroy {\r\n public static MENU_CLICKED = '[MenuClicked]';\r\n\r\n @Input() key = '';\r\n @Input() srcLarge = '';\r\n @Input() src = '';\r\n @Input() options: IPepOption[] = [];\r\n @Input() label = '';\r\n // @Input() type = 'image';\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() indicatorsField: any = null;\r\n @Input() menuField: any = null;\r\n @Input() hasCampaignField: any = null;\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 = 'image';\r\n\r\n @Input() form: FormGroup = null;\r\n @Input() uid = '';\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 @Input() sizeLimitMB = 5;\r\n @Input() acceptImagesType = 'bmp,jpg,jpeg,png,gif'; // \"image/bmp, image/jpg, image/jpeg, image/png, image/tif, image/tiff\";\r\n\r\n @Output()\r\n fileChange: EventEmitter<any> = new EventEmitter<any>();\r\n\r\n @Output()\r\n elementClick: EventEmitter<IPepFieldClickEvent> = new EventEmitter<IPepFieldClickEvent>();\r\n\r\n fieldHeight = '';\r\n standAlone = false;\r\n dataURI = null;\r\n\r\n constructor(\r\n private imageService: PepImageService,\r\n private customizationService: PepCustomizationService,\r\n private fileService: PepFileService,\r\n private renderer: Renderer2,\r\n private element: ElementRef,\r\n private translate: TranslateService\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 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 PepImageField({\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 ngOnChanges(changes: any): void {\r\n if (this.standAlone) {\r\n this.setDefaultForm();\r\n }\r\n\r\n if (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 }\r\n\r\n ngOnDestroy(): void {\r\n //\r\n }\r\n\r\n errorHandler(event: any): void {\r\n event.target.src = this.fileService.getSvgAsImageSrc(\r\n pepIconNoImage2.data\r\n );\r\n event.target.title = this.translate.instant('IMAGE.NO_IMAGE');\r\n }\r\n\r\n onImageLoad(event: any): void {\r\n event.target.style.visibility = 'visible';\r\n event.target.title =\r\n event.target.title.length === 0\r\n ? this.translate.instant('IMAGE.CLICK_TO_ENLARGE')\r\n : event.target.title;\r\n }\r\n\r\n onMenuClick(event: any): void {\r\n this.elementClick.emit({\r\n key: this.key,\r\n value: PepImageComponent.MENU_CLICKED,\r\n controlType: this.controlType,\r\n eventWhich: event.which,\r\n });\r\n }\r\n\r\n onFileChanged(fileData: IPepFileChangeEvent): void {\r\n this.dataURI = fileData;\r\n this.src = this.srcLarge =\r\n this.standAlone && this.dataURI ? this.dataURI.fileStr : '';\r\n\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 objectIdIsNotEmpty(): boolean {\r\n return this.uid?.length > 0 && this.uid !== '0';\r\n }\r\n\r\n onFileClicked(event: IPepFieldClickEvent): void {\r\n let hasParentImage = true;\r\n if (\r\n // this.objectIdIsNotEmpty() &&\r\n this.src &&\r\n this.src.indexOf('no-image') > -1\r\n ) {\r\n hasParentImage = false;\r\n }\r\n\r\n this.elementClick.emit(event);\r\n }\r\n\r\n itemImageClick(event: any): void {\r\n let hasParentImage = true;\r\n const elemTarget = event.target || event.srcElement;\r\n const nextElement = elemTarget.nextElementSibling || null;\r\n const imageSRC = elemTarget.src || null;\r\n const nextElementSRC =\r\n nextElement && nextElement.src ? nextElement.src : null;\r\n\r\n if (\r\n (imageSRC && imageSRC.indexOf('no-image') > -1) ||\r\n (nextElementSRC && nextElementSRC.src.indexOf('no-image') > -1)\r\n ) {\r\n hasParentImage = false;\r\n }\r\n\r\n // this.openImageModal(hasParentImage);\r\n // if (this.dataURI) {\r\n // this.imageService.openFromURI(this.dataURI);\r\n // } else {\r\n // this.imageService.openImageDialog(this.srcLarge || this.src, this.options, this.label);\r\n // }\r\n\r\n this.elementClick.emit({\r\n key: this.key,\r\n controlType: this.controlType,\r\n eventWhich: event.which,\r\n otherData: {\r\n imageSrc: this.srcLarge || this.src,\r\n options: this.options,\r\n title: this.label\r\n }\r\n });\r\n }\r\n\r\n // openImageModal(hasParentImage: boolean): void {\r\n // if (this.dataURI) {\r\n // const fileStrArr = this.dataURI.fileStr.split(';');\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 // } else {\r\n // const arr = [this.srcLarge || this.src].concat(\r\n // (this.options || []).map((opt) => opt.value)\r\n // );\r\n // const imagesValue = arr.join(';');\r\n\r\n // // Show image in modal.\r\n // const config = this.dialogService.getDialogConfig({}, 'inline');\r\n // config.maxWidth = '75vw';\r\n // config.height = '95vh';\r\n\r\n // this.dialogService.openDialog(\r\n // PepImagesFilmstripComponent,\r\n // {\r\n // currIndex: 0,\r\n // key: this.key,\r\n // value: imagesValue,\r\n // label: this.label,\r\n // uid: this.uid,\r\n // showThumbnails: arr.length > 1,\r\n // },\r\n // config\r\n // );\r\n // }\r\n // }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { MatCommonModule } from '@angular/material/core';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\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 pepIconSystemMenu,\r\n pepIconSystemBolt,\r\n pepIconIndicatorDotPlaceholder,\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 {\r\n PepImagesFilmstripModule,\r\n PepImagesFilmstripComponent,\r\n} from '@pepperi-addons/ngx-lib/images-filmstrip';\r\n\r\nimport { PepImageComponent } from './image.component';\r\nimport { PepImageService } from './image.service';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n // Material modules,\r\n MatCommonModule,\r\n MatFormFieldModule,\r\n MatIconModule,\r\n // ngx-lib modules\r\n PepNgxLibModule,\r\n PepIconModule,\r\n PepFieldTitleModule,\r\n PepImagesFilmstripModule,\r\n PepFilesUploaderModule,\r\n ],\r\n exports: [PepImageComponent],\r\n declarations: [PepImageComponent],\r\n entryComponents: [PepImagesFilmstripComponent],\r\n providers: [PepImageService]\r\n})\r\nexport class PepImageModule {\r\n constructor(private pepIconRegistry: PepIconRegistry) {\r\n this.pepIconRegistry.registerIcons([\r\n pepIconSystemMenu,\r\n pepIconSystemBolt,\r\n pepIconIndicatorDotPlaceholder,\r\n ]);\r\n }\r\n}\r\n","/*\r\n * Public API Surface of ngx-lib/image\r\n */\r\nexport * from './image.module';\r\nexport * from './image.component';\r\nexport * from './image.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["PepImagesFilmstripComponent","Injectable","PepDialogService","PepCustomizationService","PepFileService","DEFAULT_HORIZONTAL_ALIGNMENT","EventEmitter","PepImageField","pepIconNoImage2","Component","ChangeDetectionStrategy","Renderer2","ElementRef","TranslateService","Input","Output","pepIconSystemMenu","pepIconSystemBolt","pepIconIndicatorDotPlaceholder","NgModule","CommonModule","ReactiveFormsModule","MatCommonModule","MatFormFieldModule","MatIconModule","PepNgxLibModule","PepIconModule","PepFieldTitleModule","PepImagesFilmstripModule","PepFilesUploaderModule","PepIconRegistry"],"mappings":"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"}
|
|
@@ -63,6 +63,7 @@
|
|
|
63
63
|
this.form = null;
|
|
64
64
|
this.uid = '0';
|
|
65
65
|
this.showTitle = false;
|
|
66
|
+
this.renderTitle = true;
|
|
66
67
|
this._layoutType = 'form';
|
|
67
68
|
this.currIndex = 0;
|
|
68
69
|
this.showThumbnails = false;
|
|
@@ -150,6 +151,9 @@
|
|
|
150
151
|
this.setFieldHeight();
|
|
151
152
|
this.setDefaultForm();
|
|
152
153
|
this.renderer.addClass(this.element.nativeElement, ngxLib.PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME);
|
|
154
|
+
if (!this.renderTitle) {
|
|
155
|
+
this.renderer.addClass(this.element.nativeElement, ngxLib.PepCustomizationService.STAND_ALONE_FIELD_NO_SPACING_CLASS_NAME);
|
|
156
|
+
}
|
|
153
157
|
}
|
|
154
158
|
}
|
|
155
159
|
if (this.items === null) {
|
|
@@ -290,7 +294,7 @@
|
|
|
290
294
|
PepImagesFilmstripComponent.decorators = [
|
|
291
295
|
{ type: core.Component, args: [{
|
|
292
296
|
selector: 'pep-images-filmstrip',
|
|
293
|
-
template: "<ng-container *ngIf=\"inDialog; then galleryDialogTemplate; else regularTemplate\"></ng-container>\n<ng-template #regularTemplate>\n <ng-container [formGroup]=\"form\">\n <div class=\"images-filmstrip-container\">\n <pep-field-title [label]=\"label\" [xAlignment]=\"xAlignment\" [showTitle]=\"showTitle\">\n </pep-field-title>\n <div #galleryCont class=\"img-wrapper\" [ngClass]=\"isVertical ? 'vertical-gallery' : 'horizontal-gallery'\"\n [style.height]=\"fieldHeight\">\n <gallery id=\"{{key}}-{{uid}}-gallery\" (itemClick)=\"enlargeImage($event);\" [imageSize]=\"'contain'\"\n (indexChange)=\"indexChange($event)\" (error)=\"onError($event)\">\n </gallery>\n </div>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #galleryDialogTemplate>\n <div class=\"gallery-dialog\">\n <pep-dialog [title]=\"label\" [showFooter]=\"false\">\n <div pep-dialog-content #galleryDialogCont class=\"gallery-dialog-content\"\n [ngClass]=\"isVertical ? 'vertical-gallery' : 'horizontal-gallery'\">\n <gallery id=\"{{key}}-{{uid}}-dlgGallery\" [imageSize]=\"'contain'\" (indexChange)=\"indexChange($event)\"\n (error)=\"onError($event)\">\n </gallery>\n </div>\n </pep-dialog>\n </div>\n</ng-template>\n\n<!-- Add custom template to image items -->\n<ng-template #itemTemplate let-index=\"index\" let-type=\"type\" let-data=\"data\" let-currIndex=\"currIndex\">\n <ng-container *ngIf=\"index === currIndex\">\n <ngx-imageviewer [src]=\"data.src\">\n </ngx-imageviewer>\n </ng-container>\n</ng-template>",
|
|
297
|
+
template: "<ng-container *ngIf=\"inDialog; then galleryDialogTemplate; else regularTemplate\"></ng-container>\r\n<ng-template #regularTemplate>\r\n <ng-container [formGroup]=\"form\">\r\n <div class=\"images-filmstrip-container\">\r\n <pep-field-title *ngIf=\"renderTitle\" [label]=\"label\" [xAlignment]=\"xAlignment\" [showTitle]=\"showTitle\">\r\n </pep-field-title>\r\n <div #galleryCont class=\"img-wrapper\" [ngClass]=\"isVertical ? 'vertical-gallery' : 'horizontal-gallery'\"\r\n [style.height]=\"fieldHeight\">\r\n <gallery id=\"{{key}}-{{uid}}-gallery\" (itemClick)=\"enlargeImage($event);\" [imageSize]=\"'contain'\"\r\n (indexChange)=\"indexChange($event)\" (error)=\"onError($event)\">\r\n </gallery>\r\n </div>\r\n </div>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #galleryDialogTemplate>\r\n <div class=\"gallery-dialog\">\r\n <pep-dialog [title]=\"label\" [showFooter]=\"false\">\r\n <div pep-dialog-content #galleryDialogCont class=\"gallery-dialog-content\"\r\n [ngClass]=\"isVertical ? 'vertical-gallery' : 'horizontal-gallery'\">\r\n <gallery id=\"{{key}}-{{uid}}-dlgGallery\" [imageSize]=\"'contain'\" (indexChange)=\"indexChange($event)\"\r\n (error)=\"onError($event)\">\r\n </gallery>\r\n </div>\r\n </pep-dialog>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- Add custom template to image items -->\r\n<ng-template #itemTemplate let-index=\"index\" let-type=\"type\" let-data=\"data\" let-currIndex=\"currIndex\">\r\n <ng-container *ngIf=\"index === currIndex\">\r\n <ngx-imageviewer [src]=\"data.src\">\r\n </ngx-imageviewer>\r\n </ng-container>\r\n</ng-template>",
|
|
294
298
|
// animations: [slideInAnimation],
|
|
295
299
|
providers: [
|
|
296
300
|
{
|
|
@@ -300,7 +304,7 @@
|
|
|
300
304
|
deps: [core$1.TranslateService],
|
|
301
305
|
},
|
|
302
306
|
],
|
|
303
|
-
styles: [":host{width:100%;height:inherit;display:block}:host>*{align-self:center}.gallery-dialog{height:inherit}.images-filmstrip-container,.images-filmstrip-container .img-wrapper,gallery{height:100%}gallery{direction:ltr;min-height:100%}.gallery-dialog-content gallery{min-width:65vw}.gallery-dialog-content ::ng-deep gallery-item gallery-image .g-image-item{background-size:content!important}.gallery-dialog-content ::ng-deep gallery-item .g-item-template ngx-imageviewer canvas{max-width:100%!important;max-height:100%!important}::ng-deep gallery-thumbs{margin:0 1rem 0 .5rem;margin:0 var(--pep-spacing-lg,1rem) 0 var(--pep-spacing-sm,.5rem)}::ng-deep gallery-thumbs gallery-thumb{padding:0!important;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem);margin:.5rem 0;margin:var(--pep-spacing-sm,.5rem) 0}::ng-deep gallery-thumbs gallery-thumb .g-image-item{background-size:cover!important}::ng-deep gallery-item gallery-image .g-image-item{border-radius:.5rem;border-radius:var(--pep-border-radius-lg,.5rem)}::ng-deep gallery-item:hover{cursor:pointer}::ng-deep gallery-dots{position:absolute!important;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem)}::ng-deep gallery-dots.pep-button,::ng-deep gallery-dots.pepperi-button{display:flex!important}::ng-deep .img-container{display:flex;align-items:center}::ng-deep .g-nav-next,::ng-deep .g-nav-prev{width:2rem!important;height:2rem!important;padding:.25rem;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem)}::ng-deep .g-nav-next .mat-icon,::ng-deep .g-nav-prev .mat-icon{display:inline-block!important}::ng-deep .g-nav-prev{transform:translateY(-50%) perspective(1px) scaleX(-1)!important}.vertical-gallery ::ng-deep gallery-thumbs{margin:1rem 0 .5rem;margin:var(--pep-spacing-lg,1rem) 0 var(--pep-spacing-sm,.5rem) 0}.vertical-gallery ::ng-deep gallery-thumbs gallery-thumb{margin:0 .5rem;margin:0 var(--pep-spacing-sm,.5rem)}"]
|
|
307
|
+
styles: [":host{width:100%;height:inherit;display:block}:host>*{align-self:center}.gallery-dialog{height:inherit}.images-filmstrip-container,.images-filmstrip-container .img-wrapper,gallery{height:100%}gallery{direction:ltr;min-height:100%}.gallery-dialog-content gallery{min-width:65vw}.gallery-dialog-content ::ng-deep gallery-item gallery-image .g-image-item{background-size:content!important}.gallery-dialog-content ::ng-deep gallery-item .g-item-template ngx-imageviewer canvas{max-width:100%!important;max-height:100%!important}::ng-deep gallery-thumbs{margin:0 1rem 0 .5rem;margin:0 var(--pep-spacing-lg,1rem) 0 var(--pep-spacing-sm,.5rem)}::ng-deep gallery-thumbs gallery-thumb{padding:0!important;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem);margin:.5rem 0;margin:var(--pep-spacing-sm,.5rem) 0}::ng-deep gallery-thumbs gallery-thumb .g-image-item{background-size:cover!important}::ng-deep gallery-item gallery-image .g-image-item{border-radius:.5rem;border-radius:var(--pep-border-radius-lg,.5rem)}::ng-deep gallery-item:hover{cursor:pointer}::ng-deep gallery-dots{position:absolute!important;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem)}::ng-deep gallery-dots.pep-button,::ng-deep gallery-dots.pepperi-button{display:flex!important}::ng-deep .img-container{display:flex;align-items:center}::ng-deep .g-nav-next,::ng-deep .g-nav-prev{width:2rem!important;height:2rem!important;padding:.25rem;border-radius:.25rem;border-radius:var(--pep-border-radius-md,.25rem)}::ng-deep .g-nav-next .mat-icon,::ng-deep .g-nav-prev .mat-icon{display:inline-block!important}::ng-deep .g-nav-prev{transform:translateY(-50%) perspective(1px) scaleX(-1)!important}.vertical-gallery ::ng-deep gallery-thumbs{margin:1rem 0 .5rem;margin:var(--pep-spacing-lg,1rem) 0 var(--pep-spacing-sm,.5rem) 0}.vertical-gallery ::ng-deep gallery-thumbs gallery-thumb{margin:0 .5rem;margin:0 var(--pep-spacing-sm,.5rem)}", "gallery{background-color:transparent}gallery-thumb{box-shadow:0 .25rem .5rem 0 rgba(26,26,26,.32);box-shadow:var(--pep-shadow-sm-offset,0 .25rem .5rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.32)}.g-nav-next,.g-nav-next:hover,.g-nav-prev,.g-nav-prev:hover{background:hsla(0,0%,100%,.5);background:hsla(var(--pep-color-system-primary-invert-h,255),var(--pep-color-system-primary-invert-s,100%),var(--pep-color-system-primary-invert-l,100%),.5)}.g-nav-next:hover,.g-nav-prev:hover{box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.08);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.08);cursor:pointer}.g-nav-next:focus,.g-nav-prev:focus{box-shadow:0 0 0 .25rem rgba(23,102,166,.5);box-shadow:0 0 0 var(--pep-spacing-xs,.25rem) hsla(var(--pep-color-text-link-h,207),var(--pep-color-text-link-s,76%),var(--pep-color-text-link-l,37%),.5)}.g-nav-next:active,.g-nav-next:focus,.g-nav-prev:active,.g-nav-prev:focus{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%))}.g-nav-next:active,.g-nav-prev:active{box-shadow:0 .125rem .25rem 0 rgba(26,26,26,.16);box-shadow:var(--pep-shadow-xs-offset,0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.16)}.g-nav-next:disabled,.g-nav-prev:disabled{box-shadow:unset;border:unset;color:rgba(26,26,26,.35)!important;color:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)!important;background:hsla(0,0%,100%,.08)!important;background:hsla(var(--pep-color-system-primary-invert-h,255),var(--pep-color-system-primary-invert-s,100%),var(--pep-color-system-primary-invert-l,100%),.08)!important}.g-nav-next:disabled:after,.g-nav-prev:disabled:after{border:unset}.g-nav-next:disabled .svg-icon,.g-nav-prev:disabled .svg-icon{fill:rgba(26,26,26,.35);fill:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)}.g-nav-next:disabled .svg-icon.stroke,.g-nav-prev:disabled .svg-icon.stroke{fill:unset;stroke:rgba(26,26,26,.35);stroke:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.35)}gallery-dots{background:rgba(26,26,26,.12);background:hsla(var(--pep-color-weak-h,0),var(--pep-color-weak-s,0%),var(--pep-color-weak-l,10%),.12)}"]
|
|
304
308
|
},] }
|
|
305
309
|
];
|
|
306
310
|
PepImagesFilmstripComponent.ctorParameters = function () { return [
|
|
@@ -324,6 +328,7 @@
|
|
|
324
328
|
form: [{ type: core.Input }],
|
|
325
329
|
uid: [{ type: core.Input }],
|
|
326
330
|
showTitle: [{ type: core.Input }],
|
|
331
|
+
renderTitle: [{ type: core.Input }],
|
|
327
332
|
layoutType: [{ type: core.Input }],
|
|
328
333
|
currIndex: [{ type: core.Input }],
|
|
329
334
|
showThumbnails: [{ type: core.Input }],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pepperi-addons-ngx-lib-images-filmstrip.umd.js","sources":["../../../projects/ngx-lib/images-filmstrip/images-filmstrip.component.ts","../../../projects/ngx-lib/images-filmstrip/images-filmstrip.module.ts","../../../projects/ngx-lib/images-filmstrip/public-api.ts","../../../projects/ngx-lib/images-filmstrip/pepperi-addons-ngx-lib-images-filmstrip.ts"],"sourcesContent":["import {\n Component,\n ViewChild,\n OnInit,\n OnDestroy,\n AfterViewInit,\n ElementRef,\n Input,\n TemplateRef,\n Renderer2,\n ChangeDetectorRef,\n Inject,\n Optional,\n ViewContainerRef,\n OnChanges,\n} from '@angular/core';\nimport {\n trigger,\n state,\n style,\n transition,\n animate,\n} from '@angular/animations';\nimport { FormGroup } from '@angular/forms';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\nimport { TranslateService } from '@ngx-translate/core';\nimport {\n Gallery,\n GalleryConfig,\n LoadingStrategy,\n SlidingDirection,\n ThumbnailsPosition,\n GalleryItem,\n ImageItem,\n GalleryRef,\n} from 'ng-gallery';\nimport {\n PepCustomizationService,\n PepLayoutType,\n PepLayoutService,\n PepFileService,\n PepHorizontalAlignment,\n DEFAULT_HORIZONTAL_ALIGNMENT,\n PepImagesField,\n} from '@pepperi-addons/ngx-lib';\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\nimport { pepIconArrowRightAlt } from '@pepperi-addons/ngx-lib/icon';\nimport { pepIconNoImage2 } from '@pepperi-addons/ngx-lib/icon';\n\nimport 'hammerjs';\n\ninterface IPepImagesFilmstripDialogData {\n currIndex: number;\n key: string;\n value: string;\n label: string;\n uid: string;\n showThumbnails: boolean;\n}\n\n// export const slideInAnimation = trigger('slideAnimation', [\n// state('in', style({ transform: 'translateY(0)', opacity: 1 })),\n// transition(':enter', [\n// style({ transform: 'translateY(-100%)', opacity: 0 }),\n// animate(400)\n// ]),\n// transition(':leave', [\n// animate(400, style({ transform: 'translateY(-100%)', opacity: 0 }))\n// ])\n// ]);\n\nimport {\n IMAGEVIEWER_CONFIG,\n ImageViewerConfig,\n createButtonConfig,\n} from '@hallysonh/ngx-imageviewer';\n\nexport function createViewerConfig(\n translate: TranslateService\n): ImageViewerConfig {\n return {\n // width: 850,\n // height: 150,\n bgStyle: '#FFF', // component background style\n // scaleStep: 0.1, // zoom scale step (using the zoom in/out buttons)\n // rotateStepper: false, // touch rotate should rotate only 90 to 90 degrees\n loadingMessage: translate.instant('MESSAGES.INFO_LOADING_FILE'), // 'Loading...',\n // buttonStyle: {\n // iconFontFamily: 'Material Icons', // font used to render the button icons\n // alpha: 0.5, // buttons' transparence value\n // hoverAlpha: 0.7, // buttons' transparence value when mouse is over\n // bgStyle: '#000000', // buttons' background style\n // iconStyle: '#ffffff', // buttons' icon colors\n // borderStyle: '#000000', // buttons' border style\n // borderWidth: 0, // buttons' border width (0 == disabled)\n // },\n // tooltips: {\n // enabled: true, // enable or disable tooltips for buttons\n // bgStyle: '#000000', // tooltip background style\n // bgAlpha: 0.5, // tooltip background transparence\n // textStyle: '#ffffff', // tooltip's text style\n // textAlpha: 0.9, // tooltip's text transparence\n // padding: 15, // tooltip padding\n // radius: 20, // tooltip border radius\n // },\n // shorter button configuration style\n nextPageButton: createButtonConfig(\n 'navigate_next',\n 'Next page',\n 0,\n false\n ),\n beforePageButton: createButtonConfig(\n 'navigate_before',\n 'Previous page',\n 1,\n false\n ),\n zoomOutButton: createButtonConfig('zoom_out', 'Zoom out', 0, false),\n zoomInButton: createButtonConfig('zoom_in', 'Zoom in', 1, false),\n rotateLeftButton: createButtonConfig(\n 'rotate_left',\n 'Rotate left',\n 2,\n false\n ),\n rotateRightButton: createButtonConfig(\n 'rotate_right',\n 'Rotate right',\n 3,\n false\n ),\n resetButton: createButtonConfig('autorenew', 'Reset', 4, false),\n };\n}\n\n@Component({\n selector: 'pep-images-filmstrip',\n templateUrl: './images-filmstrip.component.html',\n styleUrls: ['./images-filmstrip.component.scss'],\n // animations: [slideInAnimation],\n providers: [\n {\n provide: IMAGEVIEWER_CONFIG,\n // useValue: IMAGEVIEWER_CONFIG_DEFAULT,\n useFactory: createViewerConfig,\n deps: [TranslateService],\n },\n ],\n})\nexport class PepImagesFilmstripComponent\n implements OnInit, OnChanges, AfterViewInit, OnDestroy {\n // @ViewChild('ngxViewerImage') ngxViewerImage: any; // TODO: Check if we need to use this??\n @Input() key = '';\n @Input() value = '';\n @Input() label = '';\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 controlType = 'images';\n\n @Input() form: FormGroup = null;\n @Input() uid = '0';\n @Input() showTitle = false;\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() currIndex = 0;\n @Input() showThumbnails = false;\n\n @ViewChild('galleryCont') galleryCont: ElementRef;\n @ViewChild('galleryDialogTemplate', { read: TemplateRef })\n galleryDialogTemplate: TemplateRef<any>;\n @ViewChild('galleryDialogCont') galleryDialogCont: ElementRef;\n\n config: GalleryConfig;\n items: GalleryItem[] = null;\n inDialog = false;\n\n mandatory = false;\n readonly = false;\n disabled = false;\n fieldHeight = '';\n standAlone = false;\n\n galleryWidth = 0;\n galleryHeight;\n isVertical = false;\n galleryRef: GalleryRef;\n dialogGalleryRef: GalleryRef;\n\n constructor(\n private customizationService: PepCustomizationService,\n private dialogService: PepDialogService,\n private layoutService: PepLayoutService,\n private fileService: PepFileService,\n private gallery: Gallery,\n private renderer: Renderer2,\n private element: ElementRef,\n private cd: ChangeDetectorRef,\n @Optional()\n private dialogRef: MatDialogRef<PepImagesFilmstripComponent>,\n @Optional()\n @Inject(MAT_DIALOG_DATA)\n private data: IPepImagesFilmstripDialogData\n ) {\n // If data exist copy all data properties into this.\n if (dialogRef && data) {\n this.inDialog = true;\n\n Object.keys(data).forEach((key) => {\n if (key in this) {\n this[key] = data[key];\n }\n });\n }\n\n this.config = {\n // nav: false, // Show navigation buttons\n navIcon: pepIconArrowRightAlt.data,\n // loop: true,\n // zoomOut: 0,\n // dots: false,\n // dotsPosition: 'bottom',\n // counterPosition: 'top',\n // thumb: true,\n counter: false, // Show counter\n gestures: true, // Use touch events (requires hammer.js)\n // autoPlay: false,\n // thumbWidth: 120,\n // thumbHeight: 90,\n imageSize: 'contain',\n // panSensitivity: 25,\n // disableThumb: false,\n // playerInterval: 3000,\n // thumbMode: ThumbnailsMode.Free,\n // thumbPosition: ThumbnailsPosition.Bottom,\n loadingStrategy: LoadingStrategy.Default,\n // slidingDirection: SlidingDirection.Horizontal,\n };\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 PepImagesField({\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.inDialog) {\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 if (this.items === null) {\n const imgArr = this.value ? this.value.split(';') : [];\n // add No image image when there is no images\n if (imgArr.length === 0) {\n const noImageSrc = this.fileService.getSvgAsImageSrc(\n pepIconNoImage2.data\n );\n imgArr.push(noImageSrc);\n }\n\n this.items = imgArr.map(\n (img) => new ImageItem({ src: img, thumb: img })\n );\n }\n\n this.config.dots = this.config.nav = this.items.length > 1;\n this.config.thumb =\n (this.key === 'ItemFilmstripImages' || this.showThumbnails) &&\n this.items.length > 1\n ? true\n : false;\n this.currIndex =\n this.key === 'ItemFilmstripImages' &&\n this.currIndex === 0 &&\n this.items.length > 1\n ? Math.floor(this.items.length / 2) - 1\n : this.currIndex;\n }\n\n ngAfterViewInit(): void {\n if (this.inDialog) {\n this.afterDialogOpened();\n } else {\n this.galleryRef = this.gallery.ref(\n `${this.key}-${this.uid}-gallery`\n );\n this.initGalleryStyle(this.galleryCont, this.galleryRef);\n }\n }\n\n ngOnChanges(): void {\n if (this.standAlone) {\n this.setDefaultForm();\n }\n }\n\n ngOnDestroy(): void {\n if (this.galleryRef) {\n this.galleryRef.destroy();\n }\n if (this.dialogGalleryRef) {\n this.dialogGalleryRef.destroy();\n }\n // if (this.myPinch) { this.myPinch.destroy(); }\n }\n\n initGalleryStyle(galleryContainer, galleryRef): void {\n setTimeout(() => {\n // Set thumbnails position and sliding direction\n this.setThumbnailDimension(galleryContainer);\n galleryRef.setConfig(this.config);\n }, 0);\n\n const currentIndex = this.currIndex;\n if (currentIndex > 0) {\n setTimeout(() => {\n galleryRef.load(this.items);\n galleryRef.set(currentIndex);\n }, 0);\n // galleryRef.set(currentIndex);\n } else {\n galleryRef.load(this.items);\n }\n }\n\n onError(e): void {\n const noImageSrc = this.fileService.getSvgAsImageSrc(\n pepIconNoImage2.data\n );\n const noimg = new ImageItem({ src: noImageSrc, thumb: noImageSrc });\n this.items.splice(e.itemIndex, 1, noimg);\n }\n\n enlargeImage(event: any): void {\n const config = this.dialogService.getDialogConfig({}, 'inline');\n config.maxWidth = '75vw';\n config.height = '95vh';\n\n const dialogRef = this.dialogService.openDialog(\n this.galleryDialogTemplate,\n {\n currIndex: this.currIndex,\n },\n config\n );\n\n dialogRef.afterOpened().subscribe(() => {\n this.afterDialogOpened();\n });\n\n // Update currentIndex in galleryRef\n // dialogRef.afterClosed().subscribe(value => {\n // this.galleryRef.set(this.currIndex);\n // });\n }\n\n afterDialogOpened(): void {\n this.dialogGalleryRef = this.gallery.ref(\n `${this.key}-${this.uid}-dlgGallery`\n );\n this.initGalleryStyle(this.galleryDialogCont, this.dialogGalleryRef);\n }\n\n setThumbnailDimension(galleryContainer): void {\n this.galleryWidth = galleryContainer.nativeElement.clientWidth;\n // this.galleryHeight = galleryContainer.nativeElement.clientHeight - 32; // TODO - TALK WITH TOMER\n this.galleryHeight = this.inDialog\n ? galleryContainer.nativeElement.clientHeight - 32\n : galleryContainer.nativeElement.clientHeight;\n // this.galleryHeight = galleryContainer.nativeElement.clientHeight - 32;\n this.cd.detectChanges();\n\n this.isVertical = this.galleryWidth < this.galleryHeight;\n this.cd.detectChanges();\n if (this.isVertical) {\n let width =\n (this.galleryWidth - (this.items.length - 1) * 16) /\n this.items.length;\n width = Math.min(Math.max(width, 24), 96);\n\n this.config.thumbHeight = width;\n this.config.thumbWidth = width + 16;\n } else {\n let height =\n (this.galleryHeight - (this.items.length - 1) * 16) /\n this.items.length;\n height = Math.min(Math.max(height, 24), 96);\n\n this.config.thumbHeight = height + 16;\n this.config.thumbWidth = height;\n }\n\n this.config.thumbPosition = this.isVertical\n ? ThumbnailsPosition.Bottom\n : this.layoutService.isRtl()\n ? ThumbnailsPosition.Right\n : ThumbnailsPosition.Left;\n this.config.slidingDirection =\n this.key !== 'ItemFilmstripImages'\n ? SlidingDirection.Horizontal\n : this.isVertical\n ? SlidingDirection.Horizontal\n : SlidingDirection.Vertical;\n\n this.config.imageSize = 'contain';\n }\n\n indexChange(item: any): void {\n this.currIndex = item.currIndex;\n // if (this.ngxViewerImage && this.ngxViewerImage.scale) {\n // this.ngxViewerImage.scale = 1;\n // this.updateStyle();\n // }\n }\n\n // scrollFunction(e: any): boolean {\n // e.deltaY > 0 ? this.zoomOut() : this.zoomIn();\n // return false;\n // }\n\n // zoomIn(): void {\n // if (this.ngxViewerImage.scale < 2) {\n // this.ngxViewerImage.scale *= (1 + this.ngxViewerImage.config.zoomFactor);\n // } else {\n // this.ngxViewerImage.scale = 2;\n // }\n // this.updateStyle();\n // }\n\n // zoomOut(): void {\n // if (this.ngxViewerImage.scale > this.ngxViewerImage.config.zoomFactor) {\n // this.ngxViewerImage.scale /= (1 + this.ngxViewerImage.config.zoomFactor);\n // }\n // this.updateStyle();\n // }\n\n // private updateStyle(): void {\n // this.ngxViewerImage.style.transform = `translate(${this.ngxViewerImage.translateX}px,\n // ${this.ngxViewerImage.translateY}px) rotate(${this.ngxViewerImage.rotation}deg) scale(${this.ngxViewerImage.scale})`;\n\n // this.cd.detectChanges();\n // }\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 { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconSystemEdit,\n pepIconSystemClose,\n pepIconArrowRightAlt,\n pepIconArrowLeftAlt,\n} from '@pepperi-addons/ngx-lib/icon';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\n\nimport { GalleryModule } from 'ng-gallery';\nimport { ImageViewerModule } from '@hallysonh/ngx-imageviewer';\n\nimport { PepImagesFilmstripComponent } from './images-filmstrip.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n // Material modules,\n MatCommonModule,\n MatFormFieldModule,\n MatDialogModule,\n MatIconModule,\n // External modules\n GalleryModule,\n ImageViewerModule,\n // ImageViewerModule.forRoot({\n // btnClass: 'default', // The CSS class(es) that will apply to the buttons\n // zoomFactor: 0.1, // The amount that the scale will be increased by\n // containerBackgroundColor: 'transparent', // The color to use for the background. This can provided in hex, or rgb(a).\n // wheelZoom: true, // If true, the mouse wheel can be used to zoom in\n // allowFullscreen: false, // If true, the fullscreen button will be shown, allowing the user to entr fullscreen mode\n // btnIcons: {\n // // The icon classes that will apply to the buttons. By default, font-awesome is used.\n // zoomIn: 'fa fa-plus',\n // zoomOut: 'fa fa-minus',\n // rotateClockwise: 'fa fa-repeat',\n // rotateCounterClockwise: 'fa fa-undo',\n // next: 'fa fa-arrow-right',\n // prev: 'fa fa-arrow-left',\n // fullscreen: 'fa fa-arrows-alt'\n // }\n // }),\n // ngx-lib modules\n PepNgxLibModule,\n PepIconModule,\n PepFieldTitleModule,\n PepDialogModule,\n ],\n exports: [PepImagesFilmstripComponent],\n declarations: [PepImagesFilmstripComponent],\n})\nexport class PepImagesFilmstripModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons([\n pepIconSystemEdit,\n pepIconSystemClose,\n pepIconArrowRightAlt,\n pepIconArrowLeftAlt,\n ]);\n }\n}\n","/*\n * Public API Surface of ngx-lib/images-filmstrip\n */\nexport * from './images-filmstrip.module';\nexport * from './images-filmstrip.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["createButtonConfig","DEFAULT_HORIZONTAL_ALIGNMENT","pepIconArrowRightAlt","LoadingStrategy","PepImagesField","PepCustomizationService","pepIconNoImage2","ImageItem","ThumbnailsPosition","SlidingDirection","Component","IMAGEVIEWER_CONFIG","TranslateService","PepDialogService","PepLayoutService","PepFileService","Gallery","Renderer2","ElementRef","ChangeDetectorRef","MatDialogRef","Optional","Inject","MAT_DIALOG_DATA","Input","ViewChild","TemplateRef","pepIconSystemEdit","pepIconSystemClose","pepIconArrowLeftAlt","NgModule","CommonModule","ReactiveFormsModule","MatCommonModule","MatFormFieldModule","MatDialogModule","MatIconModule","GalleryModule","ImageViewerModule","PepNgxLibModule","PepIconModule","PepFieldTitleModule","PepDialogModule","PepIconRegistry"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pepperi-addons-ngx-lib-images-filmstrip.umd.js","sources":["../../../projects/ngx-lib/images-filmstrip/images-filmstrip.component.ts","../../../projects/ngx-lib/images-filmstrip/images-filmstrip.module.ts","../../../projects/ngx-lib/images-filmstrip/public-api.ts","../../../projects/ngx-lib/images-filmstrip/pepperi-addons-ngx-lib-images-filmstrip.ts"],"sourcesContent":["import {\r\n Component,\r\n ViewChild,\r\n OnInit,\r\n OnDestroy,\r\n AfterViewInit,\r\n ElementRef,\r\n Input,\r\n TemplateRef,\r\n Renderer2,\r\n ChangeDetectorRef,\r\n Inject,\r\n Optional,\r\n ViewContainerRef,\r\n OnChanges,\r\n} from '@angular/core';\r\nimport {\r\n trigger,\r\n state,\r\n style,\r\n transition,\r\n animate,\r\n} from '@angular/animations';\r\nimport { FormGroup } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport {\r\n Gallery,\r\n GalleryConfig,\r\n LoadingStrategy,\r\n SlidingDirection,\r\n ThumbnailsPosition,\r\n GalleryItem,\r\n ImageItem,\r\n GalleryRef,\r\n} from 'ng-gallery';\r\nimport {\r\n PepCustomizationService,\r\n PepLayoutType,\r\n PepLayoutService,\r\n PepFileService,\r\n PepHorizontalAlignment,\r\n DEFAULT_HORIZONTAL_ALIGNMENT,\r\n PepImagesField,\r\n} from '@pepperi-addons/ngx-lib';\r\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\r\nimport { pepIconArrowRightAlt } from '@pepperi-addons/ngx-lib/icon';\r\nimport { pepIconNoImage2 } from '@pepperi-addons/ngx-lib/icon';\r\n\r\nimport 'hammerjs';\r\n\r\ninterface IPepImagesFilmstripDialogData {\r\n currIndex: number;\r\n key: string;\r\n value: string;\r\n label: string;\r\n uid: string;\r\n showThumbnails: boolean;\r\n}\r\n\r\n// export const slideInAnimation = trigger('slideAnimation', [\r\n// state('in', style({ transform: 'translateY(0)', opacity: 1 })),\r\n// transition(':enter', [\r\n// style({ transform: 'translateY(-100%)', opacity: 0 }),\r\n// animate(400)\r\n// ]),\r\n// transition(':leave', [\r\n// animate(400, style({ transform: 'translateY(-100%)', opacity: 0 }))\r\n// ])\r\n// ]);\r\n\r\nimport {\r\n IMAGEVIEWER_CONFIG,\r\n ImageViewerConfig,\r\n createButtonConfig,\r\n} from '@hallysonh/ngx-imageviewer';\r\n\r\nexport function createViewerConfig(\r\n translate: TranslateService\r\n): ImageViewerConfig {\r\n return {\r\n // width: 850,\r\n // height: 150,\r\n bgStyle: '#FFF', // component background style\r\n // scaleStep: 0.1, // zoom scale step (using the zoom in/out buttons)\r\n // rotateStepper: false, // touch rotate should rotate only 90 to 90 degrees\r\n loadingMessage: translate.instant('MESSAGES.INFO_LOADING_FILE'), // 'Loading...',\r\n // buttonStyle: {\r\n // iconFontFamily: 'Material Icons', // font used to render the button icons\r\n // alpha: 0.5, // buttons' transparence value\r\n // hoverAlpha: 0.7, // buttons' transparence value when mouse is over\r\n // bgStyle: '#000000', // buttons' background style\r\n // iconStyle: '#ffffff', // buttons' icon colors\r\n // borderStyle: '#000000', // buttons' border style\r\n // borderWidth: 0, // buttons' border width (0 == disabled)\r\n // },\r\n // tooltips: {\r\n // enabled: true, // enable or disable tooltips for buttons\r\n // bgStyle: '#000000', // tooltip background style\r\n // bgAlpha: 0.5, // tooltip background transparence\r\n // textStyle: '#ffffff', // tooltip's text style\r\n // textAlpha: 0.9, // tooltip's text transparence\r\n // padding: 15, // tooltip padding\r\n // radius: 20, // tooltip border radius\r\n // },\r\n // shorter button configuration style\r\n nextPageButton: createButtonConfig(\r\n 'navigate_next',\r\n 'Next page',\r\n 0,\r\n false\r\n ),\r\n beforePageButton: createButtonConfig(\r\n 'navigate_before',\r\n 'Previous page',\r\n 1,\r\n false\r\n ),\r\n zoomOutButton: createButtonConfig('zoom_out', 'Zoom out', 0, false),\r\n zoomInButton: createButtonConfig('zoom_in', 'Zoom in', 1, false),\r\n rotateLeftButton: createButtonConfig(\r\n 'rotate_left',\r\n 'Rotate left',\r\n 2,\r\n false\r\n ),\r\n rotateRightButton: createButtonConfig(\r\n 'rotate_right',\r\n 'Rotate right',\r\n 3,\r\n false\r\n ),\r\n resetButton: createButtonConfig('autorenew', 'Reset', 4, false),\r\n };\r\n}\r\n\r\n@Component({\r\n selector: 'pep-images-filmstrip',\r\n templateUrl: './images-filmstrip.component.html',\r\n styleUrls: ['./images-filmstrip.component.scss', './images-filmstrip.component.theme.scss'],\r\n // animations: [slideInAnimation],\r\n providers: [\r\n {\r\n provide: IMAGEVIEWER_CONFIG,\r\n // useValue: IMAGEVIEWER_CONFIG_DEFAULT,\r\n useFactory: createViewerConfig,\r\n deps: [TranslateService],\r\n },\r\n ],\r\n})\r\nexport class PepImagesFilmstripComponent\r\n implements OnInit, OnChanges, AfterViewInit, OnDestroy {\r\n // @ViewChild('ngxViewerImage') ngxViewerImage: any; // TODO: Check if we need to use this??\r\n @Input() key = '';\r\n @Input() value = '';\r\n @Input() label = '';\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 controlType = 'images';\r\n\r\n @Input() form: FormGroup = null;\r\n @Input() uid = '0';\r\n @Input() showTitle = false;\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() currIndex = 0;\r\n @Input() showThumbnails = false;\r\n\r\n @ViewChild('galleryCont') galleryCont: ElementRef;\r\n @ViewChild('galleryDialogTemplate', { read: TemplateRef })\r\n galleryDialogTemplate: TemplateRef<any>;\r\n @ViewChild('galleryDialogCont') galleryDialogCont: ElementRef;\r\n\r\n config: GalleryConfig;\r\n items: GalleryItem[] = null;\r\n inDialog = false;\r\n\r\n mandatory = false;\r\n readonly = false;\r\n disabled = false;\r\n fieldHeight = '';\r\n standAlone = false;\r\n\r\n galleryWidth = 0;\r\n galleryHeight;\r\n isVertical = false;\r\n galleryRef: GalleryRef;\r\n dialogGalleryRef: GalleryRef;\r\n\r\n constructor(\r\n private customizationService: PepCustomizationService,\r\n private dialogService: PepDialogService,\r\n private layoutService: PepLayoutService,\r\n private fileService: PepFileService,\r\n private gallery: Gallery,\r\n private renderer: Renderer2,\r\n private element: ElementRef,\r\n private cd: ChangeDetectorRef,\r\n @Optional()\r\n private dialogRef: MatDialogRef<PepImagesFilmstripComponent>,\r\n @Optional()\r\n @Inject(MAT_DIALOG_DATA)\r\n private data: IPepImagesFilmstripDialogData\r\n ) {\r\n // If data exist copy all data properties into this.\r\n if (dialogRef && data) {\r\n this.inDialog = true;\r\n\r\n Object.keys(data).forEach((key) => {\r\n if (key in this) {\r\n this[key] = data[key];\r\n }\r\n });\r\n }\r\n\r\n this.config = {\r\n // nav: false, // Show navigation buttons\r\n navIcon: pepIconArrowRightAlt.data,\r\n // loop: true,\r\n // zoomOut: 0,\r\n // dots: false,\r\n // dotsPosition: 'bottom',\r\n // counterPosition: 'top',\r\n // thumb: true,\r\n counter: false, // Show counter\r\n gestures: true, // Use touch events (requires hammer.js)\r\n // autoPlay: false,\r\n // thumbWidth: 120,\r\n // thumbHeight: 90,\r\n imageSize: 'contain',\r\n // panSensitivity: 25,\r\n // disableThumb: false,\r\n // playerInterval: 3000,\r\n // thumbMode: ThumbnailsMode.Free,\r\n // thumbPosition: ThumbnailsPosition.Bottom,\r\n loadingStrategy: LoadingStrategy.Default,\r\n // slidingDirection: SlidingDirection.Horizontal,\r\n };\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 PepImagesField({\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.inDialog) {\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 if (this.items === null) {\r\n const imgArr = this.value ? this.value.split(';') : [];\r\n // add No image image when there is no images\r\n if (imgArr.length === 0) {\r\n const noImageSrc = this.fileService.getSvgAsImageSrc(\r\n pepIconNoImage2.data\r\n );\r\n imgArr.push(noImageSrc);\r\n }\r\n\r\n this.items = imgArr.map(\r\n (img) => new ImageItem({ src: img, thumb: img })\r\n );\r\n }\r\n\r\n this.config.dots = this.config.nav = this.items.length > 1;\r\n this.config.thumb =\r\n (this.key === 'ItemFilmstripImages' || this.showThumbnails) &&\r\n this.items.length > 1\r\n ? true\r\n : false;\r\n this.currIndex =\r\n this.key === 'ItemFilmstripImages' &&\r\n this.currIndex === 0 &&\r\n this.items.length > 1\r\n ? Math.floor(this.items.length / 2) - 1\r\n : this.currIndex;\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n if (this.inDialog) {\r\n this.afterDialogOpened();\r\n } else {\r\n this.galleryRef = this.gallery.ref(\r\n `${this.key}-${this.uid}-gallery`\r\n );\r\n this.initGalleryStyle(this.galleryCont, this.galleryRef);\r\n }\r\n }\r\n\r\n ngOnChanges(): void {\r\n if (this.standAlone) {\r\n this.setDefaultForm();\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.galleryRef) {\r\n this.galleryRef.destroy();\r\n }\r\n if (this.dialogGalleryRef) {\r\n this.dialogGalleryRef.destroy();\r\n }\r\n // if (this.myPinch) { this.myPinch.destroy(); }\r\n }\r\n\r\n initGalleryStyle(galleryContainer, galleryRef): void {\r\n setTimeout(() => {\r\n // Set thumbnails position and sliding direction\r\n this.setThumbnailDimension(galleryContainer);\r\n galleryRef.setConfig(this.config);\r\n }, 0);\r\n\r\n const currentIndex = this.currIndex;\r\n if (currentIndex > 0) {\r\n setTimeout(() => {\r\n galleryRef.load(this.items);\r\n galleryRef.set(currentIndex);\r\n }, 0);\r\n // galleryRef.set(currentIndex);\r\n } else {\r\n galleryRef.load(this.items);\r\n }\r\n }\r\n\r\n onError(e): void {\r\n const noImageSrc = this.fileService.getSvgAsImageSrc(\r\n pepIconNoImage2.data\r\n );\r\n const noimg = new ImageItem({ src: noImageSrc, thumb: noImageSrc });\r\n this.items.splice(e.itemIndex, 1, noimg);\r\n }\r\n\r\n enlargeImage(event: any): void {\r\n const config = this.dialogService.getDialogConfig({}, 'inline');\r\n config.maxWidth = '75vw';\r\n config.height = '95vh';\r\n\r\n const dialogRef = this.dialogService.openDialog(\r\n this.galleryDialogTemplate,\r\n {\r\n currIndex: this.currIndex,\r\n },\r\n config\r\n );\r\n\r\n dialogRef.afterOpened().subscribe(() => {\r\n this.afterDialogOpened();\r\n });\r\n\r\n // Update currentIndex in galleryRef\r\n // dialogRef.afterClosed().subscribe(value => {\r\n // this.galleryRef.set(this.currIndex);\r\n // });\r\n }\r\n\r\n afterDialogOpened(): void {\r\n this.dialogGalleryRef = this.gallery.ref(\r\n `${this.key}-${this.uid}-dlgGallery`\r\n );\r\n this.initGalleryStyle(this.galleryDialogCont, this.dialogGalleryRef);\r\n }\r\n\r\n setThumbnailDimension(galleryContainer): void {\r\n this.galleryWidth = galleryContainer.nativeElement.clientWidth;\r\n // this.galleryHeight = galleryContainer.nativeElement.clientHeight - 32; // TODO - TALK WITH TOMER\r\n this.galleryHeight = this.inDialog\r\n ? galleryContainer.nativeElement.clientHeight - 32\r\n : galleryContainer.nativeElement.clientHeight;\r\n // this.galleryHeight = galleryContainer.nativeElement.clientHeight - 32;\r\n this.cd.detectChanges();\r\n\r\n this.isVertical = this.galleryWidth < this.galleryHeight;\r\n this.cd.detectChanges();\r\n if (this.isVertical) {\r\n let width =\r\n (this.galleryWidth - (this.items.length - 1) * 16) /\r\n this.items.length;\r\n width = Math.min(Math.max(width, 24), 96);\r\n\r\n this.config.thumbHeight = width;\r\n this.config.thumbWidth = width + 16;\r\n } else {\r\n let height =\r\n (this.galleryHeight - (this.items.length - 1) * 16) /\r\n this.items.length;\r\n height = Math.min(Math.max(height, 24), 96);\r\n\r\n this.config.thumbHeight = height + 16;\r\n this.config.thumbWidth = height;\r\n }\r\n\r\n this.config.thumbPosition = this.isVertical\r\n ? ThumbnailsPosition.Bottom\r\n : this.layoutService.isRtl()\r\n ? ThumbnailsPosition.Right\r\n : ThumbnailsPosition.Left;\r\n this.config.slidingDirection =\r\n this.key !== 'ItemFilmstripImages'\r\n ? SlidingDirection.Horizontal\r\n : this.isVertical\r\n ? SlidingDirection.Horizontal\r\n : SlidingDirection.Vertical;\r\n\r\n this.config.imageSize = 'contain';\r\n }\r\n\r\n indexChange(item: any): void {\r\n this.currIndex = item.currIndex;\r\n // if (this.ngxViewerImage && this.ngxViewerImage.scale) {\r\n // this.ngxViewerImage.scale = 1;\r\n // this.updateStyle();\r\n // }\r\n }\r\n\r\n // scrollFunction(e: any): boolean {\r\n // e.deltaY > 0 ? this.zoomOut() : this.zoomIn();\r\n // return false;\r\n // }\r\n\r\n // zoomIn(): void {\r\n // if (this.ngxViewerImage.scale < 2) {\r\n // this.ngxViewerImage.scale *= (1 + this.ngxViewerImage.config.zoomFactor);\r\n // } else {\r\n // this.ngxViewerImage.scale = 2;\r\n // }\r\n // this.updateStyle();\r\n // }\r\n\r\n // zoomOut(): void {\r\n // if (this.ngxViewerImage.scale > this.ngxViewerImage.config.zoomFactor) {\r\n // this.ngxViewerImage.scale /= (1 + this.ngxViewerImage.config.zoomFactor);\r\n // }\r\n // this.updateStyle();\r\n // }\r\n\r\n // private updateStyle(): void {\r\n // this.ngxViewerImage.style.transform = `translate(${this.ngxViewerImage.translateX}px,\r\n // ${this.ngxViewerImage.translateY}px) rotate(${this.ngxViewerImage.rotation}deg) scale(${this.ngxViewerImage.scale})`;\r\n\r\n // this.cd.detectChanges();\r\n // }\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 { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatIconModule } from '@angular/material/icon';\r\n\r\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\r\nimport { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';\r\nimport {\r\n PepIconModule,\r\n PepIconRegistry,\r\n pepIconSystemEdit,\r\n pepIconSystemClose,\r\n pepIconArrowRightAlt,\r\n pepIconArrowLeftAlt,\r\n} from '@pepperi-addons/ngx-lib/icon';\r\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\r\n\r\nimport { GalleryModule } from 'ng-gallery';\r\nimport { ImageViewerModule } from '@hallysonh/ngx-imageviewer';\r\n\r\nimport { PepImagesFilmstripComponent } from './images-filmstrip.component';\r\n\r\n@NgModule({\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n // Material modules,\r\n MatCommonModule,\r\n MatFormFieldModule,\r\n MatDialogModule,\r\n MatIconModule,\r\n // External modules\r\n GalleryModule,\r\n ImageViewerModule,\r\n // ImageViewerModule.forRoot({\r\n // btnClass: 'default', // The CSS class(es) that will apply to the buttons\r\n // zoomFactor: 0.1, // The amount that the scale will be increased by\r\n // containerBackgroundColor: 'transparent', // The color to use for the background. This can provided in hex, or rgb(a).\r\n // wheelZoom: true, // If true, the mouse wheel can be used to zoom in\r\n // allowFullscreen: false, // If true, the fullscreen button will be shown, allowing the user to entr fullscreen mode\r\n // btnIcons: {\r\n // // The icon classes that will apply to the buttons. By default, font-awesome is used.\r\n // zoomIn: 'fa fa-plus',\r\n // zoomOut: 'fa fa-minus',\r\n // rotateClockwise: 'fa fa-repeat',\r\n // rotateCounterClockwise: 'fa fa-undo',\r\n // next: 'fa fa-arrow-right',\r\n // prev: 'fa fa-arrow-left',\r\n // fullscreen: 'fa fa-arrows-alt'\r\n // }\r\n // }),\r\n // ngx-lib modules\r\n PepNgxLibModule,\r\n PepIconModule,\r\n PepFieldTitleModule,\r\n PepDialogModule,\r\n ],\r\n exports: [PepImagesFilmstripComponent],\r\n declarations: [PepImagesFilmstripComponent],\r\n})\r\nexport class PepImagesFilmstripModule {\r\n constructor(private pepIconRegistry: PepIconRegistry) {\r\n this.pepIconRegistry.registerIcons([\r\n pepIconSystemEdit,\r\n pepIconSystemClose,\r\n pepIconArrowRightAlt,\r\n pepIconArrowLeftAlt,\r\n ]);\r\n }\r\n}\r\n","/*\r\n * Public API Surface of ngx-lib/images-filmstrip\r\n */\r\nexport * from './images-filmstrip.module';\r\nexport * from './images-filmstrip.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["createButtonConfig","DEFAULT_HORIZONTAL_ALIGNMENT","pepIconArrowRightAlt","LoadingStrategy","PepImagesField","PepCustomizationService","pepIconNoImage2","ImageItem","ThumbnailsPosition","SlidingDirection","Component","IMAGEVIEWER_CONFIG","TranslateService","PepDialogService","PepLayoutService","PepFileService","Gallery","Renderer2","ElementRef","ChangeDetectorRef","MatDialogRef","Optional","Inject","MAT_DIALOG_DATA","Input","ViewChild","TemplateRef","pepIconSystemEdit","pepIconSystemClose","pepIconArrowLeftAlt","NgModule","CommonModule","ReactiveFormsModule","MatCommonModule","MatFormFieldModule","MatDialogModule","MatIconModule","GalleryModule","ImageViewerModule","PepNgxLibModule","PepIconModule","PepFieldTitleModule","PepDialogModule","PepIconRegistry"],"mappings":"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"}
|
|
@@ -2578,7 +2578,7 @@
|
|
|
2578
2578
|
PepListComponent.decorators = [
|
|
2579
2579
|
{ type: core.Component, args: [{
|
|
2580
2580
|
selector: 'pep-list',
|
|
2581
|
-
template: "<ng-container *ngIf=\"totalRows == 0\">\n <ng-container *ngIf=\"noDataFoundMsg; then noDataMsgInputBlock; else noDataMsgDefaultBlock\"></ng-container>\n <ng-template #noDataMsgInputBlock>\n <div class=\"pep-border-bottom\">\n <p class=\"title-xl no-data\">\n {{ noDataFoundMsg }}\n </p>\n </div>\n </ng-template>\n <ng-template #noDataMsgDefaultBlock>\n <div class=\"pep-border-bottom\">\n <p class=\"title-xl no-data\">\n {{ 'LIST.NO_DATA_FOUND' | translate}}\n </p>\n </div>\n <div class=\"no-data-suggestions\">\n <p class=\"suggestions-title title-lg\">\n {{ 'LIST.NO_DATA_FOUND_SUGGESTIONS_TITLE' | translate}}\n </p>\n <ul class=\"suggestions-list body-lg\" [innerHtml]=\"'LIST.NO_DATA_FOUND_SUGGESTIONS_LIST' | translate\"></ul>\n </div>\n </ng-template>\n</ng-container>\n<ng-container *ngIf=\"totalRows > 0\">\n <ng-container *ngTemplateOutlet=\"tableHeader\"></ng-container>\n\n <virtual-scroller #scroller [items]=\"pagerType === 'pages' ? currentPageItems : items\"\n [scrollDebounceTime]=\"scrollDebounceTime\" [scrollThrottlingTime]=\"scrollThrottlingTime\"\n [bufferAmount]=\"printMode ? totalRows : -1\" [parentScroll]=\"parentScroll\" [disable]=\"loadingItemsFromApi\"\n class=\"virtual-scroller\" [ngClass]=\"{ 'table-body': isTable, 'cards-body': !isTable }\"\n (vsChange)=\"onVirtualScrollerChange($event)\" (vsChildRectChange)=\"onChildRectChange($event)\">\n <ng-container *ngFor=\"let item of scroller.viewPortItems; let index; let isFirst = first;\">\n <ng-container *ngTemplateOutlet=\"listData; context: {item: item}\"></ng-container>\n </ng-container>\n </virtual-scroller>\n\n <pep-list-pager *ngIf=\"pagerType === 'pages'\" class=\" list-pager\" [disabled]=\"loadingItemsFromApi\"\n [length]=\"totalRows\" [pageSize]=\"pageSize\" [pageIndex]=\"pageIndex\" (pagerChange)=\"onPagerChange($event)\">\n </pep-list-pager>\n\n <ng-container *ngTemplateOutlet=\"tableTotal\"></ng-container>\n</ng-container>\n\n<ng-template #listData let-item=\"item\">\n <ng-container *ngIf=\"isTable\">\n <!-- getIsItemSelected(item) -> item | isItemSelected: selectionTypeForActions : selectedItemId : isAllSelected : selectedItems : unSelectedItems -->\n <div class=\"table-row\" (mouseenter)=\"onTableRowMouseEnter($event, item?.UID, item?.Type)\"\n (mouseleave)=\"onTableRowMouseLeave($event, item?.UID, item?.Type)\" [ngClass]=\"{\n selected: getIsItemSelected(item),\n highlighted: item?.UID + SEPARATOR + item?.Type === selectedItemId\n }\" [ngStyle]=\"{ visibility: !loadingItemsFromApi || item ? 'visible' : 'hidden' }\">\n <fieldset class=\"table-row-fieldset\" [ngStyle]=\"{ 'background-color': item?.BackgroundColor }\">\n <mat-checkbox *ngIf=\"selectionTypeForActions == 'multi'\" type=\"checkbox\"\n class=\"pull-left flip row-selection\"\n [disabled]=\"item | isItemDisabled: lockItemInnerEvents : printMode\" [ngStyle]=\"{\n visibility: !deviceHasMouse ||\n item?.UID + SEPARATOR + item?.Type === hoveredItemId || isAllSelected || selectedItems.size > 0 ? 'visible' : 'hidden'\n }\" [checked]=\"getIsItemSelected(item)\"\n (change)=\"selectItemForActions($event, item?.UID, item?.IsSelectableForActions, item?.Type)\">\n </mat-checkbox>\n <mat-radio-button *ngIf=\"selectionTypeForActions == 'single'\" name=\"selection\"\n class=\"pull-left flip row-selection pep-radio-button\"\n [disabled]=\"item | isItemDisabled: lockItemInnerEvents : printMode\"\n [checked]=\"getIsItemSelected(item)\"\n (change)=\"selectItemForActions($event, item?.UID, item?.IsSelectableForActions, item?.Type)\">\n </mat-radio-button>\n <pep-form [layoutType]=\"'table'\" [checkForChanges]=\"checkForChanges\" [layout]=\"layout\"\n [firstFieldAsLink]=\"firstFieldAsLink\" [data]=\"item\" [canEditObject]=\"!disabled\"\n [lockEvents]=\"lockItemInnerEvents || printMode\" [isReport]=\"isReport\" [isActive]=\"\n (item?.UID + SEPARATOR + item?.Type === selectedItemId ||\n item?.UID + SEPARATOR + item?.Type === hoveredItemId) && deviceHasMouse\n \" (valueChange)=\"onValueChanged($event)\" (fieldClick)=\"onCustomizeFieldClick($event)\"\n (click)=\"itemClicked($event, item)\">\n </pep-form>\n </fieldset>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"!isTable\">\n <div (mouseenter)=\"onCardMouseEnter($event, item?.UID, item?.Type)\"\n (mouseleave)=\"onCardMouseLeave($event, item?.UID, item?.Type)\" [ngClass]=\"{\n selected: getIsItemSelected(item),\n highlighted: item?.UID + SEPARATOR + item?.Type === selectedItemId,\n 'line-view': viewType === 'lines',\n 'card-view': viewType === 'cards',\n 'small-card': cardSize === 'sm'\n }\" class=\"pull-left flip\"\n [ngStyle]=\"{ height: calculatedObjectHeight, visibility: !loadingItemsFromApi || item ? 'visible' : 'hidden' }\">\n <mat-checkbox *ngIf=\"showCardSelection\" class=\"pull-left flip card-selection\"\n [disabled]=\"item | isItemDisabled: lockItemInnerEvents : printMode\" [checked]=\"getIsItemSelected(item)\"\n (change)=\"selectItemForActions($event, item?.UID, item?.IsSelectableForActions, item?.Type)\">\n </mat-checkbox>\n <pep-form [layoutType]=\"'card'\" [firstFieldAsLink]=\"firstFieldAsLink\" [checkForChanges]=\"checkForChanges\"\n [layout]=\"layout\" [data]=\"item\" [canEditObject]=\"!disabled\"\n [lockEvents]=\"lockItemInnerEvents || printMode\" [isActive]=\"\n (item?.UID + SEPARATOR + item?.Type === selectedItemId ||\n item?.UID + SEPARATOR + item?.Type === hoveredItemId) && deviceHasMouse\n \" (valueChange)=\"onValueChanged($event)\" (fieldClick)=\"onCustomizeFieldClick($event)\"\n (click)=\"itemClicked($event, item)\">\n </pep-form>\n </div>\n </ng-container>\n</ng-template>\n\n<ng-template #tableHeader>\n <div *ngIf=\"isTable\" class=\"table-header\" (mouseup)=\"onListResizeEnd($event)\"\n (mouseenter)=\"onListHeaderMouseEnter($event)\" (mouseleave)=\"onListHeaderMouseLeave($event)\"\n (mousemove)=\"onListResize($event)\">\n\n <div class=\"table-header-padding-top\"></div>\n <fieldset class=\"table-header-fieldset\">\n <mat-checkbox *ngIf=\"selectionTypeForActions !== 'none'\" #selectAllCB class=\"pull-left flip row-selection\"\n type=\"checkbox\" [ngStyle]=\"{\n visibility:\n selectionTypeForActions == 'single' || \n (selectionTypeForActions == 'multi' && hideAllSelectionInMulti) ? 'hidden' : 'visible'\n }\"\n [indeterminate]=\"isAllSelected ? unSelectedItems.size > 0 && unSelectedItems.size < totalRows : (selectedItems.size > 0 && !getIsAllSelectedForActions())\"\n [disabled]=\"disabled || selectionTypeForActions === 'single'\" [checked]=\"getIsAllSelectedForActions()\"\n (change)=\"selectAllItemsForActions($event)\"></mat-checkbox>\n <fieldset>\n <div *ngFor=\"let field of layout?.ControlFields; let j = index\" class=\"header-column pull-left flip\"\n [ngStyle]=\"{ width: field.calcTitleColumnWidthString }\" [ngClass]=\"{\n 'support-sorting': supportSorting,\n 'has-sorting': field.ApiName === sortBy,\n 'is-resizing': field.ApiName === pressedColumn,\n 'is-first': j === 0 && selectionTypeForActions !== 'multi',\n 'is-last': j === layout?.ControlFields?.length - 1\n }\"\n (click)=\"supportSorting ? (onListSortingChange(field.ApiName, sortBy !== null && sortBy != field.ApiName ? true : !isAsc, $event)) : false\">\n\n <label id=\"{{ field.ApiName }}\"\n class=\"header-label body-sm pull-left flip text-align-{{ field.Layout.XAlignment }}\"\n title=\"{{ field.Title }}\">\n <span *ngIf=\"field.Mandatory\" class=\"mandatory\">\n <pep-icon name=\"system_must\"></pep-icon>\n </span>\n {{ field.Title != '' ? field.Title : ' '}}\n </label>\n\n <div *ngIf=\"supportResizing\" class=\"resize-box pull-right flip\"\n (mousedown)=\"onListResizeStart($event, field.ApiName)\">\n <div class=\"splitter\"></div>\n </div>\n\n <div *ngIf=\"supportSorting\" class=\"sorting-box pull-left flip\"\n [ngClass]=\"{ 'has-sorting': field.ApiName === sortBy }\">\n <mat-icon *ngIf=\"field.ApiName !== sortBy\">\n <pep-icon name=\"arrow_either\" class=\"asc\"></pep-icon>\n </mat-icon>\n <ng-container *ngIf=\"field.ApiName === sortBy\">\n <mat-icon *ngIf=\"!isAsc\" [ngClass]=\"{ 'sort-by': field.ApiName === sortBy && isAsc }\"\n title=\"{{ 'LIST.SORT_ASC' | translate }}\">\n <pep-icon name=\"arrow_up\" class=\"asc\"></pep-icon>\n </mat-icon>\n <mat-icon *ngIf=\"isAsc\" [ngClass]=\"{ 'sort-by': field.ApiName === sortBy && !isAsc }\"\n title=\"{{ 'LIST.SORT_DESC' | translate }}\">\n <pep-icon name=\"arrow_down\" class=\"desc\"></pep-icon>\n </mat-icon>\n </ng-container>\n </div>\n </div>\n </fieldset>\n </fieldset>\n </div>\n</ng-template>\n\n<ng-template #tableTotal>\n <div *ngIf=\"isTable && totalsRow?.length > 0 && totalsRow.length <= layout?.ControlFields.length\"\n class=\"table-total\">\n <fieldset class=\"table-header-fieldset\">\n <div *ngFor=\"let field of layout?.ControlFields; let j = index\" class=\"total-column pull-left flip\"\n [ngStyle]=\"{ width: field.calcTitleColumnWidthString }\">\n <label class=\"total-label body-sm text-align-{{ field.Layout.XAlignment }}\">\n {{ totalsRow[j] }}\n </label>\n </div>\n </fieldset>\n </div>\n</ng-template>",
|
|
2581
|
+
template: "<ng-container *ngIf=\"totalRows == 0\">\r\n <ng-container *ngIf=\"noDataFoundMsg; then noDataMsgInputBlock; else noDataMsgDefaultBlock\"></ng-container>\r\n <ng-template #noDataMsgInputBlock>\r\n <div class=\"pep-border-bottom\">\r\n <p class=\"title-xl no-data\">\r\n {{ noDataFoundMsg }}\r\n </p>\r\n </div>\r\n </ng-template>\r\n <ng-template #noDataMsgDefaultBlock>\r\n <div class=\"pep-border-bottom\">\r\n <p class=\"title-xl no-data\">\r\n {{ 'LIST.NO_DATA_FOUND' | translate}}\r\n </p>\r\n </div>\r\n <div class=\"no-data-suggestions\">\r\n <p class=\"suggestions-title title-lg\">\r\n {{ 'LIST.NO_DATA_FOUND_SUGGESTIONS_TITLE' | translate}}\r\n </p>\r\n <ul class=\"suggestions-list body-lg\" [innerHtml]=\"'LIST.NO_DATA_FOUND_SUGGESTIONS_LIST' | translate\"></ul>\r\n </div>\r\n </ng-template>\r\n</ng-container>\r\n<ng-container *ngIf=\"totalRows > 0\">\r\n <ng-container *ngTemplateOutlet=\"tableHeader\"></ng-container>\r\n\r\n <virtual-scroller #scroller [items]=\"pagerType === 'pages' ? currentPageItems : items\"\r\n [scrollDebounceTime]=\"scrollDebounceTime\" [scrollThrottlingTime]=\"scrollThrottlingTime\"\r\n [bufferAmount]=\"printMode ? totalRows : -1\" [parentScroll]=\"parentScroll\" [disable]=\"loadingItemsFromApi\"\r\n class=\"virtual-scroller\" [ngClass]=\"{ 'table-body': isTable, 'cards-body': !isTable }\"\r\n (vsChange)=\"onVirtualScrollerChange($event)\" (vsChildRectChange)=\"onChildRectChange($event)\">\r\n <ng-container *ngFor=\"let item of scroller.viewPortItems; let index; let isFirst = first;\">\r\n <ng-container *ngTemplateOutlet=\"listData; context: {item: item}\"></ng-container>\r\n </ng-container>\r\n </virtual-scroller>\r\n\r\n <pep-list-pager *ngIf=\"pagerType === 'pages'\" class=\" list-pager\" [disabled]=\"loadingItemsFromApi\"\r\n [length]=\"totalRows\" [pageSize]=\"pageSize\" [pageIndex]=\"pageIndex\" (pagerChange)=\"onPagerChange($event)\">\r\n </pep-list-pager>\r\n\r\n <ng-container *ngTemplateOutlet=\"tableTotal\"></ng-container>\r\n</ng-container>\r\n\r\n<ng-template #listData let-item=\"item\">\r\n <ng-container *ngIf=\"isTable\">\r\n <!-- getIsItemSelected(item) -> item | isItemSelected: selectionTypeForActions : selectedItemId : isAllSelected : selectedItems : unSelectedItems -->\r\n <div class=\"table-row\" (mouseenter)=\"onTableRowMouseEnter($event, item?.UID, item?.Type)\"\r\n (mouseleave)=\"onTableRowMouseLeave($event, item?.UID, item?.Type)\" [ngClass]=\"{\r\n selected: getIsItemSelected(item),\r\n highlighted: item?.UID + SEPARATOR + item?.Type === selectedItemId\r\n }\" [ngStyle]=\"{ visibility: !loadingItemsFromApi || item ? 'visible' : 'hidden' }\">\r\n <fieldset class=\"table-row-fieldset\" [ngStyle]=\"{ 'background-color': item?.BackgroundColor }\">\r\n <mat-checkbox *ngIf=\"selectionTypeForActions == 'multi'\" type=\"checkbox\"\r\n class=\"pull-left flip row-selection\"\r\n [disabled]=\"item | isItemDisabled: lockItemInnerEvents : printMode\" [ngStyle]=\"{\r\n visibility: !deviceHasMouse ||\r\n item?.UID + SEPARATOR + item?.Type === hoveredItemId || isAllSelected || selectedItems.size > 0 ? 'visible' : 'hidden'\r\n }\" [checked]=\"getIsItemSelected(item)\"\r\n (change)=\"selectItemForActions($event, item?.UID, item?.IsSelectableForActions, item?.Type)\">\r\n </mat-checkbox>\r\n <mat-radio-button *ngIf=\"selectionTypeForActions == 'single'\" name=\"selection\"\r\n class=\"pull-left flip row-selection pep-radio-button\"\r\n [disabled]=\"item | isItemDisabled: lockItemInnerEvents : printMode\"\r\n [checked]=\"getIsItemSelected(item)\"\r\n (change)=\"selectItemForActions($event, item?.UID, item?.IsSelectableForActions, item?.Type)\">\r\n </mat-radio-button>\r\n <pep-form [layoutType]=\"'table'\" [checkForChanges]=\"checkForChanges\" [layout]=\"layout\"\r\n [firstFieldAsLink]=\"firstFieldAsLink\" [data]=\"item\" [canEditObject]=\"!disabled\"\r\n [lockEvents]=\"lockItemInnerEvents || printMode\" [isReport]=\"isReport\" [isActive]=\"\r\n (item?.UID + SEPARATOR + item?.Type === selectedItemId ||\r\n item?.UID + SEPARATOR + item?.Type === hoveredItemId) && deviceHasMouse\r\n \" (valueChange)=\"onValueChanged($event)\" (fieldClick)=\"onCustomizeFieldClick($event)\"\r\n (click)=\"itemClicked($event, item)\">\r\n </pep-form>\r\n </fieldset>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"!isTable\">\r\n <div (mouseenter)=\"onCardMouseEnter($event, item?.UID, item?.Type)\"\r\n (mouseleave)=\"onCardMouseLeave($event, item?.UID, item?.Type)\" [ngClass]=\"{\r\n selected: getIsItemSelected(item),\r\n highlighted: item?.UID + SEPARATOR + item?.Type === selectedItemId,\r\n 'line-view': viewType === 'lines',\r\n 'card-view': viewType === 'cards',\r\n 'small-card': cardSize === 'sm'\r\n }\" class=\"pull-left flip\"\r\n [ngStyle]=\"{ height: calculatedObjectHeight, visibility: !loadingItemsFromApi || item ? 'visible' : 'hidden' }\">\r\n <mat-checkbox *ngIf=\"showCardSelection\" class=\"pull-left flip card-selection\"\r\n [disabled]=\"item | isItemDisabled: lockItemInnerEvents : printMode\" [checked]=\"getIsItemSelected(item)\"\r\n (change)=\"selectItemForActions($event, item?.UID, item?.IsSelectableForActions, item?.Type)\">\r\n </mat-checkbox>\r\n <pep-form [layoutType]=\"'card'\" [firstFieldAsLink]=\"firstFieldAsLink\" [checkForChanges]=\"checkForChanges\"\r\n [layout]=\"layout\" [data]=\"item\" [canEditObject]=\"!disabled\"\r\n [lockEvents]=\"lockItemInnerEvents || printMode\" [isActive]=\"\r\n (item?.UID + SEPARATOR + item?.Type === selectedItemId ||\r\n item?.UID + SEPARATOR + item?.Type === hoveredItemId) && deviceHasMouse\r\n \" (valueChange)=\"onValueChanged($event)\" (fieldClick)=\"onCustomizeFieldClick($event)\"\r\n (click)=\"itemClicked($event, item)\">\r\n </pep-form>\r\n </div>\r\n </ng-container>\r\n</ng-template>\r\n\r\n<ng-template #tableHeader>\r\n <div *ngIf=\"isTable\" class=\"table-header\" (mouseup)=\"onListResizeEnd($event)\"\r\n (mouseenter)=\"onListHeaderMouseEnter($event)\" (mouseleave)=\"onListHeaderMouseLeave($event)\"\r\n (mousemove)=\"onListResize($event)\">\r\n\r\n <div class=\"table-header-padding-top\"></div>\r\n <fieldset class=\"table-header-fieldset\">\r\n <mat-checkbox *ngIf=\"selectionTypeForActions !== 'none'\" #selectAllCB class=\"pull-left flip row-selection\"\r\n type=\"checkbox\" [ngStyle]=\"{\r\n visibility:\r\n selectionTypeForActions == 'single' || \r\n (selectionTypeForActions == 'multi' && hideAllSelectionInMulti) ? 'hidden' : 'visible'\r\n }\"\r\n [indeterminate]=\"isAllSelected ? unSelectedItems.size > 0 && unSelectedItems.size < totalRows : (selectedItems.size > 0 && !getIsAllSelectedForActions())\"\r\n [disabled]=\"disabled || selectionTypeForActions === 'single'\" [checked]=\"getIsAllSelectedForActions()\"\r\n (change)=\"selectAllItemsForActions($event)\"></mat-checkbox>\r\n <fieldset>\r\n <div *ngFor=\"let field of layout?.ControlFields; let j = index\" class=\"header-column pull-left flip\"\r\n [ngStyle]=\"{ width: field.calcTitleColumnWidthString }\" [ngClass]=\"{\r\n 'support-sorting': supportSorting,\r\n 'has-sorting': field.ApiName === sortBy,\r\n 'is-resizing': field.ApiName === pressedColumn,\r\n 'is-first': j === 0 && selectionTypeForActions !== 'multi',\r\n 'is-last': j === layout?.ControlFields?.length - 1\r\n }\"\r\n (click)=\"supportSorting ? (onListSortingChange(field.ApiName, sortBy !== null && sortBy != field.ApiName ? true : !isAsc, $event)) : false\">\r\n\r\n <label id=\"{{ field.ApiName }}\"\r\n class=\"header-label body-sm pull-left flip text-align-{{ field.Layout.XAlignment }}\"\r\n title=\"{{ field.Title }}\">\r\n <span *ngIf=\"field.Mandatory\" class=\"mandatory\">\r\n <pep-icon name=\"system_must\"></pep-icon>\r\n </span>\r\n {{ field.Title != '' ? field.Title : ' '}}\r\n </label>\r\n\r\n <div *ngIf=\"supportResizing\" class=\"resize-box pull-right flip\"\r\n (mousedown)=\"onListResizeStart($event, field.ApiName)\">\r\n <div class=\"splitter\"></div>\r\n </div>\r\n\r\n <div *ngIf=\"supportSorting\" class=\"sorting-box pull-left flip\"\r\n [ngClass]=\"{ 'has-sorting': field.ApiName === sortBy }\">\r\n <mat-icon *ngIf=\"field.ApiName !== sortBy\">\r\n <pep-icon name=\"arrow_either\" class=\"asc\"></pep-icon>\r\n </mat-icon>\r\n <ng-container *ngIf=\"field.ApiName === sortBy\">\r\n <mat-icon *ngIf=\"!isAsc\" [ngClass]=\"{ 'sort-by': field.ApiName === sortBy && isAsc }\"\r\n title=\"{{ 'LIST.SORT_ASC' | translate }}\">\r\n <pep-icon name=\"arrow_up\" class=\"asc\"></pep-icon>\r\n </mat-icon>\r\n <mat-icon *ngIf=\"isAsc\" [ngClass]=\"{ 'sort-by': field.ApiName === sortBy && !isAsc }\"\r\n title=\"{{ 'LIST.SORT_DESC' | translate }}\">\r\n <pep-icon name=\"arrow_down\" class=\"desc\"></pep-icon>\r\n </mat-icon>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </fieldset>\r\n </fieldset>\r\n </div>\r\n</ng-template>\r\n\r\n<ng-template #tableTotal>\r\n <div *ngIf=\"isTable && totalsRow?.length > 0 && totalsRow.length <= layout?.ControlFields.length\"\r\n class=\"table-total\">\r\n <fieldset class=\"table-header-fieldset\">\r\n <div *ngFor=\"let field of layout?.ControlFields; let j = index\" class=\"total-column pull-left flip\"\r\n [ngStyle]=\"{ width: field.calcTitleColumnWidthString }\">\r\n <label class=\"total-label body-sm text-align-{{ field.Layout.XAlignment }}\">\r\n {{ totalsRow[j] }}\r\n </label>\r\n </div>\r\n </fieldset>\r\n </div>\r\n</ng-template>",
|
|
2582
2582
|
host: {
|
|
2583
2583
|
'(window:resize)': 'onWinResize($event)',
|
|
2584
2584
|
},
|
|
@@ -2653,7 +2653,7 @@
|
|
|
2653
2653
|
PepListActionsComponent.decorators = [
|
|
2654
2654
|
{ type: core.Component, args: [{
|
|
2655
2655
|
selector: 'pep-list-actions',
|
|
2656
|
-
template: "<pep-menu [xPosition]=\"xPosition\" [styleType]=\"'strong'\" [sizeType]=\"sizeType\" [items]=\"!hidden ? actions : null\"\n [hideOnEmptyItems]=\"true\" [iconName]=\"'system_edit'\" (menuItemClick)=\"onActionClicked($event)\"\n (stateChange)=\"onStateChanged($event)\" (menuClick)=\"menuClick.emit();\">\n</pep-menu>\n",
|
|
2656
|
+
template: "<pep-menu [xPosition]=\"xPosition\" [styleType]=\"'strong'\" [sizeType]=\"sizeType\" [items]=\"!hidden ? actions : null\"\r\n [hideOnEmptyItems]=\"true\" [iconName]=\"'system_edit'\" (menuItemClick)=\"onActionClicked($event)\"\r\n (stateChange)=\"onStateChanged($event)\" (menuClick)=\"menuClick.emit();\">\r\n</pep-menu>\r\n",
|
|
2657
2657
|
styles: [""]
|
|
2658
2658
|
},] },
|
|
2659
2659
|
{ type: core.Injectable }
|
|
@@ -2750,7 +2750,7 @@
|
|
|
2750
2750
|
PepListCarouselComponent.decorators = [
|
|
2751
2751
|
{ type: core.Component, args: [{
|
|
2752
2752
|
selector: 'pep-list-carousel',
|
|
2753
|
-
template: "<div class=\"carousel-container\">\n <ng-container *ngIf=\"items?.length > 0; then carouselBlock; else emptyBlock\"></ng-container>\n <ng-template #emptyBlock>\n <!-- No items -->\n </ng-template>\n <ng-template #carouselBlock>\n <pep-button *ngIf=\"!(hideArrowsInSmallScreen && screenSize > PepScreenSizeType.SM)\"\n [iconName]=\"'arrow_left_alt'\" [styleType]=\"'regular'\" [disabled]=\"prevDisabled\" (click)=\"moveLeft()\"\n class=\"carousel-arrow start-arrow\">\n </pep-button>\n <pep-carousel #carousel [xWheelEnabled]=\"false\" [snapDuration]=\"duration\"\n (reachesLeftBound)=\"onReachesLeftBound($event)\" (reachesRightBound)=\"onReachesRightBound($event)\">\n <ng-container *ngFor=\"let item of items\">\n <pep-form pepCarouselItem [layout]=\"layout\" [data]=\"item\" [layoutType]=\"'card'\"\n (click)=\"itemClicked(item)\" class=\"card-view \" [lockEvents]=\"lockItemInnerEvents\"\n [ngClass]=\"{ 'x-small-card': itemSize === 'xs', 'small-card': itemSize === 'sm'}\">\n </pep-form>\n </ng-container>\n </pep-carousel>\n <pep-button *ngIf=\"!(hideArrowsInSmallScreen && screenSize > PepScreenSizeType.SM)\"\n [iconName]=\"'arrow_right_alt'\" [styleType]=\"'regular'\" [disabled]=\"nextDisabled\" (click)=\"moveRight()\"\n class=\"carousel-arrow end-arrow\">\n </pep-button>\n </ng-template>\n</div>",
|
|
2753
|
+
template: "<div class=\"carousel-container\">\r\n <ng-container *ngIf=\"items?.length > 0; then carouselBlock; else emptyBlock\"></ng-container>\r\n <ng-template #emptyBlock>\r\n <!-- No items -->\r\n </ng-template>\r\n <ng-template #carouselBlock>\r\n <pep-button *ngIf=\"!(hideArrowsInSmallScreen && screenSize > PepScreenSizeType.SM)\"\r\n [iconName]=\"'arrow_left_alt'\" [styleType]=\"'regular'\" [disabled]=\"prevDisabled\" (click)=\"moveLeft()\"\r\n class=\"carousel-arrow start-arrow\">\r\n </pep-button>\r\n <pep-carousel #carousel [xWheelEnabled]=\"false\" [snapDuration]=\"duration\"\r\n (reachesLeftBound)=\"onReachesLeftBound($event)\" (reachesRightBound)=\"onReachesRightBound($event)\">\r\n <ng-container *ngFor=\"let item of items\">\r\n <pep-form pepCarouselItem [layout]=\"layout\" [data]=\"item\" [layoutType]=\"'card'\"\r\n (click)=\"itemClicked(item)\" class=\"card-view \" [lockEvents]=\"lockItemInnerEvents\"\r\n [ngClass]=\"{ 'x-small-card': itemSize === 'xs', 'small-card': itemSize === 'sm'}\">\r\n </pep-form>\r\n </ng-container>\r\n </pep-carousel>\r\n <pep-button *ngIf=\"!(hideArrowsInSmallScreen && screenSize > PepScreenSizeType.SM)\"\r\n [iconName]=\"'arrow_right_alt'\" [styleType]=\"'regular'\" [disabled]=\"nextDisabled\" (click)=\"moveRight()\"\r\n class=\"carousel-arrow end-arrow\">\r\n </pep-button>\r\n </ng-template>\r\n</div>",
|
|
2754
2754
|
styles: [".carousel-container{position:relative;margin:0 calc(.5rem * -1);margin:0 calc(var(--pep-spacing-sm, .5rem) * -1);display:grid}.carousel-container .carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:1}.carousel-container .carousel-arrow.start-arrow{left:0}.carousel-container .carousel-arrow.end-arrow{right:0}.carousel-container ::ng-deep.carousel-content .card-view{padding:.5rem 0!important;padding:var(--pep-spacing-sm,.5rem) 0!important}.carousel-container ::ng-deep.carousel-content .card-view:first-child{-webkit-padding-start:.5rem!important;padding-inline-start:.5rem!important;-webkit-padding-start:var(--pep-spacing-sm,.5rem)!important;padding-inline-start:var(--pep-spacing-sm,.5rem)!important}.carousel-container ::ng-deep.carousel-content .card-view:last-child{-webkit-padding-end:.5rem!important;padding-inline-end:.5rem!important;-webkit-padding-end:var(--pep-spacing-sm,.5rem)!important;padding-inline-end:var(--pep-spacing-sm,.5rem)!important}"]
|
|
2755
2755
|
},] },
|
|
2756
2756
|
{ type: core.Injectable }
|
|
@@ -2826,7 +2826,7 @@
|
|
|
2826
2826
|
PepListChooserComponent.decorators = [
|
|
2827
2827
|
{ type: core.Component, args: [{
|
|
2828
2828
|
selector: 'pep-list-chooser',
|
|
2829
|
-
template: "<ng-container *ngIf=\"menuItems?.length > 1\">\n <pep-menu [type]=\"'select'\" [sizeType]=\"sizeType\" [items]=\"menuItems\" [selectedItem]=\"currentItem\"\n [iconName]=\"'arrow_down'\" (menuItemClick)=\"onMenuItemClicked($event)\"></pep-menu>\n</ng-container>\n<ng-container *ngIf=\"menuItems?.length == 1\">\n <pep-bread-crumbs [items]=\"breadCrumbsItems\" [addSpacing]=\"true\"></pep-bread-crumbs>\n</ng-container>",
|
|
2829
|
+
template: "<ng-container *ngIf=\"menuItems?.length > 1\">\r\n <pep-menu [type]=\"'select'\" [sizeType]=\"sizeType\" [items]=\"menuItems\" [selectedItem]=\"currentItem\"\r\n [iconName]=\"'arrow_down'\" (menuItemClick)=\"onMenuItemClicked($event)\"></pep-menu>\r\n</ng-container>\r\n<ng-container *ngIf=\"menuItems?.length == 1\">\r\n <pep-bread-crumbs [items]=\"breadCrumbsItems\" [addSpacing]=\"true\"></pep-bread-crumbs>\r\n</ng-container>",
|
|
2830
2830
|
styles: [""]
|
|
2831
2831
|
},] },
|
|
2832
2832
|
{ type: core.Injectable }
|
|
@@ -2938,7 +2938,7 @@
|
|
|
2938
2938
|
PepListPagerComponent.decorators = [
|
|
2939
2939
|
{ type: core.Component, args: [{
|
|
2940
2940
|
selector: 'pep-list-pager',
|
|
2941
|
-
template: "<div class=\"pager-container body-sm\">\n <span class=\"pep-spacing-element\">{{ 'LIST.PAGER_PAGE' | translate }}</span>\n <pep-textbox pepAutoWidth class=\"page-index pep-spacing-element\" [key]=\"'pageIndex'\" [type]=\"'int'\"\n [disabled]=\"disabled\" [xAlignment]=\"'center'\" [renderTitle]=\"false\" [renderError]=\"false\" [renderSymbol]=\"false\"\n [value]=\"pageIndex + 1\" [formattedValue]=\"pageIndex + 1\" [minValue]=\"1\" [maxValue]=\"this.getNumberOfPages()\"\n [maxFieldCharacters]=\"6\" [mandatory]=\"true\" (valueChange)=\"onValueChange($event)\">\n </pep-textbox>\n <span class=\"pep-spacing-element\">{{ 'LIST.PAGER_OUT_OF' | translate }}</span>\n <span class=\"pep-spacing-element\">{{ getNumberOfPages() }}</span>\n <button mat-button [disabled]=\"disabled || _previousButtonsDisabled()\"\n [ngClass]=\"{ disabled: disabled || _previousButtonsDisabled() }\"\n class=\"pep-button icon-button pep-spacing-element sm weak\" pepRtlDirection pepMenuBlur (click)=\"previousPage()\"\n [title]=\"('LIST.PAGER_PREVIOUS' | translate)\">\n <mat-icon>\n <pep-icon [name]=\"layoutService.isRtl() ? 'arrow_right' : 'arrow_left'\"></pep-icon>\n </mat-icon>\n </button>\n <button mat-button [disabled]=\"disabled || _nextButtonsDisabled()\"\n [ngClass]=\"{ disabled: disabled || _nextButtonsDisabled() }\"\n class=\"pep-button icon-button pep-spacing-element sm weak\" pepRtlDirection pepMenuBlur (click)=\"nextPage()\"\n [title]=\"('LIST.PAGER_NEXT' | translate)\">\n <mat-icon>\n <pep-icon [name]=\"layoutService.isRtl() ? 'arrow_left' : 'arrow_right'\"></pep-icon>\n </mat-icon>\n </button>\n</div>",
|
|
2941
|
+
template: "<div class=\"pager-container body-sm\">\r\n <span class=\"pep-spacing-element\">{{ 'LIST.PAGER_PAGE' | translate }}</span>\r\n <pep-textbox pepAutoWidth class=\"page-index pep-spacing-element\" [key]=\"'pageIndex'\" [type]=\"'int'\"\r\n [disabled]=\"disabled\" [xAlignment]=\"'center'\" [renderTitle]=\"false\" [renderError]=\"false\" [renderSymbol]=\"false\"\r\n [value]=\"pageIndex + 1\" [formattedValue]=\"pageIndex + 1\" [minValue]=\"1\" [maxValue]=\"this.getNumberOfPages()\"\r\n [maxFieldCharacters]=\"6\" [mandatory]=\"true\" (valueChange)=\"onValueChange($event)\">\r\n </pep-textbox>\r\n <span class=\"pep-spacing-element\">{{ 'LIST.PAGER_OUT_OF' | translate }}</span>\r\n <span class=\"pep-spacing-element\">{{ getNumberOfPages() }}</span>\r\n <button mat-button [disabled]=\"disabled || _previousButtonsDisabled()\"\r\n [ngClass]=\"{ disabled: disabled || _previousButtonsDisabled() }\"\r\n class=\"pep-button icon-button pep-spacing-element sm weak\" pepRtlDirection pepMenuBlur (click)=\"previousPage()\"\r\n [title]=\"('LIST.PAGER_PREVIOUS' | translate)\">\r\n <mat-icon>\r\n <pep-icon [name]=\"layoutService.isRtl() ? 'arrow_right' : 'arrow_left'\"></pep-icon>\r\n </mat-icon>\r\n </button>\r\n <button mat-button [disabled]=\"disabled || _nextButtonsDisabled()\"\r\n [ngClass]=\"{ disabled: disabled || _nextButtonsDisabled() }\"\r\n class=\"pep-button icon-button pep-spacing-element sm weak\" pepRtlDirection pepMenuBlur (click)=\"nextPage()\"\r\n [title]=\"('LIST.PAGER_NEXT' | translate)\">\r\n <mat-icon>\r\n <pep-icon [name]=\"layoutService.isRtl() ? 'arrow_left' : 'arrow_right'\"></pep-icon>\r\n </mat-icon>\r\n </button>\r\n</div>",
|
|
2942
2942
|
styles: [".pager-container{display:flex;justify-content:center;align-items:center;height:calc(2rem + calc(.5rem * 2));height:calc(2rem + calc(var(--pep-spacing-sm, .5rem) * 2));padding:.5rem;padding:var(--pep-spacing-sm,.5rem)}.pager-container .page-index{min-height:unset;margin-bottom:0}.pager-container .page-index ::ng-deep .mat-form-field-flex{padding:0 .5rem;min-height:2rem}.pager-container .page-index ::ng-deep .mat-form-field-flex .mat-input-element{min-width:1.25rem}"]
|
|
2943
2943
|
},] },
|
|
2944
2944
|
{ type: core.Injectable }
|
|
@@ -3009,7 +3009,7 @@
|
|
|
3009
3009
|
PepListSortingComponent.decorators = [
|
|
3010
3010
|
{ type: core.Component, args: [{
|
|
3011
3011
|
selector: 'pep-list-sorting',
|
|
3012
|
-
template: "<div class=\"sorting-container\">\n <div class=\"body-xs sort-by\">\n <span>{{ 'LIST.SORT_BY' | translate }}</span>\n </div>\n <pep-menu [type]=\"'select'\" [sizeType]=\"sizeType\" [items]=\"menuItems\" [selectedItem]=\"currentItem\"\n [iconName]=\"'arrow_down'\" (menuItemClick)=\"onMenuItemClicked($event)\"></pep-menu>\n</div>",
|
|
3012
|
+
template: "<div class=\"sorting-container\">\r\n <div class=\"body-xs sort-by\">\r\n <span>{{ 'LIST.SORT_BY' | translate }}</span>\r\n </div>\r\n <pep-menu [type]=\"'select'\" [sizeType]=\"sizeType\" [items]=\"menuItems\" [selectedItem]=\"currentItem\"\r\n [iconName]=\"'arrow_down'\" (menuItemClick)=\"onMenuItemClicked($event)\"></pep-menu>\r\n</div>",
|
|
3013
3013
|
styles: [".sorting-container{display:flex;align-items:center}.sorting-container .sort-by{-webkit-margin-end:.5rem;margin-inline-end:.5rem;-webkit-margin-end:var(--pep-spacing-sm,.5rem);margin-inline-end:var(--pep-spacing-sm,.5rem)}"]
|
|
3014
3014
|
},] },
|
|
3015
3015
|
{ type: core.Injectable }
|
|
@@ -3033,8 +3033,8 @@
|
|
|
3033
3033
|
PepListTotalComponent.decorators = [
|
|
3034
3034
|
{ type: core.Component, args: [{
|
|
3035
3035
|
selector: 'pep-list-total',
|
|
3036
|
-
template: "<div class=\"total-items-container\">\n <ng-container *ngIf=\"isMapView; then mapTemplate; else notMapTemplate\"></ng-container>\n\n <ng-template #notMapTemplate>\n <ng-container *ngIf=\"totalRows >= 0\">\n <div class=\"body-{{sizeType}} total-items\"\n [innerHtml]=\"(totalRows === 1 ? 'LIST.TOTAL_RESULT' : 'LIST.TOTAL_RESULTS') | translate: { totalRows: totalRows }\">\n </div>\n </ng-container>\n <ng-container *ngIf=\"totalAmount > 0\"> {{ 'LIST.TOTAL_OF' | translate }} {{ totalAmount }} </ng-container>\n </ng-template>\n\n <ng-template #mapTemplate>\n <ng-container *ngIf=\"totalAmount >= 0\">\n </ng-container>\n <ng-container *ngIf=\"totalRows >= 0\">\n <div class=\"body-{{sizeType}} total-items\"\n [innerHtml]=\"(totalRows === 1 ? 'LIST.TOTAL_RESULT_OUT_OF_RESULT' : 'LIST.TOTAL_RESULTS_OUT_OF') | translate: { xRows: totalAmount, totalRows: totalRows }\">\n </div>\n </ng-container>\n </ng-template>\n</div>",
|
|
3037
|
-
styles: [".total-items-container{height:calc(.5rem + 2.5rem);height:calc(var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));display:flex;align-items:center}"]
|
|
3036
|
+
template: "<div class=\"total-items-container\">\r\n <ng-container *ngIf=\"isMapView; then mapTemplate; else notMapTemplate\"></ng-container>\r\n\r\n <ng-template #notMapTemplate>\r\n <ng-container *ngIf=\"totalRows >= 0\">\r\n <div class=\"body-{{sizeType}} total-items\"\r\n [innerHtml]=\"(totalRows === 1 ? 'LIST.TOTAL_RESULT' : 'LIST.TOTAL_RESULTS') | translate: { totalRows: totalRows }\">\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"totalAmount > 0\"> {{ 'LIST.TOTAL_OF' | translate }} {{ totalAmount }} </ng-container>\r\n </ng-template>\r\n\r\n <ng-template #mapTemplate>\r\n <ng-container *ngIf=\"totalAmount >= 0\">\r\n </ng-container>\r\n <ng-container *ngIf=\"totalRows >= 0\">\r\n <div class=\"body-{{sizeType}} total-items\"\r\n [innerHtml]=\"(totalRows === 1 ? 'LIST.TOTAL_RESULT_OUT_OF_RESULT' : 'LIST.TOTAL_RESULTS_OUT_OF') | translate: { xRows: totalAmount, totalRows: totalRows }\">\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n</div>",
|
|
3037
|
+
styles: [".total-items-container{height:calc(.5rem + 2.5rem);height:calc(var(--pep-top-bar-spacing-bottom, .5rem) + var(--pep-top-bar-field-height, 2.5rem));display:flex;align-items:center}", ".total-items{color:rgba(26,26,26,.7);color:hsla(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%),.7)}.total-items .number{color:#1a1a1a;color:hsl(var(--pep-color-system-primary-h,0),var(--pep-color-system-primary-s,0%),var(--pep-color-system-primary-l,10%))}"]
|
|
3038
3038
|
},] },
|
|
3039
3039
|
{ type: core.Injectable }
|
|
3040
3040
|
];
|
|
@@ -3113,7 +3113,7 @@
|
|
|
3113
3113
|
PepListViewsComponent.decorators = [
|
|
3114
3114
|
{ type: core.Component, args: [{
|
|
3115
3115
|
selector: 'pep-list-views',
|
|
3116
|
-
template: "<ng-container *ngIf=\"displayType === 'menu' then menuTemplate else buttonsTemplate\">\n</ng-container>\n<ng-template #menuTemplate>\n <pep-menu [type]=\"'select'\" [styleType]=\"styleType\" [sizeType]=\"sizeType\" [classNames]=\"classNames\"\n [items]=\"menuItems\" [selectedItem]=\"currentItem\"\n [iconName]=\"currentItem?.iconName ? currentItem?.iconName : 'arrow_down'\"\n (menuItemClick)=\"onMenuItemClicked($event)\"></pep-menu>\n</ng-template>\n<ng-template #buttonsTemplate>\n <div class=\"buttons-wrapper pep-spacing-element-negative\">\n <button *ngFor=\"let view of views\" mat-button [title]=\"view.title\" [disabled]=\"view.key === currentView?.key\"\n class=\"pep-button icon-button pep-spacing-element {{ sizeType }} {{ styleType }} {{ classNames }}\"\n pepRtlDirection pepMenuBlur (click)=\"onViewChanged(view)\">\n <mat-icon>\n <pep-icon name=\"{{ view?.iconName }}\"></pep-icon>\n </mat-icon>\n </button>\n </div>\n</ng-template>",
|
|
3116
|
+
template: "<ng-container *ngIf=\"displayType === 'menu' then menuTemplate else buttonsTemplate\">\r\n</ng-container>\r\n<ng-template #menuTemplate>\r\n <pep-menu [type]=\"'select'\" [styleType]=\"styleType\" [sizeType]=\"sizeType\" [classNames]=\"classNames\"\r\n [items]=\"menuItems\" [selectedItem]=\"currentItem\"\r\n [iconName]=\"currentItem?.iconName ? currentItem?.iconName : 'arrow_down'\"\r\n (menuItemClick)=\"onMenuItemClicked($event)\"></pep-menu>\r\n</ng-template>\r\n<ng-template #buttonsTemplate>\r\n <div class=\"buttons-wrapper pep-spacing-element-negative\">\r\n <button *ngFor=\"let view of views\" mat-button [title]=\"view.title\" [disabled]=\"view.key === currentView?.key\"\r\n class=\"pep-button icon-button pep-spacing-element {{ sizeType }} {{ styleType }} {{ classNames }}\"\r\n pepRtlDirection pepMenuBlur (click)=\"onViewChanged(view)\">\r\n <mat-icon>\r\n <pep-icon name=\"{{ view?.iconName }}\"></pep-icon>\r\n </mat-icon>\r\n </button>\r\n </div>\r\n</ng-template>",
|
|
3117
3117
|
styles: [".buttons-wrapper{display:flex}"]
|
|
3118
3118
|
},] },
|
|
3119
3119
|
{ type: core.Injectable }
|