@pepperi-addons/ngx-lib 0.4.2-scroll.7 → 0.5.0-ng15.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/address/address.component.d.ts +1 -1
- package/attachment/attachment.component.d.ts +2 -1
- package/bread-crumbs/bread-crumbs.component.d.ts +1 -1
- package/bread-crumbs/bread-crumbs.model.d.ts +1 -1
- package/button/button.component.d.ts +1 -1
- package/carousel/carousel-item.directive.d.ts +1 -1
- package/carousel/carousel.component.d.ts +1 -1
- package/checkbox/checkbox.component.d.ts +2 -1
- package/chips/chips.component.d.ts +4 -5
- package/chips/chips.component.theme.scss +15 -5
- package/chips/chips.model.d.ts +2 -2
- package/chips/chips.service.d.ts +0 -3
- package/color/color-picker.component.d.ts +1 -1
- package/color/color-picker.component.theme.scss +2 -1
- package/color/color.component.d.ts +1 -1
- package/color/color.model.d.ts +1 -1
- package/core/clipboard/clipboard.directive.d.ts +1 -1
- package/core/common/directives/auto-width.directive.d.ts +1 -1
- package/core/common/directives/base-destroyer.directive.d.ts +10 -0
- package/core/common/directives/button-blur.directive.d.ts +1 -1
- package/core/common/directives/button-loader.directive.d.ts +1 -1
- package/core/common/directives/data-qa.directive.d.ts +1 -1
- package/core/common/directives/div-loader.directive.d.ts +1 -1
- package/core/common/directives/menu-blur.directive.d.ts +1 -1
- package/core/common/directives/prevent-multi-click.directive.d.ts +1 -1
- package/core/common/directives/print.directive.d.ts +1 -1
- package/core/common/directives/public-api.d.ts +1 -0
- package/core/common/pipes/common-pipes.d.ts +2 -2
- package/core/common/services/addon.service.d.ts +6 -4
- package/core/common/services/file.service.d.ts +1 -1
- package/core/common/services/utilities.service.d.ts +4 -4
- package/core/customization/customization.model.d.ts +15 -12
- package/core/customization/customization.service.d.ts +4 -0
- package/core/layout/layout.service.d.ts +1 -1
- package/core/layout/rtl.directive.d.ts +2 -2
- package/core/portal/attach.directive.d.ts +1 -1
- package/core/portal/target.directive.d.ts +1 -1
- package/date/date.component.d.ts +4 -2
- package/dialog/default-dialog.component.d.ts +1 -1
- package/dialog/dialog.component.d.ts +1 -1
- package/dialog/dialog.model.d.ts +2 -2
- package/draggable-items/draggable-item/draggable-item.component.d.ts +16 -2
- package/draggable-items/draggable-items.component.d.ts +4 -7
- package/draggable-items/draggable-items.model.d.ts +2 -2
- package/draggable-items/draggable-items.module.d.ts +4 -3
- package/esm2020/address/address.component.mjs +16 -16
- package/esm2020/address/address.module.mjs +5 -5
- package/esm2020/attachment/attachment.component.mjs +58 -49
- package/esm2020/attachment/attachment.module.mjs +5 -5
- package/esm2020/bread-crumbs/bread-crumbs.component.mjs +15 -15
- package/esm2020/bread-crumbs/bread-crumbs.module.mjs +5 -5
- package/esm2020/button/button.component.mjs +23 -23
- package/esm2020/button/button.module.mjs +5 -5
- package/esm2020/carousel/carousel-item.directive.mjs +9 -9
- package/esm2020/carousel/carousel.component.mjs +52 -52
- package/esm2020/carousel/carousel.module.mjs +5 -5
- package/esm2020/checkbox/checkbox.component.mjs +40 -31
- package/esm2020/checkbox/checkbox.module.mjs +5 -5
- package/esm2020/chips/chips.component.mjs +26 -28
- package/esm2020/chips/chips.module.mjs +5 -5
- package/esm2020/chips/chips.service.mjs +5 -14
- package/esm2020/color/color-picker.component.mjs +5 -5
- package/esm2020/color/color.component.mjs +4 -4
- package/esm2020/color/color.module.mjs +5 -5
- package/esm2020/core/clipboard/clipboard.directive.mjs +4 -4
- package/esm2020/core/clipboard/clipboard.service.mjs +4 -4
- package/esm2020/core/common/directives/auto-width.directive.mjs +4 -4
- package/esm2020/core/common/directives/base-destroyer.directive.mjs +22 -0
- package/esm2020/core/common/directives/button-blur.directive.mjs +4 -4
- package/esm2020/core/common/directives/button-loader.directive.mjs +10 -10
- package/esm2020/core/common/directives/data-qa.directive.mjs +4 -4
- package/esm2020/core/common/directives/div-loader.directive.mjs +4 -4
- package/esm2020/core/common/directives/menu-blur.directive.mjs +4 -4
- package/esm2020/core/common/directives/prevent-multi-click.directive.mjs +4 -4
- package/esm2020/core/common/directives/print.directive.mjs +4 -4
- package/esm2020/core/common/directives/public-api.mjs +2 -1
- package/esm2020/core/common/pipes/common-pipes.mjs +35 -35
- package/esm2020/core/common/pipes/date-ago.pipe.mjs +4 -4
- package/esm2020/core/common/services/addon.service.mjs +36 -12
- package/esm2020/core/common/services/color.service.mjs +4 -4
- package/esm2020/core/common/services/cookie.service.mjs +4 -4
- package/esm2020/core/common/services/data-convertor.service.mjs +6 -6
- package/esm2020/core/common/services/file.service.mjs +4 -4
- package/esm2020/core/common/services/jwt-helper.service.mjs +4 -4
- package/esm2020/core/common/services/session.service.mjs +4 -4
- package/esm2020/core/common/services/translate.service.mjs +4 -4
- package/esm2020/core/common/services/utilities.service.mjs +10 -10
- package/esm2020/core/common/services/validator.service.mjs +4 -4
- package/esm2020/core/common/services/window-scrolling.service.mjs +4 -4
- package/esm2020/core/customization/customization.model.mjs +40 -11
- package/esm2020/core/customization/customization.service.mjs +22 -4
- package/esm2020/core/http/interceptors/error.interceptor.mjs +4 -4
- package/esm2020/core/http/interceptors/loader.interceptor.mjs +4 -4
- package/esm2020/core/http/interceptors/profiler.interceptor.mjs +4 -4
- package/esm2020/core/http/services/http.service.mjs +4 -4
- package/esm2020/core/http/services/loader.service.mjs +9 -9
- package/esm2020/core/layout/layout.service.mjs +12 -12
- package/esm2020/core/layout/rtl.directive.mjs +7 -7
- package/esm2020/core/portal/attach.directive.mjs +4 -4
- package/esm2020/core/portal/portal.service.mjs +4 -4
- package/esm2020/core/portal/target.directive.mjs +4 -4
- package/esm2020/core/scroll-to/scroll-to.service.mjs +4 -4
- package/esm2020/date/date.component.mjs +81 -59
- package/esm2020/date/date.model.mjs +7 -7
- package/esm2020/date/date.module.mjs +5 -5
- package/esm2020/dialog/default-dialog.component.mjs +4 -4
- package/esm2020/dialog/dialog.component.mjs +4 -4
- package/esm2020/dialog/dialog.module.mjs +5 -5
- package/esm2020/dialog/dialog.service.mjs +4 -4
- package/esm2020/draggable-items/draggable-item/draggable-item.component.mjs +46 -6
- package/esm2020/draggable-items/draggable-items.component.mjs +21 -29
- package/esm2020/draggable-items/draggable-items.module.mjs +9 -5
- package/esm2020/field-title/field-title.component.mjs +8 -5
- package/esm2020/field-title/field-title.module.mjs +5 -5
- package/esm2020/files-uploader/files-uploader.component.mjs +12 -12
- package/esm2020/files-uploader/files-uploader.module.mjs +5 -5
- package/esm2020/form/field-generator.component.mjs +5 -5
- package/esm2020/form/form.component.mjs +29 -27
- package/esm2020/form/form.module.mjs +5 -5
- package/esm2020/form/indicators.component.mjs +4 -4
- package/esm2020/form/internal-button.component.mjs +17 -17
- package/esm2020/form/internal-carusel.component.mjs +18 -18
- package/esm2020/form/internal-carusel.service.mjs +4 -4
- package/esm2020/form/internal-field-generator.component.mjs +5 -5
- package/esm2020/form/internal-form.component.mjs +29 -27
- package/esm2020/form/internal-list.component.mjs +7 -7
- package/esm2020/form/internal-menu.component.mjs +4 -4
- package/esm2020/form/internal-page.component.mjs +4 -4
- package/esm2020/form/internal-page.service.mjs +4 -4
- package/esm2020/group-buttons/group-buttons.component.mjs +5 -5
- package/esm2020/group-buttons/group-buttons.module.mjs +5 -5
- package/esm2020/icon/icon-registry.service.mjs +4 -4
- package/esm2020/icon/icon.component.mjs +11 -11
- package/esm2020/icon/icon.module.mjs +5 -5
- package/esm2020/icon/icon.service.mjs +4 -4
- package/esm2020/image/image.component.mjs +52 -43
- package/esm2020/image/image.module.mjs +5 -5
- package/esm2020/image/image.service.mjs +4 -4
- package/esm2020/images-filmstrip/images-filmstrip.component.mjs +26 -25
- package/esm2020/images-filmstrip/images-filmstrip.module.mjs +5 -5
- package/esm2020/link/link.component.mjs +59 -50
- package/esm2020/link/link.module.mjs +5 -5
- package/esm2020/link/link.pipes.mjs +4 -4
- package/esm2020/list/list-actions.component.mjs +6 -6
- package/esm2020/list/list-carousel.component.mjs +20 -20
- package/esm2020/list/list-chooser.component.mjs +6 -6
- package/esm2020/list/list-pager.component.mjs +12 -12
- package/esm2020/list/list-sorting.component.mjs +6 -6
- package/esm2020/list/list-total.component.mjs +9 -6
- package/esm2020/list/list-views.component.mjs +6 -6
- package/esm2020/list/list.component.mjs +135 -83
- package/esm2020/list/list.module.mjs +5 -5
- package/esm2020/list/list.pipes.mjs +7 -7
- package/esm2020/list/virtual-scroller.mjs +58 -58
- package/esm2020/menu/menu-item.component.mjs +5 -5
- package/esm2020/menu/menu.component.mjs +11 -11
- package/esm2020/menu/menu.module.mjs +5 -5
- package/esm2020/ngx-lib.module.mjs +5 -5
- package/esm2020/page-layout/page-layout.component.mjs +4 -4
- package/esm2020/page-layout/page-layout.module.mjs +5 -5
- package/esm2020/profile-data-views-list/profile-data-view/profile-data-view.component.mjs +4 -4
- package/esm2020/profile-data-views-list/profile-data-views-card/profile-data-views-card.component.mjs +4 -4
- package/esm2020/profile-data-views-list/profile-data-views-list.component.mjs +17 -17
- package/esm2020/profile-data-views-list/profile-data-views-list.module.mjs +5 -5
- package/esm2020/quantity-selector/quantity-selector-validation.directive.mjs +4 -4
- package/esm2020/quantity-selector/quantity-selector.component.mjs +102 -89
- package/esm2020/quantity-selector/quantity-selector.module.mjs +5 -5
- package/esm2020/quantity-selector/quantity-selector.pipes.mjs +4 -4
- package/esm2020/query-builder/common/services/output-query.service.mjs +4 -4
- package/esm2020/query-builder/common/services/query-structure.service.mjs +14 -5
- package/esm2020/query-builder/common/services/type-convertor.service.mjs +10 -10
- package/esm2020/query-builder/query-builder-item/query-builder-item.component.mjs +24 -22
- package/esm2020/query-builder/query-builder-section/query-builder-section.component.mjs +4 -4
- package/esm2020/query-builder/query-builder.component.mjs +19 -19
- package/esm2020/query-builder/query-builder.module.mjs +5 -5
- package/esm2020/query-builder/query-builder.service.mjs +4 -4
- package/esm2020/remote-loader/addon-block-loader.component.mjs +45 -35
- package/esm2020/remote-loader/addon-block-loader.service.mjs +8 -5
- package/esm2020/remote-loader/remote-loader-element.component.mjs +81 -26
- package/esm2020/remote-loader/remote-loader.component.mjs +13 -13
- package/esm2020/remote-loader/remote-loader.model.mjs +1 -1
- package/esm2020/remote-loader/remote-loader.module.mjs +5 -5
- package/esm2020/remote-loader/remote-loader.service.mjs +38 -15
- package/esm2020/rich-html-textarea/rich-html-textarea.component.mjs +47 -38
- package/esm2020/rich-html-textarea/rich-html-textarea.module.mjs +5 -5
- package/esm2020/search/search.component.mjs +35 -35
- package/esm2020/search/search.module.mjs +5 -5
- package/esm2020/select/select.component.mjs +89 -45
- package/esm2020/select/select.module.mjs +5 -5
- package/esm2020/select-panel/select-panel.component.mjs +26 -26
- package/esm2020/select-panel/select-panel.module.mjs +5 -5
- package/esm2020/separator/separator.component.mjs +16 -16
- package/esm2020/separator/separator.module.mjs +5 -5
- package/esm2020/side-bar/side-bar.component.mjs +29 -15
- package/esm2020/side-bar/side-bar.module.mjs +5 -5
- package/esm2020/signature/signature-dialog.component.mjs +4 -4
- package/esm2020/signature/signature.component.mjs +40 -31
- package/esm2020/signature/signature.module.mjs +5 -5
- package/esm2020/size-detector/size-detector.component.mjs +15 -13
- package/esm2020/size-detector/size-detector.module.mjs +5 -5
- package/esm2020/skeleton-loader/skeleton-loader.component.mjs +5 -5
- package/esm2020/skeleton-loader/skeleton-loader.module.mjs +5 -5
- package/esm2020/slider/slider.component.mjs +21 -21
- package/esm2020/slider/slider.module.mjs +5 -5
- package/esm2020/smart-filters/boolean-filter/boolean-filter.component.mjs +4 -4
- package/esm2020/smart-filters/common/filter-actions.component.mjs +4 -4
- package/esm2020/smart-filters/common/model/base-filter-component.mjs +28 -34
- package/esm2020/smart-filters/common/model/field.mjs +7 -7
- package/esm2020/smart-filters/common/model/operator.mjs +6 -4
- package/esm2020/smart-filters/date-filter/date-filter.component.mjs +4 -4
- package/esm2020/smart-filters/multi-select-filter/multi-select-filter.component.mjs +5 -5
- package/esm2020/smart-filters/number-filter/number-filter.component.mjs +4 -4
- package/esm2020/smart-filters/smart-filters.component.mjs +19 -19
- package/esm2020/smart-filters/smart-filters.module.mjs +5 -5
- package/esm2020/smart-filters/text-filter/text-filter.component.mjs +29 -9
- package/esm2020/snack-bar/default-snack-bar.component.mjs +4 -4
- package/esm2020/snack-bar/snack-bar.component.mjs +4 -4
- package/esm2020/snack-bar/snack-bar.module.mjs +5 -5
- package/esm2020/snack-bar/snack-bar.service.mjs +4 -4
- package/esm2020/textarea/textarea.component.mjs +40 -31
- package/esm2020/textarea/textarea.module.mjs +5 -5
- package/esm2020/textbox/textbox-validation.directive.mjs +5 -5
- package/esm2020/textbox/textbox.component.mjs +152 -116
- package/esm2020/textbox/textbox.module.mjs +5 -5
- package/esm2020/textbox-icon/textbox-icon.component.mjs +4 -4
- package/esm2020/textbox-icon/textbox-icon.module.mjs +5 -5
- package/esm2020/top-bar/top-bar.component.mjs +5 -5
- package/esm2020/top-bar/top-bar.module.mjs +5 -5
- package/fesm2015/pepperi-addons-ngx-lib-address.mjs +19 -19
- package/fesm2015/pepperi-addons-ngx-lib-address.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-attachment.mjs +61 -52
- package/fesm2015/pepperi-addons-ngx-lib-attachment.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.mjs +18 -18
- package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-button.mjs +26 -26
- package/fesm2015/pepperi-addons-ngx-lib-button.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-carousel.mjs +63 -63
- package/fesm2015/pepperi-addons-ngx-lib-carousel.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.mjs +43 -34
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-chips.mjs +33 -44
- package/fesm2015/pepperi-addons-ngx-lib-chips.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-color.mjs +11 -11
- package/fesm2015/pepperi-addons-ngx-lib-color.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-date.mjs +91 -68
- package/fesm2015/pepperi-addons-ngx-lib-date.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-dialog.mjs +13 -13
- package/fesm2015/pepperi-addons-ngx-lib-dialog.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-draggable-items.mjs +75 -40
- package/fesm2015/pepperi-addons-ngx-lib-draggable-items.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-field-title.mjs +11 -8
- package/fesm2015/pepperi-addons-ngx-lib-field-title.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-files-uploader.mjs +15 -15
- package/fesm2015/pepperi-addons-ngx-lib-files-uploader.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-form.mjs +122 -118
- package/fesm2015/pepperi-addons-ngx-lib-form.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-group-buttons.mjs +8 -8
- package/fesm2015/pepperi-addons-ngx-lib-group-buttons.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-icon.mjs +20 -20
- package/fesm2015/pepperi-addons-ngx-lib-icon.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-image.mjs +58 -49
- package/fesm2015/pepperi-addons-ngx-lib-image.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs +29 -28
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-link.mjs +65 -56
- package/fesm2015/pepperi-addons-ngx-lib-link.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-list.mjs +261 -204
- package/fesm2015/pepperi-addons-ngx-lib-list.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-menu.mjs +18 -18
- package/fesm2015/pepperi-addons-ngx-lib-menu.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-page-layout.mjs +7 -7
- package/fesm2015/pepperi-addons-ngx-lib-page-layout.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.mjs +26 -26
- package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs +110 -97
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs +75 -65
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-remote-loader.mjs +197 -108
- package/fesm2015/pepperi-addons-ngx-lib-remote-loader.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.mjs +50 -41
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-search.mjs +38 -38
- package/fesm2015/pepperi-addons-ngx-lib-search.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-select-panel.mjs +29 -29
- package/fesm2015/pepperi-addons-ngx-lib-select-panel.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-select.mjs +92 -48
- package/fesm2015/pepperi-addons-ngx-lib-select.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-separator.mjs +19 -19
- package/fesm2015/pepperi-addons-ngx-lib-separator.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-side-bar.mjs +32 -18
- package/fesm2015/pepperi-addons-ngx-lib-side-bar.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-signature.mjs +46 -37
- package/fesm2015/pepperi-addons-ngx-lib-signature.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-size-detector.mjs +18 -16
- package/fesm2015/pepperi-addons-ngx-lib-size-detector.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-skeleton-loader.mjs +8 -8
- package/fesm2015/pepperi-addons-ngx-lib-skeleton-loader.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-slider.mjs +24 -24
- package/fesm2015/pepperi-addons-ngx-lib-slider.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-smart-filters.mjs +105 -89
- package/fesm2015/pepperi-addons-ngx-lib-smart-filters.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-snack-bar.mjs +13 -13
- package/fesm2015/pepperi-addons-ngx-lib-snack-bar.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textarea.mjs +43 -34
- package/fesm2015/pepperi-addons-ngx-lib-textarea.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textbox-icon.mjs +7 -7
- package/fesm2015/pepperi-addons-ngx-lib-textbox-icon.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs +161 -124
- package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib-top-bar.mjs +8 -8
- package/fesm2015/pepperi-addons-ngx-lib-top-bar.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-lib.mjs +282 -190
- package/fesm2015/pepperi-addons-ngx-lib.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-address.mjs +19 -19
- package/fesm2020/pepperi-addons-ngx-lib-address.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-attachment.mjs +61 -52
- package/fesm2020/pepperi-addons-ngx-lib-attachment.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-bread-crumbs.mjs +18 -18
- package/fesm2020/pepperi-addons-ngx-lib-bread-crumbs.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-button.mjs +26 -26
- package/fesm2020/pepperi-addons-ngx-lib-button.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-carousel.mjs +63 -63
- package/fesm2020/pepperi-addons-ngx-lib-carousel.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-checkbox.mjs +43 -34
- package/fesm2020/pepperi-addons-ngx-lib-checkbox.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-chips.mjs +33 -44
- package/fesm2020/pepperi-addons-ngx-lib-chips.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-color.mjs +11 -11
- package/fesm2020/pepperi-addons-ngx-lib-color.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-date.mjs +90 -68
- package/fesm2020/pepperi-addons-ngx-lib-date.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-dialog.mjs +13 -13
- package/fesm2020/pepperi-addons-ngx-lib-dialog.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-draggable-items.mjs +74 -39
- package/fesm2020/pepperi-addons-ngx-lib-draggable-items.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-field-title.mjs +11 -8
- package/fesm2020/pepperi-addons-ngx-lib-field-title.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-files-uploader.mjs +15 -15
- package/fesm2020/pepperi-addons-ngx-lib-files-uploader.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-form.mjs +122 -118
- package/fesm2020/pepperi-addons-ngx-lib-form.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-group-buttons.mjs +8 -8
- package/fesm2020/pepperi-addons-ngx-lib-group-buttons.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-icon.mjs +20 -20
- package/fesm2020/pepperi-addons-ngx-lib-icon.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-image.mjs +58 -49
- package/fesm2020/pepperi-addons-ngx-lib-image.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs +29 -28
- package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-link.mjs +65 -56
- package/fesm2020/pepperi-addons-ngx-lib-link.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-list.mjs +259 -204
- package/fesm2020/pepperi-addons-ngx-lib-list.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-menu.mjs +18 -18
- package/fesm2020/pepperi-addons-ngx-lib-menu.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-page-layout.mjs +7 -7
- package/fesm2020/pepperi-addons-ngx-lib-page-layout.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-profile-data-views-list.mjs +26 -26
- package/fesm2020/pepperi-addons-ngx-lib-profile-data-views-list.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs +110 -97
- package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-query-builder.mjs +75 -65
- package/fesm2020/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-remote-loader.mjs +184 -93
- package/fesm2020/pepperi-addons-ngx-lib-remote-loader.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-rich-html-textarea.mjs +50 -41
- package/fesm2020/pepperi-addons-ngx-lib-rich-html-textarea.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-search.mjs +38 -38
- package/fesm2020/pepperi-addons-ngx-lib-search.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-select-panel.mjs +29 -29
- package/fesm2020/pepperi-addons-ngx-lib-select-panel.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-select.mjs +92 -48
- package/fesm2020/pepperi-addons-ngx-lib-select.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-separator.mjs +19 -19
- package/fesm2020/pepperi-addons-ngx-lib-separator.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-side-bar.mjs +32 -18
- package/fesm2020/pepperi-addons-ngx-lib-side-bar.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-signature.mjs +46 -37
- package/fesm2020/pepperi-addons-ngx-lib-signature.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-size-detector.mjs +18 -16
- package/fesm2020/pepperi-addons-ngx-lib-size-detector.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-skeleton-loader.mjs +8 -8
- package/fesm2020/pepperi-addons-ngx-lib-skeleton-loader.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-slider.mjs +24 -24
- package/fesm2020/pepperi-addons-ngx-lib-slider.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-smart-filters.mjs +105 -89
- package/fesm2020/pepperi-addons-ngx-lib-smart-filters.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-snack-bar.mjs +13 -13
- package/fesm2020/pepperi-addons-ngx-lib-snack-bar.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textarea.mjs +43 -34
- package/fesm2020/pepperi-addons-ngx-lib-textarea.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textbox-icon.mjs +7 -7
- package/fesm2020/pepperi-addons-ngx-lib-textbox-icon.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-textbox.mjs +160 -124
- package/fesm2020/pepperi-addons-ngx-lib-textbox.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib-top-bar.mjs +8 -8
- package/fesm2020/pepperi-addons-ngx-lib-top-bar.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-lib.mjs +281 -190
- package/fesm2020/pepperi-addons-ngx-lib.mjs.map +1 -1
- package/field-title/field-title.component.d.ts +2 -1
- package/files-uploader/files-uploader.component.d.ts +1 -1
- package/form/field-generator.component.d.ts +1 -1
- package/form/form.component.d.ts +1 -1
- package/form/indicators.component.d.ts +1 -1
- package/form/internal-button.component.d.ts +1 -1
- package/form/internal-carusel.component.d.ts +1 -1
- package/form/internal-field-generator.component.d.ts +1 -1
- package/form/internal-form.component.d.ts +1 -1
- package/form/internal-list.component.d.ts +2 -2
- package/form/internal-menu.component.d.ts +1 -1
- package/form/internal-page.component.d.ts +1 -1
- package/group-buttons/group-buttons.component.d.ts +2 -2
- package/icon/icon-generated.model.d.ts +2 -2
- package/icon/icon.component.d.ts +1 -1
- package/image/image.component.d.ts +2 -1
- package/image/image.component.theme.scss +4 -2
- package/images-filmstrip/images-filmstrip.component.d.ts +1 -1
- package/link/link.component.d.ts +2 -1
- package/list/list-actions.component.d.ts +1 -1
- package/list/list-carousel.component.d.ts +2 -2
- package/list/list-chooser.component.d.ts +1 -1
- package/list/list-pager.component.d.ts +1 -1
- package/list/list-sorting.component.d.ts +1 -1
- package/list/list-total.component.d.ts +2 -1
- package/list/list-views.component.d.ts +2 -2
- package/list/list.component.d.ts +8 -5
- package/list/list.model.d.ts +6 -6
- package/list/virtual-scroller.d.ts +2 -2
- package/menu/menu-item.component.d.ts +1 -1
- package/menu/menu.component.d.ts +1 -1
- package/menu/menu.model.d.ts +3 -3
- package/package.json +1 -1
- package/page-layout/page-layout.component.d.ts +1 -1
- package/profile-data-views-list/profile-data-view/profile-data-view.component.d.ts +1 -1
- package/profile-data-views-list/profile-data-views-card/profile-data-views-card.component.d.ts +1 -1
- package/profile-data-views-list/profile-data-views-list.component.d.ts +1 -1
- package/quantity-selector/quantity-selector-validation.directive.d.ts +1 -1
- package/quantity-selector/quantity-selector.component.d.ts +8 -9
- package/quantity-selector/quantity-selector.component.theme.scss +12 -6
- package/query-builder/common/model/operator.d.ts +1 -1
- package/query-builder/query-builder-item/query-builder-item.component.d.ts +4 -2
- package/query-builder/query-builder-section/query-builder-section.component.d.ts +1 -1
- package/query-builder/query-builder.component.d.ts +1 -1
- package/remote-loader/addon-block-loader.component.d.ts +4 -2
- package/remote-loader/remote-loader-element.component.d.ts +9 -2
- package/remote-loader/remote-loader.component.d.ts +1 -1
- package/remote-loader/remote-loader.model.d.ts +3 -2
- package/remote-loader/remote-loader.service.d.ts +2 -0
- package/rich-html-textarea/rich-html-textarea.component.d.ts +2 -1
- package/rich-html-textarea/rich-html-textarea.component.theme.scss +6 -3
- package/search/search.component.d.ts +1 -1
- package/search/search.model.d.ts +4 -4
- package/select/select.component.d.ts +9 -1
- package/select/select.component.theme.scss +22 -11
- package/select-panel/select-panel.component.d.ts +1 -1
- package/select-panel/select-panel.component.theme.scss +0 -2
- package/separator/separator.component.d.ts +1 -1
- package/side-bar/side-bar.component.d.ts +4 -1
- package/side-bar/side-bar.model.d.ts +1 -1
- package/signature/signature-dialog.component.d.ts +1 -1
- package/signature/signature.component.d.ts +2 -1
- package/size-detector/size-detector.component.d.ts +1 -1
- package/skeleton-loader/skeleton-loader.component.d.ts +2 -2
- package/slider/slider.component.d.ts +1 -1
- package/slider/slider.component.theme.scss +15 -5
- package/smart-filters/boolean-filter/boolean-filter.component.d.ts +3 -1
- package/smart-filters/common/filter-actions.component.d.ts +1 -1
- package/smart-filters/common/model/base-filter-component.d.ts +3 -5
- package/smart-filters/common/model/operator.d.ts +2 -0
- package/smart-filters/common/model/type.d.ts +4 -4
- package/smart-filters/date-filter/date-filter.component.d.ts +3 -1
- package/smart-filters/multi-select-filter/multi-select-filter.component.d.ts +3 -1
- package/smart-filters/number-filter/number-filter.component.d.ts +3 -1
- package/smart-filters/smart-filters.component.d.ts +1 -1
- package/smart-filters/text-filter/text-filter.component.d.ts +4 -1
- package/snack-bar/default-snack-bar.component.d.ts +1 -1
- package/snack-bar/snack-bar.component.d.ts +1 -1
- package/src/assets/i18n/ar.ngx-lib.json +180 -0
- package/src/assets/i18n/de.ngx-lib.json +104 -5
- package/src/assets/i18n/en.ngx-lib.json +4 -3
- package/src/assets/i18n/es.ngx-lib.json +113 -11
- package/src/assets/i18n/fr.ngx-lib.json +105 -4
- package/src/assets/i18n/he.ngx-lib.json +105 -4
- package/src/assets/i18n/it.ngx-lib.json +114 -13
- package/src/assets/i18n/ja.ngx-lib.json +105 -4
- package/src/assets/i18n/pl.ngx-lib.json +105 -4
- package/src/assets/i18n/pt.ngx-lib.json +105 -4
- package/src/assets/i18n/sr.ngx-lib.json +180 -0
- package/src/assets/i18n/zh.ngx-lib.json +105 -2
- package/src/core/style/abstracts/mixins.scss +88 -30
- package/src/core/style/abstracts/variables.scss +9 -0
- package/src/core/style/base/Spacing.stories.mdx +22 -22
- package/src/core/style/base/base.scss +215 -115
- package/src/core/style/components/button.scss +41 -19
- package/src/core/style/components/checkbox.scss +132 -128
- package/src/core/style/components/file.scss +13 -9
- package/src/core/style/components/general.scss +149 -65
- package/src/core/style/components/radio-button.scss +50 -23
- package/src/core/style/components/textarea.scss +69 -30
- package/textarea/textarea.component.d.ts +2 -1
- package/textbox/textbox-validation.directive.d.ts +1 -1
- package/textbox/textbox.component.d.ts +2 -1
- package/textbox-icon/textbox-icon.component.d.ts +1 -1
- package/theming-offline.scss +2 -1
- package/theming.scss +2 -1
- package/top-bar/top-bar.component.d.ts +1 -1
- package/top-bar/top-bar.model.d.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pepperi-addons-ngx-lib-remote-loader.mjs","sources":["../../../projects/ngx-lib/remote-loader/remote-loader.service.ts","../../../projects/ngx-lib/remote-loader/remote-loader.component.ts","../../../projects/ngx-lib/remote-loader/remote-loader-element.component.ts","../../../projects/ngx-lib/remote-loader/addon-block-loader.component.ts","../../../projects/ngx-lib/remote-loader/addon-block-loader.component.html","../../../projects/ngx-lib/remote-loader/addon-block-loader.service.ts","../../../projects/ngx-lib/remote-loader/remote-loader.module.ts","../../../projects/ngx-lib/remote-loader/public-api.ts","../../../projects/ngx-lib/remote-loader/pepperi-addons-ngx-lib-remote-loader.ts"],"sourcesContent":["import { coerceNumberProperty } from '@angular/cdk/coercion';\nimport { Injectable } from '@angular/core';\nimport { PepAddonService, PepHttpService, PepSessionService} from '@pepperi-addons/ngx-lib';\nimport { IPepRemoteLoaderParamsOptions, PepRemoteLoaderOptions } from './remote-loader.model';\nimport { IBlockLoaderData } from './remote-loader.model';\n\n@Injectable({ \n providedIn: 'root' \n})\nexport class PepRemoteLoaderService {\n \n constructor(\n private httpService: PepHttpService,\n private sessionService: PepSessionService,\n private addonService: PepAddonService\n ) {\n //\n }\n\n private getBlockLoaderDataUrl(options: IPepRemoteLoaderParamsOptions): string {\n const fileName = 'addon_blocks';\n const pagesAddonUuid = this.addonService.getPagesAddonUUID();\n let pagesBaseUrl;\n\n // For devServer run server on localhost.\n if(options.pagesDevServer?.length > 0) {\n pagesBaseUrl = `${options.pagesDevServer}/${fileName}`;\n } else {\n const baseUrl = this.sessionService.getPapiBaseUrl();\n pagesBaseUrl = `${baseUrl}/addons/api/${pagesAddonUuid}/${fileName}`;\n }\n\n const url = `${pagesBaseUrl}/get_addon_block_loader_data?name=${options.name}&slugName=${options.slugName}&blockType=${options.blockType}&addonUUID=${options.addonUUID}`;\n return url;\n }\n\n getRemoteLoaderOptions(blockLoaderData: IBlockLoaderData, blockRemoteEntry = '', type: 'script' | 'module' | 'manifest' = 'module'): PepRemoteLoaderOptions {\n const exposedModule = blockLoaderData.relation.ElementsModule?.length > 0 ? blockLoaderData.relation.ElementsModule : blockLoaderData.relation.ModuleName;\n const res = {\n type: type,\n remoteEntry: blockRemoteEntry.length > 0 ? blockRemoteEntry : `${blockLoaderData.addonPublicBaseURL}${blockLoaderData.relation.AddonRelativeURL}.js`,\n remoteName: blockLoaderData.relation.AddonRelativeURL, // For script type, this is the name of the script.\n exposedModule: `./${exposedModule}`,\n addonId: blockLoaderData.relation.AddonUUID, // For local use (adding the relative path to the assets).\n }\n \n // If it's web components\n if (blockLoaderData.relation.ElementsModule?.length > 0) {\n res['elementName'] = blockLoaderData.relation.ElementName\n } else { // For load the component from the module.\n res['componentName'] = blockLoaderData.relation.ComponentName; \n }\n\n return res;\n }\n\n async getBlockRemoteLoaderOptions(options: IPepRemoteLoaderParamsOptions): Promise<PepRemoteLoaderOptions> {\n options.blockType = options.blockType ?? 'AddonBlock';\n options.name = options.name ?? '';\n options.slugName = options.slugName ?? '';\n options.addonUUID = options.addonUUID ?? '';\n\n return new Promise((resolve, reject) => {\n if (options.name?.length > 0 || (options.slugName?.length > 0 && options.blockType === 'SettingsBlock')) {\n const blockLoaderDataUrl = this.getBlockLoaderDataUrl(options);\n this.httpService.getHttpCall(blockLoaderDataUrl).toPromise().then((data: IBlockLoaderData) => {\n const ngVersionNumber = coerceNumberProperty(data.relation?.SubType?.toLocaleLowerCase().replace('ng', ''), 14);\n const type = ngVersionNumber >= 14 ? 'module' : 'script';\n\n resolve(this.getRemoteLoaderOptions(data, options.blockRemoteEntry, type));\n }).catch(err => {\n const nameMsg = options.blockType === 'SettingsBlock' ? `slugName - ${options.slugName}` : `name - ${options.name}`\n reject(`Block with ${nameMsg} is not found for type - ${options.blockType}`);\n });\n } else {\n if (options.blockType === 'SettingsBlock') {\n reject(`slugName is not supplied`);\n }\n else {\n reject(`name is not supplied`);\n }\n }\n });\n }\n}\n","import { Component, Input, OnChanges, ViewChild, ViewContainerRef, Injector, EventEmitter, Output, ComponentRef, SimpleChanges, createNgModuleRef } from '@angular/core';\nimport { loadRemoteModule } from '@angular-architects/module-federation';\nimport { PepAddonService } from '@pepperi-addons/ngx-lib';\nimport { PepRemoteLoaderOptions } from './remote-loader.model';\n\n@Component({\n selector: 'pep-remote-loader',\n template: `\n <!-- <mat-spinner *ngIf=\"showSpinner; else placeHolder\"></mat-spinner> -->\n <ng-template #placeHolder></ng-template>\n `\n})\nexport class PepRemoteLoaderComponent implements OnChanges {\n @ViewChild('placeHolder', { read: ViewContainerRef, static: true }) viewContainer: ViewContainerRef;\n \n private _options: PepRemoteLoaderOptions = null;\n @Input()\n set options(value: PepRemoteLoaderOptions) {\n this._options = value;\n if (value) {\n this.loadModule();\n }\n }\n get options(): PepRemoteLoaderOptions {\n return this._options;\n }\n \n // This is the data passed by the API Design documentation.\n private _hostObject: any = null;\n @Input()\n set hostObject(value: any) { \n this._hostObject = value;\n this.setHostComponentIntoComponentRef();\n }\n get hostObject(): any {\n return this._hostObject;\n }\n\n @Output() hostEvents: EventEmitter<any> = new EventEmitter();\n @Output() load: EventEmitter<any> = new EventEmitter();\n // showSpinner = true;\n \n private compRef: ComponentRef<any>;\n\n constructor(\n private injector: Injector,\n private pepAddonService: PepAddonService\n ) { }\n\n private setHostComponentIntoComponentRef() {\n if (this.hostObject && this.compRef?.instance) {\n this.compRef.instance.hostObject = this.hostObject;\n\n // TODO: Check if this is needed?? if not remove this.\n // if (this.compRef?.instance?.ngOnChanges) {\n // this.compRef.instance.ngOnChanges(this.hostObject);\n // }\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n // if (changes?.options?.currentValue) {\n // this.loadModule(changes?.options?.currentValue);\n // }\n }\n\n private async loadModule() {\n try {\n const t0 = performance.now();\n \n this.viewContainer?.clear();\n \n if (this.options.exposedModule?.length > 0) { // Load module\n if (this.options?.addonId && (this.options.type === 'module' || this.options.type === 'script')) {\n const lastSlashIndex = this.options.remoteEntry?.lastIndexOf('/') || -1;\n \n if (lastSlashIndex > 0) {\n const publicPath = this.options.remoteEntry.substring(0, lastSlashIndex + 1);\n this.pepAddonService.setAddonStaticFolder(publicPath, this.options.addonId);\n }\n }\n\n const module = await loadRemoteModule(this.options).then(m => m);\n const moduleRef = createNgModuleRef(module[this.options.exposedModule.replace('./','')], this.injector);\n this.compRef = this.viewContainer.createComponent(module[this.options.componentName], { injector: this.injector, ngModuleRef: moduleRef });\n\n const t1 = performance.now();\n console.log('remote module load performance: ' + (t1-t0)/1000);\n } \n // Check if this is in use??? (comment out in Angular 14 version)\n // else { // Load Component\n // const componentType = await loadRemoteModule(this.options).then(m => m[this.options.componentName]);\n // this.compRef = this.viewContainer.createComponent(componentType, { injector: this.injector });\n // }\n\n this.load.emit();\n\n if (this.compRef) {\n this.setHostComponentIntoComponentRef();\n \n this.compRef?.instance['hostEvents']?.subscribe(e => {\n // switch(e.action){\n // case 'addon-loaded':\n // this.showSpinner = false;\n // }\n this.hostEvents.emit(e)\n });\n }\n } catch(error) {\n console.error(error);\n }\n }\n\n ngOnDestroy(): void {\n this.compRef?.destroy();\n this.viewContainer?.clear();\n }\n}\n\n","import { AfterContentInit, Component, ElementRef, EventEmitter, Input, OnChanges, OnDestroy, Optional, Output, Renderer2, ViewChild, ViewContainerRef } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { loadRemoteModule } from '@angular-architects/module-federation';\nimport { PepAddonService } from '@pepperi-addons/ngx-lib';\nimport { PepRemoteLoaderOptions } from './remote-loader.model';\nimport { PepRemoteLoaderService } from './remote-loader.service';\n\n@Component({\n selector: 'pep-remote-loader-element',\n template: `\n <!--<div #vc style=\"height: inherit;\"></div>-->\n `,\n styles: [`\n :host { width:100%; height: inherit }\n :host::ng-deep > * {\n height: inherit;\n }\n `],\n})\nexport class PepRemoteLoaderElementComponent implements AfterContentInit, OnChanges, OnDestroy {\n @Input() options: PepRemoteLoaderOptions;\n @Input() props: { [prop: string]: unknown };\n @Input() events: { [event: string]: (event: Event) => void };\n\n @Output() load: EventEmitter<any> = new EventEmitter();\n\n element: HTMLElement = null;\n\n private _elementName = '';\n\n constructor(\n private renderer: Renderer2,\n private el:ElementRef,\n private pepAddonService: PepAddonService,\n private remoteLoaderService: PepRemoteLoaderService,\n @Optional() private route: ActivatedRoute\n ) { \n\n }\n\n private populateProps() {\n for (const prop in this.props) {\n this.element[prop] = this.props[prop];\n }\n }\n\n private setupEvents() {\n for (const event in this.events) {\n this.element.addEventListener(event, this.events[event]);\n }\n }\n\n private async loadOptionsFromRoute() {\n const params = this.route?.snapshot.params;\n const data = this.route?.snapshot.data;\n const blockType = data?.blockType || 'SettingsBlock';\n\n const slugName = params?.slugName || data?.slugName;\n const blockName = params?.blockName || data?.blockName;\n \n if (blockName?.length > 0 || (slugName?.length > 0 && blockType === 'SettingsBlock')) {\n const addonUUID = params?.addonUUID || data?.addonUUID || '';\n const blockRemoteEntry = data?.blockRemoteEntry || '';\n\n this.options = await this.remoteLoaderService.getBlockRemoteLoaderOptions({\n name: blockName,\n slugName,\n blockType,\n addonUUID,\n blockRemoteEntry\n });\n\n const fileName = `${this.options['remoteName']}.js`;\n\n if (window.location.search.indexOf('dev=true') > 0) {\n this.options['remoteEntry'] = `http://localhost:4400/${fileName}`;\n }\n\n // Set the data into the props cause this component is loading from the route.\n this.props = data;\n }\n }\n\n ngOnChanges(): void {\n if (!this.element) return;\n\n this.populateProps();\n }\n\n ngOnDestroy() {\n // \n }\n\n async ngAfterContentInit() {\n try {\n const t0 = performance.now();\n\n // If the options is not supplied then we need to get it from the route.\n if (!this.options) {\n await this.loadOptionsFromRoute();\n }\n\n if (!this.options) {\n throw new Error('No options supplied to the component.');\n } else {\n if (this.options?.addonId && (this.options.type === 'module' || this.options.type === 'script')) {\n const lastSlashIndex = this.options.remoteEntry?.lastIndexOf('/') || -1;\n \n if (lastSlashIndex > 0) {\n const publicPath = this.options.remoteEntry.substring(0, lastSlashIndex + 1);\n this.pepAddonService.setAddonStaticFolder(publicPath, this.options.addonId);\n }\n }\n \n await loadRemoteModule(this.options);\n \n this._elementName = this.options.elementName;\n this.element = this.renderer.createElement(this._elementName);\n this.populateProps();\n this.setupEvents();\n \n this.renderer.appendChild(this.el.nativeElement, this.element);\n \n const t1 = performance.now();\n console.log('remote module wc load performance: ' + (t1-t0)/1000);\n \n // Fix internal routing bug.\n this.pepAddonService.connectInternalRouter(this._elementName);\n\n this.load.emit();\n }\n }\n catch(error) {\n console.error(error);\n }\n }\n}","import { WebComponentWrapperOptions } from '@angular-architects/module-federation-tools';\nimport { Component, OnInit, Input, Output, EventEmitter, TemplateRef, ViewChild, OnDestroy } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { IPepRemoteLoaderParamsOptions, PepRemoteLoaderOptions } from './remote-loader.model';\nimport { PepRemoteLoaderService } from './remote-loader.service';\n\n@Component({\n selector: 'pep-addon-block-loader',\n templateUrl: './addon-block-loader.component.html',\n styleUrls: ['./addon-block-loader.component.scss']\n})\nexport class PepAddonBlockLoaderComponent implements OnInit, OnDestroy {\n @ViewChild('dialogTemplate', { static: true, read: TemplateRef }) dialogTemplate!: TemplateRef<any>;\n \n @Input() addonId = '';\n @Input() remoteEntry = '';\n @Input() slugName = '';\n\n private _blockType = 'AddonBlock';\n @Input() \n set blockType(value: string) {\n this._blockType = value;\n }\n get blockType(): string {\n return this._blockType;\n }\n\n private _name = '';\n @Input() \n set name(value: string) {\n this._name = value;\n }\n get name(): string {\n return this._name;\n }\n\n @Input() hostObject = null;\n \n private _dialogRef: MatDialogRef<any> = null;\n @Input()\n set dialogRef(value: MatDialogRef<any>) {\n this._dialogRef = value;\n this.inDialog = this._dialogRef != null;\n }\n get dialogRef(): MatDialogRef<any> {\n return this._dialogRef;\n }\n \n @Output() hostEvents: EventEmitter<any> = new EventEmitter<any>();\n @Output() blockLoad: EventEmitter<void> = new EventEmitter<void>();\n \n protected inDialog = false;\n protected remotePathOptions: PepRemoteLoaderOptions = null;\n protected loadElement = false;\n\n protected onHostEventsCallback: (event: CustomEvent) => void;\n\n constructor(private remoteLoaderService: PepRemoteLoaderService) {\n this.onHostEventsCallback = (event: CustomEvent) => {\n this.onHostEvents(event.detail);\n }\n }\n \n ngOnInit() {\n const options: IPepRemoteLoaderParamsOptions = {\n name: this.name,\n slugName: this.slugName,\n blockType: this.blockType,\n addonUUID: this.addonId,\n blockRemoteEntry: this.remoteEntry\n };\n\n this.remoteLoaderService.getBlockRemoteLoaderOptions(options).then((options: PepRemoteLoaderOptions) => {\n this.loadElement = options.elementName?.length > 0;\n this.remotePathOptions = options;\n });\n }\n\n ngOnDestroy(): void {\n if (this.dialogRef) {\n this.dialogRef = null;\n }\n\n this.remotePathOptions = null;\n }\n\n onBlockLoad() {\n this.blockLoad.emit();\n }\n\n onHostEvents(event: any) {\n this.hostEvents.emit(event);\n }\n\n closeDialog(event) {\n this.dialogRef?.close(event);\n }\n}","<ng-container *ngIf=\"!inDialog\">\n <ng-container *ngTemplateOutlet=\"remoteLoaderTemplate\"></ng-container>\n</ng-container>\n\n<ng-template #dialogTemplate let-data>\n <pep-dialog [showClose]=\"data?.showClose\" [showHeader]=\"data?.showHeader\" [showFooter]=\"data?.showFooter\" [title]=\"data?.title\" (close)=\"closeDialog($event)\">\n <ng-container pep-dialog-content>\n <ng-container *ngTemplateOutlet=\"remoteLoaderTemplate\"></ng-container>\n </ng-container>\n </pep-dialog>\n</ng-template>\n\n<ng-template #remoteLoaderTemplate>\n <pep-remote-loader *ngIf=\"remotePathOptions && !loadElement\"\n [options]=\"remotePathOptions\"\n [hostObject]=\"hostObject\"\n (hostEvents)=\"onHostEvents($event);\"\n (load)=\"onBlockLoad()\">\n </pep-remote-loader>\n\n <pep-remote-loader-element *ngIf=\"remotePathOptions && loadElement\" \n [options]=\"remotePathOptions\"\n [props]=\"{ hostObject: hostObject }\"\n [events]=\"{ hostEvents: onHostEventsCallback }\"\n (load)=\"onBlockLoad()\">\n </pep-remote-loader-element>\n\n</ng-template>","import { ComponentFactoryResolver, ComponentRef, Injectable, Injector } from '@angular/core';\nimport { IAddonBlockLoaderDialogOptions, IAddonBlockLoaderOptions, IBlockLoaderData } from './remote-loader.model';\nimport { PepAddonBlockLoaderComponent } from './addon-block-loader.component';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\n\n@Injectable({ \n providedIn: 'root' \n})\nexport class PepAddonBlockLoaderService {\n \n constructor(\n private dialogService: PepDialogService,\n ) {\n //\n }\n\n private loadAddonBlockInternal(options: IAddonBlockLoaderDialogOptions): ComponentRef<PepAddonBlockLoaderComponent> | null {\n if (options.container !== null) {\n const componentRef = options.container.createComponent(PepAddonBlockLoaderComponent);\n const addonBlockInstance = componentRef.instance;\n\n addonBlockInstance.name = options.name;\n addonBlockInstance.slugName = options.slugName;\n addonBlockInstance.blockType = options.blockType || 'AddonBlock';\n addonBlockInstance.addonId = options.addonUUID;\n addonBlockInstance.remoteEntry = options.blockRemoteEntry;\n addonBlockInstance.hostObject = options.hostObject;\n\n addonBlockInstance.hostEvents.subscribe((event) => {\n if (options.hostEventsCallback) {\n options.hostEventsCallback(event);\n }\n });\n\n return componentRef;\n } else {\n return null;\n }\n }\n\n loadAddonBlockInContainer(options: IAddonBlockLoaderOptions): ComponentRef<PepAddonBlockLoaderComponent> | null {\n return this.loadAddonBlockInternal(options);\n }\n\n loadAddonBlockInDialog(options: IAddonBlockLoaderDialogOptions): MatDialogRef<any> | null {\n const componentRef = this.loadAddonBlockInternal(options);\n \n if (componentRef) {\n const addonBlockInstance = componentRef.instance;\n const pepConfig = this.dialogService.getDialogConfig({ disableClose: false, panelClass: 'remote-loader-dialog' }, options.size || 'full-screen');\n const mergeConfig = {...options.config, ...pepConfig}; \n const data = options.data || null;\n addonBlockInstance.dialogRef = this.dialogService.openDialog(addonBlockInstance.dialogTemplate, data, mergeConfig);\n addonBlockInstance.dialogRef.afterClosed().subscribe(() => {\n componentRef.hostView.detach();\n componentRef.hostView.destroy();\n componentRef.destroy();\n });\n return addonBlockInstance.dialogRef;\n\n } else {\n return null;\n }\n }\n}\n","import { HttpClientModule } from '@angular/common/http';\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatDialogModule } from '@angular/material/dialog';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\nimport { ModuleFederationToolsModule } from '@angular-architects/module-federation-tools';\n\nimport { PepAddonBlockLoaderComponent } from './addon-block-loader.component';\nimport { PepAddonBlockLoaderService } from './addon-block-loader.service';\n\nimport { PepRemoteLoaderComponent } from './remote-loader.component';\nimport { PepRemoteLoaderService } from './remote-loader.service';\nimport { PepRemoteLoaderElementComponent } from './remote-loader-element.component';\n\n@NgModule({\n declarations: [\n PepAddonBlockLoaderComponent,\n PepRemoteLoaderComponent,\n PepRemoteLoaderElementComponent,\n ],\n imports: [\n CommonModule,\n HttpClientModule,\n ModuleFederationToolsModule,\n // Material modules,\n MatDialogModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepDialogModule,\n ],\n exports: [\n PepAddonBlockLoaderComponent,\n PepRemoteLoaderComponent,\n PepRemoteLoaderElementComponent\n ],\n providers: [\n PepAddonBlockLoaderService,\n PepRemoteLoaderService\n ]\n})\nexport class PepRemoteLoaderModule {\n\n\n}\n","/*\n * Public API Surface of remote-loader\n */\nexport * from './addon-block-loader.component';\nexport * from './addon-block-loader.service';\nexport * from './remote-loader.component';\nexport * from './remote-loader-element.component';\nexport * from './remote-loader.module';\nexport * from './remote-loader.model';\nexport * from './remote-loader.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.PepRemoteLoaderService","i1.PepRemoteLoaderService","i3","i4.PepRemoteLoaderComponent","i5.PepRemoteLoaderElementComponent","i1"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pepperi-addons-ngx-lib-remote-loader.mjs","sources":["../../../projects/ngx-lib/remote-loader/remote-loader.service.ts","../../../projects/ngx-lib/remote-loader/remote-loader.component.ts","../../../projects/ngx-lib/remote-loader/remote-loader-element.component.ts","../../../projects/ngx-lib/remote-loader/addon-block-loader.component.ts","../../../projects/ngx-lib/remote-loader/addon-block-loader.component.html","../../../projects/ngx-lib/remote-loader/addon-block-loader.service.ts","../../../projects/ngx-lib/remote-loader/remote-loader.module.ts","../../../projects/ngx-lib/remote-loader/public-api.ts","../../../projects/ngx-lib/remote-loader/pepperi-addons-ngx-lib-remote-loader.ts"],"sourcesContent":["import { coerceNumberProperty } from '@angular/cdk/coercion';\nimport { Injectable } from '@angular/core';\nimport { PepAddonService, PepHttpService, PepSessionService} from '@pepperi-addons/ngx-lib';\nimport { IPepRemoteLoaderParamsOptions, PepRemoteLoaderOptions } from './remote-loader.model';\nimport { IBlockLoaderData } from './remote-loader.model';\n\n@Injectable({ \n providedIn: 'root' \n})\nexport class PepRemoteLoaderService {\n \n constructor(\n private httpService: PepHttpService,\n private sessionService: PepSessionService,\n private addonService: PepAddonService\n ) {\n //\n }\n\n private getBlockLoaderDataUrl(options: IPepRemoteLoaderParamsOptions): string {\n const fileName = 'addon_blocks';\n const pagesAddonUuid = this.addonService.getPagesAddonUUID();\n let pagesBaseUrl;\n\n // For devServer run server on localhost.\n if(options.pagesDevServer?.length > 0) {\n pagesBaseUrl = `${options.pagesDevServer}/${fileName}`;\n } else {\n const baseUrl = this.sessionService.getPapiBaseUrl();\n pagesBaseUrl = `${baseUrl}/addons/api/${pagesAddonUuid}/${fileName}`;\n }\n\n const url = `${pagesBaseUrl}/get_addon_block_loader_data?name=${options.name}&slugName=${options.slugName}&blockType=${options.blockType}&addonUUID=${options.addonUUID}`;\n return url;\n }\n\n getRemoteLoaderOptions(blockLoaderData: IBlockLoaderData, blockRemoteEntry = '', type: 'script' | 'module' | 'manifest' = 'module'): PepRemoteLoaderOptions {\n const loadAsElement = blockLoaderData.relation.ElementName?.length > 0;\n const exposedModule = loadAsElement ? (blockLoaderData.relation.ElementsModule || 'WebComponents') : blockLoaderData.relation.ModuleName;\n const res = {\n type: type,\n remoteEntry: blockRemoteEntry.length > 0 ? blockRemoteEntry : `${blockLoaderData.addonPublicBaseURL}${blockLoaderData.relation.AddonRelativeURL}.js`,\n remoteName: blockLoaderData.relation.AddonRelativeURL, // For script type, this is the name of the script.\n exposedModule: `./${exposedModule}`,\n addonId: blockLoaderData.relation.AddonUUID, // For local use (adding the relative path to the assets).\n }\n\n // If it's web components\n if (loadAsElement) {\n res['elementName'] = blockLoaderData.relation.ElementName;\n } else { // For load the component from the module.\n res['componentName'] = blockLoaderData.relation.ComponentName; \n }\n\n return res;\n }\n\n private getBlockLoaderDataSuccess(data: IBlockLoaderData, options: IPepRemoteLoaderParamsOptions) {\n const ngVersionNumber = coerceNumberProperty(data.relation?.SubType?.toLocaleLowerCase().replace('ng', ''), 14);\n const type = ngVersionNumber >= 14 ? 'module' : 'script';\n\n return this.getRemoteLoaderOptions(data, options.blockRemoteEntry, type);\n }\n\n private getBlockLoaderDataError(options: IPepRemoteLoaderParamsOptions) {\n const nameMsg = options.blockType === 'SettingsBlock' ? `slugName - ${options.slugName}` : `name - ${options.name}`\n return(`Block with ${nameMsg} is not found for type - ${options.blockType}`);\n }\n\n async getBlockRemoteLoaderOptions(options: IPepRemoteLoaderParamsOptions): Promise<PepRemoteLoaderOptions> {\n options.blockType = options.blockType ?? 'AddonBlock';\n options.name = options.name ?? '';\n options.slugName = options.slugName ?? '';\n options.addonUUID = options.addonUUID ?? '';\n \n return new Promise((resolve, reject) => {\n if (options.name?.length > 0 || (options.slugName?.length > 0 && options.blockType === 'SettingsBlock')) {\n\n if (options.blockType === 'SettingsBlock' || options.blockType === 'LogicBlock' || options.pagesDevServer?.length > 0) {\n // Work online for settings blocks or logic blocks or debug only !!!\n const blockLoaderDataUrl = this.getBlockLoaderDataUrl(options);\n this.httpService.getHttpCall(blockLoaderDataUrl).toPromise().then((data: IBlockLoaderData) => {\n resolve(this.getBlockLoaderDataSuccess(data, options));\n }).catch(err => {\n reject(this.getBlockLoaderDataError(options));\n });\n } else {\n // Work offline !!!\n this.addonService.emitEvent(\"GetBlockLoaderData\", {\n Name: options.name,\n // SlugName: options.slugName,\n BlockType: options.blockType,\n // AddonUUID: options.addonUUID\n }).then((res: IBlockLoaderData) => {\n resolve(this.getBlockLoaderDataSuccess(res, options));\n }).catch(err => {\n reject(this.getBlockLoaderDataError(options));\n });\n }\n } else {\n if (options.blockType === 'SettingsBlock') {\n reject(`slugName is not supplied`);\n }\n else {\n reject(`name is not supplied`);\n }\n }\n });\n }\n}\n","import { Component, Input, OnChanges, ViewChild, ViewContainerRef, Injector, EventEmitter, Output, ComponentRef, SimpleChanges, createNgModuleRef } from '@angular/core';\nimport { loadRemoteModule } from '@angular-architects/module-federation';\nimport { PepAddonService } from '@pepperi-addons/ngx-lib';\nimport { PepRemoteLoaderOptions } from './remote-loader.model';\n\n@Component({\n selector: 'pep-remote-loader',\n template: `\n <!-- <mat-spinner *ngIf=\"showSpinner; else placeHolder\"></mat-spinner> -->\n <ng-template #placeHolder></ng-template>\n `\n})\nexport class PepRemoteLoaderComponent implements OnChanges {\n @ViewChild('placeHolder', { read: ViewContainerRef, static: true }) viewContainer: ViewContainerRef;\n \n private _options: PepRemoteLoaderOptions = null;\n @Input()\n set options(value: PepRemoteLoaderOptions) {\n this._options = value;\n if (value) {\n this.loadModule();\n }\n }\n get options(): PepRemoteLoaderOptions {\n return this._options;\n }\n \n // This is the data passed by the API Design documentation.\n private _hostObject: any = null;\n @Input()\n set hostObject(value: any) { \n this._hostObject = value;\n this.setHostComponentIntoComponentRef();\n }\n get hostObject(): any {\n return this._hostObject;\n }\n\n @Output() hostEvents: EventEmitter<any> = new EventEmitter();\n @Output() load: EventEmitter<any> = new EventEmitter();\n // showSpinner = true;\n \n private compRef: ComponentRef<any>;\n\n constructor(\n private injector: Injector,\n private pepAddonService: PepAddonService\n ) { }\n\n private setHostComponentIntoComponentRef() {\n if (this.hostObject && this.compRef?.instance) {\n this.compRef.instance.hostObject = this.hostObject;\n\n // TODO: Check if this is needed?? if not remove this.\n // if (this.compRef?.instance?.ngOnChanges) {\n // this.compRef.instance.ngOnChanges(this.hostObject);\n // }\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n // if (changes?.options?.currentValue) {\n // this.loadModule(changes?.options?.currentValue);\n // }\n }\n\n private async loadModule() {\n try {\n const t0 = performance.now();\n \n this.viewContainer?.clear();\n \n if (this.options.exposedModule?.length > 0) { // Load module\n if (this.options?.addonId && (this.options.type === 'module' || this.options.type === 'script')) {\n const lastSlashIndex = this.options.remoteEntry?.lastIndexOf('/') || -1;\n \n if (lastSlashIndex > 0) {\n const publicPath = this.options.remoteEntry.substring(0, lastSlashIndex + 1);\n this.pepAddonService.setAddonStaticFolder(publicPath, this.options.addonId);\n }\n }\n\n const module = await loadRemoteModule(this.options).then(m => m);\n const moduleRef = createNgModuleRef(module[this.options.exposedModule.replace('./','')], this.injector);\n this.compRef = this.viewContainer.createComponent(module[this.options.componentName], { injector: this.injector, ngModuleRef: moduleRef });\n\n const t1 = performance.now();\n console.log('remote module load performance: ' + (t1-t0)/1000);\n } \n // Check if this is in use??? (comment out in Angular 14 version)\n // else { // Load Component\n // const componentType = await loadRemoteModule(this.options).then(m => m[this.options.componentName]);\n // this.compRef = this.viewContainer.createComponent(componentType, { injector: this.injector });\n // }\n\n this.load.emit();\n\n if (this.compRef) {\n this.setHostComponentIntoComponentRef();\n \n this.compRef?.instance['hostEvents']?.subscribe(e => {\n // switch(e.action){\n // case 'addon-loaded':\n // this.showSpinner = false;\n // }\n this.hostEvents.emit(e)\n });\n }\n } catch(error) {\n console.error(error);\n }\n }\n\n ngOnDestroy(): void {\n this.compRef?.destroy();\n this.viewContainer?.clear();\n }\n}\n\n","import { AfterContentInit, Component, ElementRef, EventEmitter, Input, OnChanges, OnDestroy, Optional, Output, Renderer2, ViewChild, ViewContainerRef } from '@angular/core';\nimport { ActivatedRoute } from '@angular/router';\nimport { loadRemoteModule } from '@angular-architects/module-federation';\nimport { PepAddonService } from '@pepperi-addons/ngx-lib';\nimport { PepRemoteLoaderOptions } from './remote-loader.model';\nimport { PepRemoteLoaderService } from './remote-loader.service';\nimport { BehaviorSubject, Observable, debounceTime } from 'rxjs';\n\ninterface BlockRemoteLoaderOptionsData { \n name?: string, \n slugName?: string, \n blockType?: string, \n addonUUID?: string, \n blockRemoteEntry?: string \n}\n\n@Component({\n selector: 'pep-remote-loader-element',\n template: `\n <!--<div #vc style=\"height: inherit;\"></div>-->\n `,\n styles: [`\n :host { width:100%; height: inherit }\n :host::ng-deep > * {\n height: inherit;\n }\n `],\n})\nexport class PepRemoteLoaderElementComponent implements AfterContentInit, OnChanges, OnDestroy {\n @Input() options: PepRemoteLoaderOptions;\n @Input() props: { [prop: string]: unknown };\n @Input() events: { [event: string]: (event: Event) => void };\n\n @Output() load: EventEmitter<any> = new EventEmitter();\n\n element: HTMLElement = null;\n\n private _elementName = '';\n private _blockType = '';\n private _alreadyLoaded = false;\n // // This is for debounce.\n // private _getBlockRemoteLoaderOptionsSubject = new BehaviorSubject<BlockRemoteLoaderOptionsData>(null);\n // get getBlockRemoteLoaderOptionsDebouncedSubject$(): Observable<BlockRemoteLoaderOptionsData> {\n // return this._getBlockRemoteLoaderOptionsSubject.asObservable().pipe(debounceTime(250));\n // }\n \n constructor(\n private renderer: Renderer2,\n private el:ElementRef,\n private pepAddonService: PepAddonService,\n private remoteLoaderService: PepRemoteLoaderService,\n @Optional() private route: ActivatedRoute\n ) { \n\n }\n\n private populateProps() {\n for (const prop in this.props) {\n this.element[prop] = this.props[prop];\n }\n }\n\n private setupEvents() {\n for (const event in this.events) {\n this.element.addEventListener(event, this.events[event]);\n }\n }\n\n private async loadOptionsFromRoute() {\n const params = this.route?.snapshot.params;\n const data = this.route?.snapshot.data;\n this._blockType = data?.blockType || 'SettingsBlock';\n\n const slugName = params?.slugName || data?.slugName;\n const blockName = params?.blockName || data?.blockName;\n \n if (blockName?.length > 0 || (slugName?.length > 0 && this._blockType === 'SettingsBlock')) {\n const addonUUID = params?.addonUUID || data?.addonUUID || '';\n const blockRemoteEntry = data?.blockRemoteEntry || '';\n\n this.options = await this.remoteLoaderService.getBlockRemoteLoaderOptions({\n name: blockName,\n slugName,\n blockType: this._blockType,\n addonUUID,\n blockRemoteEntry\n });\n\n const fileName = `${this.options['remoteName']}.js`;\n\n if (window.location.search.indexOf('dev=true') > 0) {\n this.options['remoteEntry'] = `http://localhost:4400/${fileName}`;\n }\n\n // Set the data into the props cause this component is loading from the route.\n this.props = data;\n }\n }\n\n ngOnChanges(): void {\n if (!this.element) return;\n\n this.populateProps();\n }\n\n ngOnDestroy() {\n // \n }\n\n /**\n * Loads the remote JS bundle as a script tag for web component remotes.\n * If the script is already loaded, resolves immediately.\n */\n // private async loadRemoteScript(remoteEntryUrl: string): Promise<any> {\n // return new Promise<any>((resolve, reject) => {\n // if (document.querySelector(`script[src=\"${remoteEntryUrl}\"]`)) {\n // // If script is already loaded, try to get the module\n // import(remoteEntryUrl).then(module => {\n // if (module && module.init) {\n // module.init();\n // }\n // resolve(module);\n // }).catch(err => reject(err));\n // return;\n // }\n \n // const script = document.createElement('script');\n // script.type = 'module';\n // script.src = remoteEntryUrl;\n \n // script.onload = () => {\n // // After script is loaded, dynamically import it to get the module\n // import(remoteEntryUrl).then(module => {\n // if (module && module.init) {\n // module.init();\n // }\n // resolve(module);\n // }).catch(err => reject(err));\n // };\n \n // script.onerror = (err) => reject(err);\n // document.body.appendChild(script);\n // });\n // }\n\n private loadElementFromModule() {\n\n if (!this.options) {\n throw new Error('No options supplied to the component.');\n } else {\n if (this.options?.addonId && (this.options.type === 'module' || this.options.type === 'script')) {\n const lastSlashIndex = this.options.remoteEntry?.lastIndexOf('/') || -1;\n \n if (lastSlashIndex > 0) {\n const publicPath = this.options.remoteEntry.substring(0, lastSlashIndex + 1);\n this.pepAddonService.setAddonStaticFolder(publicPath, this.options.addonId);\n }\n }\n const t0 = performance.now();\n\n // debugger;\n // this.loadRemoteScript(this.options['remoteEntry']).then(() => {\n loadRemoteModule(this.options).then((m) => {\n this._elementName = this.options.elementName;\n this.element = this.renderer.createElement(this._elementName);\n this.populateProps();\n this.setupEvents();\n \n this.renderer.appendChild(this.el.nativeElement, this.element);\n \n const t1 = performance.now();\n console.log('remote module wc load performance: ' + (t1-t0)/1000);\n \n // Fix internal routing bug.\n if (this._blockType === 'SettingsBlock') {\n this.pepAddonService.connectInternalRouter(this._elementName);\n }\n \n this.load.emit();\n });\n }\n }\n\n ngAfterContentInit() {\n try {\n // if (!this.element) { maybe the load of the element is too long so change to flag.\n if (!this._alreadyLoaded) {\n this._alreadyLoaded = true;\n // If the options is not supplied then we need to get it from the route.\n if (!this.options) {\n this.loadOptionsFromRoute().then(() => {\n this.loadElementFromModule();\n });\n } else {\n this.loadElementFromModule();\n }\n }\n }\n catch(error) {\n console.error(error);\n }\n }\n}","import { WebComponentWrapperOptions } from '@angular-architects/module-federation-tools';\nimport { Component, OnInit, Input, Output, EventEmitter, TemplateRef, ViewChild, OnDestroy } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { IPepRemoteLoaderParamsOptions, PepRemoteLoaderOptions } from './remote-loader.model';\nimport { PepRemoteLoaderService } from './remote-loader.service';\n\n@Component({\n selector: 'pep-addon-block-loader',\n templateUrl: './addon-block-loader.component.html',\n styleUrls: ['./addon-block-loader.component.scss']\n})\nexport class PepAddonBlockLoaderComponent implements OnInit, OnDestroy {\n @ViewChild('dialogTemplate', { static: true, read: TemplateRef }) dialogTemplate!: TemplateRef<any>;\n \n @Input() addonId = '';\n @Input() remoteEntry = '';\n @Input() slugName = '';\n\n private _blockType = 'AddonBlock';\n @Input() \n set blockType(value: string) {\n this._blockType = value;\n }\n get blockType(): string {\n return this._blockType;\n }\n\n private _name = '';\n @Input() \n set name(value: string) {\n this._name = value;\n }\n get name(): string {\n return this._name;\n }\n\n @Input() hostObject = null;\n \n private _dialogRef: MatDialogRef<any> = null;\n @Input()\n set dialogRef(value: MatDialogRef<any>) {\n this._dialogRef = value;\n this.inDialog = this._dialogRef != null;\n }\n get dialogRef(): MatDialogRef<any> {\n return this._dialogRef;\n }\n \n private _remoteLoaderOptions: PepRemoteLoaderOptions = null;\n @Input() \n set remoteLoaderOptions(value: PepRemoteLoaderOptions) {\n this._remoteLoaderOptions = value;\n this.loadElement = this.remoteLoaderOptions?.elementName?.length > 0;\n }\n get remoteLoaderOptions(): PepRemoteLoaderOptions {\n return this._remoteLoaderOptions;\n }\n\n @Output() hostEvents: EventEmitter<any> = new EventEmitter<any>();\n @Output() blockLoad: EventEmitter<void> = new EventEmitter<void>();\n \n protected inDialog = false;\n protected loadElement = false;\n\n protected onHostEventsCallback: (event: CustomEvent) => void;\n\n constructor(private remoteLoaderService: PepRemoteLoaderService) {\n this.onHostEventsCallback = (event: CustomEvent) => {\n this.onHostEvents(event.detail);\n }\n }\n \n ngOnInit() {\n if (this.remoteLoaderOptions === null) {\n const rlpOptions: IPepRemoteLoaderParamsOptions = {\n name: this.name,\n slugName: this.slugName,\n blockType: this.blockType,\n addonUUID: this.addonId,\n blockRemoteEntry: this.remoteEntry\n };\n\n this.remoteLoaderService.getBlockRemoteLoaderOptions(rlpOptions).then((options: PepRemoteLoaderOptions) => {\n this.remoteLoaderOptions = options;\n });\n }\n }\n\n ngOnDestroy(): void {\n if (this.dialogRef) {\n this.dialogRef = null;\n }\n\n this.remoteLoaderOptions = null;\n }\n\n onBlockLoad() {\n this.blockLoad.emit();\n }\n\n onHostEvents(event: any) {\n this.hostEvents.emit(event);\n }\n\n closeDialog(event) {\n this.dialogRef?.close(event);\n }\n}","<ng-container *ngIf=\"!inDialog\">\n <ng-container *ngTemplateOutlet=\"remoteLoaderTemplate\"></ng-container>\n</ng-container>\n\n<ng-template #dialogTemplate let-data>\n <pep-dialog [showClose]=\"data?.showClose\" [showHeader]=\"data?.showHeader\" [showFooter]=\"data?.showFooter\" [title]=\"data?.title\" (close)=\"closeDialog($event)\">\n <ng-container pep-dialog-content>\n <ng-container *ngTemplateOutlet=\"remoteLoaderTemplate\"></ng-container>\n </ng-container>\n </pep-dialog>\n</ng-template>\n\n<ng-template #remoteLoaderTemplate>\n <pep-remote-loader *ngIf=\"remoteLoaderOptions && !loadElement\"\n [options]=\"remoteLoaderOptions\"\n [hostObject]=\"hostObject\"\n (hostEvents)=\"onHostEvents($event);\"\n (load)=\"onBlockLoad()\">\n </pep-remote-loader>\n\n <pep-remote-loader-element *ngIf=\"remoteLoaderOptions && loadElement\" \n [options]=\"remoteLoaderOptions\"\n [props]=\"{ hostObject: hostObject }\"\n [events]=\"{ hostEvents: onHostEventsCallback }\"\n (load)=\"onBlockLoad()\">\n </pep-remote-loader-element>\n\n</ng-template>","import { ComponentFactoryResolver, ComponentRef, Injectable, Injector } from '@angular/core';\nimport { IAddonBlockLoaderDialogOptions, IAddonBlockLoaderOptions, IBlockLoaderData } from './remote-loader.model';\nimport { PepAddonBlockLoaderComponent } from './addon-block-loader.component';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\n\n@Injectable({ \n providedIn: 'root' \n})\nexport class PepAddonBlockLoaderService {\n \n constructor(\n private dialogService: PepDialogService,\n ) {\n //\n }\n\n private loadAddonBlockInternal(options: IAddonBlockLoaderDialogOptions): ComponentRef<PepAddonBlockLoaderComponent> | null {\n if (options.container !== null) {\n const componentRef = options.container.createComponent(PepAddonBlockLoaderComponent);\n const addonBlockInstance = componentRef.instance;\n\n addonBlockInstance.name = options.name;\n addonBlockInstance.slugName = options.slugName;\n addonBlockInstance.blockType = options.blockType || 'AddonBlock';\n addonBlockInstance.addonId = options.addonUUID;\n addonBlockInstance.remoteEntry = options.blockRemoteEntry;\n addonBlockInstance.hostObject = options.hostObject;\n\n if (options.remoteLoaderOptions) {\n addonBlockInstance.remoteLoaderOptions = options.remoteLoaderOptions;\n }\n\n addonBlockInstance.hostEvents.subscribe((event) => {\n if (options.hostEventsCallback) {\n options.hostEventsCallback(event);\n }\n });\n\n return componentRef;\n } else {\n return null;\n }\n }\n\n loadAddonBlockInContainer(options: IAddonBlockLoaderOptions): ComponentRef<PepAddonBlockLoaderComponent> | null {\n return this.loadAddonBlockInternal(options);\n }\n\n loadAddonBlockInDialog(options: IAddonBlockLoaderDialogOptions): MatDialogRef<any> | null {\n const componentRef = this.loadAddonBlockInternal(options);\n \n if (componentRef) {\n const addonBlockInstance = componentRef.instance;\n const pepConfig = this.dialogService.getDialogConfig({ disableClose: false, panelClass: 'remote-loader-dialog' }, options.size || 'full-screen');\n const mergeConfig = {...pepConfig, ...options.config}; \n const data = options.data || null;\n addonBlockInstance.dialogRef = this.dialogService.openDialog(addonBlockInstance.dialogTemplate, data, mergeConfig);\n addonBlockInstance.dialogRef.afterClosed().subscribe(() => {\n componentRef.hostView.detach();\n componentRef.hostView.destroy();\n componentRef.destroy();\n });\n return addonBlockInstance.dialogRef;\n\n } else {\n return null;\n }\n }\n}\n","import { HttpClientModule } from '@angular/common/http';\nimport { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { MatDialogModule } from '@angular/material/dialog';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\nimport { ModuleFederationToolsModule } from '@angular-architects/module-federation-tools';\n\nimport { PepAddonBlockLoaderComponent } from './addon-block-loader.component';\nimport { PepAddonBlockLoaderService } from './addon-block-loader.service';\n\nimport { PepRemoteLoaderComponent } from './remote-loader.component';\nimport { PepRemoteLoaderService } from './remote-loader.service';\nimport { PepRemoteLoaderElementComponent } from './remote-loader-element.component';\n\n@NgModule({\n declarations: [\n PepAddonBlockLoaderComponent,\n PepRemoteLoaderComponent,\n PepRemoteLoaderElementComponent,\n ],\n imports: [\n CommonModule,\n HttpClientModule,\n ModuleFederationToolsModule,\n // Material modules,\n MatDialogModule,\n // ngx-lib modules\n PepNgxLibModule,\n PepDialogModule,\n ],\n exports: [\n PepAddonBlockLoaderComponent,\n PepRemoteLoaderComponent,\n PepRemoteLoaderElementComponent\n ],\n providers: [\n PepAddonBlockLoaderService,\n PepRemoteLoaderService\n ]\n})\nexport class PepRemoteLoaderModule {\n\n\n}\n","/*\n * Public API Surface of remote-loader\n */\nexport * from './addon-block-loader.component';\nexport * from './addon-block-loader.service';\nexport * from './remote-loader.component';\nexport * from './remote-loader-element.component';\nexport * from './remote-loader.module';\nexport * from './remote-loader.model';\nexport * from './remote-loader.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.PepRemoteLoaderService","i1.PepRemoteLoaderService","i3","i4.PepRemoteLoaderComponent","i5.PepRemoteLoaderElementComponent","i1"],"mappings":"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"}
|