@pepperi-addons/ngx-lib 0.4.2-beta.137 → 0.4.2-beta.139
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 +30 -0
- package/address/address.module.d.ts +15 -0
- package/address/index.d.ts +5 -0
- package/address/public-api.d.ts +2 -0
- package/attachment/attachment.component.d.ts +94 -0
- package/attachment/attachment.module.d.ts +14 -0
- package/attachment/index.d.ts +5 -0
- package/attachment/public-api.d.ts +2 -0
- package/bread-crumbs/bread-crumbs.component.d.ts +27 -0
- package/bread-crumbs/bread-crumbs.model.d.ts +11 -0
- package/bread-crumbs/bread-crumbs.module.d.ts +15 -0
- package/bread-crumbs/index.d.ts +5 -0
- package/bread-crumbs/public-api.d.ts +3 -0
- package/carousel/carousel-item.directive.d.ts +12 -0
- package/carousel/carousel.component.d.ts +148 -0
- package/carousel/carousel.module.d.ts +8 -0
- package/carousel/index.d.ts +5 -0
- package/carousel/public-api.d.ts +3 -0
- package/checkbox/checkbox.component.d.ts +50 -0
- package/checkbox/checkbox.module.d.ts +19 -0
- package/checkbox/index.d.ts +5 -0
- package/checkbox/public-api.d.ts +2 -0
- package/color/color-picker.component.d.ts +57 -0
- package/color/color.component.d.ts +30 -0
- package/color/color.model.d.ts +1 -0
- package/color/color.module.d.ts +26 -0
- package/color/index.d.ts +5 -0
- package/color/public-api.d.ts +3 -0
- package/date/date.component.d.ts +70 -0
- package/date/date.model.d.ts +31 -0
- package/date/date.module.d.ts +23 -0
- package/date/index.d.ts +5 -0
- package/date/public-api.d.ts +2 -0
- package/draggable-items/draggable-item/draggable-item.component.d.ts +11 -0
- package/draggable-items/draggable-items.component.d.ts +36 -0
- package/draggable-items/draggable-items.model.d.ts +11 -0
- package/draggable-items/draggable-items.module.d.ts +18 -0
- package/draggable-items/index.d.ts +5 -0
- package/draggable-items/public-api.d.ts +4 -0
- package/esm2020/address/address.component.mjs +109 -0
- package/esm2020/address/address.module.mjs +54 -0
- package/esm2020/address/pepperi-addons-ngx-lib-address.mjs +5 -0
- package/esm2020/address/public-api.mjs +6 -0
- package/esm2020/attachment/attachment.component.mjs +240 -0
- package/esm2020/attachment/attachment.module.mjs +50 -0
- package/esm2020/attachment/pepperi-addons-ngx-lib-attachment.mjs +5 -0
- package/esm2020/attachment/public-api.mjs +6 -0
- package/esm2020/bread-crumbs/bread-crumbs.component.mjs +85 -0
- package/esm2020/bread-crumbs/bread-crumbs.model.mjs +7 -0
- package/esm2020/bread-crumbs/bread-crumbs.module.mjs +50 -0
- package/esm2020/bread-crumbs/pepperi-addons-ngx-lib-bread-crumbs.mjs +5 -0
- package/esm2020/bread-crumbs/public-api.mjs +7 -0
- package/esm2020/carousel/carousel-item.directive.mjs +33 -0
- package/esm2020/carousel/carousel.component.mjs +745 -0
- package/esm2020/carousel/carousel.module.mjs +17 -0
- package/esm2020/carousel/pepperi-addons-ngx-lib-carousel.mjs +5 -0
- package/esm2020/carousel/public-api.mjs +8 -0
- package/esm2020/checkbox/checkbox.component.mjs +168 -0
- package/esm2020/checkbox/checkbox.module.mjs +63 -0
- package/esm2020/checkbox/pepperi-addons-ngx-lib-checkbox.mjs +5 -0
- package/esm2020/checkbox/public-api.mjs +6 -0
- package/esm2020/color/color-picker.component.mjs +224 -0
- package/esm2020/color/color.component.mjs +90 -0
- package/esm2020/color/color.model.mjs +2 -0
- package/esm2020/color/color.module.mjs +93 -0
- package/esm2020/color/pepperi-addons-ngx-lib-color.mjs +5 -0
- package/esm2020/color/public-api.mjs +7 -0
- package/esm2020/date/date.component.mjs +312 -0
- package/esm2020/date/date.model.mjs +54 -0
- package/esm2020/date/date.module.mjs +88 -0
- package/esm2020/date/pepperi-addons-ngx-lib-date.mjs +5 -0
- package/esm2020/date/public-api.mjs +6 -0
- package/esm2020/draggable-items/draggable-item/draggable-item.component.mjs +27 -0
- package/esm2020/draggable-items/draggable-items.component.mjs +102 -0
- package/esm2020/draggable-items/draggable-items.model.mjs +2 -0
- package/esm2020/draggable-items/draggable-items.module.mjs +60 -0
- package/esm2020/draggable-items/pepperi-addons-ngx-lib-draggable-items.mjs +5 -0
- package/esm2020/draggable-items/public-api.mjs +8 -0
- package/esm2020/files-uploader/files-uploader.component.mjs +246 -0
- package/esm2020/files-uploader/files-uploader.module.mjs +79 -0
- package/esm2020/files-uploader/pepperi-addons-ngx-lib-files-uploader.mjs +5 -0
- package/esm2020/files-uploader/public-api.mjs +6 -0
- package/esm2020/form/field-generator.component.mjs +152 -0
- package/esm2020/form/form.component.mjs +1238 -0
- package/esm2020/form/form.model.mjs +2 -0
- package/esm2020/form/form.module.mjs +179 -0
- package/esm2020/form/indicators.component.mjs +23 -0
- package/esm2020/form/internal-button.component.mjs +184 -0
- package/esm2020/form/internal-carusel.component.mjs +117 -0
- package/esm2020/form/internal-carusel.service.mjs +32 -0
- package/esm2020/form/internal-field-generator.component.mjs +146 -0
- package/esm2020/form/internal-form.component.mjs +1216 -0
- package/esm2020/form/internal-list.component.mjs +513 -0
- package/esm2020/form/internal-menu.component.mjs +66 -0
- package/esm2020/form/internal-page.component.mjs +361 -0
- package/esm2020/form/internal-page.service.mjs +120 -0
- package/esm2020/form/pepperi-addons-ngx-lib-form.mjs +5 -0
- package/esm2020/form/public-api.mjs +7 -0
- package/esm2020/group-buttons/group-buttons.component.mjs +71 -0
- package/esm2020/group-buttons/group-buttons.module.mjs +59 -0
- package/esm2020/group-buttons/pepperi-addons-ngx-lib-group-buttons.mjs +5 -0
- package/esm2020/group-buttons/public-api.mjs +6 -0
- package/esm2020/image/image.component.mjs +263 -0
- package/esm2020/image/image.module.mjs +74 -0
- package/esm2020/image/image.service.mjs +50 -0
- package/esm2020/image/pepperi-addons-ngx-lib-image.mjs +5 -0
- package/esm2020/image/public-api.mjs +7 -0
- package/esm2020/images-filmstrip/images-filmstrip.component.mjs +337 -0
- package/esm2020/images-filmstrip/images-filmstrip.module.mjs +83 -0
- package/esm2020/images-filmstrip/pepperi-addons-ngx-lib-images-filmstrip.mjs +5 -0
- package/esm2020/images-filmstrip/public-api.mjs +6 -0
- package/esm2020/link/link.component.mjs +300 -0
- package/esm2020/link/link.module.mjs +80 -0
- package/esm2020/link/link.pipes.mjs +18 -0
- package/esm2020/link/pepperi-addons-ngx-lib-link.mjs +5 -0
- package/esm2020/link/public-api.mjs +7 -0
- package/esm2020/list/list-actions.component.mjs +44 -0
- package/esm2020/list/list-carousel.component.mjs +107 -0
- package/esm2020/list/list-chooser.component.mjs +64 -0
- package/esm2020/list/list-pager.component.mjs +120 -0
- package/esm2020/list/list-sorting.component.mjs +61 -0
- package/esm2020/list/list-total.component.mjs +30 -0
- package/esm2020/list/list-views.component.mjs +85 -0
- package/esm2020/list/list.component.mjs +1303 -0
- package/esm2020/list/list.model.mjs +4 -0
- package/esm2020/list/list.module.mjs +144 -0
- package/esm2020/list/list.pipes.mjs +47 -0
- package/esm2020/list/pepperi-addons-ngx-lib-list.mjs +5 -0
- package/esm2020/list/public-api.mjs +15 -0
- package/esm2020/list/virtual-scroller.mjs +1080 -0
- package/esm2020/menu/menu-item.component.mjs +115 -0
- package/esm2020/menu/menu.component.mjs +213 -0
- package/esm2020/menu/menu.model.mjs +19 -0
- package/esm2020/menu/menu.module.mjs +59 -0
- package/esm2020/menu/pepperi-addons-ngx-lib-menu.mjs +5 -0
- package/esm2020/menu/public-api.mjs +7 -0
- package/esm2020/page-layout/page-layout.component.mjs +35 -0
- package/esm2020/page-layout/page-layout.module.mjs +34 -0
- package/esm2020/page-layout/pepperi-addons-ngx-lib-page-layout.mjs +5 -0
- package/esm2020/page-layout/public-api.mjs +6 -0
- package/esm2020/profile-data-views-list/pepperi-addons-ngx-lib-profile-data-views-list.mjs +5 -0
- package/esm2020/profile-data-views-list/profile-data-view/profile-data-view.component.mjs +45 -0
- package/esm2020/profile-data-views-list/profile-data-views-card/profile-data-views-card.component.mjs +81 -0
- package/esm2020/profile-data-views-list/profile-data-views-list.component.mjs +127 -0
- package/esm2020/profile-data-views-list/profile-data-views-list.model.mjs +2 -0
- package/esm2020/profile-data-views-list/profile-data-views-list.module.mjs +88 -0
- package/esm2020/profile-data-views-list/public-api.mjs +9 -0
- package/esm2020/quantity-selector/pepperi-addons-ngx-lib-quantity-selector.mjs +5 -0
- package/esm2020/quantity-selector/public-api.mjs +6 -0
- package/esm2020/quantity-selector/quantity-selector-validation.directive.mjs +49 -0
- package/esm2020/quantity-selector/quantity-selector.component.mjs +574 -0
- package/esm2020/quantity-selector/quantity-selector.module.mjs +82 -0
- package/esm2020/quantity-selector/quantity-selector.pipes.mjs +23 -0
- package/esm2020/query-builder/common/model/field.mjs +2 -0
- package/esm2020/query-builder/common/model/filter.mjs +2 -0
- package/esm2020/query-builder/common/model/legacy.mjs +2 -0
- package/esm2020/query-builder/common/model/operator-unit.mjs +42 -0
- package/esm2020/query-builder/common/model/operator.mjs +276 -0
- package/esm2020/query-builder/common/model/structure.mjs +2 -0
- package/esm2020/query-builder/common/model/type-map.mjs +27 -0
- package/esm2020/query-builder/common/model/type.mjs +6 -0
- package/esm2020/query-builder/common/services/output-query.service.mjs +116 -0
- package/esm2020/query-builder/common/services/query-structure.service.mjs +249 -0
- package/esm2020/query-builder/common/services/type-convertor.service.mjs +42 -0
- package/esm2020/query-builder/pepperi-addons-ngx-lib-query-builder.mjs +5 -0
- package/esm2020/query-builder/public-api.mjs +9 -0
- package/esm2020/query-builder/query-builder-item/query-builder-item.component.mjs +125 -0
- package/esm2020/query-builder/query-builder-section/query-builder-section.component.mjs +71 -0
- package/esm2020/query-builder/query-builder.component.mjs +110 -0
- package/esm2020/query-builder/query-builder.module.mjs +70 -0
- package/esm2020/query-builder/query-builder.service.mjs +102 -0
- package/esm2020/remote-loader/addon-block-loader.component.mjs +102 -0
- package/esm2020/remote-loader/addon-block-loader.service.mjs +62 -0
- package/esm2020/remote-loader/pepperi-addons-ngx-lib-remote-loader.mjs +5 -0
- package/esm2020/remote-loader/public-api.mjs +11 -0
- package/esm2020/remote-loader/remote-loader-element.component.mjs +116 -0
- package/esm2020/remote-loader/remote-loader.component.mjs +115 -0
- package/esm2020/remote-loader/remote-loader.model.mjs +2 -0
- package/esm2020/remote-loader/remote-loader.module.mjs +69 -0
- package/esm2020/remote-loader/remote-loader.service.mjs +81 -0
- package/esm2020/rich-html-textarea/pepperi-addons-ngx-lib-rich-html-textarea.mjs +5 -0
- package/esm2020/rich-html-textarea/public-api.mjs +6 -0
- package/esm2020/rich-html-textarea/rich-html-textarea.component.mjs +250 -0
- package/esm2020/rich-html-textarea/rich-html-textarea.module.mjs +95 -0
- package/esm2020/search/pepperi-addons-ngx-lib-search.mjs +5 -0
- package/esm2020/search/public-api.mjs +7 -0
- package/esm2020/search/search.component.mjs +317 -0
- package/esm2020/search/search.model.mjs +2 -0
- package/esm2020/search/search.module.mjs +70 -0
- package/esm2020/select/pepperi-addons-ngx-lib-select.mjs +5 -0
- package/esm2020/select/public-api.mjs +6 -0
- package/esm2020/select/select.component.mjs +290 -0
- package/esm2020/select/select.module.mjs +70 -0
- package/esm2020/select-panel/pepperi-addons-ngx-lib-select-panel.mjs +5 -0
- package/esm2020/select-panel/public-api.mjs +7 -0
- package/esm2020/select-panel/select-panel.component.mjs +159 -0
- package/esm2020/select-panel/select-panel.model.mjs +2 -0
- package/esm2020/select-panel/select-panel.module.mjs +70 -0
- package/esm2020/separator/pepperi-addons-ngx-lib-separator.mjs +5 -0
- package/esm2020/separator/public-api.mjs +6 -0
- package/esm2020/separator/separator.component.mjs +63 -0
- package/esm2020/separator/separator.module.mjs +18 -0
- package/esm2020/side-bar/pepperi-addons-ngx-lib-side-bar.mjs +5 -0
- package/esm2020/side-bar/public-api.mjs +7 -0
- package/esm2020/side-bar/side-bar.component.mjs +122 -0
- package/esm2020/side-bar/side-bar.model.mjs +2 -0
- package/esm2020/side-bar/side-bar.module.mjs +55 -0
- package/esm2020/signature/pepperi-addons-ngx-lib-signature.mjs +5 -0
- package/esm2020/signature/public-api.mjs +7 -0
- package/esm2020/signature/signature-dialog.component.mjs +79 -0
- package/esm2020/signature/signature.component.mjs +282 -0
- package/esm2020/signature/signature.module.mjs +91 -0
- package/esm2020/size-detector/pepperi-addons-ngx-lib-size-detector.mjs +5 -0
- package/esm2020/size-detector/public-api.mjs +6 -0
- package/esm2020/size-detector/size-detector.component.mjs +92 -0
- package/esm2020/size-detector/size-detector.module.mjs +35 -0
- package/esm2020/skeleton-loader/pepperi-addons-ngx-lib-skeleton-loader.mjs +5 -0
- package/esm2020/skeleton-loader/public-api.mjs +6 -0
- package/esm2020/skeleton-loader/skeleton-loader.component.mjs +44 -0
- package/esm2020/skeleton-loader/skeleton-loader.module.mjs +24 -0
- package/esm2020/smart-filters/boolean-filter/boolean-filter.component.mjs +75 -0
- package/esm2020/smart-filters/common/filter-actions.component.mjs +29 -0
- package/esm2020/smart-filters/common/model/base-filter-component.mjs +296 -0
- package/esm2020/smart-filters/common/model/creator.mjs +76 -0
- package/esm2020/smart-filters/common/model/field.mjs +117 -0
- package/esm2020/smart-filters/common/model/filter.mjs +2 -0
- package/esm2020/smart-filters/common/model/operator.mjs +278 -0
- package/esm2020/smart-filters/common/model/type.mjs +2 -0
- package/esm2020/smart-filters/date-filter/date-filter.component.mjs +182 -0
- package/esm2020/smart-filters/multi-select-filter/multi-select-filter.component.mjs +200 -0
- package/esm2020/smart-filters/number-filter/number-filter.component.mjs +136 -0
- package/esm2020/smart-filters/pepperi-addons-ngx-lib-smart-filters.mjs +5 -0
- package/esm2020/smart-filters/public-api.mjs +19 -0
- package/esm2020/smart-filters/smart-filters.component.mjs +141 -0
- package/esm2020/smart-filters/smart-filters.module.mjs +158 -0
- package/esm2020/smart-filters/text-filter/text-filter.component.mjs +93 -0
- package/esm2020/snack-bar/default-snack-bar.component.mjs +29 -0
- package/esm2020/snack-bar/pepperi-addons-ngx-lib-snack-bar.mjs +5 -0
- package/esm2020/snack-bar/public-api.mjs +8 -0
- package/esm2020/snack-bar/snack-bar.component.mjs +26 -0
- package/esm2020/snack-bar/snack-bar.model.mjs +7 -0
- package/esm2020/snack-bar/snack-bar.module.mjs +63 -0
- package/esm2020/snack-bar/snack-bar.service.mjs +60 -0
- package/esm2020/textarea/pepperi-addons-ngx-lib-textarea.mjs +5 -0
- package/esm2020/textarea/public-api.mjs +6 -0
- package/esm2020/textarea/textarea.component.mjs +188 -0
- package/esm2020/textarea/textarea.module.mjs +82 -0
- package/esm2020/textbox/pepperi-addons-ngx-lib-textbox.mjs +5 -0
- package/esm2020/textbox/public-api.mjs +6 -0
- package/esm2020/textbox/textbox-validation.directive.mjs +93 -0
- package/esm2020/textbox/textbox.component.mjs +582 -0
- package/esm2020/textbox/textbox.module.mjs +72 -0
- package/esm2020/top-bar/pepperi-addons-ngx-lib-top-bar.mjs +5 -0
- package/esm2020/top-bar/public-api.mjs +7 -0
- package/esm2020/top-bar/top-bar.component.mjs +112 -0
- package/esm2020/top-bar/top-bar.model.mjs +2 -0
- package/esm2020/top-bar/top-bar.module.mjs +62 -0
- package/fesm2015/pepperi-addons-ngx-lib-address.mjs +170 -0
- package/fesm2015/pepperi-addons-ngx-lib-address.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-attachment.mjs +297 -0
- package/fesm2015/pepperi-addons-ngx-lib-attachment.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.mjs +147 -0
- package/fesm2015/pepperi-addons-ngx-lib-bread-crumbs.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-carousel.mjs +804 -0
- package/fesm2015/pepperi-addons-ngx-lib-carousel.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.mjs +237 -0
- package/fesm2015/pepperi-addons-ngx-lib-checkbox.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-color.mjs +404 -0
- package/fesm2015/pepperi-addons-ngx-lib-color.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-date.mjs +458 -0
- package/fesm2015/pepperi-addons-ngx-lib-date.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-draggable-items.mjs +192 -0
- package/fesm2015/pepperi-addons-ngx-lib-draggable-items.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-files-uploader.mjs +331 -0
- package/fesm2015/pepperi-addons-ngx-lib-files-uploader.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-form.mjs +4226 -0
- package/fesm2015/pepperi-addons-ngx-lib-form.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-group-buttons.mjs +136 -0
- package/fesm2015/pepperi-addons-ngx-lib-group-buttons.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-image.mjs +388 -0
- package/fesm2015/pepperi-addons-ngx-lib-image.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs +425 -0
- package/fesm2015/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-link.mjs +399 -0
- package/fesm2015/pepperi-addons-ngx-lib-link.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-list.mjs +3047 -0
- package/fesm2015/pepperi-addons-ngx-lib-list.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-menu.mjs +399 -0
- package/fesm2015/pepperi-addons-ngx-lib-menu.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-page-layout.mjs +77 -0
- package/fesm2015/pepperi-addons-ngx-lib-page-layout.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.mjs +337 -0
- package/fesm2015/pepperi-addons-ngx-lib-profile-data-views-list.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs +728 -0
- package/fesm2015/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs +1216 -0
- package/fesm2015/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-remote-loader.mjs +555 -0
- package/fesm2015/pepperi-addons-ngx-lib-remote-loader.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.mjs +349 -0
- package/fesm2015/pepperi-addons-ngx-lib-rich-html-textarea.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-search.mjs +393 -0
- package/fesm2015/pepperi-addons-ngx-lib-search.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-select-panel.mjs +237 -0
- package/fesm2015/pepperi-addons-ngx-lib-select-panel.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-select.mjs +366 -0
- package/fesm2015/pepperi-addons-ngx-lib-select.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-separator.mjs +89 -0
- package/fesm2015/pepperi-addons-ngx-lib-separator.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-side-bar.mjs +182 -0
- package/fesm2015/pepperi-addons-ngx-lib-side-bar.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-signature.mjs +455 -0
- package/fesm2015/pepperi-addons-ngx-lib-signature.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-size-detector.mjs +134 -0
- package/fesm2015/pepperi-addons-ngx-lib-size-detector.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-skeleton-loader.mjs +78 -0
- package/fesm2015/pepperi-addons-ngx-lib-skeleton-loader.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-smart-filters.mjs +1715 -0
- package/fesm2015/pepperi-addons-ngx-lib-smart-filters.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-snack-bar.mjs +183 -0
- package/fesm2015/pepperi-addons-ngx-lib-snack-bar.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-textarea.mjs +277 -0
- package/fesm2015/pepperi-addons-ngx-lib-textarea.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs +748 -0
- package/fesm2015/pepperi-addons-ngx-lib-textbox.mjs.map +1 -0
- package/fesm2015/pepperi-addons-ngx-lib-top-bar.mjs +180 -0
- package/fesm2015/pepperi-addons-ngx-lib-top-bar.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-address.mjs +170 -0
- package/fesm2020/pepperi-addons-ngx-lib-address.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-attachment.mjs +297 -0
- package/fesm2020/pepperi-addons-ngx-lib-attachment.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-bread-crumbs.mjs +147 -0
- package/fesm2020/pepperi-addons-ngx-lib-bread-crumbs.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-carousel.mjs +800 -0
- package/fesm2020/pepperi-addons-ngx-lib-carousel.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-checkbox.mjs +237 -0
- package/fesm2020/pepperi-addons-ngx-lib-checkbox.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-color.mjs +401 -0
- package/fesm2020/pepperi-addons-ngx-lib-color.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-date.mjs +454 -0
- package/fesm2020/pepperi-addons-ngx-lib-date.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-draggable-items.mjs +191 -0
- package/fesm2020/pepperi-addons-ngx-lib-draggable-items.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-files-uploader.mjs +328 -0
- package/fesm2020/pepperi-addons-ngx-lib-files-uploader.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-form.mjs +4225 -0
- package/fesm2020/pepperi-addons-ngx-lib-form.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-group-buttons.mjs +136 -0
- package/fesm2020/pepperi-addons-ngx-lib-group-buttons.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-image.mjs +386 -0
- package/fesm2020/pepperi-addons-ngx-lib-image.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs +422 -0
- package/fesm2020/pepperi-addons-ngx-lib-images-filmstrip.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-link.mjs +399 -0
- package/fesm2020/pepperi-addons-ngx-lib-link.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-list.mjs +3035 -0
- package/fesm2020/pepperi-addons-ngx-lib-list.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-menu.mjs +399 -0
- package/fesm2020/pepperi-addons-ngx-lib-menu.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-page-layout.mjs +77 -0
- package/fesm2020/pepperi-addons-ngx-lib-page-layout.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-profile-data-views-list.mjs +336 -0
- package/fesm2020/pepperi-addons-ngx-lib-profile-data-views-list.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs +726 -0
- package/fesm2020/pepperi-addons-ngx-lib-quantity-selector.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-query-builder.mjs +1202 -0
- package/fesm2020/pepperi-addons-ngx-lib-query-builder.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-remote-loader.mjs +532 -0
- package/fesm2020/pepperi-addons-ngx-lib-remote-loader.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-rich-html-textarea.mjs +349 -0
- package/fesm2020/pepperi-addons-ngx-lib-rich-html-textarea.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-search.mjs +392 -0
- package/fesm2020/pepperi-addons-ngx-lib-search.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-select-panel.mjs +236 -0
- package/fesm2020/pepperi-addons-ngx-lib-select-panel.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-select.mjs +366 -0
- package/fesm2020/pepperi-addons-ngx-lib-select.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-separator.mjs +89 -0
- package/fesm2020/pepperi-addons-ngx-lib-separator.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-side-bar.mjs +182 -0
- package/fesm2020/pepperi-addons-ngx-lib-side-bar.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-signature.mjs +450 -0
- package/fesm2020/pepperi-addons-ngx-lib-signature.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-size-detector.mjs +134 -0
- package/fesm2020/pepperi-addons-ngx-lib-size-detector.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-skeleton-loader.mjs +76 -0
- package/fesm2020/pepperi-addons-ngx-lib-skeleton-loader.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-smart-filters.mjs +1708 -0
- package/fesm2020/pepperi-addons-ngx-lib-smart-filters.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-snack-bar.mjs +180 -0
- package/fesm2020/pepperi-addons-ngx-lib-snack-bar.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-textarea.mjs +276 -0
- package/fesm2020/pepperi-addons-ngx-lib-textarea.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-textbox.mjs +748 -0
- package/fesm2020/pepperi-addons-ngx-lib-textbox.mjs.map +1 -0
- package/fesm2020/pepperi-addons-ngx-lib-top-bar.mjs +179 -0
- package/fesm2020/pepperi-addons-ngx-lib-top-bar.mjs.map +1 -0
- package/files-uploader/files-uploader.component.d.ts +60 -0
- package/files-uploader/files-uploader.module.d.ts +21 -0
- package/files-uploader/index.d.ts +5 -0
- package/files-uploader/public-api.d.ts +2 -0
- package/form/field-generator.component.d.ts +37 -0
- package/form/form.component.d.ts +93 -0
- package/form/form.model.d.ts +20 -0
- package/form/form.module.d.ts +50 -0
- package/form/index.d.ts +5 -0
- package/form/indicators.component.d.ts +10 -0
- package/form/internal-button.component.d.ts +42 -0
- package/form/internal-carusel.component.d.ts +39 -0
- package/form/internal-carusel.service.d.ts +10 -0
- package/form/internal-field-generator.component.d.ts +33 -0
- package/form/internal-form.component.d.ts +89 -0
- package/form/internal-list.component.d.ts +95 -0
- package/form/internal-menu.component.d.ts +19 -0
- package/form/internal-page.component.d.ts +73 -0
- package/form/internal-page.service.d.ts +22 -0
- package/form/public-api.d.ts +3 -0
- package/group-buttons/group-buttons.component.d.ts +24 -0
- package/group-buttons/group-buttons.module.d.ts +18 -0
- package/group-buttons/index.d.ts +5 -0
- package/group-buttons/public-api.d.ts +2 -0
- package/image/image.component.d.ts +74 -0
- package/image/image.module.d.ts +20 -0
- package/image/image.service.d.ts +14 -0
- package/image/index.d.ts +5 -0
- package/image/public-api.d.ts +3 -0
- package/images-filmstrip/images-filmstrip.component.d.ts +87 -0
- package/images-filmstrip/images-filmstrip.module.d.ts +22 -0
- package/images-filmstrip/index.d.ts +5 -0
- package/images-filmstrip/public-api.d.ts +2 -0
- package/link/index.d.ts +5 -0
- package/link/link.component.d.ts +121 -0
- package/link/link.module.d.ts +22 -0
- package/link/link.pipes.d.ts +7 -0
- package/link/public-api.d.ts +3 -0
- package/list/index.d.ts +5 -0
- package/list/list-actions.component.d.ts +18 -0
- package/list/list-carousel.component.d.ts +40 -0
- package/list/list-chooser.component.d.ts +29 -0
- package/list/list-pager.component.d.ts +39 -0
- package/list/list-sorting.component.d.ts +30 -0
- package/list/list-total.component.d.ts +11 -0
- package/list/list-views.component.d.ts +35 -0
- package/list/list.component.d.ts +177 -0
- package/list/list.model.d.ts +32 -0
- package/list/list.module.d.ts +34 -0
- package/list/list.pipes.d.ts +16 -0
- package/list/public-api.d.ts +10 -0
- package/list/virtual-scroller.d.ts +183 -0
- package/menu/index.d.ts +5 -0
- package/menu/menu-item.component.d.ts +28 -0
- package/menu/menu.component.d.ts +48 -0
- package/menu/menu.model.d.ts +25 -0
- package/menu/menu.module.d.ts +18 -0
- package/menu/public-api.d.ts +3 -0
- package/package.json +1 -1
- package/page-layout/index.d.ts +5 -0
- package/page-layout/page-layout.component.d.ts +19 -0
- package/page-layout/page-layout.module.d.ts +10 -0
- package/page-layout/public-api.d.ts +2 -0
- package/profile-data-views-list/index.d.ts +5 -0
- package/profile-data-views-list/profile-data-view/profile-data-view.component.d.ts +18 -0
- package/profile-data-views-list/profile-data-views-card/profile-data-views-card.component.d.ts +25 -0
- package/profile-data-views-list/profile-data-views-list.component.d.ts +38 -0
- package/profile-data-views-list/profile-data-views-list.model.d.ts +26 -0
- package/profile-data-views-list/profile-data-views-list.module.d.ts +23 -0
- package/profile-data-views-list/public-api.d.ts +5 -0
- package/quantity-selector/index.d.ts +5 -0
- package/quantity-selector/public-api.d.ts +2 -0
- package/quantity-selector/quantity-selector-validation.directive.d.ts +17 -0
- package/quantity-selector/quantity-selector.component.d.ts +110 -0
- package/quantity-selector/quantity-selector.module.d.ts +23 -0
- package/quantity-selector/quantity-selector.pipes.d.ts +7 -0
- package/query-builder/common/model/field.d.ts +8 -0
- package/query-builder/common/model/filter.d.ts +6 -0
- package/query-builder/common/model/legacy.d.ts +31 -0
- package/query-builder/common/model/operator-unit.d.ts +13 -0
- package/query-builder/common/model/operator.d.ts +31 -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 +47 -0
- package/query-builder/common/services/query-structure.service.d.ts +83 -0
- package/query-builder/common/services/type-convertor.service.d.ts +13 -0
- package/query-builder/index.d.ts +5 -0
- package/query-builder/public-api.d.ts +5 -0
- package/query-builder/query-builder-item/query-builder-item.component.d.ts +41 -0
- package/query-builder/query-builder-section/query-builder-section.component.d.ts +30 -0
- package/query-builder/query-builder.component.d.ts +39 -0
- package/query-builder/query-builder.module.d.ts +20 -0
- package/query-builder/query-builder.service.d.ts +30 -0
- package/remote-loader/addon-block-loader.component.d.ts +36 -0
- package/remote-loader/addon-block-loader.service.d.ts +15 -0
- package/remote-loader/index.d.ts +5 -0
- package/remote-loader/public-api.d.ts +7 -0
- package/remote-loader/remote-loader-element.component.d.ts +32 -0
- package/remote-loader/remote-loader.component.d.ts +25 -0
- package/remote-loader/remote-loader.model.d.ts +41 -0
- package/remote-loader/remote-loader.module.d.ts +15 -0
- package/remote-loader/remote-loader.service.d.ts +15 -0
- package/rich-html-textarea/index.d.ts +5 -0
- package/rich-html-textarea/public-api.d.ts +2 -0
- package/rich-html-textarea/rich-html-textarea.component.d.ts +80 -0
- package/rich-html-textarea/rich-html-textarea.module.d.ts +25 -0
- package/search/index.d.ts +5 -0
- package/search/public-api.d.ts +3 -0
- package/search/search.component.d.ts +65 -0
- package/search/search.model.d.ts +14 -0
- package/search/search.module.d.ts +20 -0
- package/select/index.d.ts +5 -0
- package/select/public-api.d.ts +2 -0
- package/select/select.component.d.ts +67 -0
- package/select/select.module.d.ts +20 -0
- package/select-panel/index.d.ts +5 -0
- package/select-panel/public-api.d.ts +3 -0
- package/select-panel/select-panel.component.d.ts +51 -0
- package/select-panel/select-panel.model.d.ts +5 -0
- package/select-panel/select-panel.module.d.ts +19 -0
- package/separator/index.d.ts +5 -0
- package/separator/public-api.d.ts +2 -0
- package/separator/separator.component.d.ts +22 -0
- package/separator/separator.module.d.ts +8 -0
- package/side-bar/index.d.ts +5 -0
- package/side-bar/public-api.d.ts +3 -0
- package/side-bar/side-bar.component.d.ts +42 -0
- package/side-bar/side-bar.model.d.ts +4 -0
- package/side-bar/side-bar.module.d.ts +16 -0
- package/signature/index.d.ts +5 -0
- package/signature/public-api.d.ts +3 -0
- package/signature/signature-dialog.component.d.ts +29 -0
- package/signature/signature.component.d.ts +59 -0
- package/signature/signature.module.d.ts +25 -0
- package/size-detector/index.d.ts +5 -0
- package/size-detector/public-api.d.ts +2 -0
- package/size-detector/size-detector.component.d.ts +29 -0
- package/size-detector/size-detector.module.d.ts +11 -0
- package/skeleton-loader/index.d.ts +5 -0
- package/skeleton-loader/public-api.d.ts +2 -0
- package/skeleton-loader/skeleton-loader.component.d.ts +20 -0
- package/skeleton-loader/skeleton-loader.module.d.ts +9 -0
- package/smart-filters/boolean-filter/boolean-filter.component.d.ts +29 -0
- package/smart-filters/common/filter-actions.component.d.ts +12 -0
- package/smart-filters/common/model/base-filter-component.d.ts +74 -0
- package/smart-filters/common/model/creator.d.ts +6 -0
- package/smart-filters/common/model/field.d.ts +69 -0
- package/smart-filters/common/model/filter.d.ts +11 -0
- package/smart-filters/common/model/operator.d.ts +52 -0
- package/smart-filters/common/model/type.d.ts +4 -0
- package/smart-filters/date-filter/date-filter.component.d.ts +61 -0
- package/smart-filters/index.d.ts +5 -0
- package/smart-filters/multi-select-filter/multi-select-filter.component.d.ts +57 -0
- package/smart-filters/number-filter/number-filter.component.d.ts +53 -0
- package/smart-filters/public-api.d.ts +14 -0
- package/smart-filters/smart-filters.component.d.ts +35 -0
- package/smart-filters/smart-filters.module.d.ts +37 -0
- package/smart-filters/text-filter/text-filter.component.d.ts +29 -0
- package/snack-bar/default-snack-bar.component.d.ts +13 -0
- package/snack-bar/index.d.ts +5 -0
- package/snack-bar/public-api.d.ts +4 -0
- package/snack-bar/snack-bar.component.d.ts +12 -0
- package/snack-bar/snack-bar.model.d.ts +8 -0
- package/snack-bar/snack-bar.module.d.ts +19 -0
- package/snack-bar/snack-bar.service.d.ts +24 -0
- package/textarea/index.d.ts +5 -0
- package/textarea/public-api.d.ts +2 -0
- package/textarea/textarea.component.d.ts +56 -0
- package/textarea/textarea.module.d.ts +23 -0
- package/textbox/index.d.ts +5 -0
- package/textbox/public-api.d.ts +2 -0
- package/textbox/textbox-validation.directive.d.ts +22 -0
- package/textbox/textbox.component.d.ts +157 -0
- package/textbox/textbox.module.d.ts +22 -0
- package/top-bar/index.d.ts +5 -0
- package/top-bar/public-api.d.ts +3 -0
- package/top-bar/top-bar.component.d.ts +39 -0
- package/top-bar/top-bar.model.d.ts +4 -0
- package/top-bar/top-bar.module.d.ts +18 -0
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { NgModule } from '@angular/core';
|
|
2
|
+
import { CommonModule } from '@angular/common';
|
|
3
|
+
import { ReactiveFormsModule } from '@angular/forms';
|
|
4
|
+
import { MatCommonModule } from '@angular/material/core';
|
|
5
|
+
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
6
|
+
import { MatIconModule } from '@angular/material/icon';
|
|
7
|
+
import { PepNgxLibModule } from '@pepperi-addons/ngx-lib';
|
|
8
|
+
import { PepIconModule, pepIconSystemMenu, pepIconSystemBolt, pepIconIndicatorDotPlaceholder, } from '@pepperi-addons/ngx-lib/icon';
|
|
9
|
+
import { PepFieldTitleModule } from '@pepperi-addons/ngx-lib/field-title';
|
|
10
|
+
import { PepFilesUploaderModule } from '@pepperi-addons/ngx-lib/files-uploader';
|
|
11
|
+
import { PepImagesFilmstripModule, PepImagesFilmstripComponent, } from '@pepperi-addons/ngx-lib/images-filmstrip';
|
|
12
|
+
import { PepImageComponent } from './image.component';
|
|
13
|
+
import { PepImageService } from './image.service';
|
|
14
|
+
import * as i0 from "@angular/core";
|
|
15
|
+
import * as i1 from "@pepperi-addons/ngx-lib/icon";
|
|
16
|
+
export class PepImageModule {
|
|
17
|
+
constructor(pepIconRegistry) {
|
|
18
|
+
this.pepIconRegistry = pepIconRegistry;
|
|
19
|
+
this.pepIconRegistry.registerIcons([
|
|
20
|
+
pepIconSystemMenu,
|
|
21
|
+
pepIconSystemBolt,
|
|
22
|
+
pepIconIndicatorDotPlaceholder,
|
|
23
|
+
]);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
PepImageModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepImageModule, deps: [{ token: i1.PepIconRegistry }], target: i0.ɵɵFactoryTarget.NgModule });
|
|
27
|
+
PepImageModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.0.2", ngImport: i0, type: PepImageModule, declarations: [PepImageComponent], imports: [CommonModule,
|
|
28
|
+
ReactiveFormsModule,
|
|
29
|
+
// Material modules,
|
|
30
|
+
MatCommonModule,
|
|
31
|
+
MatFormFieldModule,
|
|
32
|
+
MatIconModule,
|
|
33
|
+
// ngx-lib modules
|
|
34
|
+
PepNgxLibModule,
|
|
35
|
+
PepIconModule,
|
|
36
|
+
PepFieldTitleModule,
|
|
37
|
+
PepImagesFilmstripModule,
|
|
38
|
+
PepFilesUploaderModule], exports: [PepImageComponent] });
|
|
39
|
+
PepImageModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepImageModule, providers: [PepImageService], imports: [CommonModule,
|
|
40
|
+
ReactiveFormsModule,
|
|
41
|
+
// Material modules,
|
|
42
|
+
MatCommonModule,
|
|
43
|
+
MatFormFieldModule,
|
|
44
|
+
MatIconModule,
|
|
45
|
+
// ngx-lib modules
|
|
46
|
+
PepNgxLibModule,
|
|
47
|
+
PepIconModule,
|
|
48
|
+
PepFieldTitleModule,
|
|
49
|
+
PepImagesFilmstripModule,
|
|
50
|
+
PepFilesUploaderModule] });
|
|
51
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepImageModule, decorators: [{
|
|
52
|
+
type: NgModule,
|
|
53
|
+
args: [{
|
|
54
|
+
imports: [
|
|
55
|
+
CommonModule,
|
|
56
|
+
ReactiveFormsModule,
|
|
57
|
+
// Material modules,
|
|
58
|
+
MatCommonModule,
|
|
59
|
+
MatFormFieldModule,
|
|
60
|
+
MatIconModule,
|
|
61
|
+
// ngx-lib modules
|
|
62
|
+
PepNgxLibModule,
|
|
63
|
+
PepIconModule,
|
|
64
|
+
PepFieldTitleModule,
|
|
65
|
+
PepImagesFilmstripModule,
|
|
66
|
+
PepFilesUploaderModule,
|
|
67
|
+
],
|
|
68
|
+
exports: [PepImageComponent],
|
|
69
|
+
declarations: [PepImageComponent],
|
|
70
|
+
entryComponents: [PepImagesFilmstripComponent],
|
|
71
|
+
providers: [PepImageService]
|
|
72
|
+
}]
|
|
73
|
+
}], ctorParameters: function () { return [{ type: i1.PepIconRegistry }]; } });
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2UubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpYi9pbWFnZS9pbWFnZS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUNILGFBQWEsRUFFYixpQkFBaUIsRUFDakIsaUJBQWlCLEVBQ2pCLDhCQUE4QixHQUNqQyxNQUFNLDhCQUE4QixDQUFDO0FBQ3RDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQ2hGLE9BQU8sRUFDSCx3QkFBd0IsRUFDeEIsMkJBQTJCLEdBQzlCLE1BQU0sMENBQTBDLENBQUM7QUFFbEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7QUFzQmxELE1BQU0sT0FBTyxjQUFjO0lBQ3ZCLFlBQW9CLGVBQWdDO1FBQWhDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoRCxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQztZQUMvQixpQkFBaUI7WUFDakIsaUJBQWlCO1lBQ2pCLDhCQUE4QjtTQUNqQyxDQUFDLENBQUM7SUFDUCxDQUFDOzsyR0FQUSxjQUFjOzRHQUFkLGNBQWMsaUJBSlIsaUJBQWlCLGFBZDVCLFlBQVk7UUFDWixtQkFBbUI7UUFDbkIsb0JBQW9CO1FBQ3BCLGVBQWU7UUFDZixrQkFBa0I7UUFDbEIsYUFBYTtRQUNiLGtCQUFrQjtRQUNsQixlQUFlO1FBQ2YsYUFBYTtRQUNiLG1CQUFtQjtRQUNuQix3QkFBd0I7UUFDeEIsc0JBQXNCLGFBRWhCLGlCQUFpQjs0R0FLbEIsY0FBYyxhQUZaLENBQUMsZUFBZSxDQUFDLFlBaEJ4QixZQUFZO1FBQ1osbUJBQW1CO1FBQ25CLG9CQUFvQjtRQUNwQixlQUFlO1FBQ2Ysa0JBQWtCO1FBQ2xCLGFBQWE7UUFDYixrQkFBa0I7UUFDbEIsZUFBZTtRQUNmLGFBQWE7UUFDYixtQkFBbUI7UUFDbkIsd0JBQXdCO1FBQ3hCLHNCQUFzQjsyRkFPakIsY0FBYztrQkFwQjFCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFO3dCQUNMLFlBQVk7d0JBQ1osbUJBQW1CO3dCQUNuQixvQkFBb0I7d0JBQ3BCLGVBQWU7d0JBQ2Ysa0JBQWtCO3dCQUNsQixhQUFhO3dCQUNiLGtCQUFrQjt3QkFDbEIsZUFBZTt3QkFDZixhQUFhO3dCQUNiLG1CQUFtQjt3QkFDbkIsd0JBQXdCO3dCQUN4QixzQkFBc0I7cUJBQ3pCO29CQUNELE9BQU8sRUFBRSxDQUFDLGlCQUFpQixDQUFDO29CQUM1QixZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztvQkFDakMsZUFBZSxFQUFFLENBQUMsMkJBQTJCLENBQUM7b0JBQzlDLFNBQVMsRUFBRSxDQUFDLGVBQWUsQ0FBQztpQkFDL0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IE1hdENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZm9ybS1maWVsZCc7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5cbmltcG9ydCB7IFBlcE5neExpYk1vZHVsZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcbmltcG9ydCB7XG4gICAgUGVwSWNvbk1vZHVsZSxcbiAgICBQZXBJY29uUmVnaXN0cnksXG4gICAgcGVwSWNvblN5c3RlbU1lbnUsXG4gICAgcGVwSWNvblN5c3RlbUJvbHQsXG4gICAgcGVwSWNvbkluZGljYXRvckRvdFBsYWNlaG9sZGVyLFxufSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9pY29uJztcbmltcG9ydCB7IFBlcEZpZWxkVGl0bGVNb2R1bGUgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9maWVsZC10aXRsZSc7XG5pbXBvcnQgeyBQZXBGaWxlc1VwbG9hZGVyTW9kdWxlIH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvZmlsZXMtdXBsb2FkZXInO1xuaW1wb3J0IHtcbiAgICBQZXBJbWFnZXNGaWxtc3RyaXBNb2R1bGUsXG4gICAgUGVwSW1hZ2VzRmlsbXN0cmlwQ29tcG9uZW50LFxufSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9pbWFnZXMtZmlsbXN0cmlwJztcblxuaW1wb3J0IHsgUGVwSW1hZ2VDb21wb25lbnQgfSBmcm9tICcuL2ltYWdlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQZXBJbWFnZVNlcnZpY2UgfSBmcm9tICcuL2ltYWdlLnNlcnZpY2UnO1xuXG5ATmdNb2R1bGUoe1xuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQ29tbW9uTW9kdWxlLFxuICAgICAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgICAgICAvLyBNYXRlcmlhbCBtb2R1bGVzLFxuICAgICAgICBNYXRDb21tb25Nb2R1bGUsXG4gICAgICAgIE1hdEZvcm1GaWVsZE1vZHVsZSxcbiAgICAgICAgTWF0SWNvbk1vZHVsZSxcbiAgICAgICAgLy8gbmd4LWxpYiBtb2R1bGVzXG4gICAgICAgIFBlcE5neExpYk1vZHVsZSxcbiAgICAgICAgUGVwSWNvbk1vZHVsZSxcbiAgICAgICAgUGVwRmllbGRUaXRsZU1vZHVsZSxcbiAgICAgICAgUGVwSW1hZ2VzRmlsbXN0cmlwTW9kdWxlLFxuICAgICAgICBQZXBGaWxlc1VwbG9hZGVyTW9kdWxlLFxuICAgIF0sXG4gICAgZXhwb3J0czogW1BlcEltYWdlQ29tcG9uZW50XSxcbiAgICBkZWNsYXJhdGlvbnM6IFtQZXBJbWFnZUNvbXBvbmVudF0sXG4gICAgZW50cnlDb21wb25lbnRzOiBbUGVwSW1hZ2VzRmlsbXN0cmlwQ29tcG9uZW50XSxcbiAgICBwcm92aWRlcnM6IFtQZXBJbWFnZVNlcnZpY2VdXG59KVxuZXhwb3J0IGNsYXNzIFBlcEltYWdlTW9kdWxlIHtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBlcEljb25SZWdpc3RyeTogUGVwSWNvblJlZ2lzdHJ5KSB7XG4gICAgICAgIHRoaXMucGVwSWNvblJlZ2lzdHJ5LnJlZ2lzdGVySWNvbnMoW1xuICAgICAgICAgICAgcGVwSWNvblN5c3RlbU1lbnUsXG4gICAgICAgICAgICBwZXBJY29uU3lzdGVtQm9sdCxcbiAgICAgICAgICAgIHBlcEljb25JbmRpY2F0b3JEb3RQbGFjZWhvbGRlcixcbiAgICAgICAgXSk7XG4gICAgfVxufVxuIl19
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { PepImagesFilmstripComponent } from '@pepperi-addons/ngx-lib/images-filmstrip';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@pepperi-addons/ngx-lib/dialog";
|
|
5
|
+
import * as i2 from "@pepperi-addons/ngx-lib";
|
|
6
|
+
export class PepImageService {
|
|
7
|
+
constructor(dialogService, customizationService, fileService) {
|
|
8
|
+
this.dialogService = dialogService;
|
|
9
|
+
this.customizationService = customizationService;
|
|
10
|
+
this.fileService = fileService;
|
|
11
|
+
}
|
|
12
|
+
openImageDialog(imageSrc, options, title = '') {
|
|
13
|
+
const arr = [imageSrc].concat((options || []).map((opt) => opt.value));
|
|
14
|
+
const imagesValue = arr.join(';');
|
|
15
|
+
// Show image in modal.
|
|
16
|
+
const config = this.dialogService.getDialogConfig({}, 'inline');
|
|
17
|
+
config.maxWidth = '75vw';
|
|
18
|
+
config.height = '95vh';
|
|
19
|
+
this.dialogService.openDialog(PepImagesFilmstripComponent, {
|
|
20
|
+
currIndex: 0,
|
|
21
|
+
key: new Date().getDate(),
|
|
22
|
+
value: imagesValue,
|
|
23
|
+
label: title,
|
|
24
|
+
showFooter: false,
|
|
25
|
+
showClose: true,
|
|
26
|
+
uid: '',
|
|
27
|
+
showThumbnails: arr.length > 1,
|
|
28
|
+
}, config);
|
|
29
|
+
}
|
|
30
|
+
openFromURI(event) {
|
|
31
|
+
if (event) {
|
|
32
|
+
const fileStrArr = event.fileStr.split(';');
|
|
33
|
+
if (fileStrArr.length === 2) {
|
|
34
|
+
const win = window.open('', '_blank');
|
|
35
|
+
const blob = this.fileService.convertFromb64toBlob(event.fileStr);
|
|
36
|
+
const url = URL.createObjectURL(blob);
|
|
37
|
+
win.location.href = url;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
PepImageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepImageService, deps: [{ token: i1.PepDialogService }, { token: i2.PepCustomizationService }, { token: i2.PepFileService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
43
|
+
PepImageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepImageService, providedIn: 'root' });
|
|
44
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepImageService, decorators: [{
|
|
45
|
+
type: Injectable,
|
|
46
|
+
args: [{
|
|
47
|
+
providedIn: 'root',
|
|
48
|
+
}]
|
|
49
|
+
}], ctorParameters: function () { return [{ type: i1.PepDialogService }, { type: i2.PepCustomizationService }, { type: i2.PepFileService }]; } });
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvaW1hZ2UvaW1hZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBT3hELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDBDQUEwQyxDQUFDOzs7O0FBTXZGLE1BQU0sT0FBTyxlQUFlO0lBQ3hCLFlBQ1ksYUFBK0IsRUFDL0Isb0JBQTZDLEVBQzdDLFdBQTJCO1FBRjNCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQUMvQix5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXlCO1FBQzdDLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtJQUNuQyxDQUFDO0lBRUwsZUFBZSxDQUFDLFFBQWdCLEVBQUUsT0FBcUIsRUFBRSxLQUFLLEdBQUcsRUFBRTtRQUMvRCxNQUFNLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FDekIsQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQzFDLENBQUM7UUFDRixNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRWxDLHVCQUF1QjtRQUN2QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxFQUFFLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDaEUsTUFBTSxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUM7UUFDekIsTUFBTSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFFdkIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQ3pCLDJCQUEyQixFQUMzQjtZQUNJLFNBQVMsRUFBRSxDQUFDO1lBQ1osR0FBRyxFQUFFLElBQUksSUFBSSxFQUFFLENBQUMsT0FBTyxFQUFFO1lBQ3pCLEtBQUssRUFBRSxXQUFXO1lBQ2xCLEtBQUssRUFBRSxLQUFLO1lBQ1osVUFBVSxFQUFFLEtBQUs7WUFDakIsU0FBUyxFQUFFLElBQUk7WUFDZixHQUFHLEVBQUUsRUFBRTtZQUNQLGNBQWMsRUFBRSxHQUFHLENBQUMsTUFBTSxHQUFHLENBQUM7U0FDakMsRUFDRCxNQUFNLENBQ1QsQ0FBQztJQUNOLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBMEI7UUFDbEMsSUFBSSxLQUFLLEVBQUU7WUFDUCxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUM1QyxJQUFJLFVBQVUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO2dCQUN6QixNQUFNLEdBQUcsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxRQUFRLENBQUMsQ0FBQztnQkFDdEMsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxvQkFBb0IsQ0FDOUMsS0FBSyxDQUFDLE9BQU8sQ0FDaEIsQ0FBQztnQkFDRixNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUN0QyxHQUFHLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxHQUFHLENBQUM7YUFDM0I7U0FDSjtJQUNMLENBQUM7OzRHQTlDUSxlQUFlO2dIQUFmLGVBQWUsY0FGWixNQUFNOzJGQUVULGVBQWU7a0JBSDNCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICAgIFBlcEZpbGVTZXJ2aWNlLFxyXG4gICAgUGVwQ3VzdG9taXphdGlvblNlcnZpY2UsXHJcbiAgICBJUGVwT3B0aW9uLFxyXG59IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcclxuaW1wb3J0IHsgUGVwRGlhbG9nU2VydmljZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL2RpYWxvZyc7XHJcbmltcG9ydCB7IFBlcEltYWdlc0ZpbG1zdHJpcENvbXBvbmVudCB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL2ltYWdlcy1maWxtc3RyaXAnO1xyXG5pbXBvcnQgeyBJUGVwRmlsZUNoYW5nZUV2ZW50IH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvZmlsZXMtdXBsb2FkZXInO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGVwSW1hZ2VTZXJ2aWNlIHtcclxuICAgIGNvbnN0cnVjdG9yKFxyXG4gICAgICAgIHByaXZhdGUgZGlhbG9nU2VydmljZTogUGVwRGlhbG9nU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIGN1c3RvbWl6YXRpb25TZXJ2aWNlOiBQZXBDdXN0b21pemF0aW9uU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIGZpbGVTZXJ2aWNlOiBQZXBGaWxlU2VydmljZSxcclxuICAgICkgeyB9XHJcblxyXG4gICAgb3BlbkltYWdlRGlhbG9nKGltYWdlU3JjOiBzdHJpbmcsIG9wdGlvbnM6IElQZXBPcHRpb25bXSwgdGl0bGUgPSAnJyk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGFyciA9IFtpbWFnZVNyY10uY29uY2F0KFxyXG4gICAgICAgICAgICAob3B0aW9ucyB8fCBbXSkubWFwKChvcHQpID0+IG9wdC52YWx1ZSlcclxuICAgICAgICApO1xyXG4gICAgICAgIGNvbnN0IGltYWdlc1ZhbHVlID0gYXJyLmpvaW4oJzsnKTtcclxuXHJcbiAgICAgICAgLy8gU2hvdyBpbWFnZSBpbiBtb2RhbC5cclxuICAgICAgICBjb25zdCBjb25maWcgPSB0aGlzLmRpYWxvZ1NlcnZpY2UuZ2V0RGlhbG9nQ29uZmlnKHt9LCAnaW5saW5lJyk7XHJcbiAgICAgICAgY29uZmlnLm1heFdpZHRoID0gJzc1dncnO1xyXG4gICAgICAgIGNvbmZpZy5oZWlnaHQgPSAnOTV2aCc7XHJcblxyXG4gICAgICAgIHRoaXMuZGlhbG9nU2VydmljZS5vcGVuRGlhbG9nKFxyXG4gICAgICAgICAgICBQZXBJbWFnZXNGaWxtc3RyaXBDb21wb25lbnQsXHJcbiAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgIGN1cnJJbmRleDogMCxcclxuICAgICAgICAgICAgICAgIGtleTogbmV3IERhdGUoKS5nZXREYXRlKCksXHJcbiAgICAgICAgICAgICAgICB2YWx1ZTogaW1hZ2VzVmFsdWUsXHJcbiAgICAgICAgICAgICAgICBsYWJlbDogdGl0bGUsXHJcbiAgICAgICAgICAgICAgICBzaG93Rm9vdGVyOiBmYWxzZSxcclxuICAgICAgICAgICAgICAgIHNob3dDbG9zZTogdHJ1ZSxcclxuICAgICAgICAgICAgICAgIHVpZDogJycsXHJcbiAgICAgICAgICAgICAgICBzaG93VGh1bWJuYWlsczogYXJyLmxlbmd0aCA+IDEsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGNvbmZpZ1xyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgb3BlbkZyb21VUkkoZXZlbnQ6IElQZXBGaWxlQ2hhbmdlRXZlbnQpIHtcclxuICAgICAgICBpZiAoZXZlbnQpIHtcclxuICAgICAgICAgICAgY29uc3QgZmlsZVN0ckFyciA9IGV2ZW50LmZpbGVTdHIuc3BsaXQoJzsnKTtcclxuICAgICAgICAgICAgaWYgKGZpbGVTdHJBcnIubGVuZ3RoID09PSAyKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCB3aW4gPSB3aW5kb3cub3BlbignJywgJ19ibGFuaycpO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgYmxvYiA9IHRoaXMuZmlsZVNlcnZpY2UuY29udmVydEZyb21iNjR0b0Jsb2IoXHJcbiAgICAgICAgICAgICAgICAgICAgZXZlbnQuZmlsZVN0clxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHVybCA9IFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYik7XHJcbiAgICAgICAgICAgICAgICB3aW4ubG9jYXRpb24uaHJlZiA9IHVybDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVwcGVyaS1hZGRvbnMtbmd4LWxpYi1pbWFnZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvaW1hZ2UvcGVwcGVyaS1hZGRvbnMtbmd4LWxpYi1pbWFnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Public API Surface of ngx-lib/image
|
|
3
|
+
*/
|
|
4
|
+
export * from './image.module';
|
|
5
|
+
export * from './image.component';
|
|
6
|
+
export * from './image.service';
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1saWIvaW1hZ2UvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUNILGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtbGliL2ltYWdlXG4gKi9cbmV4cG9ydCAqIGZyb20gJy4vaW1hZ2UubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vaW1hZ2UuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vaW1hZ2Uuc2VydmljZSc7XG4iXX0=
|
|
@@ -0,0 +1,337 @@
|
|
|
1
|
+
import { Component, ViewChild, Input, TemplateRef, Inject, Optional, } from '@angular/core';
|
|
2
|
+
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
+
import { LoadingStrategy, SlidingDirection, ThumbnailsPosition, ImageItem, } from 'ng-gallery';
|
|
4
|
+
import { PepCustomizationService, DEFAULT_HORIZONTAL_ALIGNMENT, PepImagesField, PepGuid } from '@pepperi-addons/ngx-lib';
|
|
5
|
+
import { pepIconNoImage2 } from '@pepperi-addons/ngx-lib/icon';
|
|
6
|
+
import 'hammerjs';
|
|
7
|
+
import { DOCUMENT } from '@angular/common';
|
|
8
|
+
import * as i0 from "@angular/core";
|
|
9
|
+
import * as i1 from "@pepperi-addons/ngx-lib";
|
|
10
|
+
import * as i2 from "@pepperi-addons/ngx-lib/dialog";
|
|
11
|
+
import * as i3 from "@pepperi-addons/ngx-lib/icon";
|
|
12
|
+
import * as i4 from "ng-gallery";
|
|
13
|
+
import * as i5 from "@angular/material/dialog";
|
|
14
|
+
import * as i6 from "@angular/common";
|
|
15
|
+
import * as i7 from "@angular/forms";
|
|
16
|
+
import * as i8 from "@pepperi-addons/ngx-lib/button";
|
|
17
|
+
import * as i9 from "@pepperi-addons/ngx-lib/field-title";
|
|
18
|
+
export class PepImagesFilmstripComponent {
|
|
19
|
+
constructor(customizationService, dialogService, layoutService, fileService, iconRegistry, utilitiesService, gallery, renderer, element, cd, document, dialogRef, data) {
|
|
20
|
+
this.customizationService = customizationService;
|
|
21
|
+
this.dialogService = dialogService;
|
|
22
|
+
this.layoutService = layoutService;
|
|
23
|
+
this.fileService = fileService;
|
|
24
|
+
this.iconRegistry = iconRegistry;
|
|
25
|
+
this.utilitiesService = utilitiesService;
|
|
26
|
+
this.gallery = gallery;
|
|
27
|
+
this.renderer = renderer;
|
|
28
|
+
this.element = element;
|
|
29
|
+
this.cd = cd;
|
|
30
|
+
this.document = document;
|
|
31
|
+
this.dialogRef = dialogRef;
|
|
32
|
+
this.data = data;
|
|
33
|
+
this.key = '';
|
|
34
|
+
this.value = '';
|
|
35
|
+
this.label = '';
|
|
36
|
+
this.xAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;
|
|
37
|
+
this._rowSpan = 10;
|
|
38
|
+
this.controlType = 'images';
|
|
39
|
+
this.form = null;
|
|
40
|
+
this.uid = '0';
|
|
41
|
+
this.showTitle = false;
|
|
42
|
+
this.renderTitle = true;
|
|
43
|
+
this._layoutType = 'form';
|
|
44
|
+
this.currIndex = 0;
|
|
45
|
+
this.showThumbnails = false;
|
|
46
|
+
this.items = null;
|
|
47
|
+
this.inDialog = false;
|
|
48
|
+
this.showFooter = false;
|
|
49
|
+
this.showClose = true;
|
|
50
|
+
this.mandatory = false;
|
|
51
|
+
this.readonly = false;
|
|
52
|
+
this.disabled = false;
|
|
53
|
+
this.fieldHeight = '';
|
|
54
|
+
this.standAlone = false;
|
|
55
|
+
this.galleryWidth = 0;
|
|
56
|
+
this.isVertical = false;
|
|
57
|
+
// If data exist copy all data properties into this.
|
|
58
|
+
if (dialogRef && data) {
|
|
59
|
+
this.inDialog = true;
|
|
60
|
+
Object.keys(data).forEach((key) => {
|
|
61
|
+
if (key in this) {
|
|
62
|
+
this[key] = data[key];
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
this.config = {
|
|
67
|
+
nav: false,
|
|
68
|
+
// navIcon: pepIconArrowRightAlt.data,
|
|
69
|
+
// loop: true,
|
|
70
|
+
// zoomOut: 0,
|
|
71
|
+
// dots: false,
|
|
72
|
+
// dotsPosition: 'bottom',
|
|
73
|
+
// counterPosition: 'top',
|
|
74
|
+
// thumb: true,
|
|
75
|
+
counter: false,
|
|
76
|
+
gestures: true,
|
|
77
|
+
// autoPlay: false,
|
|
78
|
+
// thumbWidth: 120,
|
|
79
|
+
// thumbHeight: 90,
|
|
80
|
+
imageSize: 'contain',
|
|
81
|
+
// panSensitivity: 25,
|
|
82
|
+
// disableThumb: false,
|
|
83
|
+
// playerInterval: 3000,
|
|
84
|
+
// thumbMode: ThumbnailsMode.Free,
|
|
85
|
+
// thumbPosition: ThumbnailsPosition.Bottom,
|
|
86
|
+
loadingStrategy: LoadingStrategy.Preload,
|
|
87
|
+
// slidingDirection: SlidingDirection.Horizontal,
|
|
88
|
+
};
|
|
89
|
+
this.guid = PepGuid.newGuid();
|
|
90
|
+
}
|
|
91
|
+
set rowSpan(value) {
|
|
92
|
+
this._rowSpan = value;
|
|
93
|
+
this.setFieldHeight();
|
|
94
|
+
}
|
|
95
|
+
get rowSpan() {
|
|
96
|
+
return this._rowSpan;
|
|
97
|
+
}
|
|
98
|
+
set layoutType(value) {
|
|
99
|
+
this._layoutType = value;
|
|
100
|
+
this.setFieldHeight();
|
|
101
|
+
}
|
|
102
|
+
get layoutType() {
|
|
103
|
+
return this._layoutType;
|
|
104
|
+
}
|
|
105
|
+
setFieldHeight() {
|
|
106
|
+
this.fieldHeight = this.customizationService.calculateFieldHeight(this.layoutType, this.rowSpan, this.standAlone);
|
|
107
|
+
}
|
|
108
|
+
setDefaultForm() {
|
|
109
|
+
const pepField = new PepImagesField({
|
|
110
|
+
key: this.key,
|
|
111
|
+
value: this.value,
|
|
112
|
+
mandatory: this.mandatory,
|
|
113
|
+
readonly: this.readonly,
|
|
114
|
+
disabled: this.disabled,
|
|
115
|
+
});
|
|
116
|
+
this.form = this.customizationService.getDefaultFromGroup(pepField);
|
|
117
|
+
}
|
|
118
|
+
// private renderNavIcon(galleryContainer, isLeft: boolean) {
|
|
119
|
+
// let iconName = isLeft ? pepIconArrowLeftAlt.name : pepIconArrowRightAlt.name;
|
|
120
|
+
// const svgData = this.iconRegistry.getIcon(iconName);
|
|
121
|
+
// const svgIcon = this.utilitiesService.getSvgElementFromString(
|
|
122
|
+
// this.document,
|
|
123
|
+
// svgData
|
|
124
|
+
// );
|
|
125
|
+
// const elementNameToFind = isLeft ? 'g-nav-prev' : 'g-nav-next'
|
|
126
|
+
// const elementArr = galleryContainer.nativeElement.querySelectorAll(`.${elementNameToFind}`);
|
|
127
|
+
// if (elementArr && elementArr.length > 0) {
|
|
128
|
+
// elementArr[0].appendChild(svgIcon);
|
|
129
|
+
// this.renderer.addClass(svgIcon, 'svg-icon');
|
|
130
|
+
// }
|
|
131
|
+
// }
|
|
132
|
+
ngOnInit() {
|
|
133
|
+
if (!this.inDialog) {
|
|
134
|
+
if (this.form === null) {
|
|
135
|
+
this.standAlone = true;
|
|
136
|
+
this.setFieldHeight();
|
|
137
|
+
this.setDefaultForm();
|
|
138
|
+
this.renderer.addClass(this.element.nativeElement, PepCustomizationService.STAND_ALONE_FIELD_CLASS_NAME);
|
|
139
|
+
if (!this.renderTitle) {
|
|
140
|
+
this.renderer.addClass(this.element.nativeElement, PepCustomizationService.STAND_ALONE_FIELD_NO_SPACING_CLASS_NAME);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
if (this.items === null) {
|
|
145
|
+
const imgArr = this.value ? this.value.split(';') : [];
|
|
146
|
+
// add No image image when there is no images
|
|
147
|
+
if (imgArr.length === 0) {
|
|
148
|
+
const noImageSrc = this.fileService.getSvgAsImageSrc(pepIconNoImage2.data);
|
|
149
|
+
imgArr.push(noImageSrc);
|
|
150
|
+
}
|
|
151
|
+
this.items = imgArr.map((img) => new ImageItem({ src: img, thumb: img }));
|
|
152
|
+
}
|
|
153
|
+
this.config.dots = this.config.nav = this.items.length > 1;
|
|
154
|
+
this.config.thumb =
|
|
155
|
+
(this.key === 'ItemFilmstripImages' || this.showThumbnails) &&
|
|
156
|
+
this.items.length > 1
|
|
157
|
+
? true
|
|
158
|
+
: false;
|
|
159
|
+
this.currIndex =
|
|
160
|
+
this.key === 'ItemFilmstripImages' &&
|
|
161
|
+
this.currIndex === 0 &&
|
|
162
|
+
this.items.length > 1
|
|
163
|
+
? Math.floor(this.items.length / 2) - 1
|
|
164
|
+
: this.currIndex;
|
|
165
|
+
}
|
|
166
|
+
ngAfterViewInit() {
|
|
167
|
+
if (this.inDialog) {
|
|
168
|
+
this.afterDialogOpened();
|
|
169
|
+
}
|
|
170
|
+
else {
|
|
171
|
+
this.galleryRef = this.gallery.ref(`${this.guid}-gallery`);
|
|
172
|
+
this.initGalleryStyle(this.galleryCont, this.galleryRef);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
ngOnChanges() {
|
|
176
|
+
if (this.standAlone) {
|
|
177
|
+
this.setDefaultForm();
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
ngOnDestroy() {
|
|
181
|
+
if (this.galleryRef) {
|
|
182
|
+
this.galleryRef.destroy();
|
|
183
|
+
}
|
|
184
|
+
if (this.dialogGalleryRef) {
|
|
185
|
+
this.dialogGalleryRef.destroy();
|
|
186
|
+
}
|
|
187
|
+
// if (this.myPinch) { this.myPinch.destroy(); }
|
|
188
|
+
}
|
|
189
|
+
initGalleryStyle(galleryContainer, galleryRef) {
|
|
190
|
+
setTimeout(() => {
|
|
191
|
+
// Set thumbnails position and sliding direction
|
|
192
|
+
this.setThumbnailDimension(galleryContainer);
|
|
193
|
+
galleryRef.setConfig(this.config);
|
|
194
|
+
// this.renderNavIcon(galleryContainer, true);
|
|
195
|
+
// this.renderNavIcon(galleryContainer, false);
|
|
196
|
+
}, 0);
|
|
197
|
+
const currentIndex = this.currIndex;
|
|
198
|
+
if (currentIndex > 0) {
|
|
199
|
+
setTimeout(() => {
|
|
200
|
+
galleryRef.load(this.items);
|
|
201
|
+
galleryRef.set(currentIndex);
|
|
202
|
+
}, 0);
|
|
203
|
+
// galleryRef.set(currentIndex);
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
galleryRef.load(this.items);
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
onError(e) {
|
|
210
|
+
const noImageSrc = this.fileService.getSvgAsImageSrc(pepIconNoImage2.data);
|
|
211
|
+
const noimg = new ImageItem({ src: noImageSrc, thumb: noImageSrc });
|
|
212
|
+
this.items.splice(e.itemIndex, 1, noimg);
|
|
213
|
+
}
|
|
214
|
+
enlargeImage(event) {
|
|
215
|
+
const config = this.dialogService.getDialogConfig({}, 'inline');
|
|
216
|
+
config.maxWidth = '75vw';
|
|
217
|
+
config.height = '95vh';
|
|
218
|
+
this.enlargeImageDialogRef = this.dialogService.openDialog(this.galleryDialogTemplate, {
|
|
219
|
+
currIndex: this.currIndex,
|
|
220
|
+
}, config);
|
|
221
|
+
this.enlargeImageDialogRef.afterOpened().subscribe(() => {
|
|
222
|
+
this.afterDialogOpened();
|
|
223
|
+
});
|
|
224
|
+
// Update currentIndex in galleryRef
|
|
225
|
+
// dialogRef.afterClosed().subscribe(value => {
|
|
226
|
+
// this.galleryRef.set(this.currIndex);
|
|
227
|
+
// });
|
|
228
|
+
}
|
|
229
|
+
afterDialogOpened() {
|
|
230
|
+
this.dialogGalleryRef = this.gallery.ref(`${this.guid}-dlgGallery`);
|
|
231
|
+
this.initGalleryStyle(this.galleryDialogCont, this.dialogGalleryRef);
|
|
232
|
+
}
|
|
233
|
+
closeDialog(event) {
|
|
234
|
+
if (this.inDialog) {
|
|
235
|
+
this.dialogRef?.close(event);
|
|
236
|
+
}
|
|
237
|
+
else {
|
|
238
|
+
this.enlargeImageDialogRef?.close(event);
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
setThumbnailDimension(galleryContainer) {
|
|
242
|
+
this.galleryWidth = galleryContainer.nativeElement.clientWidth;
|
|
243
|
+
// this.galleryHeight = galleryContainer.nativeElement.clientHeight - 32; // TODO - TALK WITH TOMER
|
|
244
|
+
this.galleryHeight = this.inDialog
|
|
245
|
+
? galleryContainer.nativeElement.clientHeight - 32
|
|
246
|
+
: galleryContainer.nativeElement.clientHeight;
|
|
247
|
+
// this.galleryHeight = galleryContainer.nativeElement.clientHeight - 32;
|
|
248
|
+
this.cd.detectChanges();
|
|
249
|
+
this.isVertical = this.galleryWidth < this.galleryHeight;
|
|
250
|
+
this.cd.detectChanges();
|
|
251
|
+
if (this.isVertical) {
|
|
252
|
+
let width = (this.galleryWidth - (this.items.length - 1) * 16) /
|
|
253
|
+
this.items.length;
|
|
254
|
+
width = Math.min(Math.max(width, 24), 96);
|
|
255
|
+
this.config.thumbHeight = width;
|
|
256
|
+
this.config.thumbWidth = width + 16;
|
|
257
|
+
}
|
|
258
|
+
else {
|
|
259
|
+
let height = (this.galleryHeight - (this.items.length - 1) * 16) /
|
|
260
|
+
this.items.length;
|
|
261
|
+
height = Math.min(Math.max(height, 24), 96);
|
|
262
|
+
this.config.thumbHeight = height + 16;
|
|
263
|
+
this.config.thumbWidth = height;
|
|
264
|
+
}
|
|
265
|
+
this.config.thumbPosition = this.isVertical
|
|
266
|
+
? ThumbnailsPosition.Bottom
|
|
267
|
+
: this.layoutService.isRtl()
|
|
268
|
+
? ThumbnailsPosition.Right
|
|
269
|
+
: ThumbnailsPosition.Left;
|
|
270
|
+
this.config.slidingDirection =
|
|
271
|
+
this.key !== 'ItemFilmstripImages'
|
|
272
|
+
? SlidingDirection.Horizontal
|
|
273
|
+
: this.isVertical
|
|
274
|
+
? SlidingDirection.Horizontal
|
|
275
|
+
: SlidingDirection.Vertical;
|
|
276
|
+
this.config.imageSize = 'contain';
|
|
277
|
+
}
|
|
278
|
+
indexChange(item) {
|
|
279
|
+
this.currIndex = item.currIndex;
|
|
280
|
+
// if (this.ngxViewerImage && this.ngxViewerImage.scale) {
|
|
281
|
+
// this.ngxViewerImage.scale = 1;
|
|
282
|
+
// this.updateStyle();
|
|
283
|
+
// }
|
|
284
|
+
}
|
|
285
|
+
}
|
|
286
|
+
PepImagesFilmstripComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepImagesFilmstripComponent, deps: [{ token: i1.PepCustomizationService }, { token: i2.PepDialogService }, { token: i1.PepLayoutService }, { token: i1.PepFileService }, { token: i3.PepIconRegistry }, { token: i1.PepUtilitiesService }, { token: i4.Gallery }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: DOCUMENT, optional: true }, { token: i5.MatDialogRef, optional: true }, { token: MAT_DIALOG_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
287
|
+
PepImagesFilmstripComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: PepImagesFilmstripComponent, selector: "pep-images-filmstrip", inputs: { key: "key", value: "value", label: "label", xAlignment: "xAlignment", rowSpan: "rowSpan", form: "form", uid: "uid", showTitle: "showTitle", renderTitle: "renderTitle", layoutType: "layoutType", currIndex: "currIndex", showThumbnails: "showThumbnails" }, viewQueries: [{ propertyName: "galleryCont", first: true, predicate: ["galleryCont"], descendants: true }, { propertyName: "galleryDialogTemplate", first: true, predicate: ["galleryDialogTemplate"], descendants: true, read: TemplateRef }, { propertyName: "galleryDialogCont", first: true, predicate: ["galleryDialogCont"], descendants: true }], usesOnChanges: true, ngImport: i0, 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 *ngIf=\"renderTitle\" [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 <pep-button *ngIf=\"items?.length > 1\" iconName=\"arrow_left_alt\" styleType=\"weak-invert\" sizeType=\"sm\"\n (click)=\"formGallery.prev()\" class=\"gallery-arrow start-arrow\">\n </pep-button>\n <gallery #formGallery id=\"{{guid}}-gallery\" (itemClick)=\"enlargeImage($event);\" [imageSize]=\"'contain'\"\n (indexChange)=\"indexChange($event)\" (error)=\"onError($event)\">\n </gallery>\n <pep-button *ngIf=\"items?.length > 1\" iconName=\"arrow_right_alt\" styleType=\"weak-invert\" sizeType=\"sm\"\n (click)=\"formGallery.next()\" class=\"gallery-arrow end-arrow\">\n </pep-button>\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]=\"showFooter\" [showClose]=\"showClose\" (close)=\"closeDialog($event)\">\n <div pep-dialog-content #galleryDialogCont class=\"gallery-dialog-content\"\n [ngClass]=\"isVertical ? 'vertical-gallery' : 'horizontal-gallery'\">\n <pep-button *ngIf=\"items?.length > 1\" iconName=\"arrow_left_alt\" styleType=\"weak-invert\"\n (click)=\"dialogGallery.prev()\" class=\"gallery-arrow start-arrow\">\n </pep-button>\n <gallery #dialogGallery id=\"{{guid}}-dlgGallery\" [imageSize]=\"'contain'\"\n (indexChange)=\"indexChange($event)\" (error)=\"onError($event)\">\n </gallery>\n <pep-button *ngIf=\"items?.length > 1\" iconName=\"arrow_right_alt\" styleType=\"weak-invert\"\n (click)=\"dialogGallery.next()\" class=\"gallery-arrow end-arrow\">\n </pep-button>\n </div>\n </pep-dialog>\n </div>\n</ng-template>", styles: [":host{width:100%;height:inherit;display:block}:host>*{align-self:center}.gallery-dialog{height:inherit}.images-filmstrip-container{height:100%}.images-filmstrip-container .img-wrapper{height:100%;position:relative}.images-filmstrip-container .gallery-arrow{padding:.5rem}.images-filmstrip-container .gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2}.images-filmstrip-container .gallery-arrow.start-arrow{left:0}.images-filmstrip-container .gallery-arrow.end-arrow{right:0}gallery{direction:ltr;height:100%;min-height:100%}.gallery-dialog-content{position:relative}.gallery-dialog-content .gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2}.gallery-dialog-content .gallery-arrow.start-arrow{left:0}.gallery-dialog-content .gallery-arrow.end-arrow{right:0}.gallery-dialog-content gallery{min-width:65vw}.gallery-dialog-content ::ng-deep gallery-item gallery-image .g-image-item{background-size:content!important}::ng-deep gallery-thumbs{margin:0 var(--pep-spacing-lg, 1rem) 0 var(--pep-spacing-sm, .5rem)}::ng-deep gallery-thumbs gallery-thumb{padding:0!important;border-radius:var(--pep-border-radius-md, .25rem);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:var(--pep-border-radius-lg, .5rem)}::ng-deep gallery-item:hover{cursor:pointer}::ng-deep gallery-dots{position:absolute!important;border-radius:var(--pep-border-radius-md, .25rem)}::ng-deep gallery-dots.pepperi-button,::ng-deep gallery-dots.pep-button{display:flex!important}::ng-deep .img-container{display:flex;align-items:center}::ng-deep gallery-nav{display:none}.vertical-gallery ::ng-deep gallery-thumbs{margin:var(--pep-spacing-lg, 1rem) 0 var(--pep-spacing-sm, .5rem) 0}.vertical-gallery ::ng-deep gallery-thumbs gallery-thumb{margin:0 var(--pep-spacing-sm, .5rem)}\n", "gallery{background-color:transparent}::ng-deep gallery-thumb{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)}::ng-deep .g-nav-prev,::ng-deep .g-nav-next{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)}::ng-deep .g-nav-prev:hover,::ng-deep .g-nav-next:hover{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);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}::ng-deep .g-nav-prev:focus,::ng-deep .g-nav-next:focus{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%));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)}::ng-deep .g-nav-prev:active,::ng-deep .g-nav-next:active{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%));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)}::ng-deep .g-nav-prev:disabled,::ng-deep .g-nav-next:disabled{box-shadow:unset;border:unset;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(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}::ng-deep .g-nav-prev:disabled:after,::ng-deep .g-nav-next:disabled:after{border:unset}::ng-deep .g-nav-prev:disabled .svg-icon,::ng-deep .g-nav-next:disabled .svg-icon{fill:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.35)}::ng-deep .g-nav-prev:disabled .svg-icon.stroke,::ng-deep .g-nav-next:disabled .svg-icon.stroke{fill:unset;stroke:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.35)}::ng-deep gallery-dots{background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.12)}\n"], dependencies: [{ kind: "directive", type: i6.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i7.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i7.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i4.GalleryComponent, selector: "gallery", inputs: ["nav", "dots", "loop", "thumb", "zoomOut", "counter", "dotsSize", "autoPlay", "gestures", "thumbWidth", "thumbHeight", "disableThumb", "panSensitivity", "playerInterval", "itemTemplate", "thumbTemplate", "thumbMode", "imageSize", "dotsPosition", "counterPosition", "slidingDirection", "loadingStrategy", "thumbPosition", "thumbView", "destroyRef", "skipInitConfig", "id", "items"], outputs: ["itemClick", "thumbClick", "playingChange", "indexChange", "itemsChange", "error"] }, { kind: "component", type: i8.PepButtonComponent, selector: "pep-button", inputs: ["key", "value", "styleType", "styleStateType", "sizeType", "classNames", "disabled", "iconName", "iconPosition", "visible"], outputs: ["buttonClick"] }, { kind: "component", type: i9.PepFieldTitleComponent, selector: "pep-field-title", inputs: ["label", "mandatory", "disabled", "maxFieldCharacters", "hint", "xAlignment", "showTitle", "inputLength", "fontBodyType"] }, { kind: "component", type: i2.PepDialogComponent, selector: "pep-dialog", inputs: ["title", "showClose", "showHeader", "showFooter"], outputs: ["close"] }] });
|
|
288
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: PepImagesFilmstripComponent, decorators: [{
|
|
289
|
+
type: Component,
|
|
290
|
+
args: [{ selector: 'pep-images-filmstrip', 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 *ngIf=\"renderTitle\" [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 <pep-button *ngIf=\"items?.length > 1\" iconName=\"arrow_left_alt\" styleType=\"weak-invert\" sizeType=\"sm\"\n (click)=\"formGallery.prev()\" class=\"gallery-arrow start-arrow\">\n </pep-button>\n <gallery #formGallery id=\"{{guid}}-gallery\" (itemClick)=\"enlargeImage($event);\" [imageSize]=\"'contain'\"\n (indexChange)=\"indexChange($event)\" (error)=\"onError($event)\">\n </gallery>\n <pep-button *ngIf=\"items?.length > 1\" iconName=\"arrow_right_alt\" styleType=\"weak-invert\" sizeType=\"sm\"\n (click)=\"formGallery.next()\" class=\"gallery-arrow end-arrow\">\n </pep-button>\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]=\"showFooter\" [showClose]=\"showClose\" (close)=\"closeDialog($event)\">\n <div pep-dialog-content #galleryDialogCont class=\"gallery-dialog-content\"\n [ngClass]=\"isVertical ? 'vertical-gallery' : 'horizontal-gallery'\">\n <pep-button *ngIf=\"items?.length > 1\" iconName=\"arrow_left_alt\" styleType=\"weak-invert\"\n (click)=\"dialogGallery.prev()\" class=\"gallery-arrow start-arrow\">\n </pep-button>\n <gallery #dialogGallery id=\"{{guid}}-dlgGallery\" [imageSize]=\"'contain'\"\n (indexChange)=\"indexChange($event)\" (error)=\"onError($event)\">\n </gallery>\n <pep-button *ngIf=\"items?.length > 1\" iconName=\"arrow_right_alt\" styleType=\"weak-invert\"\n (click)=\"dialogGallery.next()\" class=\"gallery-arrow end-arrow\">\n </pep-button>\n </div>\n </pep-dialog>\n </div>\n</ng-template>", styles: [":host{width:100%;height:inherit;display:block}:host>*{align-self:center}.gallery-dialog{height:inherit}.images-filmstrip-container{height:100%}.images-filmstrip-container .img-wrapper{height:100%;position:relative}.images-filmstrip-container .gallery-arrow{padding:.5rem}.images-filmstrip-container .gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2}.images-filmstrip-container .gallery-arrow.start-arrow{left:0}.images-filmstrip-container .gallery-arrow.end-arrow{right:0}gallery{direction:ltr;height:100%;min-height:100%}.gallery-dialog-content{position:relative}.gallery-dialog-content .gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:2}.gallery-dialog-content .gallery-arrow.start-arrow{left:0}.gallery-dialog-content .gallery-arrow.end-arrow{right:0}.gallery-dialog-content gallery{min-width:65vw}.gallery-dialog-content ::ng-deep gallery-item gallery-image .g-image-item{background-size:content!important}::ng-deep gallery-thumbs{margin:0 var(--pep-spacing-lg, 1rem) 0 var(--pep-spacing-sm, .5rem)}::ng-deep gallery-thumbs gallery-thumb{padding:0!important;border-radius:var(--pep-border-radius-md, .25rem);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:var(--pep-border-radius-lg, .5rem)}::ng-deep gallery-item:hover{cursor:pointer}::ng-deep gallery-dots{position:absolute!important;border-radius:var(--pep-border-radius-md, .25rem)}::ng-deep gallery-dots.pepperi-button,::ng-deep gallery-dots.pep-button{display:flex!important}::ng-deep .img-container{display:flex;align-items:center}::ng-deep gallery-nav{display:none}.vertical-gallery ::ng-deep gallery-thumbs{margin:var(--pep-spacing-lg, 1rem) 0 var(--pep-spacing-sm, .5rem) 0}.vertical-gallery ::ng-deep gallery-thumbs gallery-thumb{margin:0 var(--pep-spacing-sm, .5rem)}\n", "gallery{background-color:transparent}::ng-deep gallery-thumb{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)}::ng-deep .g-nav-prev,::ng-deep .g-nav-next{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)}::ng-deep .g-nav-prev:hover,::ng-deep .g-nav-next:hover{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);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}::ng-deep .g-nav-prev:focus,::ng-deep .g-nav-next:focus{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%));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)}::ng-deep .g-nav-prev:active,::ng-deep .g-nav-next:active{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%));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)}::ng-deep .g-nav-prev:disabled,::ng-deep .g-nav-next:disabled{box-shadow:unset;border:unset;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(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}::ng-deep .g-nav-prev:disabled:after,::ng-deep .g-nav-next:disabled:after{border:unset}::ng-deep .g-nav-prev:disabled .svg-icon,::ng-deep .g-nav-next:disabled .svg-icon{fill:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.35)}::ng-deep .g-nav-prev:disabled .svg-icon.stroke,::ng-deep .g-nav-next:disabled .svg-icon.stroke{fill:unset;stroke:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.35)}::ng-deep gallery-dots{background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.12)}\n"] }]
|
|
291
|
+
}], ctorParameters: function () { return [{ type: i1.PepCustomizationService }, { type: i2.PepDialogService }, { type: i1.PepLayoutService }, { type: i1.PepFileService }, { type: i3.PepIconRegistry }, { type: i1.PepUtilitiesService }, { type: i4.Gallery }, { type: i0.Renderer2 }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
|
|
292
|
+
type: Optional
|
|
293
|
+
}, {
|
|
294
|
+
type: Inject,
|
|
295
|
+
args: [DOCUMENT]
|
|
296
|
+
}] }, { type: i5.MatDialogRef, decorators: [{
|
|
297
|
+
type: Optional
|
|
298
|
+
}] }, { type: undefined, decorators: [{
|
|
299
|
+
type: Optional
|
|
300
|
+
}, {
|
|
301
|
+
type: Inject,
|
|
302
|
+
args: [MAT_DIALOG_DATA]
|
|
303
|
+
}] }]; }, propDecorators: { key: [{
|
|
304
|
+
type: Input
|
|
305
|
+
}], value: [{
|
|
306
|
+
type: Input
|
|
307
|
+
}], label: [{
|
|
308
|
+
type: Input
|
|
309
|
+
}], xAlignment: [{
|
|
310
|
+
type: Input
|
|
311
|
+
}], rowSpan: [{
|
|
312
|
+
type: Input
|
|
313
|
+
}], form: [{
|
|
314
|
+
type: Input
|
|
315
|
+
}], uid: [{
|
|
316
|
+
type: Input
|
|
317
|
+
}], showTitle: [{
|
|
318
|
+
type: Input
|
|
319
|
+
}], renderTitle: [{
|
|
320
|
+
type: Input
|
|
321
|
+
}], layoutType: [{
|
|
322
|
+
type: Input
|
|
323
|
+
}], currIndex: [{
|
|
324
|
+
type: Input
|
|
325
|
+
}], showThumbnails: [{
|
|
326
|
+
type: Input
|
|
327
|
+
}], galleryCont: [{
|
|
328
|
+
type: ViewChild,
|
|
329
|
+
args: ['galleryCont']
|
|
330
|
+
}], galleryDialogTemplate: [{
|
|
331
|
+
type: ViewChild,
|
|
332
|
+
args: ['galleryDialogTemplate', { read: TemplateRef }]
|
|
333
|
+
}], galleryDialogCont: [{
|
|
334
|
+
type: ViewChild,
|
|
335
|
+
args: ['galleryDialogCont']
|
|
336
|
+
}] } });
|
|
337
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW1hZ2VzLWZpbG1zdHJpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL2ltYWdlcy1maWxtc3RyaXAvaW1hZ2VzLWZpbG1zdHJpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtbGliL2ltYWdlcy1maWxtc3RyaXAvaW1hZ2VzLWZpbG1zdHJpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUNULFNBQVMsRUFLVCxLQUFLLEVBQ0wsV0FBVyxFQUdYLE1BQU0sRUFDTixRQUFRLEdBR1gsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RSxPQUFPLEVBR0gsZUFBZSxFQUNmLGdCQUFnQixFQUNoQixrQkFBa0IsRUFFbEIsU0FBUyxHQUVaLE1BQU0sWUFBWSxDQUFDO0FBQ3BCLE9BQU8sRUFDSCx1QkFBdUIsRUFLdkIsNEJBQTRCLEVBQzVCLGNBQWMsRUFFZCxPQUFPLEVBQ1YsTUFBTSx5QkFBeUIsQ0FBQztBQUVqQyxPQUFPLEVBQW1CLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRWhGLE9BQU8sVUFBVSxDQUFDO0FBWWxCLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7Ozs7Ozs7QUFPM0MsTUFBTSxPQUFPLDJCQUEyQjtJQStEcEMsWUFDWSxvQkFBNkMsRUFDN0MsYUFBK0IsRUFDL0IsYUFBK0IsRUFDL0IsV0FBMkIsRUFDM0IsWUFBNkIsRUFDN0IsZ0JBQXFDLEVBQ3JDLE9BQWdCLEVBQ2hCLFFBQW1CLEVBQ25CLE9BQW1CLEVBQ25CLEVBQXFCLEVBQ1MsUUFBYSxFQUUzQyxTQUFvRCxFQUdwRCxJQUFtQztRQWZuQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXlCO1FBQzdDLGtCQUFhLEdB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MEJBQUksTUFBTTsyQkFBQyxRQUFROzswQkFDM0IsUUFBUTs7MEJBRVIsUUFBUTs7MEJBQ1IsTUFBTTsyQkFBQyxlQUFlOzRDQTVFbEIsR0FBRztzQkFBWCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFJRixPQUFPO3NCQURWLEtBQUs7Z0JBV0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBSUYsVUFBVTtzQkFEYixLQUFLO2dCQVNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFFb0IsV0FBVztzQkFBcEMsU0FBUzt1QkFBQyxhQUFhO2dCQUV4QixxQkFBcUI7c0JBRHBCLFNBQVM7dUJBQUMsdUJBQXVCLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO2dCQUV6QixpQkFBaUI7c0JBQWhELFNBQVM7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgVmlld0NoaWxkLFxuICAgIE9uSW5pdCxcbiAgICBPbkRlc3Ryb3ksXG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBFbGVtZW50UmVmLFxuICAgIElucHV0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFJlbmRlcmVyMixcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBJbmplY3QsXG4gICAgT3B0aW9uYWwsXG4gICAgVmlld0NvbnRhaW5lclJlZixcbiAgICBPbkNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHtcbiAgICBHYWxsZXJ5LFxuICAgIEdhbGxlcnlDb25maWcsXG4gICAgTG9hZGluZ1N0cmF0ZWd5LFxuICAgIFNsaWRpbmdEaXJlY3Rpb24sXG4gICAgVGh1bWJuYWlsc1Bvc2l0aW9uLFxuICAgIEdhbGxlcnlJdGVtLFxuICAgIEltYWdlSXRlbSxcbiAgICBHYWxsZXJ5UmVmLFxufSBmcm9tICduZy1nYWxsZXJ5JztcbmltcG9ydCB7XG4gICAgUGVwQ3VzdG9taXphdGlvblNlcnZpY2UsXG4gICAgUGVwTGF5b3V0VHlwZSxcbiAgICBQZXBMYXlvdXRTZXJ2aWNlLFxuICAgIFBlcEZpbGVTZXJ2aWNlLFxuICAgIFBlcEhvcml6b250YWxBbGlnbm1lbnQsXG4gICAgREVGQVVMVF9IT1JJWk9OVEFMX0FMSUdOTUVOVCxcbiAgICBQZXBJbWFnZXNGaWVsZCxcbiAgICBQZXBVdGlsaXRpZXNTZXJ2aWNlLFxuICAgIFBlcEd1aWRcbn0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWInO1xuaW1wb3J0IHsgUGVwRGlhbG9nU2VydmljZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL2RpYWxvZyc7XG5pbXBvcnQgeyBQZXBJY29uUmVnaXN0cnksIHBlcEljb25Ob0ltYWdlMiB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliL2ljb24nO1xuXG5pbXBvcnQgJ2hhbW1lcmpzJztcblxuaW50ZXJmYWNlIElQZXBJbWFnZXNGaWxtc3RyaXBEaWFsb2dEYXRhIHtcbiAgICBjdXJySW5kZXg6IG51bWJlcjtcbiAgICBrZXk6IHN0cmluZztcbiAgICB2YWx1ZTogc3RyaW5nO1xuICAgIGxhYmVsOiBzdHJpbmc7XG4gICAgc2hvd0Zvb3RlcjogYm9vbGVhbjtcbiAgICB1aWQ6IHN0cmluZztcbiAgICBzaG93VGh1bWJuYWlsczogYm9vbGVhbjtcbn1cblxuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3BlcC1pbWFnZXMtZmlsbXN0cmlwJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vaW1hZ2VzLWZpbG1zdHJpcC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vaW1hZ2VzLWZpbG1zdHJpcC5jb21wb25lbnQuc2NzcycsICcuL2ltYWdlcy1maWxtc3RyaXAuY29tcG9uZW50LnRoZW1lLnNjc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUGVwSW1hZ2VzRmlsbXN0cmlwQ29tcG9uZW50XG4gICAgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgICBASW5wdXQoKSBrZXkgPSAnJztcbiAgICBASW5wdXQoKSB2YWx1ZSA9ICcnO1xuICAgIEBJbnB1dCgpIGxhYmVsID0gJyc7XG4gICAgQElucHV0KCkgeEFsaWdubWVudDogUGVwSG9yaXpvbnRhbEFsaWdubWVudCA9IERFRkFVTFRfSE9SSVpPTlRBTF9BTElHTk1FTlQ7XG5cbiAgICBwcml2YXRlIF9yb3dTcGFuID0gMTA7XG4gICAgQElucHV0KClcbiAgICBzZXQgcm93U3Bhbih2YWx1ZSkge1xuICAgICAgICB0aGlzLl9yb3dTcGFuID0gdmFsdWU7XG4gICAgICAgIHRoaXMuc2V0RmllbGRIZWlnaHQoKTtcbiAgICB9XG4gICAgZ2V0IHJvd1NwYW4oKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3Jvd1NwYW47XG4gICAgfVxuXG4gICAgY29udHJvbFR5cGUgPSAnaW1hZ2VzJztcblxuICAgIEBJbnB1dCgpIGZvcm06IEZvcm1Hcm91cCA9IG51bGw7XG4gICAgQElucHV0KCkgdWlkID0gJzAnO1xuICAgIEBJbnB1dCgpIHNob3dUaXRsZSA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIHJlbmRlclRpdGxlID0gdHJ1ZTtcblxuICAgIHByaXZhdGUgX2xheW91dFR5cGU6IFBlcExheW91dFR5cGUgPSAnZm9ybSc7XG4gICAgQElucHV0KClcbiAgICBzZXQgbGF5b3V0VHlwZSh2YWx1ZTogUGVwTGF5b3V0VHlwZSkge1xuICAgICAgICB0aGlzLl9sYXlvdXRUeXBlID0gdmFsdWU7XG4gICAgICAgIHRoaXMuc2V0RmllbGRIZWlnaHQoKTtcbiAgICB9XG4gICAgZ2V0IGxheW91dFR5cGUoKTogUGVwTGF5b3V0VHlwZSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9sYXlvdXRUeXBlO1xuICAgIH1cblxuICAgIEBJbnB1dCgpIGN1cnJJbmRleCA9IDA7XG4gICAgQElucHV0KCkgc2hvd1RodW1ibmFpbHMgPSBmYWxzZTtcblxuICAgIEBWaWV3Q2hpbGQoJ2dhbGxlcnlDb250JykgZ2FsbGVyeUNvbnQ6IEVsZW1lbnRSZWY7XG4gICAgQFZpZXdDaGlsZCgnZ2FsbGVyeURpYWxvZ1RlbXBsYXRlJywgeyByZWFkOiBUZW1wbGF0ZVJlZiB9KVxuICAgIGdhbGxlcnlEaWFsb2dUZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgICBAVmlld0NoaWxkKCdnYWxsZXJ5RGlhbG9nQ29udCcpIGdhbGxlcnlEaWFsb2dDb250OiBFbGVtZW50UmVmO1xuXG4gICAgY29uZmlnOiBHYWxsZXJ5Q29uZmlnO1xuICAgIGl0ZW1zOiBHYWxsZXJ5SXRlbVtdID0gbnVsbDtcbiAgICBpbkRpYWxvZyA9IGZhbHNlO1xuICAgIHNob3dGb290ZXIgPSBmYWxzZTtcbiAgICBzaG93Q2xvc2UgPSB0cnVlO1xuICAgIFxuICAgIG1hbmRhdG9yeSA9IGZhbHNlO1xuICAgIHJlYWRvbmx5ID0gZmFsc2U7XG4gICAgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBmaWVsZEhlaWdodCA9ICcnO1xuICAgIHN0YW5kQWxvbmUgPSBmYWxzZTtcblxuICAgIGdhbGxlcnlXaWR0aCA9IDA7XG4gICAgZ2FsbGVyeUhlaWdodDtcbiAgICBpc1ZlcnRpY2FsID0gZmFsc2U7XG4gICAgZ2FsbGVyeVJlZjogR2FsbGVyeVJlZjtcbiAgICBkaWFsb2dHYWxsZXJ5UmVmOiBHYWxsZXJ5UmVmO1xuICAgIGd1aWQ6IHN0cmluZztcblxuICAgIHByaXZhdGUgZW5sYXJnZUltYWdlRGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8YW55PjtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGN1c3RvbWl6YXRpb25TZXJ2aWNlOiBQZXBDdXN0b21pemF0aW9uU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBkaWFsb2dTZXJ2aWNlOiBQZXBEaWFsb2dTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGxheW91dFNlcnZpY2U6IFBlcExheW91dFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZmlsZVNlcnZpY2U6IFBlcEZpbGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGljb25SZWdpc3RyeTogUGVwSWNvblJlZ2lzdHJ5LFxuICAgICAgICBwcml2YXRlIHV0aWxpdGllc1NlcnZpY2U6IFBlcFV0aWxpdGllc1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZ2FsbGVyeTogR2FsbGVyeSxcbiAgICAgICAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICBwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIGRvY3VtZW50OiBhbnksXG4gICAgICAgIEBPcHRpb25hbCgpXG4gICAgICAgIHByaXZhdGUgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8UGVwSW1hZ2VzRmlsbXN0cmlwQ29tcG9uZW50PixcbiAgICAgICAgQE9wdGlvbmFsKClcbiAgICAgICAgQEluamVjdChNQVRfRElBTE9HX0RBVEEpXG4gICAgICAgIHByaXZhdGUgZGF0YTogSVBlcEltYWdlc0ZpbG1zdHJpcERpYWxvZ0RhdGFcbiAgICApIHtcbiAgICAgICAgLy8gSWYgZGF0YSBleGlzdCBjb3B5IGFsbCBkYXRhIHByb3BlcnRpZXMgaW50byB0aGlzLlxuICAgICAgICBpZiAoZGlhbG9nUmVmICYmIGRhdGEpIHtcbiAgICAgICAgICAgIHRoaXMuaW5EaWFsb2cgPSB0cnVlO1xuXG4gICAgICAgICAgICBPYmplY3Qua2V5cyhkYXRhKS5mb3JFYWNoKChrZXkpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoa2V5IGluIHRoaXMpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpc1trZXldID0gZGF0YVtrZXldO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5jb25maWcgPSB7XG4gICAgICAgICAgICBuYXY6IGZhbHNlLCAvLyBTaG93IG5hdmlnYXRpb24gYnV0dG9uc1xuICAgICAgICAgICAgLy8gbmF2SWNvbjogcGVwSWNvbkFycm93UmlnaHRBbHQuZGF0YSxcbiAgICAgICAgICAgIC8vIGxvb3A6IHRydWUsXG4gICAgICAgICAgICAvLyB6b29tT3V0OiAwLFxuICAgICAgICAgICAgLy8gZG90czogZmFsc2UsXG4gICAgICAgICAgICAvLyBkb3RzUG9zaXRpb246ICdib3R0b20nLFxuICAgICAgICAgICAgLy8gY291bnRlclBvc2l0aW9uOiAndG9wJyxcbiAgICAgICAgICAgIC8vIHRodW1iOiB0cnVlLFxuICAgICAgICAgICAgY291bnRlcjogZmFsc2UsIC8vIFNob3cgY291bnRlclxuICAgICAgICAgICAgZ2VzdHVyZXM6IHRydWUsIC8vIFVzZSB0b3VjaCBldmVudHMgKHJlcXVpcmVzIGhhbW1lci5qcylcbiAgICAgICAgICAgIC8vIGF1dG9QbGF5OiBmYWxzZSxcbiAgICAgICAgICAgIC8vIHRodW1iV2lkdGg6IDEyMCxcbiAgICAgICAgICAgIC8vIHRodW1iSGVpZ2h0OiA5MCxcbiAgICAgICAgICAgIGltYWdlU2l6ZTogJ2NvbnRhaW4nLFxuICAgICAgICAgICAgLy8gcGFuU2Vuc2l0aXZpdHk6IDI1LFxuICAgICAgICAgICAgLy8gZGlzYWJsZVRodW1iOiBmYWxzZSxcbiAgICAgICAgICAgIC8vIHBsYXllckludGVydmFsOiAzMDAwLFxuICAgICAgICAgICAgLy8gdGh1bWJNb2RlOiBUaHVtYm5haWxzTW9kZS5GcmVlLFxuICAgICAgICAgICAgLy8gdGh1bWJQb3NpdGlvbjogVGh1bWJuYWlsc1Bvc2l0aW9uLkJvdHRvbSxcbiAgICAgICAgICAgIGxvYWRpbmdTdHJhdGVneTogTG9hZGluZ1N0cmF0ZWd5LlByZWxvYWQsXG4gICAgICAgICAgICAvLyBzbGlkaW5nRGlyZWN0aW9uOiBTbGlkaW5nRGlyZWN0aW9uLkhvcml6b250YWwsXG4gICAgICAgIH07XG5cbiAgICAgICAgdGhpcy5ndWlkID0gUGVwR3VpZC5uZXdHdWlkKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBzZXRGaWVsZEhlaWdodCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWVsZEhlaWdodCA9IHRoaXMuY3VzdG9taXphdGlvblNlcnZpY2UuY2FsY3VsYXRlRmllbGRIZWlnaHQoXG4gICAgICAgICAgICB0aGlzLmxheW91dFR5cGUsXG4gICAgICAgICAgICB0aGlzLnJvd1NwYW4sXG4gICAgICAgICAgICB0aGlzLnN0YW5kQWxvbmVcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldERlZmF1bHRGb3JtKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBwZXBGaWVsZCA9IG5ldyBQZXBJbWFnZXNGaWVsZCh7XG4gICAgICAgICAgICBrZXk6IHRoaXMua2V5LFxuICAgICAgICAgICAgdmFsdWU6IHRoaXMudmFsdWUsXG4gICAgICAgICAgICBtYW5kYXRvcnk6IHRoaXMubWFuZGF0b3J5LFxuICAgICAgICAgICAgcmVhZG9ubHk6IHRoaXMucmVhZG9ubHksXG4gICAgICAgICAgICBkaXNhYmxlZDogdGhpcy5kaXNhYmxlZCxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuZm9ybSA9IHRoaXMuY3VzdG9taXphdGlvblNlcnZpY2UuZ2V0RGVmYXVsdEZyb21Hcm91cChwZXBGaWVsZCk7XG4gICAgfVxuXG4gICAgLy8gcHJpdmF0ZSByZW5kZXJOYXZJY29uKGdhbGxlcnlDb250YWluZXIsIGlzTGVmdDogYm9vbGVhbikge1xuICAgIC8vICAgICBsZXQgaWNvbk5hbWUgPSBpc0xlZnQgPyBwZXBJY29uQXJyb3dMZWZ0QWx0Lm5hbWUgOiBwZXBJY29uQXJyb3dSaWdodEFsdC5uYW1lO1xuICAgIC8vICAgICBjb25zdCBzdmdEYXRhID0gdGhpcy5pY29uUmVnaXN0cnkuZ2V0SWNvbihpY29uTmFtZSk7XG4gICAgLy8gICAgIGNvbnN0IHN2Z0ljb24gPSB0aGlzLnV0aWxpdGllc1NlcnZpY2UuZ2V0U3ZnRWxlbWVudEZyb21TdHJpbmcoXG4gICAgLy8gICAgICAgICB0aGlzLmRvY3VtZW50LFxuICAgIC8vICAgICAgICAgc3ZnRGF0YVxuICAgIC8vICAgICApO1xuXG4gICAgLy8gICAgIGNvbnN0IGVsZW1lbnROYW1lVG9GaW5kID0gaXNMZWZ0ID8gJ2ctbmF2LXByZXYnIDogJ2ctbmF2LW5leHQnXG5cbiAgICAvLyAgICAgY29uc3QgZWxlbWVudEFyciA9IGdhbGxlcnlDb250YWluZXIubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKGAuJHtlbGVtZW50TmFtZVRvRmluZH1gKTtcbiAgICAvLyAgICAgaWYgKGVsZW1lbnRBcnIgJiYgZWxlbWVudEFyci5sZW5ndGggPiAwKSB7XG4gICAgLy8gICAgICAgICBlbGVtZW50QXJyWzBdLmFwcGVuZENoaWxkKHN2Z0ljb24pO1xuICAgIC8vICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhzdmdJY29uLCAnc3ZnLWljb24nKTtcbiAgICAvLyAgICAgfVxuICAgIC8vIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuaW5EaWFsb2cpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLmZvcm0gPT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnN0YW5kQWxvbmUgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0RmllbGRIZWlnaHQoKTtcbiAgICAgICAgICAgICAgICB0aGlzLnNldERlZmF1bHRGb3JtKCk7XG5cbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCxcbiAgICAgICAgICAgICAgICAgICAgUGVwQ3VzdG9taXphdGlvblNlcnZpY2UuU1RBTkRfQUxPTkVfRklFTERfQ0xBU1NfTkFNRVxuICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMucmVuZGVyVGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5hZGRDbGFzcyhcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50LFxuICAgICAgICAgICAgICAgICAgICAgICAgUGVwQ3VzdG9taXphdGlvblNlcnZpY2UuU1RBTkRfQUxPTkVfRklFTERfTk9fU1BBQ0lOR19DTEFTU19OQU1FXG4gICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuaXRlbXMgPT09IG51bGwpIHtcbiAgICAgICAgICAgIGNvbnN0IGltZ0FyciA9IHRoaXMudmFsdWUgPyB0aGlzLnZhbHVlLnNwbGl0KCc7JykgOiBbXTtcbiAgICAgICAgICAgIC8vIGFkZCBObyBpbWFnZSBpbWFnZSB3aGVuIHRoZXJlIGlzIG5vIGltYWdlc1xuICAgICAgICAgICAgaWYgKGltZ0Fyci5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICBjb25zdCBub0ltYWdlU3JjID0gdGhpcy5maWxlU2VydmljZS5nZXRTdmdBc0ltYWdlU3JjKFxuICAgICAgICAgICAgICAgICAgICBwZXBJY29uTm9JbWFnZTIuZGF0YVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgaW1nQXJyLnB1c2gobm9JbWFnZVNyYyk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuaXRlbXMgPSBpbWdBcnIubWFwKFxuICAgICAgICAgICAgICAgIChpbWcpID0+IG5ldyBJbWFnZUl0ZW0oeyBzcmM6IGltZywgdGh1bWI6IGltZyB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY29uZmlnLmRvdHMgPSB0aGlzLmNvbmZpZy5uYXYgPSB0aGlzLml0ZW1zLmxlbmd0aCA+IDE7XG4gICAgICAgIHRoaXMuY29uZmlnLnRodW1iID1cbiAgICAgICAgICAgICh0aGlzLmtleSA9PT0gJ0l0ZW1GaWxtc3RyaXBJbWFnZXMnIHx8IHRoaXMuc2hvd1RodW1ibmFpbHMpICYmXG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtcy5sZW5ndGggPiAxXG4gICAgICAgICAgICAgICAgPyB0cnVlXG4gICAgICAgICAgICAgICAgOiBmYWxzZTtcbiAgICAgICAgdGhpcy5jdXJySW5kZXggPVxuICAgICAgICAgICAgdGhpcy5rZXkgPT09ICdJdGVtRmlsbXN0cmlwSW1hZ2VzJyAmJlxuICAgICAgICAgICAgICAgIHRoaXMuY3VyckluZGV4ID09PSAwICYmXG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtcy5sZW5ndGggPiAxXG4gICAgICAgICAgICAgICAgPyBNYXRoLmZsb29yKHRoaXMuaXRlbXMubGVuZ3RoIC8gMikgLSAxXG4gICAgICAgICAgICAgICAgOiB0aGlzLmN1cnJJbmRleDtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmluRGlhbG9nKSB7XG4gICAgICAgICAgICB0aGlzLmFmdGVyRGlhbG9nT3BlbmVkKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmdhbGxlcnlSZWYgPSB0aGlzLmdhbGxlcnkucmVmKFxuICAgICAgICAgICAgICAgIGAke3RoaXMuZ3VpZH0tZ2FsbGVyeWBcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICB0aGlzLmluaXRHYWxsZXJ5U3R5bGUodGhpcy5nYWxsZXJ5Q29udCwgdGhpcy5nYWxsZXJ5UmVmKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5zdGFuZEFsb25lKSB7XG4gICAgICAgICAgICB0aGlzLnNldERlZmF1bHRGb3JtKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZ2FsbGVyeVJlZikge1xuICAgICAgICAgICAgdGhpcy5nYWxsZXJ5UmVmLmRlc3Ryb3koKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5kaWFsb2dHYWxsZXJ5UmVmKSB7XG4gICAgICAgICAgICB0aGlzLmRpYWxvZ0dhbGxlcnlSZWYuZGVzdHJveSgpO1xuICAgICAgICB9XG4gICAgICAgIC8vIGlmICh0aGlzLm15UGluY2gpIHsgdGhpcy5teVBpbmNoLmRlc3Ryb3koKTsgfVxuICAgIH1cblxuICAgIGluaXRHYWxsZXJ5U3R5bGUoZ2FsbGVyeUNvbnRhaW5lciwgZ2FsbGVyeVJlZik6IHZvaWQge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIC8vIFNldCB0aHVtYm5haWxzIHBvc2l0aW9uIGFuZCBzbGlkaW5nIGRpcmVjdGlvblxuICAgICAgICAgICAgdGhpcy5zZXRUaHVtYm5haWxEaW1lbnNpb24oZ2FsbGVyeUNvbnRhaW5lcik7XG4gICAgICAgICAgICBnYWxsZXJ5UmVmLnNldENvbmZpZyh0aGlzLmNvbmZpZyk7XG4gICAgICAgICAgICAvLyB0aGlzLnJlbmRlck5hdkljb24oZ2FsbGVyeUNvbnRhaW5lciwgdHJ1ZSk7XG4gICAgICAgICAgICAvLyB0aGlzLnJlbmRlck5hdkljb24oZ2FsbGVyeUNvbnRhaW5lciwgZmFsc2UpO1xuICAgICAgICB9LCAwKTtcblxuICAgICAgICBjb25zdCBjdXJyZW50SW5kZXggPSB0aGlzLmN1cnJJbmRleDtcbiAgICAgICAgaWYgKGN1cnJlbnRJbmRleCA+IDApIHtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGdhbGxlcnlSZWYubG9hZCh0aGlzLml0ZW1zKTtcbiAgICAgICAgICAgICAgICBnYWxsZXJ5UmVmLnNldChjdXJyZW50SW5kZXgpO1xuICAgICAgICAgICAgfSwgMCk7XG4gICAgICAgICAgICAvLyBnYWxsZXJ5UmVmLnNldChjdXJyZW50SW5kZXgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZ2FsbGVyeVJlZi5sb2FkKHRoaXMuaXRlbXMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25FcnJvcihlKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG5vSW1hZ2VTcmMgPSB0aGlzLmZpbGVTZXJ2aWNlLmdldFN2Z0FzSW1hZ2VTcmMoXG4gICAgICAgICAgICBwZXBJY29uTm9JbWFnZTIuZGF0YVxuICAgICAgICApO1xuICAgICAgICBjb25zdCBub2ltZyA9IG5ldyBJbWFnZUl0ZW0oeyBzcmM6IG5vSW1hZ2VTcmMsIHRodW1iOiBub0ltYWdlU3JjIH0pO1xuICAgICAgICB0aGlzLml0ZW1zLnNwbGljZShlLml0ZW1JbmRleCwgMSwgbm9pbWcpO1xuICAgIH1cblxuICAgIGVubGFyZ2VJbWFnZShldmVudDogYW55KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNvbmZpZyA9IHRoaXMuZGlhbG9nU2VydmljZS5nZXREaWFsb2dDb25maWcoe30sICdpbmxpbmUnKTtcbiAgICAgICAgY29uZmlnLm1heFdpZHRoID0gJzc1dncnO1xuICAgICAgICBjb25maWcuaGVpZ2h0ID0gJzk1dmgnO1xuXG4gICAgICAgIHRoaXMuZW5sYXJnZUltYWdlRGlhbG9nUmVmID0gdGhpcy5kaWFsb2dTZXJ2aWNlLm9wZW5EaWFsb2coXG4gICAgICAgICAgICB0aGlzLmdhbGxlcnlEaWFsb2dUZW1wbGF0ZSxcbiAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBjdXJySW5kZXg6IHRoaXMuY3VyckluZGV4LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGNvbmZpZ1xuICAgICAgICApO1xuXG4gICAgICAgIHRoaXMuZW5sYXJnZUltYWdlRGlhbG9nUmVmLmFmdGVyT3BlbmVkKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYWZ0ZXJEaWFsb2dPcGVuZWQoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gVXBkYXRlIGN1cnJlbnRJbmRleCBpbiBnYWxsZXJ5UmVmXG4gICAgICAgIC8vIGRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSh2YWx1ZSA9PiB7XG4gICAgICAgIC8vICAgICB0aGlzLmdhbGxlcnlSZWYuc2V0KHRoaXMuY3VyckluZGV4KTtcbiAgICAgICAgLy8gfSk7XG4gICAgfVxuXG4gICAgYWZ0ZXJEaWFsb2dPcGVuZWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGlhbG9nR2FsbGVyeVJlZiA9IHRoaXMuZ2FsbGVyeS5yZWYoXG4gICAgICAgICAgICBgJHt0aGlzLmd1aWR9LWRsZ0dhbGxlcnlgXG4gICAgICAgICk7XG4gICAgICAgIHRoaXMuaW5pdEdhbGxlcnlTdHlsZSh0aGlzLmdhbGxlcnlEaWFsb2dDb250LCB0aGlzLmRpYWxvZ0dhbGxlcnlSZWYpO1xuICAgIH1cblxuICAgIGNsb3NlRGlhbG9nKGV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLmluRGlhbG9nKSB7XG4gICAgICAgICAgICB0aGlzLmRpYWxvZ1JlZj8uY2xvc2UoZXZlbnQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5lbmxhcmdlSW1hZ2VEaWFsb2dSZWY/LmNsb3NlKGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHNldFRodW1ibmFpbERpbWVuc2lvbihnYWxsZXJ5Q29udGFpbmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZ2FsbGVyeVdpZHRoID0gZ2FsbGVyeUNvbnRhaW5lci5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoO1xuICAgICAgICAvLyB0aGlzLmdhbGxlcnlIZWlnaHQgPSBnYWxsZXJ5Q29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuY2xpZW50SGVpZ2h0IC0gMzI7IC8vIFRPRE8gLSBUQUxLIFdJVEggVE9NRVJcbiAgICAgICAgdGhpcy5nYWxsZXJ5SGVpZ2h0ID0gdGhpcy5pbkRpYWxvZ1xuICAgICAgICAgICAgPyBnYWxsZXJ5Q29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuY2xpZW50SGVpZ2h0IC0gMzJcbiAgICAgICAgICAgIDogZ2FsbGVyeUNvbnRhaW5lci5uYXRpdmVFbGVtZW50LmNsaWVudEhlaWdodDtcbiAgICAgICAgLy8gdGhpcy5nYWxsZXJ5SGVpZ2h0ID0gZ2FsbGVyeUNvbnRhaW5lci5uYXRpdmVFbGVtZW50LmNsaWVudEhlaWdodCAtIDMyO1xuICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcblxuICAgICAgICB0aGlzLmlzVmVydGljYWwgPSB0aGlzLmdhbGxlcnlXaWR0aCA8IHRoaXMuZ2FsbGVyeUhlaWdodDtcbiAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIGlmICh0aGlzLmlzVmVydGljYWwpIHtcbiAgICAgICAgICAgIGxldCB3aWR0aCA9XG4gICAgICAgICAgICAgICAgKHRoaXMuZ2FsbGVyeVdpZHRoIC0gKHRoaXMuaXRlbXMubGVuZ3RoIC0gMSkgKiAxNikgL1xuICAgICAgICAgICAgICAgIHRoaXMuaXRlbXMubGVuZ3RoO1xuICAgICAgICAgICAgd2lkdGggPSBNYXRoLm1pbihNYXRoLm1heCh3aWR0aCwgMjQpLCA5Nik7XG5cbiAgICAgICAgICAgIHRoaXMuY29uZmlnLnRodW1iSGVpZ2h0ID0gd2lkdGg7XG4gICAgICAgICAgICB0aGlzLmNvbmZpZy50aHVtYldpZHRoID0gd2lkdGggKyAxNjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGxldCBoZWlnaHQgPVxuICAgICAgICAgICAgICAgICh0aGlzLmdhbGxlcnlIZWlnaHQgLSAodGhpcy5pdGVtcy5sZW5ndGggLSAxKSAqIDE2KSAvXG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtcy5sZW5ndGg7XG4gICAgICAgICAgICBoZWlnaHQgPSBNYXRoLm1pbihNYXRoLm1heChoZWlnaHQsIDI0KSwgOTYpO1xuXG4gICAgICAgICAgICB0aGlzLmNvbmZpZy50aHVtYkhlaWdodCA9IGhlaWdodCArIDE2O1xuICAgICAgICAgICAgdGhpcy5jb25maWcudGh1bWJXaWR0aCA9IGhlaWdodDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuY29uZmlnLnRodW1iUG9zaXRpb24gPSB0aGlzLmlzVmVydGljYWxcbiAgICAgICAgICAgID8gVGh1bWJuYWlsc1Bvc2l0aW9uLkJvdHRvbVxuICAgICAgICAgICAgOiB0aGlzLmxheW91dFNlcnZpY2UuaXNSdGwoKVxuICAgICAgICAgICAgICAgID8gVGh1bWJuYWlsc1Bvc2l0aW9uLlJpZ2h0XG4gICAgICAgICAgICAgICAgOiBUaHVtYm5haWxzUG9zaXRpb24uTGVmdDtcbiAgICAgICAgdGhpcy5jb25maWcuc2xpZGluZ0RpcmVjdGlvbiA9XG4gICAgICAgICAgICB0aGlzLmtleSAhPT0gJ0l0ZW1GaWxtc3RyaXBJbWFnZXMnXG4gICAgICAgICAgICAgICAgPyBTbGlkaW5nRGlyZWN0aW9uLkhvcml6b250YWxcbiAgICAgICAgICAgICAgICA6IHRoaXMuaXNWZXJ0aWNhbFxuICAgICAgICAgICAgICAgICAgICA/IFNsaWRpbmdEaXJlY3Rpb24uSG9yaXpvbnRhbFxuICAgICAgICAgICAgICAgICAgICA6IFNsaWRpbmdEaXJlY3Rpb24uVmVydGljYWw7XG5cbiAgICAgICAgdGhpcy5jb25maWcuaW1hZ2VTaXplID0gJ2NvbnRhaW4nO1xuICAgIH1cblxuICAgIGluZGV4Q2hhbmdlKGl0ZW06IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLmN1cnJJbmRleCA9IGl0ZW0uY3VyckluZGV4O1xuICAgICAgICAvLyBpZiAodGhpcy5uZ3hWaWV3ZXJJbWFnZSAmJiB0aGlzLm5neFZpZXdlckltYWdlLnNjYWxlKSB7XG4gICAgICAgIC8vICAgICB0aGlzLm5neFZpZXdlckltYWdlLnNjYWxlID0gMTtcbiAgICAgICAgLy8gICAgIHRoaXMudXBkYXRlU3R5bGUoKTtcbiAgICAgICAgLy8gfVxuICAgIH1cblxuXG4gICAgLy8gc2Nyb2xsRnVuY3Rpb24oZTogYW55KTogYm9vbGVhbiB7XG4gICAgLy8gICAgIGUuZGVsdGFZID4gMCA/IHRoaXMuem9vbU91dCgpIDogdGhpcy56b29tSW4oKTtcbiAgICAvLyAgICAgcmV0dXJuIGZhbHNlO1xuICAgIC8vIH1cblxuICAgIC8vIHpvb21JbigpOiB2b2lkIHtcbiAgICAvLyAgICAgaWYgKHRoaXMubmd4Vmlld2VySW1hZ2Uuc2NhbGUgPCAyKSB7XG4gICAgLy8gICAgICAgICB0aGlzLm5neFZpZXdlckltYWdlLnNjYWxlICo9ICgxICsgdGhpcy5uZ3hWaWV3ZXJJbWFnZS5jb25maWcuem9vbUZhY3Rvcik7XG4gICAgLy8gICAgIH0gZWxzZSB7XG4gICAgLy8gICAgICAgICB0aGlzLm5neFZpZXdlckltYWdlLnNjYWxlID0gMjtcbiAgICAvLyAgICAgfVxuICAgIC8vICAgICB0aGlzLnVwZGF0ZVN0eWxlKCk7XG4gICAgLy8gfVxuXG4gICAgLy8gem9vbU91dCgpOiB2b2lkIHtcbiAgICAvLyAgICAgaWYgKHRoaXMubmd4Vmlld2VySW1hZ2Uuc2NhbGUgPiB0aGlzLm5neFZpZXdlckltYWdlLmNvbmZpZy56b29tRmFjdG9yKSB7XG4gICAgLy8gICAgICAgICB0aGlzLm5neFZpZXdlckltYWdlLnNjYWxlIC89ICgxICsgdGhpcy5uZ3hWaWV3ZXJJbWFnZS5jb25maWcuem9vbUZhY3Rvcik7XG4gICAgLy8gICAgIH1cbiAgICAvLyAgICAgdGhpcy51cGRhdGVTdHlsZSgpO1xuICAgIC8vIH1cblxuICAgIC8vIHByaXZhdGUgdXBkYXRlU3R5bGUoKTogdm9pZCB7XG4gICAgLy8gICAgIHRoaXMubmd4Vmlld2VySW1hZ2Uuc3R5bGUudHJhbnNmb3JtID0gYHRyYW5zbGF0ZSgke3RoaXMubmd4Vmlld2VySW1hZ2UudHJhbnNsYXRlWH1weCxcbiAgICAvLyAgICAgICAgICR7dGhpcy5uZ3hWaWV3ZXJJbWFnZS50cmFuc2xhdGVZfXB4KSByb3RhdGUoJHt0aGlzLm5neFZpZXdlckltYWdlLnJvdGF0aW9ufWRlZykgc2NhbGUoJHt0aGlzLm5neFZpZXdlckltYWdlLnNjYWxlfSlgO1xuXG4gICAgLy8gICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIC8vIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJpbkRpYWxvZzsgdGhlbiBnYWxsZXJ5RGlhbG9nVGVtcGxhdGU7IGVsc2UgcmVndWxhclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG48bmctdGVtcGxhdGUgI3JlZ3VsYXJUZW1wbGF0ZT5cbiAgICA8bmctY29udGFpbmVyIFtmb3JtR3JvdXBdPVwiZm9ybVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiaW1hZ2VzLWZpbG1zdHJpcC1jb250YWluZXJcIj5cbiAgICAgICAgICAgIDxwZXAtZmllbGQtdGl0bGUgKm5nSWY9XCJyZW5kZXJUaXRsZVwiIFtsYWJlbF09XCJsYWJlbFwiIFt4QWxpZ25tZW50XT1cInhBbGlnbm1lbnRcIiBbc2hvd1RpdGxlXT1cInNob3dUaXRsZVwiPlxuICAgICAgICAgICAgPC9wZXAtZmllbGQtdGl0bGU+XG4gICAgICAgICAgICA8ZGl2ICNnYWxsZXJ5Q29udCBjbGFzcz1cImltZy13cmFwcGVyXCIgW25nQ2xhc3NdPVwiaXNWZXJ0aWNhbCA/ICd2ZXJ0aWNhbC1nYWxsZXJ5JyA6ICdob3Jpem9udGFsLWdhbGxlcnknXCJcbiAgICAgICAgICAgICAgICBbc3R5bGUuaGVpZ2h0XT1cImZpZWxkSGVpZ2h0XCI+XG4gICAgICAgICAgICAgICAgPHBlcC1idXR0b24gKm5nSWY9XCJpdGVtcz8ubGVuZ3RoID4gMVwiIGljb25OYW1lPVwiYXJyb3dfbGVmdF9hbHRcIiBzdHlsZVR5cGU9XCJ3ZWFrLWludmVydFwiIHNpemVUeXBlPVwic21cIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiZm9ybUdhbGxlcnkucHJldigpXCIgY2xhc3M9XCJnYWxsZXJ5LWFycm93IHN0YXJ0LWFycm93XCI+XG4gICAgICAgICAgICAgICAgPC9wZXAtYnV0dG9uPlxuICAgICAgICAgICAgICAgIDxnYWxsZXJ5ICNmb3JtR2FsbGVyeSBpZD1cInt7Z3VpZH19LWdhbGxlcnlcIiAoaXRlbUNsaWNrKT1cImVubGFyZ2VJbWFnZSgkZXZlbnQpO1wiIFtpbWFnZVNpemVdPVwiJ2NvbnRhaW4nXCJcbiAgICAgICAgICAgICAgICAgICAgKGluZGV4Q2hhbmdlKT1cImluZGV4Q2hhbmdlKCRldmVudClcIiAoZXJyb3IpPVwib25FcnJvcigkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgPC9nYWxsZXJ5PlxuICAgICAgICAgICAgICAgIDxwZXAtYnV0dG9uICpuZ0lmPVwiaXRlbXM/Lmxlbmd0aCA+IDFcIiBpY29uTmFtZT1cImFycm93X3JpZ2h0X2FsdFwiIHN0eWxlVHlwZT1cIndlYWstaW52ZXJ0XCIgc2l6ZVR5cGU9XCJzbVwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJmb3JtR2FsbGVyeS5uZXh0KClcIiBjbGFzcz1cImdhbGxlcnktYXJyb3cgZW5kLWFycm93XCI+XG4gICAgICAgICAgICAgICAgPC9wZXAtYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNnYWxsZXJ5RGlhbG9nVGVtcGxhdGU+XG4gICAgPGRpdiBjbGFzcz1cImdhbGxlcnktZGlhbG9nXCI+XG4gICAgICAgIDxwZXAtZGlhbG9nIFt0aXRsZV09XCJsYWJlbFwiIFtzaG93Rm9vdGVyXT1cInNob3dGb290ZXJcIiBbc2hvd0Nsb3NlXT1cInNob3dDbG9zZVwiICAoY2xvc2UpPVwiY2xvc2VEaWFsb2coJGV2ZW50KVwiPlxuICAgICAgICAgICAgPGRpdiBwZXAtZGlhbG9nLWNvbnRlbnQgI2dhbGxlcnlEaWFsb2dDb250IGNsYXNzPVwiZ2FsbGVyeS1kaWFsb2ctY29udGVudFwiXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiaXNWZXJ0aWNhbCA/ICd2ZXJ0aWNhbC1nYWxsZXJ5JyA6ICdob3Jpem9udGFsLWdhbGxlcnknXCI+XG4gICAgICAgICAgICAgICAgPHBlcC1idXR0b24gKm5nSWY9XCJpdGVtcz8ubGVuZ3RoID4gMVwiIGljb25OYW1lPVwiYXJyb3dfbGVmdF9hbHRcIiBzdHlsZVR5cGU9XCJ3ZWFrLWludmVydFwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJkaWFsb2dHYWxsZXJ5LnByZXYoKVwiIGNsYXNzPVwiZ2FsbGVyeS1hcnJvdyBzdGFydC1hcnJvd1wiPlxuICAgICAgICAgICAgICAgIDwvcGVwLWJ1dHRvbj5cbiAgICAgICAgICAgICAgICA8Z2FsbGVyeSAjZGlhbG9nR2FsbGVyeSBpZD1cInt7Z3VpZH19LWRsZ0dhbGxlcnlcIiBbaW1hZ2VTaXplXT1cIidjb250YWluJ1wiXG4gICAgICAgICAgICAgICAgICAgIChpbmRleENoYW5nZSk9XCJpbmRleENoYW5nZSgkZXZlbnQpXCIgKGVycm9yKT1cIm9uRXJyb3IoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgIDwvZ2FsbGVyeT5cbiAgICAgICAgICAgICAgICA8cGVwLWJ1dHRvbiAqbmdJZj1cIml0ZW1zPy5sZW5ndGggPiAxXCIgaWNvbk5hbWU9XCJhcnJvd19yaWdodF9hbHRcIiBzdHlsZVR5cGU9XCJ3ZWFrLWludmVydFwiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJkaWFsb2dHYWxsZXJ5Lm5leHQoKVwiIGNsYXNzPVwiZ2FsbGVyeS1hcnJvdyBlbmQtYXJyb3dcIj5cbiAgICAgICAgICAgICAgICA8L3BlcC1idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9wZXAtZGlhbG9nPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
|