@theseam/ui-common 0.2.9
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/asset-reader/asset-reader-helper.service.d.ts +7 -0
- package/asset-reader/asset-reader.module.d.ts +2 -0
- package/asset-reader/encrypted-asset-link.directive.d.ts +23 -0
- package/asset-reader/encrypted-asset-reader.d.ts +24 -0
- package/asset-reader/package.json +11 -0
- package/asset-reader/public-api.d.ts +4 -0
- package/asset-reader/theseam-ui-common-asset-reader.d.ts +4 -0
- package/asset-reader/theseam-ui-common-asset-reader.metadata.json +1 -0
- package/assets/.gitkeep +0 -0
- package/assets/vendor/intl-tel-input/css/intlTelInput.min.css +1 -0
- package/assets/vendor/intl-tel-input/img/flags.png +0 -0
- package/assets/vendor/intl-tel-input/img/flags@2x.png +0 -0
- package/assets/vendor/intl-tel-input/js/utils.js +501 -0
- package/breadcrumbs/breadcrumb.d.ts +11 -0
- package/breadcrumbs/breadcrumbs/breadcrumbs.component.d.ts +10 -0
- package/breadcrumbs/breadcrumbs-resolver.d.ts +5 -0
- package/breadcrumbs/breadcrumbs.module.d.ts +2 -0
- package/breadcrumbs/breadcrumbs.service.d.ts +20 -0
- package/breadcrumbs/package.json +11 -0
- package/breadcrumbs/public-api.d.ts +5 -0
- package/breadcrumbs/theseam-ui-common-breadcrumbs.d.ts +4 -0
- package/breadcrumbs/theseam-ui-common-breadcrumbs.metadata.json +1 -0
- package/bundles/theseam-ui-common-asset-reader.umd.js +533 -0
- package/bundles/theseam-ui-common-asset-reader.umd.js.map +1 -0
- package/bundles/theseam-ui-common-breadcrumbs.umd.js +587 -0
- package/bundles/theseam-ui-common-breadcrumbs.umd.js.map +1 -0
- package/bundles/theseam-ui-common-buttons.umd.js +719 -0
- package/bundles/theseam-ui-common-buttons.umd.js.map +1 -0
- package/bundles/theseam-ui-common-card.umd.js +480 -0
- package/bundles/theseam-ui-common-card.umd.js.map +1 -0
- package/bundles/theseam-ui-common-checkbox.umd.js +650 -0
- package/bundles/theseam-ui-common-checkbox.umd.js.map +1 -0
- package/bundles/theseam-ui-common-confirm-dialog.umd.js +491 -0
- package/bundles/theseam-ui-common-confirm-dialog.umd.js.map +1 -0
- package/bundles/theseam-ui-common-core.umd.js +604 -0
- package/bundles/theseam-ui-common-core.umd.js.map +1 -0
- package/bundles/theseam-ui-common-data-exporter.umd.js +96 -0
- package/bundles/theseam-ui-common-data-exporter.umd.js.map +1 -0
- package/bundles/theseam-ui-common-data-filters.umd.js +888 -0
- package/bundles/theseam-ui-common-data-filters.umd.js.map +1 -0
- package/bundles/theseam-ui-common-datatable-dynamic.umd.js +1499 -0
- package/bundles/theseam-ui-common-datatable-dynamic.umd.js.map +1 -0
- package/bundles/theseam-ui-common-datatable.umd.js +2247 -0
- package/bundles/theseam-ui-common-datatable.umd.js.map +1 -0
- package/bundles/theseam-ui-common-dynamic-component-loader.umd.js +180 -0
- package/bundles/theseam-ui-common-dynamic-component-loader.umd.js.map +1 -0
- package/bundles/theseam-ui-common-dynamic.umd.js +1253 -0
- package/bundles/theseam-ui-common-dynamic.umd.js.map +1 -0
- package/bundles/theseam-ui-common-footer-bar.umd.js +49 -0
- package/bundles/theseam-ui-common-footer-bar.umd.js.map +1 -0
- package/bundles/theseam-ui-common-form-field-error.umd.js +884 -0
- package/bundles/theseam-ui-common-form-field-error.umd.js.map +1 -0
- package/bundles/theseam-ui-common-form-field.umd.js +914 -0
- package/bundles/theseam-ui-common-form-field.umd.js.map +1 -0
- package/bundles/theseam-ui-common-framework.umd.js +3344 -0
- package/bundles/theseam-ui-common-framework.umd.js.map +1 -0
- package/bundles/theseam-ui-common-graphql.umd.js +357 -0
- package/bundles/theseam-ui-common-graphql.umd.js.map +1 -0
- package/bundles/theseam-ui-common-icon.umd.js +890 -0
- package/bundles/theseam-ui-common-icon.umd.js.map +1 -0
- package/bundles/theseam-ui-common-layout.umd.js +119 -0
- package/bundles/theseam-ui-common-layout.umd.js.map +1 -0
- package/bundles/theseam-ui-common-loading.umd.js +152 -0
- package/bundles/theseam-ui-common-loading.umd.js.map +1 -0
- package/bundles/theseam-ui-common-menu.umd.js +1152 -0
- package/bundles/theseam-ui-common-menu.umd.js.map +1 -0
- package/bundles/theseam-ui-common-modal.umd.js +1669 -0
- package/bundles/theseam-ui-common-modal.umd.js.map +1 -0
- package/bundles/theseam-ui-common-models.umd.js +63 -0
- package/bundles/theseam-ui-common-models.umd.js.map +1 -0
- package/bundles/theseam-ui-common-popover.umd.js +504 -0
- package/bundles/theseam-ui-common-popover.umd.js.map +1 -0
- package/bundles/theseam-ui-common-progress.umd.js +420 -0
- package/bundles/theseam-ui-common-progress.umd.js.map +1 -0
- package/bundles/theseam-ui-common-scrollbar.umd.js +240 -0
- package/bundles/theseam-ui-common-scrollbar.umd.js.map +1 -0
- package/bundles/theseam-ui-common-services.umd.js +178 -0
- package/bundles/theseam-ui-common-services.umd.js.map +1 -0
- package/bundles/theseam-ui-common-shared.umd.js +1115 -0
- package/bundles/theseam-ui-common-shared.umd.js.map +1 -0
- package/bundles/theseam-ui-common-storage.umd.js +178 -0
- package/bundles/theseam-ui-common-storage.umd.js.map +1 -0
- package/bundles/theseam-ui-common-story-helpers.umd.js +795 -0
- package/bundles/theseam-ui-common-story-helpers.umd.js.map +1 -0
- package/bundles/theseam-ui-common-tabbed.umd.js +628 -0
- package/bundles/theseam-ui-common-tabbed.umd.js.map +1 -0
- package/bundles/theseam-ui-common-table-cell-type.umd.js +222 -0
- package/bundles/theseam-ui-common-table-cell-type.umd.js.map +1 -0
- package/bundles/theseam-ui-common-table-cell-types.umd.js +1174 -0
- package/bundles/theseam-ui-common-table-cell-types.umd.js.map +1 -0
- package/bundles/theseam-ui-common-table.umd.js +475 -0
- package/bundles/theseam-ui-common-table.umd.js.map +1 -0
- package/bundles/theseam-ui-common-tel-input.umd.js +1055 -0
- package/bundles/theseam-ui-common-tel-input.umd.js.map +1 -0
- package/bundles/theseam-ui-common-test-helpers.umd.js +94 -0
- package/bundles/theseam-ui-common-test-helpers.umd.js.map +1 -0
- package/bundles/theseam-ui-common-tiled-select.umd.js +849 -0
- package/bundles/theseam-ui-common-tiled-select.umd.js.map +1 -0
- package/bundles/theseam-ui-common-toggle-edit.umd.js +893 -0
- package/bundles/theseam-ui-common-toggle-edit.umd.js.map +1 -0
- package/bundles/theseam-ui-common-toggle-group.umd.js +629 -0
- package/bundles/theseam-ui-common-toggle-group.umd.js.map +1 -0
- package/bundles/theseam-ui-common-unsaved-changes-dialog.umd.js +136 -0
- package/bundles/theseam-ui-common-unsaved-changes-dialog.umd.js.map +1 -0
- package/bundles/theseam-ui-common-utils.umd.js +1245 -0
- package/bundles/theseam-ui-common-utils.umd.js.map +1 -0
- package/bundles/theseam-ui-common-validators.umd.js +105 -0
- package/bundles/theseam-ui-common-validators.umd.js.map +1 -0
- package/bundles/theseam-ui-common-viewers.umd.js +699 -0
- package/bundles/theseam-ui-common-viewers.umd.js.map +1 -0
- package/bundles/theseam-ui-common-widget.umd.js +1710 -0
- package/bundles/theseam-ui-common-widget.umd.js.map +1 -0
- package/bundles/theseam-ui-common.umd.js +54 -0
- package/bundles/theseam-ui-common.umd.js.map +1 -0
- package/buttons/badge-button/badge-button.component.d.ts +18 -0
- package/buttons/button/button.component.d.ts +28 -0
- package/buttons/buttons.module.d.ts +2 -0
- package/buttons/package.json +11 -0
- package/buttons/progress-circle-button/progress-circle-button.component.d.ts +19 -0
- package/buttons/public-api.d.ts +5 -0
- package/buttons/theseam-ui-common-buttons.d.ts +4 -0
- package/buttons/theseam-ui-common-buttons.metadata.json +1 -0
- package/buttons/toggle-button/toggle-button.component.d.ts +26 -0
- package/card/card-action/card-action.component.d.ts +9 -0
- package/card/card-body/card-body.component.d.ts +12 -0
- package/card/card-footer/card-footer.component.d.ts +5 -0
- package/card/card-header/card-header.component.d.ts +7 -0
- package/card/card.component.d.ts +6 -0
- package/card/card.module.d.ts +2 -0
- package/card/package.json +11 -0
- package/card/public-api.d.ts +6 -0
- package/card/theseam-ui-common-card.d.ts +4 -0
- package/card/theseam-ui-common-card.metadata.json +1 -0
- package/checkbox/checkbox.component.d.ts +140 -0
- package/checkbox/checkbox.module.d.ts +2 -0
- package/checkbox/package.json +11 -0
- package/checkbox/public-api.d.ts +2 -0
- package/checkbox/theseam-ui-common-checkbox.d.ts +4 -0
- package/checkbox/theseam-ui-common-checkbox.metadata.json +1 -0
- package/confirm-dialog/confirm-click.directive.d.ts +24 -0
- package/confirm-dialog/confirm-dialog.component.d.ts +6 -0
- package/confirm-dialog/confirm-dialog.module.d.ts +2 -0
- package/confirm-dialog/confirm-dialog.service.d.ts +11 -0
- package/confirm-dialog/package.json +11 -0
- package/confirm-dialog/public-api.d.ts +4 -0
- package/confirm-dialog/theseam-ui-common-confirm-dialog.d.ts +4 -0
- package/confirm-dialog/theseam-ui-common-confirm-dialog.metadata.json +1 -0
- package/core/common-behaviors/active.d.ts +8 -0
- package/core/common-behaviors/constructor.d.ts +9 -0
- package/core/common-behaviors/disabled.d.ts +17 -0
- package/core/common-behaviors/element-ref.d.ts +4 -0
- package/core/common-behaviors/index.d.ts +9 -0
- package/core/common-behaviors/initialized.d.ts +30 -0
- package/core/common-behaviors/renderer2.d.ts +4 -0
- package/core/common-behaviors/size.d.ts +9 -0
- package/core/common-behaviors/tabindex.d.ts +18 -0
- package/core/common-behaviors/theme.d.ts +10 -0
- package/core/input-decorators/index.d.ts +2 -0
- package/core/input-decorators/input-boolean.decorator.d.ts +12 -0
- package/core/input-decorators/input-number.decorator.d.ts +12 -0
- package/core/package.json +11 -0
- package/core/public-api.d.ts +2 -0
- package/core/theseam-ui-common-core.d.ts +4 -0
- package/core/theseam-ui-common-core.metadata.json +1 -0
- package/data-exporter/data-exporter.d.ts +30 -0
- package/data-exporter/data-exporter.module.d.ts +2 -0
- package/data-exporter/exporters/csv-exporter.d.ts +8 -0
- package/data-exporter/exporters/xlsx-exporter.d.ts +8 -0
- package/data-exporter/package.json +11 -0
- package/data-exporter/public-api.d.ts +4 -0
- package/data-exporter/theseam-ui-common-data-exporter.d.ts +4 -0
- package/data-exporter/theseam-ui-common-data-exporter.metadata.json +1 -0
- package/data-filters/data-filter-container.d.ts +8 -0
- package/data-filters/data-filter-def.d.ts +10 -0
- package/data-filters/data-filter.d.ts +49 -0
- package/data-filters/data-filters.module.d.ts +2 -0
- package/data-filters/filters/data-filter-search/data-filter-search.component.d.ts +36 -0
- package/data-filters/filters/data-filter-search/search-filter-options.d.ts +2 -0
- package/data-filters/filters/data-filter-text/data-filter-text.component.d.ts +34 -0
- package/data-filters/filters/data-filter-text/text-filter-options.d.ts +25 -0
- package/data-filters/filters/data-filter-toggle-buttons/data-filter-toggle-buttons.component.d.ts +43 -0
- package/data-filters/package.json +11 -0
- package/data-filters/public-api.d.ts +9 -0
- package/data-filters/theseam-ui-common-data-filters.d.ts +4 -0
- package/data-filters/theseam-ui-common-data-filters.metadata.json +1 -0
- package/datatable/datatable/datatable.component.d.ts +195 -0
- package/datatable/datatable-action-menu/datatable-action-menu.component.d.ts +15 -0
- package/datatable/datatable-action-menu-item/datatable-action-menu-item.component.d.ts +28 -0
- package/datatable/datatable-column/datatable-column.component.d.ts +41 -0
- package/datatable/datatable-column-preferences/datatable-column-preferences.component.d.ts +14 -0
- package/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.d.ts +6 -0
- package/datatable/datatable-export-button/datatable-export-button.component.d.ts +24 -0
- package/datatable/datatable-menu-bar/datatable-menu-bar.component.d.ts +17 -0
- package/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.d.ts +5 -0
- package/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.d.ts +5 -0
- package/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.d.ts +5 -0
- package/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.d.ts +5 -0
- package/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.d.ts +10 -0
- package/datatable/datatable-row-detail/datatable-row-detail-tpl.directive.d.ts +5 -0
- package/datatable/datatable-row-detail/datatable-row-detail.directive.d.ts +37 -0
- package/datatable/datatable.module.d.ts +2 -0
- package/datatable/directives/datatable-action-menu-item.directive.d.ts +35 -0
- package/datatable/directives/datatable-action-menu-toggle.directive.d.ts +27 -0
- package/datatable/directives/datatable-cell-tpl.directive.d.ts +5 -0
- package/datatable/directives/datatable-filter.directive.d.ts +6 -0
- package/datatable/directives/datatable-row-action-item.directive.d.ts +5 -0
- package/datatable/models/datatable-accessor.d.ts +19 -0
- package/datatable/models/datatable-data-source.d.ts +14 -0
- package/datatable/models/datatable-gql-data-source.d.ts +7 -0
- package/datatable/models/menubar-item-data.d.ts +3 -0
- package/datatable/models/page-info.d.ts +6 -0
- package/datatable/models/preferences-accessor.d.ts +15 -0
- package/datatable/models/preferences.d.ts +9 -0
- package/datatable/models/sort-event.d.ts +4 -0
- package/datatable/models/sort-item.d.ts +4 -0
- package/datatable/models/table-column.d.ts +14 -0
- package/datatable/package.json +11 -0
- package/datatable/public-api.d.ts +38 -0
- package/datatable/services/datatable-column-changes.service.d.ts +6 -0
- package/datatable/services/datatable-preferences.service.d.ts +19 -0
- package/datatable/services/datatable-scrollbar-helper.service.d.ts +19 -0
- package/datatable/theseam-ui-common-datatable.d.ts +5 -0
- package/datatable/theseam-ui-common-datatable.metadata.json +1 -0
- package/datatable/tokens/datatable-accessor.d.ts +3 -0
- package/datatable/tokens/datatable-preferences-accessor.d.ts +3 -0
- package/datatable/tokens/menubar-item-data.d.ts +3 -0
- package/datatable/utils/with-stored-column-info.d.ts +3 -0
- package/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.d.ts +32 -0
- package/datatable-dynamic/datatable-dynamic-def.d.ts +71 -0
- package/datatable-dynamic/datatable-dynamic-filter-container/datatable-dynamic-filter-container.component.d.ts +15 -0
- package/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.d.ts +61 -0
- package/datatable-dynamic/datatable-dynamic-menu-bar-item-manifest.d.ts +16 -0
- package/datatable-dynamic/datatable-dynamic-menu-bar-token.d.ts +3 -0
- package/datatable-dynamic/datatable-dynamic.component.d.ts +89 -0
- package/datatable-dynamic/datatable-dynamic.module.d.ts +2 -0
- package/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.d.ts +73 -0
- package/datatable-dynamic/dynamic-datatable-def.service.d.ts +59 -0
- package/datatable-dynamic/dynamic-datatable-row-actions.service.d.ts +16 -0
- package/datatable-dynamic/models/dynamic-datatable-action-menu-record.d.ts +17 -0
- package/datatable-dynamic/models/dynamic-datatable-filter-menu-item.d.ts +7 -0
- package/datatable-dynamic/models/dynamic-datatable-menu-bar.d.ts +63 -0
- package/datatable-dynamic/models/dynamic-datatable-row-action-context.d.ts +5 -0
- package/datatable-dynamic/models/dynamic-datatable-row-action.d.ts +17 -0
- package/datatable-dynamic/models/index.d.ts +5 -0
- package/datatable-dynamic/package.json +11 -0
- package/datatable-dynamic/public-api.d.ts +13 -0
- package/datatable-dynamic/theseam-ui-common-datatable-dynamic.d.ts +4 -0
- package/datatable-dynamic/theseam-ui-common-datatable-dynamic.metadata.json +1 -0
- package/datatable-dynamic/utils/defaults/set-dynamic-datatable-columns-defaults.d.ts +2 -0
- package/datatable-dynamic/utils/defaults/set-dynamic-datatable-def-defaults.d.ts +2 -0
- package/datatable-dynamic/utils/defaults/set-dynamic-datatable-filter-menu-defaults.d.ts +2 -0
- package/datatable-dynamic/utils/defaults/set-dynamic-datatable-options-defaults.d.ts +2 -0
- package/datatable-dynamic/utils/index.d.ts +4 -0
- package/dynamic/action/api/dynamic-action-api-def.d.ts +35 -0
- package/dynamic/action/api/dynamic-action-api-errors.d.ts +1 -0
- package/dynamic/action/api/dynamic-action-api.d.ts +3 -0
- package/dynamic/action/api/dynamic-action-api.service.d.ts +30 -0
- package/dynamic/action/dynamic-action-helper.service.d.ts +36 -0
- package/dynamic/action/index.d.ts +10 -0
- package/dynamic/action/link/dynamic-action-link-def.d.ts +58 -0
- package/dynamic/action/link/dynamic-action-link.d.ts +3 -0
- package/dynamic/action/link/dynamic-action-link.service.d.ts +14 -0
- package/dynamic/action/modal/dynamic-action-modal-def.d.ts +10 -0
- package/dynamic/action/modal/dynamic-action-modal.d.ts +3 -0
- package/dynamic/action/modal/dynamic-action-modal.service.d.ts +29 -0
- package/dynamic/dynamic-value-helper.service.d.ts +34 -0
- package/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.d.ts +16 -0
- package/dynamic/evaluators/exporters-data-evaluator/exporters-data-value.d.ts +8 -0
- package/dynamic/evaluators/exporters-data-evaluator/index.d.ts +2 -0
- package/dynamic/evaluators/index.d.ts +2 -0
- package/dynamic/evaluators/jexl-evaluator/index.d.ts +2 -0
- package/dynamic/evaluators/jexl-evaluator/jexl-evaluator.d.ts +9 -0
- package/dynamic/evaluators/jexl-evaluator/jexl-value.d.ts +11 -0
- package/dynamic/models/dynamic-action-confirm-def.d.ts +10 -0
- package/dynamic/models/dynamic-action-context.d.ts +2 -0
- package/dynamic/models/dynamic-action-def.d.ts +9 -0
- package/dynamic/models/dynamic-action-ui-anchor-def.d.ts +39 -0
- package/dynamic/models/dynamic-action-ui-button-def.d.ts +13 -0
- package/dynamic/models/dynamic-action-ui-def.d.ts +37 -0
- package/dynamic/models/dynamic-action.d.ts +11 -0
- package/dynamic/models/dynamic-value-base-type.d.ts +4 -0
- package/dynamic/models/dynamic-value-evaluatable-type.d.ts +2 -0
- package/dynamic/models/dynamic-value-evaluator.d.ts +6 -0
- package/dynamic/models/dynamic-value-primitive.d.ts +1 -0
- package/dynamic/models/dynamic-value-type.d.ts +4 -0
- package/dynamic/models/dynamic-value.d.ts +3 -0
- package/dynamic/models/index.d.ts +13 -0
- package/dynamic/package.json +11 -0
- package/dynamic/public-api.d.ts +6 -0
- package/dynamic/theseam-ui-common-dynamic.d.ts +4 -0
- package/dynamic/theseam-ui-common-dynamic.metadata.json +1 -0
- package/dynamic/tokens/api-config.d.ts +30 -0
- package/dynamic/tokens/dynamic-action.d.ts +3 -0
- package/dynamic/tokens/dynamic-data.d.ts +2 -0
- package/dynamic/tokens/dynamic-value-evaluator.d.ts +3 -0
- package/dynamic/tokens/index.d.ts +4 -0
- package/dynamic/utils/index.d.ts +1 -0
- package/dynamic/utils/is-action-type.d.ts +2 -0
- package/dynamic-component-loader/dynamic-component-loader.module.d.ts +7 -0
- package/dynamic-component-loader/dynamic-component-loader.service.d.ts +15 -0
- package/dynamic-component-loader/dynamic-component-manifest.d.ts +9 -0
- package/dynamic-component-loader/dynamic-component-tokens.d.ts +4 -0
- package/dynamic-component-loader/package.json +11 -0
- package/dynamic-component-loader/public-api.d.ts +4 -0
- package/dynamic-component-loader/theseam-ui-common-dynamic-component-loader.d.ts +4 -0
- package/dynamic-component-loader/theseam-ui-common-dynamic-component-loader.metadata.json +1 -0
- package/esm2015/asset-reader/asset-reader-helper.service.js +68 -0
- package/esm2015/asset-reader/asset-reader.module.js +15 -0
- package/esm2015/asset-reader/encrypted-asset-link.directive.js +69 -0
- package/esm2015/asset-reader/encrypted-asset-reader.js +20 -0
- package/esm2015/asset-reader/public-api.js +5 -0
- package/esm2015/asset-reader/theseam-ui-common-asset-reader.js +5 -0
- package/esm2015/breadcrumbs/breadcrumb.js +2 -0
- package/esm2015/breadcrumbs/breadcrumbs/breadcrumbs.component.js +21 -0
- package/esm2015/breadcrumbs/breadcrumbs-resolver.js +2 -0
- package/esm2015/breadcrumbs/breadcrumbs.module.js +21 -0
- package/esm2015/breadcrumbs/breadcrumbs.service.js +158 -0
- package/esm2015/breadcrumbs/public-api.js +6 -0
- package/esm2015/breadcrumbs/theseam-ui-common-breadcrumbs.js +5 -0
- package/esm2015/buttons/badge-button/badge-button.component.js +79 -0
- package/esm2015/buttons/button/button.component.js +111 -0
- package/esm2015/buttons/buttons.module.js +34 -0
- package/esm2015/buttons/progress-circle-button/progress-circle-button.component.js +60 -0
- package/esm2015/buttons/public-api.js +6 -0
- package/esm2015/buttons/theseam-ui-common-buttons.js +5 -0
- package/esm2015/buttons/toggle-button/toggle-button.component.js +88 -0
- package/esm2015/card/card-action/card-action.component.js +27 -0
- package/esm2015/card/card-body/card-body.component.js +32 -0
- package/esm2015/card/card-footer/card-footer.component.js +15 -0
- package/esm2015/card/card-header/card-header.component.js +22 -0
- package/esm2015/card/card.component.js +20 -0
- package/esm2015/card/card.module.js +33 -0
- package/esm2015/card/public-api.js +7 -0
- package/esm2015/card/theseam-ui-common-card.js +5 -0
- package/esm2015/checkbox/checkbox.component.js +276 -0
- package/esm2015/checkbox/checkbox.module.js +21 -0
- package/esm2015/checkbox/public-api.js +3 -0
- package/esm2015/checkbox/theseam-ui-common-checkbox.js +5 -0
- package/esm2015/confirm-dialog/confirm-click.directive.js +62 -0
- package/esm2015/confirm-dialog/confirm-dialog.component.js +20 -0
- package/esm2015/confirm-dialog/confirm-dialog.module.js +35 -0
- package/esm2015/confirm-dialog/confirm-dialog.service.js +38 -0
- package/esm2015/confirm-dialog/public-api.js +5 -0
- package/esm2015/confirm-dialog/theseam-ui-common-confirm-dialog.js +5 -0
- package/esm2015/core/common-behaviors/active.js +13 -0
- package/esm2015/core/common-behaviors/constructor.js +9 -0
- package/esm2015/core/common-behaviors/disabled.js +20 -0
- package/esm2015/core/common-behaviors/element-ref.js +2 -0
- package/esm2015/core/common-behaviors/index.js +10 -0
- package/esm2015/core/common-behaviors/initialized.js +62 -0
- package/esm2015/core/common-behaviors/renderer2.js +2 -0
- package/esm2015/core/common-behaviors/size.js +24 -0
- package/esm2015/core/common-behaviors/tabindex.js +22 -0
- package/esm2015/core/common-behaviors/theme.js +24 -0
- package/esm2015/core/input-decorators/index.js +3 -0
- package/esm2015/core/input-decorators/input-boolean.decorator.js +27 -0
- package/esm2015/core/input-decorators/input-number.decorator.js +27 -0
- package/esm2015/core/public-api.js +3 -0
- package/esm2015/core/theseam-ui-common-core.js +5 -0
- package/esm2015/data-exporter/data-exporter.js +7 -0
- package/esm2015/data-exporter/data-exporter.module.js +17 -0
- package/esm2015/data-exporter/exporters/csv-exporter.js +32 -0
- package/esm2015/data-exporter/exporters/xlsx-exporter.js +30 -0
- package/esm2015/data-exporter/public-api.js +5 -0
- package/esm2015/data-exporter/theseam-ui-common-data-exporter.js +5 -0
- package/esm2015/data-filters/data-filter-container.js +3 -0
- package/esm2015/data-filters/data-filter-def.js +3 -0
- package/esm2015/data-filters/data-filter.js +22 -0
- package/esm2015/data-filters/data-filters.module.js +50 -0
- package/esm2015/data-filters/filters/data-filter-search/data-filter-search.component.js +110 -0
- package/esm2015/data-filters/filters/data-filter-search/search-filter-options.js +2 -0
- package/esm2015/data-filters/filters/data-filter-text/data-filter-text.component.js +138 -0
- package/esm2015/data-filters/filters/data-filter-text/text-filter-options.js +2 -0
- package/esm2015/data-filters/filters/data-filter-toggle-buttons/data-filter-toggle-buttons.component.js +151 -0
- package/esm2015/data-filters/public-api.js +10 -0
- package/esm2015/data-filters/theseam-ui-common-data-filters.js +5 -0
- package/esm2015/datatable/datatable/datatable.component.js +584 -0
- package/esm2015/datatable/datatable-action-menu/datatable-action-menu.component.js +101 -0
- package/esm2015/datatable/datatable-action-menu-item/datatable-action-menu-item.component.js +30 -0
- package/esm2015/datatable/datatable-column/datatable-column.component.js +83 -0
- package/esm2015/datatable/datatable-column-preferences/datatable-column-preferences.component.js +46 -0
- package/esm2015/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.js +18 -0
- package/esm2015/datatable/datatable-export-button/datatable-export-button.component.js +98 -0
- package/esm2015/datatable/datatable-menu-bar/datatable-menu-bar.component.js +55 -0
- package/esm2015/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.js +16 -0
- package/esm2015/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.js +16 -0
- package/esm2015/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.js +16 -0
- package/esm2015/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.js +16 -0
- package/esm2015/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.js +32 -0
- package/esm2015/datatable/datatable-row-detail/datatable-row-detail-tpl.directive.js +15 -0
- package/esm2015/datatable/datatable-row-detail/datatable-row-detail.directive.js +69 -0
- package/esm2015/datatable/datatable.module.js +120 -0
- package/esm2015/datatable/directives/datatable-action-menu-item.directive.js +46 -0
- package/esm2015/datatable/directives/datatable-action-menu-toggle.directive.js +128 -0
- package/esm2015/datatable/directives/datatable-cell-tpl.directive.js +15 -0
- package/esm2015/datatable/directives/datatable-filter.directive.js +21 -0
- package/esm2015/datatable/directives/datatable-row-action-item.directive.js +15 -0
- package/esm2015/datatable/models/datatable-accessor.js +2 -0
- package/esm2015/datatable/models/datatable-data-source.js +42 -0
- package/esm2015/datatable/models/datatable-gql-data-source.js +15 -0
- package/esm2015/datatable/models/menubar-item-data.js +2 -0
- package/esm2015/datatable/models/page-info.js +2 -0
- package/esm2015/datatable/models/preferences-accessor.js +2 -0
- package/esm2015/datatable/models/preferences.js +2 -0
- package/esm2015/datatable/models/sort-event.js +2 -0
- package/esm2015/datatable/models/sort-item.js +2 -0
- package/esm2015/datatable/models/table-column.js +2 -0
- package/esm2015/datatable/public-api.js +39 -0
- package/esm2015/datatable/services/datatable-column-changes.service.js +17 -0
- package/esm2015/datatable/services/datatable-preferences.service.js +113 -0
- package/esm2015/datatable/services/datatable-scrollbar-helper.service.js +51 -0
- package/esm2015/datatable/theseam-ui-common-datatable.js +6 -0
- package/esm2015/datatable/tokens/datatable-accessor.js +3 -0
- package/esm2015/datatable/tokens/datatable-preferences-accessor.js +3 -0
- package/esm2015/datatable/tokens/menubar-item-data.js +3 -0
- package/esm2015/datatable/utils/with-stored-column-info.js +20 -0
- package/esm2015/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.js +119 -0
- package/esm2015/datatable-dynamic/datatable-dynamic-def.js +2 -0
- package/esm2015/datatable-dynamic/datatable-dynamic-filter-container/datatable-dynamic-filter-container.component.js +53 -0
- package/esm2015/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.js +160 -0
- package/esm2015/datatable-dynamic/datatable-dynamic-menu-bar-item-manifest.js +2 -0
- package/esm2015/datatable-dynamic/datatable-dynamic-menu-bar-token.js +3 -0
- package/esm2015/datatable-dynamic/datatable-dynamic.component.js +75 -0
- package/esm2015/datatable-dynamic/datatable-dynamic.module.js +49 -0
- package/esm2015/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.js +408 -0
- package/esm2015/datatable-dynamic/dynamic-datatable-def.service.js +84 -0
- package/esm2015/datatable-dynamic/dynamic-datatable-row-actions.service.js +47 -0
- package/esm2015/datatable-dynamic/models/dynamic-datatable-action-menu-record.js +2 -0
- package/esm2015/datatable-dynamic/models/dynamic-datatable-filter-menu-item.js +2 -0
- package/esm2015/datatable-dynamic/models/dynamic-datatable-menu-bar.js +2 -0
- package/esm2015/datatable-dynamic/models/dynamic-datatable-row-action-context.js +2 -0
- package/esm2015/datatable-dynamic/models/dynamic-datatable-row-action.js +2 -0
- package/esm2015/datatable-dynamic/models/index.js +6 -0
- package/esm2015/datatable-dynamic/public-api.js +14 -0
- package/esm2015/datatable-dynamic/theseam-ui-common-datatable-dynamic.js +5 -0
- package/esm2015/datatable-dynamic/utils/defaults/set-dynamic-datatable-columns-defaults.js +8 -0
- package/esm2015/datatable-dynamic/utils/defaults/set-dynamic-datatable-def-defaults.js +13 -0
- package/esm2015/datatable-dynamic/utils/defaults/set-dynamic-datatable-filter-menu-defaults.js +6 -0
- package/esm2015/datatable-dynamic/utils/defaults/set-dynamic-datatable-options-defaults.js +6 -0
- package/esm2015/datatable-dynamic/utils/index.js +5 -0
- package/esm2015/dynamic/action/api/dynamic-action-api-def.js +2 -0
- package/esm2015/dynamic/action/api/dynamic-action-api-errors.js +4 -0
- package/esm2015/dynamic/action/api/dynamic-action-api.js +2 -0
- package/esm2015/dynamic/action/api/dynamic-action-api.service.js +215 -0
- package/esm2015/dynamic/action/dynamic-action-helper.service.js +163 -0
- package/esm2015/dynamic/action/index.js +11 -0
- package/esm2015/dynamic/action/link/dynamic-action-link-def.js +2 -0
- package/esm2015/dynamic/action/link/dynamic-action-link.js +2 -0
- package/esm2015/dynamic/action/link/dynamic-action-link.service.js +50 -0
- package/esm2015/dynamic/action/modal/dynamic-action-modal-def.js +2 -0
- package/esm2015/dynamic/action/modal/dynamic-action-modal.js +2 -0
- package/esm2015/dynamic/action/modal/dynamic-action-modal.service.js +92 -0
- package/esm2015/dynamic/dynamic-value-helper.service.js +101 -0
- package/esm2015/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.js +33 -0
- package/esm2015/dynamic/evaluators/exporters-data-evaluator/exporters-data-value.js +2 -0
- package/esm2015/dynamic/evaluators/exporters-data-evaluator/index.js +3 -0
- package/esm2015/dynamic/evaluators/index.js +3 -0
- package/esm2015/dynamic/evaluators/jexl-evaluator/index.js +3 -0
- package/esm2015/dynamic/evaluators/jexl-evaluator/jexl-evaluator.js +29 -0
- package/esm2015/dynamic/evaluators/jexl-evaluator/jexl-value.js +2 -0
- package/esm2015/dynamic/models/dynamic-action-confirm-def.js +2 -0
- package/esm2015/dynamic/models/dynamic-action-context.js +2 -0
- package/esm2015/dynamic/models/dynamic-action-def.js +3 -0
- package/esm2015/dynamic/models/dynamic-action-ui-anchor-def.js +2 -0
- package/esm2015/dynamic/models/dynamic-action-ui-button-def.js +2 -0
- package/esm2015/dynamic/models/dynamic-action-ui-def.js +2 -0
- package/esm2015/dynamic/models/dynamic-action.js +2 -0
- package/esm2015/dynamic/models/dynamic-value-base-type.js +2 -0
- package/esm2015/dynamic/models/dynamic-value-evaluatable-type.js +2 -0
- package/esm2015/dynamic/models/dynamic-value-evaluator.js +2 -0
- package/esm2015/dynamic/models/dynamic-value-primitive.js +2 -0
- package/esm2015/dynamic/models/dynamic-value-type.js +2 -0
- package/esm2015/dynamic/models/dynamic-value.js +2 -0
- package/esm2015/dynamic/models/index.js +14 -0
- package/esm2015/dynamic/public-api.js +7 -0
- package/esm2015/dynamic/theseam-ui-common-dynamic.js +5 -0
- package/esm2015/dynamic/tokens/api-config.js +29 -0
- package/esm2015/dynamic/tokens/dynamic-action.js +3 -0
- package/esm2015/dynamic/tokens/dynamic-data.js +3 -0
- package/esm2015/dynamic/tokens/dynamic-value-evaluator.js +3 -0
- package/esm2015/dynamic/tokens/index.js +5 -0
- package/esm2015/dynamic/utils/index.js +2 -0
- package/esm2015/dynamic/utils/is-action-type.js +4 -0
- package/esm2015/dynamic-component-loader/dynamic-component-loader.module.js +47 -0
- package/esm2015/dynamic-component-loader/dynamic-component-loader.service.js +91 -0
- package/esm2015/dynamic-component-loader/dynamic-component-manifest.js +2 -0
- package/esm2015/dynamic-component-loader/dynamic-component-tokens.js +5 -0
- package/esm2015/dynamic-component-loader/public-api.js +5 -0
- package/esm2015/dynamic-component-loader/theseam-ui-common-dynamic-component-loader.js +5 -0
- package/esm2015/footer-bar/footer-bar/footer-bar.component.js +16 -0
- package/esm2015/footer-bar/footer-bar.module.js +15 -0
- package/esm2015/footer-bar/public-api.js +3 -0
- package/esm2015/footer-bar/theseam-ui-common-footer-bar.js +5 -0
- package/esm2015/form-field/form-field-error.directive.js +28 -0
- package/esm2015/form-field/form-field-help-text.directive.js +15 -0
- package/esm2015/form-field/form-field-label-tpl.directive.js +15 -0
- package/esm2015/form-field/form-field-required-indicator.component.js +38 -0
- package/esm2015/form-field/form-field.component.js +193 -0
- package/esm2015/form-field/form-field.module.js +40 -0
- package/esm2015/form-field/input.directive.js +195 -0
- package/esm2015/form-field/public-api.js +8 -0
- package/esm2015/form-field/theseam-ui-common-form-field.js +5 -0
- package/esm2015/form-field-error/form-field-error/form-field-error.component.js +27 -0
- package/esm2015/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.js +25 -0
- package/esm2015/form-field-error/form-field-error-list/form-field-error-list-item.directive.js +18 -0
- package/esm2015/form-field-error/form-field-error-list/form-field-error-list.component.js +370 -0
- package/esm2015/form-field-error/form-field-error.module.js +28 -0
- package/esm2015/form-field-error/public-api.js +6 -0
- package/esm2015/form-field-error/theseam-ui-common-form-field-error.js +5 -0
- package/esm2015/framework/base-layout/base-layout-action.js +2 -0
- package/esm2015/framework/base-layout/base-layout-nav.js +2 -0
- package/esm2015/framework/base-layout/base-layout-ref.js +2 -0
- package/esm2015/framework/base-layout/base-layout-tokens.js +3 -0
- package/esm2015/framework/base-layout/base-layout.component.js +117 -0
- package/esm2015/framework/base-layout/base-layout.module.js +45 -0
- package/esm2015/framework/base-layout/directives/base-layout-content-footer.directive.js +15 -0
- package/esm2015/framework/base-layout/directives/base-layout-content-header.directive.js +15 -0
- package/esm2015/framework/base-layout/directives/base-layout-content.directive.js +15 -0
- package/esm2015/framework/base-layout/directives/base-layout-nav-toggle.directive.js +37 -0
- package/esm2015/framework/base-layout/directives/base-layout-side-bar.directive.js +15 -0
- package/esm2015/framework/base-layout/directives/base-layout-top-bar.directive.js +15 -0
- package/esm2015/framework/base-layout/index.js +13 -0
- package/esm2015/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.js +19 -0
- package/esm2015/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.js +25 -0
- package/esm2015/framework/dashboard/dashboard-widgets/dashboard-widget-portal-outlet.directive.js +121 -0
- package/esm2015/framework/dashboard/dashboard-widgets/dashboard-widgets-item.js +2 -0
- package/esm2015/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences-accessor-token.js +3 -0
- package/esm2015/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences-accessor.js +2 -0
- package/esm2015/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences.service.js +173 -0
- package/esm2015/framework/dashboard/dashboard-widgets/dashboard-widgets.component.js +176 -0
- package/esm2015/framework/dashboard/dashboard-widgets/dashboard-widgets.service.js +165 -0
- package/esm2015/framework/dashboard/dashboard.component.js +25 -0
- package/esm2015/framework/dashboard/dashboard.module.js +39 -0
- package/esm2015/framework/dashboard/index.js +12 -0
- package/esm2015/framework/dynamic-router/dynamic-route-def.js +2 -0
- package/esm2015/framework/dynamic-router/dynamic-router.module.js +21 -0
- package/esm2015/framework/dynamic-router/hierarchy-router-outlet/hierarchy-route-animations.js +256 -0
- package/esm2015/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.js +114 -0
- package/esm2015/framework/dynamic-router/index.js +6 -0
- package/esm2015/framework/dynamic-router/resolvers/hierarchy-level.resolver.js +26 -0
- package/esm2015/framework/public-api.js +7 -0
- package/esm2015/framework/schema-form/index.js +4 -0
- package/esm2015/framework/schema-form/schema-form-framework.component.js +16 -0
- package/esm2015/framework/schema-form/schema-form-framework.js +27 -0
- package/esm2015/framework/schema-form/schema-form.module.js +35 -0
- package/esm2015/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.js +41 -0
- package/esm2015/framework/schema-form-controls/schema-form-controls.module.js +50 -0
- package/esm2015/framework/schema-form-controls/schema-form-input/schema-form-input.component.js +34 -0
- package/esm2015/framework/schema-form-controls/schema-form-number/schema-form-number.component.js +40 -0
- package/esm2015/framework/schema-form-controls/schema-form-select/schema-form-select.component.js +36 -0
- package/esm2015/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.js +46 -0
- package/esm2015/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.js +142 -0
- package/esm2015/framework/side-nav/index.js +7 -0
- package/esm2015/framework/side-nav/side-nav-item/side-nav-item.component.js +151 -0
- package/esm2015/framework/side-nav/side-nav-toggle/side-nav-toggle.component.js +36 -0
- package/esm2015/framework/side-nav/side-nav-utils.js +81 -0
- package/esm2015/framework/side-nav/side-nav.component.js +195 -0
- package/esm2015/framework/side-nav/side-nav.models.js +2 -0
- package/esm2015/framework/side-nav/side-nav.module.js +37 -0
- package/esm2015/framework/side-nav/side-nav.service.js +174 -0
- package/esm2015/framework/theseam-ui-common-framework.js +13 -0
- package/esm2015/framework/top-bar/index.js +8 -0
- package/esm2015/framework/top-bar/top-bar-item.directive.js +15 -0
- package/esm2015/framework/top-bar/top-bar-menu-btn-detail.directive.js +15 -0
- package/esm2015/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.js +53 -0
- package/esm2015/framework/top-bar/top-bar-menu.directive.js +16 -0
- package/esm2015/framework/top-bar/top-bar-title/top-bar-title.component.js +19 -0
- package/esm2015/framework/top-bar/top-bar.component.js +82 -0
- package/esm2015/framework/top-bar/top-bar.module.js +46 -0
- package/esm2015/graphql/models/direction.js +8 -0
- package/esm2015/graphql/models/hint-definition.js +2 -0
- package/esm2015/graphql/models/hint-transform-operation.js +2 -0
- package/esm2015/graphql/models/hint-transformer.js +2 -0
- package/esm2015/graphql/models/hints-kind.js +9 -0
- package/esm2015/graphql/models/hints-token.js +2 -0
- package/esm2015/graphql/models/index.js +9 -0
- package/esm2015/graphql/models/query-processing-config.js +2 -0
- package/esm2015/graphql/models/variable.js +7 -0
- package/esm2015/graphql/public-api.js +2 -0
- package/esm2015/graphql/theseam-ui-common-graphql.js +5 -0
- package/esm2015/graphql/utils/contains-variable.js +14 -0
- package/esm2015/graphql/utils/gql-var.js +4 -0
- package/esm2015/graphql/utils/hints-tokens-containing-hint.js +4 -0
- package/esm2015/graphql/utils/index.js +11 -0
- package/esm2015/graphql/utils/inline-variables.js +50 -0
- package/esm2015/graphql/utils/parse-comments.js +24 -0
- package/esm2015/graphql/utils/parse-hints.js +116 -0
- package/esm2015/graphql/utils/remove-variable-definition.js +14 -0
- package/esm2015/graphql/utils/remove-variable-definitions-not-defined.js +19 -0
- package/esm2015/graphql/utils/remove-variable.js +22 -0
- package/esm2015/graphql/utils/to-gql.js +40 -0
- package/esm2015/icon/icon/icon.component.js +125 -0
- package/esm2015/icon/icon-btn/icon-btn.component.js +136 -0
- package/esm2015/icon/icon-notification/icon-notification.component.js +120 -0
- package/esm2015/icon/icon.js +2 -0
- package/esm2015/icon/icon.module.js +27 -0
- package/esm2015/icon/public-api.js +7 -0
- package/esm2015/icon/theseam-ui-common-icon.js +5 -0
- package/esm2015/icon/utils/file-extension-icon.js +33 -0
- package/esm2015/icon/utils/get-known-icon.js +82 -0
- package/esm2015/icon/utils/index.js +3 -0
- package/esm2015/layout/breakpoint-aliases.js +11 -0
- package/esm2015/layout/layout.module.js +18 -0
- package/esm2015/layout/layout.service.js +24 -0
- package/esm2015/layout/observe-media-query.js +41 -0
- package/esm2015/layout/public-api.js +5 -0
- package/esm2015/layout/theseam-ui-common-layout.js +5 -0
- package/esm2015/loading/loading/loading.component.js +28 -0
- package/esm2015/loading/loading-overlay.service.js +59 -0
- package/esm2015/loading/loading-themes.js +18 -0
- package/esm2015/loading/loading.models.js +2 -0
- package/esm2015/loading/loading.module.js +29 -0
- package/esm2015/loading/public-api.js +6 -0
- package/esm2015/loading/theseam-ui-common-loading.js +5 -0
- package/esm2015/menu/menu-animations.js +58 -0
- package/esm2015/menu/menu-divider.component.js +15 -0
- package/esm2015/menu/menu-footer/menu-footer.component.js +32 -0
- package/esm2015/menu/menu-footer-action/menu-footer-action.component.js +48 -0
- package/esm2015/menu/menu-header/menu-header.component.js +32 -0
- package/esm2015/menu/menu-item.component.js +127 -0
- package/esm2015/menu/menu-panel-token.js +6 -0
- package/esm2015/menu/menu-panel.js +2 -0
- package/esm2015/menu/menu-toggle.directive.js +248 -0
- package/esm2015/menu/menu.component.js +174 -0
- package/esm2015/menu/menu.module.js +43 -0
- package/esm2015/menu/public-api.js +12 -0
- package/esm2015/menu/theseam-ui-common-menu.js +5 -0
- package/esm2015/modal/directives/modal-close.directive.js +63 -0
- package/esm2015/modal/directives/modal-footer-tpl.directive.js +15 -0
- package/esm2015/modal/directives/modal-header-icon-tpl.directive.js +15 -0
- package/esm2015/modal/directives/modal-header-title-tpl.directive.js +15 -0
- package/esm2015/modal/directives/modal-title.directive.js +19 -0
- package/esm2015/modal/directives/modal.directive.js +25 -0
- package/esm2015/modal/modal/modal.component.js +149 -0
- package/esm2015/modal/modal-body/modal-body.component.js +22 -0
- package/esm2015/modal/modal-config.js +47 -0
- package/esm2015/modal/modal-container/modal-container.component.js +217 -0
- package/esm2015/modal/modal-footer/modal-footer.component.js +20 -0
- package/esm2015/modal/modal-header/modal-header.component.js +26 -0
- package/esm2015/modal/modal-injectors.js +23 -0
- package/esm2015/modal/modal-ref.js +126 -0
- package/esm2015/modal/modal-utils.js +14 -0
- package/esm2015/modal/modal.models.js +3 -0
- package/esm2015/modal/modal.module.js +83 -0
- package/esm2015/modal/modal.service.js +343 -0
- package/esm2015/modal/public-api.js +20 -0
- package/esm2015/modal/route-modal/route-modal.component.js +68 -0
- package/esm2015/modal/theseam-ui-common-modal.js +5 -0
- package/esm2015/models/component-type.js +4 -0
- package/esm2015/models/http-status-codes.js +20 -0
- package/esm2015/models/public-api.js +8 -0
- package/esm2015/models/size-prefixes.js +2 -0
- package/esm2015/models/size-types.js +2 -0
- package/esm2015/models/theme-names.js +26 -0
- package/esm2015/models/theme-prefixes.js +2 -0
- package/esm2015/models/theme-types.js +2 -0
- package/esm2015/models/theseam-ui-common-models.js +5 -0
- package/esm2015/popover/popover/popover.component.js +149 -0
- package/esm2015/popover/popover-animations.js +46 -0
- package/esm2015/popover/popover.directive.js +257 -0
- package/esm2015/popover/popover.module.js +30 -0
- package/esm2015/popover/public-api.js +5 -0
- package/esm2015/popover/theseam-ui-common-popover.js +5 -0
- package/esm2015/progress/progress-circle/progress-circle.component.js +63 -0
- package/esm2015/progress/progress.module.js +19 -0
- package/esm2015/progress/public-api.js +3 -0
- package/esm2015/progress/theseam-ui-common-progress.js +5 -0
- package/esm2015/public_api.js +43 -0
- package/esm2015/scrollbar/overlay-scrollbar.directive.js +61 -0
- package/esm2015/scrollbar/overlay-scrollbars-config-model.js +2 -0
- package/esm2015/scrollbar/overlay-scrollbars-config.js +13 -0
- package/esm2015/scrollbar/overlay-scrollbars.service.js +87 -0
- package/esm2015/scrollbar/public-api.js +6 -0
- package/esm2015/scrollbar/scrollbar.module.js +25 -0
- package/esm2015/scrollbar/theseam-ui-common-scrollbar.js +5 -0
- package/esm2015/services/asset-loader.service.js +33 -0
- package/esm2015/services/font-loader.service.js +81 -0
- package/esm2015/services/public-api.js +4 -0
- package/esm2015/services/router-helpers.service.js +26 -0
- package/esm2015/services/theseam-ui-common-services.js +5 -0
- package/esm2015/shared/components/index.js +2 -0
- package/esm2015/shared/components/password-input-reveal/password-input-reveal.component.js +71 -0
- package/esm2015/shared/directives/auto-focus.directive.js +53 -0
- package/esm2015/shared/directives/click-outside.directive.js +49 -0
- package/esm2015/shared/directives/disable-control.directive.js +27 -0
- package/esm2015/shared/directives/elem-resized.directive.js +29 -0
- package/esm2015/shared/directives/hover-class-toggle.directive.js +80 -0
- package/esm2015/shared/directives/hover-class.directive.js +74 -0
- package/esm2015/shared/directives/index.js +9 -0
- package/esm2015/shared/directives/ng-select-extra.directive.js +177 -0
- package/esm2015/shared/directives/ngx-quill-extra.directive.js +60 -0
- package/esm2015/shared/pipes/index.js +3 -0
- package/esm2015/shared/pipes/mask-chars.pipe.js +21 -0
- package/esm2015/shared/pipes/truncate.pipe.js +19 -0
- package/esm2015/shared/public-api.js +5 -0
- package/esm2015/shared/shared.module.js +58 -0
- package/esm2015/shared/theseam-ui-common-shared.js +5 -0
- package/esm2015/storage/local-storage.service.js +77 -0
- package/esm2015/storage/localstorage-memory.js +64 -0
- package/esm2015/storage/public-api.js +2 -0
- package/esm2015/storage/theseam-ui-common-storage.js +5 -0
- package/esm2015/story-helpers/arg-type-helpers.js +34 -0
- package/esm2015/story-helpers/args-to-tpl.js +76 -0
- package/esm2015/story-helpers/initial-route-factory.js +4 -0
- package/esm2015/story-helpers/initial-route.service.js +27 -0
- package/esm2015/story-helpers/on-story-bootstrapped-exec.js +64 -0
- package/esm2015/story-helpers/on-story-bootstrapped-trigger.js +38 -0
- package/esm2015/story-helpers/public-api.js +15 -0
- package/esm2015/story-helpers/route-button.js +12 -0
- package/esm2015/story-helpers/routes-arg-type.js +18 -0
- package/esm2015/story-helpers/story-empty-with-route.component.js +7 -0
- package/esm2015/story-helpers/story-empty.component.js +7 -0
- package/esm2015/story-helpers/story-helper-components.module.js +29 -0
- package/esm2015/story-helpers/story-initial-route.js +24 -0
- package/esm2015/story-helpers/story-modal-container.component.js +77 -0
- package/esm2015/story-helpers/story-toastr.service.js +33 -0
- package/esm2015/story-helpers/theseam-ui-common-story-helpers.js +5 -0
- package/esm2015/tabbed/directives/tabbed-tab-content.directive.js +14 -0
- package/esm2015/tabbed/directives/tabbed-tab.directive.js +36 -0
- package/esm2015/tabbed/public-api.js +8 -0
- package/esm2015/tabbed/tabbed-content/tabbed-content.component.js +17 -0
- package/esm2015/tabbed/tabbed-item/tabbed-item.component.js +30 -0
- package/esm2015/tabbed/tabbed.component.js +111 -0
- package/esm2015/tabbed/tabbed.module.js +36 -0
- package/esm2015/tabbed/tabbed.service.js +28 -0
- package/esm2015/tabbed/theseam-ui-common-tabbed.js +5 -0
- package/esm2015/table/public-api.js +3 -0
- package/esm2015/table/table/table.component.js +90 -0
- package/esm2015/table/table.module.js +23 -0
- package/esm2015/table/theseam-ui-common-table.js +5 -0
- package/esm2015/table-cell-type/public-api.js +12 -0
- package/esm2015/table-cell-type/services/table-cell-types-helpers.service.js +70 -0
- package/esm2015/table-cell-type/table-cell-type-action.js +2 -0
- package/esm2015/table-cell-type/table-cell-type-column.js +2 -0
- package/esm2015/table-cell-type/table-cell-type-config.js +2 -0
- package/esm2015/table-cell-type/table-cell-type-export-props.js +2 -0
- package/esm2015/table-cell-type/table-cell-type-manifest-provider.js +2 -0
- package/esm2015/table-cell-type/table-cell-type-models.js +2 -0
- package/esm2015/table-cell-type/table-cell-type-name.js +2 -0
- package/esm2015/table-cell-type/table-cell-type-selector.component.js +94 -0
- package/esm2015/table-cell-type/table-cell-type-tokens.js +4 -0
- package/esm2015/table-cell-type/table-cell-type.module.js +23 -0
- package/esm2015/table-cell-type/theseam-ui-common-table-cell-type.js +5 -0
- package/esm2015/table-cell-types/public-api.js +16 -0
- package/esm2015/table-cell-types/table-cell-type-date/table-cell-type-date-config.js +2 -0
- package/esm2015/table-cell-types/table-cell-type-date/table-cell-type-date.component.js +55 -0
- package/esm2015/table-cell-types/table-cell-type-date/table-cell-type-date.js +2 -0
- package/esm2015/table-cell-types/table-cell-type-decimal/table-cell-type-decimal-config.js +2 -0
- package/esm2015/table-cell-types/table-cell-type-icon/table-cell-type-icon-config.js +2 -0
- package/esm2015/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.js +166 -0
- package/esm2015/table-cell-types/table-cell-type-integer/table-cell-type-integer-config.js +2 -0
- package/esm2015/table-cell-types/table-cell-type-manifests.js +91 -0
- package/esm2015/table-cell-types/table-cell-type-phone/table-cell-type-phone-config.js +2 -0
- package/esm2015/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.js +66 -0
- package/esm2015/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle-config.js +2 -0
- package/esm2015/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.js +160 -0
- package/esm2015/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon-config.js +2 -0
- package/esm2015/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.js +78 -0
- package/esm2015/table-cell-types/table-cell-type-string/table-cell-type-string-config.js +2 -0
- package/esm2015/table-cell-types/table-cell-type-string/table-cell-type-string.component.js +150 -0
- package/esm2015/table-cell-types/table-cell-types.module.js +71 -0
- package/esm2015/table-cell-types/theseam-ui-common-table-cell-types.js +5 -0
- package/esm2015/tel-input/intl-tel-input.js +55 -0
- package/esm2015/tel-input/models/index.js +3 -0
- package/esm2015/tel-input/models/tel-input-country-data.js +2 -0
- package/esm2015/tel-input/models/tel-input-number-format-name.js +8 -0
- package/esm2015/tel-input/phone-number.pipe.js +51 -0
- package/esm2015/tel-input/public-api.js +10 -0
- package/esm2015/tel-input/tel-input/tel-input.component.js +167 -0
- package/esm2015/tel-input/tel-input-constants.js +18 -0
- package/esm2015/tel-input/tel-input-validator.js +27 -0
- package/esm2015/tel-input/tel-input.directive.js +164 -0
- package/esm2015/tel-input/tel-input.module.js +29 -0
- package/esm2015/tel-input/theseam-ui-common-tel-input.js +5 -0
- package/esm2015/tel-input/utils/add-country-code.js +23 -0
- package/esm2015/tel-input/utils/coerce-phone-number-format.js +22 -0
- package/esm2015/tel-input/utils/get-country-code.js +9 -0
- package/esm2015/tel-input/utils/get-dial-code.js +45 -0
- package/esm2015/tel-input/utils/get-global-intl-tel-input-globals.js +4 -0
- package/esm2015/tel-input/utils/get-global-intl-tel-input-utils.js +4 -0
- package/esm2015/tel-input/utils/get-intl-tel-input-utils.js +17 -0
- package/esm2015/tel-input/utils/get-validation-error-message.js +12 -0
- package/esm2015/tel-input/utils/index.js +10 -0
- package/esm2015/tel-input/utils/process-country-codes.js +49 -0
- package/esm2015/test-helpers/public-api.js +2 -0
- package/esm2015/test-helpers/theseam-ui-common-test-helpers.js +5 -0
- package/esm2015/test-helpers/tick-helper.js +74 -0
- package/esm2015/theseam-ui-common.js +5 -0
- package/esm2015/tiled-select/components/tiled-select/tiled-select.component.js +197 -0
- package/esm2015/tiled-select/components/tiled-select-tile/tiled-select-tile.component.js +125 -0
- package/esm2015/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.js +54 -0
- package/esm2015/tiled-select/directives/tiled-select-tile-icon-tpl.directive.js +16 -0
- package/esm2015/tiled-select/directives/tiled-select-tile-label-tpl.directive.js +15 -0
- package/esm2015/tiled-select/directives/tiled-select-tile-overlay.directive.js +19 -0
- package/esm2015/tiled-select/public-api.js +9 -0
- package/esm2015/tiled-select/theseam-ui-common-tiled-select.js +5 -0
- package/esm2015/tiled-select/tiled-select.models.js +2 -0
- package/esm2015/tiled-select/tiled-select.module.js +35 -0
- package/esm2015/toggle-edit/models/can-toggle-edit.js +2 -0
- package/esm2015/toggle-edit/models/index.js +3 -0
- package/esm2015/toggle-edit/models/toggle-edit-ref.js +2 -0
- package/esm2015/toggle-edit/public-api.js +7 -0
- package/esm2015/toggle-edit/theseam-ui-common-toggle-edit.js +5 -0
- package/esm2015/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.js +15 -0
- package/esm2015/toggle-edit/toggle-edit-display-tpl.directive.js +15 -0
- package/esm2015/toggle-edit/toggle-edit-keyboard-listener.service.js +56 -0
- package/esm2015/toggle-edit/toggle-edit.component.js +403 -0
- package/esm2015/toggle-edit/toggle-edit.module.js +40 -0
- package/esm2015/toggle-group/public-api.js +4 -0
- package/esm2015/toggle-group/theseam-ui-common-toggle-group.js +5 -0
- package/esm2015/toggle-group/toggle-group-option.directive.js +44 -0
- package/esm2015/toggle-group/toggle-group.directive.js +192 -0
- package/esm2015/toggle-group/toggle-group.module.js +24 -0
- package/esm2015/unsaved-changes-dialog/public-api.js +5 -0
- package/esm2015/unsaved-changes-dialog/theseam-ui-common-unsaved-changes-dialog.js +5 -0
- package/esm2015/unsaved-changes-dialog/unsaved-changes-can-deactivate.js +27 -0
- package/esm2015/unsaved-changes-dialog/unsaved-changes-dialog.component.js +20 -0
- package/esm2015/unsaved-changes-dialog/unsaved-changes-dialog.guard.js +35 -0
- package/esm2015/unsaved-changes-dialog/unsaved-changes-dialog.module.js +12 -0
- package/esm2015/utils/calc-percentage.js +4 -0
- package/esm2015/utils/cdk/get-closest-widget-cdk-drag.js +18 -0
- package/esm2015/utils/create-padding.js +17 -0
- package/esm2015/utils/file-utils.js +68 -0
- package/esm2015/utils/form/get-control-name.js +31 -0
- package/esm2015/utils/form/get-control-path.js +37 -0
- package/esm2015/utils/form/has-required-control.js +50 -0
- package/esm2015/utils/form/is-empty-input-value.js +6 -0
- package/esm2015/utils/form/observe-control-is-different.js +18 -0
- package/esm2015/utils/form/observe-control-status.js +17 -0
- package/esm2015/utils/form/observe-control-valid.js +30 -0
- package/esm2015/utils/form/observe-control-value-change.js +10 -0
- package/esm2015/utils/form/observe-control-value.js +11 -0
- package/esm2015/utils/form/wait-on-non-pending-status.js +18 -0
- package/esm2015/utils/fractional-digits-count.js +19 -0
- package/esm2015/utils/get-attribute.js +7 -0
- package/esm2015/utils/has-attribute.js +7 -0
- package/esm2015/utils/has-property.js +7 -0
- package/esm2015/utils/input-masks.js +2 -0
- package/esm2015/utils/is-absolute-url.js +17 -0
- package/esm2015/utils/is-null-or-undefined.js +4 -0
- package/esm2015/utils/is-numeric.js +4 -0
- package/esm2015/utils/load-style-sheet.js +14 -0
- package/esm2015/utils/load-style.js +13 -0
- package/esm2015/utils/not-null-or-undefined.js +4 -0
- package/esm2015/utils/obj-utils.js +27 -0
- package/esm2015/utils/observe-query-list.js +5 -0
- package/esm2015/utils/operators/index.js +3 -0
- package/esm2015/utils/operators/map-each.js +6 -0
- package/esm2015/utils/operators/tap-first.js +14 -0
- package/esm2015/utils/pad-end.js +9 -0
- package/esm2015/utils/pad-start.js +9 -0
- package/esm2015/utils/polling-ticker.js +121 -0
- package/esm2015/utils/public-api.js +38 -0
- package/esm2015/utils/refreshable.js +65 -0
- package/esm2015/utils/router/index.js +7 -0
- package/esm2015/utils/router/is-empty-url-route.js +4 -0
- package/esm2015/utils/router/leaf-child-route.js +8 -0
- package/esm2015/utils/router/operators/activated-routes-with-data-property.js +11 -0
- package/esm2015/utils/router/route-snapshot-path-full.js +5 -0
- package/esm2015/utils/router/route-snapshot-path-relative.js +4 -0
- package/esm2015/utils/router/will-have-data-prop.js +10 -0
- package/esm2015/utils/subscriber-count.js +19 -0
- package/esm2015/utils/theseam-ui-common-utils.js +5 -0
- package/esm2015/utils/toggle-attribute.js +35 -0
- package/esm2015/utils/wait-on-condition-async.js +33 -0
- package/esm2015/utils/wrap-into-observable.js +8 -0
- package/esm2015/validators/decimal.validator.js +25 -0
- package/esm2015/validators/email-exists.validator.js +18 -0
- package/esm2015/validators/integer.validator.js +25 -0
- package/esm2015/validators/phone-length.validator.js +8 -0
- package/esm2015/validators/public-api.js +6 -0
- package/esm2015/validators/tax-id.validator.js +13 -0
- package/esm2015/validators/theseam-ui-common-validators.js +5 -0
- package/esm2015/viewers/pdf-viewer/index.js +4 -0
- package/esm2015/viewers/pdf-viewer/pdf-page/pdf-page.component.js +134 -0
- package/esm2015/viewers/pdf-viewer/pdf-renderer.service.js +27 -0
- package/esm2015/viewers/pdf-viewer/pdf-viewer.component.js +149 -0
- package/esm2015/viewers/pdf-viewer/pdf-viewer.module.js +24 -0
- package/esm2015/viewers/public-api.js +2 -0
- package/esm2015/viewers/theseam-ui-common-viewers.js +5 -0
- package/esm2015/widget/directives/widget-drag-handle.directive.js +146 -0
- package/esm2015/widget/directives/widget-icon-tpl.directive.js +15 -0
- package/esm2015/widget/directives/widget-title-tpl.directive.js +15 -0
- package/esm2015/widget/public-api.js +38 -0
- package/esm2015/widget/theseam-ui-common-widget.js +5 -0
- package/esm2015/widget/widget/widget.component.js +121 -0
- package/esm2015/widget/widget-content-components/widget-button-group/widget-button-group.component.js +16 -0
- package/esm2015/widget/widget-content-components/widget-button-group/widget-button-group.module.js +22 -0
- package/esm2015/widget/widget-content-components/widget-content-header/widget-content-header.component.js +16 -0
- package/esm2015/widget/widget-content-components/widget-content-header/widget-content-header.module.js +19 -0
- package/esm2015/widget/widget-content-components/widget-description/widget-description.component.js +12 -0
- package/esm2015/widget/widget-content-components/widget-description/widget-description.module.js +19 -0
- package/esm2015/widget/widget-content-components/widget-empty-label/widget-empty-label.component.js +39 -0
- package/esm2015/widget/widget-content-components/widget-empty-label/widget-empty-label.module.js +19 -0
- package/esm2015/widget/widget-content-components/widget-footer-link/widget-footer-link.component.js +16 -0
- package/esm2015/widget/widget-content-components/widget-footer-link/widget-footer-link.module.js +19 -0
- package/esm2015/widget/widget-content-components/widget-footer-text/widget-footer-text.component.js +16 -0
- package/esm2015/widget/widget-content-components/widget-footer-text/widget-footer-text.module.js +19 -0
- package/esm2015/widget/widget-content-components/widget-header-badge/widget-header-badge.component.js +31 -0
- package/esm2015/widget/widget-content-components/widget-header-badge/widget-header-badge.module.js +19 -0
- package/esm2015/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item-icon-tpl.directive.js +16 -0
- package/esm2015/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.js +162 -0
- package/esm2015/widget/widget-content-components/widget-list-group/widget-list-group.component.js +19 -0
- package/esm2015/widget/widget-content-components/widget-list-group/widget-list-group.module.js +31 -0
- package/esm2015/widget/widget-content-components/widget-table/widget-table.component.js +35 -0
- package/esm2015/widget/widget-content-components/widget-table/widget-table.module.js +23 -0
- package/esm2015/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.js +19 -0
- package/esm2015/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.js +43 -0
- package/esm2015/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.js +16 -0
- package/esm2015/widget/widget-content-components/widget-tile/widget-tile-secondary-icon.directive.js +16 -0
- package/esm2015/widget/widget-content-components/widget-tile/widget-tile.component.js +108 -0
- package/esm2015/widget/widget-content-components/widget-tile/widget-tile.module.js +33 -0
- package/esm2015/widget/widget-content-components/widget-tile-list/widget-tile-list.component.js +15 -0
- package/esm2015/widget/widget-content-components/widget-tile-list/widget-tile-list.module.js +21 -0
- package/esm2015/widget/widget-footer/widget-footer.component.js +16 -0
- package/esm2015/widget/widget-registry.models.js +2 -0
- package/esm2015/widget/widget-registry.service.js +56 -0
- package/esm2015/widget/widget-token.js +3 -0
- package/esm2015/widget/widget.module.js +70 -0
- package/fesm2015/theseam-ui-common-asset-reader.js +173 -0
- package/fesm2015/theseam-ui-common-asset-reader.js.map +1 -0
- package/fesm2015/theseam-ui-common-breadcrumbs.js +202 -0
- package/fesm2015/theseam-ui-common-breadcrumbs.js.map +1 -0
- package/fesm2015/theseam-ui-common-buttons.js +362 -0
- package/fesm2015/theseam-ui-common-buttons.js.map +1 -0
- package/fesm2015/theseam-ui-common-card.js +145 -0
- package/fesm2015/theseam-ui-common-card.js.map +1 -0
- package/fesm2015/theseam-ui-common-checkbox.js +302 -0
- package/fesm2015/theseam-ui-common-checkbox.js.map +1 -0
- package/fesm2015/theseam-ui-common-confirm-dialog.js +153 -0
- package/fesm2015/theseam-ui-common-confirm-dialog.js.map +1 -0
- package/fesm2015/theseam-ui-common-core.js +231 -0
- package/fesm2015/theseam-ui-common-core.js.map +1 -0
- package/fesm2015/theseam-ui-common-data-exporter.js +81 -0
- package/fesm2015/theseam-ui-common-data-exporter.js.map +1 -0
- package/fesm2015/theseam-ui-common-data-filters.js +452 -0
- package/fesm2015/theseam-ui-common-data-filters.js.map +1 -0
- package/fesm2015/theseam-ui-common-datatable-dynamic.js +991 -0
- package/fesm2015/theseam-ui-common-datatable-dynamic.js.map +1 -0
- package/fesm2015/theseam-ui-common-datatable.js +1714 -0
- package/fesm2015/theseam-ui-common-datatable.js.map +1 -0
- package/fesm2015/theseam-ui-common-dynamic-component-loader.js +143 -0
- package/fesm2015/theseam-ui-common-dynamic-component-loader.js.map +1 -0
- package/fesm2015/theseam-ui-common-dynamic.js +699 -0
- package/fesm2015/theseam-ui-common-dynamic.js.map +1 -0
- package/fesm2015/theseam-ui-common-footer-bar.js +36 -0
- package/fesm2015/theseam-ui-common-footer-bar.js.map +1 -0
- package/fesm2015/theseam-ui-common-form-field-error.js +464 -0
- package/fesm2015/theseam-ui-common-form-field-error.js.map +1 -0
- package/fesm2015/theseam-ui-common-form-field.js +506 -0
- package/fesm2015/theseam-ui-common-form-field.js.map +1 -0
- package/fesm2015/theseam-ui-common-framework.js +2650 -0
- package/fesm2015/theseam-ui-common-framework.js.map +1 -0
- package/fesm2015/theseam-ui-common-graphql.js +331 -0
- package/fesm2015/theseam-ui-common-graphql.js.map +1 -0
- package/fesm2015/theseam-ui-common-icon.js +518 -0
- package/fesm2015/theseam-ui-common-icon.js.map +1 -0
- package/fesm2015/theseam-ui-common-layout.js +89 -0
- package/fesm2015/theseam-ui-common-layout.js.map +1 -0
- package/fesm2015/theseam-ui-common-loading.js +131 -0
- package/fesm2015/theseam-ui-common-loading.js.map +1 -0
- package/fesm2015/theseam-ui-common-menu.js +762 -0
- package/fesm2015/theseam-ui-common-menu.js.map +1 -0
- package/fesm2015/theseam-ui-common-modal.js +1234 -0
- package/fesm2015/theseam-ui-common-modal.js.map +1 -0
- package/fesm2015/theseam-ui-common-models.js +54 -0
- package/fesm2015/theseam-ui-common-models.js.map +1 -0
- package/fesm2015/theseam-ui-common-popover.js +476 -0
- package/fesm2015/theseam-ui-common-popover.js.map +1 -0
- package/fesm2015/theseam-ui-common-progress.js +87 -0
- package/fesm2015/theseam-ui-common-progress.js.map +1 -0
- package/fesm2015/theseam-ui-common-scrollbar.js +184 -0
- package/fesm2015/theseam-ui-common-scrollbar.js.map +1 -0
- package/fesm2015/theseam-ui-common-services.js +140 -0
- package/fesm2015/theseam-ui-common-services.js.map +1 -0
- package/fesm2015/theseam-ui-common-shared.js +696 -0
- package/fesm2015/theseam-ui-common-shared.js.map +1 -0
- package/fesm2015/theseam-ui-common-storage.js +147 -0
- package/fesm2015/theseam-ui-common-storage.js.map +1 -0
- package/fesm2015/theseam-ui-common-story-helpers.js +441 -0
- package/fesm2015/theseam-ui-common-story-helpers.js.map +1 -0
- package/fesm2015/theseam-ui-common-tabbed.js +262 -0
- package/fesm2015/theseam-ui-common-tabbed.js.map +1 -0
- package/fesm2015/theseam-ui-common-table-cell-type.js +191 -0
- package/fesm2015/theseam-ui-common-table-cell-type.js.map +1 -0
- package/fesm2015/theseam-ui-common-table-cell-types.js +799 -0
- package/fesm2015/theseam-ui-common-table-cell-types.js.map +1 -0
- package/fesm2015/theseam-ui-common-table.js +118 -0
- package/fesm2015/theseam-ui-common-table.js.map +1 -0
- package/fesm2015/theseam-ui-common-tel-input.js +681 -0
- package/fesm2015/theseam-ui-common-tel-input.js.map +1 -0
- package/fesm2015/theseam-ui-common-test-helpers.js +81 -0
- package/fesm2015/theseam-ui-common-test-helpers.js.map +1 -0
- package/fesm2015/theseam-ui-common-tiled-select.js +448 -0
- package/fesm2015/theseam-ui-common-tiled-select.js.map +1 -0
- package/fesm2015/theseam-ui-common-toggle-edit.js +521 -0
- package/fesm2015/theseam-ui-common-toggle-edit.js.map +1 -0
- package/fesm2015/theseam-ui-common-toggle-group.js +260 -0
- package/fesm2015/theseam-ui-common-toggle-group.js.map +1 -0
- package/fesm2015/theseam-ui-common-unsaved-changes-dialog.js +97 -0
- package/fesm2015/theseam-ui-common-unsaved-changes-dialog.js.map +1 -0
- package/fesm2015/theseam-ui-common-utils.js +797 -0
- package/fesm2015/theseam-ui-common-utils.js.map +1 -0
- package/fesm2015/theseam-ui-common-validators.js +94 -0
- package/fesm2015/theseam-ui-common-validators.js.map +1 -0
- package/fesm2015/theseam-ui-common-viewers.js +328 -0
- package/fesm2015/theseam-ui-common-viewers.js.map +1 -0
- package/fesm2015/theseam-ui-common-widget.js +1187 -0
- package/fesm2015/theseam-ui-common-widget.js.map +1 -0
- package/fesm2015/theseam-ui-common.js +47 -0
- package/fesm2015/theseam-ui-common.js.map +1 -0
- package/footer-bar/footer-bar/footer-bar.component.d.ts +5 -0
- package/footer-bar/footer-bar.module.d.ts +2 -0
- package/footer-bar/package.json +11 -0
- package/footer-bar/public-api.d.ts +2 -0
- package/footer-bar/theseam-ui-common-footer-bar.d.ts +4 -0
- package/footer-bar/theseam-ui-common-footer-bar.metadata.json +1 -0
- package/form-field/form-field-error.directive.d.ts +12 -0
- package/form-field/form-field-help-text.directive.d.ts +5 -0
- package/form-field/form-field-label-tpl.directive.d.ts +5 -0
- package/form-field/form-field-required-indicator.component.d.ts +9 -0
- package/form-field/form-field.component.d.ts +114 -0
- package/form-field/form-field.module.d.ts +2 -0
- package/form-field/input.directive.d.ts +72 -0
- package/form-field/package.json +11 -0
- package/form-field/public-api.d.ts +7 -0
- package/form-field/theseam-ui-common-form-field.d.ts +4 -0
- package/form-field/theseam-ui-common-form-field.metadata.json +1 -0
- package/form-field-error/form-field-error/form-field-error.component.d.ts +8 -0
- package/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.d.ts +9 -0
- package/form-field-error/form-field-error-list/form-field-error-list-item.directive.d.ts +6 -0
- package/form-field-error/form-field-error-list/form-field-error-list.component.d.ts +63 -0
- package/form-field-error/form-field-error.module.d.ts +2 -0
- package/form-field-error/package.json +11 -0
- package/form-field-error/public-api.d.ts +5 -0
- package/form-field-error/theseam-ui-common-form-field-error.d.ts +4 -0
- package/form-field-error/theseam-ui-common-form-field-error.metadata.json +1 -0
- package/framework/base-layout/_base-layout-theme.scss +3 -0
- package/framework/base-layout/base-layout-action.d.ts +31 -0
- package/framework/base-layout/base-layout-nav.d.ts +18 -0
- package/framework/base-layout/base-layout-ref.d.ts +14 -0
- package/framework/base-layout/base-layout-tokens.d.ts +3 -0
- package/framework/base-layout/base-layout.component.d.ts +43 -0
- package/framework/base-layout/base-layout.component.scss +81 -0
- package/framework/base-layout/base-layout.module.d.ts +2 -0
- package/framework/base-layout/directives/base-layout-content-footer.directive.d.ts +6 -0
- package/framework/base-layout/directives/base-layout-content-header.directive.d.ts +6 -0
- package/framework/base-layout/directives/base-layout-content.directive.d.ts +6 -0
- package/framework/base-layout/directives/base-layout-nav-toggle.directive.d.ts +14 -0
- package/framework/base-layout/directives/base-layout-side-bar.directive.d.ts +6 -0
- package/framework/base-layout/directives/base-layout-top-bar.directive.d.ts +6 -0
- package/framework/base-layout/index.d.ts +12 -0
- package/framework/base-layout/styles/_utilities.scss +3 -0
- package/framework/base-layout/styles/_variables.scss +9 -0
- package/framework/dashboard/_dashboard-theme.scss +3 -0
- package/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.d.ts +8 -0
- package/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.scss +0 -0
- package/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.d.ts +11 -0
- package/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.scss +0 -0
- package/framework/dashboard/dashboard-widgets/dashboard-widget-portal-outlet.directive.d.ts +47 -0
- package/framework/dashboard/dashboard-widgets/dashboard-widgets-item.d.ts +43 -0
- package/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences-accessor-token.d.ts +3 -0
- package/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences-accessor.d.ts +15 -0
- package/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences.service.d.ts +27 -0
- package/framework/dashboard/dashboard-widgets/dashboard-widgets.component.d.ts +58 -0
- package/framework/dashboard/dashboard-widgets/dashboard-widgets.component.scss +48 -0
- package/framework/dashboard/dashboard-widgets/dashboard-widgets.service.d.ts +34 -0
- package/framework/dashboard/dashboard.component.d.ts +8 -0
- package/framework/dashboard/dashboard.component.scss +0 -0
- package/framework/dashboard/dashboard.module.d.ts +2 -0
- package/framework/dashboard/index.d.ts +11 -0
- package/framework/dashboard/styles/_utilities.scss +3 -0
- package/framework/dashboard/styles/_variables.scss +2 -0
- package/framework/dynamic-router/dynamic-route-def.d.ts +8 -0
- package/framework/dynamic-router/dynamic-router.module.d.ts +2 -0
- package/framework/dynamic-router/hierarchy-router-outlet/hierarchy-route-animations.d.ts +5 -0
- package/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.d.ts +23 -0
- package/framework/dynamic-router/index.d.ts +5 -0
- package/framework/dynamic-router/resolvers/hierarchy-level.resolver.d.ts +7 -0
- package/framework/package.json +11 -0
- package/framework/public-api.d.ts +6 -0
- package/framework/schema-form/index.d.ts +3 -0
- package/framework/schema-form/schema-form-framework.component.d.ts +5 -0
- package/framework/schema-form/schema-form-framework.d.ts +18 -0
- package/framework/schema-form/schema-form.module.d.ts +2 -0
- package/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.d.ts +21 -0
- package/framework/schema-form-controls/schema-form-controls.module.d.ts +2 -0
- package/framework/schema-form-controls/schema-form-input/schema-form-input.component.d.ts +19 -0
- package/framework/schema-form-controls/schema-form-number/schema-form-number.component.d.ts +22 -0
- package/framework/schema-form-controls/schema-form-select/schema-form-select.component.d.ts +20 -0
- package/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.d.ts +18 -0
- package/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.d.ts +34 -0
- package/framework/side-nav/_side-nav-theme.scss +5 -0
- package/framework/side-nav/index.d.ts +6 -0
- package/framework/side-nav/side-nav-item/side-nav-item.component.d.ts +65 -0
- package/framework/side-nav/side-nav-item/side-nav-item.component.scss +158 -0
- package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.d.ts +11 -0
- package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.scss +32 -0
- package/framework/side-nav/side-nav-utils.d.ts +18 -0
- package/framework/side-nav/side-nav.component.d.ts +40 -0
- package/framework/side-nav/side-nav.component.scss +47 -0
- package/framework/side-nav/side-nav.models.d.ts +64 -0
- package/framework/side-nav/side-nav.module.d.ts +2 -0
- package/framework/side-nav/side-nav.service.d.ts +21 -0
- package/framework/side-nav/styles/_themes/light/_variables.scss +29 -0
- package/framework/side-nav/styles/_themes/primary/_variables.scss +31 -0
- package/framework/side-nav/styles/_utilities.scss +3 -0
- package/framework/side-nav/styles/_variables.scss +2 -0
- package/framework/theseam-ui-common-framework.d.ts +12 -0
- package/framework/theseam-ui-common-framework.metadata.json +1 -0
- package/framework/top-bar/index.d.ts +7 -0
- package/framework/top-bar/top-bar-item.directive.d.ts +5 -0
- package/framework/top-bar/top-bar-menu-btn-detail.directive.d.ts +5 -0
- package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +20 -0
- package/framework/top-bar/top-bar-menu.directive.d.ts +5 -0
- package/framework/top-bar/top-bar-title/top-bar-title.component.d.ts +7 -0
- package/framework/top-bar/top-bar.component.d.ts +59 -0
- package/framework/top-bar/top-bar.module.d.ts +2 -0
- package/graphql/models/direction.d.ts +6 -0
- package/graphql/models/hint-definition.d.ts +7 -0
- package/graphql/models/hint-transform-operation.d.ts +5 -0
- package/graphql/models/hint-transformer.d.ts +3 -0
- package/graphql/models/hints-kind.d.ts +7 -0
- package/graphql/models/hints-token.d.ts +7 -0
- package/graphql/models/index.d.ts +8 -0
- package/graphql/models/query-processing-config.d.ts +9 -0
- package/graphql/models/variable.d.ts +5 -0
- package/graphql/package.json +11 -0
- package/graphql/public-api.d.ts +1 -0
- package/graphql/theseam-ui-common-graphql.d.ts +4 -0
- package/graphql/theseam-ui-common-graphql.metadata.json +1 -0
- package/graphql/utils/contains-variable.d.ts +2 -0
- package/graphql/utils/gql-var.d.ts +3 -0
- package/graphql/utils/hints-tokens-containing-hint.d.ts +2 -0
- package/graphql/utils/index.d.ts +10 -0
- package/graphql/utils/inline-variables.d.ts +2 -0
- package/graphql/utils/parse-comments.d.ts +2 -0
- package/graphql/utils/parse-hints.d.ts +17 -0
- package/graphql/utils/remove-variable-definition.d.ts +2 -0
- package/graphql/utils/remove-variable-definitions-not-defined.d.ts +3 -0
- package/graphql/utils/remove-variable.d.ts +2 -0
- package/graphql/utils/to-gql.d.ts +1 -0
- package/icon/icon/icon.component.d.ts +54 -0
- package/icon/icon-btn/icon-btn.component.d.ts +74 -0
- package/icon/icon-notification/icon-notification.component.d.ts +47 -0
- package/icon/icon.d.ts +2 -0
- package/icon/icon.module.d.ts +2 -0
- package/icon/package.json +11 -0
- package/icon/public-api.d.ts +6 -0
- package/icon/theseam-ui-common-icon.d.ts +4 -0
- package/icon/theseam-ui-common-icon.metadata.json +1 -0
- package/icon/utils/file-extension-icon.d.ts +3 -0
- package/icon/utils/get-known-icon.d.ts +2 -0
- package/icon/utils/index.d.ts +2 -0
- package/layout/breakpoint-aliases.d.ts +20 -0
- package/layout/layout.module.d.ts +2 -0
- package/layout/layout.service.d.ts +12 -0
- package/layout/observe-media-query.d.ts +8 -0
- package/layout/package.json +11 -0
- package/layout/public-api.d.ts +4 -0
- package/layout/theseam-ui-common-layout.d.ts +4 -0
- package/layout/theseam-ui-common-layout.metadata.json +1 -0
- package/loading/loading/loading.component.d.ts +9 -0
- package/loading/loading-overlay.service.d.ts +13 -0
- package/loading/loading-themes.d.ts +3 -0
- package/loading/loading.models.d.ts +1 -0
- package/loading/loading.module.d.ts +4 -0
- package/loading/package.json +11 -0
- package/loading/public-api.d.ts +5 -0
- package/loading/theseam-ui-common-loading.d.ts +4 -0
- package/loading/theseam-ui-common-loading.metadata.json +1 -0
- package/menu/menu-animations.d.ts +8 -0
- package/menu/menu-divider.component.d.ts +2 -0
- package/menu/menu-footer/menu-footer.component.d.ts +9 -0
- package/menu/menu-footer-action/menu-footer-action.component.d.ts +19 -0
- package/menu/menu-header/menu-header.component.d.ts +9 -0
- package/menu/menu-item.component.d.ts +41 -0
- package/menu/menu-panel-token.d.ts +6 -0
- package/menu/menu-panel.d.ts +20 -0
- package/menu/menu-toggle.directive.d.ts +53 -0
- package/menu/menu.component.d.ts +62 -0
- package/menu/menu.module.d.ts +2 -0
- package/menu/package.json +11 -0
- package/menu/public-api.d.ts +11 -0
- package/menu/theseam-ui-common-menu.d.ts +4 -0
- package/menu/theseam-ui-common-menu.metadata.json +1 -0
- package/modal/directives/modal-close.directive.d.ts +20 -0
- package/modal/directives/modal-footer-tpl.directive.d.ts +5 -0
- package/modal/directives/modal-header-icon-tpl.directive.d.ts +5 -0
- package/modal/directives/modal-header-title-tpl.directive.d.ts +5 -0
- package/modal/directives/modal-title.directive.d.ts +6 -0
- package/modal/directives/modal.directive.d.ts +8 -0
- package/modal/modal/modal.component.d.ts +56 -0
- package/modal/modal-body/modal-body.component.d.ts +7 -0
- package/modal/modal-config.d.ts +93 -0
- package/modal/modal-container/modal-container.component.d.ts +77 -0
- package/modal/modal-footer/modal-footer.component.d.ts +6 -0
- package/modal/modal-header/modal-header.component.d.ts +11 -0
- package/modal/modal-injectors.d.ts +23 -0
- package/modal/modal-ref.d.ts +50 -0
- package/modal/modal-utils.d.ts +8 -0
- package/modal/modal.models.d.ts +24 -0
- package/modal/modal.module.d.ts +2 -0
- package/modal/modal.service.d.ts +95 -0
- package/modal/package.json +11 -0
- package/modal/public-api.d.ts +19 -0
- package/modal/route-modal/route-modal.component.d.ts +16 -0
- package/modal/theseam-ui-common-modal.d.ts +4 -0
- package/modal/theseam-ui-common-modal.metadata.json +1 -0
- package/models/component-type.d.ts +2 -0
- package/models/http-status-codes.d.ts +18 -0
- package/models/package.json +11 -0
- package/models/public-api.d.ts +7 -0
- package/models/size-prefixes.d.ts +1 -0
- package/models/size-types.d.ts +1 -0
- package/models/theme-names.d.ts +2 -0
- package/models/theme-prefixes.d.ts +1 -0
- package/models/theme-types.d.ts +2 -0
- package/models/theseam-ui-common-models.d.ts +4 -0
- package/models/theseam-ui-common-models.metadata.json +1 -0
- package/package.json +61 -0
- package/popover/package.json +11 -0
- package/popover/popover/popover.component.d.ts +44 -0
- package/popover/popover-animations.d.ts +4 -0
- package/popover/popover.directive.d.ts +57 -0
- package/popover/popover.module.d.ts +2 -0
- package/popover/public-api.d.ts +4 -0
- package/popover/theseam-ui-common-popover.d.ts +4 -0
- package/popover/theseam-ui-common-popover.metadata.json +1 -0
- package/progress/package.json +11 -0
- package/progress/progress-circle/_progress-circle-theme.scss +3 -0
- package/progress/progress-circle/progress-circle.component.d.ts +27 -0
- package/progress/progress-circle/progress-circle.component.scss +105 -0
- package/progress/progress-circle/styles/_utilities.scss +3 -0
- package/progress/progress-circle/styles/_variables.scss +8 -0
- package/progress/progress.module.d.ts +2 -0
- package/progress/public-api.d.ts +2 -0
- package/progress/theseam-ui-common-progress.d.ts +4 -0
- package/progress/theseam-ui-common-progress.metadata.json +1 -0
- package/public_api.d.ts +2 -0
- package/scrollbar/overlay-scrollbar.directive.d.ts +21 -0
- package/scrollbar/overlay-scrollbars-config-model.d.ts +2 -0
- package/scrollbar/overlay-scrollbars-config.d.ts +51 -0
- package/scrollbar/overlay-scrollbars.service.d.ts +20 -0
- package/scrollbar/package.json +11 -0
- package/scrollbar/public-api.d.ts +5 -0
- package/scrollbar/scrollbar.module.d.ts +2 -0
- package/scrollbar/theseam-ui-common-scrollbar.d.ts +4 -0
- package/scrollbar/theseam-ui-common-scrollbar.metadata.json +1 -0
- package/services/asset-loader.service.d.ts +13 -0
- package/services/font-loader.service.d.ts +43 -0
- package/services/package.json +11 -0
- package/services/public-api.d.ts +3 -0
- package/services/router-helpers.service.d.ts +7 -0
- package/services/theseam-ui-common-services.d.ts +4 -0
- package/services/theseam-ui-common-services.metadata.json +1 -0
- package/shared/components/index.d.ts +1 -0
- package/shared/components/password-input-reveal/password-input-reveal.component.d.ts +14 -0
- package/shared/directives/auto-focus.directive.d.ts +15 -0
- package/shared/directives/click-outside.directive.d.ts +10 -0
- package/shared/directives/disable-control.directive.d.ts +6 -0
- package/shared/directives/elem-resized.directive.d.ts +17 -0
- package/shared/directives/hover-class-toggle.directive.d.ts +33 -0
- package/shared/directives/hover-class.directive.d.ts +28 -0
- package/shared/directives/index.d.ts +8 -0
- package/shared/directives/ng-select-extra.directive.d.ts +39 -0
- package/shared/directives/ngx-quill-extra.directive.d.ts +20 -0
- package/shared/package.json +11 -0
- package/shared/pipes/index.d.ts +2 -0
- package/shared/pipes/mask-chars.pipe.d.ts +4 -0
- package/shared/pipes/truncate.pipe.d.ts +4 -0
- package/shared/public-api.d.ts +4 -0
- package/shared/shared.module.d.ts +2 -0
- package/shared/theseam-ui-common-shared.d.ts +4 -0
- package/shared/theseam-ui-common-shared.metadata.json +1 -0
- package/storage/local-storage.service.d.ts +28 -0
- package/storage/localstorage-memory.d.ts +37 -0
- package/storage/package.json +11 -0
- package/storage/public-api.d.ts +1 -0
- package/storage/theseam-ui-common-storage.d.ts +4 -0
- package/storage/theseam-ui-common-storage.metadata.json +1 -0
- package/story-helpers/arg-type-helpers.d.ts +5 -0
- package/story-helpers/args-to-tpl.d.ts +24 -0
- package/story-helpers/initial-route-factory.d.ts +2 -0
- package/story-helpers/initial-route.service.d.ts +7 -0
- package/story-helpers/on-story-bootstrapped-exec.d.ts +29 -0
- package/story-helpers/on-story-bootstrapped-trigger.d.ts +23 -0
- package/story-helpers/package.json +11 -0
- package/story-helpers/public-api.d.ts +14 -0
- package/story-helpers/route-button.d.ts +5 -0
- package/story-helpers/routes-arg-type.d.ts +2 -0
- package/story-helpers/story-empty-with-route.component.d.ts +2 -0
- package/story-helpers/story-empty.component.d.ts +2 -0
- package/story-helpers/story-helper-components.module.d.ts +2 -0
- package/story-helpers/story-initial-route.d.ts +4 -0
- package/story-helpers/story-modal-container.component.d.ts +20 -0
- package/story-helpers/story-toastr.service.d.ts +30 -0
- package/story-helpers/theseam-ui-common-story-helpers.d.ts +4 -0
- package/story-helpers/theseam-ui-common-story-helpers.metadata.json +1 -0
- package/styles/_storybook-fixes.scss +7 -0
- package/styles/_variables.scss +0 -0
- package/styles/bootstrap/_bootstrap.scss +45 -0
- package/styles/bootstrap/_bs-styles.scss +105 -0
- package/styles/bootstrap/_bs-utilities.scss +5 -0
- package/styles/bootstrap/_bs-variables.scss +141 -0
- package/styles/common/_forms.scss +15 -0
- package/styles/common/_global.scss +9 -0
- package/styles/common/_hacks.scss +14 -0
- package/styles/common/_table.scss +124 -0
- package/styles/common/_text.scss +1 -0
- package/styles/theme.scss +19 -0
- package/styles/utilities.scss +14 -0
- package/styles/vendor/_vendor.scss +3 -0
- package/styles/vendor/ng-select/_ng-select-bs4.scss +445 -0
- package/styles/vendor/ngx-datatable/_ngx-datatable.scss +108 -0
- package/styles/vendor/quill/_quill.scss +26 -0
- package/tabbed/directives/tabbed-tab-content.directive.d.ts +4 -0
- package/tabbed/directives/tabbed-tab.directive.d.ts +9 -0
- package/tabbed/package.json +11 -0
- package/tabbed/public-api.d.ts +7 -0
- package/tabbed/tabbed-content/tabbed-content.component.d.ts +7 -0
- package/tabbed/tabbed-item/tabbed-item.component.d.ts +14 -0
- package/tabbed/tabbed.component.d.ts +36 -0
- package/tabbed/tabbed.module.d.ts +2 -0
- package/tabbed/tabbed.service.d.ts +8 -0
- package/tabbed/theseam-ui-common-tabbed.d.ts +4 -0
- package/tabbed/theseam-ui-common-tabbed.metadata.json +1 -0
- package/table/package.json +11 -0
- package/table/public-api.d.ts +2 -0
- package/table/table/table.component.d.ts +43 -0
- package/table/table.module.d.ts +2 -0
- package/table/theseam-ui-common-table.d.ts +4 -0
- package/table/theseam-ui-common-table.metadata.json +1 -0
- package/table-cell-type/package.json +11 -0
- package/table-cell-type/public-api.d.ts +11 -0
- package/table-cell-type/services/table-cell-types-helpers.service.d.ts +15 -0
- package/table-cell-type/table-cell-type-action.d.ts +13 -0
- package/table-cell-type/table-cell-type-column.d.ts +12 -0
- package/table-cell-type/table-cell-type-config.d.ts +12 -0
- package/table-cell-type/table-cell-type-export-props.d.ts +15 -0
- package/table-cell-type/table-cell-type-manifest-provider.d.ts +7 -0
- package/table-cell-type/table-cell-type-models.d.ts +39 -0
- package/table-cell-type/table-cell-type-name.d.ts +1 -0
- package/table-cell-type/table-cell-type-selector.component.d.ts +25 -0
- package/table-cell-type/table-cell-type-tokens.d.ts +4 -0
- package/table-cell-type/table-cell-type.module.d.ts +2 -0
- package/table-cell-type/theseam-ui-common-table-cell-type.d.ts +4 -0
- package/table-cell-type/theseam-ui-common-table-cell-type.metadata.json +1 -0
- package/table-cell-types/package.json +11 -0
- package/table-cell-types/public-api.d.ts +15 -0
- package/table-cell-types/table-cell-type-date/table-cell-type-date-config.d.ts +9 -0
- package/table-cell-types/table-cell-type-date/table-cell-type-date.component.d.ts +12 -0
- package/table-cell-types/table-cell-type-date/table-cell-type-date.d.ts +3 -0
- package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal-config.d.ts +3 -0
- package/table-cell-types/table-cell-type-icon/table-cell-type-icon-config.d.ts +34 -0
- package/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.d.ts +53 -0
- package/table-cell-types/table-cell-type-integer/table-cell-type-integer-config.d.ts +3 -0
- package/table-cell-types/table-cell-type-manifests.d.ts +10 -0
- package/table-cell-types/table-cell-type-phone/table-cell-type-phone-config.d.ts +13 -0
- package/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.d.ts +17 -0
- package/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle-config.d.ts +29 -0
- package/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.d.ts +48 -0
- package/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon-config.d.ts +49 -0
- package/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.d.ts +21 -0
- package/table-cell-types/table-cell-type-string/table-cell-type-string-config.d.ts +10 -0
- package/table-cell-types/table-cell-type-string/table-cell-type-string.component.d.ts +45 -0
- package/table-cell-types/table-cell-types.module.d.ts +2 -0
- package/table-cell-types/theseam-ui-common-table-cell-types.d.ts +6 -0
- package/table-cell-types/theseam-ui-common-table-cell-types.metadata.json +1 -0
- package/tel-input/intl-tel-input.d.ts +300 -0
- package/tel-input/models/index.d.ts +2 -0
- package/tel-input/models/tel-input-country-data.d.ts +9 -0
- package/tel-input/models/tel-input-number-format-name.d.ts +4 -0
- package/tel-input/package.json +11 -0
- package/tel-input/phone-number.pipe.d.ts +11 -0
- package/tel-input/public-api.d.ts +9 -0
- package/tel-input/tel-input/tel-input.component.d.ts +83 -0
- package/tel-input/tel-input-constants.d.ts +4 -0
- package/tel-input/tel-input-validator.d.ts +7 -0
- package/tel-input/tel-input.directive.d.ts +28 -0
- package/tel-input/tel-input.module.d.ts +2 -0
- package/tel-input/theseam-ui-common-tel-input.d.ts +4 -0
- package/tel-input/theseam-ui-common-tel-input.metadata.json +1 -0
- package/tel-input/utils/add-country-code.d.ts +7 -0
- package/tel-input/utils/coerce-phone-number-format.d.ts +7 -0
- package/tel-input/utils/get-country-code.d.ts +2 -0
- package/tel-input/utils/get-dial-code.d.ts +9 -0
- package/tel-input/utils/get-global-intl-tel-input-globals.d.ts +2 -0
- package/tel-input/utils/get-global-intl-tel-input-utils.d.ts +2 -0
- package/tel-input/utils/get-intl-tel-input-utils.d.ts +2 -0
- package/tel-input/utils/get-validation-error-message.d.ts +5 -0
- package/tel-input/utils/index.d.ts +9 -0
- package/tel-input/utils/process-country-codes.d.ts +8 -0
- package/test-helpers/package.json +11 -0
- package/test-helpers/public-api.d.ts +1 -0
- package/test-helpers/theseam-ui-common-test-helpers.d.ts +4 -0
- package/test-helpers/theseam-ui-common-test-helpers.metadata.json +1 -0
- package/test-helpers/tick-helper.d.ts +70 -0
- package/theseam-ui-common.d.ts +4 -0
- package/theseam-ui-common.metadata.json +1 -0
- package/tiled-select/components/tiled-select/tiled-select.component.d.ts +50 -0
- package/tiled-select/components/tiled-select-tile/tiled-select-tile.component.d.ts +41 -0
- package/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.d.ts +26 -0
- package/tiled-select/directives/tiled-select-tile-icon-tpl.directive.d.ts +5 -0
- package/tiled-select/directives/tiled-select-tile-label-tpl.directive.d.ts +5 -0
- package/tiled-select/directives/tiled-select-tile-overlay.directive.d.ts +7 -0
- package/tiled-select/package.json +11 -0
- package/tiled-select/public-api.d.ts +8 -0
- package/tiled-select/theseam-ui-common-tiled-select.d.ts +4 -0
- package/tiled-select/theseam-ui-common-tiled-select.metadata.json +1 -0
- package/tiled-select/tiled-select.models.d.ts +11 -0
- package/tiled-select/tiled-select.module.d.ts +2 -0
- package/toggle-edit/models/can-toggle-edit.d.ts +7 -0
- package/toggle-edit/models/index.d.ts +2 -0
- package/toggle-edit/models/toggle-edit-ref.d.ts +30 -0
- package/toggle-edit/package.json +11 -0
- package/toggle-edit/public-api.d.ts +6 -0
- package/toggle-edit/theseam-ui-common-toggle-edit.d.ts +4 -0
- package/toggle-edit/theseam-ui-common-toggle-edit.metadata.json +1 -0
- package/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.d.ts +5 -0
- package/toggle-edit/toggle-edit-display-tpl.directive.d.ts +5 -0
- package/toggle-edit/toggle-edit-keyboard-listener.service.d.ts +14 -0
- package/toggle-edit/toggle-edit.component.d.ts +90 -0
- package/toggle-edit/toggle-edit.module.d.ts +2 -0
- package/toggle-group/package.json +11 -0
- package/toggle-group/public-api.d.ts +3 -0
- package/toggle-group/theseam-ui-common-toggle-group.d.ts +4 -0
- package/toggle-group/theseam-ui-common-toggle-group.metadata.json +1 -0
- package/toggle-group/toggle-group-option.directive.d.ts +15 -0
- package/toggle-group/toggle-group.directive.d.ts +36 -0
- package/toggle-group/toggle-group.module.d.ts +2 -0
- package/unsaved-changes-dialog/package.json +11 -0
- package/unsaved-changes-dialog/public-api.d.ts +4 -0
- package/unsaved-changes-dialog/theseam-ui-common-unsaved-changes-dialog.d.ts +4 -0
- package/unsaved-changes-dialog/theseam-ui-common-unsaved-changes-dialog.metadata.json +1 -0
- package/unsaved-changes-dialog/unsaved-changes-can-deactivate.d.ts +4 -0
- package/unsaved-changes-dialog/unsaved-changes-dialog.component.d.ts +5 -0
- package/unsaved-changes-dialog/unsaved-changes-dialog.guard.d.ts +8 -0
- package/unsaved-changes-dialog/unsaved-changes-dialog.module.d.ts +2 -0
- package/utils/calc-percentage.d.ts +1 -0
- package/utils/cdk/get-closest-widget-cdk-drag.d.ts +8 -0
- package/utils/create-padding.d.ts +1 -0
- package/utils/file-utils.d.ts +12 -0
- package/utils/form/get-control-name.d.ts +22 -0
- package/utils/form/get-control-path.d.ts +27 -0
- package/utils/form/has-required-control.d.ts +31 -0
- package/utils/form/is-empty-input-value.d.ts +1 -0
- package/utils/form/observe-control-is-different.d.ts +13 -0
- package/utils/form/observe-control-status.d.ts +7 -0
- package/utils/form/observe-control-valid.d.ts +14 -0
- package/utils/form/observe-control-value-change.d.ts +9 -0
- package/utils/form/observe-control-value.d.ts +6 -0
- package/utils/form/wait-on-non-pending-status.d.ts +12 -0
- package/utils/fractional-digits-count.d.ts +8 -0
- package/utils/get-attribute.d.ts +4 -0
- package/utils/has-attribute.d.ts +4 -0
- package/utils/has-property.d.ts +1 -0
- package/utils/input-masks.d.ts +1 -0
- package/utils/is-absolute-url.d.ts +1 -0
- package/utils/is-null-or-undefined.d.ts +1 -0
- package/utils/is-numeric.d.ts +1 -0
- package/utils/load-style-sheet.d.ts +1 -0
- package/utils/load-style.d.ts +1 -0
- package/utils/not-null-or-undefined.d.ts +1 -0
- package/utils/obj-utils.d.ts +8 -0
- package/utils/observe-query-list.d.ts +3 -0
- package/utils/operators/index.d.ts +2 -0
- package/utils/operators/map-each.d.ts +2 -0
- package/utils/operators/tap-first.d.ts +5 -0
- package/utils/package.json +11 -0
- package/utils/pad-end.d.ts +1 -0
- package/utils/pad-start.d.ts +1 -0
- package/utils/polling-ticker.d.ts +13 -0
- package/utils/public-api.d.ts +37 -0
- package/utils/refreshable.d.ts +20 -0
- package/utils/router/index.d.ts +6 -0
- package/utils/router/is-empty-url-route.d.ts +2 -0
- package/utils/router/leaf-child-route.d.ts +2 -0
- package/utils/router/operators/activated-routes-with-data-property.d.ts +7 -0
- package/utils/router/route-snapshot-path-full.d.ts +2 -0
- package/utils/router/route-snapshot-path-relative.d.ts +2 -0
- package/utils/router/will-have-data-prop.d.ts +2 -0
- package/utils/subscriber-count.d.ts +1 -0
- package/utils/theseam-ui-common-utils.d.ts +4 -0
- package/utils/theseam-ui-common-utils.metadata.json +1 -0
- package/utils/toggle-attribute.d.ts +16 -0
- package/utils/wait-on-condition-async.d.ts +1 -0
- package/utils/wrap-into-observable.d.ts +2 -0
- package/validators/decimal.validator.d.ts +9 -0
- package/validators/email-exists.validator.d.ts +10 -0
- package/validators/integer.validator.d.ts +9 -0
- package/validators/package.json +11 -0
- package/validators/phone-length.validator.d.ts +7 -0
- package/validators/public-api.d.ts +5 -0
- package/validators/tax-id.validator.d.ts +11 -0
- package/validators/theseam-ui-common-validators.d.ts +4 -0
- package/validators/theseam-ui-common-validators.metadata.json +1 -0
- package/viewers/package.json +11 -0
- package/viewers/pdf-viewer/index.d.ts +3 -0
- package/viewers/pdf-viewer/pdf-page/pdf-page.component.d.ts +39 -0
- package/viewers/pdf-viewer/pdf-renderer.service.d.ts +6 -0
- package/viewers/pdf-viewer/pdf-viewer.component.d.ts +59 -0
- package/viewers/pdf-viewer/pdf-viewer.module.d.ts +2 -0
- package/viewers/public-api.d.ts +1 -0
- package/viewers/theseam-ui-common-viewers.d.ts +4 -0
- package/viewers/theseam-ui-common-viewers.metadata.json +1 -0
- package/widget/_widget-theme.scss +15 -0
- package/widget/directives/widget-drag-handle.directive.d.ts +53 -0
- package/widget/directives/widget-icon-tpl.directive.d.ts +5 -0
- package/widget/directives/widget-title-tpl.directive.d.ts +5 -0
- package/widget/package.json +11 -0
- package/widget/public-api.d.ts +37 -0
- package/widget/styles/_utilities.scss +3 -0
- package/widget/styles/_variables.scss +27 -0
- package/widget/theseam-ui-common-widget.d.ts +4 -0
- package/widget/theseam-ui-common-widget.metadata.json +1 -0
- package/widget/widget/widget.component.d.ts +78 -0
- package/widget/widget/widget.component.scss +107 -0
- package/widget/widget-content-components/widget-button-group/widget-button-group.component.d.ts +5 -0
- package/widget/widget-content-components/widget-button-group/widget-button-group.component.scss +3 -0
- package/widget/widget-content-components/widget-button-group/widget-button-group.module.d.ts +2 -0
- package/widget/widget-content-components/widget-content-header/widget-content-header.component.d.ts +5 -0
- package/widget/widget-content-components/widget-content-header/widget-content-header.component.scss +6 -0
- package/widget/widget-content-components/widget-content-header/widget-content-header.module.d.ts +2 -0
- package/widget/widget-content-components/widget-description/widget-description.component.d.ts +2 -0
- package/widget/widget-content-components/widget-description/widget-description.component.scss +0 -0
- package/widget/widget-content-components/widget-description/widget-description.module.d.ts +2 -0
- package/widget/widget-content-components/widget-empty-label/widget-empty-label.component.d.ts +15 -0
- package/widget/widget-content-components/widget-empty-label/widget-empty-label.component.scss +9 -0
- package/widget/widget-content-components/widget-empty-label/widget-empty-label.module.d.ts +2 -0
- package/widget/widget-content-components/widget-footer-link/widget-footer-link.component.d.ts +5 -0
- package/widget/widget-content-components/widget-footer-link/widget-footer-link.component.scss +8 -0
- package/widget/widget-content-components/widget-footer-link/widget-footer-link.module.d.ts +2 -0
- package/widget/widget-content-components/widget-footer-text/widget-footer-text.component.d.ts +5 -0
- package/widget/widget-content-components/widget-footer-text/widget-footer-text.component.scss +7 -0
- package/widget/widget-content-components/widget-footer-text/widget-footer-text.module.d.ts +2 -0
- package/widget/widget-content-components/widget-header-badge/widget-header-badge.component.d.ts +12 -0
- package/widget/widget-content-components/widget-header-badge/widget-header-badge.component.scss +5 -0
- package/widget/widget-content-components/widget-header-badge/widget-header-badge.module.d.ts +2 -0
- package/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item-icon-tpl.directive.d.ts +5 -0
- package/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.d.ts +57 -0
- package/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.scss +0 -0
- package/widget/widget-content-components/widget-list-group/widget-list-group.component.d.ts +5 -0
- package/widget/widget-content-components/widget-list-group/widget-list-group.component.scss +0 -0
- package/widget/widget-content-components/widget-list-group/widget-list-group.module.d.ts +2 -0
- package/widget/widget-content-components/widget-table/widget-table.component.d.ts +14 -0
- package/widget/widget-content-components/widget-table/widget-table.component.scss +0 -0
- package/widget/widget-content-components/widget-table/widget-table.module.d.ts +2 -0
- package/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.d.ts +5 -0
- package/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.scss +0 -0
- package/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.d.ts +15 -0
- package/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.scss +5 -0
- package/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.d.ts +5 -0
- package/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.scss +14 -0
- package/widget/widget-content-components/widget-tile/widget-tile-secondary-icon.directive.d.ts +5 -0
- package/widget/widget-content-components/widget-tile/widget-tile.component.d.ts +44 -0
- package/widget/widget-content-components/widget-tile/widget-tile.component.scss +70 -0
- package/widget/widget-content-components/widget-tile/widget-tile.module.d.ts +2 -0
- package/widget/widget-content-components/widget-tile-list/widget-tile-list.component.d.ts +5 -0
- package/widget/widget-content-components/widget-tile-list/widget-tile-list.component.scss +6 -0
- package/widget/widget-content-components/widget-tile-list/widget-tile-list.module.d.ts +2 -0
- package/widget/widget-footer/widget-footer.component.d.ts +5 -0
- package/widget/widget-footer/widget-footer.component.scss +16 -0
- package/widget/widget-registry.models.d.ts +20 -0
- package/widget/widget-registry.service.d.ts +16 -0
- package/widget/widget-token.d.ts +3 -0
- package/widget/widget.module.d.ts +2 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theseam-ui-common-popover.js","sources":["../../../projects/ui-common/popover/popover-animations.ts","../../../projects/ui-common/popover/popover/popover.component.ts","../../../projects/ui-common/popover/popover.directive.ts","../../../projects/ui-common/popover/popover.module.ts","../../../projects/ui-common/popover/theseam-ui-common-popover.ts"],"sourcesContent":["import { animate, animation, group, query, style } from '@angular/animations'\n\nexport const popoverSlideIn = animation([\n query(':self', [\n style({\n opacity: 0,\n transform: 'translateY(-70%)'\n }),\n group([\n animate('170ms linear', style({ opacity: 1 })),\n animate('220ms ease', style({ transform: 'translateY(0)' })),\n ])\n ])\n])\n\nexport const popoverSlideOut = animation([\n query(':self', [\n style({\n opacity: 1,\n transform: 'translateY(0)'\n }),\n group([\n animate('170ms linear', style({ opacity: 0 })),\n animate('220ms ease', style({ transform: 'translateY(-70%)' })),\n ])\n ])\n])\n\nexport const popoverExpandIn = animation([\n style({\n opacity: 0,\n transform: 'scale(0.8)'\n }),\n group([\n animate('100ms linear', style({ opacity: 1 })),\n animate('120ms ease', style({ transform: 'scale(1)' })),\n ])\n])\n\nexport const popoverExpandOut = animation([\n style({\n opacity: 1,\n transform: 'scale(1)'\n }),\n group([\n animate('100ms linear', style({ opacity: 0 })),\n animate('120ms ease', style({ transform: 'scale(0.8)' })),\n ])\n])\n","import { AnimationEvent, transition, trigger, useAnimation } from '@angular/animations'\nimport { coerceNumberProperty } from '@angular/cdk/coercion'\nimport { ESCAPE, hasModifierKey } from '@angular/cdk/keycodes'\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n HostBinding,\n HostListener,\n Input,\n OnDestroy,\n OnInit,\n TemplateRef\n} from '@angular/core'\nimport { BehaviorSubject, fromEvent, Observable, of, Subject } from 'rxjs'\nimport { distinctUntilChanged, map, startWith, switchMap, takeUntil } from 'rxjs/operators'\n\nimport { popoverExpandIn, popoverExpandOut, popoverSlideIn, popoverSlideOut } from '../popover-animations'\n\n@Component({\n selector: 'seam-popover',\n templateUrl: './popover.component.html',\n styleUrls: ['./popover.component.scss'],\n animations: [\n trigger('slideDown', [\n transition(':enter', useAnimation(popoverExpandIn)),\n transition(':leave', useAnimation(popoverExpandOut)),\n ])\n ],\n host: {\n class: 'popover show m-2 position-static',\n '[@slideDown]': `{\n value: _state,\n params: {\n enterAnimationDuration: enterAnimationDuration,\n exitAnimationDuration: exitAnimationDuration\n }\n }`,\n '(@slideDown.start)': '_onAnimationStart($event)',\n '(@slideDown.done)': '_animationDone.next($event)',\n '[style.width]': '_popoverWidth'\n },\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class PopoverComponent implements OnInit, OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject()\n\n /** Duration of the enter animation. Has to be a valid CSS value (e.g. 100ms). */\n enterAnimationDuration?: string = '225ms'\n\n /** Duration of the exit animation. Has to be a valid CSS value (e.g. 50ms). */\n exitAnimationDuration?: string = '225ms'\n\n /** State of the dialog animation. */\n _state: 'void' | 'enter' | 'exit' = 'enter'\n\n /** A subject emitting before the dialog enters the view. */\n _beforeEnter: Subject<void> = new Subject()\n\n /** A subject emitting after the dialog enters the view. */\n _afterEnter: Subject<void> = new Subject()\n\n /** A subject emitting before the dialog exits the view. */\n _beforeExit: Subject<void> = new Subject()\n\n /** A subject emitting after the dialog exits the view. */\n _afterExit: Subject<void> = new Subject()\n\n /** Stream of animation `done` events. */\n _animationDone = new Subject<AnimationEvent>()\n\n // @HostBinding('attr.role') get _role() { return this._config.role }\n @HostBinding('attr.role') get _role() { return 'dialog' }\n\n @HostBinding('attr.tabindex') get _tabindex() { return -1 }\n\n @Input() template: TemplateRef<any> | undefined | null\n\n // @Output() readonly closed = new EventEmitter<void | 'click' | 'keydown'>()\n\n @Input() popoverClass: string | undefined | null\n\n /**\n * Defines a width for a popover that will scale down if the window innerWidth is\n * smaller than the value.\n */\n @Input()\n get baseWidth() { return this._baseWidth.value }\n set baseWidth(value: number | null) {\n const _val = coerceNumberProperty(value, null)\n if (_val !== this._baseWidth.value) {\n this._baseWidth.next(_val)\n }\n }\n private _baseWidth = new BehaviorSubject<number | null>(600)\n // _popoverWidth$: Observable<string | undefined>\n _popoverWidth: string | undefined\n\n constructor(\n private _changeDetectorRef: ChangeDetectorRef,\n // TODO: Implement PopoverConfig\n ) {\n // We use a Subject with a distinctUntilChanged, rather than a callback attached to .done,\n // because some browsers fire the done event twice and we don't want to emit duplicate events.\n // See: https://github.com/angular/angular/issues/24084\n this._animationDone.pipe(distinctUntilChanged((x, y) => {\n return x.fromState === y.fromState && x.toState === y.toState\n })).subscribe(event => {\n // Emit lifecycle events based on animation `done` callback.\n if (event.toState === 'enter') {\n this._afterEnter.next()\n this._afterEnter.complete()\n }\n\n if (event.fromState === 'enter' && (event.toState === 'void' || event.toState === 'exit')) {\n this._afterExit.next()\n this._afterExit.complete()\n }\n })\n }\n\n ngOnInit() {\n // this._popoverWidth$ =\n this._baseWidth.pipe(\n switchMap(baseWidth => {\n if (baseWidth) {\n return fromEvent(window, 'resize').pipe(\n startWith(undefined),\n map(() => window.innerWidth < baseWidth ? `${window.innerWidth}px` : `${baseWidth}px`)\n )\n }\n return of(undefined)\n }),\n takeUntil(this._ngUnsubscribe)\n ).subscribe(w => {\n this._popoverWidth = w\n this._changeDetectorRef.markForCheck()\n })\n }\n\n ngOnDestroy() {\n // this.closed.complete()\n this._animationDone.complete()\n\n this._ngUnsubscribe.next()\n this._ngUnsubscribe.complete()\n }\n\n /** Starts the dialog exit animation. */\n _startExiting(): void {\n this._state = 'exit'\n\n // Mark the container for check so it can react if the\n // view container is using OnPush change detection.\n this._changeDetectorRef.markForCheck()\n }\n\n /** Emit lifecycle events based on animation `start` callback. */\n _onAnimationStart(event: AnimationEvent) {\n if (event.toState === 'enter') {\n this._beforeEnter.next()\n this._beforeEnter.complete()\n }\n if (event.fromState === 'enter' && (event.toState === 'void' || event.toState === 'exit')) {\n this._beforeExit.next()\n this._beforeExit.complete()\n }\n }\n\n /** Handle a keyboard event from the menu, delegating to the appropriate action. */\n @HostListener('keydown', [ '$event' ])\n _handleKeydown(event: KeyboardEvent) {\n // tslint:disable-next-line:deprecation\n const keyCode = event.keyCode\n\n switch (keyCode) {\n case ESCAPE:\n if (!hasModifierKey(event)) {\n event.preventDefault()\n // this.closed.emit('keydown')\n this._startExiting()\n }\n break\n }\n }\n\n}\n","import { FocusMonitor, FocusOrigin, isFakeMousedownFromScreenReader } from '@angular/cdk/a11y'\nimport { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion'\nimport { ESCAPE } from '@angular/cdk/keycodes'\nimport { ConnectionPositionPair, Overlay, OverlayRef, PositionStrategy } from '@angular/cdk/overlay'\nimport { normalizePassiveListenerOptions } from '@angular/cdk/platform'\nimport { ComponentPortal } from '@angular/cdk/portal'\nimport { ComponentRef, Directive, ElementRef, HostListener, Input, OnDestroy, OnInit, TemplateRef, ViewContainerRef } from '@angular/core'\nimport { BehaviorSubject, fromEvent, merge, of, Subject, Subscription } from 'rxjs'\nimport { switchMap, takeUntil } from 'rxjs/operators'\n\nimport { PopoverComponent } from './popover/popover.component'\n\n/** Options for binding a passive event listener. */\nconst passiveEventListenerOptions = normalizePassiveListenerOptions({passive: true})\n\n@Directive({\n selector: '[seamPopover]',\n // tslint:disable-next-line:use-host-property-decorator\n host: {\n 'aria-haspopup': 'true',\n '[attr.aria-expanded]': 'popoverOpen() || null'\n },\n exportAs: 'seamPopover'\n})\nexport class TheSeamPopoverDirective implements OnDestroy {\n\n private readonly _ngUnsubscribe = new Subject()\n\n @Input() seamPopover?: TemplateRef<any> | null\n\n /**\n * Defines a width for a popover that will scale down if the window innerWidth is\n * smaller than the value.\n */\n @Input()\n get seamPopoverBaseWidth() { return this._seamPopoverBaseWidth.value }\n set seamPopoverBaseWidth(value: number | null) {\n const _val = coerceNumberProperty(value, null)\n if (_val !== this._seamPopoverBaseWidth.value) {\n this._seamPopoverBaseWidth.next(_val)\n }\n }\n private _seamPopoverBaseWidth = new BehaviorSubject<number | null>(null)\n\n @Input()\n get seamPopoverDisabled() { return this._seamPopoverDisabled.value }\n set seamPopoverDisabled(val: boolean) { this._seamPopoverDisabled.next(coerceBooleanProperty(val)) }\n private _seamPopoverDisabled = new BehaviorSubject<boolean>(false)\n\n\n // ngOnInit() {\n // this._seamPopoverDisabled.pipe(\n // switchMap(disabled => {\n // if (disabled) {\n // this.close()\n // return of(undefined)\n // }\n\n // if (!(this._elementRef && this._elementRef.nativeElement)) {\n // return of(undefined)\n // }\n\n // return fromEvent(this._elementRef.nativeElement, 'click')\n // })\n // ).subscribe()\n // }\n\n\n private _active = false\n private _closing = false\n private _overlayRef: OverlayRef | undefined | null\n private _compRef: ComponentRef<PopoverComponent> | undefined | null\n private _popoverClosedSubscription = Subscription.EMPTY\n private _closingActionsSubscription = Subscription.EMPTY\n\n public restoreFocus = true\n\n // Tracking input type is necessary so it's possible to only auto-focus\n // the first item of the list when the menu is opened via the keyboard\n _openedBy: 'mouse' | 'touch' | null = null\n\n @HostListener('mousedown', [ '$event' ])\n _onMouseDown(event: MouseEvent) {\n if (!isFakeMousedownFromScreenReader(event)) {\n // Since right or middle button clicks won't trigger the `click` event,\n // we shouldn't consider the menu as opened by mouse in those cases.\n this._openedBy = event.button === 0 ? 'mouse' : null\n }\n }\n\n @HostListener('click', [ '$event' ])\n _onClick(event: any) {\n this.toggle()\n }\n\n @HostListener('document:keydown', [ '$event' ])\n _onDocumentKeydown(event: any) {\n if (event.keyCode === ESCAPE) {\n this.closePopover()\n }\n }\n\n constructor(\n private _elementRef: ElementRef<HTMLElement>,\n private _viewContainerRef: ViewContainerRef,\n private _overlay: Overlay,\n private _focusMonitor: FocusMonitor\n ) {\n this._elementRef.nativeElement.addEventListener('touchstart', this._handleTouchStart,\n passiveEventListenerOptions)\n\n this._seamPopoverBaseWidth\n .pipe(takeUntil(this._ngUnsubscribe))\n .subscribe(w => {\n if (this._compRef && this._compRef.instance) {\n this._compRef.instance.baseWidth = w\n this._compRef.changeDetectorRef.markForCheck()\n }\n })\n }\n\n ngOnDestroy() {\n this.closePopover()\n\n this._elementRef.nativeElement.removeEventListener('touchstart', this._handleTouchStart,\n passiveEventListenerOptions)\n\n this._popoverClosedSubscription.unsubscribe()\n this._closingActionsSubscription.unsubscribe()\n\n this._ngUnsubscribe.next()\n this._ngUnsubscribe.complete()\n }\n\n /**\n * Handles touch start events on the trigger.\n * Needs to be an arrow function so we can easily use addEventListener and removeEventListener.\n */\n private _handleTouchStart = () => this._openedBy = 'touch'\n\n public toggle(): void {\n if (this._active || this.seamPopoverDisabled) {\n this.closePopover()\n } else {\n this.openPopover()\n }\n }\n\n public openPopover(): void {\n if (this._active || !this.seamPopover) { return }\n this._active = true\n\n this._overlayRef = this._overlay.create({\n hasBackdrop: true,\n backdropClass: 'transparent',\n positionStrategy: this.getOverlayPosition(this._elementRef.nativeElement),\n })\n\n this._compRef = this._overlayRef.attach(new ComponentPortal(PopoverComponent, this._viewContainerRef))\n\n this._closingActionsSubscription = this._popoverClosingActions().subscribe(() => this.closePopover())\n\n this._compRef.instance.template = this.seamPopover\n this._compRef.instance.baseWidth = this.seamPopoverBaseWidth\n this._compRef.changeDetectorRef.markForCheck()\n\n this._popoverClosedSubscription = this._compRef.instance._afterExit.subscribe(v => {\n // console.log('closed', v)\n if (this._overlayRef?.hasAttached()) {\n this._overlayRef.detach()\n }\n\n this._resetPopover()\n\n this._popoverClosedSubscription.unsubscribe()\n this._closingActionsSubscription.unsubscribe()\n\n this._active = false\n this._closing = false\n })\n }\n\n public closePopover(): void {\n if (!this._active) { return }\n\n if (!this._closing) {\n if (this._compRef && this._compRef.instance) {\n this._closing = true\n this._compRef.instance._startExiting()\n }\n }\n }\n\n public popoverOpen(): boolean {\n return this._overlayRef?.hasAttached() ?? false\n }\n\n private getOverlayPosition(origin: HTMLElement): PositionStrategy {\n const positionStrategy = this._overlay.position()\n .flexibleConnectedTo(origin)\n .withPositions(this.getPositions())\n .withFlexibleDimensions(false)\n .withPush(true)\n\n return positionStrategy\n }\n\n private getPositions(): ConnectionPositionPair[] {\n return [\n {\n originX: 'center',\n originY: 'bottom',\n overlayX: 'center',\n overlayY: 'top'\n },\n {\n originX: 'center',\n originY: 'top',\n overlayX: 'center',\n overlayY: 'bottom'\n },\n {\n originX: 'end',\n originY: 'bottom',\n overlayX: 'end',\n overlayY: 'top',\n },\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n },\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'bottom',\n },\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n ]\n }\n\n /**\n * Focuses the popover trigger.\n * @param origin Source of the popover trigger's focus.\n */\n focus(origin: FocusOrigin = 'program') {\n if (this._focusMonitor) {\n this._focusMonitor.focusVia(this._elementRef, origin)\n } else {\n this._elementRef.nativeElement.focus()\n }\n }\n\n /**\n * This method resets the popover when it's closed, most importantly restoring\n * focus to the popover trigger if the popover was opened via the keyboard.\n */\n private _resetPopover(): void {\n // We should reset focus if the user is navigating using a keyboard or\n // if we have a top-level trigger which might cause focus to be lost\n // when clicking on the backdrop.\n if (this.restoreFocus) {\n if (!this._openedBy) {\n // Note that the focus style will show up both for `program` and\n // `keyboard` so we don't have to specify which one it is.\n this.focus()\n }\n }\n\n this._openedBy = null\n }\n\n /** Returns a stream that emits whenever an action that should close the popover occurs. */\n private _popoverClosingActions() {\n const backdrop = this._overlayRef?.backdropClick() ?? of()\n const detachments = this._overlayRef?.detachments() ?? of()\n const hover = of()\n\n return merge(backdrop, hover, detachments)\n }\n\n}\n","import { OverlayModule } from '@angular/cdk/overlay'\nimport { PortalModule } from '@angular/cdk/portal'\nimport { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { TheSeamPopoverDirective } from './popover.directive'\nimport { PopoverComponent } from './popover/popover.component'\n\n\n\n@NgModule({\n declarations: [\n PopoverComponent,\n TheSeamPopoverDirective\n ],\n imports: [\n CommonModule,\n OverlayModule,\n PortalModule\n ],\n entryComponents: [\n PopoverComponent\n ],\n exports: [\n TheSeamPopoverDirective,\n\n OverlayModule,\n PortalModule\n ]\n})\nexport class TheSeamPopoverModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
import { __decorate } from 'tslib';
|
|
2
|
+
import { Component, ViewEncapsulation, Input, NgModule } from '@angular/core';
|
|
3
|
+
import { InputBoolean, InputNumber } from '@theseam/ui-common/core';
|
|
4
|
+
import { CommonModule } from '@angular/common';
|
|
5
|
+
|
|
6
|
+
function calcDashoffset(value, circumference) {
|
|
7
|
+
const progress = value / 100;
|
|
8
|
+
const dashoffset = circumference * (1 - progress);
|
|
9
|
+
return dashoffset;
|
|
10
|
+
}
|
|
11
|
+
class ProgressCircleComponent {
|
|
12
|
+
constructor() {
|
|
13
|
+
this._percentage = 0;
|
|
14
|
+
this.fillBackground = false;
|
|
15
|
+
this.showText = false;
|
|
16
|
+
this.hiddenOnEmpty = true;
|
|
17
|
+
this.pending = false;
|
|
18
|
+
this.radius = 15;
|
|
19
|
+
this.circumference = 2 * Math.PI * this.radius;
|
|
20
|
+
}
|
|
21
|
+
set percentage(value) {
|
|
22
|
+
this._percentage = value;
|
|
23
|
+
this._progressInfo = this._getProgress();
|
|
24
|
+
}
|
|
25
|
+
get percentage() { return this._percentage; }
|
|
26
|
+
_getProgress() {
|
|
27
|
+
return {
|
|
28
|
+
dashoffset: calcDashoffset(this.percentage || 0, this.circumference),
|
|
29
|
+
circumference: this.circumference,
|
|
30
|
+
percent: Math.floor(this.percentage || 0)
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
ProgressCircleComponent.decorators = [
|
|
35
|
+
{ type: Component, args: [{
|
|
36
|
+
selector: 'seam-progress-circle',
|
|
37
|
+
template: "<div class=\"seam-progress-circle\" *ngIf=\"_progressInfo as p\"\n [class.seam-progress-circle--in-complete]=\"p.percent < 100\"\n [class.seam-progress-circle--fill-bg]=\"fillBackground\">\n <div class=\"seam-progress-circle-inner\">\n <ng-container *ngIf=\"p.percent > 0 || !hiddenOnEmpty\">\n <svg class=\"seam-progress-circle--icon-spinner\" viewBox=\"0 0 40 40\" [attr.data-percent]=\"p.percent\">\n <circle class=\"seam-progress-circle--icon-spinner-path seam-progress-circle--icon-spinner-path-bg\" cx=\"20\" cy=\"20\" r=\"15\" fill=\"none\"\n stroke-width=\"4\">\n </circle>\n <circle class=\"seam-progress-circle--icon-spinner-path\" cx=\"20\" cy=\"20\" r=\"15\" fill=\"none\"\n transform=\"rotate(-90, 20, 20)\"\n stroke-width=\"4\"\n stroke-miterlimit=\"10\"\n [attr.stroke-dashoffset]=\"p.dashoffset\"\n [style.stroke-dasharray]=\"p.circumference\">\n </circle>\n <!-- Checkmark -->\n <path *ngIf=\"!pending && p.percent === 100\"\n class=\"seam-progress-circle--icon-spinner-path\"\n fill=\"none\"\n stroke-width=\"4\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n d=\"M 11,22 L 18,28 L 28.5,17\">\n </path>\n <!-- Hourglass -->\n <!-- `p.percent === 101` is still here for backwards compatability, but planing to be removed. -->\n <path *ngIf=\"pending || p.percent === 101\"\n class=\"seam-progress-circle--icon-hourglass\"\n fill=\"none\"\n d=\"M27.3,25.8c-0.2-2.5-1.6-4.6-3.6-5.8c2-1.2,3.4-3.3,3.6-5.8c0.7-0.3,1.2-1,1.2-1.8c0-1.1-0.9-2-2-2h-13\n c-1.1,0-2,0.9-2,2c0,0.8,0.5,1.6,1.2,1.8c0.2,2.5,1.6,4.6,3.6,5.8c-2,1.2-3.4,3.3-3.6,5.8c-0.7,0.3-1.2,1-1.2,1.8c0,1.1,0.9,2,2,2\n h13c1.1,0,2-0.9,2-2C28.6,26.9,28,26.1,27.3,25.8z M24.3,25.7h-8.5c0.3-2.1,2.1-3.6,4.2-3.6S24,23.6,24.3,25.7z M20,18\n c-2.1,0-3.9-1.6-4.2-3.6h8.5C24,16.5,22.2,18,20,18z\">\n </path>\n </svg>\n </ng-container>\n <div class=\"seam-progress-circle--icon-text\" *ngIf=\"showText && !pending && p.percent > 0 && p.percent < 100\">\n <span>{{ p.percent }}</span>\n </div>\n </div>\n</div>\n",
|
|
38
|
+
encapsulation: ViewEncapsulation.None,
|
|
39
|
+
styles: ["seam-progress-circle{display:block}seam-progress-circle .seam-progress-circle,seam-progress-circle .seam-progress-circle--absolute-fill,seam-progress-circle .seam-progress-circle .seam-progress-circle--icon-center,seam-progress-circle .seam-progress-circle .seam-progress-circle--icon-spinner,seam-progress-circle .seam-progress-circle .seam-progress-circle--icon-text{position:absolute;top:0;bottom:0;left:0;right:0}seam-progress-circle .seam-progress-circle{padding:5px}seam-progress-circle .seam-progress-circle .seam-progress-circle-inner{position:relative;height:100%;width:100%}seam-progress-circle .seam-progress-circle .seam-progress-circle--icon-check{padding-top:4px;font-size:1.3rem;line-height:1.3rem;color:#55c83c}seam-progress-circle .seam-progress-circle .seam-progress-circle--icon-text{text-align:center;align-items:center;display:flex;flex-direction:row;justify-content:center;color:#55c83c;font-size:19px;font-weight:700;transform:translateZ(0)}seam-progress-circle .seam-progress-circle .seam-progress-circle--icon-center{transform-origin:center center;text-align:center;align-items:center;display:flex;flex-direction:row;justify-content:center}seam-progress-circle .seam-progress-circle .seam-progress-circle--icon-spinner{margin:auto}seam-progress-circle .seam-progress-circle .seam-progress-circle--icon-spinner .seam-progress-circle--icon-spinner-path{stroke-linecap:round;stroke:#55c83c;transition:.5s}seam-progress-circle .seam-progress-circle .seam-progress-circle--icon-spinner .seam-progress-circle--icon-spinner-path:not(path){stroke-dasharray:0}seam-progress-circle .seam-progress-circle .seam-progress-circle--icon-spinner .seam-progress-circle--icon-hourglass{fill:#55c83c;transition:.5s}seam-progress-circle .seam-progress-circle .seam-progress-circle--icon-spinner .seam-progress-circle--icon-spinner-path-bg{stroke-linecap:round;stroke:#e0f5db}seam-progress-circle .seam-progress-circle--in-complete .seam-progress-circle--icon-spinner .seam-progress-circle--icon-spinner-path{stroke:#f57a15}seam-progress-circle .seam-progress-circle--in-complete .seam-progress-circle--icon-spinner .seam-progress-circle--icon-spinner-path-bg{stroke:#fde9d9}seam-progress-circle .seam-progress-circle--in-complete .seam-progress-circle--icon-spinner[data-percent=\"0\"] .seam-progress-circle--icon-spinner-path{stroke:#6c757d}seam-progress-circle .seam-progress-circle--in-complete .seam-progress-circle--icon-spinner[data-percent=\"0\"] .seam-progress-circle--icon-spinner-path-bg{stroke:#d8dbdd}seam-progress-circle .seam-progress-circle--fill-bg .seam-progress-circle--icon-spinner-path-bg{fill:#fff}"]
|
|
40
|
+
},] }
|
|
41
|
+
];
|
|
42
|
+
ProgressCircleComponent.ctorParameters = () => [];
|
|
43
|
+
ProgressCircleComponent.propDecorators = {
|
|
44
|
+
fillBackground: [{ type: Input }],
|
|
45
|
+
showText: [{ type: Input }],
|
|
46
|
+
hiddenOnEmpty: [{ type: Input }],
|
|
47
|
+
pending: [{ type: Input }],
|
|
48
|
+
percentage: [{ type: Input }]
|
|
49
|
+
};
|
|
50
|
+
__decorate([
|
|
51
|
+
InputBoolean()
|
|
52
|
+
], ProgressCircleComponent.prototype, "fillBackground", void 0);
|
|
53
|
+
__decorate([
|
|
54
|
+
InputBoolean()
|
|
55
|
+
], ProgressCircleComponent.prototype, "showText", void 0);
|
|
56
|
+
__decorate([
|
|
57
|
+
InputBoolean()
|
|
58
|
+
], ProgressCircleComponent.prototype, "hiddenOnEmpty", void 0);
|
|
59
|
+
__decorate([
|
|
60
|
+
InputBoolean()
|
|
61
|
+
], ProgressCircleComponent.prototype, "pending", void 0);
|
|
62
|
+
__decorate([
|
|
63
|
+
InputNumber()
|
|
64
|
+
], ProgressCircleComponent.prototype, "percentage", null);
|
|
65
|
+
|
|
66
|
+
class TheSeamProgressModule {
|
|
67
|
+
}
|
|
68
|
+
TheSeamProgressModule.decorators = [
|
|
69
|
+
{ type: NgModule, args: [{
|
|
70
|
+
declarations: [
|
|
71
|
+
ProgressCircleComponent
|
|
72
|
+
],
|
|
73
|
+
imports: [
|
|
74
|
+
CommonModule
|
|
75
|
+
],
|
|
76
|
+
exports: [
|
|
77
|
+
ProgressCircleComponent
|
|
78
|
+
]
|
|
79
|
+
},] }
|
|
80
|
+
];
|
|
81
|
+
|
|
82
|
+
/**
|
|
83
|
+
* Generated bundle index. Do not edit.
|
|
84
|
+
*/
|
|
85
|
+
|
|
86
|
+
export { ProgressCircleComponent, TheSeamProgressModule, calcDashoffset };
|
|
87
|
+
//# sourceMappingURL=theseam-ui-common-progress.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theseam-ui-common-progress.js","sources":["../../../projects/ui-common/progress/progress-circle/progress-circle.component.ts","../../../projects/ui-common/progress/progress.module.ts","../../../projects/ui-common/progress/theseam-ui-common-progress.ts"],"sourcesContent":["import { BooleanInput, NumberInput } from '@angular/cdk/coercion'\nimport { Component, Input, ViewEncapsulation } from '@angular/core'\n\nimport { InputBoolean, InputNumber } from '@theseam/ui-common/core'\n\ninterface IProgressInfo {\n dashoffset: number\n circumference: number\n percent: number\n}\n\nexport function calcDashoffset(value: number, circumference: number) {\n const progress = value / 100\n const dashoffset = circumference * (1 - progress)\n return dashoffset\n}\n\n@Component({\n selector: 'seam-progress-circle',\n templateUrl: './progress-circle.component.html',\n styleUrls: [ './progress-circle.component.scss' ],\n encapsulation: ViewEncapsulation.None\n})\nexport class ProgressCircleComponent {\n static ngAcceptInputType_fillBackground: BooleanInput\n static ngAcceptInputType_showText: BooleanInput\n static ngAcceptInputType_hiddenOnEmpty: BooleanInput\n static ngAcceptInputType_percentage: NumberInput\n static ngAcceptInputType_pending: BooleanInput\n\n private _percentage: number = 0\n\n @Input() @InputBoolean() fillBackground: boolean = false\n @Input() @InputBoolean() showText: boolean = false\n @Input() @InputBoolean() hiddenOnEmpty: boolean = true\n @Input() @InputBoolean() pending: boolean = false\n\n @Input() @InputNumber()\n set percentage(value: number) {\n this._percentage = value\n this._progressInfo = this._getProgress()\n }\n get percentage(): number { return this._percentage }\n\n public readonly radius = 15\n public readonly circumference = 2 * Math.PI * this.radius\n\n _progressInfo?: IProgressInfo | null\n\n constructor() { }\n\n private _getProgress(): IProgressInfo {\n return {\n dashoffset: calcDashoffset(this.percentage || 0, this.circumference),\n circumference: this.circumference,\n percent: Math.floor(this.percentage || 0)\n }\n }\n}\n","import { CommonModule } from '@angular/common'\nimport { NgModule } from '@angular/core'\n\nimport { ProgressCircleComponent } from './progress-circle/progress-circle.component'\n\n@NgModule({\n declarations: [\n ProgressCircleComponent\n ],\n imports: [\n CommonModule\n ],\n exports: [\n ProgressCircleComponent\n ]\n})\nexport class TheSeamProgressModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;SAWgB,cAAc,CAAC,KAAa,EAAE,aAAqB;IACjE,MAAM,QAAQ,GAAG,KAAK,GAAG,GAAG,CAAA;IAC5B,MAAM,UAAU,GAAG,aAAa,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAA;IACjD,OAAO,UAAU,CAAA;AACnB,CAAC;MAQY,uBAAuB;IA0BlC;QAnBQ,gBAAW,GAAW,CAAC,CAAA;QAEN,mBAAc,GAAY,KAAK,CAAA;QAC/B,aAAQ,GAAY,KAAK,CAAA;QACzB,kBAAa,GAAY,IAAI,CAAA;QAC7B,YAAO,GAAY,KAAK,CAAA;QASjC,WAAM,GAAG,EAAE,CAAA;QACX,kBAAa,GAAG,CAAC,GAAG,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,MAAM,CAAA;KAIxC;IAXjB,IAAI,UAAU,CAAC,KAAa;QAC1B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAA;QACxB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,YAAY,EAAE,CAAA;KACzC;IACD,IAAI,UAAU,KAAa,OAAO,IAAI,CAAC,WAAW,CAAA,EAAE;IAS5C,YAAY;QAClB,OAAO;YACL,UAAU,EAAE,cAAc,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC;YACpE,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC;SAC1C,CAAA;KACF;;;YAxCF,SAAS,SAAC;gBACT,QAAQ,EAAE,sBAAsB;gBAChC,0tEAA+C;gBAE/C,aAAa,EAAE,iBAAiB,CAAC,IAAI;;aACtC;;;;6BAUE,KAAK;uBACL,KAAK;4BACL,KAAK;sBACL,KAAK;yBAEL,KAAK;;AALmB;IAAf,YAAY,EAAE;+DAAgC;AAC/B;IAAf,YAAY,EAAE;yDAA0B;AACzB;IAAf,YAAY,EAAE;8DAA8B;AAC7B;IAAf,YAAY,EAAE;wDAAyB;AAGjD;IADU,WAAW,EAAE;yDAItB;;MCzBU,qBAAqB;;;YAXjC,QAAQ,SAAC;gBACR,YAAY,EAAE;oBACZ,uBAAuB;iBACxB;gBACD,OAAO,EAAE;oBACP,YAAY;iBACb;gBACD,OAAO,EAAE;oBACP,uBAAuB;iBACxB;aACF;;;ACfD;;;;;;"}
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
2
|
+
import * as i0 from '@angular/core';
|
|
3
|
+
import { InjectionToken, Injectable, NgZone, Injector, Directive, ElementRef, Input, NgModule } from '@angular/core';
|
|
4
|
+
import * as i1 from '@angular/cdk/platform';
|
|
5
|
+
import { Platform, PlatformModule } from '@angular/cdk/platform';
|
|
6
|
+
import { Subscription, fromEvent } from 'rxjs';
|
|
7
|
+
import OverlayScrollbars from 'overlayscrollbars';
|
|
8
|
+
|
|
9
|
+
const _OverlayScrollbarDefaults = {
|
|
10
|
+
className: 'os-theme-dark os-theme-no-hover',
|
|
11
|
+
sizeAutoCapable: false,
|
|
12
|
+
paddingAbsolute: true,
|
|
13
|
+
autoUpdate: true
|
|
14
|
+
};
|
|
15
|
+
function mergeOverlayScrollbarsConfigs(a, b) {
|
|
16
|
+
return Object.assign(Object.assign({}, a), b);
|
|
17
|
+
}
|
|
18
|
+
/** Injection token that can be used to specify overlayscrollbars options. */
|
|
19
|
+
const LIB_OVERLAY_SCROLLBARS_CONFIG = new InjectionToken('seamOverlayScrollbarsConfig');
|
|
20
|
+
|
|
21
|
+
class OverlayScrollbarsService {
|
|
22
|
+
constructor(_ngZone, injector, _platform) {
|
|
23
|
+
this._ngZone = _ngZone;
|
|
24
|
+
this.injector = injector;
|
|
25
|
+
this._platform = _platform;
|
|
26
|
+
this._inputEventSubscription = Subscription.EMPTY;
|
|
27
|
+
}
|
|
28
|
+
initializeInstance(element, options) {
|
|
29
|
+
if (!this.isInstanceEnabled(element) &&
|
|
30
|
+
// The 'overlayscrollbars' library is causing an issue on iOS. Since iOS
|
|
31
|
+
// already has native overlay scrollbars it shouldn't really effect the
|
|
32
|
+
// app layout.
|
|
33
|
+
!(this._isTextarea(element) && this._platform.IOS)) {
|
|
34
|
+
this._ngZone.runOutsideAngular(() => {
|
|
35
|
+
OverlayScrollbars(element, this._applyConfigDefaults(options));
|
|
36
|
+
if (this._isTextarea(element)) {
|
|
37
|
+
// TODO: Make this more accurate. Right now this is just relying on
|
|
38
|
+
// the fact that timing out for 100ms is usually enough time to wait
|
|
39
|
+
// for update to correctly calculate.
|
|
40
|
+
// NOTE: This may be fixed in a newer version to not need this hack.
|
|
41
|
+
fromEvent(element, 'change').subscribe(_ => {
|
|
42
|
+
this._ngZone.run(() => {
|
|
43
|
+
setTimeout(() => {
|
|
44
|
+
if (this.isInstanceEnabled(element)) {
|
|
45
|
+
this.getInstance(element).update();
|
|
46
|
+
}
|
|
47
|
+
}, 100);
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
destroyInstance(element) {
|
|
55
|
+
if (this.isInstanceEnabled(element)) {
|
|
56
|
+
this._ngZone.runOutsideAngular(() => {
|
|
57
|
+
this.getInstance(element).destroy();
|
|
58
|
+
if (this._inputEventSubscription && !this._inputEventSubscription.closed) {
|
|
59
|
+
this._inputEventSubscription.unsubscribe();
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
getInstance(element) {
|
|
65
|
+
return OverlayScrollbars(element);
|
|
66
|
+
}
|
|
67
|
+
isInstanceEnabled(element) {
|
|
68
|
+
return !!this.getInstance(element);
|
|
69
|
+
}
|
|
70
|
+
setOptions(element, options) {
|
|
71
|
+
if (!this.isInstanceEnabled(element)) {
|
|
72
|
+
return false;
|
|
73
|
+
}
|
|
74
|
+
this.getInstance(element).options(this._applyConfigDefaults(options));
|
|
75
|
+
return true;
|
|
76
|
+
}
|
|
77
|
+
getOptions(element) {
|
|
78
|
+
return this.getInstance(element).options();
|
|
79
|
+
}
|
|
80
|
+
_applyConfigDefaults(config) {
|
|
81
|
+
const _config = this.injector.get(LIB_OVERLAY_SCROLLBARS_CONFIG);
|
|
82
|
+
return Object.assign(Object.assign({}, _config), config);
|
|
83
|
+
}
|
|
84
|
+
/** Determines if the component host is a textarea. */
|
|
85
|
+
_isTextarea(element) {
|
|
86
|
+
return element.nodeName.toLowerCase() === 'textarea';
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
OverlayScrollbarsService.ɵprov = i0.ɵɵdefineInjectable({ factory: function OverlayScrollbarsService_Factory() { return new OverlayScrollbarsService(i0.ɵɵinject(i0.NgZone), i0.ɵɵinject(i0.INJECTOR), i0.ɵɵinject(i1.Platform)); }, token: OverlayScrollbarsService, providedIn: "root" });
|
|
90
|
+
OverlayScrollbarsService.decorators = [
|
|
91
|
+
{ type: Injectable, args: [{
|
|
92
|
+
providedIn: 'root'
|
|
93
|
+
},] }
|
|
94
|
+
];
|
|
95
|
+
OverlayScrollbarsService.ctorParameters = () => [
|
|
96
|
+
{ type: NgZone },
|
|
97
|
+
{ type: Injector },
|
|
98
|
+
{ type: Platform }
|
|
99
|
+
];
|
|
100
|
+
|
|
101
|
+
class OverlayScrollbarDirective {
|
|
102
|
+
constructor(_ref, _scrollbars) {
|
|
103
|
+
this._ref = _ref;
|
|
104
|
+
this._scrollbars = _scrollbars;
|
|
105
|
+
this._disabled = false;
|
|
106
|
+
this._options = {};
|
|
107
|
+
}
|
|
108
|
+
set seamOverlayScrollbar(value) { this.options = value; }
|
|
109
|
+
get overlayScrollbarEnabled() {
|
|
110
|
+
return this._scrollbars.isInstanceEnabled(this._ref.nativeElement);
|
|
111
|
+
}
|
|
112
|
+
set overlayScrollbarEnabled(value) {
|
|
113
|
+
this._disabled = !coerceBooleanProperty(value);
|
|
114
|
+
if (!this._disabled) {
|
|
115
|
+
this._scrollbars.initializeInstance(this._ref.nativeElement);
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
this._scrollbars.destroyInstance(this._ref.nativeElement);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
set options(value) {
|
|
122
|
+
this._options = value || {};
|
|
123
|
+
this._scrollbars.setOptions(this._ref.nativeElement, this._options);
|
|
124
|
+
}
|
|
125
|
+
get options() {
|
|
126
|
+
if (this._scrollbars.isInstanceEnabled(this._ref.nativeElement)) {
|
|
127
|
+
return this._scrollbars.getOptions(this._ref.nativeElement);
|
|
128
|
+
}
|
|
129
|
+
return this._options;
|
|
130
|
+
}
|
|
131
|
+
ngOnInit() { }
|
|
132
|
+
ngAfterViewInit() {
|
|
133
|
+
if (!this._disabled) {
|
|
134
|
+
this._scrollbars.initializeInstance(this._ref.nativeElement, this._options);
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
ngOnDestroy() {
|
|
138
|
+
this._scrollbars.destroyInstance(this._ref.nativeElement);
|
|
139
|
+
}
|
|
140
|
+
get instance() {
|
|
141
|
+
return this._scrollbars.getInstance(this._ref.nativeElement);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
OverlayScrollbarDirective.decorators = [
|
|
145
|
+
{ type: Directive, args: [{
|
|
146
|
+
selector: '[seamOverlayScrollbar]',
|
|
147
|
+
exportAs: 'seamOverlayScrollbar'
|
|
148
|
+
},] }
|
|
149
|
+
];
|
|
150
|
+
OverlayScrollbarDirective.ctorParameters = () => [
|
|
151
|
+
{ type: ElementRef },
|
|
152
|
+
{ type: OverlayScrollbarsService }
|
|
153
|
+
];
|
|
154
|
+
OverlayScrollbarDirective.propDecorators = {
|
|
155
|
+
seamOverlayScrollbar: [{ type: Input }],
|
|
156
|
+
overlayScrollbarEnabled: [{ type: Input }]
|
|
157
|
+
};
|
|
158
|
+
|
|
159
|
+
const ɵ0 = _OverlayScrollbarDefaults;
|
|
160
|
+
class TheSeamScrollbarModule {
|
|
161
|
+
}
|
|
162
|
+
TheSeamScrollbarModule.decorators = [
|
|
163
|
+
{ type: NgModule, args: [{
|
|
164
|
+
declarations: [
|
|
165
|
+
OverlayScrollbarDirective
|
|
166
|
+
],
|
|
167
|
+
imports: [
|
|
168
|
+
PlatformModule
|
|
169
|
+
],
|
|
170
|
+
providers: [
|
|
171
|
+
{ provide: LIB_OVERLAY_SCROLLBARS_CONFIG, useValue: ɵ0 }
|
|
172
|
+
],
|
|
173
|
+
exports: [
|
|
174
|
+
OverlayScrollbarDirective
|
|
175
|
+
]
|
|
176
|
+
},] }
|
|
177
|
+
];
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* Generated bundle index. Do not edit.
|
|
181
|
+
*/
|
|
182
|
+
|
|
183
|
+
export { LIB_OVERLAY_SCROLLBARS_CONFIG, OverlayScrollbarDirective, OverlayScrollbarsService, TheSeamScrollbarModule, _OverlayScrollbarDefaults, mergeOverlayScrollbarsConfigs };
|
|
184
|
+
//# sourceMappingURL=theseam-ui-common-scrollbar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theseam-ui-common-scrollbar.js","sources":["../../../projects/ui-common/scrollbar/overlay-scrollbars-config.ts","../../../projects/ui-common/scrollbar/overlay-scrollbars.service.ts","../../../projects/ui-common/scrollbar/overlay-scrollbar.directive.ts","../../../projects/ui-common/scrollbar/scrollbar.module.ts","../../../projects/ui-common/scrollbar/theseam-ui-common-scrollbar.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core'\n\nimport { IOverlayScrollbarsConfig } from './overlay-scrollbars-config-model'\n\nexport const _OverlayScrollbarDefaults: IOverlayScrollbarsConfig = {\n className: 'os-theme-dark os-theme-no-hover',\n sizeAutoCapable: false,\n paddingAbsolute: true,\n autoUpdate: true\n}\n\nexport function mergeOverlayScrollbarsConfigs(a: IOverlayScrollbarsConfig, b: IOverlayScrollbarsConfig) {\n return { ...a, ...b }\n}\n\n/** Injection token that can be used to specify overlayscrollbars options. */\nexport const LIB_OVERLAY_SCROLLBARS_CONFIG = new InjectionToken<IOverlayScrollbarsConfig>('seamOverlayScrollbarsConfig')\n","import { Platform } from '@angular/cdk/platform'\nimport { forwardRef, inject, Injectable, InjectionToken, Injector, INJECTOR, NgZone } from '@angular/core'\nimport { fromEvent, Subscription } from 'rxjs'\n\nimport OverlayScrollbars from 'overlayscrollbars'\n\nimport { LIB_OVERLAY_SCROLLBARS_CONFIG } from './overlay-scrollbars-config'\nimport { IOverlayScrollbarsConfig } from './overlay-scrollbars-config-model'\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OverlayScrollbarsService {\n\n private _inputEventSubscription = Subscription.EMPTY\n\n constructor(\n private _ngZone: NgZone,\n private injector: Injector,\n private _platform: Platform\n ) { }\n\n public initializeInstance(element: HTMLElement, options?: IOverlayScrollbarsConfig): void {\n if (!this.isInstanceEnabled(element) &&\n // The 'overlayscrollbars' library is causing an issue on iOS. Since iOS\n // already has native overlay scrollbars it shouldn't really effect the\n // app layout.\n !(this._isTextarea(element) && this._platform.IOS)\n ) {\n this._ngZone.runOutsideAngular(() => {\n OverlayScrollbars(element, this._applyConfigDefaults(options))\n\n if (this._isTextarea(element)) {\n // TODO: Make this more accurate. Right now this is just relying on\n // the fact that timing out for 100ms is usually enough time to wait\n // for update to correctly calculate.\n // NOTE: This may be fixed in a newer version to not need this hack.\n fromEvent(element, 'change').subscribe(_ => {\n this._ngZone.run(() => {\n setTimeout(() => {\n if (this.isInstanceEnabled(element)) {\n this.getInstance(element).update()\n }\n }, 100)\n })\n })\n }\n })\n }\n }\n\n public destroyInstance(element: HTMLElement): void {\n if (this.isInstanceEnabled(element)) {\n this._ngZone.runOutsideAngular(() => {\n this.getInstance(element).destroy()\n if (this._inputEventSubscription && !this._inputEventSubscription.closed) {\n this._inputEventSubscription.unsubscribe()\n }\n })\n }\n }\n\n public getInstance(element: HTMLElement): OverlayScrollbars {\n return OverlayScrollbars(element) as OverlayScrollbars\n }\n\n public isInstanceEnabled(element: HTMLElement): boolean {\n return !!this.getInstance(element)\n }\n\n public setOptions(element: HTMLElement, options: IOverlayScrollbarsConfig): boolean {\n if (!this.isInstanceEnabled(element)) { return false }\n\n this.getInstance(element).options(this._applyConfigDefaults(options))\n\n return true\n }\n\n public getOptions(element: HTMLElement): IOverlayScrollbarsConfig {\n return this.getInstance(element).options()\n }\n\n private _applyConfigDefaults(config?: IOverlayScrollbarsConfig): IOverlayScrollbarsConfig {\n const _config: IOverlayScrollbarsConfig = this.injector.get(LIB_OVERLAY_SCROLLBARS_CONFIG)\n return {..._config, ...config}\n }\n\n /** Determines if the component host is a textarea. */\n protected _isTextarea(element: HTMLElement) {\n return element.nodeName.toLowerCase() === 'textarea'\n }\n\n}\n","import { coerceBooleanProperty } from '@angular/cdk/coercion'\nimport { AfterViewInit, Directive, ElementRef, Input, OnDestroy, OnInit } from '@angular/core'\n\nimport OverlayScrollbars from 'overlayscrollbars'\n\nimport { OverlayScrollbarsService } from './overlay-scrollbars.service'\n\nimport type { IOverlayScrollbarsConfig } from './overlay-scrollbars-config-model'\n\n@Directive({\n selector: '[seamOverlayScrollbar]',\n exportAs: 'seamOverlayScrollbar'\n})\nexport class OverlayScrollbarDirective implements OnInit, AfterViewInit, OnDestroy {\n static ngAcceptInputType_seamOverlayScrollbar: IOverlayScrollbarsConfig | undefined | null | ''\n\n private _disabled = false\n\n @Input()\n set seamOverlayScrollbar(value: IOverlayScrollbarsConfig | undefined | null) { this.options = value }\n\n @Input()\n get overlayScrollbarEnabled(): boolean {\n return this._scrollbars.isInstanceEnabled(this._ref.nativeElement)\n }\n set overlayScrollbarEnabled(value: boolean) {\n this._disabled = !coerceBooleanProperty(value)\n if (!this._disabled) {\n this._scrollbars.initializeInstance(this._ref.nativeElement)\n } else {\n this._scrollbars.destroyInstance(this._ref.nativeElement)\n }\n }\n\n set options(value: IOverlayScrollbarsConfig | undefined | null) {\n this._options = value || {}\n this._scrollbars.setOptions(this._ref.nativeElement, this._options)\n }\n get options() {\n if (this._scrollbars.isInstanceEnabled(this._ref.nativeElement)) {\n return this._scrollbars.getOptions(this._ref.nativeElement)\n }\n return this._options\n }\n private _options: IOverlayScrollbarsConfig = {}\n\n constructor(\n private _ref: ElementRef,\n private _scrollbars: OverlayScrollbarsService\n ) { }\n\n ngOnInit() { }\n\n ngAfterViewInit() {\n if (!this._disabled) {\n this._scrollbars.initializeInstance(this._ref.nativeElement, this._options)\n }\n }\n\n ngOnDestroy() {\n this._scrollbars.destroyInstance(this._ref.nativeElement)\n }\n\n get instance(): OverlayScrollbars {\n return this._scrollbars.getInstance(this._ref.nativeElement)\n }\n\n}\n","import { PlatformModule } from '@angular/cdk/platform'\nimport { NgModule } from '@angular/core'\n\nimport { OverlayScrollbarDirective } from './overlay-scrollbar.directive'\nimport { LIB_OVERLAY_SCROLLBARS_CONFIG, _OverlayScrollbarDefaults } from './overlay-scrollbars-config'\n\n@NgModule({\n declarations: [\n OverlayScrollbarDirective\n ],\n imports: [\n PlatformModule\n ],\n providers: [\n { provide: LIB_OVERLAY_SCROLLBARS_CONFIG, useValue: _OverlayScrollbarDefaults }\n ],\n exports: [\n OverlayScrollbarDirective\n ]\n})\nexport class TheSeamScrollbarModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import * as i0 from '@angular/core';
|
|
2
|
+
import { Injectable } from '@angular/core';
|
|
3
|
+
import { defer, Observable } from 'rxjs';
|
|
4
|
+
import { map, filter, startWith } from 'rxjs/operators';
|
|
5
|
+
import { loadStyleSheet, loadStyle, hasProperty } from '@theseam/ui-common/utils';
|
|
6
|
+
import * as i1 from '@angular/router';
|
|
7
|
+
import { NavigationEnd, Router } from '@angular/router';
|
|
8
|
+
import WebFont from 'webfontloader';
|
|
9
|
+
|
|
10
|
+
class LoadedAssetRef {
|
|
11
|
+
constructor(nativeElement, path, content) {
|
|
12
|
+
this.nativeElement = nativeElement;
|
|
13
|
+
this.path = path;
|
|
14
|
+
this.content = content;
|
|
15
|
+
}
|
|
16
|
+
destroy() {
|
|
17
|
+
var _a;
|
|
18
|
+
(_a = this.nativeElement.parentElement) === null || _a === void 0 ? void 0 : _a.removeChild(this.nativeElement);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
class AssetLoaderService {
|
|
22
|
+
constructor() { }
|
|
23
|
+
loadStyleSheet(path) {
|
|
24
|
+
return defer(() => loadStyleSheet(path)).pipe(map(v => new LoadedAssetRef(v, path)));
|
|
25
|
+
}
|
|
26
|
+
loadStyle(content) {
|
|
27
|
+
return defer(() => loadStyle(content)).pipe(map(v => new LoadedAssetRef(v, undefined, content)));
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
AssetLoaderService.ɵprov = i0.ɵɵdefineInjectable({ factory: function AssetLoaderService_Factory() { return new AssetLoaderService(); }, token: AssetLoaderService, providedIn: "root" });
|
|
31
|
+
AssetLoaderService.decorators = [
|
|
32
|
+
{ type: Injectable, args: [{
|
|
33
|
+
providedIn: 'root'
|
|
34
|
+
},] }
|
|
35
|
+
];
|
|
36
|
+
AssetLoaderService.ctorParameters = () => [];
|
|
37
|
+
|
|
38
|
+
class RouterHelpersService {
|
|
39
|
+
constructor(_router) {
|
|
40
|
+
this._router = _router;
|
|
41
|
+
}
|
|
42
|
+
isActive(url, exact) {
|
|
43
|
+
const opts = exact
|
|
44
|
+
? { paths: 'exact', queryParams: 'exact', fragment: 'ignored', matrixParams: 'ignored' }
|
|
45
|
+
: { paths: 'subset', queryParams: 'subset', fragment: 'ignored', matrixParams: 'ignored' };
|
|
46
|
+
return this._router.events.pipe(filter(event => event instanceof NavigationEnd), map(event => this._router.isActive(url, opts)), startWith(this._router.isActive(url, opts)));
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
RouterHelpersService.ɵprov = i0.ɵɵdefineInjectable({ factory: function RouterHelpersService_Factory() { return new RouterHelpersService(i0.ɵɵinject(i1.Router)); }, token: RouterHelpersService, providedIn: "root" });
|
|
50
|
+
RouterHelpersService.decorators = [
|
|
51
|
+
{ type: Injectable, args: [{
|
|
52
|
+
providedIn: 'root'
|
|
53
|
+
},] }
|
|
54
|
+
];
|
|
55
|
+
RouterHelpersService.ctorParameters = () => [
|
|
56
|
+
{ type: Router }
|
|
57
|
+
];
|
|
58
|
+
|
|
59
|
+
/**
|
|
60
|
+
* Service to help loading fonts.
|
|
61
|
+
*
|
|
62
|
+
* Currently this is just a wrapper for the parts of webfontloader that we need.
|
|
63
|
+
* Eventually this should be generic enough that we can switch loaders without
|
|
64
|
+
* config differences being confusing.
|
|
65
|
+
*/
|
|
66
|
+
class TheSeamFontLoaderService {
|
|
67
|
+
constructor() { }
|
|
68
|
+
/**
|
|
69
|
+
* Since this method is just a wrapper for webfontloader right now it accepts
|
|
70
|
+
* anything webfontloader's config accepts, so the event callbacks can still
|
|
71
|
+
* be used, but you should us the emitted objects instead. If we decide to
|
|
72
|
+
* support other font loaders then the event callbacks will most likely be
|
|
73
|
+
* removed.
|
|
74
|
+
*
|
|
75
|
+
* NOTE: If you need to use the events callbacks for some reason, this
|
|
76
|
+
* method's returned observable will still need to be subscribed to, because
|
|
77
|
+
* it doesn't start till subscribed to.
|
|
78
|
+
*/
|
|
79
|
+
load(config) {
|
|
80
|
+
return new Observable((subscriber) => {
|
|
81
|
+
WebFont.load(Object.assign(Object.assign({}, config), {
|
|
82
|
+
/** This event is triggered when all fonts have been requested. */
|
|
83
|
+
loading: () => {
|
|
84
|
+
if (hasProperty(config, 'loading')) {
|
|
85
|
+
config.loading();
|
|
86
|
+
}
|
|
87
|
+
subscriber.next({ type: 'loading' });
|
|
88
|
+
},
|
|
89
|
+
/** This event is triggered when the fonts have rendered. */
|
|
90
|
+
active: () => {
|
|
91
|
+
if (hasProperty(config, 'active')) {
|
|
92
|
+
config.active();
|
|
93
|
+
}
|
|
94
|
+
subscriber.next({ type: 'active' });
|
|
95
|
+
},
|
|
96
|
+
/** This event is triggered when the browser does not support linked fonts or if none of the fonts could be loaded. */
|
|
97
|
+
inactive: () => {
|
|
98
|
+
if (hasProperty(config, 'inactive')) {
|
|
99
|
+
config.inactive();
|
|
100
|
+
}
|
|
101
|
+
subscriber.next({ type: 'inactive' });
|
|
102
|
+
},
|
|
103
|
+
/** This event is triggered once for each font that's loaded. */
|
|
104
|
+
fontloading: (familyName, fvd) => {
|
|
105
|
+
if (hasProperty(config, 'fontloading')) {
|
|
106
|
+
config.fontloading(familyName, fvd);
|
|
107
|
+
}
|
|
108
|
+
subscriber.next({ type: 'fontloading', familyName, fvd });
|
|
109
|
+
},
|
|
110
|
+
/** This event is triggered once for each font that renders. */
|
|
111
|
+
fontactive: (familyName, fvd) => {
|
|
112
|
+
if (hasProperty(config, 'fontactive')) {
|
|
113
|
+
config.fontactive(familyName, fvd);
|
|
114
|
+
}
|
|
115
|
+
subscriber.next({ type: 'fontactive', familyName, fvd });
|
|
116
|
+
},
|
|
117
|
+
/** This event is triggered if the font can't be loaded. */
|
|
118
|
+
fontinactive: (familyName, fvd) => {
|
|
119
|
+
if (hasProperty(config, 'fontinactive')) {
|
|
120
|
+
config.fontinactive(familyName, fvd);
|
|
121
|
+
}
|
|
122
|
+
subscriber.next({ type: 'fontinactive', familyName, fvd });
|
|
123
|
+
} }));
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
TheSeamFontLoaderService.ɵprov = i0.ɵɵdefineInjectable({ factory: function TheSeamFontLoaderService_Factory() { return new TheSeamFontLoaderService(); }, token: TheSeamFontLoaderService, providedIn: "root" });
|
|
128
|
+
TheSeamFontLoaderService.decorators = [
|
|
129
|
+
{ type: Injectable, args: [{
|
|
130
|
+
providedIn: 'root'
|
|
131
|
+
},] }
|
|
132
|
+
];
|
|
133
|
+
TheSeamFontLoaderService.ctorParameters = () => [];
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* Generated bundle index. Do not edit.
|
|
137
|
+
*/
|
|
138
|
+
|
|
139
|
+
export { AssetLoaderService, LoadedAssetRef, RouterHelpersService, TheSeamFontLoaderService };
|
|
140
|
+
//# sourceMappingURL=theseam-ui-common-services.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"theseam-ui-common-services.js","sources":["../../../projects/ui-common/services/asset-loader.service.ts","../../../projects/ui-common/services/router-helpers.service.ts","../../../projects/ui-common/services/font-loader.service.ts","../../../projects/ui-common/services/theseam-ui-common-services.ts"],"sourcesContent":["import { Injectable } from '@angular/core'\nimport { defer, Observable } from 'rxjs'\nimport { map } from 'rxjs/operators'\n\nimport { loadStyle, loadStyleSheet } from '@theseam/ui-common/utils'\n\nexport class LoadedAssetRef<T extends HTMLLinkElement | HTMLScriptElement | HTMLStyleElement> {\n\n constructor(\n public readonly nativeElement: T,\n public readonly path?: string,\n public readonly content?: string\n ) {\n\n }\n\n public destroy(): void {\n this.nativeElement.parentElement?.removeChild(this.nativeElement)\n }\n\n}\n\n@Injectable({\n providedIn: 'root'\n})\nexport class AssetLoaderService {\n\n constructor() { }\n\n public loadStyleSheet(path: string): Observable<LoadedAssetRef<HTMLLinkElement>> {\n return defer(() => loadStyleSheet(path)).pipe(map(v => new LoadedAssetRef(v, path)))\n }\n\n public loadStyle(content: string): Observable<LoadedAssetRef<HTMLStyleElement>> {\n return defer(() => loadStyle(content)).pipe(map(v => new LoadedAssetRef(v, undefined, content)))\n }\n\n}\n","import { Injectable } from '@angular/core'\nimport { IsActiveMatchOptions, NavigationEnd, Router, UrlTree } from '@angular/router'\nimport { Observable } from 'rxjs'\nimport { filter, map, startWith } from 'rxjs/operators'\n\n@Injectable({\n providedIn: 'root'\n})\nexport class RouterHelpersService {\n\n constructor(\n private _router: Router\n ) { }\n\n public isActive(url: string | UrlTree, exact: boolean): Observable<boolean> {\n const opts: IsActiveMatchOptions = exact\n ? { paths: 'exact', queryParams: 'exact', fragment: 'ignored', matrixParams: 'ignored' }\n : { paths: 'subset', queryParams: 'subset', fragment: 'ignored', matrixParams: 'ignored' }\n\n return this._router.events.pipe(\n filter(event => event instanceof NavigationEnd),\n map(event => this._router.isActive(url, opts)),\n startWith(this._router.isActive(url, opts))\n )\n }\n}\n","import { Injectable } from '@angular/core'\n\nimport { Observable, Subscriber } from 'rxjs'\nimport WebFont from 'webfontloader'\n\nimport { hasProperty } from '@theseam/ui-common/utils'\n\nexport type TheSeamFontEvents =\n { type: 'loading' } |\n { type: 'active' } |\n { type: 'inactive' } |\n { type: 'fontloading', familyName: string, fvd: string } |\n { type: 'fontactive', familyName: string, fvd: string } |\n { type: 'fontinactive', familyName: string, fvd: string }\n\n/**\n * Service to help loading fonts.\n *\n * Currently this is just a wrapper for the parts of webfontloader that we need.\n * Eventually this should be generic enough that we can switch loaders without\n * config differences being confusing.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class TheSeamFontLoaderService {\n\n constructor() { }\n\n /**\n * Since this method is just a wrapper for webfontloader right now it accepts\n * anything webfontloader's config accepts, so the event callbacks can still\n * be used, but you should us the emitted objects instead. If we decide to\n * support other font loaders then the event callbacks will most likely be\n * removed.\n *\n * NOTE: If you need to use the events callbacks for some reason, this\n * method's returned observable will still need to be subscribed to, because\n * it doesn't start till subscribed to.\n */\n public load(config: WebFont.Config): Observable<TheSeamFontEvents> {\n return new Observable((subscriber: Subscriber<TheSeamFontEvents>) => {\n WebFont.load({\n ...config,\n /** This event is triggered when all fonts have been requested. */\n loading: () => {\n if (hasProperty(config, 'loading')) {\n config.loading()\n }\n subscriber.next({ type: 'loading' })\n },\n /** This event is triggered when the fonts have rendered. */\n active: () => {\n if (hasProperty(config, 'active')) {\n config.active()\n }\n subscriber.next({ type: 'active' })\n },\n /** This event is triggered when the browser does not support linked fonts or if none of the fonts could be loaded. */\n inactive: () => {\n if (hasProperty(config, 'inactive')) {\n config.inactive()\n }\n subscriber.next({ type: 'inactive' })\n },\n /** This event is triggered once for each font that's loaded. */\n fontloading: (familyName: string, fvd: string) => {\n if (hasProperty(config, 'fontloading')) {\n config.fontloading(familyName, fvd)\n }\n subscriber.next({ type: 'fontloading', familyName, fvd })\n },\n /** This event is triggered once for each font that renders. */\n fontactive: (familyName: string, fvd: string) => {\n if (hasProperty(config, 'fontactive')) {\n config.fontactive(familyName, fvd)\n }\n subscriber.next({ type: 'fontactive', familyName, fvd })\n },\n /** This event is triggered if the font can't be loaded. */\n fontinactive: (familyName: string, fvd: string) => {\n if (hasProperty(config, 'fontinactive')) {\n config.fontinactive(familyName, fvd)\n }\n subscriber.next({ type: 'fontinactive', familyName, fvd })\n },\n })\n })\n }\n\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,696 @@
|
|
|
1
|
+
import { coerceBooleanProperty, coerceNumberProperty } from '@angular/cdk/coercion';
|
|
2
|
+
import { Component, Input, Directive, ElementRef, Optional, EventEmitter, Output, HostListener, NgZone, Self, HostBinding, Pipe, NgModule } from '@angular/core';
|
|
3
|
+
import { faEye, faEyeSlash } from '@fortawesome/free-regular-svg-icons';
|
|
4
|
+
import { getClosestModal, Modal, ModalRef, TheSeamModalModule } from '@theseam/ui-common/modal';
|
|
5
|
+
import { NgControl } from '@angular/forms';
|
|
6
|
+
import { ResizeSensor } from 'css-element-queries';
|
|
7
|
+
import { Subject, fromEvent } from 'rxjs';
|
|
8
|
+
import { takeUntil, filter, tap } from 'rxjs/operators';
|
|
9
|
+
import { NgSelectComponent } from '@ng-select/ng-select';
|
|
10
|
+
import { QuillEditorComponent } from 'ngx-quill';
|
|
11
|
+
import { padStart, padEnd } from '@theseam/ui-common/utils';
|
|
12
|
+
import { CommonModule } from '@angular/common';
|
|
13
|
+
import { FontAwesomeModule } from '@fortawesome/angular-fontawesome';
|
|
14
|
+
import { TheSeamLoadingModule } from '@theseam/ui-common/loading';
|
|
15
|
+
import { TheSeamScrollbarModule } from '@theseam/ui-common/scrollbar';
|
|
16
|
+
|
|
17
|
+
class PasswordInputRevealComponent {
|
|
18
|
+
constructor() {
|
|
19
|
+
this.faEye = faEye;
|
|
20
|
+
this.faEyeSlash = faEyeSlash;
|
|
21
|
+
this._passwordVisible = false;
|
|
22
|
+
}
|
|
23
|
+
get inputRef() { return this._passwordInput; }
|
|
24
|
+
set inputRef(value) {
|
|
25
|
+
this._passwordInput = value;
|
|
26
|
+
this.updateRevealState();
|
|
27
|
+
if (this._passwordInput) {
|
|
28
|
+
this._passwordInput.style.paddingRight = '40px';
|
|
29
|
+
this._passwordInput.classList.add('no-native-eye');
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
get passwordVisible() { return this._passwordVisible; }
|
|
33
|
+
set passwordVisible(value) {
|
|
34
|
+
this._passwordVisible = coerceBooleanProperty(value);
|
|
35
|
+
this.updateRevealState();
|
|
36
|
+
}
|
|
37
|
+
updateRevealState() {
|
|
38
|
+
if (this._passwordInput) {
|
|
39
|
+
this._passwordInput.type = this.passwordVisible ? 'text' : 'password';
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
revealPassword() {
|
|
43
|
+
this.passwordVisible = !this.passwordVisible;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
PasswordInputRevealComponent.decorators = [
|
|
47
|
+
{ type: Component, args: [{
|
|
48
|
+
selector: 'seam-password-input-reveal',
|
|
49
|
+
template: `
|
|
50
|
+
<fa-icon [icon]="passwordVisible ? faEyeSlash : faEye" class="password-reveal-icon" (click)="revealPassword()"></fa-icon>
|
|
51
|
+
`,
|
|
52
|
+
styles: [`
|
|
53
|
+
:host {
|
|
54
|
+
display: flex;
|
|
55
|
+
align-items: center;
|
|
56
|
+
position: absolute;
|
|
57
|
+
top: 0;
|
|
58
|
+
right: 0;
|
|
59
|
+
bottom: 0;
|
|
60
|
+
width: 30px;
|
|
61
|
+
transform: translateZ(0);
|
|
62
|
+
z-index: 50;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
:host fa-icon {
|
|
66
|
+
opacity: 1;
|
|
67
|
+
color: #bababa;
|
|
68
|
+
margin-top: 3px;
|
|
69
|
+
cursor: pointer;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
:host fa-icon ::ng-deep {
|
|
73
|
+
.svg-inline--fa {
|
|
74
|
+
vertical-align: middle;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
`]
|
|
78
|
+
},] }
|
|
79
|
+
];
|
|
80
|
+
PasswordInputRevealComponent.propDecorators = {
|
|
81
|
+
inputRef: [{ type: Input }],
|
|
82
|
+
passwordVisible: [{ type: Input }]
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
class AutoFocusDirective {
|
|
86
|
+
constructor(_elementRef, _modal, _modalRef) {
|
|
87
|
+
this._elementRef = _elementRef;
|
|
88
|
+
this._modal = _modal;
|
|
89
|
+
this._modalRef = _modalRef;
|
|
90
|
+
this._focus = true;
|
|
91
|
+
this.modalRef = _modalRef;
|
|
92
|
+
}
|
|
93
|
+
ngOnInit() {
|
|
94
|
+
if (!this.modalRef) {
|
|
95
|
+
// When this directive is included in a dialog via TemplateRef (rather than being
|
|
96
|
+
// in a Component), the DialogRef isn't available via injection because embedded
|
|
97
|
+
// views cannot be given a custom injector. Instead, we look up the DialogRef by
|
|
98
|
+
// ID. This must occur in `onInit`, as the ID binding for the dialog container won't
|
|
99
|
+
// be resolved at constructor time.
|
|
100
|
+
this.modalRef = getClosestModal(this._elementRef, this._modal.openDialogs);
|
|
101
|
+
}
|
|
102
|
+
if (!this.modalRef) {
|
|
103
|
+
if (this._focus) {
|
|
104
|
+
setTimeout(() => { this.focus(); });
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
this.modalRef.afterOpened().subscribe(() => {
|
|
109
|
+
setTimeout(() => { this.focus(); });
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
set seamAutoFocus(condition) {
|
|
114
|
+
this._focus = coerceBooleanProperty(condition) !== false;
|
|
115
|
+
}
|
|
116
|
+
focus() {
|
|
117
|
+
this._elementRef.nativeElement.focus();
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
AutoFocusDirective.decorators = [
|
|
121
|
+
{ type: Directive, args: [{
|
|
122
|
+
selector: '[seamAutoFocus]',
|
|
123
|
+
exportAs: 'seamAutoFocus'
|
|
124
|
+
},] }
|
|
125
|
+
];
|
|
126
|
+
AutoFocusDirective.ctorParameters = () => [
|
|
127
|
+
{ type: ElementRef },
|
|
128
|
+
{ type: Modal },
|
|
129
|
+
{ type: ModalRef, decorators: [{ type: Optional }] }
|
|
130
|
+
];
|
|
131
|
+
AutoFocusDirective.propDecorators = {
|
|
132
|
+
seamAutoFocus: [{ type: Input }]
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
class ClickOutsideDirective {
|
|
136
|
+
constructor(elementRef) {
|
|
137
|
+
this.elementRef = elementRef;
|
|
138
|
+
this._active = true;
|
|
139
|
+
this.seamClickOutside = new EventEmitter();
|
|
140
|
+
}
|
|
141
|
+
get seamClickOutsideActive() {
|
|
142
|
+
return this._active;
|
|
143
|
+
}
|
|
144
|
+
set seamClickOutsideActive(value) {
|
|
145
|
+
if (this._active === value) {
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
if (value) {
|
|
149
|
+
// `setTimeout` is used to avoid the click event triggering when the value
|
|
150
|
+
// changes if the value was changed with a click.
|
|
151
|
+
setTimeout(() => { this._active = value; });
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
this._active = value;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
// NOTE: This should probably be changed from a `HostListener` to allow the
|
|
158
|
+
// subscription to be unsubscribed.
|
|
159
|
+
onDocumentClick(event) {
|
|
160
|
+
if (this._active) {
|
|
161
|
+
const targetElement = event.target;
|
|
162
|
+
// Check if the click was outside the element
|
|
163
|
+
if (targetElement && !this.elementRef.nativeElement.contains(targetElement)) {
|
|
164
|
+
this.seamClickOutside.emit(event);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
ClickOutsideDirective.decorators = [
|
|
170
|
+
{ type: Directive, args: [{
|
|
171
|
+
selector: '[seamClickOutside]'
|
|
172
|
+
},] }
|
|
173
|
+
];
|
|
174
|
+
ClickOutsideDirective.ctorParameters = () => [
|
|
175
|
+
{ type: ElementRef }
|
|
176
|
+
];
|
|
177
|
+
ClickOutsideDirective.propDecorators = {
|
|
178
|
+
seamClickOutsideActive: [{ type: Input }],
|
|
179
|
+
seamClickOutside: [{ type: Output }],
|
|
180
|
+
onDocumentClick: [{ type: HostListener, args: ['document:click', ['$event'],] }]
|
|
181
|
+
};
|
|
182
|
+
|
|
183
|
+
// Source: https://netbasal.com/disabling-form-controls-when-working-with-reactive-forms-in-angular-549dd7b42110
|
|
184
|
+
class DisableControlDirective {
|
|
185
|
+
constructor(ngControl) {
|
|
186
|
+
this.ngControl = ngControl;
|
|
187
|
+
}
|
|
188
|
+
set seamDisableControl(condition) {
|
|
189
|
+
const action = condition ? 'disable' : 'enable';
|
|
190
|
+
const control = this.ngControl.control;
|
|
191
|
+
if (control) {
|
|
192
|
+
control[action]();
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
DisableControlDirective.decorators = [
|
|
197
|
+
{ type: Directive, args: [{
|
|
198
|
+
selector: '[seamDisableControl]'
|
|
199
|
+
},] }
|
|
200
|
+
];
|
|
201
|
+
DisableControlDirective.ctorParameters = () => [
|
|
202
|
+
{ type: NgControl }
|
|
203
|
+
];
|
|
204
|
+
DisableControlDirective.propDecorators = {
|
|
205
|
+
seamDisableControl: [{ type: Input }]
|
|
206
|
+
};
|
|
207
|
+
|
|
208
|
+
class ElemResizedDirective {
|
|
209
|
+
constructor(elementRef) {
|
|
210
|
+
this.elementRef = elementRef;
|
|
211
|
+
this.seamElemResized = new EventEmitter();
|
|
212
|
+
}
|
|
213
|
+
ngAfterViewInit() {
|
|
214
|
+
this.sensor = new ResizeSensor(this.elementRef.nativeElement, (event) => {
|
|
215
|
+
this.seamElemResized.emit({ element: this.elementRef.nativeElement, size: event });
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
ngOnDestroy() {
|
|
219
|
+
var _a;
|
|
220
|
+
(_a = this.sensor) === null || _a === void 0 ? void 0 : _a.detach();
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
ElemResizedDirective.decorators = [
|
|
224
|
+
{ type: Directive, args: [{
|
|
225
|
+
selector: '[seamElemResized]'
|
|
226
|
+
},] }
|
|
227
|
+
];
|
|
228
|
+
ElemResizedDirective.ctorParameters = () => [
|
|
229
|
+
{ type: ElementRef }
|
|
230
|
+
];
|
|
231
|
+
ElemResizedDirective.propDecorators = {
|
|
232
|
+
seamElemResized: [{ type: Output }]
|
|
233
|
+
};
|
|
234
|
+
|
|
235
|
+
/**
|
|
236
|
+
* Don't use this directive unless there is a reason not to use css `:hover`,
|
|
237
|
+
* because the accuracy of detecting the hover is not as good. If an element is
|
|
238
|
+
* moved while the mouse is idle the hover class will remain until the mouse
|
|
239
|
+
* enters and leaves again.
|
|
240
|
+
*
|
|
241
|
+
* I have tried multiple ways of detecting the mouse no longer hovering, but all
|
|
242
|
+
* have introduced a slight performance issue that just builds for each element
|
|
243
|
+
* containing this directive.
|
|
244
|
+
*/
|
|
245
|
+
class HoverClassToggleDirective {
|
|
246
|
+
constructor(_element) {
|
|
247
|
+
this._element = _element;
|
|
248
|
+
this._hovered = false;
|
|
249
|
+
this._defaultClasses = [];
|
|
250
|
+
this._hoverClasses = [];
|
|
251
|
+
}
|
|
252
|
+
onMouseOver($event) {
|
|
253
|
+
this._setHovered(true);
|
|
254
|
+
}
|
|
255
|
+
onMouseOut($event) {
|
|
256
|
+
this._setHovered(false);
|
|
257
|
+
}
|
|
258
|
+
onPointerOver($event) {
|
|
259
|
+
this._setHovered(true);
|
|
260
|
+
}
|
|
261
|
+
onPointerOut($event) {
|
|
262
|
+
this._setHovered(false);
|
|
263
|
+
}
|
|
264
|
+
set seamHoverClassToggle(value) {
|
|
265
|
+
if (value) {
|
|
266
|
+
if (value.default) {
|
|
267
|
+
this._defaultClasses = value.default.split(' ').filter(c => c.length > 0);
|
|
268
|
+
}
|
|
269
|
+
if (value.hover) {
|
|
270
|
+
this._hoverClasses = value.hover.split(' ').filter(c => c.length > 0);
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
this._hoverClasses = this._hoverClasses.filter(v => !this._defaultClasses.find(_v => _v === v));
|
|
274
|
+
this._update();
|
|
275
|
+
}
|
|
276
|
+
_update() {
|
|
277
|
+
for (const c of this._defaultClasses) {
|
|
278
|
+
this._hovered ? this._removeClass(c) : this._addClass(c);
|
|
279
|
+
}
|
|
280
|
+
for (const c of this._hoverClasses) {
|
|
281
|
+
this._hovered ? this._addClass(c) : this._removeClass(c);
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
_setHovered(hovered) {
|
|
285
|
+
const doUpdate = this._hovered !== hovered;
|
|
286
|
+
this._hovered = hovered;
|
|
287
|
+
if (doUpdate) {
|
|
288
|
+
this._update();
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
_addClass(c) {
|
|
292
|
+
this._element.nativeElement.classList.add(c);
|
|
293
|
+
}
|
|
294
|
+
_removeClass(c) {
|
|
295
|
+
this._element.nativeElement.classList.remove(c);
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
HoverClassToggleDirective.decorators = [
|
|
299
|
+
{ type: Directive, args: [{
|
|
300
|
+
selector: '[seamHoverClassToggle]'
|
|
301
|
+
},] }
|
|
302
|
+
];
|
|
303
|
+
HoverClassToggleDirective.ctorParameters = () => [
|
|
304
|
+
{ type: ElementRef }
|
|
305
|
+
];
|
|
306
|
+
HoverClassToggleDirective.propDecorators = {
|
|
307
|
+
onMouseOver: [{ type: HostListener, args: ['mouseover', ['$event'],] }],
|
|
308
|
+
onMouseOut: [{ type: HostListener, args: ['mouseout', ['$event'],] }],
|
|
309
|
+
onPointerOver: [{ type: HostListener, args: ['pointerover', ['$event'],] }],
|
|
310
|
+
onPointerOut: [{ type: HostListener, args: ['pointerout', ['$event'],] }],
|
|
311
|
+
seamHoverClassToggle: [{ type: Input }]
|
|
312
|
+
};
|
|
313
|
+
|
|
314
|
+
/**
|
|
315
|
+
* Don't use this directive unless there is a reason not to use css `:hover`,
|
|
316
|
+
* because the accuracy of detecting the hover is not as good. If an element is
|
|
317
|
+
* moved while the mouse is idle the hover class will remain until the mouse
|
|
318
|
+
* enters and leaves again.
|
|
319
|
+
*
|
|
320
|
+
* I have tried multiple ways of detecting the mouse no longer hovering, but all
|
|
321
|
+
* have introduced a slight performance issue that just builds for each element
|
|
322
|
+
* containing this directive.
|
|
323
|
+
*/
|
|
324
|
+
class HoverClassDirective {
|
|
325
|
+
constructor(_element) {
|
|
326
|
+
this._element = _element;
|
|
327
|
+
this._hovered = false;
|
|
328
|
+
this._classes = [];
|
|
329
|
+
}
|
|
330
|
+
onMouseOver($event) {
|
|
331
|
+
this._setHovered(true);
|
|
332
|
+
}
|
|
333
|
+
onMouseOut($event) {
|
|
334
|
+
this._setHovered(false);
|
|
335
|
+
}
|
|
336
|
+
onPointerOver($event) {
|
|
337
|
+
this._setHovered(true);
|
|
338
|
+
}
|
|
339
|
+
onPointerOut($event) {
|
|
340
|
+
this._setHovered(false);
|
|
341
|
+
}
|
|
342
|
+
set seamHoverClass(classList) {
|
|
343
|
+
const newClasses = classList.split(' ').filter(c => c.length > 0);
|
|
344
|
+
for (const c of this._classes) {
|
|
345
|
+
if (newClasses.indexOf(c) !== 0) {
|
|
346
|
+
this._removeClass(c);
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
this._classes = newClasses;
|
|
350
|
+
this._update();
|
|
351
|
+
}
|
|
352
|
+
_update() {
|
|
353
|
+
for (const c of this._classes) {
|
|
354
|
+
this._hovered ? this._addClass(c) : this._removeClass(c);
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
_setHovered(hovered) {
|
|
358
|
+
const doUpdate = this._hovered !== hovered;
|
|
359
|
+
this._hovered = hovered;
|
|
360
|
+
if (doUpdate) {
|
|
361
|
+
this._update();
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
_addClass(c) {
|
|
365
|
+
this._element.nativeElement.classList.add(c);
|
|
366
|
+
}
|
|
367
|
+
_removeClass(c) {
|
|
368
|
+
this._element.nativeElement.classList.remove(c);
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
HoverClassDirective.decorators = [
|
|
372
|
+
{ type: Directive, args: [{
|
|
373
|
+
selector: '[seamHoverClass]'
|
|
374
|
+
},] }
|
|
375
|
+
];
|
|
376
|
+
HoverClassDirective.ctorParameters = () => [
|
|
377
|
+
{ type: ElementRef }
|
|
378
|
+
];
|
|
379
|
+
HoverClassDirective.propDecorators = {
|
|
380
|
+
onMouseOver: [{ type: HostListener, args: ['mouseover', ['$event'],] }],
|
|
381
|
+
onMouseOut: [{ type: HostListener, args: ['mouseout', ['$event'],] }],
|
|
382
|
+
onPointerOver: [{ type: HostListener, args: ['pointerover', ['$event'],] }],
|
|
383
|
+
onPointerOut: [{ type: HostListener, args: ['pointerout', ['$event'],] }],
|
|
384
|
+
seamHoverClass: [{ type: Input }]
|
|
385
|
+
};
|
|
386
|
+
|
|
387
|
+
class NgSelectExtraDirective {
|
|
388
|
+
constructor(elementRef, _ngZone, ngSelect, ngControl) {
|
|
389
|
+
this.elementRef = elementRef;
|
|
390
|
+
this._ngZone = _ngZone;
|
|
391
|
+
this.ngSelect = ngSelect;
|
|
392
|
+
this.ngControl = ngControl;
|
|
393
|
+
this._ngUnsubscribe = new Subject();
|
|
394
|
+
this._markedItem = null;
|
|
395
|
+
this._checkMarked = false;
|
|
396
|
+
this._keyPressWorkaroundSub = null;
|
|
397
|
+
this._resizedEvent = new EventEmitter();
|
|
398
|
+
this._onScroll = (event) => {
|
|
399
|
+
if (this.ngSelect && this.ngSelect.isOpen) {
|
|
400
|
+
const isScrollingInScrollHost = event.target.className.indexOf('ng-dropdown-panel-items') !== -1;
|
|
401
|
+
const isInSensor = event.target.className.indexOf('resize-sensor-shrink') !== -1 ||
|
|
402
|
+
event.target.className.indexOf('os-resize-observer-host') !== -1;
|
|
403
|
+
if (isScrollingInScrollHost || isInSensor) {
|
|
404
|
+
return;
|
|
405
|
+
}
|
|
406
|
+
this.ngSelect.close();
|
|
407
|
+
}
|
|
408
|
+
};
|
|
409
|
+
}
|
|
410
|
+
/**
|
|
411
|
+
* Set the tab index to `-1` to allow the root element of the ng-select
|
|
412
|
+
* component to receive `focus` event from javascript, but not get focused by
|
|
413
|
+
* keyboard navigation.
|
|
414
|
+
*/
|
|
415
|
+
get _tabIndex() { return this.ngSelect.disabled ? undefined : -1; }
|
|
416
|
+
/**
|
|
417
|
+
* Listening for focus event on root of component to allow javascript
|
|
418
|
+
* `focus()` function to trigger the components focus.
|
|
419
|
+
*/
|
|
420
|
+
onFocus($event) {
|
|
421
|
+
const target = $event.target;
|
|
422
|
+
if (target === this.elementRef.nativeElement && !this.ngSelect.disabled) {
|
|
423
|
+
this.ngSelect.focus();
|
|
424
|
+
}
|
|
425
|
+
// ng-select has an input `labelForId` that sets the autocomplete attribute
|
|
426
|
+
// in ngOnInit. I am not positive that it is wrong by doing that, but this
|
|
427
|
+
// hack makes it set the attributes again on focus, because that gives the
|
|
428
|
+
// result I was expecting, since we don't manually set the `labelForId`
|
|
429
|
+
// input.
|
|
430
|
+
const _ngSelect = this.ngSelect;
|
|
431
|
+
_ngSelect._setInputAttributes();
|
|
432
|
+
}
|
|
433
|
+
get _isInvalid() {
|
|
434
|
+
return this.ngControl ? this.ngControl.invalid && (this.ngControl.dirty || this.ngControl.touched) : false;
|
|
435
|
+
}
|
|
436
|
+
get _isEmptyStringValue() {
|
|
437
|
+
return this.ngControl ? this.ngControl.value === '' ? true : false : false;
|
|
438
|
+
}
|
|
439
|
+
ngOnInit() {
|
|
440
|
+
this.ngSelect.focusEvent
|
|
441
|
+
.subscribe(v => this._enableKeyPressWorkaround());
|
|
442
|
+
this.ngSelect.blurEvent
|
|
443
|
+
.subscribe(v => this._disableKeyPressWorkaround());
|
|
444
|
+
window.addEventListener('scroll', this._onScroll, true);
|
|
445
|
+
// When the input is allowed to change its height the position doesn't update itself.
|
|
446
|
+
// this._resizedEvent.pipe(
|
|
447
|
+
// auditTime(30)
|
|
448
|
+
// ).subscribe(event => {
|
|
449
|
+
// if (this.elementRef && this.elementRef.nativeElement) {
|
|
450
|
+
// if (this.elementRef.nativeElement.classList.contains('ng-select-value-grow-h')) {
|
|
451
|
+
// if (this.ngSelect.isOpen && this.ngSelect.dropdownPanel) {
|
|
452
|
+
// this.ngSelect.dropdownPanel.updateDropdownPosition()
|
|
453
|
+
// }
|
|
454
|
+
// } else {
|
|
455
|
+
// this.elementRef.nativeElement.classList.remove('ng-select-value-grow-h')
|
|
456
|
+
// }
|
|
457
|
+
// }
|
|
458
|
+
// })
|
|
459
|
+
// this._patch_ngSelect_open()
|
|
460
|
+
}
|
|
461
|
+
ngOnDestroy() {
|
|
462
|
+
var _a;
|
|
463
|
+
(_a = this._resizeSensor) === null || _a === void 0 ? void 0 : _a.detach();
|
|
464
|
+
window.removeEventListener('scroll', this._onScroll, true);
|
|
465
|
+
this._ngUnsubscribe.next();
|
|
466
|
+
this._ngUnsubscribe.complete();
|
|
467
|
+
}
|
|
468
|
+
ngAfterViewChecked() {
|
|
469
|
+
if (this.ngSelect.dropdownPanel) {
|
|
470
|
+
if (this._checkMarked) {
|
|
471
|
+
if (this.ngSelect.dropdownPanel && this._markedItem !== null) {
|
|
472
|
+
if (this._markedItem.index !== this.ngSelect.dropdownPanel.markedItem.index) {
|
|
473
|
+
this.ngSelect.dropdownPanel.scrollTo(this.ngSelect.dropdownPanel.markedItem);
|
|
474
|
+
}
|
|
475
|
+
}
|
|
476
|
+
}
|
|
477
|
+
}
|
|
478
|
+
this._checkMarked = false;
|
|
479
|
+
this._resizeSensor = new ResizeSensor(this.elementRef.nativeElement, (event) => {
|
|
480
|
+
this._resizedEvent.emit({ element: this.elementRef.nativeElement, size: event });
|
|
481
|
+
});
|
|
482
|
+
}
|
|
483
|
+
/**
|
|
484
|
+
* Temp fix for: https://github.com/ng-select/ng-select/issues/1122
|
|
485
|
+
*/
|
|
486
|
+
// private _patch_ngSelect_open() {
|
|
487
|
+
// const original = this.ngSelect.open
|
|
488
|
+
// const _self = this
|
|
489
|
+
// this.ngSelect.open = function() {
|
|
490
|
+
// original.apply(this, arguments)
|
|
491
|
+
// _self._patch_ngSelectDropdownPanel_updateDropdownPosition()
|
|
492
|
+
// }
|
|
493
|
+
// }
|
|
494
|
+
/** Should ONLY be called by `_patch_ngSelect_open`. */
|
|
495
|
+
// private _patch_ngSelectDropdownPanel_updateDropdownPosition() {
|
|
496
|
+
// if (!this.ngSelect.dropdownPanel) { return }
|
|
497
|
+
// const drop: any = this.ngSelect.dropdownPanel
|
|
498
|
+
// // Only needed once, to update the position before the timeout in
|
|
499
|
+
// // `updateDropdownPosition()`. So, using this variable to check if I already called
|
|
500
|
+
// // `_updateAppendedDropdownPosition()`.
|
|
501
|
+
// if (!drop.__libPatched) {
|
|
502
|
+
// drop.__libPatched = 'patched'
|
|
503
|
+
// const original = drop.updateDropdownPosition
|
|
504
|
+
// const _self = this
|
|
505
|
+
// drop.updateDropdownPosition = function() {
|
|
506
|
+
// original.apply(this, arguments)
|
|
507
|
+
// if (!!_self.ngSelect.appendTo) {
|
|
508
|
+
// drop._updateAppendedDropdownPosition()
|
|
509
|
+
// }
|
|
510
|
+
// }
|
|
511
|
+
// }
|
|
512
|
+
// }
|
|
513
|
+
_enableKeyPressWorkaround() {
|
|
514
|
+
if (this._keyPressWorkaroundSub) {
|
|
515
|
+
return;
|
|
516
|
+
}
|
|
517
|
+
const _ngSelect = this.ngSelect;
|
|
518
|
+
this._keyPressWorkaroundSub = _ngSelect._keyPress$
|
|
519
|
+
.pipe(takeUntil(this._ngUnsubscribe))
|
|
520
|
+
.pipe(filter(() => !this.ngSelect.searchable))
|
|
521
|
+
.subscribe(() => {
|
|
522
|
+
this._ngZone.runOutsideAngular(() => {
|
|
523
|
+
window.requestAnimationFrame(() => {
|
|
524
|
+
if (this.ngSelect.dropdownPanel) {
|
|
525
|
+
this._markedItem = this.ngSelect.dropdownPanel.markedItem;
|
|
526
|
+
}
|
|
527
|
+
this._checkMarked = true;
|
|
528
|
+
});
|
|
529
|
+
});
|
|
530
|
+
});
|
|
531
|
+
}
|
|
532
|
+
_disableKeyPressWorkaround() {
|
|
533
|
+
if (this._keyPressWorkaroundSub) {
|
|
534
|
+
this._keyPressWorkaroundSub.unsubscribe();
|
|
535
|
+
this._keyPressWorkaroundSub = null;
|
|
536
|
+
}
|
|
537
|
+
}
|
|
538
|
+
}
|
|
539
|
+
NgSelectExtraDirective.decorators = [
|
|
540
|
+
{ type: Directive, args: [{
|
|
541
|
+
// tslint:disable-next-line:directive-selector
|
|
542
|
+
selector: 'ng-select'
|
|
543
|
+
},] }
|
|
544
|
+
];
|
|
545
|
+
NgSelectExtraDirective.ctorParameters = () => [
|
|
546
|
+
{ type: ElementRef },
|
|
547
|
+
{ type: NgZone },
|
|
548
|
+
{ type: NgSelectComponent },
|
|
549
|
+
{ type: NgControl, decorators: [{ type: Optional }, { type: Self }] }
|
|
550
|
+
];
|
|
551
|
+
NgSelectExtraDirective.propDecorators = {
|
|
552
|
+
_tabIndex: [{ type: HostBinding, args: ['attr.tabIndex',] }],
|
|
553
|
+
onFocus: [{ type: HostListener, args: ['focus', ['$event'],] }],
|
|
554
|
+
_isInvalid: [{ type: HostBinding, args: ['class.is-invalid',] }],
|
|
555
|
+
_isEmptyStringValue: [{ type: HostBinding, args: ['class.ng-empty-string-value',] }]
|
|
556
|
+
};
|
|
557
|
+
|
|
558
|
+
class NgxQuillExtraDirective {
|
|
559
|
+
constructor(_elementRef, _quillEditor) {
|
|
560
|
+
this._elementRef = _elementRef;
|
|
561
|
+
this._quillEditor = _quillEditor;
|
|
562
|
+
this._ngUnsubscribe = new Subject();
|
|
563
|
+
this._tabIndex = -1;
|
|
564
|
+
}
|
|
565
|
+
/**
|
|
566
|
+
* Set the tab index to `-1` to allow the root element of the
|
|
567
|
+
* component to receive `focus` event from javascript, but not get focused by
|
|
568
|
+
* keyboard navigation.
|
|
569
|
+
*/
|
|
570
|
+
set tabIndex(value) { this._tabIndex = coerceNumberProperty(value); }
|
|
571
|
+
get tabIndex() { return this._tabIndex; }
|
|
572
|
+
get _attrTabIndex() { return this._quillEditor.disabled ? -1 : (this.tabIndex || 0); }
|
|
573
|
+
ngOnDestroy() {
|
|
574
|
+
this._ngUnsubscribe.next();
|
|
575
|
+
this._ngUnsubscribe.complete();
|
|
576
|
+
}
|
|
577
|
+
ngAfterViewInit() {
|
|
578
|
+
const parent = this._getParentElementForLabelFocusIssue();
|
|
579
|
+
if (parent) {
|
|
580
|
+
// NOTE: This is a hack to avoid an issue letting a label with "for"
|
|
581
|
+
// attribute focus the control.
|
|
582
|
+
fromEvent(parent, 'click').pipe(takeUntil(this._ngUnsubscribe), filter(e => { var _a; return ((_a = e.target) === null || _a === void 0 ? void 0 : _a.getAttribute('for')) === this._elementRef.nativeElement.id; }), tap(() => this._quillEditor.quillEditor.focus())).subscribe();
|
|
583
|
+
}
|
|
584
|
+
}
|
|
585
|
+
_getParentElementForLabelFocusIssue() {
|
|
586
|
+
const findElem = (elem) => {
|
|
587
|
+
if (elem.nodeName.toLowerCase() === 'seam-form-field') {
|
|
588
|
+
return elem;
|
|
589
|
+
}
|
|
590
|
+
if (elem.parentElement) {
|
|
591
|
+
return findElem(elem.parentElement);
|
|
592
|
+
}
|
|
593
|
+
return elem;
|
|
594
|
+
};
|
|
595
|
+
return findElem(this._elementRef.nativeElement);
|
|
596
|
+
}
|
|
597
|
+
}
|
|
598
|
+
NgxQuillExtraDirective.decorators = [
|
|
599
|
+
{ type: Directive, args: [{
|
|
600
|
+
// tslint:disable-next-line:directive-selector
|
|
601
|
+
selector: 'quill-editor'
|
|
602
|
+
},] }
|
|
603
|
+
];
|
|
604
|
+
NgxQuillExtraDirective.ctorParameters = () => [
|
|
605
|
+
{ type: ElementRef },
|
|
606
|
+
{ type: QuillEditorComponent }
|
|
607
|
+
];
|
|
608
|
+
NgxQuillExtraDirective.propDecorators = {
|
|
609
|
+
tabIndex: [{ type: Input }],
|
|
610
|
+
_attrTabIndex: [{ type: HostBinding, args: ['attr.tabindex',] }]
|
|
611
|
+
};
|
|
612
|
+
|
|
613
|
+
class MaskCharsPipe {
|
|
614
|
+
transform(value, replacementChar = '*', ignoreCount = 0, ignoreFrom = 'right') {
|
|
615
|
+
if (ignoreFrom === 'right') {
|
|
616
|
+
const s = value || '';
|
|
617
|
+
return padStart(s.substring(s.length - ignoreCount, s.length), s.length, replacementChar);
|
|
618
|
+
}
|
|
619
|
+
else if (ignoreFrom === 'left') {
|
|
620
|
+
const s = value || '';
|
|
621
|
+
return padEnd(s.substring(0, ignoreCount), s.length, replacementChar);
|
|
622
|
+
}
|
|
623
|
+
return value;
|
|
624
|
+
}
|
|
625
|
+
}
|
|
626
|
+
MaskCharsPipe.decorators = [
|
|
627
|
+
{ type: Pipe, args: [{
|
|
628
|
+
name: 'maskChars'
|
|
629
|
+
},] }
|
|
630
|
+
];
|
|
631
|
+
|
|
632
|
+
class TruncatePipe {
|
|
633
|
+
transform(value, length = 30, appendEllipsis = true) {
|
|
634
|
+
let val = value;
|
|
635
|
+
if (value && typeof value === 'string' && value.length > length) {
|
|
636
|
+
val = value.substr(0, length);
|
|
637
|
+
if (appendEllipsis) {
|
|
638
|
+
val += '...';
|
|
639
|
+
}
|
|
640
|
+
}
|
|
641
|
+
return val;
|
|
642
|
+
}
|
|
643
|
+
}
|
|
644
|
+
TruncatePipe.decorators = [
|
|
645
|
+
{ type: Pipe, args: [{
|
|
646
|
+
name: 'truncate'
|
|
647
|
+
},] }
|
|
648
|
+
];
|
|
649
|
+
|
|
650
|
+
class TheSeamSharedModule {
|
|
651
|
+
}
|
|
652
|
+
TheSeamSharedModule.decorators = [
|
|
653
|
+
{ type: NgModule, args: [{
|
|
654
|
+
imports: [
|
|
655
|
+
CommonModule,
|
|
656
|
+
FontAwesomeModule,
|
|
657
|
+
TheSeamModalModule,
|
|
658
|
+
TheSeamLoadingModule
|
|
659
|
+
],
|
|
660
|
+
declarations: [
|
|
661
|
+
AutoFocusDirective,
|
|
662
|
+
ElemResizedDirective,
|
|
663
|
+
PasswordInputRevealComponent,
|
|
664
|
+
NgSelectExtraDirective,
|
|
665
|
+
HoverClassDirective,
|
|
666
|
+
HoverClassToggleDirective,
|
|
667
|
+
ClickOutsideDirective,
|
|
668
|
+
DisableControlDirective,
|
|
669
|
+
MaskCharsPipe,
|
|
670
|
+
TruncatePipe,
|
|
671
|
+
NgxQuillExtraDirective
|
|
672
|
+
],
|
|
673
|
+
exports: [
|
|
674
|
+
AutoFocusDirective,
|
|
675
|
+
ElemResizedDirective,
|
|
676
|
+
PasswordInputRevealComponent,
|
|
677
|
+
NgSelectExtraDirective,
|
|
678
|
+
HoverClassDirective,
|
|
679
|
+
HoverClassToggleDirective,
|
|
680
|
+
ClickOutsideDirective,
|
|
681
|
+
DisableControlDirective,
|
|
682
|
+
MaskCharsPipe,
|
|
683
|
+
TruncatePipe,
|
|
684
|
+
NgxQuillExtraDirective,
|
|
685
|
+
// Exporting scrollbars here for backwards compatibility for now.
|
|
686
|
+
TheSeamScrollbarModule
|
|
687
|
+
]
|
|
688
|
+
},] }
|
|
689
|
+
];
|
|
690
|
+
|
|
691
|
+
/**
|
|
692
|
+
* Generated bundle index. Do not edit.
|
|
693
|
+
*/
|
|
694
|
+
|
|
695
|
+
export { AutoFocusDirective, ClickOutsideDirective, DisableControlDirective, ElemResizedDirective, HoverClassDirective, HoverClassToggleDirective, MaskCharsPipe, NgSelectExtraDirective, NgxQuillExtraDirective, PasswordInputRevealComponent, TheSeamSharedModule, TruncatePipe };
|
|
696
|
+
//# sourceMappingURL=theseam-ui-common-shared.js.map
|