@theseam/ui-common 0.4.28 → 0.4.30
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/breadcrumbs/breadcrumbs/breadcrumbs.component.scss +1 -1
- package/datatable/datatable/datatable.component.d.ts +61 -9
- package/datatable/datatable-column-filter-menu/datatable-column-filter-menu.component.d.ts +25 -0
- package/datatable/datatable-column-filter-search-date/datatable-column-filter-search-date.component.d.ts +18 -0
- package/datatable/datatable-column-filter-search-numeric/datatable-column-filter-search-numeric.component.d.ts +16 -0
- package/datatable/datatable-column-filter-search-text/datatable-column-filter-search-text.component.d.ts +15 -0
- package/datatable/datatable-menu-bar/datatable-menu-bar.component.d.ts +2 -2
- package/datatable/datatable.module.d.ts +29 -20
- package/datatable/directives/datatable-column-filter-tpl.directive.d.ts +8 -0
- package/datatable/directives/datatable-column-filter.directive.d.ts +10 -0
- package/datatable/models/action-item-column-position.d.ts +13 -0
- package/datatable/models/columns-data-filter.d.ts +57 -0
- package/datatable/models/columns-data-filters/models.d.ts +65 -0
- package/datatable/models/columns-data-filters/search-date.columns-data-filter.d.ts +23 -0
- package/datatable/models/columns-data-filters/search-numeric.columns-data-filter.d.ts +22 -0
- package/datatable/models/columns-data-filters/search-text.columns-data-filter.d.ts +21 -0
- package/datatable/models/columns-data-filters/utils.d.ts +15 -0
- package/datatable/models/datatable-config.d.ts +97 -0
- package/datatable/models/table-column.d.ts +22 -1
- package/datatable/public-api.d.ts +14 -0
- package/datatable/services/columns-filters.service.d.ts +29 -0
- package/datatable/services/columns-manager.service.d.ts +7 -0
- package/datatable/utils/create-action-menu-column.d.ts +1 -1
- package/esm2020/asset-reader/asset-reader-helper.service.mjs +4 -4
- package/esm2020/asset-reader/asset-reader.module.mjs +5 -5
- package/esm2020/asset-reader/encrypted-asset-link.directive.mjs +4 -4
- package/esm2020/breadcrumbs/breadcrumbs/breadcrumbs.component.mjs +5 -5
- package/esm2020/breadcrumbs/breadcrumbs.module.mjs +5 -5
- package/esm2020/breadcrumbs/breadcrumbs.service.mjs +4 -4
- package/esm2020/buttons/badge-button/badge-button.component.mjs +7 -7
- package/esm2020/buttons/button/button.component.mjs +10 -10
- package/esm2020/buttons/buttons.module.mjs +5 -5
- package/esm2020/buttons/progress-circle-button/progress-circle-button.component.mjs +4 -4
- package/esm2020/buttons/toggle-button/toggle-button.component.mjs +4 -4
- package/esm2020/card/card-action/card-action.component.mjs +4 -4
- package/esm2020/card/card-body/card-body.component.mjs +4 -4
- package/esm2020/card/card-footer/card-footer.component.mjs +4 -4
- package/esm2020/card/card-header/card-header.component.mjs +4 -4
- package/esm2020/card/card.component.mjs +4 -4
- package/esm2020/card/card.module.mjs +5 -5
- package/esm2020/carousel/carousel-slide.directive.mjs +4 -4
- package/esm2020/carousel/carousel.component.mjs +4 -4
- package/esm2020/carousel/carousel.module.mjs +5 -5
- package/esm2020/checkbox/checkbox.component.mjs +4 -4
- package/esm2020/checkbox/checkbox.module.mjs +5 -5
- package/esm2020/confirm-dialog/confirm-click.directive.mjs +4 -4
- package/esm2020/confirm-dialog/confirm-dialog.component.mjs +4 -4
- package/esm2020/confirm-dialog/confirm-dialog.module.mjs +5 -5
- package/esm2020/confirm-dialog/confirm-dialog.service.mjs +4 -4
- package/esm2020/data-exporter/data-exporter.module.mjs +5 -5
- package/esm2020/data-exporter/exporters/csv-exporter.mjs +4 -4
- package/esm2020/data-exporter/exporters/xlsx-exporter.mjs +4 -4
- package/esm2020/data-filters/data-filters.module.mjs +5 -5
- package/esm2020/data-filters/filters/data-filter-search/data-filter-search.component.mjs +4 -4
- package/esm2020/data-filters/filters/data-filter-text/data-filter-text.component.mjs +4 -4
- package/esm2020/data-filters/filters/data-filter-toggle-buttons/data-filter-toggle-buttons.component.mjs +4 -4
- package/esm2020/datatable/datatable/datatable.component.mjs +241 -32
- package/esm2020/datatable/datatable-action-menu/datatable-action-menu.component.mjs +5 -5
- package/esm2020/datatable/datatable-action-menu-item/datatable-action-menu-item.component.mjs +4 -4
- package/esm2020/datatable/datatable-column/datatable-column.component.mjs +4 -4
- package/esm2020/datatable/datatable-column-filter-menu/datatable-column-filter-menu.component.mjs +55 -0
- package/esm2020/datatable/datatable-column-filter-search-date/datatable-column-filter-search-date.component.mjs +54 -0
- package/esm2020/datatable/datatable-column-filter-search-numeric/datatable-column-filter-search-numeric.component.mjs +48 -0
- package/esm2020/datatable/datatable-column-filter-search-text/datatable-column-filter-search-text.component.mjs +44 -0
- package/esm2020/datatable/datatable-column-preferences/datatable-column-preferences.component.mjs +4 -4
- package/esm2020/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.mjs +4 -4
- package/esm2020/datatable/datatable-export-button/datatable-export-button.component.mjs +4 -4
- package/esm2020/datatable/datatable-footer/datatable-footer-tpl.directive.mjs +4 -4
- package/esm2020/datatable/datatable-footer/datatable-footer.directive.mjs +4 -4
- package/esm2020/datatable/datatable-menu-bar/datatable-menu-bar.component.mjs +4 -4
- package/esm2020/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.mjs +4 -4
- package/esm2020/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.mjs +4 -4
- package/esm2020/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.mjs +4 -4
- package/esm2020/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.mjs +4 -4
- package/esm2020/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.mjs +4 -4
- package/esm2020/datatable/datatable-row-detail/datatable-row-detail-tpl.directive.mjs +4 -4
- package/esm2020/datatable/datatable-row-detail/datatable-row-detail.directive.mjs +4 -4
- package/esm2020/datatable/datatable.module.mjs +53 -11
- package/esm2020/datatable/directives/datatable-action-menu-item.directive.mjs +4 -4
- package/esm2020/datatable/directives/datatable-action-menu-toggle.directive.mjs +4 -4
- package/esm2020/datatable/directives/datatable-cell-tpl.directive.mjs +4 -4
- package/esm2020/datatable/directives/datatable-column-filter-tpl.directive.mjs +16 -0
- package/esm2020/datatable/directives/datatable-column-filter.directive.mjs +26 -0
- package/esm2020/datatable/directives/datatable-filter.directive.mjs +4 -4
- package/esm2020/datatable/directives/datatable-row-action-item.directive.mjs +4 -4
- package/esm2020/datatable/models/action-item-column-position.mjs +5 -0
- package/esm2020/datatable/models/columns-data-filter.mjs +10 -0
- package/esm2020/datatable/models/columns-data-filters/models.mjs +74 -0
- package/esm2020/datatable/models/columns-data-filters/search-date.columns-data-filter.mjs +113 -0
- package/esm2020/datatable/models/columns-data-filters/search-numeric.columns-data-filter.mjs +104 -0
- package/esm2020/datatable/models/columns-data-filters/search-text.columns-data-filter.mjs +86 -0
- package/esm2020/datatable/models/columns-data-filters/utils.mjs +28 -0
- package/esm2020/datatable/models/datatable-config.mjs +3 -0
- package/esm2020/datatable/models/table-column.mjs +1 -1
- package/esm2020/datatable/public-api.mjs +15 -1
- package/esm2020/datatable/services/columns-alterations-manager.service.mjs +4 -4
- package/esm2020/datatable/services/columns-filters.service.mjs +109 -0
- package/esm2020/datatable/services/columns-manager.service.mjs +30 -5
- package/esm2020/datatable/services/datatable-column-changes.service.mjs +4 -4
- package/esm2020/datatable/services/datatable-preferences.service.mjs +4 -4
- package/esm2020/datatable/services/datatable-scrollbar-helper.service.mjs +4 -4
- package/esm2020/datatable/utils/create-action-menu-column.mjs +4 -3
- package/esm2020/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.mjs +4 -4
- package/esm2020/datatable-dynamic/datatable-dynamic-filter-container/datatable-dynamic-filter-container.component.mjs +4 -4
- package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.mjs +4 -4
- package/esm2020/datatable-dynamic/datatable-dynamic.component.mjs +5 -5
- package/esm2020/datatable-dynamic/datatable-dynamic.module.mjs +5 -5
- package/esm2020/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.mjs +4 -4
- package/esm2020/datatable-dynamic/dynamic-datatable-def.service.mjs +4 -4
- package/esm2020/datatable-dynamic/dynamic-datatable-row-actions.service.mjs +4 -4
- package/esm2020/dynamic/action/api/dynamic-action-api.service.mjs +4 -4
- package/esm2020/dynamic/action/dynamic-action-helper.service.mjs +4 -4
- package/esm2020/dynamic/action/link/dynamic-action-link.service.mjs +4 -4
- package/esm2020/dynamic/action/modal/dynamic-action-modal.service.mjs +4 -4
- package/esm2020/dynamic/dynamic-value-helper.service.mjs +4 -4
- package/esm2020/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.mjs +4 -4
- package/esm2020/dynamic/evaluators/jexl-evaluator/jexl-evaluator.mjs +4 -4
- package/esm2020/dynamic-component-loader/dynamic-component-loader.module.mjs +5 -5
- package/esm2020/dynamic-component-loader/dynamic-component-loader.service.mjs +4 -4
- package/esm2020/footer-bar/footer-bar/footer-bar.component.mjs +4 -4
- package/esm2020/footer-bar/footer-bar.module.mjs +5 -5
- package/esm2020/form-field/form-field-error.directive.mjs +4 -4
- package/esm2020/form-field/form-field-help-text.directive.mjs +4 -4
- package/esm2020/form-field/form-field-label-tpl.directive.mjs +4 -4
- package/esm2020/form-field/form-field-required-indicator.component.mjs +4 -4
- package/esm2020/form-field/form-field.component.mjs +4 -4
- package/esm2020/form-field/form-field.module.mjs +5 -5
- package/esm2020/form-field/input.directive.mjs +4 -4
- package/esm2020/form-field-error/form-field-error/form-field-error.component.mjs +4 -4
- package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.mjs +4 -4
- package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item.directive.mjs +4 -4
- package/esm2020/form-field-error/form-field-error-list/form-field-error-list.component.mjs +4 -4
- package/esm2020/form-field-error/form-field-error.module.mjs +5 -5
- package/esm2020/framework/base-layout/base-layout.component.mjs +16 -6
- package/esm2020/framework/base-layout/base-layout.module.mjs +10 -5
- package/esm2020/framework/base-layout/directives/base-layout-content-footer.directive.mjs +4 -4
- package/esm2020/framework/base-layout/directives/base-layout-content-header.directive.mjs +4 -4
- package/esm2020/framework/base-layout/directives/base-layout-content.directive.mjs +4 -4
- package/esm2020/framework/base-layout/directives/base-layout-nav-toggle.directive.mjs +22 -6
- package/esm2020/framework/base-layout/directives/base-layout-side-bar-footer.directive.mjs +4 -4
- package/esm2020/framework/base-layout/directives/base-layout-side-bar-header.directive.mjs +16 -0
- package/esm2020/framework/base-layout/directives/base-layout-side-bar.directive.mjs +4 -4
- package/esm2020/framework/base-layout/directives/base-layout-top-bar.directive.mjs +4 -4
- package/esm2020/framework/base-layout/index.mjs +2 -1
- package/esm2020/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.mjs +4 -4
- package/esm2020/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.mjs +4 -4
- package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widget-portal-outlet.directive.mjs +4 -4
- package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences.service.mjs +4 -4
- package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.component.mjs +4 -4
- package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.service.mjs +4 -4
- package/esm2020/framework/dashboard/dashboard.component.mjs +4 -4
- package/esm2020/framework/dashboard/dashboard.module.mjs +5 -5
- package/esm2020/framework/dynamic-router/dynamic-router.module.mjs +5 -5
- package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.mjs +4 -4
- package/esm2020/framework/dynamic-router/resolvers/hierarchy-level.resolver.mjs +4 -4
- package/esm2020/framework/nav/horizontal-nav/horizontal-nav.component.mjs +55 -0
- package/esm2020/framework/nav/index.mjs +6 -0
- package/esm2020/framework/nav/nav-item/nav-item.component.mjs +227 -0
- package/esm2020/framework/nav/nav-utils.mjs +107 -0
- package/esm2020/framework/nav/nav.models.mjs +2 -0
- package/esm2020/framework/nav/nav.module.mjs +67 -0
- package/esm2020/framework/nav/nav.service.mjs +204 -0
- package/esm2020/framework/public-api.mjs +2 -1
- package/esm2020/framework/schema-form/schema-form-framework.component.mjs +4 -4
- package/esm2020/framework/schema-form/schema-form-framework.mjs +4 -4
- package/esm2020/framework/schema-form/schema-form.module.mjs +5 -5
- package/esm2020/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-divider/schema-form-divider.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-input/schema-form-input.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-number/schema-form-number.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-select/schema-form-select.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-tel/schema-form-tel.component.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-tiled-select/schema-form-tiled-select.component.mjs +4 -4
- package/esm2020/framework/side-nav/side-nav-item/side-nav-item.component.mjs +29 -68
- package/esm2020/framework/side-nav/side-nav-toggle/side-nav-toggle.component.mjs +14 -7
- package/esm2020/framework/side-nav/side-nav.component.mjs +117 -39
- package/esm2020/framework/side-nav/side-nav.models.mjs +1 -1
- package/esm2020/framework/side-nav/side-nav.module.mjs +11 -41
- package/esm2020/framework/side-nav/side-nav.service.mjs +4 -4
- package/esm2020/framework/top-bar/index.mjs +3 -1
- package/esm2020/framework/top-bar/top-bar-compact-menu-btn-detail.directive.mjs +16 -0
- package/esm2020/framework/top-bar/top-bar-item.directive.mjs +12 -6
- package/esm2020/framework/top-bar/top-bar-menu-btn-detail.directive.mjs +4 -4
- package/esm2020/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.mjs +8 -6
- package/esm2020/framework/top-bar/top-bar-menu.directive.mjs +4 -4
- package/esm2020/framework/top-bar/top-bar-nav-toggle-btn-detail.directive.mjs +16 -0
- package/esm2020/framework/top-bar/top-bar-title/top-bar-title.component.mjs +4 -4
- package/esm2020/framework/top-bar/top-bar.component.mjs +57 -13
- package/esm2020/framework/top-bar/top-bar.module.mjs +19 -9
- package/esm2020/google-maps/google-maps/google-maps.component.mjs +4 -4
- package/esm2020/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.mjs +4 -4
- package/esm2020/google-maps/google-maps-api-loader/noop-google-maps-api-loader.mjs +4 -4
- package/esm2020/google-maps/google-maps-controls.service.mjs +4 -4
- package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.mjs +5 -5
- package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.mjs +4 -4
- package/esm2020/google-maps/google-maps-recenter-button-control/google-maps-recenter-button-control.component.mjs +4 -4
- package/esm2020/google-maps/google-maps-upload-button-control/google-maps-upload-button-control.component.mjs +4 -4
- package/esm2020/google-maps/google-maps.module.mjs +5 -5
- package/esm2020/google-maps/google-maps.service.mjs +4 -4
- package/esm2020/google-maps/map-control.component.mjs +4 -4
- package/esm2020/google-maps/map-file-drop/map-file-drop.component.mjs +4 -4
- package/esm2020/google-maps/map-value-manager.service.mjs +4 -4
- package/esm2020/graphql/datatable/datatable-graphql.service.mjs +4 -4
- package/esm2020/graphql/datatable/index.mjs +4 -1
- package/esm2020/graphql/datatable/map-filter-states.mjs +1 -1
- package/esm2020/graphql/datatable/map-search-date-columns-data-filter-state-to-gql.mjs +139 -0
- package/esm2020/graphql/datatable/map-search-numeric-columns-data-filter-state-to-gql.mjs +75 -0
- package/esm2020/graphql/datatable/map-search-text-columns-data-filter-state-to-gql.mjs +44 -0
- package/esm2020/icon/icon/icon.component.mjs +4 -4
- package/esm2020/icon/icon-btn/icon-btn.component.mjs +4 -4
- package/esm2020/icon/icon-notification/icon-notification.component.mjs +4 -4
- package/esm2020/icon/icon.module.mjs +5 -5
- package/esm2020/layout/layout.module.mjs +5 -5
- package/esm2020/layout/layout.service.mjs +15 -5
- package/esm2020/loading/loading/loading.component.mjs +4 -4
- package/esm2020/loading/loading-overlay.service.mjs +4 -4
- package/esm2020/loading/loading.module.mjs +5 -5
- package/esm2020/menu/menu-divider.component.mjs +4 -4
- package/esm2020/menu/menu-footer/menu-footer.component.mjs +4 -4
- package/esm2020/menu/menu-footer-action/menu-footer-action.component.mjs +4 -4
- package/esm2020/menu/menu-header/menu-header.component.mjs +4 -4
- package/esm2020/menu/menu-item.component.mjs +4 -4
- package/esm2020/menu/menu-toggle.directive.mjs +9 -4
- package/esm2020/menu/menu.component.mjs +4 -4
- package/esm2020/menu/menu.module.mjs +5 -5
- package/esm2020/modal/directives/modal-close.directive.mjs +4 -4
- package/esm2020/modal/directives/modal-footer-tpl.directive.mjs +4 -4
- package/esm2020/modal/directives/modal-header-icon-tpl.directive.mjs +4 -4
- package/esm2020/modal/directives/modal-header-title-tpl.directive.mjs +4 -4
- package/esm2020/modal/directives/modal-title.directive.mjs +4 -4
- package/esm2020/modal/directives/modal.directive.mjs +4 -4
- package/esm2020/modal/modal/modal.component.mjs +4 -4
- package/esm2020/modal/modal-body/modal-body.component.mjs +4 -4
- package/esm2020/modal/modal-container/modal-container.component.mjs +4 -4
- package/esm2020/modal/modal-footer/modal-footer.component.mjs +4 -4
- package/esm2020/modal/modal-header/modal-header.component.mjs +4 -4
- package/esm2020/modal/modal.module.mjs +5 -5
- package/esm2020/modal/modal.service.mjs +4 -4
- package/esm2020/modal/route-modal/route-modal.component.mjs +4 -4
- package/esm2020/navigation-reload/navigation-reload.service.mjs +5 -5
- package/esm2020/popover/popover/popover.component.mjs +9 -5
- package/esm2020/popover/popover.directive.mjs +8 -4
- package/esm2020/popover/popover.module.mjs +5 -5
- package/esm2020/progress/progress-circle/progress-circle.component.mjs +4 -4
- package/esm2020/progress/progress.module.mjs +5 -5
- package/esm2020/rich-text/rich-text/rich-text.component.mjs +4 -4
- package/esm2020/rich-text/rich-text.module.mjs +5 -5
- package/esm2020/scrollbar/overlay-scrollbar.directive.mjs +4 -4
- package/esm2020/scrollbar/overlay-scrollbars.service.mjs +4 -4
- package/esm2020/scrollbar/scrollbar.module.mjs +5 -5
- package/esm2020/services/asset-loader.service.mjs +4 -4
- package/esm2020/services/font-loader.service.mjs +4 -4
- package/esm2020/services/preferences/preferences-manager.service.mjs +4 -4
- package/esm2020/services/router-helpers.service.mjs +4 -4
- package/esm2020/shared/components/password-input-reveal/password-input-reveal.component.mjs +4 -4
- package/esm2020/shared/directives/auto-focus.directive.mjs +4 -4
- package/esm2020/shared/directives/click-outside.directive.mjs +4 -4
- package/esm2020/shared/directives/disable-control.directive.mjs +4 -4
- package/esm2020/shared/directives/elem-resized.directive.mjs +4 -4
- package/esm2020/shared/directives/hover-class-toggle.directive.mjs +4 -4
- package/esm2020/shared/directives/hover-class.directive.mjs +4 -4
- package/esm2020/shared/directives/ng-select-extra.directive.mjs +4 -4
- package/esm2020/shared/directives/ngx-quill-extra.directive.mjs +4 -4
- package/esm2020/shared/pipes/mask-chars.pipe.mjs +4 -4
- package/esm2020/shared/pipes/truncate.pipe.mjs +4 -4
- package/esm2020/shared/shared.module.mjs +5 -5
- package/esm2020/storage/local-storage.service.mjs +4 -4
- package/esm2020/story-helpers/initial-route.service.mjs +4 -4
- package/esm2020/story-helpers/story-empty-with-route.component.mjs +4 -4
- package/esm2020/story-helpers/story-empty.component.mjs +4 -4
- package/esm2020/story-helpers/story-helper-components.module.mjs +5 -5
- package/esm2020/story-helpers/story-initial-route.mjs +5 -5
- package/esm2020/story-helpers/story-modal-container.component.mjs +4 -4
- package/esm2020/story-helpers/story-preferences-accessor.service.mjs +4 -4
- package/esm2020/story-helpers/story-toastr.service.mjs +4 -4
- package/esm2020/tabbed/directives/tabbed-tab-content.directive.mjs +4 -4
- package/esm2020/tabbed/directives/tabbed-tab.directive.mjs +4 -4
- package/esm2020/tabbed/tabbed-content/tabbed-content.component.mjs +4 -4
- package/esm2020/tabbed/tabbed-item/tabbed-item.component.mjs +4 -4
- package/esm2020/tabbed/tabbed.component.mjs +4 -4
- package/esm2020/tabbed/tabbed.module.mjs +5 -5
- package/esm2020/tabbed/tabbed.service.mjs +4 -4
- package/esm2020/table/public-api.mjs +4 -1
- package/esm2020/table/table/table.component.mjs +92 -7
- package/esm2020/table/table-cell-tpl.directive.mjs +17 -0
- package/esm2020/table/table-column-header-tpl.directive.mjs +17 -0
- package/esm2020/table/table-column.component.mjs +68 -0
- package/esm2020/table/table.module.mjs +25 -9
- package/esm2020/table-cell-type/services/table-cell-types-helpers.service.mjs +4 -4
- package/esm2020/table-cell-type/table-cell-type-selector.component.mjs +4 -4
- package/esm2020/table-cell-type/table-cell-type.module.mjs +5 -5
- package/esm2020/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-date/table-cell-type-date.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-string/table-cell-type-string.component.mjs +7 -5
- package/esm2020/table-cell-types/table-cell-types.module.mjs +5 -5
- package/esm2020/tel-input/phone-number.pipe.mjs +4 -4
- package/esm2020/tel-input/tel-input/tel-input.component.mjs +4 -4
- package/esm2020/tel-input/tel-input.directive.mjs +4 -4
- package/esm2020/tel-input/tel-input.module.mjs +5 -5
- package/esm2020/tiled-select/components/tiled-select/tiled-select.component.mjs +4 -4
- package/esm2020/tiled-select/components/tiled-select-tile/tiled-select-tile.component.mjs +4 -4
- package/esm2020/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.mjs +4 -4
- package/esm2020/tiled-select/directives/tiled-select-tile-icon-tpl.directive.mjs +4 -4
- package/esm2020/tiled-select/directives/tiled-select-tile-label-tpl.directive.mjs +4 -4
- package/esm2020/tiled-select/directives/tiled-select-tile-overlay.directive.mjs +4 -4
- package/esm2020/tiled-select/tiled-select.module.mjs +5 -5
- package/esm2020/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.mjs +4 -4
- package/esm2020/toggle-edit/toggle-edit-display-tpl.directive.mjs +4 -4
- package/esm2020/toggle-edit/toggle-edit-keyboard-listener.service.mjs +4 -4
- package/esm2020/toggle-edit/toggle-edit.component.mjs +4 -4
- package/esm2020/toggle-edit/toggle-edit.module.mjs +5 -5
- package/esm2020/toggle-group/toggle-group-option.directive.mjs +4 -4
- package/esm2020/toggle-group/toggle-group.directive.mjs +4 -4
- package/esm2020/toggle-group/toggle-group.module.mjs +5 -5
- package/esm2020/unsaved-changes-dialog/unsaved-changes-can-deactivate.mjs +4 -4
- package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +4 -4
- package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.guard.mjs +4 -4
- package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +5 -5
- package/esm2020/utils/geo-json/coerce-feature-collection.mjs +1 -1
- package/esm2020/utils/geo-json/is-feature-collection.validator.mjs +1 -1
- package/esm2020/utils/geo-json/is-only-geometry-types.mjs +1 -1
- package/esm2020/utils/geo-json/merge-polygons.mjs +1 -1
- package/esm2020/utils/geo-json/no-inner-rings.validator.mjs +1 -1
- package/esm2020/utils/geo-json/split-multi-polygons.mjs +1 -1
- package/esm2020/vertical-list-filter/vertical-list-filter.component.mjs +4 -4
- package/esm2020/viewers/html-template-viewer/html-template-viewer.component.mjs +4 -4
- package/esm2020/viewers/html-template-viewer/html-template-viewer.module.mjs +5 -5
- package/esm2020/viewers/pdf-viewer/pdf-page/pdf-page.component.mjs +4 -4
- package/esm2020/viewers/pdf-viewer/pdf-renderer.service.mjs +4 -4
- package/esm2020/viewers/pdf-viewer/pdf-viewer.component.mjs +4 -4
- package/esm2020/viewers/pdf-viewer/pdf-viewer.module.mjs +5 -5
- package/esm2020/widget/directives/widget-drag-handle.directive.mjs +4 -4
- package/esm2020/widget/directives/widget-icon-tpl.directive.mjs +4 -4
- package/esm2020/widget/directives/widget-title-tpl.directive.mjs +4 -4
- package/esm2020/widget/preferences/widget-preferences.service.mjs +4 -4
- package/esm2020/widget/widget/widget.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-description/widget-description.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-description/widget-description.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item-icon-tpl.directive.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.mjs +16 -16
- package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-table/widget-table.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-table/widget-table.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile-secondary-icon.directive.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile.component.mjs +7 -7
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile.module.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.component.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.module.mjs +5 -5
- package/esm2020/widget/widget-footer/widget-footer.component.mjs +4 -4
- package/esm2020/widget/widget-registry.service.mjs +4 -4
- package/esm2020/widget/widget.module.mjs +5 -5
- package/fesm2015/theseam-ui-common-asset-reader.mjs +10 -10
- package/fesm2015/theseam-ui-common-asset-reader.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-breadcrumbs.mjs +11 -11
- package/fesm2015/theseam-ui-common-breadcrumbs.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-buttons.mjs +25 -25
- package/fesm2015/theseam-ui-common-buttons.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-card.mjs +19 -19
- package/fesm2015/theseam-ui-common-card.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-carousel.mjs +10 -10
- package/fesm2015/theseam-ui-common-carousel.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-checkbox.mjs +7 -7
- package/fesm2015/theseam-ui-common-checkbox.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-confirm-dialog.mjs +13 -13
- package/fesm2015/theseam-ui-common-confirm-dialog.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-data-exporter.mjs +10 -10
- package/fesm2015/theseam-ui-common-data-exporter.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-data-filters.mjs +13 -13
- package/fesm2015/theseam-ui-common-data-filters.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-datatable-dynamic.mjs +26 -26
- package/fesm2015/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-datatable.mjs +1112 -139
- package/fesm2015/theseam-ui-common-datatable.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs +7 -7
- package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-dynamic.mjs +21 -21
- package/fesm2015/theseam-ui-common-dynamic.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-footer-bar.mjs +7 -7
- package/fesm2015/theseam-ui-common-footer-bar.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-form-field-error.mjs +16 -16
- package/fesm2015/theseam-ui-common-form-field-error.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-form-field.mjs +22 -22
- package/fesm2015/theseam-ui-common-form-field.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-framework.mjs +1026 -277
- package/fesm2015/theseam-ui-common-framework.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-google-maps.mjs +41 -41
- package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-graphql.mjs +257 -4
- package/fesm2015/theseam-ui-common-graphql.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-icon.mjs +13 -13
- package/fesm2015/theseam-ui-common-icon.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-layout.mjs +18 -9
- package/fesm2015/theseam-ui-common-layout.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-loading.mjs +10 -10
- package/fesm2015/theseam-ui-common-loading.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-menu.mjs +30 -25
- package/fesm2015/theseam-ui-common-menu.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-modal.mjs +43 -43
- package/fesm2015/theseam-ui-common-modal.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-navigation-reload.mjs +4 -4
- package/fesm2015/theseam-ui-common-navigation-reload.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-popover.mjs +19 -11
- package/fesm2015/theseam-ui-common-popover.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-progress.mjs +7 -7
- package/fesm2015/theseam-ui-common-progress.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-rich-text.mjs +7 -7
- package/fesm2015/theseam-ui-common-rich-text.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-scrollbar.mjs +10 -10
- package/fesm2015/theseam-ui-common-scrollbar.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-services.mjs +12 -12
- package/fesm2015/theseam-ui-common-services.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-shared.mjs +37 -37
- package/fesm2015/theseam-ui-common-shared.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-storage.mjs +3 -3
- package/fesm2015/theseam-ui-common-storage.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-story-helpers.mjs +26 -26
- package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-tabbed.mjs +22 -22
- package/fesm2015/theseam-ui-common-tabbed.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-table-cell-type.mjs +10 -10
- package/fesm2015/theseam-ui-common-table-cell-type.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-table-cell-types.mjs +34 -32
- package/fesm2015/theseam-ui-common-table-cell-types.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-table.mjs +207 -15
- package/fesm2015/theseam-ui-common-table.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-tel-input.mjs +13 -13
- package/fesm2015/theseam-ui-common-tel-input.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-tiled-select.mjs +22 -22
- package/fesm2015/theseam-ui-common-tiled-select.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-toggle-edit.mjs +16 -16
- package/fesm2015/theseam-ui-common-toggle-edit.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-toggle-group.mjs +10 -10
- package/fesm2015/theseam-ui-common-toggle-group.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs +13 -13
- package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-utils.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-vertical-list-filter.mjs +3 -3
- package/fesm2015/theseam-ui-common-vertical-list-filter.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-viewers.mjs +20 -20
- package/fesm2015/theseam-ui-common-viewers.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-widget.mjs +135 -135
- package/fesm2015/theseam-ui-common-widget.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-asset-reader.mjs +10 -10
- package/fesm2020/theseam-ui-common-asset-reader.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-breadcrumbs.mjs +11 -11
- package/fesm2020/theseam-ui-common-breadcrumbs.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-buttons.mjs +25 -25
- package/fesm2020/theseam-ui-common-buttons.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-card.mjs +19 -19
- package/fesm2020/theseam-ui-common-card.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-carousel.mjs +10 -10
- package/fesm2020/theseam-ui-common-carousel.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-checkbox.mjs +7 -7
- package/fesm2020/theseam-ui-common-checkbox.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-confirm-dialog.mjs +13 -13
- package/fesm2020/theseam-ui-common-confirm-dialog.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-data-exporter.mjs +10 -10
- package/fesm2020/theseam-ui-common-data-exporter.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-data-filters.mjs +13 -13
- package/fesm2020/theseam-ui-common-data-filters.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-datatable-dynamic.mjs +26 -26
- package/fesm2020/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-datatable.mjs +1096 -139
- package/fesm2020/theseam-ui-common-datatable.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs +7 -7
- package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-dynamic.mjs +21 -21
- package/fesm2020/theseam-ui-common-dynamic.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-footer-bar.mjs +7 -7
- package/fesm2020/theseam-ui-common-footer-bar.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-form-field-error.mjs +16 -16
- package/fesm2020/theseam-ui-common-form-field-error.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-form-field.mjs +22 -22
- package/fesm2020/theseam-ui-common-form-field.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-framework.mjs +1028 -277
- package/fesm2020/theseam-ui-common-framework.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-google-maps.mjs +41 -41
- package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-graphql.mjs +257 -4
- package/fesm2020/theseam-ui-common-graphql.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-icon.mjs +13 -13
- package/fesm2020/theseam-ui-common-icon.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-layout.mjs +18 -9
- package/fesm2020/theseam-ui-common-layout.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-loading.mjs +10 -10
- package/fesm2020/theseam-ui-common-loading.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-menu.mjs +30 -25
- package/fesm2020/theseam-ui-common-menu.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-modal.mjs +43 -43
- package/fesm2020/theseam-ui-common-modal.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-navigation-reload.mjs +4 -4
- package/fesm2020/theseam-ui-common-navigation-reload.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-popover.mjs +19 -11
- package/fesm2020/theseam-ui-common-popover.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-progress.mjs +7 -7
- package/fesm2020/theseam-ui-common-progress.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-rich-text.mjs +7 -7
- package/fesm2020/theseam-ui-common-rich-text.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-scrollbar.mjs +10 -10
- package/fesm2020/theseam-ui-common-scrollbar.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-services.mjs +12 -12
- package/fesm2020/theseam-ui-common-services.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-shared.mjs +37 -37
- package/fesm2020/theseam-ui-common-shared.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-storage.mjs +3 -3
- package/fesm2020/theseam-ui-common-storage.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-story-helpers.mjs +26 -26
- package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-tabbed.mjs +22 -22
- package/fesm2020/theseam-ui-common-tabbed.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-table-cell-type.mjs +10 -10
- package/fesm2020/theseam-ui-common-table-cell-type.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-table-cell-types.mjs +34 -32
- package/fesm2020/theseam-ui-common-table-cell-types.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-table.mjs +205 -15
- package/fesm2020/theseam-ui-common-table.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-tel-input.mjs +13 -13
- package/fesm2020/theseam-ui-common-tel-input.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-tiled-select.mjs +22 -22
- package/fesm2020/theseam-ui-common-tiled-select.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-toggle-edit.mjs +16 -16
- package/fesm2020/theseam-ui-common-toggle-edit.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-toggle-group.mjs +10 -10
- package/fesm2020/theseam-ui-common-toggle-group.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs +13 -13
- package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-utils.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-vertical-list-filter.mjs +3 -3
- package/fesm2020/theseam-ui-common-vertical-list-filter.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-viewers.mjs +20 -20
- package/fesm2020/theseam-ui-common-viewers.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-widget.mjs +135 -135
- package/fesm2020/theseam-ui-common-widget.mjs.map +1 -1
- package/framework/base-layout/base-layout.component.d.ts +4 -2
- package/framework/base-layout/base-layout.component.scss +18 -10
- package/framework/base-layout/base-layout.module.d.ts +11 -10
- package/framework/base-layout/directives/base-layout-nav-toggle.directive.d.ts +8 -3
- package/framework/base-layout/directives/base-layout-side-bar-header.directive.d.ts +9 -0
- package/framework/base-layout/index.d.ts +1 -0
- package/framework/base-layout/styles/_variables.scss +21 -0
- package/framework/nav/_nav-theme.scss +4 -0
- package/framework/nav/horizontal-nav/horizontal-nav.component.d.ts +25 -0
- package/framework/nav/horizontal-nav/horizontal-nav.component.scss +50 -0
- package/framework/nav/index.d.ts +5 -0
- package/framework/nav/nav-item/nav-item.component.d.ts +74 -0
- package/framework/nav/nav-item/nav-item.component.scss +203 -0
- package/framework/nav/nav-utils.d.ts +20 -0
- package/framework/nav/nav.models.d.ts +77 -0
- package/framework/nav/nav.module.d.ts +17 -0
- package/framework/nav/nav.service.d.ts +27 -0
- package/framework/nav/styles/_themes/light/_variables.scss +56 -0
- package/framework/nav/styles/_themes/primary/_variables.scss +56 -0
- package/framework/nav/styles/_utilities.scss +3 -0
- package/framework/nav/styles/_variables.scss +2 -0
- package/framework/public-api.d.ts +1 -0
- package/framework/side-nav/side-nav-item/side-nav-item.component.d.ts +7 -14
- package/framework/side-nav/side-nav-item/side-nav-item.component.scss +7 -5
- package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.d.ts +5 -3
- package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.scss +3 -6
- package/framework/side-nav/side-nav.component.d.ts +13 -1
- package/framework/side-nav/side-nav.component.scss +0 -1
- package/framework/side-nav/side-nav.models.d.ts +7 -1
- package/framework/side-nav/side-nav.module.d.ts +1 -9
- package/framework/side-nav/styles/_themes/light/_variables.scss +24 -14
- package/framework/side-nav/styles/_themes/primary/_variables.scss +8 -0
- package/framework/top-bar/index.d.ts +2 -0
- package/framework/top-bar/top-bar-compact-menu-btn-detail.directive.d.ts +8 -0
- package/framework/top-bar/top-bar-item.directive.d.ts +4 -1
- package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +5 -2
- package/framework/top-bar/top-bar-nav-toggle-btn-detail.directive.d.ts +8 -0
- package/framework/top-bar/top-bar.component.d.ts +25 -3
- package/framework/top-bar/top-bar.component.scss +7 -2
- package/framework/top-bar/top-bar.module.d.ts +10 -8
- package/graphql/datatable/datatable-graphql.service.d.ts +1 -1
- package/graphql/datatable/index.d.ts +3 -0
- package/graphql/datatable/map-filter-states.d.ts +2 -2
- package/graphql/datatable/map-search-date-columns-data-filter-state-to-gql.d.ts +4 -0
- package/graphql/datatable/map-search-numeric-columns-data-filter-state-to-gql.d.ts +4 -0
- package/graphql/datatable/map-search-text-columns-data-filter-state-to-gql.d.ts +4 -0
- package/layout/layout.service.d.ts +9 -1
- package/menu/menu-toggle.directive.d.ts +2 -1
- package/package.json +3 -3
- package/popover/popover/popover.component.d.ts +4 -1
- package/popover/popover.directive.d.ts +2 -1
- package/styles/vendor/ngx-datatable/_ngx-datatable.scss +83 -14
- package/styles/vendor/ngx-datatable/_themes/bootstrap/_variables.scss +38 -3
- package/table/public-api.d.ts +3 -0
- package/table/table/table.component.d.ts +21 -3
- package/table/table-cell-tpl.directive.d.ts +7 -0
- package/table/table-column-header-tpl.directive.d.ts +7 -0
- package/table/table-column.component.d.ts +24 -0
- package/table/table.module.d.ts +4 -1
|
@@ -108,8 +108,8 @@ class TheSeamPdfPageComponent {
|
|
|
108
108
|
}
|
|
109
109
|
}
|
|
110
110
|
}
|
|
111
|
-
TheSeamPdfPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
112
|
-
TheSeamPdfPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
111
|
+
TheSeamPdfPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamPdfPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
112
|
+
TheSeamPdfPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TheSeamPdfPageComponent, selector: "seam-pdf-page", inputs: { page: "page", shadow: "shadow", responsive: "responsive", renderUpdateThreshold: "renderUpdateThreshold" }, host: { properties: { "class.shadow": "this._shadow" } }, viewQueries: [{ propertyName: "pdfContainer", first: true, predicate: ["pdfContainer"], descendants: true, static: true }, { propertyName: "pdfCanvas", first: true, predicate: ["pdfCanvas"], descendants: true, static: true }], ngImport: i0, template: `
|
|
113
113
|
<div #pdfContainer
|
|
114
114
|
(seamElemResized)="onResized()">
|
|
115
115
|
<canvas #pdfCanvas></canvas>
|
|
@@ -121,7 +121,7 @@ __decorate([
|
|
|
121
121
|
__decorate([
|
|
122
122
|
InputBoolean()
|
|
123
123
|
], TheSeamPdfPageComponent.prototype, "responsive", void 0);
|
|
124
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
124
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamPdfPageComponent, decorators: [{
|
|
125
125
|
type: Component,
|
|
126
126
|
args: [{ selector: 'seam-pdf-page', template: `
|
|
127
127
|
<div #pdfContainer
|
|
@@ -162,9 +162,9 @@ class PdfRendererService {
|
|
|
162
162
|
return from(fetch(url)).pipe(switchMap(v => this._pdfjs$.pipe(switchMap(pdfjs => pdfjs.getDocument(v).promise))));
|
|
163
163
|
}
|
|
164
164
|
}
|
|
165
|
-
PdfRendererService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
166
|
-
PdfRendererService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.
|
|
167
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
165
|
+
PdfRendererService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PdfRendererService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
166
|
+
PdfRendererService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PdfRendererService, providedIn: 'root' });
|
|
167
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: PdfRendererService, decorators: [{
|
|
168
168
|
type: Injectable,
|
|
169
169
|
args: [{
|
|
170
170
|
providedIn: 'root'
|
|
@@ -278,8 +278,8 @@ class TheSeamPdfViewerComponent {
|
|
|
278
278
|
}))));
|
|
279
279
|
}
|
|
280
280
|
}
|
|
281
|
-
TheSeamPdfViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
282
|
-
TheSeamPdfViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
281
|
+
TheSeamPdfViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamPdfViewerComponent, deps: [{ token: PdfRendererService }], target: i0.ɵɵFactoryTarget.Component });
|
|
282
|
+
TheSeamPdfViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TheSeamPdfViewerComponent, selector: "seam-pdf-viewer", inputs: { pdfUrl: "pdfUrl", shadow: "shadow", responsive: "responsive", renderUpdateThreshold: "renderUpdateThreshold", pageRange: "pageRange", pageNumber: "pageNumber", pageNumbers: "pageNumbers" }, ngImport: i0, template: `
|
|
283
283
|
<ng-container *ngFor="let page of pages$ | async">
|
|
284
284
|
<seam-pdf-page
|
|
285
285
|
class="mb-2"
|
|
@@ -296,7 +296,7 @@ __decorate([
|
|
|
296
296
|
__decorate([
|
|
297
297
|
InputBoolean()
|
|
298
298
|
], TheSeamPdfViewerComponent.prototype, "responsive", void 0);
|
|
299
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
299
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamPdfViewerComponent, decorators: [{
|
|
300
300
|
type: Component,
|
|
301
301
|
args: [{ selector: 'seam-pdf-viewer', template: `
|
|
302
302
|
<ng-container *ngFor="let page of pages$ | async">
|
|
@@ -327,14 +327,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
327
327
|
|
|
328
328
|
class TheSeamPdfViewerModule {
|
|
329
329
|
}
|
|
330
|
-
TheSeamPdfViewerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
331
|
-
TheSeamPdfViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.
|
|
330
|
+
TheSeamPdfViewerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamPdfViewerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
331
|
+
TheSeamPdfViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: TheSeamPdfViewerModule, declarations: [TheSeamPdfViewerComponent,
|
|
332
332
|
TheSeamPdfPageComponent], imports: [CommonModule,
|
|
333
333
|
TheSeamSharedModule], exports: [TheSeamPdfViewerComponent,
|
|
334
334
|
TheSeamPdfPageComponent] });
|
|
335
|
-
TheSeamPdfViewerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.
|
|
335
|
+
TheSeamPdfViewerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamPdfViewerModule, imports: [CommonModule,
|
|
336
336
|
TheSeamSharedModule] });
|
|
337
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
337
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamPdfViewerModule, decorators: [{
|
|
338
338
|
type: NgModule,
|
|
339
339
|
args: [{
|
|
340
340
|
imports: [
|
|
@@ -543,12 +543,12 @@ class TheSeamHtmlTemplateViewerComponent {
|
|
|
543
543
|
return this._elementRef.nativeElement.querySelector('.os-scrollbar-handle.active') !== null;
|
|
544
544
|
}
|
|
545
545
|
}
|
|
546
|
-
TheSeamHtmlTemplateViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
547
|
-
TheSeamHtmlTemplateViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
546
|
+
TheSeamHtmlTemplateViewerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamHtmlTemplateViewerComponent, deps: [{ token: i0.NgZone }, { token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
547
|
+
TheSeamHtmlTemplateViewerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: TheSeamHtmlTemplateViewerComponent, selector: "seam-html-template-viewer", inputs: { src: "src", dataVersion: "dataVersion", data: "data", scrollable: "scrollable" }, viewQueries: [{ propertyName: "iframeElementRef", first: true, predicate: ["iframeElement"], descendants: true, static: true }], ngImport: i0, template: "<div (seamElemResized)=\"_onResized($any($event))\">\n <div class=\"embed-responsive embed-responsive-4by3\"\n [seamOverlayScrollbar]=\"_scrollbarOptions\"\n [overlayScrollbarEnabled]=\"_scrollable\">\n <iframe #iframeElement class=\"embed-responsive-item\" allowfullscreen></iframe>\n <div *ngIf=\"_mouseBlockActive\"\n class=\"iframe-mouse-block\"\n [style.width]=\"_mouseBlockWidth\"\n [style.height]=\"_mouseBlockHeight\">\n </div>\n </div>\n</div>\n", styles: [":host{display:block}.iframe-mouse-block{position:absolute;top:0;right:0;height:100%;width:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$1.OverlayScrollbarDirective, selector: "[seamOverlayScrollbar]", inputs: ["seamOverlayScrollbar", "overlayScrollbarEnabled"], exportAs: ["seamOverlayScrollbar"] }, { kind: "directive", type: i1.ElemResizedDirective, selector: "[seamElemResized]", outputs: ["seamElemResized"] }] });
|
|
548
548
|
__decorate([
|
|
549
549
|
InputBoolean()
|
|
550
550
|
], TheSeamHtmlTemplateViewerComponent.prototype, "scrollable", null);
|
|
551
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
551
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamHtmlTemplateViewerComponent, decorators: [{
|
|
552
552
|
type: Component,
|
|
553
553
|
args: [{ selector: 'seam-html-template-viewer', template: "<div (seamElemResized)=\"_onResized($any($event))\">\n <div class=\"embed-responsive embed-responsive-4by3\"\n [seamOverlayScrollbar]=\"_scrollbarOptions\"\n [overlayScrollbarEnabled]=\"_scrollable\">\n <iframe #iframeElement class=\"embed-responsive-item\" allowfullscreen></iframe>\n <div *ngIf=\"_mouseBlockActive\"\n class=\"iframe-mouse-block\"\n [style.width]=\"_mouseBlockWidth\"\n [style.height]=\"_mouseBlockHeight\">\n </div>\n </div>\n</div>\n", styles: [":host{display:block}.iframe-mouse-block{position:absolute;top:0;right:0;height:100%;width:100%}\n"] }]
|
|
554
554
|
}], ctorParameters: function () { return [{ type: i0.NgZone }, { type: i0.ChangeDetectorRef }, { type: i0.ElementRef }]; }, propDecorators: { src: [{
|
|
@@ -566,14 +566,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
|
|
|
566
566
|
|
|
567
567
|
class TheSeamHtmlTemplateViewerModule {
|
|
568
568
|
}
|
|
569
|
-
TheSeamHtmlTemplateViewerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
570
|
-
TheSeamHtmlTemplateViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.
|
|
569
|
+
TheSeamHtmlTemplateViewerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamHtmlTemplateViewerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
570
|
+
TheSeamHtmlTemplateViewerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.10", ngImport: i0, type: TheSeamHtmlTemplateViewerModule, declarations: [TheSeamHtmlTemplateViewerComponent], imports: [CommonModule,
|
|
571
571
|
TheSeamScrollbarModule,
|
|
572
572
|
TheSeamSharedModule], exports: [TheSeamHtmlTemplateViewerComponent] });
|
|
573
|
-
TheSeamHtmlTemplateViewerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.
|
|
573
|
+
TheSeamHtmlTemplateViewerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamHtmlTemplateViewerModule, imports: [CommonModule,
|
|
574
574
|
TheSeamScrollbarModule,
|
|
575
575
|
TheSeamSharedModule] });
|
|
576
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
576
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: TheSeamHtmlTemplateViewerModule, decorators: [{
|
|
577
577
|
type: NgModule,
|
|
578
578
|
args: [{
|
|
579
579
|
imports: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theseam-ui-common-viewers.mjs","sources":["../../../projects/ui-common/viewers/pdf-viewer/pdf-page/pdf-page.component.ts","../../../projects/ui-common/viewers/pdf-viewer/pdf-renderer.service.ts","../../../projects/ui-common/viewers/pdf-viewer/pdf-viewer.component.ts","../../../projects/ui-common/viewers/pdf-viewer/pdf-viewer.module.ts","../../../projects/ui-common/viewers/html-template-viewer/html-template-viewer.component.ts","../../../projects/ui-common/viewers/html-template-viewer/html-template-viewer.component.html","../../../projects/ui-common/viewers/html-template-viewer/html-template-viewer.module.ts","../../../projects/ui-common/viewers/theseam-ui-common-viewers.ts"],"sourcesContent":["import { BooleanInput } from '@angular/cdk/coercion'\nimport { AfterViewInit, Component, ElementRef, HostBinding, Input, OnDestroy, ViewChild } from '@angular/core'\nimport { from, Observable, Subject } from 'rxjs'\nimport { auditTime, switchMap, takeUntil } from 'rxjs/operators'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\nimport { waitOnConditionAsync } from '@theseam/ui-common/utils'\n\n@Component({\n selector: 'seam-pdf-page',\n template: `\n <div #pdfContainer\n (seamElemResized)=\"onResized()\">\n <canvas #pdfCanvas></canvas>\n </div>\n `,\n styles: [`\n :host { display: block; }\n canvas { display: block; }\n `]\n})\nexport class TheSeamPdfPageComponent implements OnDestroy, AfterViewInit {\n static ngAcceptInputType_shadow: BooleanInput\n static ngAcceptInputType_responsive: BooleanInput\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input()\n public get page() { return this._page }\n public set page(value) {\n this._page = value\n setTimeout(() => { this.render() })\n }\n private _page: any\n\n @Input() @InputBoolean() shadow = false\n\n @HostBinding('class.shadow') get _shadow() { return this.shadow }\n\n @ViewChild('pdfContainer', { static: true }) pdfContainer?: ElementRef<HTMLDivElement>\n @ViewChild('pdfCanvas', { static: true }) pdfCanvas?: ElementRef<HTMLCanvasElement>\n\n /**\n * Canvas will responsively scale and rerender if scaled more than\n * `renderUpdateThreshold` pixels.\n */\n @Input() @InputBoolean() responsive = false\n\n /**\n * The canvas will be rerendered if the canvas size changes by this many\n * pixels from the last render.\n *\n * To make the canvas responsive using only the initial size for its render\n * set the threshold to `-1`. You can still trigger a rerender by calling the\n * `render()` method.\n *\n * NOTE: Only used when `responsive` is `true`.\n */\n @Input() renderUpdateThreshold = 100\n\n public rendering = false\n\n private _renderRequestSubject = new Subject<void>()\n\n private _render$: Observable<void>\n\n constructor() {\n this._render$ = this._renderRequestSubject.pipe(\n takeUntil(this._ngUnsubscribe),\n auditTime(500),\n switchMap(_ => from(waitOnConditionAsync(() => this.rendering === false, 30 * 1000))),\n switchMap(_ => from(this._render()))\n )\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n ngAfterViewInit() {\n this._render$.subscribe()\n this.render()\n }\n\n public render() {\n this._renderRequestSubject.next()\n }\n\n private async _render() {\n if (!this.pdfContainer || !this.pdfCanvas) {\n return\n }\n\n try {\n const w = this.pdfContainer.nativeElement.clientWidth\n const desiredWidth = w\n const viewport = this.page.getViewport({ scale: 1 })\n const scale = desiredWidth / viewport.width\n const scaledViewport = this.page.getViewport({ scale })\n\n // Prepare canvas using PDF page dimensions\n const canvas: HTMLCanvasElement = this.pdfCanvas.nativeElement\n const context = canvas.getContext('2d')\n canvas.height = scaledViewport.height\n canvas.width = scaledViewport.width\n canvas.style.height = `${scaledViewport.height}px`\n canvas.style.width = `${scaledViewport.width}px`\n\n // Render PDF page into canvas context\n const renderContext = {\n canvasContext: context,\n viewport: scaledViewport\n }\n\n const renderTask = await this.page.render(renderContext).promise\n\n // TODO: Allow canceling instead of only waiting\n // await renderTask.cancel()\n this.rendering = false\n if (this.responsive) {\n canvas.style.width = '100%'\n canvas.style.height = '100%'\n }\n } catch (err) {\n // PDF loading error\n // eslint-disable-next-line no-console\n console.error(err)\n }\n }\n\n onResized() {\n if (!this.responsive || this.renderUpdateThreshold === -1) { return }\n\n if (!this.pdfContainer || !this.pdfCanvas) {\n return\n }\n\n const containerRect = this.pdfContainer.nativeElement.getBoundingClientRect()\n const pdfWidth = this.pdfCanvas.nativeElement.width\n const pdfHeight = this.pdfCanvas.nativeElement.height\n const wDiff = Math.abs(containerRect.width - pdfWidth)\n const hDiff = Math.abs(containerRect.height - pdfHeight)\n if (wDiff > this.renderUpdateThreshold || hDiff > this.renderUpdateThreshold) {\n this.render()\n }\n }\n\n}\n","import { Injectable } from '@angular/core'\nimport { from, Observable } from 'rxjs'\nimport { shareReplay, switchMap, tap } from 'rxjs/operators'\n\nimport { wrapIntoObservable } from '@theseam/ui-common/utils'\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PdfRendererService {\n\n private readonly _pdfjs$: Observable<any>\n\n constructor() {\n const pdfjsImport = wrapIntoObservable(import('pdfjs-dist/legacy/build/pdf'))\n this._pdfjs$ = pdfjsImport.pipe(\n tap((pdfJs: any) => {\n if (!pdfJs.GlobalWorkerOptions.workerSrc) {\n // tslint:disable-next-line:max-line-length\n pdfJs.GlobalWorkerOptions.workerSrc = `https://cdnjs.cloudflare.com/ajax/libs/pdf.js/${(pdfJs as any).version}/pdf.worker.min.js`\n }\n }),\n shareReplay({ bufferSize: 1, refCount: true })\n )\n }\n\n public getDocument(url: string): Observable<any> {\n return from(fetch(url)).pipe(\n switchMap(v => this._pdfjs$.pipe(\n switchMap(pdfjs => pdfjs.getDocument(v).promise)\n ))\n )\n }\n}\n","import { BooleanInput, coerceArray, coerceNumberProperty } from '@angular/cdk/coercion'\nimport { Component, Input } from '@angular/core'\nimport { BehaviorSubject, from, Observable, of, ReplaySubject } from 'rxjs'\nimport { map, shareReplay, switchMap, tap } from 'rxjs/operators'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\nimport { wrapIntoObservable } from '@theseam/ui-common/utils'\n\nimport { PdfRendererService } from './pdf-renderer.service'\n\n@Component({\n selector: 'seam-pdf-viewer',\n template: `\n <ng-container *ngFor=\"let page of pages$ | async\">\n <seam-pdf-page\n class=\"mb-2\"\n [page]=\"page | async\"\n [responsive]=\"responsive\"\n [shadow]=\"shadow\"\n [renderUpdateThreshold]=\"renderUpdateThreshold\">\n </seam-pdf-page>\n </ng-container>\n `,\n styles: [`:host { display: block; }`]\n})\nexport class TheSeamPdfViewerComponent {\n static ngAcceptInputType_shadow: BooleanInput\n static ngAcceptInputType_responsive: BooleanInput\n\n @Input()\n get pdfUrl(): string | undefined | null { return this._pdfUrl }\n set pdfUrl(value: string | undefined | null) {\n this._pdfUrl = value\n this._documentSubject.next(value)\n }\n private _pdfUrl: string | undefined | null\n\n @Input() @InputBoolean() shadow = false\n\n /**\n * Canvas will responsively scale and rerender if scaled more than\n * `renderUpdateThreshold` pixels.\n */\n @Input() @InputBoolean() responsive = false\n\n /**\n * The canvas will be rerendered if the canvas size changes by this many\n * pixels from the last render.\n *\n * To make the canvas responsive using only the initial size for its render\n * set the threshold to `-1`. You can still trigger a rerender by calling the\n * `render()` method.\n *\n * NOTE: Only used when `responsive` is `true`.\n */\n @Input()\n set renderUpdateThreshold(value: number) { this._renderUpdateThreshold = coerceNumberProperty(value) }\n get renderUpdateThreshold(): number { return this._renderUpdateThreshold }\n private _renderUpdateThreshold = 100\n\n /**\n * Range of pages to render.\n *\n * Example(page 1 to page 3):\n * [pageRange]=\"[1,3]\"\n */\n @Input()\n get pageRange(): number[] { return this._pageRange }\n set pageRange(value: number[]) {\n this._pageRange = value\n\n if (!this._pageRange) {\n this._pageNumbersSubject.next(undefined)\n }\n\n try {\n const range = coerceArray(this._pageRange)\n if (range.length !== 2) {\n throw new Error('[pdf-viewer] Invalid Page Range. Range array must have two numbers only.')\n }\n if (range[0] > range[1]) {\n throw new Error('[pdf-viewer] Invalid Page Range. Start of the range must be less than or equal to the end.')\n }\n\n const nums: number[] = []\n for (let i = range[0]; i <= range[1]; i++) {\n nums.push(i)\n }\n this._pageNumbersSubject.next(nums)\n } catch (err) {\n // TODO: Decide how to conveniently display these errors.\n // eslint-disable-next-line no-console\n console.error(err)\n this._pageNumbersSubject.next([])\n }\n }\n private _pageRange: number[] = []\n\n /**\n * Render a specific page.\n */\n @Input()\n get pageNumber(): number { return this._pageNumber }\n set pageNumber(value: number) {\n this._pageNumber = coerceNumberProperty(value, -1)\n this._pageNumbersSubject.next(this._pageNumber === -1 ? undefined : [ this._pageNumber ])\n }\n private _pageNumber = -1\n\n /**\n * Specific page numbers to render.\n */\n @Input()\n get pageNumbers(): number[] { return this._pageNumbers }\n set pageNumbers(value: number[]) {\n this._pageNumbers = value\n if (Array.isArray(this._pageNumbers)) {\n this._pageNumbersSubject.next(this._pageNumbers)\n } else {\n this._pageNumbersSubject.next(undefined)\n }\n }\n private _pageNumbers: number[] = []\n\n private _documentSubject = new ReplaySubject<any>(1)\n public document$: Observable<any>\n public pages$: Observable<any[]>\n\n /**\n * Undefined means all a pages\n */\n private _pageNumbersSubject = new BehaviorSubject<number[] | undefined>(undefined)\n\n constructor(\n private readonly _pdfRenderer: PdfRendererService\n ) {\n this.document$ = this._documentSubject.asObservable().pipe(\n switchMap(url => {\n if (!url) {\n return of()\n }\n return this._pdfRenderer.getDocument(url)\n })\n )\n\n const pageNumbers$ = this._pageNumbersSubject.asObservable()\n\n this.pages$ = this.document$.pipe(\n switchMap(doc => pageNumbers$.pipe(\n map(pageNumbers => {\n const pages: any[] = []\n for (let i = 0; i < doc.numPages; i++) {\n if (!pageNumbers || pageNumbers.indexOf(i + 1) !== -1) {\n pages.push(from(doc.getPage(i + 1)))\n }\n }\n return pages\n })\n ))\n )\n }\n\n}\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { TheSeamSharedModule } from '@theseam/ui-common/shared'\n\nimport { TheSeamPdfPageComponent } from './pdf-page/pdf-page.component'\nimport { TheSeamPdfViewerComponent } from './pdf-viewer.component'\n\n@NgModule({\n imports: [\n CommonModule,\n TheSeamSharedModule\n ],\n declarations: [\n TheSeamPdfViewerComponent,\n TheSeamPdfPageComponent\n ],\n exports: [\n TheSeamPdfViewerComponent,\n TheSeamPdfPageComponent\n ]\n})\nexport class TheSeamPdfViewerModule { }\n","import { BooleanInput } from '@angular/cdk/coercion'\nimport { ChangeDetectorRef, Component, ElementRef, Input, NgZone, OnDestroy, OnInit, ViewChild } from '@angular/core'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\n\ninterface TemplateResizeMessagePayload {\n width: number\n height: number\n}\n\nenum TemplateMessageType {\n TplData = 'theseam_tpl_data',\n TplResize = 'theseam_tpl_resize',\n}\n\ninterface TemplateMessage<TType, TPayload> {\n type: TType\n payload: TPayload\n}\n\n@Component({\n selector: 'seam-html-template-viewer',\n templateUrl: './html-template-viewer.component.html',\n styleUrls: ['./html-template-viewer.component.scss']\n})\nexport class TheSeamHtmlTemplateViewerComponent implements OnInit, OnDestroy {\n static ngAcceptInputType_scrollable: BooleanInput\n\n private readonly _templateMessageHandlers: { [key in TemplateMessageType]: (payload: any) => void }\n\n private _message: string | undefined | null\n private _dataVersion = 0\n private _scrollHandleObserver: MutationObserver | null = null\n\n @Input()\n get src(): string | null | undefined { return this._src }\n set src(val: string | null | undefined) {\n this._src = val\n this._updateSrc()\n }\n private _src: string | null | undefined\n\n @Input()\n set dataVersion(value: number | undefined | null) {\n const dv = value || 0\n const sendData = this._dataVersion !== dv\n this._dataVersion = dv\n if (sendData) {\n this.postMessage(this._message)\n }\n }\n\n @Input()\n set data(value: any) {\n this.postMessage((value !== null && value !== undefined) ? JSON.stringify(value) : value)\n }\n\n @Input() @InputBoolean()\n set scrollable(value: boolean) {\n this._scrollable = value\n if (this._scrollable) {\n this._initScrollHandleObserver()\n } else {\n this._destroyScrollHandleObserver()\n }\n }\n\n _scrollable = false\n\n @ViewChild('iframeElement', { static: true })\n set iframeElementRef(val: ElementRef<HTMLIFrameElement>) {\n this._iframeElementRef = val\n const iframeNativeElement = this._getIFrameNativeElement()\n if (iframeNativeElement) {\n this._updateSrc()\n iframeNativeElement.onload = () => this.postMessage(this._message)\n }\n }\n private _iframeElementRef!: ElementRef<HTMLIFrameElement>\n\n _scrollbarOptions = {\n callbacks: {\n onInitialized: () => this._initScrollHandleObserver(),\n // Only scrollbar handles from OverlayScrollbars are currently observed,\n // so we can just disable the observer for native scrollbars.\n onInitializationWithdrawn: () => this._destroyScrollHandleObserver(),\n onDestroyed: () => this._destroyScrollHandleObserver(),\n }\n }\n\n _mouseBlockActive = false\n _mouseBlockWidth = '100%'\n _mouseBlockHeight = '100%'\n\n constructor(\n private readonly _ngZone: NgZone,\n private readonly _cdr: ChangeDetectorRef,\n private readonly _elementRef: ElementRef\n ) {\n this._templateMessageHandlers = {\n [TemplateMessageType.TplData]: () => { }, // Not listening for message from template\n [TemplateMessageType.TplResize]: this._onResizeMessageFromTemplate\n }\n }\n\n ngOnInit(): void {\n this._ngZone.runOutsideAngular(() => window.addEventListener('message', this._onMessageFromTemplate))\n }\n\n ngOnDestroy(): void {\n window.removeEventListener('message', this._onMessageFromTemplate)\n this._destroyScrollHandleObserver()\n }\n\n private _onMessageFromTemplate = (e: any) => {\n const type = e.data.type as TemplateMessageType\n if (this._templateMessageHandlers[type]) {\n this._ngZone.run(() => this._templateMessageHandlers[type](e.data.payload))\n }\n }\n\n private _onResizeMessageFromTemplate = (payload: TemplateResizeMessagePayload): void => {\n const iframeNativeElement = this._getIFrameNativeElement()\n if (iframeNativeElement) {\n iframeNativeElement.style.height = `${payload.height}px`\n }\n }\n\n private _updateSrc(): void {\n const iframeNativeElement = this._getIFrameNativeElement()\n if (iframeNativeElement) {\n iframeNativeElement.src = this._src || ''\n }\n }\n\n public postMessage(msg: string | undefined | null): void {\n this._message = msg\n\n let _msg = msg\n const contentWindow = this._getIFrameContentWindow()\n if (contentWindow && _msg) {\n if (this._dataVersion === 2) {\n const wrapper: TemplateMessage<TemplateMessageType, any> = { type: TemplateMessageType.TplData, payload: undefined }\n try { wrapper.payload = JSON.parse(_msg) } catch { wrapper.payload = _msg }\n _msg = JSON.stringify(wrapper)\n }\n\n contentWindow.postMessage(_msg, '*')\n }\n }\n\n public reload(): void {\n this._updateSrc()\n }\n\n _onResized(event: { width: number, height: number }) {\n // This ensures the iframe scales itself if it isn't listening to or misses\n // the resize event.\n this.reload()\n }\n\n private _getIFrameNativeElement(): HTMLIFrameElement | null {\n return (this._iframeElementRef?.nativeElement) || null\n }\n\n private _getIFrameContentWindow(): Window | null {\n return (this._iframeElementRef?.nativeElement?.contentWindow) || null\n }\n\n /**\n * Initializes a MutationObserver to detect the 'active' class added to a\n * scroll handle, because OverlayScrollbars does not seem to provide an event\n * for scrollbar handle activation/deactivation.\n *\n * TODO: Do we need this to work for native scrollbars also?\n */\n private _initScrollHandleObserver(): void {\n if (this._scrollHandleObserver !== null) {\n return\n }\n\n this._ngZone.runOutsideAngular(() => {\n const observer = new MutationObserver(() => {\n this._ngZone.run(() => {\n if (this._isScrollbarHandleActive()) {\n this._enableMouseBlock()\n } else {\n this._disableMouseBlock()\n }\n })\n })\n\n observer.observe(this._elementRef.nativeElement, {\n attributes: true,\n attributeFilter: [ 'class' ],\n childList: true,\n subtree: true,\n characterData: false,\n })\n\n this._scrollHandleObserver = observer\n })\n }\n\n private _destroyScrollHandleObserver(): void {\n if (this._scrollHandleObserver === null) {\n return\n }\n\n this._scrollHandleObserver.disconnect()\n this._scrollHandleObserver = null\n }\n\n /**\n * Enables a transparent div to cover the iframe.\n *\n * When the mouse is over an iframe the browser stops letting the parent\n * document receive mouse events. Anything actively tracking mouse movement or\n * button pressed will think the mouse has left the page. So the scrollbar\n * handle would deactivate, when the mouse hovers the iframe. This adds an\n * element to cover the iframe, which prevents mouse events getting sent to\n * the iframe.\n */\n private _enableMouseBlock(): void {\n this._mouseBlockActive = true\n\n const iframeElement = this._getIFrameNativeElement()\n if (iframeElement) {\n const rect = iframeElement.getBoundingClientRect()\n this._mouseBlockWidth = `${rect.width}px`\n this._mouseBlockHeight = `${rect.height}px`\n } else {\n this._mouseBlockWidth = '100%'\n this._mouseBlockHeight = '100%'\n }\n\n this._cdr.detectChanges()\n }\n\n private _disableMouseBlock(): void {\n this._mouseBlockActive = false\n this._cdr.detectChanges()\n }\n\n private _isScrollbarHandleActive(): boolean {\n return this._elementRef.nativeElement.querySelector('.os-scrollbar-handle.active') !== null\n }\n\n}\n","<div (seamElemResized)=\"_onResized($any($event))\">\n <div class=\"embed-responsive embed-responsive-4by3\"\n [seamOverlayScrollbar]=\"_scrollbarOptions\"\n [overlayScrollbarEnabled]=\"_scrollable\">\n <iframe #iframeElement class=\"embed-responsive-item\" allowfullscreen></iframe>\n <div *ngIf=\"_mouseBlockActive\"\n class=\"iframe-mouse-block\"\n [style.width]=\"_mouseBlockWidth\"\n [style.height]=\"_mouseBlockHeight\">\n </div>\n </div>\n</div>\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { TheSeamScrollbarModule } from '@theseam/ui-common/scrollbar'\nimport { TheSeamSharedModule } from '@theseam/ui-common/shared'\n\nimport { TheSeamHtmlTemplateViewerComponent } from './html-template-viewer.component'\n\n@NgModule({\n imports: [\n CommonModule,\n TheSeamScrollbarModule,\n TheSeamSharedModule,\n ],\n declarations: [\n TheSeamHtmlTemplateViewerComponent,\n ],\n exports: [\n TheSeamHtmlTemplateViewerComponent,\n ]\n})\nexport class TheSeamHtmlTemplateViewerModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.PdfRendererService","i3.TheSeamPdfPageComponent","i1","i2","i3"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"theseam-ui-common-viewers.mjs","sources":["../../../projects/ui-common/viewers/pdf-viewer/pdf-page/pdf-page.component.ts","../../../projects/ui-common/viewers/pdf-viewer/pdf-renderer.service.ts","../../../projects/ui-common/viewers/pdf-viewer/pdf-viewer.component.ts","../../../projects/ui-common/viewers/pdf-viewer/pdf-viewer.module.ts","../../../projects/ui-common/viewers/html-template-viewer/html-template-viewer.component.ts","../../../projects/ui-common/viewers/html-template-viewer/html-template-viewer.component.html","../../../projects/ui-common/viewers/html-template-viewer/html-template-viewer.module.ts","../../../projects/ui-common/viewers/theseam-ui-common-viewers.ts"],"sourcesContent":["import { BooleanInput } from '@angular/cdk/coercion'\nimport { AfterViewInit, Component, ElementRef, HostBinding, Input, OnDestroy, ViewChild } from '@angular/core'\nimport { from, Observable, Subject } from 'rxjs'\nimport { auditTime, switchMap, takeUntil } from 'rxjs/operators'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\nimport { waitOnConditionAsync } from '@theseam/ui-common/utils'\n\n@Component({\n selector: 'seam-pdf-page',\n template: `\n <div #pdfContainer\n (seamElemResized)=\"onResized()\">\n <canvas #pdfCanvas></canvas>\n </div>\n `,\n styles: [`\n :host { display: block; }\n canvas { display: block; }\n `]\n})\nexport class TheSeamPdfPageComponent implements OnDestroy, AfterViewInit {\n static ngAcceptInputType_shadow: BooleanInput\n static ngAcceptInputType_responsive: BooleanInput\n\n private readonly _ngUnsubscribe = new Subject<void>()\n\n @Input()\n public get page() { return this._page }\n public set page(value) {\n this._page = value\n setTimeout(() => { this.render() })\n }\n private _page: any\n\n @Input() @InputBoolean() shadow = false\n\n @HostBinding('class.shadow') get _shadow() { return this.shadow }\n\n @ViewChild('pdfContainer', { static: true }) pdfContainer?: ElementRef<HTMLDivElement>\n @ViewChild('pdfCanvas', { static: true }) pdfCanvas?: ElementRef<HTMLCanvasElement>\n\n /**\n * Canvas will responsively scale and rerender if scaled more than\n * `renderUpdateThreshold` pixels.\n */\n @Input() @InputBoolean() responsive = false\n\n /**\n * The canvas will be rerendered if the canvas size changes by this many\n * pixels from the last render.\n *\n * To make the canvas responsive using only the initial size for its render\n * set the threshold to `-1`. You can still trigger a rerender by calling the\n * `render()` method.\n *\n * NOTE: Only used when `responsive` is `true`.\n */\n @Input() renderUpdateThreshold = 100\n\n public rendering = false\n\n private _renderRequestSubject = new Subject<void>()\n\n private _render$: Observable<void>\n\n constructor() {\n this._render$ = this._renderRequestSubject.pipe(\n takeUntil(this._ngUnsubscribe),\n auditTime(500),\n switchMap(_ => from(waitOnConditionAsync(() => this.rendering === false, 30 * 1000))),\n switchMap(_ => from(this._render()))\n )\n }\n\n ngOnDestroy() {\n this._ngUnsubscribe.next(undefined)\n this._ngUnsubscribe.complete()\n }\n\n ngAfterViewInit() {\n this._render$.subscribe()\n this.render()\n }\n\n public render() {\n this._renderRequestSubject.next()\n }\n\n private async _render() {\n if (!this.pdfContainer || !this.pdfCanvas) {\n return\n }\n\n try {\n const w = this.pdfContainer.nativeElement.clientWidth\n const desiredWidth = w\n const viewport = this.page.getViewport({ scale: 1 })\n const scale = desiredWidth / viewport.width\n const scaledViewport = this.page.getViewport({ scale })\n\n // Prepare canvas using PDF page dimensions\n const canvas: HTMLCanvasElement = this.pdfCanvas.nativeElement\n const context = canvas.getContext('2d')\n canvas.height = scaledViewport.height\n canvas.width = scaledViewport.width\n canvas.style.height = `${scaledViewport.height}px`\n canvas.style.width = `${scaledViewport.width}px`\n\n // Render PDF page into canvas context\n const renderContext = {\n canvasContext: context,\n viewport: scaledViewport\n }\n\n const renderTask = await this.page.render(renderContext).promise\n\n // TODO: Allow canceling instead of only waiting\n // await renderTask.cancel()\n this.rendering = false\n if (this.responsive) {\n canvas.style.width = '100%'\n canvas.style.height = '100%'\n }\n } catch (err) {\n // PDF loading error\n // eslint-disable-next-line no-console\n console.error(err)\n }\n }\n\n onResized() {\n if (!this.responsive || this.renderUpdateThreshold === -1) { return }\n\n if (!this.pdfContainer || !this.pdfCanvas) {\n return\n }\n\n const containerRect = this.pdfContainer.nativeElement.getBoundingClientRect()\n const pdfWidth = this.pdfCanvas.nativeElement.width\n const pdfHeight = this.pdfCanvas.nativeElement.height\n const wDiff = Math.abs(containerRect.width - pdfWidth)\n const hDiff = Math.abs(containerRect.height - pdfHeight)\n if (wDiff > this.renderUpdateThreshold || hDiff > this.renderUpdateThreshold) {\n this.render()\n }\n }\n\n}\n","import { Injectable } from '@angular/core'\nimport { from, Observable } from 'rxjs'\nimport { shareReplay, switchMap, tap } from 'rxjs/operators'\n\nimport { wrapIntoObservable } from '@theseam/ui-common/utils'\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PdfRendererService {\n\n private readonly _pdfjs$: Observable<any>\n\n constructor() {\n const pdfjsImport = wrapIntoObservable(import('pdfjs-dist/legacy/build/pdf'))\n this._pdfjs$ = pdfjsImport.pipe(\n tap((pdfJs: any) => {\n if (!pdfJs.GlobalWorkerOptions.workerSrc) {\n // tslint:disable-next-line:max-line-length\n pdfJs.GlobalWorkerOptions.workerSrc = `https://cdnjs.cloudflare.com/ajax/libs/pdf.js/${(pdfJs as any).version}/pdf.worker.min.js`\n }\n }),\n shareReplay({ bufferSize: 1, refCount: true })\n )\n }\n\n public getDocument(url: string): Observable<any> {\n return from(fetch(url)).pipe(\n switchMap(v => this._pdfjs$.pipe(\n switchMap(pdfjs => pdfjs.getDocument(v).promise)\n ))\n )\n }\n}\n","import { BooleanInput, coerceArray, coerceNumberProperty } from '@angular/cdk/coercion'\nimport { Component, Input } from '@angular/core'\nimport { BehaviorSubject, from, Observable, of, ReplaySubject } from 'rxjs'\nimport { map, shareReplay, switchMap, tap } from 'rxjs/operators'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\nimport { wrapIntoObservable } from '@theseam/ui-common/utils'\n\nimport { PdfRendererService } from './pdf-renderer.service'\n\n@Component({\n selector: 'seam-pdf-viewer',\n template: `\n <ng-container *ngFor=\"let page of pages$ | async\">\n <seam-pdf-page\n class=\"mb-2\"\n [page]=\"page | async\"\n [responsive]=\"responsive\"\n [shadow]=\"shadow\"\n [renderUpdateThreshold]=\"renderUpdateThreshold\">\n </seam-pdf-page>\n </ng-container>\n `,\n styles: [`:host { display: block; }`]\n})\nexport class TheSeamPdfViewerComponent {\n static ngAcceptInputType_shadow: BooleanInput\n static ngAcceptInputType_responsive: BooleanInput\n\n @Input()\n get pdfUrl(): string | undefined | null { return this._pdfUrl }\n set pdfUrl(value: string | undefined | null) {\n this._pdfUrl = value\n this._documentSubject.next(value)\n }\n private _pdfUrl: string | undefined | null\n\n @Input() @InputBoolean() shadow = false\n\n /**\n * Canvas will responsively scale and rerender if scaled more than\n * `renderUpdateThreshold` pixels.\n */\n @Input() @InputBoolean() responsive = false\n\n /**\n * The canvas will be rerendered if the canvas size changes by this many\n * pixels from the last render.\n *\n * To make the canvas responsive using only the initial size for its render\n * set the threshold to `-1`. You can still trigger a rerender by calling the\n * `render()` method.\n *\n * NOTE: Only used when `responsive` is `true`.\n */\n @Input()\n set renderUpdateThreshold(value: number) { this._renderUpdateThreshold = coerceNumberProperty(value) }\n get renderUpdateThreshold(): number { return this._renderUpdateThreshold }\n private _renderUpdateThreshold = 100\n\n /**\n * Range of pages to render.\n *\n * Example(page 1 to page 3):\n * [pageRange]=\"[1,3]\"\n */\n @Input()\n get pageRange(): number[] { return this._pageRange }\n set pageRange(value: number[]) {\n this._pageRange = value\n\n if (!this._pageRange) {\n this._pageNumbersSubject.next(undefined)\n }\n\n try {\n const range = coerceArray(this._pageRange)\n if (range.length !== 2) {\n throw new Error('[pdf-viewer] Invalid Page Range. Range array must have two numbers only.')\n }\n if (range[0] > range[1]) {\n throw new Error('[pdf-viewer] Invalid Page Range. Start of the range must be less than or equal to the end.')\n }\n\n const nums: number[] = []\n for (let i = range[0]; i <= range[1]; i++) {\n nums.push(i)\n }\n this._pageNumbersSubject.next(nums)\n } catch (err) {\n // TODO: Decide how to conveniently display these errors.\n // eslint-disable-next-line no-console\n console.error(err)\n this._pageNumbersSubject.next([])\n }\n }\n private _pageRange: number[] = []\n\n /**\n * Render a specific page.\n */\n @Input()\n get pageNumber(): number { return this._pageNumber }\n set pageNumber(value: number) {\n this._pageNumber = coerceNumberProperty(value, -1)\n this._pageNumbersSubject.next(this._pageNumber === -1 ? undefined : [ this._pageNumber ])\n }\n private _pageNumber = -1\n\n /**\n * Specific page numbers to render.\n */\n @Input()\n get pageNumbers(): number[] { return this._pageNumbers }\n set pageNumbers(value: number[]) {\n this._pageNumbers = value\n if (Array.isArray(this._pageNumbers)) {\n this._pageNumbersSubject.next(this._pageNumbers)\n } else {\n this._pageNumbersSubject.next(undefined)\n }\n }\n private _pageNumbers: number[] = []\n\n private _documentSubject = new ReplaySubject<any>(1)\n public document$: Observable<any>\n public pages$: Observable<any[]>\n\n /**\n * Undefined means all a pages\n */\n private _pageNumbersSubject = new BehaviorSubject<number[] | undefined>(undefined)\n\n constructor(\n private readonly _pdfRenderer: PdfRendererService\n ) {\n this.document$ = this._documentSubject.asObservable().pipe(\n switchMap(url => {\n if (!url) {\n return of()\n }\n return this._pdfRenderer.getDocument(url)\n })\n )\n\n const pageNumbers$ = this._pageNumbersSubject.asObservable()\n\n this.pages$ = this.document$.pipe(\n switchMap(doc => pageNumbers$.pipe(\n map(pageNumbers => {\n const pages: any[] = []\n for (let i = 0; i < doc.numPages; i++) {\n if (!pageNumbers || pageNumbers.indexOf(i + 1) !== -1) {\n pages.push(from(doc.getPage(i + 1)))\n }\n }\n return pages\n })\n ))\n )\n }\n\n}\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { TheSeamSharedModule } from '@theseam/ui-common/shared'\n\nimport { TheSeamPdfPageComponent } from './pdf-page/pdf-page.component'\nimport { TheSeamPdfViewerComponent } from './pdf-viewer.component'\n\n@NgModule({\n imports: [\n CommonModule,\n TheSeamSharedModule\n ],\n declarations: [\n TheSeamPdfViewerComponent,\n TheSeamPdfPageComponent\n ],\n exports: [\n TheSeamPdfViewerComponent,\n TheSeamPdfPageComponent\n ]\n})\nexport class TheSeamPdfViewerModule { }\n","import { BooleanInput } from '@angular/cdk/coercion'\nimport { ChangeDetectorRef, Component, ElementRef, Input, NgZone, OnDestroy, OnInit, ViewChild } from '@angular/core'\n\nimport { InputBoolean } from '@theseam/ui-common/core'\n\ninterface TemplateResizeMessagePayload {\n width: number\n height: number\n}\n\nenum TemplateMessageType {\n TplData = 'theseam_tpl_data',\n TplResize = 'theseam_tpl_resize',\n}\n\ninterface TemplateMessage<TType, TPayload> {\n type: TType\n payload: TPayload\n}\n\n@Component({\n selector: 'seam-html-template-viewer',\n templateUrl: './html-template-viewer.component.html',\n styleUrls: ['./html-template-viewer.component.scss']\n})\nexport class TheSeamHtmlTemplateViewerComponent implements OnInit, OnDestroy {\n static ngAcceptInputType_scrollable: BooleanInput\n\n private readonly _templateMessageHandlers: { [key in TemplateMessageType]: (payload: any) => void }\n\n private _message: string | undefined | null\n private _dataVersion = 0\n private _scrollHandleObserver: MutationObserver | null = null\n\n @Input()\n get src(): string | null | undefined { return this._src }\n set src(val: string | null | undefined) {\n this._src = val\n this._updateSrc()\n }\n private _src: string | null | undefined\n\n @Input()\n set dataVersion(value: number | undefined | null) {\n const dv = value || 0\n const sendData = this._dataVersion !== dv\n this._dataVersion = dv\n if (sendData) {\n this.postMessage(this._message)\n }\n }\n\n @Input()\n set data(value: any) {\n this.postMessage((value !== null && value !== undefined) ? JSON.stringify(value) : value)\n }\n\n @Input() @InputBoolean()\n set scrollable(value: boolean) {\n this._scrollable = value\n if (this._scrollable) {\n this._initScrollHandleObserver()\n } else {\n this._destroyScrollHandleObserver()\n }\n }\n\n _scrollable = false\n\n @ViewChild('iframeElement', { static: true })\n set iframeElementRef(val: ElementRef<HTMLIFrameElement>) {\n this._iframeElementRef = val\n const iframeNativeElement = this._getIFrameNativeElement()\n if (iframeNativeElement) {\n this._updateSrc()\n iframeNativeElement.onload = () => this.postMessage(this._message)\n }\n }\n private _iframeElementRef!: ElementRef<HTMLIFrameElement>\n\n _scrollbarOptions = {\n callbacks: {\n onInitialized: () => this._initScrollHandleObserver(),\n // Only scrollbar handles from OverlayScrollbars are currently observed,\n // so we can just disable the observer for native scrollbars.\n onInitializationWithdrawn: () => this._destroyScrollHandleObserver(),\n onDestroyed: () => this._destroyScrollHandleObserver(),\n }\n }\n\n _mouseBlockActive = false\n _mouseBlockWidth = '100%'\n _mouseBlockHeight = '100%'\n\n constructor(\n private readonly _ngZone: NgZone,\n private readonly _cdr: ChangeDetectorRef,\n private readonly _elementRef: ElementRef\n ) {\n this._templateMessageHandlers = {\n [TemplateMessageType.TplData]: () => { }, // Not listening for message from template\n [TemplateMessageType.TplResize]: this._onResizeMessageFromTemplate\n }\n }\n\n ngOnInit(): void {\n this._ngZone.runOutsideAngular(() => window.addEventListener('message', this._onMessageFromTemplate))\n }\n\n ngOnDestroy(): void {\n window.removeEventListener('message', this._onMessageFromTemplate)\n this._destroyScrollHandleObserver()\n }\n\n private _onMessageFromTemplate = (e: any) => {\n const type = e.data.type as TemplateMessageType\n if (this._templateMessageHandlers[type]) {\n this._ngZone.run(() => this._templateMessageHandlers[type](e.data.payload))\n }\n }\n\n private _onResizeMessageFromTemplate = (payload: TemplateResizeMessagePayload): void => {\n const iframeNativeElement = this._getIFrameNativeElement()\n if (iframeNativeElement) {\n iframeNativeElement.style.height = `${payload.height}px`\n }\n }\n\n private _updateSrc(): void {\n const iframeNativeElement = this._getIFrameNativeElement()\n if (iframeNativeElement) {\n iframeNativeElement.src = this._src || ''\n }\n }\n\n public postMessage(msg: string | undefined | null): void {\n this._message = msg\n\n let _msg = msg\n const contentWindow = this._getIFrameContentWindow()\n if (contentWindow && _msg) {\n if (this._dataVersion === 2) {\n const wrapper: TemplateMessage<TemplateMessageType, any> = { type: TemplateMessageType.TplData, payload: undefined }\n try { wrapper.payload = JSON.parse(_msg) } catch { wrapper.payload = _msg }\n _msg = JSON.stringify(wrapper)\n }\n\n contentWindow.postMessage(_msg, '*')\n }\n }\n\n public reload(): void {\n this._updateSrc()\n }\n\n _onResized(event: { width: number, height: number }) {\n // This ensures the iframe scales itself if it isn't listening to or misses\n // the resize event.\n this.reload()\n }\n\n private _getIFrameNativeElement(): HTMLIFrameElement | null {\n return (this._iframeElementRef?.nativeElement) || null\n }\n\n private _getIFrameContentWindow(): Window | null {\n return (this._iframeElementRef?.nativeElement?.contentWindow) || null\n }\n\n /**\n * Initializes a MutationObserver to detect the 'active' class added to a\n * scroll handle, because OverlayScrollbars does not seem to provide an event\n * for scrollbar handle activation/deactivation.\n *\n * TODO: Do we need this to work for native scrollbars also?\n */\n private _initScrollHandleObserver(): void {\n if (this._scrollHandleObserver !== null) {\n return\n }\n\n this._ngZone.runOutsideAngular(() => {\n const observer = new MutationObserver(() => {\n this._ngZone.run(() => {\n if (this._isScrollbarHandleActive()) {\n this._enableMouseBlock()\n } else {\n this._disableMouseBlock()\n }\n })\n })\n\n observer.observe(this._elementRef.nativeElement, {\n attributes: true,\n attributeFilter: [ 'class' ],\n childList: true,\n subtree: true,\n characterData: false,\n })\n\n this._scrollHandleObserver = observer\n })\n }\n\n private _destroyScrollHandleObserver(): void {\n if (this._scrollHandleObserver === null) {\n return\n }\n\n this._scrollHandleObserver.disconnect()\n this._scrollHandleObserver = null\n }\n\n /**\n * Enables a transparent div to cover the iframe.\n *\n * When the mouse is over an iframe the browser stops letting the parent\n * document receive mouse events. Anything actively tracking mouse movement or\n * button pressed will think the mouse has left the page. So the scrollbar\n * handle would deactivate, when the mouse hovers the iframe. This adds an\n * element to cover the iframe, which prevents mouse events getting sent to\n * the iframe.\n */\n private _enableMouseBlock(): void {\n this._mouseBlockActive = true\n\n const iframeElement = this._getIFrameNativeElement()\n if (iframeElement) {\n const rect = iframeElement.getBoundingClientRect()\n this._mouseBlockWidth = `${rect.width}px`\n this._mouseBlockHeight = `${rect.height}px`\n } else {\n this._mouseBlockWidth = '100%'\n this._mouseBlockHeight = '100%'\n }\n\n this._cdr.detectChanges()\n }\n\n private _disableMouseBlock(): void {\n this._mouseBlockActive = false\n this._cdr.detectChanges()\n }\n\n private _isScrollbarHandleActive(): boolean {\n return this._elementRef.nativeElement.querySelector('.os-scrollbar-handle.active') !== null\n }\n\n}\n","<div (seamElemResized)=\"_onResized($any($event))\">\n <div class=\"embed-responsive embed-responsive-4by3\"\n [seamOverlayScrollbar]=\"_scrollbarOptions\"\n [overlayScrollbarEnabled]=\"_scrollable\">\n <iframe #iframeElement class=\"embed-responsive-item\" allowfullscreen></iframe>\n <div *ngIf=\"_mouseBlockActive\"\n class=\"iframe-mouse-block\"\n [style.width]=\"_mouseBlockWidth\"\n [style.height]=\"_mouseBlockHeight\">\n </div>\n </div>\n</div>\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { TheSeamScrollbarModule } from '@theseam/ui-common/scrollbar'\nimport { TheSeamSharedModule } from '@theseam/ui-common/shared'\n\nimport { TheSeamHtmlTemplateViewerComponent } from './html-template-viewer.component'\n\n@NgModule({\n imports: [\n CommonModule,\n TheSeamScrollbarModule,\n TheSeamSharedModule,\n ],\n declarations: [\n TheSeamHtmlTemplateViewerComponent,\n ],\n exports: [\n TheSeamHtmlTemplateViewerComponent,\n ]\n})\nexport class TheSeamHtmlTemplateViewerModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.PdfRendererService","i3.TheSeamPdfPageComponent","i1","i2","i3"],"mappings":"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"}
|