@theseam/ui-common 0.4.0-beta.5 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/breadcrumbs/breadcrumb.d.ts +1 -1
- package/breadcrumbs/breadcrumbs/breadcrumbs.component.d.ts +1 -3
- package/breadcrumbs/breadcrumbs-resolver.d.ts +1 -1
- package/card/card-body/card-body.component.d.ts +2 -4
- package/card/card-footer/card-footer.component.d.ts +1 -4
- package/card/card-header/card-header.component.d.ts +1 -4
- package/card/card.component.d.ts +1 -4
- package/carousel/carousel-slide.directive.d.ts +8 -0
- package/carousel/carousel.component.d.ts +85 -0
- package/carousel/carousel.module.d.ts +11 -0
- package/carousel/index.d.ts +5 -0
- package/carousel/public-api.d.ts +3 -0
- package/checkbox/checkbox.component.d.ts +2 -4
- package/core/common-behaviors/active.d.ts +2 -2
- package/core/common-behaviors/constructor.d.ts +1 -1
- package/core/common-behaviors/disabled.d.ts +2 -2
- package/core/common-behaviors/initialized.d.ts +2 -2
- package/core/common-behaviors/size.d.ts +1 -1
- package/core/common-behaviors/tabindex.d.ts +1 -1
- package/core/common-behaviors/theme.d.ts +1 -1
- package/data-exporter/data-exporter.d.ts +1 -1
- package/data-filters/data-filter.d.ts +4 -4
- package/data-filters/filters/data-filter-search/search-filter-options.d.ts +1 -1
- package/datatable/datatable-column/datatable-column.component.d.ts +3 -4
- package/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.d.ts +1 -3
- package/datatable/datatable-export-button/datatable-export-button.component.d.ts +1 -3
- package/datatable/datatable-menu-bar/datatable-menu-bar.component.d.ts +2 -5
- package/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.d.ts +1 -4
- package/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.d.ts +1 -4
- package/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.d.ts +1 -4
- package/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.d.ts +1 -4
- package/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.d.ts +1 -3
- package/datatable/directives/datatable-action-menu-item.directive.d.ts +2 -4
- package/datatable/models/preferences.d.ts +1 -1
- package/datatable/models/table-column.d.ts +1 -1
- package/datatable/services/columns-manager.service.d.ts +1 -1
- package/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.d.ts +1 -3
- package/datatable-dynamic/datatable-dynamic-def.d.ts +3 -3
- package/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.d.ts +3 -4
- package/datatable-dynamic/datatable-dynamic-menu-bar-item-manifest.d.ts +1 -1
- package/datatable-dynamic/datatable-dynamic.component.d.ts +1 -4
- package/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.d.ts +3 -4
- package/datatable-dynamic/models/dynamic-datatable-action-menu-record.d.ts +1 -1
- package/dynamic/action/modal/dynamic-action-modal-def.d.ts +1 -1
- package/dynamic/models/dynamic-value-base-type.d.ts +1 -1
- package/dynamic/models/dynamic-value-evaluatable-type.d.ts +1 -1
- package/dynamic/models/dynamic-value-primitive.d.ts +1 -1
- package/dynamic/models/dynamic-value.d.ts +1 -1
- package/dynamic/tokens/api-config.d.ts +1 -1
- package/esm2020/asset-reader/asset-reader-helper.service.mjs +7 -5
- package/esm2020/asset-reader/asset-reader.module.mjs +4 -4
- package/esm2020/asset-reader/encrypted-asset-link.directive.mjs +12 -12
- package/esm2020/breadcrumbs/breadcrumb.mjs +1 -1
- package/esm2020/breadcrumbs/breadcrumbs/breadcrumbs.component.mjs +4 -5
- package/esm2020/breadcrumbs/breadcrumbs-resolver.mjs +1 -1
- package/esm2020/breadcrumbs/breadcrumbs.module.mjs +5 -5
- package/esm2020/breadcrumbs/breadcrumbs.service.mjs +7 -7
- package/esm2020/buttons/badge-button/badge-button.component.mjs +9 -7
- package/esm2020/buttons/button/button.component.mjs +12 -10
- package/esm2020/buttons/buttons.module.mjs +4 -4
- package/esm2020/buttons/progress-circle-button/progress-circle-button.component.mjs +4 -4
- package/esm2020/buttons/toggle-button/toggle-button.component.mjs +7 -7
- package/esm2020/card/card-action/card-action.component.mjs +4 -4
- package/esm2020/card/card-body/card-body.component.mjs +5 -6
- package/esm2020/card/card-footer/card-footer.component.mjs +5 -8
- package/esm2020/card/card-header/card-header.component.mjs +5 -7
- package/esm2020/card/card.component.mjs +5 -7
- package/esm2020/card/card.module.mjs +4 -4
- package/esm2020/carousel/carousel-slide.directive.mjs +16 -0
- package/esm2020/carousel/carousel.component.mjs +211 -0
- package/esm2020/carousel/carousel.module.mjs +38 -0
- package/esm2020/carousel/public-api.mjs +4 -0
- package/esm2020/carousel/theseam-ui-common-carousel.mjs +5 -0
- package/esm2020/checkbox/checkbox.component.mjs +44 -45
- package/esm2020/checkbox/checkbox.module.mjs +4 -4
- package/esm2020/checkbox/testing/checkbox.harness.mjs +1 -1
- package/esm2020/checkbox/testing/index.mjs +1 -1
- package/esm2020/confirm-dialog/confirm-click.directive.mjs +11 -11
- package/esm2020/confirm-dialog/confirm-dialog.component.mjs +3 -3
- package/esm2020/confirm-dialog/confirm-dialog.module.mjs +4 -4
- package/esm2020/confirm-dialog/confirm-dialog.service.mjs +3 -3
- package/esm2020/core/common-behaviors/active.mjs +4 -3
- package/esm2020/core/common-behaviors/disabled.mjs +4 -3
- package/esm2020/core/common-behaviors/initialized.mjs +2 -1
- package/esm2020/core/common-behaviors/size.mjs +6 -6
- package/esm2020/core/common-behaviors/tabindex.mjs +6 -5
- package/esm2020/core/common-behaviors/theme.mjs +6 -6
- package/esm2020/core/input-decorators/input-boolean.decorator.mjs +4 -5
- package/esm2020/core/input-decorators/input-number.decorator.mjs +4 -5
- package/esm2020/data-exporter/data-exporter.module.mjs +4 -4
- package/esm2020/data-exporter/exporters/csv-exporter.mjs +3 -3
- package/esm2020/data-exporter/exporters/xlsx-exporter.mjs +3 -3
- package/esm2020/data-filters/data-filter.mjs +1 -1
- package/esm2020/data-filters/data-filters.module.mjs +4 -4
- package/esm2020/data-filters/filters/data-filter-search/data-filter-search.component.mjs +11 -11
- package/esm2020/data-filters/filters/data-filter-text/data-filter-text.component.mjs +12 -12
- package/esm2020/data-filters/filters/data-filter-toggle-buttons/data-filter-toggle-buttons.component.mjs +18 -15
- package/esm2020/datatable/datatable/datatable.component.mjs +114 -109
- package/esm2020/datatable/datatable-action-menu/datatable-action-menu.component.mjs +3 -3
- package/esm2020/datatable/datatable-action-menu-item/datatable-action-menu-item.component.mjs +5 -4
- package/esm2020/datatable/datatable-column/datatable-column.component.mjs +7 -8
- package/esm2020/datatable/datatable-column-preferences/datatable-column-preferences.component.mjs +3 -3
- package/esm2020/datatable/datatable-column-preferences-button/datatable-column-preferences-button.component.mjs +4 -5
- package/esm2020/datatable/datatable-export-button/datatable-export-button.component.mjs +8 -8
- package/esm2020/datatable/datatable-footer/datatable-footer-tpl.directive.mjs +3 -3
- package/esm2020/datatable/datatable-footer/datatable-footer.directive.mjs +5 -5
- package/esm2020/datatable/datatable-menu-bar/datatable-menu-bar.component.mjs +5 -9
- package/esm2020/datatable/datatable-menu-bar-column-center/datatable-menu-bar-column-center.component.mjs +5 -8
- package/esm2020/datatable/datatable-menu-bar-column-left/datatable-menu-bar-column-left.component.mjs +5 -8
- package/esm2020/datatable/datatable-menu-bar-column-right/datatable-menu-bar-column-right.component.mjs +5 -8
- package/esm2020/datatable/datatable-menu-bar-row/datatable-menu-bar-row.component.mjs +5 -8
- package/esm2020/datatable/datatable-menu-bar-text/datatable-menu-bar-text.component.mjs +4 -5
- package/esm2020/datatable/datatable-row-detail/datatable-row-detail-tpl.directive.mjs +3 -3
- package/esm2020/datatable/datatable-row-detail/datatable-row-detail.directive.mjs +5 -5
- package/esm2020/datatable/datatable.module.mjs +4 -4
- package/esm2020/datatable/directives/datatable-action-menu-item.directive.mjs +5 -6
- package/esm2020/datatable/directives/datatable-action-menu-toggle.directive.mjs +11 -11
- package/esm2020/datatable/directives/datatable-cell-tpl.directive.mjs +3 -3
- package/esm2020/datatable/directives/datatable-filter.directive.mjs +3 -3
- package/esm2020/datatable/directives/datatable-row-action-item.directive.mjs +3 -3
- package/esm2020/datatable/models/columns-alteration.mjs +1 -1
- package/esm2020/datatable/models/columns-alterations/order.columns-alteration.mjs +3 -1
- package/esm2020/datatable/models/datatable-gql-data-source.mjs +1 -1
- package/esm2020/datatable/models/internal-column-props.mjs +1 -1
- package/esm2020/datatable/models/sort-item.mjs +1 -1
- package/esm2020/datatable/services/columns-alterations-manager.service.mjs +4 -4
- package/esm2020/datatable/services/columns-manager.service.mjs +5 -5
- package/esm2020/datatable/services/datatable-column-changes.service.mjs +3 -3
- package/esm2020/datatable/services/datatable-preferences.service.mjs +7 -6
- package/esm2020/datatable/services/datatable-scrollbar-helper.service.mjs +5 -5
- package/esm2020/datatable/utils/map-columns-alterations-states.mjs +4 -1
- package/esm2020/datatable/utils/set-column-defaults.mjs +2 -2
- package/esm2020/datatable-dynamic/datatable-dynamic-action-menu/datatable-dynamic-action-menu.component.mjs +13 -14
- package/esm2020/datatable-dynamic/datatable-dynamic-filter-container/datatable-dynamic-filter-container.component.mjs +8 -8
- package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-content/datatable-dynamic-menu-bar-content.component.mjs +8 -9
- package/esm2020/datatable-dynamic/datatable-dynamic-menu-bar-item-manifest.mjs +1 -1
- package/esm2020/datatable-dynamic/datatable-dynamic.component.mjs +8 -10
- package/esm2020/datatable-dynamic/datatable-dynamic.module.mjs +4 -4
- package/esm2020/datatable-dynamic/directives/datatable-dynamic-action-menu-item.directive.mjs +9 -9
- package/esm2020/datatable-dynamic/dynamic-datatable-def.service.mjs +7 -7
- package/esm2020/datatable-dynamic/dynamic-datatable-row-actions.service.mjs +6 -6
- package/esm2020/dynamic/action/api/dynamic-action-api.service.mjs +11 -8
- package/esm2020/dynamic/action/dynamic-action-helper.service.mjs +6 -5
- package/esm2020/dynamic/action/link/dynamic-action-link.service.mjs +4 -4
- package/esm2020/dynamic/action/modal/dynamic-action-modal-def.mjs +1 -1
- package/esm2020/dynamic/action/modal/dynamic-action-modal.service.mjs +4 -4
- package/esm2020/dynamic/dynamic-value-helper.service.mjs +5 -4
- package/esm2020/dynamic/evaluators/exporters-data-evaluator/exporters-data-evaluator.mjs +4 -4
- package/esm2020/dynamic/evaluators/jexl-evaluator/jexl-evaluator.mjs +5 -5
- package/esm2020/dynamic-component-loader/dynamic-component-loader.module.mjs +4 -4
- package/esm2020/dynamic-component-loader/dynamic-component-loader.service.mjs +9 -9
- package/esm2020/footer-bar/footer-bar/footer-bar.component.mjs +5 -8
- package/esm2020/footer-bar/footer-bar.module.mjs +5 -5
- package/esm2020/form-field/form-field-error.directive.mjs +6 -6
- package/esm2020/form-field/form-field-help-text.directive.mjs +3 -3
- package/esm2020/form-field/form-field-label-tpl.directive.mjs +3 -3
- package/esm2020/form-field/form-field-required-indicator.component.mjs +4 -4
- package/esm2020/form-field/form-field.component.mjs +49 -49
- package/esm2020/form-field/form-field.module.mjs +4 -4
- package/esm2020/form-field/input.directive.mjs +49 -48
- package/esm2020/form-field/testing/form-field-required-indicator.harness.mjs +1 -1
- package/esm2020/form-field/testing/index.mjs +1 -1
- package/esm2020/form-field-error/form-field-error/form-field-error.component.mjs +5 -7
- package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item-tpl.directive.mjs +4 -4
- package/esm2020/form-field-error/form-field-error-list/form-field-error-list-item.directive.mjs +3 -3
- package/esm2020/form-field-error/form-field-error-list/form-field-error-list.component.mjs +96 -96
- package/esm2020/form-field-error/form-field-error.module.mjs +4 -4
- package/esm2020/framework/base-layout/base-layout.component.mjs +7 -6
- package/esm2020/framework/base-layout/base-layout.module.mjs +5 -5
- package/esm2020/framework/base-layout/directives/base-layout-content-footer.directive.mjs +3 -3
- package/esm2020/framework/base-layout/directives/base-layout-content-header.directive.mjs +3 -3
- package/esm2020/framework/base-layout/directives/base-layout-content.directive.mjs +3 -3
- package/esm2020/framework/base-layout/directives/base-layout-nav-toggle.directive.mjs +10 -10
- package/esm2020/framework/base-layout/directives/base-layout-side-bar-footer.directive.mjs +3 -3
- package/esm2020/framework/base-layout/directives/base-layout-side-bar.directive.mjs +3 -3
- package/esm2020/framework/base-layout/directives/base-layout-top-bar.directive.mjs +3 -3
- package/esm2020/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.mjs +5 -7
- package/esm2020/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.mjs +4 -5
- package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widget-portal-outlet.directive.mjs +7 -7
- package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets-preferences.service.mjs +6 -5
- package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.component.mjs +18 -18
- package/esm2020/framework/dashboard/dashboard-widgets/dashboard-widgets.service.mjs +15 -13
- package/esm2020/framework/dashboard/dashboard.component.mjs +5 -5
- package/esm2020/framework/dashboard/dashboard.module.mjs +4 -4
- package/esm2020/framework/dynamic-router/dynamic-route-def.mjs +1 -1
- package/esm2020/framework/dynamic-router/dynamic-router.module.mjs +5 -5
- package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-route-animations.mjs +1 -1
- package/esm2020/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.mjs +5 -6
- package/esm2020/framework/dynamic-router/resolvers/hierarchy-level.resolver.mjs +5 -6
- package/esm2020/framework/schema-form/schema-form-framework.component.mjs +3 -3
- package/esm2020/framework/schema-form/schema-form-framework.mjs +3 -3
- package/esm2020/framework/schema-form/schema-form.module.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-checkbox/schema-form-checkbox.component.mjs +3 -3
- package/esm2020/framework/schema-form-controls/schema-form-controls.module.mjs +4 -4
- package/esm2020/framework/schema-form-controls/schema-form-input/schema-form-input.component.mjs +3 -3
- package/esm2020/framework/schema-form-controls/schema-form-number/schema-form-number.component.mjs +3 -3
- package/esm2020/framework/schema-form-controls/schema-form-select/schema-form-select.component.mjs +3 -3
- package/esm2020/framework/schema-form-controls/schema-form-submit/schema-form-submit.component.mjs +3 -3
- package/esm2020/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.mjs +5 -4
- package/esm2020/framework/side-nav/side-nav-item/side-nav-item.component.mjs +25 -25
- package/esm2020/framework/side-nav/side-nav-toggle/side-nav-toggle.component.mjs +5 -6
- package/esm2020/framework/side-nav/side-nav-utils.mjs +2 -1
- package/esm2020/framework/side-nav/side-nav.component.mjs +19 -20
- package/esm2020/framework/side-nav/side-nav.module.mjs +4 -4
- package/esm2020/framework/side-nav/side-nav.service.mjs +3 -3
- package/esm2020/framework/top-bar/top-bar-item.directive.mjs +3 -3
- package/esm2020/framework/top-bar/top-bar-menu-btn-detail.directive.mjs +3 -3
- package/esm2020/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.mjs +4 -6
- package/esm2020/framework/top-bar/top-bar-menu.directive.mjs +3 -3
- package/esm2020/framework/top-bar/top-bar-title/top-bar-title.component.mjs +5 -7
- package/esm2020/framework/top-bar/top-bar.component.mjs +4 -6
- package/esm2020/framework/top-bar/top-bar.module.mjs +4 -4
- package/esm2020/google-maps/google-maps/google-maps.component.mjs +36 -39
- package/esm2020/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.mjs +103 -0
- package/esm2020/google-maps/google-maps-api-loader/noop-google-maps-api-loader.mjs +25 -0
- package/esm2020/google-maps/google-maps-contextmenu.mjs +9 -8
- package/esm2020/google-maps/google-maps-controls.service.mjs +3 -3
- package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.mjs +24 -25
- package/esm2020/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.directive.mjs +12 -12
- package/esm2020/google-maps/google-maps-recenter-button-control/google-maps-recenter-button-control.component.mjs +9 -9
- package/esm2020/google-maps/google-maps-upload-button-control/google-maps-upload-button-control.component.mjs +9 -9
- package/esm2020/google-maps/google-maps.module.mjs +4 -4
- package/esm2020/google-maps/google-maps.service.mjs +9 -9
- package/esm2020/google-maps/map-control.component.mjs +9 -9
- package/esm2020/google-maps/map-file-drop/map-file-drop.component.mjs +4 -4
- package/esm2020/google-maps/map-value-manager.service.mjs +3 -3
- package/esm2020/google-maps/public-api.mjs +4 -1
- package/esm2020/graphql/datatable/datatable-graphql-query-ref.mjs +5 -31
- package/esm2020/graphql/datatable/datatable-graphql.service.mjs +4 -4
- package/esm2020/graphql/datatable/datatable-helpers.mjs +2 -2
- package/esm2020/graphql/datatable/map-filter-states.mjs +2 -1
- package/esm2020/graphql/utils/inline-variables.mjs +2 -1
- package/esm2020/graphql/utils/parse-hints.mjs +3 -3
- package/esm2020/graphql/utils/to-gql.mjs +3 -3
- package/esm2020/icon/icon/icon.component.mjs +5 -5
- package/esm2020/icon/icon-btn/icon-btn.component.mjs +24 -25
- package/esm2020/icon/icon-notification/icon-notification.component.mjs +3 -3
- package/esm2020/icon/icon.module.mjs +4 -4
- package/esm2020/icon/utils/get-known-icon.mjs +71 -71
- package/esm2020/layout/breakpoint-aliases.mjs +1 -1
- package/esm2020/layout/layout.module.mjs +4 -4
- package/esm2020/layout/layout.service.mjs +3 -3
- package/esm2020/layout/observe-media-query.mjs +1 -1
- package/esm2020/loading/loading/loading.component.mjs +5 -6
- package/esm2020/loading/loading-overlay.service.mjs +3 -3
- package/esm2020/loading/loading.module.mjs +4 -4
- package/esm2020/menu/menu-divider.component.mjs +3 -3
- package/esm2020/menu/menu-footer/menu-footer.component.mjs +3 -3
- package/esm2020/menu/menu-footer-action/menu-footer-action.component.mjs +7 -7
- package/esm2020/menu/menu-header/menu-header.component.mjs +3 -3
- package/esm2020/menu/menu-item.component.mjs +4 -5
- package/esm2020/menu/menu-toggle.directive.mjs +42 -42
- package/esm2020/menu/menu.component.mjs +15 -15
- package/esm2020/menu/menu.module.mjs +4 -4
- package/esm2020/modal/directives/modal-close.directive.mjs +11 -11
- package/esm2020/modal/directives/modal-footer-tpl.directive.mjs +3 -3
- package/esm2020/modal/directives/modal-header-icon-tpl.directive.mjs +3 -3
- package/esm2020/modal/directives/modal-header-title-tpl.directive.mjs +3 -3
- package/esm2020/modal/directives/modal-title.directive.mjs +3 -3
- package/esm2020/modal/directives/modal.directive.mjs +5 -5
- package/esm2020/modal/modal/modal.component.mjs +20 -21
- package/esm2020/modal/modal-body/modal-body.component.mjs +5 -7
- package/esm2020/modal/modal-config.mjs +1 -1
- package/esm2020/modal/modal-container/modal-container.component.mjs +12 -12
- package/esm2020/modal/modal-footer/modal-footer.component.mjs +5 -7
- package/esm2020/modal/modal-header/modal-header.component.mjs +5 -7
- package/esm2020/modal/modal-ref.mjs +1 -1
- package/esm2020/modal/modal.module.mjs +4 -4
- package/esm2020/modal/modal.service.mjs +38 -35
- package/esm2020/modal/route-modal/route-modal.component.mjs +4 -5
- package/esm2020/popover/popover/popover.component.mjs +18 -18
- package/esm2020/popover/popover.directive.mjs +32 -32
- package/esm2020/popover/popover.module.mjs +5 -5
- package/esm2020/progress/progress-circle/progress-circle.component.mjs +5 -5
- package/esm2020/progress/progress.module.mjs +4 -4
- package/esm2020/scrollbar/overlay-scrollbar.directive.mjs +10 -11
- package/esm2020/scrollbar/overlay-scrollbars.service.mjs +4 -4
- package/esm2020/scrollbar/scrollbar.module.mjs +4 -4
- package/esm2020/services/asset-loader.service.mjs +5 -6
- package/esm2020/services/font-loader.service.mjs +5 -6
- package/esm2020/services/router-helpers.service.mjs +3 -3
- package/esm2020/shared/components/password-input-reveal/password-input-reveal.component.mjs +3 -3
- package/esm2020/shared/directives/auto-focus.directive.mjs +3 -3
- package/esm2020/shared/directives/click-outside.directive.mjs +9 -9
- package/esm2020/shared/directives/disable-control.directive.mjs +7 -7
- package/esm2020/shared/directives/elem-resized.directive.mjs +5 -5
- package/esm2020/shared/directives/hover-class-toggle.directive.mjs +10 -10
- package/esm2020/shared/directives/hover-class.directive.mjs +9 -9
- package/esm2020/shared/directives/ng-select-extra.directive.mjs +29 -29
- package/esm2020/shared/directives/ngx-quill-extra.directive.mjs +11 -11
- package/esm2020/shared/pipes/mask-chars.pipe.mjs +3 -3
- package/esm2020/shared/pipes/truncate.pipe.mjs +3 -3
- package/esm2020/shared/shared.module.mjs +4 -4
- package/esm2020/storage/local-storage.service.mjs +8 -8
- package/esm2020/storage/localstorage-memory.mjs +4 -4
- package/esm2020/story-helpers/arg-type-helpers.mjs +1 -1
- package/esm2020/story-helpers/initial-route.service.mjs +3 -3
- package/esm2020/story-helpers/on-story-bootstrapped-trigger.mjs +2 -1
- package/esm2020/story-helpers/public-api.mjs +2 -2
- package/esm2020/story-helpers/story-empty-with-route.component.mjs +3 -3
- package/esm2020/story-helpers/story-empty.component.mjs +3 -3
- package/esm2020/story-helpers/story-helper-components.module.mjs +4 -4
- package/esm2020/story-helpers/story-initial-route.mjs +4 -4
- package/esm2020/story-helpers/story-modal-container.component.mjs +6 -6
- package/esm2020/story-helpers/story-toastr.service.mjs +3 -3
- package/esm2020/tabbed/directives/tabbed-tab-content.directive.mjs +5 -5
- package/esm2020/tabbed/directives/tabbed-tab.directive.mjs +5 -4
- package/esm2020/tabbed/tabbed-content/tabbed-content.component.mjs +5 -7
- package/esm2020/tabbed/tabbed-item/tabbed-item.component.mjs +5 -6
- package/esm2020/tabbed/tabbed.component.mjs +13 -13
- package/esm2020/tabbed/tabbed.module.mjs +4 -4
- package/esm2020/tabbed/tabbed.service.mjs +5 -5
- package/esm2020/table/table/table.component.mjs +12 -13
- package/esm2020/table/table.module.mjs +4 -4
- package/esm2020/table-cell-type/services/table-cell-types-helpers.service.mjs +5 -5
- package/esm2020/table-cell-type/table-cell-type-export-props.mjs +1 -1
- package/esm2020/table-cell-type/table-cell-type-models.mjs +1 -1
- package/esm2020/table-cell-type/table-cell-type-selector.component.mjs +5 -6
- package/esm2020/table-cell-type/table-cell-type.module.mjs +4 -4
- package/esm2020/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.mjs +12 -12
- package/esm2020/table-cell-types/table-cell-type-date/table-cell-type-date.component.mjs +8 -12
- package/esm2020/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.mjs +14 -14
- package/esm2020/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.mjs +37 -37
- package/esm2020/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.mjs +14 -14
- package/esm2020/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.mjs +8 -9
- package/esm2020/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.mjs +11 -10
- package/esm2020/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.mjs +7 -8
- package/esm2020/table-cell-types/table-cell-type-string/table-cell-type-string.component.mjs +30 -27
- package/esm2020/table-cell-types/table-cell-types.module.mjs +4 -4
- package/esm2020/tel-input/intl-tel-input.mjs +2 -2
- package/esm2020/tel-input/phone-number.pipe.mjs +3 -3
- package/esm2020/tel-input/tel-input/tel-input.component.mjs +35 -36
- package/esm2020/tel-input/tel-input.directive.mjs +18 -18
- package/esm2020/tel-input/tel-input.module.mjs +4 -4
- package/esm2020/tel-input/utils/add-country-code.mjs +4 -4
- package/esm2020/tel-input/utils/process-country-codes.mjs +4 -7
- package/esm2020/testing/story-expect.mjs +2 -1
- package/esm2020/tiled-select/components/tiled-select/tiled-select.component.mjs +21 -22
- package/esm2020/tiled-select/components/tiled-select-tile/tiled-select-tile.component.mjs +6 -7
- package/esm2020/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.mjs +6 -7
- package/esm2020/tiled-select/directives/tiled-select-tile-icon-tpl.directive.mjs +3 -3
- package/esm2020/tiled-select/directives/tiled-select-tile-label-tpl.directive.mjs +3 -3
- package/esm2020/tiled-select/directives/tiled-select-tile-overlay.directive.mjs +3 -3
- package/esm2020/tiled-select/testing/index.mjs +1 -1
- package/esm2020/tiled-select/tiled-select.module.mjs +4 -4
- package/esm2020/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.mjs +5 -8
- package/esm2020/toggle-edit/toggle-edit-display-tpl.directive.mjs +3 -3
- package/esm2020/toggle-edit/toggle-edit-keyboard-listener.service.mjs +3 -3
- package/esm2020/toggle-edit/toggle-edit.component.mjs +19 -19
- package/esm2020/toggle-edit/toggle-edit.module.mjs +4 -4
- package/esm2020/toggle-group/toggle-group-option.directive.mjs +12 -12
- package/esm2020/toggle-group/toggle-group.directive.mjs +6 -6
- package/esm2020/toggle-group/toggle-group.module.mjs +4 -4
- package/esm2020/unsaved-changes-dialog/unsaved-changes-can-deactivate.mjs +5 -5
- package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.component.mjs +5 -8
- package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.guard.mjs +5 -4
- package/esm2020/unsaved-changes-dialog/unsaved-changes-dialog.module.mjs +4 -4
- package/esm2020/utils/array-move.mjs +1 -1
- package/esm2020/utils/cdk/get-closest-widget-cdk-drag.mjs +3 -3
- package/esm2020/utils/file-utils.mjs +2 -2
- package/esm2020/utils/form/get-control-path.mjs +6 -5
- package/esm2020/utils/geo-json/geo-json-to-area.mjs +3 -3
- package/esm2020/utils/geo-json/is-only-geometry-types.validator.mjs +1 -1
- package/esm2020/utils/geo-json/min-max-points.validator.mjs +5 -5
- package/esm2020/utils/geo-json/read-geo-file.mjs +3 -2
- package/esm2020/utils/has-property.mjs +2 -2
- package/esm2020/utils/load-style-sheet.mjs +2 -2
- package/esm2020/utils/load-style.mjs +2 -2
- package/esm2020/utils/obj-utils.mjs +2 -2
- package/esm2020/utils/polling-ticker.mjs +2 -2
- package/esm2020/utils/router/operators/activated-routes-with-data-property.mjs +2 -2
- package/esm2020/utils/router/route-snapshot-path-full.mjs +2 -2
- package/esm2020/utils/router/route-snapshot-path-relative.mjs +2 -2
- package/esm2020/utils/router/will-have-data-prop.mjs +3 -3
- package/esm2020/utils/subscriber-count.mjs +2 -1
- package/esm2020/utils/toggle-attribute.mjs +6 -5
- package/esm2020/utils/wait-on-condition-async.mjs +5 -5
- package/esm2020/vertical-list-filter/public-api.mjs +3 -0
- package/esm2020/vertical-list-filter/testing/index.mjs +2 -0
- package/esm2020/vertical-list-filter/testing/vertical-list-filter.harness.mjs +28 -0
- package/esm2020/vertical-list-filter/theseam-ui-common-vertical-list-filter.mjs +5 -0
- package/esm2020/vertical-list-filter/vertical-list-filter.component.mjs +52 -0
- package/esm2020/viewers/html-template-viewer/html-template-viewer.component.mjs +37 -37
- package/esm2020/viewers/html-template-viewer/html-template-viewer.module.mjs +4 -4
- package/esm2020/viewers/pdf-viewer/pdf-page/pdf-page.component.mjs +11 -10
- package/esm2020/viewers/pdf-viewer/pdf-renderer.service.mjs +4 -4
- package/esm2020/viewers/pdf-viewer/pdf-viewer.component.mjs +39 -38
- package/esm2020/viewers/pdf-viewer/pdf-viewer.module.mjs +4 -4
- package/esm2020/widget/directives/widget-drag-handle.directive.mjs +15 -15
- package/esm2020/widget/directives/widget-icon-tpl.directive.mjs +3 -3
- package/esm2020/widget/directives/widget-title-tpl.directive.mjs +3 -3
- package/esm2020/widget/widget/widget.component.mjs +3 -3
- package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.component.mjs +5 -8
- package/esm2020/widget/widget-content-components/widget-button-group/widget-button-group.module.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.component.mjs +5 -8
- package/esm2020/widget/widget-content-components/widget-content-header/widget-content-header.module.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-description/widget-description.component.mjs +3 -3
- package/esm2020/widget/widget-content-components/widget-description/widget-description.module.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.component.mjs +9 -10
- package/esm2020/widget/widget-content-components/widget-empty-label/widget-empty-label.module.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.component.mjs +5 -7
- package/esm2020/widget/widget-content-components/widget-footer-link/widget-footer-link.module.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.component.mjs +5 -8
- package/esm2020/widget/widget-content-components/widget-footer-text/widget-footer-text.module.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.component.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-header-badge/widget-header-badge.module.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item-icon-tpl.directive.mjs +3 -3
- package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.mjs +16 -19
- package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.component.mjs +5 -7
- package/esm2020/widget/widget-content-components/widget-list-group/widget-list-group.module.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-table/widget-table.component.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-table/widget-table.module.mjs +4 -4
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.mjs +6 -9
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.mjs +9 -10
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.mjs +5 -8
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile-secondary-icon.directive.mjs +5 -5
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile.component.mjs +17 -16
- package/esm2020/widget/widget-content-components/widget-tile/widget-tile.module.mjs +10 -10
- package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.component.mjs +5 -8
- package/esm2020/widget/widget-content-components/widget-tile-list/widget-tile-list.module.mjs +4 -4
- package/esm2020/widget/widget-footer/widget-footer.component.mjs +5 -7
- package/esm2020/widget/widget-registry.service.mjs +6 -5
- package/esm2020/widget/widget.module.mjs +7 -7
- package/fesm2015/theseam-ui-common-asset-reader.mjs +21 -19
- package/fesm2015/theseam-ui-common-asset-reader.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-breadcrumbs.mjs +13 -14
- package/fesm2015/theseam-ui-common-breadcrumbs.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-buttons.mjs +32 -28
- package/fesm2015/theseam-ui-common-buttons.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-card.mjs +23 -31
- package/fesm2015/theseam-ui-common-card.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-carousel.mjs +265 -0
- package/fesm2015/theseam-ui-common-carousel.mjs.map +1 -0
- package/fesm2015/theseam-ui-common-checkbox.mjs +47 -48
- package/fesm2015/theseam-ui-common-checkbox.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-confirm-dialog.mjs +20 -20
- package/fesm2015/theseam-ui-common-confirm-dialog.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-core.mjs +28 -26
- package/fesm2015/theseam-ui-common-core.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-data-exporter.mjs +10 -10
- package/fesm2015/theseam-ui-common-data-filters.mjs +42 -39
- package/fesm2015/theseam-ui-common-data-filters.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-datatable-dynamic.mjs +55 -59
- package/fesm2015/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-datatable.mjs +229 -237
- package/fesm2015/theseam-ui-common-datatable.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs +12 -12
- package/fesm2015/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-dynamic.mjs +36 -26
- package/fesm2015/theseam-ui-common-dynamic.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-footer-bar.mjs +8 -11
- package/fesm2015/theseam-ui-common-footer-bar.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-form-field-error.mjs +109 -111
- package/fesm2015/theseam-ui-common-form-field-error.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-form-field.mjs +114 -113
- package/fesm2015/theseam-ui-common-form-field.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-framework.mjs +216 -223
- package/fesm2015/theseam-ui-common-framework.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-google-maps.mjs +246 -126
- package/fesm2015/theseam-ui-common-google-maps.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-graphql.mjs +14 -38
- package/fesm2015/theseam-ui-common-graphql.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-icon.mjs +104 -105
- package/fesm2015/theseam-ui-common-icon.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-layout.mjs +7 -7
- package/fesm2015/theseam-ui-common-layout.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-loading.mjs +11 -12
- package/fesm2015/theseam-ui-common-loading.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-menu.mjs +79 -80
- package/fesm2015/theseam-ui-common-menu.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-modal.mjs +112 -117
- package/fesm2015/theseam-ui-common-modal.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-popover.mjs +52 -52
- package/fesm2015/theseam-ui-common-popover.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-progress.mjs +8 -8
- package/fesm2015/theseam-ui-common-progress.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-scrollbar.mjs +16 -17
- package/fesm2015/theseam-ui-common-scrollbar.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-services.mjs +11 -13
- package/fesm2015/theseam-ui-common-services.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-shared.mjs +89 -89
- package/fesm2015/theseam-ui-common-shared.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-storage.mjs +10 -10
- package/fesm2015/theseam-ui-common-storage.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-story-helpers.mjs +27 -102
- package/fesm2015/theseam-ui-common-story-helpers.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-tabbed.mjs +36 -38
- package/fesm2015/theseam-ui-common-tabbed.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-table-cell-type.mjs +12 -13
- package/fesm2015/theseam-ui-common-table-cell-type.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-table-cell-types.mjs +136 -138
- package/fesm2015/theseam-ui-common-table-cell-types.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-table.mjs +15 -16
- package/fesm2015/theseam-ui-common-table.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-tel-input.mjs +67 -71
- package/fesm2015/theseam-ui-common-tel-input.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-testing.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-tiled-select.mjs +43 -46
- package/fesm2015/theseam-ui-common-tiled-select.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-toggle-edit.mjs +32 -35
- package/fesm2015/theseam-ui-common-toggle-edit.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-toggle-group.mjs +20 -20
- package/fesm2015/theseam-ui-common-toggle-group.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs +16 -18
- package/fesm2015/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-utils.mjs +36 -32
- package/fesm2015/theseam-ui-common-utils.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-vertical-list-filter.mjs +96 -0
- package/fesm2015/theseam-ui-common-vertical-list-filter.mjs.map +1 -0
- package/fesm2015/theseam-ui-common-viewers.mjs +95 -93
- package/fesm2015/theseam-ui-common-viewers.mjs.map +1 -1
- package/fesm2015/theseam-ui-common-widget.mjs +182 -209
- package/fesm2015/theseam-ui-common-widget.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-asset-reader.mjs +21 -19
- package/fesm2020/theseam-ui-common-asset-reader.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-breadcrumbs.mjs +13 -14
- package/fesm2020/theseam-ui-common-breadcrumbs.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-buttons.mjs +32 -28
- package/fesm2020/theseam-ui-common-buttons.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-card.mjs +23 -31
- package/fesm2020/theseam-ui-common-card.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-carousel.mjs +265 -0
- package/fesm2020/theseam-ui-common-carousel.mjs.map +1 -0
- package/fesm2020/theseam-ui-common-checkbox.mjs +47 -48
- package/fesm2020/theseam-ui-common-checkbox.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-confirm-dialog.mjs +20 -20
- package/fesm2020/theseam-ui-common-confirm-dialog.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-core.mjs +28 -26
- package/fesm2020/theseam-ui-common-core.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-data-exporter.mjs +10 -10
- package/fesm2020/theseam-ui-common-data-filters.mjs +42 -39
- package/fesm2020/theseam-ui-common-data-filters.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-datatable-dynamic.mjs +55 -59
- package/fesm2020/theseam-ui-common-datatable-dynamic.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-datatable.mjs +229 -237
- package/fesm2020/theseam-ui-common-datatable.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs +12 -12
- package/fesm2020/theseam-ui-common-dynamic-component-loader.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-dynamic.mjs +36 -26
- package/fesm2020/theseam-ui-common-dynamic.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-footer-bar.mjs +8 -11
- package/fesm2020/theseam-ui-common-footer-bar.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-form-field-error.mjs +109 -111
- package/fesm2020/theseam-ui-common-form-field-error.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-form-field.mjs +114 -113
- package/fesm2020/theseam-ui-common-form-field.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-framework.mjs +216 -223
- package/fesm2020/theseam-ui-common-framework.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-google-maps.mjs +243 -126
- package/fesm2020/theseam-ui-common-google-maps.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-graphql.mjs +14 -38
- package/fesm2020/theseam-ui-common-graphql.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-icon.mjs +104 -105
- package/fesm2020/theseam-ui-common-icon.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-layout.mjs +16 -8
- package/fesm2020/theseam-ui-common-layout.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-loading.mjs +11 -12
- package/fesm2020/theseam-ui-common-loading.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-menu.mjs +77 -78
- package/fesm2020/theseam-ui-common-menu.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-modal.mjs +112 -117
- package/fesm2020/theseam-ui-common-modal.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-models.mjs +2 -1
- package/fesm2020/theseam-ui-common-models.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-popover.mjs +52 -52
- package/fesm2020/theseam-ui-common-popover.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-progress.mjs +8 -8
- package/fesm2020/theseam-ui-common-progress.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-scrollbar.mjs +16 -17
- package/fesm2020/theseam-ui-common-scrollbar.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-services.mjs +11 -13
- package/fesm2020/theseam-ui-common-services.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-shared.mjs +89 -89
- package/fesm2020/theseam-ui-common-shared.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-storage.mjs +10 -10
- package/fesm2020/theseam-ui-common-storage.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-story-helpers.mjs +27 -98
- package/fesm2020/theseam-ui-common-story-helpers.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-tabbed.mjs +36 -38
- package/fesm2020/theseam-ui-common-tabbed.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-table-cell-type.mjs +12 -13
- package/fesm2020/theseam-ui-common-table-cell-type.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-table-cell-types.mjs +136 -138
- package/fesm2020/theseam-ui-common-table-cell-types.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-table.mjs +15 -16
- package/fesm2020/theseam-ui-common-table.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-tel-input.mjs +65 -69
- package/fesm2020/theseam-ui-common-tel-input.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-testing.mjs +1 -0
- package/fesm2020/theseam-ui-common-testing.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-tiled-select.mjs +43 -46
- package/fesm2020/theseam-ui-common-tiled-select.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-toggle-edit.mjs +32 -35
- package/fesm2020/theseam-ui-common-toggle-edit.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-toggle-group.mjs +20 -20
- package/fesm2020/theseam-ui-common-toggle-group.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs +16 -18
- package/fesm2020/theseam-ui-common-unsaved-changes-dialog.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-utils.mjs +36 -32
- package/fesm2020/theseam-ui-common-utils.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-vertical-list-filter.mjs +87 -0
- package/fesm2020/theseam-ui-common-vertical-list-filter.mjs.map +1 -0
- package/fesm2020/theseam-ui-common-viewers.mjs +95 -93
- package/fesm2020/theseam-ui-common-viewers.mjs.map +1 -1
- package/fesm2020/theseam-ui-common-widget.mjs +182 -209
- package/fesm2020/theseam-ui-common-widget.mjs.map +1 -1
- package/footer-bar/footer-bar/footer-bar.component.d.ts +1 -4
- package/form-field-error/form-field-error/form-field-error.component.d.ts +1 -4
- package/form-field-error/form-field-error-list/form-field-error-list.component.d.ts +2 -3
- package/framework/base-layout/base-layout-action.d.ts +1 -1
- package/framework/dashboard/dashboard-widget-container/dashboard-widget-container.component.d.ts +2 -4
- package/framework/dashboard/dashboard-widget-template-container/dashboard-widget-template-container.component.d.ts +2 -3
- package/framework/dashboard/dashboard.component.d.ts +0 -1
- package/framework/dynamic-router/hierarchy-router-outlet/hierarchy-router-outlet.component.d.ts +2 -3
- package/framework/dynamic-router/resolvers/hierarchy-level.resolver.d.ts +0 -1
- package/framework/schema-form-controls/schema-form-submit-split/schema-form-submit-split.component.d.ts +1 -1
- package/framework/side-nav/side-nav-toggle/side-nav-toggle.component.d.ts +2 -4
- package/framework/side-nav/side-nav.models.d.ts +1 -1
- package/framework/top-bar/top-bar-menu-button/top-bar-menu-button.component.d.ts +3 -5
- package/framework/top-bar/top-bar-title/top-bar-title.component.d.ts +1 -4
- package/framework/top-bar/top-bar.component.d.ts +2 -4
- package/google-maps/google-maps/google-maps.component.d.ts +3 -6
- package/google-maps/google-maps-api-loader/lazy-google-maps-api-loader.d.ts +73 -0
- package/google-maps/google-maps-api-loader/noop-google-maps-api-loader.d.ts +13 -0
- package/google-maps/google-maps-places-autocomplete/google-maps-places-autocomplete.component.d.ts +2 -3
- package/google-maps/map-value-manager.service.d.ts +1 -1
- package/google-maps/public-api.d.ts +3 -0
- package/graphql/datatable/datatable-graphql-query-ref.d.ts +2 -3
- package/graphql/datatable/datatable-graphql.service.d.ts +1 -1
- package/graphql/datatable/datatable-helpers.d.ts +2 -2
- package/graphql/datatable/map-filter-states.d.ts +2 -2
- package/graphql/datatable/map-page-info.d.ts +1 -1
- package/graphql/datatable/mapper-context.d.ts +1 -1
- package/graphql/models/gql-datatable-accessor.d.ts +1 -1
- package/graphql/models/hint-transformer.d.ts +1 -1
- package/icon/icon/icon.component.d.ts +1 -1
- package/icon/icon-btn/icon-btn.component.d.ts +2 -3
- package/icon/icon.d.ts +1 -1
- package/layout/breakpoint-aliases.d.ts +1 -1
- package/loading/loading/loading.component.d.ts +1 -4
- package/loading/loading.models.d.ts +1 -1
- package/menu/menu-item.component.d.ts +2 -3
- package/modal/modal/modal.component.d.ts +3 -4
- package/modal/modal-body/modal-body.component.d.ts +1 -4
- package/modal/modal-config.d.ts +1 -1
- package/modal/modal-footer/modal-footer.component.d.ts +1 -4
- package/modal/modal-header/modal-header.component.d.ts +1 -4
- package/modal/route-modal/route-modal.component.d.ts +2 -3
- package/models/component-type.d.ts +1 -1
- package/models/size-prefixes.d.ts +1 -1
- package/models/size-types.d.ts +1 -1
- package/models/theme-prefixes.d.ts +1 -1
- package/models/theme-types.d.ts +2 -2
- package/package.json +17 -1
- package/progress/progress-circle/progress-circle.component.d.ts +0 -1
- package/scrollbar/overlay-scrollbar.directive.d.ts +2 -3
- package/scrollbar/overlay-scrollbars-config-model.d.ts +1 -1
- package/services/asset-loader.service.d.ts +0 -1
- package/services/font-loader.service.d.ts +1 -2
- package/story-helpers/public-api.d.ts +0 -1
- package/tabbed/directives/tabbed-tab-content.directive.d.ts +0 -1
- package/tabbed/tabbed-content/tabbed-content.component.d.ts +1 -4
- package/tabbed/tabbed-item/tabbed-item.component.d.ts +2 -4
- package/tabbed/tabbed.service.d.ts +0 -1
- package/table/table/table.component.d.ts +3 -4
- package/table-cell-type/table-cell-type-models.d.ts +4 -4
- package/table-cell-type/table-cell-type-name.d.ts +1 -1
- package/table-cell-type/table-cell-type-selector.component.d.ts +3 -4
- package/table-cell-types/table-cell-type-currency/table-cell-type-currency-config.d.ts +1 -1
- package/table-cell-types/table-cell-type-currency/table-cell-type-currency.component.d.ts +2 -3
- package/table-cell-types/table-cell-type-currency/table-cell-type-currency.d.ts +1 -1
- package/table-cell-types/table-cell-type-date/table-cell-type-date.component.d.ts +2 -3
- package/table-cell-types/table-cell-type-date/table-cell-type-date.d.ts +1 -1
- package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal-config.d.ts +1 -1
- package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.component.d.ts +2 -3
- package/table-cell-types/table-cell-type-decimal/table-cell-type-decimal.d.ts +1 -1
- package/table-cell-types/table-cell-type-icon/table-cell-type-icon-config.d.ts +1 -1
- package/table-cell-types/table-cell-type-icon/table-cell-type-icon.component.d.ts +3 -4
- package/table-cell-types/table-cell-type-integer/table-cell-type-integer-config.d.ts +1 -1
- package/table-cell-types/table-cell-type-integer/table-cell-type-integer.component.d.ts +2 -3
- package/table-cell-types/table-cell-type-integer/table-cell-type-integer.d.ts +1 -1
- package/table-cell-types/table-cell-type-phone/table-cell-type-phone.component.d.ts +2 -3
- package/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle-config.d.ts +1 -1
- package/table-cell-types/table-cell-type-progress-circle/table-cell-type-progress-circle.component.d.ts +2 -3
- package/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon-config.d.ts +1 -1
- package/table-cell-types/table-cell-type-progress-circle-icon/table-cell-type-progress-circle-icon.component.d.ts +2 -3
- package/table-cell-types/table-cell-type-string/table-cell-type-string-config.d.ts +1 -1
- package/table-cell-types/table-cell-type-string/table-cell-type-string.component.d.ts +1 -1
- package/tel-input/utils/coerce-phone-number-format.d.ts +1 -1
- package/tiled-select/components/tiled-select/tiled-select.component.d.ts +3 -4
- package/tiled-select/components/tiled-select-tile-icon/tiled-select-tile-icon.component.d.ts +1 -4
- package/tiled-select/tiled-select.models.d.ts +2 -2
- package/toggle-edit/toggle-edit-actions-container/toggle-edit-actions-container.component.d.ts +1 -4
- package/toggle-group/toggle-group.directive.d.ts +0 -1
- package/unsaved-changes-dialog/unsaved-changes-dialog.component.d.ts +1 -4
- package/utils/obj-utils.d.ts +2 -2
- package/utils/polling-ticker.d.ts +1 -1
- package/utils/subscriber-count.d.ts +1 -1
- package/vertical-list-filter/index.d.ts +5 -0
- package/vertical-list-filter/public-api.d.ts +2 -0
- package/vertical-list-filter/testing/index.d.ts +1 -0
- package/vertical-list-filter/testing/vertical-list-filter.harness.d.ts +9 -0
- package/vertical-list-filter/vertical-list-filter.component.d.ts +17 -0
- package/widget/directives/widget-drag-handle.directive.d.ts +1 -1
- package/widget/widget-content-components/widget-button-group/widget-button-group.component.d.ts +1 -4
- package/widget/widget-content-components/widget-content-header/widget-content-header.component.d.ts +1 -4
- package/widget/widget-content-components/widget-empty-label/widget-empty-label.component.d.ts +2 -3
- package/widget/widget-content-components/widget-footer-link/widget-footer-link.component.d.ts +1 -4
- package/widget/widget-content-components/widget-footer-text/widget-footer-text.component.d.ts +1 -4
- package/widget/widget-content-components/widget-header-badge/widget-header-badge.component.d.ts +2 -3
- package/widget/widget-content-components/widget-list-group/widget-list-group-item/widget-list-group-item.component.d.ts +4 -7
- package/widget/widget-content-components/widget-list-group/widget-list-group.component.d.ts +1 -4
- package/widget/widget-content-components/widget-table/widget-table.component.d.ts +0 -1
- package/widget/widget-content-components/widget-tile/widget-tile-footer/widget-tile-footer.component.d.ts +1 -4
- package/widget/widget-content-components/widget-tile/widget-tile-footer-item/widget-tile-footer-item.component.d.ts +2 -3
- package/widget/widget-content-components/widget-tile/widget-tile-group/widget-tile-group.component.d.ts +1 -4
- package/widget/widget-content-components/widget-tile-list/widget-tile-list.component.d.ts +1 -4
- package/widget/widget-footer/widget-footer.component.d.ts +1 -4
- package/esm2020/story-helpers/args-to-tpl.mjs +0 -72
- package/story-helpers/args-to-tpl.d.ts +0 -24
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import { __decorate } from "tslib";
|
|
2
|
+
import { animate, style, transition, trigger } from '@angular/animations';
|
|
3
|
+
import { Component, ContentChildren, Input } from '@angular/core';
|
|
4
|
+
import { BehaviorSubject, combineLatest, interval, Subject } from 'rxjs';
|
|
5
|
+
import { filter, map, startWith, switchMap, take, takeUntil, tap } from 'rxjs/operators';
|
|
6
|
+
import { faAngleLeft, faAngleRight, faPause, faPlay } from '@fortawesome/free-solid-svg-icons';
|
|
7
|
+
import { InputBoolean, InputNumber } from '@theseam/ui-common/core';
|
|
8
|
+
import { notNullOrUndefined } from '@theseam/ui-common/utils';
|
|
9
|
+
import { TheSeamCarouselSlideDirective } from './carousel-slide.directive';
|
|
10
|
+
import * as i0 from "@angular/core";
|
|
11
|
+
import * as i1 from "@angular/common";
|
|
12
|
+
import * as i2 from "@theseam/ui-common/icon";
|
|
13
|
+
import * as i3 from "@theseam/ui-common/buttons";
|
|
14
|
+
export class TheSeamCarouselComponent {
|
|
15
|
+
get slides() {
|
|
16
|
+
return this._slides.value;
|
|
17
|
+
}
|
|
18
|
+
set slides(value) {
|
|
19
|
+
// Check if slides were added or removed that would make the active index not exist.
|
|
20
|
+
const count = value?.length || 0;
|
|
21
|
+
const maxIdx = count >= 0 ? count - 1 : 0;
|
|
22
|
+
const activeIdx = this._pollActiveIndex.value;
|
|
23
|
+
if (activeIdx > maxIdx) {
|
|
24
|
+
this._pollActiveIndex.next(maxIdx);
|
|
25
|
+
}
|
|
26
|
+
else if (count > 0 && activeIdx < 0) {
|
|
27
|
+
this._pollActiveIndex.next(0);
|
|
28
|
+
}
|
|
29
|
+
this._slides.next(value);
|
|
30
|
+
}
|
|
31
|
+
constructor() {
|
|
32
|
+
this.faAngleRight = faAngleRight;
|
|
33
|
+
this.faAngleLeft = faAngleLeft;
|
|
34
|
+
this.faPause = faPause;
|
|
35
|
+
this.faPlay = faPlay;
|
|
36
|
+
/**
|
|
37
|
+
* Duration in ms that slide is displayed before paging.
|
|
38
|
+
* Only applicable when `autoPlay === true`.
|
|
39
|
+
* Defaults to 10000ms.
|
|
40
|
+
*/
|
|
41
|
+
this.slideInterval = 10000;
|
|
42
|
+
/**
|
|
43
|
+
* When `true`, carousel will page automatically.
|
|
44
|
+
* Defaults to `true`.
|
|
45
|
+
*/
|
|
46
|
+
this.autoPlay = true;
|
|
47
|
+
/**
|
|
48
|
+
* When `true`, will pause automatic paging when user mouses over carousel.
|
|
49
|
+
* Timer will restart when user mouses out.
|
|
50
|
+
* Only applicable when `autoPlay === true`.
|
|
51
|
+
* Defaults to `true`.
|
|
52
|
+
*/
|
|
53
|
+
this.pauseOnHover = true;
|
|
54
|
+
/**
|
|
55
|
+
* When `true`, will pause automatic paging when user focuses in on item in carousel.
|
|
56
|
+
* Timer will restart when user focuses out.
|
|
57
|
+
* Only applicable when `autoPlay === true`.
|
|
58
|
+
* Defaults to `true`.
|
|
59
|
+
*/
|
|
60
|
+
this.pauseOnFocus = true;
|
|
61
|
+
/**
|
|
62
|
+
* When `true`, will show pager row at the bottom of the carousel with clickable buttons to navigate directly to a page.
|
|
63
|
+
* Defaults to `true`.
|
|
64
|
+
*/
|
|
65
|
+
this.showPager = true;
|
|
66
|
+
/**
|
|
67
|
+
* When `true`, will show left and right nav button on either side of the carousel to navigate through pages.
|
|
68
|
+
* Defaults to `true`.
|
|
69
|
+
*/
|
|
70
|
+
this.showNavButtons = true;
|
|
71
|
+
/**
|
|
72
|
+
* When `true`, will show pause/play button to stop/restart automatic paging.
|
|
73
|
+
* Defaults to `true`.
|
|
74
|
+
*/
|
|
75
|
+
this.showPauseButton = true;
|
|
76
|
+
this._slides = new BehaviorSubject(undefined);
|
|
77
|
+
this.slides$ = this._slides.asObservable();
|
|
78
|
+
this._pollActiveIndex = new BehaviorSubject(0);
|
|
79
|
+
this.activeIndex$ = this._pollActiveIndex.asObservable();
|
|
80
|
+
this._carouselPaused = new BehaviorSubject(false);
|
|
81
|
+
this.carouselPaused$ = this._carouselPaused.asObservable();
|
|
82
|
+
this._carouselStopped = new BehaviorSubject(false);
|
|
83
|
+
this.carouselStopped$ = this._carouselStopped.asObservable();
|
|
84
|
+
this._resetInterval = new Subject();
|
|
85
|
+
this.activeSlide$ = this._pollActiveIndex.pipe(startWith(0), switchMap(i => this.slides$.pipe(map(slides => slides?.get(i)))));
|
|
86
|
+
}
|
|
87
|
+
ngOnInit() {
|
|
88
|
+
combineLatest([this.carouselPaused$, this.carouselStopped$]).pipe(tap(([paused, stopped]) => {
|
|
89
|
+
if (paused || stopped) {
|
|
90
|
+
this._resetInterval.next(undefined);
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
this._startInterval();
|
|
94
|
+
}
|
|
95
|
+
})).subscribe();
|
|
96
|
+
}
|
|
97
|
+
ngOnDestroy() {
|
|
98
|
+
this._resetInterval.next(undefined);
|
|
99
|
+
this._resetInterval.complete();
|
|
100
|
+
}
|
|
101
|
+
_startInterval() {
|
|
102
|
+
if (this.autoPlay) {
|
|
103
|
+
interval(this.slideInterval).pipe(takeUntil(this._resetInterval), tap(() => {
|
|
104
|
+
this.pageCarousel(1);
|
|
105
|
+
})).subscribe();
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
focusIn() {
|
|
109
|
+
if (this.pauseOnFocus) {
|
|
110
|
+
this.pauseTimer();
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
focusOut() {
|
|
114
|
+
if (this.pauseOnFocus) {
|
|
115
|
+
this.startTimer();
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
mouseEnter() {
|
|
119
|
+
if (this.pauseOnHover) {
|
|
120
|
+
this.pauseTimer();
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
mouseLeave() {
|
|
124
|
+
if (this.pauseOnHover) {
|
|
125
|
+
this.startTimer();
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
pauseTimer() {
|
|
129
|
+
this._carouselPaused.next(true);
|
|
130
|
+
}
|
|
131
|
+
startTimer() {
|
|
132
|
+
if (!this._carouselStopped.value) {
|
|
133
|
+
this._carouselPaused.next(false);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
setCarousel(i) {
|
|
137
|
+
this._pollActiveIndex.next(i);
|
|
138
|
+
}
|
|
139
|
+
pageCarousel(step) {
|
|
140
|
+
this.slides$.pipe(take(1), filter(slides => notNullOrUndefined(slides)), map(slides => {
|
|
141
|
+
const slidesLen = slides?.length || 1;
|
|
142
|
+
let index = this._pollActiveIndex.value;
|
|
143
|
+
index = index + step;
|
|
144
|
+
index = index < 0 ? slidesLen + index : index % slidesLen;
|
|
145
|
+
this._pollActiveIndex.next(index);
|
|
146
|
+
})).subscribe();
|
|
147
|
+
}
|
|
148
|
+
toggleCarouselStop() {
|
|
149
|
+
const carouselStopped = this._carouselStopped.value;
|
|
150
|
+
this._carouselStopped.next(!carouselStopped);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
TheSeamCarouselComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamCarouselComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
154
|
+
TheSeamCarouselComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TheSeamCarouselComponent, selector: "seam-carousel", inputs: { slideInterval: "slideInterval", autoPlay: "autoPlay", pauseOnHover: "pauseOnHover", pauseOnFocus: "pauseOnFocus", showPager: "showPager", showNavButtons: "showNavButtons", showPauseButton: "showPauseButton" }, queries: [{ propertyName: "slides", predicate: TheSeamCarouselSlideDirective }], exportAs: ["seamCarousel"], ngImport: i0, template: "<ng-container *ngIf=\"slides$ | async as slides\">\n <div class=\"position-relative\"\n *ngIf=\"slides.length\"\n (focusin)=\"focusIn()\"\n (mouseenter)=\"mouseEnter()\"\n (focusout)=\"focusOut()\"\n (mouseleave)=\"mouseLeave()\">\n\n <div class=\"d-flex\" style=\"min-height: 150px;\">\n <button\n *ngIf=\"showNavButtons && slides.length > 1\"\n seamButton\n class=\"carousel-arrow px-2\"\n (click)=\"pageCarousel(-1)\"\n title=\"Go to previous slide\">\n <seam-icon [icon]=\"faAngleLeft\"></seam-icon>\n </button>\n\n <div *ngIf=\"activeSlide$ | async as slide\" [@fadeInOut]=\"slide.template\" class=\"flex-grow-1 d-flex align-items-center\">\n <div class=\"carousel-content w-100 py-1 px-2\" [attr.data-slide-index]=\"activeIndex$ | async\">\n <ng-template [ngTemplateOutlet]=\"$any(slide.template)\"></ng-template>\n </div>\n </div>\n\n <button\n *ngIf=\"showNavButtons && slides.length > 1\"\n seamButton\n class=\"carousel-arrow px-2\"\n (click)=\"pageCarousel(1)\"\n title=\"Go to next slide\">\n <seam-icon [icon]=\"faAngleRight\"></seam-icon>\n </button>\n </div>\n\n <div class=\"carousel-pages d-flex flex-wrap justify-content-center mt-3 mx-auto\" *ngIf=\"showPager && slides.length > 1\">\n <button\n *ngFor=\"let q of slides; let i = index\"\n seamButton\n theme=\"light\"\n class=\"carousel-page\"\n [class.active]=\"(activeIndex$ | async) == i\"\n (click)=\"setCarousel(i)\"\n [title]=\"'Go to slide ' + (i + 1)\"></button>\n </div>\n\n <div class=\"carousel-controls\" *ngIf=\"showPauseButton && autoPlay\">\n <button\n *ngIf=\"slides.length > 1\"\n seamButton\n (click)=\"toggleCarouselStop()\"\n [title]=\"(carouselStopped$ | async) ? 'Play' : 'Pause'\">\n <seam-icon [icon]=\"faPlay\" *ngIf=\"carouselStopped$ | async; else pauseButton\"></seam-icon>\n <ng-template #pauseButton>\n <seam-icon [icon]=\"faPause\"></seam-icon>\n </ng-template>\n </button>\n </div>\n\n </div>\n</ng-container>\n", styles: [":host{display:block}:host .carousel-arrow{color:#adb5bd}:host .carousel-pages{max-width:calc(100% - 40px)}:host .carousel-pages .carousel-page{padding:4px;border-radius:50%;margin:1px 3px}:host .carousel-controls{position:absolute;right:-5px;bottom:5px;opacity:0;transition:.3s ease}:host .carousel-controls button{font-size:12px;color:#adb5bd;width:20px;height:20px;padding:2px!important}:host:hover .carousel-controls{opacity:1}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.IconComponent, selector: "seam-icon", inputs: ["grayscaleOnDisable", "disabled", "iconClass", "icon", "size", "showDefaultOnError", "defaultIcon", "iconType"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[seamButton]", inputs: ["disabled", "theme", "size", "type"], exportAs: ["seamButton"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }], animations: [
|
|
155
|
+
trigger('fadeInOut', [
|
|
156
|
+
transition('* => *', [
|
|
157
|
+
style({ opacity: '0', height: '*' }),
|
|
158
|
+
animate(250, style({ opacity: '1', height: '*' })),
|
|
159
|
+
]),
|
|
160
|
+
])
|
|
161
|
+
] });
|
|
162
|
+
__decorate([
|
|
163
|
+
InputNumber(10000)
|
|
164
|
+
], TheSeamCarouselComponent.prototype, "slideInterval", void 0);
|
|
165
|
+
__decorate([
|
|
166
|
+
InputBoolean()
|
|
167
|
+
], TheSeamCarouselComponent.prototype, "autoPlay", void 0);
|
|
168
|
+
__decorate([
|
|
169
|
+
InputBoolean()
|
|
170
|
+
], TheSeamCarouselComponent.prototype, "pauseOnHover", void 0);
|
|
171
|
+
__decorate([
|
|
172
|
+
InputBoolean()
|
|
173
|
+
], TheSeamCarouselComponent.prototype, "pauseOnFocus", void 0);
|
|
174
|
+
__decorate([
|
|
175
|
+
InputBoolean()
|
|
176
|
+
], TheSeamCarouselComponent.prototype, "showPager", void 0);
|
|
177
|
+
__decorate([
|
|
178
|
+
InputBoolean()
|
|
179
|
+
], TheSeamCarouselComponent.prototype, "showNavButtons", void 0);
|
|
180
|
+
__decorate([
|
|
181
|
+
InputBoolean()
|
|
182
|
+
], TheSeamCarouselComponent.prototype, "showPauseButton", void 0);
|
|
183
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamCarouselComponent, decorators: [{
|
|
184
|
+
type: Component,
|
|
185
|
+
args: [{ selector: 'seam-carousel', animations: [
|
|
186
|
+
trigger('fadeInOut', [
|
|
187
|
+
transition('* => *', [
|
|
188
|
+
style({ opacity: '0', height: '*' }),
|
|
189
|
+
animate(250, style({ opacity: '1', height: '*' })),
|
|
190
|
+
]),
|
|
191
|
+
])
|
|
192
|
+
], exportAs: 'seamCarousel', template: "<ng-container *ngIf=\"slides$ | async as slides\">\n <div class=\"position-relative\"\n *ngIf=\"slides.length\"\n (focusin)=\"focusIn()\"\n (mouseenter)=\"mouseEnter()\"\n (focusout)=\"focusOut()\"\n (mouseleave)=\"mouseLeave()\">\n\n <div class=\"d-flex\" style=\"min-height: 150px;\">\n <button\n *ngIf=\"showNavButtons && slides.length > 1\"\n seamButton\n class=\"carousel-arrow px-2\"\n (click)=\"pageCarousel(-1)\"\n title=\"Go to previous slide\">\n <seam-icon [icon]=\"faAngleLeft\"></seam-icon>\n </button>\n\n <div *ngIf=\"activeSlide$ | async as slide\" [@fadeInOut]=\"slide.template\" class=\"flex-grow-1 d-flex align-items-center\">\n <div class=\"carousel-content w-100 py-1 px-2\" [attr.data-slide-index]=\"activeIndex$ | async\">\n <ng-template [ngTemplateOutlet]=\"$any(slide.template)\"></ng-template>\n </div>\n </div>\n\n <button\n *ngIf=\"showNavButtons && slides.length > 1\"\n seamButton\n class=\"carousel-arrow px-2\"\n (click)=\"pageCarousel(1)\"\n title=\"Go to next slide\">\n <seam-icon [icon]=\"faAngleRight\"></seam-icon>\n </button>\n </div>\n\n <div class=\"carousel-pages d-flex flex-wrap justify-content-center mt-3 mx-auto\" *ngIf=\"showPager && slides.length > 1\">\n <button\n *ngFor=\"let q of slides; let i = index\"\n seamButton\n theme=\"light\"\n class=\"carousel-page\"\n [class.active]=\"(activeIndex$ | async) == i\"\n (click)=\"setCarousel(i)\"\n [title]=\"'Go to slide ' + (i + 1)\"></button>\n </div>\n\n <div class=\"carousel-controls\" *ngIf=\"showPauseButton && autoPlay\">\n <button\n *ngIf=\"slides.length > 1\"\n seamButton\n (click)=\"toggleCarouselStop()\"\n [title]=\"(carouselStopped$ | async) ? 'Play' : 'Pause'\">\n <seam-icon [icon]=\"faPlay\" *ngIf=\"carouselStopped$ | async; else pauseButton\"></seam-icon>\n <ng-template #pauseButton>\n <seam-icon [icon]=\"faPause\"></seam-icon>\n </ng-template>\n </button>\n </div>\n\n </div>\n</ng-container>\n", styles: [":host{display:block}:host .carousel-arrow{color:#adb5bd}:host .carousel-pages{max-width:calc(100% - 40px)}:host .carousel-pages .carousel-page{padding:4px;border-radius:50%;margin:1px 3px}:host .carousel-controls{position:absolute;right:-5px;bottom:5px;opacity:0;transition:.3s ease}:host .carousel-controls button{font-size:12px;color:#adb5bd;width:20px;height:20px;padding:2px!important}:host:hover .carousel-controls{opacity:1}\n"] }]
|
|
193
|
+
}], ctorParameters: function () { return []; }, propDecorators: { slideInterval: [{
|
|
194
|
+
type: Input
|
|
195
|
+
}], autoPlay: [{
|
|
196
|
+
type: Input
|
|
197
|
+
}], pauseOnHover: [{
|
|
198
|
+
type: Input
|
|
199
|
+
}], pauseOnFocus: [{
|
|
200
|
+
type: Input
|
|
201
|
+
}], showPager: [{
|
|
202
|
+
type: Input
|
|
203
|
+
}], showNavButtons: [{
|
|
204
|
+
type: Input
|
|
205
|
+
}], showPauseButton: [{
|
|
206
|
+
type: Input
|
|
207
|
+
}], slides: [{
|
|
208
|
+
type: ContentChildren,
|
|
209
|
+
args: [TheSeamCarouselSlideDirective]
|
|
210
|
+
}] } });
|
|
211
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fyb3VzZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2Nhcm91c2VsL2Nhcm91c2VsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9jYXJvdXNlbC9jYXJvdXNlbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLEtBQUssRUFBZ0MsTUFBTSxlQUFlLENBQUE7QUFFL0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUNwRixPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFFeEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG1DQUFtQyxDQUFBO0FBQzlGLE9BQU8sRUFBRSxZQUFZLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUE7QUFDbkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMEJBQTBCLENBQUE7QUFFN0QsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sNEJBQTRCLENBQUE7Ozs7O0FBZ0IxRSxNQUFNLE9BQU8sd0JBQXdCO0lBNkRuQyxJQUNJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFBO0lBQzNCLENBQUM7SUFDRCxJQUFJLE1BQU0sQ0FBQyxLQUEyRDtRQUNwRSxvRkFBb0Y7UUFDcEYsTUFBTSxLQUFL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cnQgeyBhbmltYXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnXG5pbXBvcnQgeyBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgSW5wdXQsIE9uRGVzdHJveSwgT25Jbml0LCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgQm9vbGVhbklucHV0LCBOdW1iZXJJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgaW50ZXJ2YWwsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIHN0YXJ0V2l0aCwgc3dpdGNoTWFwLCB0YWtlLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuXG5pbXBvcnQgeyBmYUFuZ2xlTGVmdCwgZmFBbmdsZVJpZ2h0LCBmYVBhdXNlLCBmYVBsYXkgfSBmcm9tICdAZm9ydGF3ZXNvbWUvZnJlZS1zb2xpZC1zdmctaWNvbnMnXG5pbXBvcnQgeyBJbnB1dEJvb2xlYW4sIElucHV0TnVtYmVyIH0gZnJvbSAnQHRoZXNlYW0vdWktY29tbW9uL2NvcmUnXG5pbXBvcnQgeyBub3ROdWxsT3JVbmRlZmluZWQgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vdXRpbHMnXG5cbmltcG9ydCB7IFRoZVNlYW1DYXJvdXNlbFNsaWRlRGlyZWN0aXZlIH0gZnJvbSAnLi9jYXJvdXNlbC1zbGlkZS5kaXJlY3RpdmUnXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NlYW0tY2Fyb3VzZWwnLFxuICB0ZW1wbGF0ZVVybDogJy4vY2Fyb3VzZWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jYXJvdXNlbC5jb21wb25lbnQuc2NzcyddLFxuICBhbmltYXRpb25zOiBbXG4gICAgdHJpZ2dlcignZmFkZUluT3V0JywgW1xuICAgICAgdHJhbnNpdGlvbignKiA9PiAqJywgW1xuICAgICAgICBzdHlsZSh7IG9wYWNpdHk6ICcwJywgaGVpZ2h0OiAnKicgfSksXG4gICAgICAgIGFuaW1hdGUoMjUwLCBzdHlsZSh7IG9wYWNpdHk6ICcxJywgaGVpZ2h0OiAnKicgfSkpLFxuICAgICAgXSksXG4gICAgXSlcbiAgXSxcbiAgZXhwb3J0QXM6ICdzZWFtQ2Fyb3VzZWwnLFxufSlcbmV4cG9ydCBjbGFzcyBUaGVTZWFtQ2Fyb3VzZWxDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9zbGlkZUludGVydmFsOiBOdW1iZXJJbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfYXV0b1BsYXk6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfcGF1c2VPbkhvdmVyOiBCb29sZWFuSW5wdXRcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX3BhdXNlT25Gb2N1czogQm9vbGVhbklucHV0XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9zaG93UGFnZXI6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfc2hvd05hdkJ1dHRvbnM6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfc2hvd1BhdXNlQnV0dG9uOiBCb29sZWFuSW5wdXRcblxuICByZWFkb25seSBmYUFuZ2xlUmlnaHQgPSBmYUFuZ2xlUmlnaHRcbiAgcmVhZG9ubHkgZmFBbmdsZUxlZnQgPSBmYUFuZ2xlTGVmdFxuICByZWFkb25seSBmYVBhdXNlID0gZmFQYXVzZVxuICByZWFkb25seSBmYVBsYXkgPSBmYVBsYXlcblxuICAvKipcbiAgICogRHVyYXRpb24gaW4gbXMgdGhhdCBzbGlkZSBpcyBkaXNwbGF5ZWQgYmVmb3JlIHBhZ2luZy5cbiAgICogT25seSBhcHBsaWNhYmxlIHdoZW4gYGF1dG9QbGF5ID09PSB0cnVlYC5cbiAgICogRGVmYXVsdHMgdG8gMTAwMDBtcy5cbiAgICovXG4gIEBJbnB1dCgpIEBJbnB1dE51bWJlcigxMDAwMCkgc2xpZGVJbnRlcnZhbCA9IDEwMDAwXG5cbiAgLyoqXG4gICAqIFdoZW4gYHRydWVgLCBjYXJvdXNlbCB3aWxsIHBhZ2UgYXV0b21hdGljYWxseS5cbiAgICogRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKi9cbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIGF1dG9QbGF5ID0gdHJ1ZVxuXG4gIC8qKlxuICAgKiBXaGVuIGB0cnVlYCwgd2lsbCBwYXVzZSBhdXRvbWF0aWMgcGFnaW5nIHdoZW4gdXNlciBtb3VzZXMgb3ZlciBjYXJvdXNlbC5cbiAgICogVGltZXIgd2lsbCByZXN0YXJ0IHdoZW4gdXNlciBtb3VzZXMgb3V0LlxuICAgKiBPbmx5IGFwcGxpY2FibGUgd2hlbiBgYXV0b1BsYXkgPT09IHRydWVgLlxuICAgKiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqL1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcGF1c2VPbkhvdmVyID0gdHJ1ZVxuXG4gIC8qKlxuICAgKiBXaGVuIGB0cnVlYCwgd2lsbCBwYXVzZSBhdXRvbWF0aWMgcGFnaW5nIHdoZW4gdXNlciBmb2N1c2VzIGluIG9uIGl0ZW0gaW4gY2Fyb3VzZWwuXG4gICAqIFRpbWVyIHdpbGwgcmVzdGFydCB3aGVuIHVzZXIgZm9jdXNlcyBvdXQuXG4gICAqIE9ubHkgYXBwbGljYWJsZSB3aGVuIGBhdXRvUGxheSA9PT0gdHJ1ZWAuXG4gICAqIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBwYXVzZU9uRm9jdXMgPSB0cnVlXG5cbiAgLyoqXG4gICAqIFdoZW4gYHRydWVgLCB3aWxsIHNob3cgcGFnZXIgcm93IGF0IHRoZSBib3R0b20gb2YgdGhlIGNhcm91c2VsIHdpdGggY2xpY2thYmxlIGJ1dHRvbnMgdG8gbmF2aWdhdGUgZGlyZWN0bHkgdG8gYSBwYWdlLlxuICAgKiBEZWZhdWx0cyB0byBgdHJ1ZWAuXG4gICAqL1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgc2hvd1BhZ2VyID0gdHJ1ZVxuXG4gIC8qKlxuICAgKiBXaGVuIGB0cnVlYCwgd2lsbCBzaG93IGxlZnQgYW5kIHJpZ2h0IG5hdiBidXR0b24gb24gZWl0aGVyIHNpZGUgb2YgdGhlIGNhcm91c2VsIHRvIG5hdmlnYXRlIHRocm91Z2ggcGFnZXMuXG4gICAqIERlZmF1bHRzIHRvIGB0cnVlYC5cbiAgICovXG4gIEBJbnB1dCgpIEBJbnB1dEJvb2xlYW4oKSBzaG93TmF2QnV0dG9ucyA9IHRydWVcblxuICAvKipcbiAgICogV2hlbiBgdHJ1ZWAsIHdpbGwgc2hvdyBwYXVzZS9wbGF5IGJ1dHRvbiB0byBzdG9wL3Jlc3RhcnQgYXV0b21hdGljIHBhZ2luZy5cbiAgICogRGVmYXVsdHMgdG8gYHRydWVgLlxuICAgKi9cbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHNob3dQYXVzZUJ1dHRvbiA9IHRydWVcblxuICBAQ29udGVudENoaWxkcmVuKFRoZVNlYW1DYXJvdXNlbFNsaWRlRGlyZWN0aXZlKVxuICBnZXQgc2xpZGVzKCk6IFF1ZXJ5TGlzdDxUaGVTZWFtQ2Fyb3VzZWxTbGlkZURpcmVjdGl2ZT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9zbGlkZXMudmFsdWVcbiAgfVxuICBzZXQgc2xpZGVzKHZhbHVlOiBRdWVyeUxpc3Q8VGhlU2VhbUNhcm91c2VsU2xpZGVEaXJlY3RpdmU+IHwgdW5kZWZpbmVkKSB7XG4gICAgLy8gQ2hlY2sgaWYgc2xpZGVzIHdlcmUgYWRkZWQgb3IgcmVtb3ZlZCB0aGF0IHdvdWxkIG1ha2UgdGhlIGFjdGl2ZSBpbmRleCBub3QgZXhpc3QuXG4gICAgY29uc3QgY291bnQgPSB2YWx1ZT8ubGVuZ3RoIHx8IDBcbiAgICBjb25zdCBtYXhJZHggPSBjb3VudCA+PSAwID8gY291bnQgLSAxIDogMFxuICAgIGNvbnN0IGFjdGl2ZUlkeCA9IHRoaXMuX3BvbGxBY3RpdmVJbmRleC52YWx1ZVxuICAgIGlmIChhY3RpdmVJZHggPiBtYXhJZHgpIHtcbiAgICAgIHRoaXMuX3BvbGxBY3RpdmVJbmRleC5uZXh0KG1heElkeClcbiAgICB9IGVsc2UgaWYgKGNvdW50ID4gMCAmJiBhY3RpdmVJZHggPCAwKSB7XG4gICAgICB0aGlzLl9wb2xsQWN0aXZlSW5kZXgubmV4dCgwKVxuICAgIH1cblxuICAgIHRoaXMuX3NsaWRlcy5uZXh0KHZhbHVlKVxuICB9XG4gIHByaXZhdGUgcmVhZG9ubHkgX3NsaWRlcyA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UXVlcnlMaXN0PFRoZVNlYW1DYXJvdXNlbFNsaWRlRGlyZWN0aXZlPiB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKVxuICBwdWJsaWMgcmVhZG9ubHkgc2xpZGVzJCA9IHRoaXMuX3NsaWRlcy5hc09ic2VydmFibGUoKVxuXG4gIHB1YmxpYyByZWFkb25seSBhY3RpdmVTbGlkZSQ6IE9ic2VydmFibGU8YW55IHwgdW5kZWZpbmVkPlxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3BvbGxBY3RpdmVJbmRleCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigwKVxuICBwdWJsaWMgcmVhZG9ubHkgYWN0aXZlSW5kZXgkID0gdGhpcy5fcG9sbEFjdGl2ZUluZGV4LmFzT2JzZXJ2YWJsZSgpXG5cbiAgcHJpdmF0ZSByZWFkb25seSBfY2Fyb3VzZWxQYXVzZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKVxuICBwdWJsaWMgcmVhZG9ubHkgY2Fyb3VzZWxQYXVzZWQkID0gdGhpcy5fY2Fyb3VzZWxQYXVzZWQuYXNPYnNlcnZhYmxlKClcblxuICBwcml2YXRlIHJlYWRvbmx5IF9jYXJvdXNlbFN0b3BwZWQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKVxuICBwdWJsaWMgcmVhZG9ubHkgY2Fyb3VzZWxTdG9wcGVkJCA9IHRoaXMuX2Nhcm91c2VsU3RvcHBlZC5hc09ic2VydmFibGUoKVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3Jlc2V0SW50ZXJ2YWwgPSBuZXcgU3ViamVjdDx2b2lkPigpXG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5hY3RpdmVTbGlkZSQgPSB0aGlzLl9wb2xsQWN0aXZlSW5kZXgucGlwZShcbiAgICAgIHN0YXJ0V2l0aCgwKSxcbiAgICAgIHN3aXRjaE1hcChpID0+IHRoaXMuc2xpZGVzJC5waXBlKFxuICAgICAgICBtYXAoc2xpZGVzID0+IHNsaWRlcz8uZ2V0KGkpKSxcbiAgICAgICkpXG4gICAgKVxuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5jYXJvdXNlbFBhdXNlZCQsIHRoaXMuY2Fyb3VzZWxTdG9wcGVkJF0pLnBpcGUoXG4gICAgICB0YXAoKFtwYXVzZWQsIHN0b3BwZWRdKSA9PiB7XG4gICAgICAgIGlmIChwYXVzZWQgfHwgc3RvcHBlZCkge1xuICAgICAgICAgIHRoaXMuX3Jlc2V0SW50ZXJ2YWwubmV4dCh1bmRlZmluZWQpXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5fc3RhcnRJbnRlcnZhbCgpXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKS5zdWJzY3JpYmUoKVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fcmVzZXRJbnRlcnZhbC5uZXh0KHVuZGVmaW5lZClcbiAgICB0aGlzLl9yZXNldEludGVydmFsLmNvbXBsZXRlKClcbiAgfVxuXG4gIHByaXZhdGUgX3N0YXJ0SW50ZXJ2YWwoKSB7XG4gICAgaWYgKHRoaXMuYXV0b1BsYXkpIHtcbiAgICAgIGludGVydmFsKHRoaXMuc2xpZGVJbnRlcnZhbCkucGlwZShcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX3Jlc2V0SW50ZXJ2YWwpLFxuICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgIHRoaXMucGFnZUNhcm91c2VsKDEpXG4gICAgICAgIH0pXG4gICAgICApLnN1YnNjcmliZSgpXG4gICAgfVxuICB9XG5cbiAgZm9jdXNJbigpIHtcbiAgICBpZiAodGhpcy5wYXVzZU9uRm9jdXMpIHtcbiAgICAgIHRoaXMucGF1c2VUaW1lcigpXG4gICAgfVxuICB9XG5cbiAgZm9jdXNPdXQoKSB7XG4gICAgaWYgKHRoaXMucGF1c2VPbkZvY3VzKSB7XG4gICAgICB0aGlzLnN0YXJ0VGltZXIoKVxuICAgIH1cbiAgfVxuXG4gIG1vdXNlRW50ZXIoKSB7XG4gICAgaWYgKHRoaXMucGF1c2VPbkhvdmVyKSB7XG4gICAgICB0aGlzLnBhdXNlVGltZXIoKVxuICAgIH1cbiAgfVxuXG4gIG1vdXNlTGVhdmUoKSB7XG4gICAgaWYgKHRoaXMucGF1c2VPbkhvdmVyKSB7XG4gICAgICB0aGlzLnN0YXJ0VGltZXIoKVxuICAgIH1cbiAgfVxuXG4gIHBhdXNlVGltZXIoKSB7XG4gICAgdGhpcy5fY2Fyb3VzZWxQYXVzZWQubmV4dCh0cnVlKVxuICB9XG5cbiAgc3RhcnRUaW1lcigpIHtcbiAgICBpZiAoIXRoaXMuX2Nhcm91c2VsU3RvcHBlZC52YWx1ZSkge1xuICAgICAgdGhpcy5fY2Fyb3VzZWxQYXVzZWQubmV4dChmYWxzZSlcbiAgICB9XG4gIH1cblxuICBzZXRDYXJvdXNlbChpOiBudW1iZXIpIHtcbiAgICB0aGlzLl9wb2xsQWN0aXZlSW5kZXgubmV4dChpKVxuICB9XG5cbiAgcGFnZUNhcm91c2VsKHN0ZXA6IG51bWJlcikge1xuICAgIHRoaXMuc2xpZGVzJC5waXBlKFxuICAgICAgdGFrZSgxKSxcbiAgICAgIGZpbHRlcihzbGlkZXMgPT4gbm90TnVsbE9yVW5kZWZpbmVkKHNsaWRlcykpLFxuICAgICAgbWFwKHNsaWRlcyA9PiB7XG4gICAgICAgIGNvbnN0IHNsaWRlc0xlbiA9IHNsaWRlcz8ubGVuZ3RoIHx8IDFcbiAgICAgICAgbGV0IGluZGV4ID0gdGhpcy5fcG9sbEFjdGl2ZUluZGV4LnZhbHVlXG4gICAgICAgIGluZGV4ID0gaW5kZXggKyBzdGVwXG4gICAgICAgIGluZGV4ID0gaW5kZXggPCAwID8gc2xpZGVzTGVuICsgaW5kZXggOiBpbmRleCAlIHNsaWRlc0xlblxuICAgICAgICB0aGlzLl9wb2xsQWN0aXZlSW5kZXgubmV4dChpbmRleClcbiAgICAgIH0pXG4gICAgKS5zdWJzY3JpYmUoKVxuICB9XG5cbiAgdG9nZ2xlQ2Fyb3VzZWxTdG9wKCkge1xuICAgIGNvbnN0IGNhcm91c2VsU3RvcHBlZCA9IHRoaXMuX2Nhcm91c2VsU3RvcHBlZC52YWx1ZVxuICAgIHRoaXMuX2Nhcm91c2VsU3RvcHBlZC5uZXh0KCFjYXJvdXNlbFN0b3BwZWQpXG4gIH1cbn1cbiIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJzbGlkZXMkIHwgYXN5bmMgYXMgc2xpZGVzXCI+XG4gIDxkaXYgY2xhc3M9XCJwb3NpdGlvbi1yZWxhdGl2ZVwiXG4gICAgKm5nSWY9XCJzbGlkZXMubGVuZ3RoXCJcbiAgICAoZm9jdXNpbik9XCJmb2N1c0luKClcIlxuICAgIChtb3VzZWVudGVyKT1cIm1vdXNlRW50ZXIoKVwiXG4gICAgKGZvY3Vzb3V0KT1cImZvY3VzT3V0KClcIlxuICAgIChtb3VzZWxlYXZlKT1cIm1vdXNlTGVhdmUoKVwiPlxuXG4gICAgPGRpdiBjbGFzcz1cImQtZmxleFwiIHN0eWxlPVwibWluLWhlaWdodDogMTUwcHg7XCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0lmPVwic2hvd05hdkJ1dHRvbnMgJiYgc2xpZGVzLmxlbmd0aCA+IDFcIlxuICAgICAgICBzZWFtQnV0dG9uXG4gICAgICAgIGNsYXNzPVwiY2Fyb3VzZWwtYXJyb3cgcHgtMlwiXG4gICAgICAgIChjbGljayk9XCJwYWdlQ2Fyb3VzZWwoLTEpXCJcbiAgICAgICAgdGl0bGU9XCJHbyB0byBwcmV2aW91cyBzbGlkZVwiPlxuICAgICAgICA8c2VhbS1pY29uIFtpY29uXT1cImZhQW5nbGVMZWZ0XCI+PC9zZWFtLWljb24+XG4gICAgICA8L2J1dHRvbj5cblxuICAgICAgPGRpdiAqbmdJZj1cImFjdGl2ZVNsaWRlJCB8IGFzeW5jIGFzIHNsaWRlXCIgW0BmYWRlSW5PdXRdPVwic2xpZGUudGVtcGxhdGVcIiBjbGFzcz1cImZsZXgtZ3Jvdy0xIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImNhcm91c2VsLWNvbnRlbnQgdy0xMDAgcHktMSBweC0yXCIgW2F0dHIuZGF0YS1zbGlkZS1pbmRleF09XCJhY3RpdmVJbmRleCQgfCBhc3luY1wiPlxuICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCIkYW55KHNsaWRlLnRlbXBsYXRlKVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCJzaG93TmF2QnV0dG9ucyAmJiBzbGlkZXMubGVuZ3RoID4gMVwiXG4gICAgICAgIHNlYW1CdXR0b25cbiAgICAgICAgY2xhc3M9XCJjYXJvdXNlbC1hcnJvdyBweC0yXCJcbiAgICAgICAgKGNsaWNrKT1cInBhZ2VDYXJvdXNlbCgxKVwiXG4gICAgICAgIHRpdGxlPVwiR28gdG8gbmV4dCBzbGlkZVwiPlxuICAgICAgICA8c2VhbS1pY29uIFtpY29uXT1cImZhQW5nbGVSaWdodFwiPjwvc2VhbS1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiY2Fyb3VzZWwtcGFnZXMgZC1mbGV4IGZsZXgtd3JhcCBqdXN0aWZ5LWNvbnRlbnQtY2VudGVyIG10LTMgbXgtYXV0b1wiICpuZ0lmPVwic2hvd1BhZ2VyICYmIHNsaWRlcy5sZW5ndGggPiAxXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgICpuZ0Zvcj1cImxldCBxIG9mIHNsaWRlczsgbGV0IGkgPSBpbmRleFwiXG4gICAgICAgIHNlYW1CdXR0b25cbiAgICAgICAgdGhlbWU9XCJsaWdodFwiXG4gICAgICAgIGNsYXNzPVwiY2Fyb3VzZWwtcGFnZVwiXG4gICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiKGFjdGl2ZUluZGV4JCB8IGFzeW5jKSA9PSBpXCJcbiAgICAgICAgKGNsaWNrKT1cInNldENhcm91c2VsKGkpXCJcbiAgICAgICAgW3RpdGxlXT1cIidHbyB0byBzbGlkZSAnICsgKGkgKyAxKVwiPjwvYnV0dG9uPlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImNhcm91c2VsLWNvbnRyb2xzXCIgKm5nSWY9XCJzaG93UGF1c2VCdXR0b24gJiYgYXV0b1BsYXlcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nSWY9XCJzbGlkZXMubGVuZ3RoID4gMVwiXG4gICAgICAgIHNlYW1CdXR0b25cbiAgICAgICAgKGNsaWNrKT1cInRvZ2dsZUNhcm91c2VsU3RvcCgpXCJcbiAgICAgICAgW3RpdGxlXT1cIihjYXJvdXNlbFN0b3BwZWQkIHwgYXN5bmMpID8gJ1BsYXknIDogJ1BhdXNlJ1wiPlxuICAgICAgICA8c2VhbS1pY29uIFtpY29uXT1cImZhUGxheVwiICpuZ0lmPVwiY2Fyb3VzZWxTdG9wcGVkJCB8IGFzeW5jOyBlbHNlIHBhdXNlQnV0dG9uXCI+PC9zZWFtLWljb24+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjcGF1c2VCdXR0b24+XG4gICAgICAgICAgPHNlYW0taWNvbiBbaWNvbl09XCJmYVBhdXNlXCI+PC9zZWFtLWljb24+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cblxuICA8L2Rpdj5cbjwvbmctY29udGFpbmVyPlxuIl19
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { CommonModule } from '@angular/common';
|
|
2
|
+
import { NgModule } from '@angular/core';
|
|
3
|
+
import { TheSeamButtonsModule } from '@theseam/ui-common/buttons';
|
|
4
|
+
import { TheSeamIconModule } from '@theseam/ui-common/icon';
|
|
5
|
+
import { TheSeamCarouselSlideDirective } from './carousel-slide.directive';
|
|
6
|
+
import { TheSeamCarouselComponent } from './carousel.component';
|
|
7
|
+
import * as i0 from "@angular/core";
|
|
8
|
+
export class TheSeamCarouselModule {
|
|
9
|
+
}
|
|
10
|
+
TheSeamCarouselModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamCarouselModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
11
|
+
TheSeamCarouselModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: TheSeamCarouselModule, declarations: [TheSeamCarouselComponent,
|
|
12
|
+
TheSeamCarouselSlideDirective], imports: [CommonModule,
|
|
13
|
+
TheSeamIconModule,
|
|
14
|
+
TheSeamButtonsModule], exports: [TheSeamCarouselComponent,
|
|
15
|
+
TheSeamCarouselSlideDirective] });
|
|
16
|
+
TheSeamCarouselModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamCarouselModule, imports: [CommonModule,
|
|
17
|
+
TheSeamIconModule,
|
|
18
|
+
TheSeamButtonsModule] });
|
|
19
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamCarouselModule, decorators: [{
|
|
20
|
+
type: NgModule,
|
|
21
|
+
args: [{
|
|
22
|
+
declarations: [
|
|
23
|
+
TheSeamCarouselComponent,
|
|
24
|
+
TheSeamCarouselSlideDirective
|
|
25
|
+
],
|
|
26
|
+
imports: [
|
|
27
|
+
CommonModule,
|
|
28
|
+
TheSeamIconModule,
|
|
29
|
+
TheSeamButtonsModule,
|
|
30
|
+
],
|
|
31
|
+
exports: [
|
|
32
|
+
TheSeamCarouselComponent,
|
|
33
|
+
TheSeamCarouselSlideDirective
|
|
34
|
+
],
|
|
35
|
+
providers: []
|
|
36
|
+
}]
|
|
37
|
+
}] });
|
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2Fyb3VzZWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2Nhcm91c2VsL2Nhcm91c2VsLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUE7QUFDOUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUV4QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUNqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUUzRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQTtBQUMxRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTs7QUFrQi9ELE1BQU0sT0FBTyxxQkFBcUI7O2tIQUFyQixxQkFBcUI7bUhBQXJCLHFCQUFxQixpQkFkOUIsd0JBQXdCO1FBQ3hCLDZCQUE2QixhQUc3QixZQUFZO1FBQ1osaUJBQWlCO1FBQ2pCLG9CQUFvQixhQUdwQix3QkFBd0I7UUFDeEIsNkJBQTZCO21IQUlwQixxQkFBcUIsWUFWOUIsWUFBWTtRQUNaLGlCQUFpQjtRQUNqQixvQkFBb0I7MkZBUVgscUJBQXFCO2tCQWhCakMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osd0JBQXdCO3dCQUN4Qiw2QkFBNkI7cUJBQzlCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGlCQUFpQjt3QkFDakIsb0JBQW9CO3FCQUNyQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1Asd0JBQXdCO3dCQUN4Qiw2QkFBNkI7cUJBQzlCO29CQUNELFNBQVMsRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJ1xuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuXG5pbXBvcnQgeyBUaGVTZWFtQnV0dG9uc01vZHVsZSB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9idXR0b25zJ1xuaW1wb3J0IHsgVGhlU2VhbUljb25Nb2R1bGUgfSBmcm9tICdAdGhlc2VhbS91aS1jb21tb24vaWNvbidcblxuaW1wb3J0IHsgVGhlU2VhbUNhcm91c2VsU2xpZGVEaXJlY3RpdmUgfSBmcm9tICcuL2Nhcm91c2VsLXNsaWRlLmRpcmVjdGl2ZSdcbmltcG9ydCB7IFRoZVNlYW1DYXJvdXNlbENvbXBvbmVudCB9IGZyb20gJy4vY2Fyb3VzZWwuY29tcG9uZW50J1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBUaGVTZWFtQ2Fyb3VzZWxDb21wb25lbnQsXG4gICAgVGhlU2VhbUNhcm91c2VsU2xpZGVEaXJlY3RpdmVcbiAgXSxcbiAgaW1wb3J0czogW1xuICAgIENvbW1vbk1vZHVsZSxcbiAgICBUaGVTZWFtSWNvbk1vZHVsZSxcbiAgICBUaGVTZWFtQnV0dG9uc01vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFRoZVNlYW1DYXJvdXNlbENvbXBvbmVudCxcbiAgICBUaGVTZWFtQ2Fyb3VzZWxTbGlkZURpcmVjdGl2ZVxuICBdLFxuICBwcm92aWRlcnM6IFtdXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1DYXJvdXNlbE1vZHVsZSB7IH1cbiJdfQ==
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export * from './carousel-slide.directive';
|
|
2
|
+
export * from './carousel.component';
|
|
3
|
+
export * from './carousel.module';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9jYXJvdXNlbC9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUE7QUFDMUMsY0FBYyxzQkFBc0IsQ0FBQTtBQUNwQyxjQUFjLG1CQUFtQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jYXJvdXNlbC1zbGlkZS5kaXJlY3RpdmUnXG5leHBvcnQgKiBmcm9tICcuL2Nhcm91c2VsLmNvbXBvbmVudCdcbmV4cG9ydCAqIGZyb20gJy4vY2Fyb3VzZWwubW9kdWxlJ1xuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGhlc2VhbS11aS1jb21tb24tY2Fyb3VzZWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vY2Fyb3VzZWwvdGhlc2VhbS11aS1jb21tb24tY2Fyb3VzZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -33,6 +33,45 @@ let _uid = 0;
|
|
|
33
33
|
* A Checkbox.
|
|
34
34
|
*/
|
|
35
35
|
export class TheSeamCheckboxComponent extends _TheSeamCheckboxMixinBase {
|
|
36
|
+
/** Returns the unique id for the input. */
|
|
37
|
+
get inputId() { return `${this.id || this._uid}`; }
|
|
38
|
+
/** Whether the checkbox is checked. */
|
|
39
|
+
get checked() { return this._checked; }
|
|
40
|
+
set checked(value) {
|
|
41
|
+
const newValue = coerceBooleanProperty(value);
|
|
42
|
+
if (newValue !== this.checked) {
|
|
43
|
+
this._checked = newValue;
|
|
44
|
+
this._changeDetectorRef.markForCheck();
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Whether the checkbox is disabled.
|
|
49
|
+
*/
|
|
50
|
+
// This fully overrides the implementation provided by mixinDisabled, but the
|
|
51
|
+
// mixin is still required because mixinTabIndex requires it.
|
|
52
|
+
get disabled() { return this._disabled; }
|
|
53
|
+
set disabled(value) {
|
|
54
|
+
const newValue = coerceBooleanProperty(value);
|
|
55
|
+
if (newValue !== this.disabled) {
|
|
56
|
+
this._disabled = newValue;
|
|
57
|
+
this._changeDetectorRef.markForCheck();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Whether the checkbox is indeterminate. This is also known as "mixed" mode and can be used to
|
|
62
|
+
* represent a checkbox with three states, e.g. a checkbox that represents a nested list of
|
|
63
|
+
* checkable items. Note that whenever checkbox is manually clicked, indeterminate is immediately
|
|
64
|
+
* set to false.
|
|
65
|
+
*/
|
|
66
|
+
get indeterminate() { return this._indeterminate; }
|
|
67
|
+
set indeterminate(value) {
|
|
68
|
+
const changed = value !== this._indeterminate;
|
|
69
|
+
this._indeterminate = coerceBooleanProperty(value);
|
|
70
|
+
if (changed) {
|
|
71
|
+
this.indeterminateChange.emit(this._indeterminate);
|
|
72
|
+
}
|
|
73
|
+
this._syncIndeterminate(this._indeterminate);
|
|
74
|
+
}
|
|
36
75
|
constructor(elementRef, _changeDetectorRef, _focusMonitor, _ngZone, tabIndex) {
|
|
37
76
|
super(elementRef);
|
|
38
77
|
this._changeDetectorRef = _changeDetectorRef;
|
|
@@ -62,6 +101,7 @@ export class TheSeamCheckboxComponent extends _TheSeamCheckboxMixinBase {
|
|
|
62
101
|
/** Name value will be applied to the input element if present */
|
|
63
102
|
this.name = null;
|
|
64
103
|
/** Event emitted when the checkbox's `checked` value changes. */
|
|
104
|
+
// eslint-disable-next-line @angular-eslint/no-output-native
|
|
65
105
|
this.change = new EventEmitter();
|
|
66
106
|
/** Event emitted when the checkbox's `indeterminate` value changes. */
|
|
67
107
|
this.indeterminateChange = new EventEmitter();
|
|
@@ -87,47 +127,6 @@ export class TheSeamCheckboxComponent extends _TheSeamCheckboxMixinBase {
|
|
|
87
127
|
}
|
|
88
128
|
});
|
|
89
129
|
}
|
|
90
|
-
/** Returns the unique id for the input. */
|
|
91
|
-
get inputId() { return `${this.id || this._uid}`; }
|
|
92
|
-
/** Whether the checkbox is checked. */
|
|
93
|
-
get checked() { return this._checked; }
|
|
94
|
-
set checked(value) {
|
|
95
|
-
const newValue = coerceBooleanProperty(value);
|
|
96
|
-
if (newValue !== this.checked) {
|
|
97
|
-
this._checked = newValue;
|
|
98
|
-
this._changeDetectorRef.markForCheck();
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* Whether the checkbox is disabled.
|
|
103
|
-
*/
|
|
104
|
-
// This fully overrides the implementation provided by mixinDisabled, but the
|
|
105
|
-
// mixin is still required because mixinTabIndex requires it.
|
|
106
|
-
get disabled() { return this._disabled; }
|
|
107
|
-
set disabled(value) {
|
|
108
|
-
const newValue = coerceBooleanProperty(value);
|
|
109
|
-
if (newValue !== this.disabled) {
|
|
110
|
-
this._disabled = newValue;
|
|
111
|
-
this._changeDetectorRef.markForCheck();
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
/**
|
|
115
|
-
* Whether the checkbox is indeterminate. This is also known as "mixed" mode and can be used to
|
|
116
|
-
* represent a checkbox with three states, e.g. a checkbox that represents a nested list of
|
|
117
|
-
* checkable items. Note that whenever checkbox is manually clicked, indeterminate is immediately
|
|
118
|
-
* set to false.
|
|
119
|
-
*/
|
|
120
|
-
get indeterminate() { return this._indeterminate; }
|
|
121
|
-
set indeterminate(value) {
|
|
122
|
-
const changed = value !== this._indeterminate;
|
|
123
|
-
this._indeterminate = coerceBooleanProperty(value);
|
|
124
|
-
if (changed) {
|
|
125
|
-
this.indeterminateChange.emit(this._indeterminate);
|
|
126
|
-
}
|
|
127
|
-
this._syncIndeterminate(this._indeterminate);
|
|
128
|
-
}
|
|
129
|
-
/** @ignore */
|
|
130
|
-
ngOnInit() { }
|
|
131
130
|
/** @ignore */
|
|
132
131
|
ngOnDestroy() {
|
|
133
132
|
this._focusMonitor.stopMonitoring(this._elementRef);
|
|
@@ -236,12 +235,12 @@ export class TheSeamCheckboxComponent extends _TheSeamCheckboxMixinBase {
|
|
|
236
235
|
}
|
|
237
236
|
}
|
|
238
237
|
}
|
|
239
|
-
TheSeamCheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
240
|
-
TheSeamCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.
|
|
238
|
+
TheSeamCheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamCheckboxComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i0.NgZone }, { token: 'tabindex', attribute: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
239
|
+
TheSeamCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: TheSeamCheckboxComponent, selector: "seam-checkbox", inputs: { tabIndex: "tabIndex", id: "id", ariaLabel: ["aria-label", "ariaLabel"], ariaLabelledby: ["aria-labelledby", "ariaLabelledby"], required: "required", checked: "checked", disabled: "disabled", indeterminate: "indeterminate", name: "name", value: "value" }, outputs: { change: "change", indeterminateChange: "indeterminateChange" }, host: { properties: { "attr.tabindex": "null" }, classAttribute: "custom-control custom-checkbox" }, providers: [THESEAM_CHECKBOX_CONTROL_VALUE_ACCESSOR], viewQueries: [{ propertyName: "_inputElement", first: true, predicate: ["input"], descendants: true, static: true }], exportAs: ["seamCheckbox"], usesInheritance: true, ngImport: i0, template: "<input #input\n type=\"checkbox\"\n class=\"custom-control-input\"\n [id]=\"inputId\"\n [required]=\"required\"\n [checked]=\"checked\"\n [attr.value]=\"value\"\n [disabled]=\"disabled\"\n [attr.name]=\"name\"\n [tabIndex]=\"tabIndex\"\n [attr.aria-label]=\"ariaLabel || null\"\n [attr.aria-labelledby]=\"ariaLabelledby\"\n [attr.aria-checked]=\"_getAriaChecked()\"\n (change)=\"_onInteractionEvent($event)\"\n (click)=\"_onInputClick($event)\">\n<label #checkboxLabel\n class=\"custom-control-label\"\n [attr.for]=\"inputId\"\n (cdkObserveContent)=\"_onLabelTextChange()\">\n <ng-content></ng-content>\n</label>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
241
240
|
__decorate([
|
|
242
241
|
InputBoolean()
|
|
243
242
|
], TheSeamCheckboxComponent.prototype, "required", void 0);
|
|
244
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
243
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamCheckboxComponent, decorators: [{
|
|
245
244
|
type: Component,
|
|
246
245
|
args: [{ selector: 'seam-checkbox', exportAs: 'seamCheckbox', host: {
|
|
247
246
|
'[attr.tabindex]': 'null',
|
|
@@ -278,4 +277,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.4", ngImpor
|
|
|
278
277
|
type: ViewChild,
|
|
279
278
|
args: ['input', { static: true }]
|
|
280
279
|
}] } });
|
|
281
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQzNFLE9BQU8sRUFFTCxTQUFTLEVBQ1QsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFJTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUV4RSxPQUFPLEVBQTRELFlBQVksRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUE7Ozs7QUFFOUksNkhBQTZIO0FBRTdILCtEQUErRDtBQUMvRCxNQUFNLE9BQU8scUJBQXFCO0lBTWhDLFlBQ21CLE9BQWlDLEVBQ2pDLFFBQWlCO1FBRGpCLFlBQU8sR0FBUCxPQUFPLENBQTBCO1FBQ2pDLGFBQVEsR0FBUixRQUFRLENBQVM7UUFFbEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUE7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUE7SUFDekIsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFDLE1BQU0sdUNBQXVDLEdBQVE7SUFDMUQsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixrREFBa0Q7SUFDbEQsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztJQUN2RCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUE7QUFFRCxNQUFNLDRCQUE0QjtJQUNoQyxZQUFtQixX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QWtIdEIsVUFBVTt5R0FsSFosd0JBQXdCLGllQUp4QixDQUFFLHVDQUF1QyxDQUFFLG1NQ3JFeEQsMG5CQXFCQTtBRCtFMkI7SUFBZixZQUFZLEVBQUU7MERBQTBCOzJGQTNCdkMsd0JBQXdCO2tCQWJwQyxTQUFTOytCQUNFLGVBQWUsWUFHZixjQUFjLFFBQ2xCO3dCQUNKLGlCQUFpQixFQUFFLE1BQU07d0JBQ3pCLE9BQU8sRUFBRSxnQ0FBZ0M7cUJBQzFDLGFBQ1UsQ0FBRSx1Q0FBdUMsQ0FBRSxVQUM5QyxDQUFFLFVBQVUsQ0FBRSxtQkFDTCx1QkFBdUIsQ0FBQyxNQUFNOzswQkFvSDVDLFNBQVM7MkJBQUMsVUFBVTs0Q0F4R2QsRUFBRTtzQkFBVixLQUFLO2dCQVNlLFNBQVM7c0JBQTdCLEtBQUs7dUJBQUMsWUFBWTtnQkFLTyxjQUFjO3NCQUF2QyxLQUFLO3VCQUFDLGlCQUFpQjtnQkFHQyxRQUFRO3NCQUFoQyxLQUFLO2dCQUlGLE9BQU87c0JBRFYsS0FBSztnQkFtQkYsUUFBUTtzQkFEWCxLQUFLO2dCQW9CRixhQUFhO3NCQURoQixLQUFLO2dCQWdCRyxJQUFJO3NCQUFaLEtBQUs7Z0JBR2EsTUFBTTtzQkFBeEIsTUFBTTtnQkFHWSxtQkFBbUI7c0JBQXJDLE1BQU07Z0JBR0UsS0FBSztzQkFBYixLQUFLO2dCQU1nQyxhQUFhO3NCQUFsRCxTQUFTO3VCQUFDLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IsIEZvY3VzT3JpZ2luIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknXG5pbXBvcnQgeyBCb29sZWFuSW5wdXQsIGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbidcbmltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIEF0dHJpYnV0ZSxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgZm9yd2FyZFJlZixcbiAgSW5wdXQsXG4gIE5nWm9uZSxcbiAgT25EZXN0cm95LFxuICBPbkluaXQsXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcblxuaW1wb3J0IHsgQ2FuRGlzYWJsZSwgQ2FuRGlzYWJsZUN0b3IsIEhhc1RhYkluZGV4LCBIYXNUYWJJbmRleEN0b3IsIElucHV0Qm9vbGVhbiwgbWl4aW5EaXNhYmxlZCwgbWl4aW5UYWJJbmRleCB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9jb3JlJ1xuXG4vLyBOT1RFOiBQYXJ0aWFsbHkgYmFzZWQgb24gbWF0LWNoZWNrYm94OiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL2Jsb2IvbWFzdGVyL3NyYy9tYXRlcmlhbC9jaGVja2JveC9jaGVja2JveC50c1xuXG4vKiogQ2hhbmdlIGV2ZW50IG9iamVjdCBlbWl0dGVkIGJ5IFRoZVNlYW1DaGVja2JveENvbXBvbmVudC4gKi9cbmV4cG9ydCBjbGFzcyBUaGVTZWFtQ2hlY2tib3hDaGFuZ2Uge1xuICAvKiogVGhlIHNvdXJjZSBUaGVTZWFtQ2hlY2tib3hDb21wb25lbnQgb2YgdGhlIGV2ZW50LiAqL1xuICBwdWJsaWMgcmVhZG9ubHkgc291cmNlOiBUaGVTZWFtQ2hlY2tib3hDb21wb25lbnRcbiAgLyoqIFRoZSBuZXcgYGNoZWNrZWRgIHZhbHVlIG9mIHRoZSBjaGVja2JveC4gKi9cbiAgcHVibGljIHJlYWRvbmx5IGNoZWNrZWQ6IGJvb2xlYW5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9zb3VyY2U6IFRoZVNlYW1DaGVja2JveENvbXBvbmVudCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9jaGVja2VkOiBib29sZWFuXG4gICkge1xuICAgIHRoaXMuc291cmNlID0gX3NvdXJjZVxuICAgIHRoaXMuY2hlY2tlZCA9IF9jaGVja2VkXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IFRIRVNFQU1fQ0hFQ0tCT1hfQ09OVFJPTF9WQUxVRV9BQ0NFU1NPUjogYW55ID0ge1xuICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby11c2UtYmVmb3JlLWRlY2xhcmVcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVGhlU2VhbUNoZWNrYm94Q29tcG9uZW50KSxcbiAgbXVsdGk6IHRydWVcbn1cblxuY2xhc3MgVGhlU2VhbUNoZWNrYm94Q29tcG9uZW50QmFzZSB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBfZWxlbWVudFJlZjogRWxlbWVudFJlZikge31cbn1cblxuY29uc3QgX1RoZVNlYW1DaGVja2JveE1peGluQmFzZTogSGFzVGFiSW5kZXhDdG9yICYgQ2FuRGlzYWJsZUN0b3IgJlxuICB0eXBlb2YgVGhlU2VhbUNoZWNrYm94Q29tcG9uZW50QmFzZSA9XG4gICAgbWl4aW5UYWJJbmRleChtaXhpbkRpc2FibGVkKFRoZVNlYW1DaGVja2JveENvbXBvbmVudEJhc2UpKVxuXG5sZXQgX3VpZCA9IDBcblxuLyoqXG4gKiBBIENoZWNrYm94LlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLWNoZWNrYm94JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrYm94LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2hlY2tib3guY29tcG9uZW50LnNjc3MnXSxcbiAgZXhwb3J0QXM6ICdzZWFtQ2hlY2tib3gnLFxuICBob3N0OiB7XG4gICAgJ1thdHRyLnRhYmluZGV4XSc6ICdudWxsJyxcbiAgICAnY2xhc3MnOiAnY3VzdG9tLWNvbnRyb2wgY3VzdG9tLWNoZWNrYm94J1xuICB9LFxuICBwcm92aWRlcnM6IFsgVEhFU0VBTV9DSEVDS0JPWF9DT05UUk9MX1ZBTFVFX0FDQ0VTU09SIF0sXG4gIGlucHV0czogWyAndGFiSW5kZXgnIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1DaGVja2JveENvbXBvbmVudCBleHRlbmRzIF9UaGVTZWFtQ2hlY2tib3hNaXhpbkJhc2VcbiAgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIENhbkRpc2FibGUsIEhhc1RhYkluZGV4IHtcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2NoZWNrZWQ6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfZGlzYWJsZWQ6IEJvb2xlYW5JbnB1dFxuICBzdGF0aWMgbmdBY2NlcHRJbnB1dFR5cGVfaW5kZXRlcm1pbmF0ZTogQm9vbGVhbklucHV0XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfdWlkID0gYHNlYW0tY2hrLSR7X3VpZCsrfWBcblxuICAvKiogQSB1bmlxdWUgaWQgZm9yIHRoZSBjaGVja2JveCBpbnB1dC4gSWYgbm9uZSBpcyBzdXBwbGllZCwgaXQgd2lsbCBiZSBhdXRvLWdlbmVyYXRlZC4gKi9cbiAgQElucHV0KCkgaWQ/OiBzdHJpbmcgPSB0aGlzLl91aWRcblxuICAvKiogUmV0dXJucyB0aGUgdW5pcXVlIGlkIGZvciB0aGUgaW5wdXQuICovXG4gIGdldCBpbnB1dElkKCk6IHN0cmluZyB7IHJldHVybiBgJHt0aGlzLmlkIHx8IHRoaXMuX3VpZH1gIH1cblxuICAvKipcbiAgICogQXR0YWNoZWQgdG8gdGhlIGFyaWEtbGFiZWwgYXR0cmlidXRlIG9mIHRoZSBob3N0IGVsZW1lbnQuIEluIG1vc3QgY2FzZXMsIGFyaWEtbGFiZWxsZWRieSB3aWxsXG4gICAqIHRha2UgcHJlY2VkZW5jZSBzbyB0aGlzIG1heSBiZSBvbWl0dGVkLlxuICAgKi9cbiAgQElucHV0KCdhcmlhLWxhYmVsJykgYXJpYUxhYmVsPzogc3RyaW5nID0gJydcblxuICAvKipcbiAgICogVXNlcnMgY2FuIHNwZWNpZnkgdGhlIGBhcmlhLWxhYmVsbGVkYnlgIGF0dHJpYnV0ZSB3aGljaCB3aWxsIGJlIGZvcndhcmRlZCB0byB0aGUgaW5wdXQgZWxlbWVudFxuICAgKi9cbiAgQElucHV0KCdhcmlhLWxhYmVsbGVkYnknKSBhcmlhTGFiZWxsZWRieT86IHN0cmluZyB8IG51bGwgPSBudWxsXG5cbiAgLyoqIFdoZXRoZXIgdGhlIGNoZWNrYm94IGlzIHJlcXVpcmVkLiAqL1xuICBASW5wdXQoKSBASW5wdXRCb29sZWFuKCkgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZVxuXG4gIC8qKiBXaGV0aGVyIHRoZSBjaGVja2JveCBpcyBjaGVja2VkLiAqL1xuICBASW5wdXQoKVxuICBnZXQgY2hlY2tlZCgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2NoZWNrZWQgfVxuICBzZXQgY2hlY2tlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGNvbnN0IG5ld1ZhbHVlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKVxuXG4gICAgaWYgKG5ld1ZhbHVlICE9PSB0aGlzLmNoZWNrZWQpIHtcbiAgICAgIHRoaXMuX2NoZWNrZWQgPSBuZXdWYWx1ZVxuICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKClcbiAgICB9XG4gIH1cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfY2hlY2tlZDogYm9vbGVhbiA9IGZhbHNlXG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGNoZWNrYm94IGlzIGRpc2FibGVkLlxuICAgKi9cbiAgLy8gVGhpcyBmdWxseSBvdmVycmlkZXMgdGhlIGltcGxlbWVudGF0aW9uIHByb3ZpZGVkIGJ5IG1peGluRGlzYWJsZWQsIGJ1dCB0aGVcbiAgLy8gbWl4aW4gaXMgc3RpbGwgcmVxdWlyZWQgYmVjYXVzZSBtaXhpblRhYkluZGV4IHJlcXVpcmVzIGl0LlxuICBASW5wdXQoKVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9kaXNhYmxlZCB9XG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGNvbnN0IG5ld1ZhbHVlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKVxuXG4gICAgaWYgKG5ld1ZhbHVlICE9PSB0aGlzLmRpc2FibGVkKSB7XG4gICAgICB0aGlzLl9kaXNhYmxlZCA9IG5ld1ZhbHVlXG4gICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKVxuICAgIH1cbiAgfVxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIF9kaXNhYmxlZCA9IGZhbHNlXG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGNoZWNrYm94IGlzIGluZGV0ZXJtaW5hdGUuIFRoaXMgaXMgYWxzbyBrbm93biBhcyBcIm1peGVkXCIgbW9kZSBhbmQgY2FuIGJlIHVzZWQgdG9cbiAgICogcmVwcmVzZW50IGEgY2hlY2tib3ggd2l0aCB0aHJlZSBzdGF0ZXMsIGUuZy4gYSBjaGVja2JveCB0aGF0IHJlcHJlc2VudHMgYSBuZXN0ZWQgbGlzdCBvZlxuICAgKiBjaGVja2FibGUgaXRlbXMuIE5vdGUgdGhhdCB3aGVuZXZlciBjaGVja2JveCBpcyBtYW51YWxseSBjbGlja2VkLCBpbmRldGVybWluYXRlIGlzIGltbWVkaWF0ZWx5XG4gICAqIHNldCB0byBmYWxzZS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBpbmRldGVybWluYXRlKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5faW5kZXRlcm1pbmF0ZSB9XG4gIHNldCBpbmRldGVybWluYXRlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgY29uc3QgY2hhbmdlZCA9IHZhbHVlICE9PSB0aGlzLl9pbmRldGVybWluYXRlXG4gICAgdGhpcy5faW5kZXRlcm1pbmF0ZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSlcblxuICAgIGlmIChjaGFuZ2VkKSB7XG4gICAgICB0aGlzLmluZGV0ZXJtaW5hdGVDaGFuZ2UuZW1pdCh0aGlzLl9pbmRldGVybWluYXRlKVxuICAgIH1cblxuICAgIHRoaXMuX3N5bmNJbmRldGVybWluYXRlKHRoaXMuX2luZGV0ZXJtaW5hdGUpXG4gIH1cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfaW5kZXRlcm1pbmF0ZSA9IGZhbHNlXG5cbiAgLyoqIE5hbWUgdmFsdWUgd2lsbCBiZSBhcHBsaWVkIHRvIHRoZSBpbnB1dCBlbGVtZW50IGlmIHByZXNlbnQgKi9cbiAgQElucHV0KCkgbmFtZTogc3RyaW5nIHwgdW5kZWZpbmVkIHwgbnVsbCA9IG51bGxcblxuICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBjaGVja2JveCdzIGBjaGVja2VkYCB2YWx1ZSBjaGFuZ2VzLiAqL1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUaGVTZWFtQ2hlY2tib3hDaGFuZ2U+KClcblxuICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSBjaGVja2JveCdzIGBpbmRldGVybWluYXRlYCB2YWx1ZSBjaGFuZ2VzLiAqL1xuICBAT3V0cHV0KCkgcmVhZG9ubHkgaW5kZXRlcm1pbmF0ZUNoYW5nZTogRXZlbnRFbWl0dGVyPGJvb2xlYW4+ID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpXG5cbiAgLyoqIFRoZSB2YWx1ZSBhdHRyaWJ1dGUgb2YgdGhlIG5hdGl2ZSBpbnB1dCBlbGVtZW50ICovXG4gIEBJbnB1dCgpIHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgLyoqXG4gICAqIFRoZSBuYXRpdmUgYDxpbnB1dCB0eXBlPVwiY2hlY2tib3hcIj5gIGVsZW1lbnRcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgQFZpZXdDaGlsZCgnaW5wdXQnLCB7IHN0YXRpYzogdHJ1ZSB9KSBfaW5wdXRFbGVtZW50OiBFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+IHwgdW5kZWZpbmVkIHwgbnVsbFxuXG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB0aGUgY2hlY2tib3ggaXMgYmx1cnJlZC4gTmVlZGVkIHRvIHByb3Blcmx5IGltcGxlbWVudCBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgX29uVG91Y2hlZDogKCkgPT4gYW55ID0gKCkgPT4ge31cblxuICAvKiogQGlnbm9yZSAqL1xuICBwcml2YXRlIF9jb250cm9sVmFsdWVBY2Nlc3NvckNoYW5nZUZuOiAodmFsdWU6IGFueSkgPT4gdm9pZCA9ICgpID0+IHt9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBfZm9jdXNNb25pdG9yOiBGb2N1c01vbml0b3IsXG4gICAgcHJpdmF0ZSBfbmdab25lOiBOZ1pvbmUsXG4gICAgQEF0dHJpYnV0ZSgndGFiaW5kZXgnKSB0YWJJbmRleDogc3RyaW5nXG4gICkge1xuICAgIHN1cGVyKGVsZW1lbnRSZWYpXG5cbiAgICB0aGlzLnRhYkluZGV4ID0gcGFyc2VJbnQodGFiSW5kZXgsIDEwKSB8fCAwXG5cbiAgICB0aGlzLl9mb2N1c01vbml0b3IubW9uaXRvcihlbGVtZW50UmVmLCB0cnVlKS5zdWJzY3JpYmUoZm9jdXNPcmlnaW4gPT4ge1xuICAgICAgaWYgKCFmb2N1c09yaWdpbikge1xuICAgICAgICAvLyBXaGVuIGEgZm9jdXNlZCBlbGVtZW50IGJlY29tZXMgZGlzYWJsZWQsIHRoZSBicm93c2VyICppbW1lZGlhdGVseSogZmlyZXMgYSBibHVyIGV2ZW50LlxuICAgICAgICAvLyBBbmd1bGFyIGRvZXMgbm90IGV4cGVjdCBldmVudHMgdG8gYmUgcmFpc2VkIGR1cmluZyBjaGFuZ2UgZGV0ZWN0aW9uLCBzbyBhbnkgc3RhdGUgY2hhbmdlXG4gICAgICAgIC8vIChzdWNoIGFzIGEgZm9ybSBjb250cm9sJ3MgJ25nLXRvdWNoZWQnKSB3aWxsIGNhdXNlIGEgY2hhbmdlZC1hZnRlci1jaGVja2VkIGVycm9yLlxuICAgICAgICAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMTc3OTMuIFRvIHdvcmsgYXJvdW5kIHRoaXMsIHdlIGRlZmVyXG4gICAgICAgIC8vIHRlbGxpbmcgdGhlIGZvcm0gY29udHJvbCBpdCBoYXMgYmVlbiB0b3VjaGVkIHVudGlsIHRoZSBuZXh0IHRpY2suXG4gICAgICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX29uVG91Y2hlZCgpXG4gICAgICAgICAgX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpXG4gICAgICAgIH0pXG4gICAgICB9XG4gICAgfSlcbiAgfVxuXG4gIC8qKiBAaWdub3JlICovXG4gIG5nT25Jbml0KCkgeyB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fZm9jdXNNb25pdG9yLnN0b3BNb25pdG9yaW5nKHRoaXMuX2VsZW1lbnRSZWYpXG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5fc3luY0luZGV0ZXJtaW5hdGUodGhpcy5faW5kZXRlcm1pbmF0ZSlcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2QgYmVpbmcgY2FsbGVkIHdoZW5ldmVyIHRoZSBsYWJlbCB0ZXh0IGNoYW5nZXMuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIF9vbkxhYmVsVGV4dENoYW5nZSgpIHtcbiAgICAvLyBTaW5jZSB0aGUgZXZlbnQgb2YgdGhlIGBjZGtPYnNlcnZlQ29udGVudGAgZGlyZWN0aXZlIHJ1bnMgb3V0c2lkZSBvZiB0aGUgem9uZSwgdGhlIGNoZWNrYm94XG4gICAgLy8gY29tcG9uZW50IHdpbGwgYmUgb25seSBtYXJrZWQgZm9yIGNoZWNrLCBidXQgbm8gYWN0dWFsIGNoYW5nZSBkZXRlY3Rpb24gcnVucyBhdXRvbWF0aWNhbGx5LlxuICAgIC8vIEluc3RlYWQgb2YgZ29pbmcgYmFjayBpbnRvIHRoZSB6b25lIGluIG9yZGVyIHRvIHRyaWdnZXIgYSBjaGFuZ2UgZGV0ZWN0aW9uIHdoaWNoIGNhdXNlc1xuICAgIC8vICphbGwqIGNvbXBvbmVudHMgdG8gYmUgY2hlY2tlZCAoaWYgZXhwbGljaXRseSBtYXJrZWQgb3Igbm90IHVzaW5nIE9uUHVzaCksIHdlIG9ubHkgdHJpZ2dlclxuICAgIC8vIGFuIGV4cGxpY2l0IGNoYW5nZSBkZXRlY3Rpb24gZm9yIHRoZSBjaGVja2JveCB2aWV3IGFuZCBpdHMgY2hpbGRyZW4uXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpXG4gIH1cblxuICAvLyBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAvKiogQGlnbm9yZSAqL1xuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLmNoZWNrZWQgPSAhIXZhbHVlXG4gIH1cblxuICAvLyBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAvKiogQGlnbm9yZSAqL1xuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGFueSkgPT4gdm9pZCkge1xuICAgIHRoaXMuX2NvbnRyb2xWYWx1ZUFjY2Vzc29yQ2hhbmdlRm4gPSBmblxuICB9XG5cbiAgLy8gSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xuICAgIHRoaXMuX29uVG91Y2hlZCA9IGZuXG4gIH1cblxuICAvLyBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAvKiogQGlnbm9yZSAqL1xuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZFxuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgX2dldEFyaWFDaGVja2VkKCk6ICd0cnVlJyB8ICdmYWxzZScgfCAnbWl4ZWQnIHtcbiAgICByZXR1cm4gdGhpcy5jaGVja2VkID8gJ3RydWUnIDogKHRoaXMuaW5kZXRlcm1pbmF0ZSA/ICdtaXhlZCcgOiAnZmFsc2UnKVxuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfZW1pdENoYW5nZUV2ZW50KCkge1xuICAgIGNvbnN0IGV2ZW50ID0gbmV3IFRoZVNlYW1DaGVja2JveENoYW5nZSh0aGlzLCB0aGlzLmNoZWNrZWQpXG5cbiAgICB0aGlzLl9jb250cm9sVmFsdWVBY2Nlc3NvckNoYW5nZUZuKHRoaXMuY2hlY2tlZClcbiAgICB0aGlzLmNoYW5nZS5lbWl0KGV2ZW50KVxuICB9XG5cbiAgLyoqIFRvZ2dsZXMgdGhlIGBjaGVja2VkYCBzdGF0ZSBvZiB0aGUgY2hlY2tib3guICovXG4gIHRvZ2dsZSgpOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrZWQgPSAhdGhpcy5jaGVja2VkXG4gIH1cblxuICAvKipcbiAgICogRXZlbnQgaGFuZGxlciBmb3IgY2hlY2tib3ggaW5wdXQgZWxlbWVudC5cbiAgICogVG9nZ2xlcyBjaGVja2VkIHN0YXRlIGlmIGVsZW1lbnQgaXMgbm90IGRpc2FibGVkLlxuICAgKiBEbyBub3QgdG9nZ2xlIG9uIChjaGFuZ2UpIGV2ZW50IHNpbmNlIElFIGRvZXNuJ3QgZmlyZSBjaGFuZ2UgZXZlbnQgd2hlblxuICAgKiAgIGluZGV0ZXJtaW5hdGUgY2hlY2tib3ggaXMgY2xpY2tlZC5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgX29uSW5wdXRDbGljayhldmVudDogRXZlbnQpIHtcbiAgICAvLyBJZiByZXNldEluZGV0ZXJtaW5hdGUgaXMgZmFsc2UsIGFuZCB0aGUgY3VycmVudCBzdGF0ZSBpcyBpbmRldGVybWluYXRlLCBkbyBub3RoaW5nIG9uIGNsaWNrXG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAvLyBXaGVuIHVzZXIgbWFudWFsbHkgY2xpY2sgb24gdGhlIGNoZWNrYm94LCBgaW5kZXRlcm1pbmF0ZWAgaXMgc2V0IHRvIGZhbHNlLlxuICAgICAgaWYgKHRoaXMuaW5kZXRlcm1pbmF0ZSkge1xuXG4gICAgICAgIFByb21pc2UucmVzb2x2ZSgpLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHRoaXMuX2luZGV0ZXJtaW5hdGUgPSBmYWxzZVxuICAgICAgICAgIHRoaXMuaW5kZXRlcm1pbmF0ZUNoYW5nZS5lbWl0KHRoaXMuX2luZGV0ZXJtaW5hdGUpXG4gICAgICAgIH0pXG4gICAgICB9XG5cbiAgICAgIHRoaXMudG9nZ2xlKClcblxuICAgICAgLy8gRW1pdCBvdXIgY3VzdG9tIGNoYW5nZSBldmVudCBpZiB0aGUgbmF0aXZlIGlucHV0IGVtaXR0ZWQgb25lLlxuICAgICAgLy8gSXQgaXMgaW1wb3J0YW50IHRvIG9ubHkgZW1pdCBpdCwgaWYgdGhlIG5hdGl2ZSBpbnB1dCB0cmlnZ2VyZWQgb25lLCBiZWNhdXNlXG4gICAgICAvLyB3ZSBkb24ndCB3YW50IHRvIHRyaWdnZXIgYSBjaGFuZ2UgZXZlbnQsIHdoZW4gdGhlIGBjaGVja2VkYCB2YXJpYWJsZSBjaGFuZ2VzIGZvciBleGFtcGxlLlxuICAgICAgdGhpcy5fZW1pdENoYW5nZUV2ZW50KClcbiAgICB9XG4gIH1cblxuICAvKiogRm9jdXNlcyB0aGUgY2hlY2tib3guICovXG4gIGZvY3VzKG9yaWdpbjogRm9jdXNPcmlnaW4gPSAna2V5Ym9hcmQnLCBvcHRpb25zPzogRm9jdXNPcHRpb25zKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLl9pbnB1dEVsZW1lbnQpIHsgcmV0dXJuIH1cbiAgICB0aGlzLl9mb2N1c01vbml0b3IuZm9jdXNWaWEodGhpcy5faW5wdXRFbGVtZW50LCBvcmlnaW4sIG9wdGlvbnMpXG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBfb25JbnRlcmFjdGlvbkV2ZW50KGV2ZW50OiBFdmVudCkge1xuICAgIC8vIFdlIGFsd2F5cyBoYXZlIHRvIHN0b3AgcHJvcGFnYXRpb24gb24gdGhlIGNoYW5nZSBldmVudC5cbiAgICAvLyBPdGhlcndpc2UgdGhlIGNoYW5nZSBldmVudCwgZnJvbSB0aGUgaW5wdXQgZWxlbWVudCwgd2lsbCBidWJibGUgdXAgYW5kXG4gICAgLy8gZW1pdCBpdHMgZXZlbnQgb2JqZWN0IHRvIHRoZSBgY2hhbmdlYCBvdXRwdXQuXG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcbiAgfVxuXG4gIC8qKlxuICAgKiBTeW5jcyB0aGUgaW5kZXRlcm1pbmF0ZSB2YWx1ZSB3aXRoIHRoZSBjaGVja2JveCBET00gbm9kZS5cbiAgICpcbiAgICogV2Ugc3luYyBgaW5kZXRlcm1pbmF0ZWAgZGlyZWN0bHkgb24gdGhlIERPTSBub2RlLCBiZWNhdXNlIGluIEl2eSB0aGUgY2hlY2sgZm9yIHdoZXRoZXIgYVxuICAgKiBwcm9wZXJ0eSBpcyBzdXBwb3J0ZWQgb24gYW4gZWxlbWVudCBib2lscyBkb3duIHRvIGBpZiAocHJvcE5hbWUgaW4gZWxlbWVudClgLiBEb21pbm8nc1xuICAgKiBIVE1MSW5wdXRFbGVtZW50IGRvZXNuJ3QgaGF2ZSBhbiBgaW5kZXRlcm1pbmF0ZWAgcHJvcGVydHkgc28gSXZ5IHdpbGwgd2FybiBkdXJpbmdcbiAgICogc2VydmVyLXNpZGUgcmVuZGVyaW5nLlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBwcml2YXRlIF9zeW5jSW5kZXRlcm1pbmF0ZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIGNvbnN0IG5hdGl2ZUNoZWNrYm94ID0gdGhpcy5faW5wdXRFbGVtZW50XG5cbiAgICBpZiAobmF0aXZlQ2hlY2tib3gpIHtcbiAgICAgIG5hdGl2ZUNoZWNrYm94Lm5hdGl2ZUVsZW1lbnQuaW5kZXRlcm1pbmF0ZSA9IHZhbHVlXG4gICAgfVxuICB9XG5cbn1cbiIsIjxpbnB1dCAjaW5wdXRcbiAgdHlwZT1cImNoZWNrYm94XCJcbiAgY2xhc3M9XCJjdXN0b20tY29udHJvbC1pbnB1dFwiXG4gIFtpZF09XCJpbnB1dElkXCJcbiAgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCJcbiAgW2NoZWNrZWRdPVwiY2hlY2tlZFwiXG4gIFthdHRyLnZhbHVlXT1cInZhbHVlXCJcbiAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgW2F0dHIubmFtZV09XCJuYW1lXCJcbiAgW3RhYkluZGV4XT1cInRhYkluZGV4XCJcbiAgW2F0dHIuYXJpYS1sYWJlbF09XCJhcmlhTGFiZWwgfHwgbnVsbFwiXG4gIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRieVwiXG4gIFthdHRyLmFyaWEtY2hlY2tlZF09XCJfZ2V0QXJpYUNoZWNrZWQoKVwiXG4gIChjaGFuZ2UpPVwiX29uSW50ZXJhY3Rpb25FdmVudCgkZXZlbnQpXCJcbiAgKGNsaWNrKT1cIl9vbklucHV0Q2xpY2soJGV2ZW50KVwiPlxuPGxhYmVsICNjaGVja2JveExhYmVsXG4gIGNsYXNzPVwiY3VzdG9tLWNvbnRyb2wtbGFiZWxcIlxuICBbYXR0ci5mb3JdPVwiaW5wdXRJZFwiXG4gIChjZGtPYnNlcnZlQ29udGVudCk9XCJfb25MYWJlbFRleHRDaGFuZ2UoKVwiPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L2xhYmVsPlxuIl19
|
|
280
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdWktY29tbW9uL2NoZWNrYm94L2NoZWNrYm94LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFnQixxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBQzNFLE9BQU8sRUFFTCxTQUFTLEVBQ1QsdUJBQXVCLEVBRXZCLFNBQVMsRUFFVCxZQUFZLEVBQ1osVUFBVSxFQUNWLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFBO0FBQ3RCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQTtBQUV4RSxPQUFPLEVBQTRELFlBQVksRUFBRSxhQUFhLEVBQUUsYUFBYSxFQUFFLE1BQU0seUJBQXlCLENBQUE7Ozs7QUFFOUksNkhBQTZIO0FBRTdILCtEQUErRDtBQUMvRCxNQUFNLE9BQU8scUJBQXFCO0lBTWhDLFlBQ21CLE9BQWlDLEVBQ2pDLFFBQWlCO1FBRGpCLFlBQU8sR0FBUCxPQUFPLENBQTBCO1FBQ2pDLGFBQVEsR0FBUixRQUFRLENBQVM7UUFFbEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUE7UUFDckIsSUFBSSxDQUFDLE9BQU8sR0FBRyxRQUFRLENBQUE7SUFDekIsQ0FBQztDQUNGO0FBRUQsTUFBTSxDQUFDLE1BQU0sdUNBQXVDLEdBQVE7SUFDMUQsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixrREFBa0Q7SUFDbEQsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztJQUN2RCxLQUFLLEVBQUUsSUFBSTtDQUNaLENBQUE7QUFFRCxNQUFNLDRCQUE0QjtJQUNoQyxZQUFtQixX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QkFBd0IsaWVBSnhCLENBQUUsdUNBQXVDLENBQUUsbU1DcEV4RCwwbkJBcUJBO0FEOEUyQjtJQUFmLFlBQVksRUFBRTswREFBaUI7MkZBM0I5Qix3QkFBd0I7a0JBYnBDLFNBQVM7K0JBQ0UsZUFBZSxZQUdmLGNBQWMsUUFDbEI7d0JBQ0osaUJBQWlCLEVBQUUsTUFBTTt3QkFDekIsT0FBTyxFQUFFLGdDQUFnQztxQkFDMUMsYUFDVSxDQUFFLHVDQUF1QyxDQUFFLFVBQzlDLENBQUUsVUFBVSxDQUFFLG1CQUNMLHVCQUF1QixDQUFDLE1BQU07OzBCQXFINUMsU0FBUzsyQkFBQyxVQUFVOzRDQXpHZCxFQUFFO3NCQUFWLEtBQUs7Z0JBU2UsU0FBUztzQkFBN0IsS0FBSzt1QkFBQyxZQUFZO2dCQUtPLGNBQWM7c0JBQXZDLEtBQUs7dUJBQUMsaUJBQWlCO2dCQUdDLFFBQVE7c0JBQWhDLEtBQUs7Z0JBSUYsT0FBTztzQkFEVixLQUFLO2dCQW1CRixRQUFRO3NCQURYLEtBQUs7Z0JBb0JGLGFBQWE7c0JBRGhCLEtBQUs7Z0JBZ0JHLElBQUk7c0JBQVosS0FBSztnQkFJYSxNQUFNO3NCQUF4QixNQUFNO2dCQUdZLG1CQUFtQjtzQkFBckMsTUFBTTtnQkFHRSxLQUFLO3NCQUFiLEtBQUs7Z0JBTWdDLGFBQWE7c0JBQWxELFNBQVM7dUJBQUMsT0FBTyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvY3VzTW9uaXRvciwgRm9jdXNPcmlnaW4gfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSdcbmltcG9ydCB7IEJvb2xlYW5JbnB1dCwgY29lcmNlQm9vbGVhblByb3BlcnR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJ1xuaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQXR0cmlidXRlLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBmb3J3YXJkUmVmLFxuICBJbnB1dCxcbiAgTmdab25lLFxuICBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3JtcydcblxuaW1wb3J0IHsgQ2FuRGlzYWJsZSwgQ2FuRGlzYWJsZUN0b3IsIEhhc1RhYkluZGV4LCBIYXNUYWJJbmRleEN0b3IsIElucHV0Qm9vbGVhbiwgbWl4aW5EaXNhYmxlZCwgbWl4aW5UYWJJbmRleCB9IGZyb20gJ0B0aGVzZWFtL3VpLWNvbW1vbi9jb3JlJ1xuXG4vLyBOT1RFOiBQYXJ0aWFsbHkgYmFzZWQgb24gbWF0LWNoZWNrYm94OiBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9jb21wb25lbnRzL2Jsb2IvbWFzdGVyL3NyYy9tYXRlcmlhbC9jaGVja2JveC9jaGVja2JveC50c1xuXG4vKiogQ2hhbmdlIGV2ZW50IG9iamVjdCBlbWl0dGVkIGJ5IFRoZVNlYW1DaGVja2JveENvbXBvbmVudC4gKi9cbmV4cG9ydCBjbGFzcyBUaGVTZWFtQ2hlY2tib3hDaGFuZ2Uge1xuICAvKiogVGhlIHNvdXJjZSBUaGVTZWFtQ2hlY2tib3hDb21wb25lbnQgb2YgdGhlIGV2ZW50LiAqL1xuICBwdWJsaWMgcmVhZG9ubHkgc291cmNlOiBUaGVTZWFtQ2hlY2tib3hDb21wb25lbnRcbiAgLyoqIFRoZSBuZXcgYGNoZWNrZWRgIHZhbHVlIG9mIHRoZSBjaGVja2JveC4gKi9cbiAgcHVibGljIHJlYWRvbmx5IGNoZWNrZWQ6IGJvb2xlYW5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9zb3VyY2U6IFRoZVNlYW1DaGVja2JveENvbXBvbmVudCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9jaGVja2VkOiBib29sZWFuXG4gICkge1xuICAgIHRoaXMuc291cmNlID0gX3NvdXJjZVxuICAgIHRoaXMuY2hlY2tlZCA9IF9jaGVja2VkXG4gIH1cbn1cblxuZXhwb3J0IGNvbnN0IFRIRVNFQU1fQ0hFQ0tCT1hfQ09OVFJPTF9WQUxVRV9BQ0NFU1NPUjogYW55ID0ge1xuICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgLy8gdHNsaW50OmRpc2FibGUtbmV4dC1saW5lOiBuby11c2UtYmVmb3JlLWRlY2xhcmVcbiAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gVGhlU2VhbUNoZWNrYm94Q29tcG9uZW50KSxcbiAgbXVsdGk6IHRydWVcbn1cblxuY2xhc3MgVGhlU2VhbUNoZWNrYm94Q29tcG9uZW50QmFzZSB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBfZWxlbWVudFJlZjogRWxlbWVudFJlZikge31cbn1cblxuY29uc3QgX1RoZVNlYW1DaGVja2JveE1peGluQmFzZTogSGFzVGFiSW5kZXhDdG9yICYgQ2FuRGlzYWJsZUN0b3IgJlxuICB0eXBlb2YgVGhlU2VhbUNoZWNrYm94Q29tcG9uZW50QmFzZSA9XG4gICAgbWl4aW5UYWJJbmRleChtaXhpbkRpc2FibGVkKFRoZVNlYW1DaGVja2JveENvbXBvbmVudEJhc2UpKVxuXG5sZXQgX3VpZCA9IDBcblxuLyoqXG4gKiBBIENoZWNrYm94LlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzZWFtLWNoZWNrYm94JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NoZWNrYm94LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY2hlY2tib3guY29tcG9uZW50LnNjc3MnXSxcbiAgZXhwb3J0QXM6ICdzZWFtQ2hlY2tib3gnLFxuICBob3N0OiB7XG4gICAgJ1thdHRyLnRhYmluZGV4XSc6ICdudWxsJyxcbiAgICAnY2xhc3MnOiAnY3VzdG9tLWNvbnRyb2wgY3VzdG9tLWNoZWNrYm94J1xuICB9LFxuICBwcm92aWRlcnM6IFsgVEhFU0VBTV9DSEVDS0JPWF9DT05UUk9MX1ZBTFVFX0FDQ0VTU09SIF0sXG4gIGlucHV0czogWyAndGFiSW5kZXgnIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFRoZVNlYW1DaGVja2JveENvbXBvbmVudCBleHRlbmRzIF9UaGVTZWFtQ2hlY2tib3hNaXhpbkJhc2VcbiAgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3ksIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBDYW5EaXNhYmxlLCBIYXNUYWJJbmRleCB7XG4gIHN0YXRpYyBuZ0FjY2VwdElucHV0VHlwZV9jaGVja2VkOiBCb29sZWFuSW5wdXRcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2Rpc2FibGVkOiBCb29sZWFuSW5wdXRcbiAgc3RhdGljIG5nQWNjZXB0SW5wdXRUeXBlX2luZGV0ZXJtaW5hdGU6IEJvb2xlYW5JbnB1dFxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgX3VpZCA9IGBzZWFtLWNoay0ke191aWQrK31gXG5cbiAgLyoqIEEgdW5pcXVlIGlkIGZvciB0aGUgY2hlY2tib3ggaW5wdXQuIElmIG5vbmUgaXMgc3VwcGxpZWQsIGl0IHdpbGwgYmUgYXV0by1nZW5lcmF0ZWQuICovXG4gIEBJbnB1dCgpIGlkPzogc3RyaW5nID0gdGhpcy5fdWlkXG5cbiAgLyoqIFJldHVybnMgdGhlIHVuaXF1ZSBpZCBmb3IgdGhlIGlucHV0LiAqL1xuICBnZXQgaW5wdXRJZCgpOiBzdHJpbmcgeyByZXR1cm4gYCR7dGhpcy5pZCB8fCB0aGlzLl91aWR9YCB9XG5cbiAgLyoqXG4gICAqIEF0dGFjaGVkIHRvIHRoZSBhcmlhLWxhYmVsIGF0dHJpYnV0ZSBvZiB0aGUgaG9zdCBlbGVtZW50LiBJbiBtb3N0IGNhc2VzLCBhcmlhLWxhYmVsbGVkYnkgd2lsbFxuICAgKiB0YWtlIHByZWNlZGVuY2Ugc28gdGhpcyBtYXkgYmUgb21pdHRlZC5cbiAgICovXG4gIEBJbnB1dCgnYXJpYS1sYWJlbCcpIGFyaWFMYWJlbD86IHN0cmluZyA9ICcnXG5cbiAgLyoqXG4gICAqIFVzZXJzIGNhbiBzcGVjaWZ5IHRoZSBgYXJpYS1sYWJlbGxlZGJ5YCBhdHRyaWJ1dGUgd2hpY2ggd2lsbCBiZSBmb3J3YXJkZWQgdG8gdGhlIGlucHV0IGVsZW1lbnRcbiAgICovXG4gIEBJbnB1dCgnYXJpYS1sYWJlbGxlZGJ5JykgYXJpYUxhYmVsbGVkYnk/OiBzdHJpbmcgfCBudWxsID0gbnVsbFxuXG4gIC8qKiBXaGV0aGVyIHRoZSBjaGVja2JveCBpcyByZXF1aXJlZC4gKi9cbiAgQElucHV0KCkgQElucHV0Qm9vbGVhbigpIHJlcXVpcmVkID0gZmFsc2VcblxuICAvKiogV2hldGhlciB0aGUgY2hlY2tib3ggaXMgY2hlY2tlZC4gKi9cbiAgQElucHV0KClcbiAgZ2V0IGNoZWNrZWQoKTogYm9vbGVhbiB7IHJldHVybiB0aGlzLl9jaGVja2VkIH1cbiAgc2V0IGNoZWNrZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBuZXdWYWx1ZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSlcblxuICAgIGlmIChuZXdWYWx1ZSAhPT0gdGhpcy5jaGVja2VkKSB7XG4gICAgICB0aGlzLl9jaGVja2VkID0gbmV3VmFsdWVcbiAgICAgIHRoaXMuX2NoYW5nZURldGVjdG9yUmVmLm1hcmtGb3JDaGVjaygpXG4gICAgfVxuICB9XG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgX2NoZWNrZWQgPSBmYWxzZVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBjaGVja2JveCBpcyBkaXNhYmxlZC5cbiAgICovXG4gIC8vIFRoaXMgZnVsbHkgb3ZlcnJpZGVzIHRoZSBpbXBsZW1lbnRhdGlvbiBwcm92aWRlZCBieSBtaXhpbkRpc2FibGVkLCBidXQgdGhlXG4gIC8vIG1peGluIGlzIHN0aWxsIHJlcXVpcmVkIGJlY2F1c2UgbWl4aW5UYWJJbmRleCByZXF1aXJlcyBpdC5cbiAgQElucHV0KClcbiAgZ2V0IGRpc2FibGVkKCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5fZGlzYWJsZWQgfVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBuZXdWYWx1ZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSlcblxuICAgIGlmIChuZXdWYWx1ZSAhPT0gdGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5fZGlzYWJsZWQgPSBuZXdWYWx1ZVxuICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKClcbiAgICB9XG4gIH1cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfZGlzYWJsZWQgPSBmYWxzZVxuXG4gIC8qKlxuICAgKiBXaGV0aGVyIHRoZSBjaGVja2JveCBpcyBpbmRldGVybWluYXRlLiBUaGlzIGlzIGFsc28ga25vd24gYXMgXCJtaXhlZFwiIG1vZGUgYW5kIGNhbiBiZSB1c2VkIHRvXG4gICAqIHJlcHJlc2VudCBhIGNoZWNrYm94IHdpdGggdGhyZWUgc3RhdGVzLCBlLmcuIGEgY2hlY2tib3ggdGhhdCByZXByZXNlbnRzIGEgbmVzdGVkIGxpc3Qgb2ZcbiAgICogY2hlY2thYmxlIGl0ZW1zLiBOb3RlIHRoYXQgd2hlbmV2ZXIgY2hlY2tib3ggaXMgbWFudWFsbHkgY2xpY2tlZCwgaW5kZXRlcm1pbmF0ZSBpcyBpbW1lZGlhdGVseVxuICAgKiBzZXQgdG8gZmFsc2UuXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgaW5kZXRlcm1pbmF0ZSgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuX2luZGV0ZXJtaW5hdGUgfVxuICBzZXQgaW5kZXRlcm1pbmF0ZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIGNvbnN0IGNoYW5nZWQgPSB2YWx1ZSAhPT0gdGhpcy5faW5kZXRlcm1pbmF0ZVxuICAgIHRoaXMuX2luZGV0ZXJtaW5hdGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpXG5cbiAgICBpZiAoY2hhbmdlZCkge1xuICAgICAgdGhpcy5pbmRldGVybWluYXRlQ2hhbmdlLmVtaXQodGhpcy5faW5kZXRlcm1pbmF0ZSlcbiAgICB9XG5cbiAgICB0aGlzLl9zeW5jSW5kZXRlcm1pbmF0ZSh0aGlzLl9pbmRldGVybWluYXRlKVxuICB9XG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgX2luZGV0ZXJtaW5hdGUgPSBmYWxzZVxuXG4gIC8qKiBOYW1lIHZhbHVlIHdpbGwgYmUgYXBwbGllZCB0byB0aGUgaW5wdXQgZWxlbWVudCBpZiBwcmVzZW50ICovXG4gIEBJbnB1dCgpIG5hbWU6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGwgPSBudWxsXG5cbiAgLyoqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgY2hlY2tib3gncyBgY2hlY2tlZGAgdmFsdWUgY2hhbmdlcy4gKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1vdXRwdXQtbmF0aXZlXG4gIEBPdXRwdXQoKSByZWFkb25seSBjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFRoZVNlYW1DaGVja2JveENoYW5nZT4oKVxuXG4gIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIGNoZWNrYm94J3MgYGluZGV0ZXJtaW5hdGVgIHZhbHVlIGNoYW5nZXMuICovXG4gIEBPdXRwdXQoKSByZWFkb25seSBpbmRldGVybWluYXRlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4gPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KClcblxuICAvKiogVGhlIHZhbHVlIGF0dHJpYnV0ZSBvZiB0aGUgbmF0aXZlIGlucHV0IGVsZW1lbnQgKi9cbiAgQElucHV0KCkgdmFsdWU6IHN0cmluZyB8IHVuZGVmaW5lZCB8IG51bGxcblxuICAvKipcbiAgICogVGhlIG5hdGl2ZSBgPGlucHV0IHR5cGU9XCJjaGVja2JveFwiPmAgZWxlbWVudFxuICAgKiBAaWdub3JlXG4gICAqL1xuICBAVmlld0NoaWxkKCdpbnB1dCcsIHsgc3RhdGljOiB0cnVlIH0pIF9pbnB1dEVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTElucHV0RWxlbWVudD4gfCB1bmRlZmluZWQgfCBudWxsXG5cbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIHRoZSBjaGVja2JveCBpcyBibHVycmVkLiBOZWVkZWQgdG8gcHJvcGVybHkgaW1wbGVtZW50IENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBfb25Ub3VjaGVkOiAoKSA9PiBhbnkgPSAoKSA9PiB7fVxuXG4gIC8qKiBAaWdub3JlICovXG4gIHByaXZhdGUgX2NvbnRyb2xWYWx1ZUFjY2Vzc29yQ2hhbmdlRm46ICh2YWx1ZTogYW55KSA9PiB2b2lkID0gKCkgPT4ge31cblxuICBjb25zdHJ1Y3RvcihcbiAgICBlbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgX2NoYW5nZURldGVjdG9yUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIF9mb2N1c01vbml0b3I6IEZvY3VzTW9uaXRvcixcbiAgICBwcml2YXRlIF9uZ1pvbmU6IE5nWm9uZSxcbiAgICBAQXR0cmlidXRlKCd0YWJpbmRleCcpIHRhYkluZGV4OiBzdHJpbmdcbiAgKSB7XG4gICAgc3VwZXIoZWxlbWVudFJlZilcblxuICAgIHRoaXMudGFiSW5kZXggPSBwYXJzZUludCh0YWJJbmRleCwgMTApIHx8IDBcblxuICAgIHRoaXMuX2ZvY3VzTW9uaXRvci5tb25pdG9yKGVsZW1lbnRSZWYsIHRydWUpLnN1YnNjcmliZShmb2N1c09yaWdpbiA9PiB7XG4gICAgICBpZiAoIWZvY3VzT3JpZ2luKSB7XG4gICAgICAgIC8vIFdoZW4gYSBmb2N1c2VkIGVsZW1lbnQgYmVjb21lcyBkaXNhYmxlZCwgdGhlIGJyb3dzZXIgKmltbWVkaWF0ZWx5KiBmaXJlcyBhIGJsdXIgZXZlbnQuXG4gICAgICAgIC8vIEFuZ3VsYXIgZG9lcyBub3QgZXhwZWN0IGV2ZW50cyB0byBiZSByYWlzZWQgZHVyaW5nIGNoYW5nZSBkZXRlY3Rpb24sIHNvIGFueSBzdGF0ZSBjaGFuZ2VcbiAgICAgICAgLy8gKHN1Y2ggYXMgYSBmb3JtIGNvbnRyb2wncyAnbmctdG91Y2hlZCcpIHdpbGwgY2F1c2UgYSBjaGFuZ2VkLWFmdGVyLWNoZWNrZWQgZXJyb3IuXG4gICAgICAgIC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vYW5ndWxhci9hbmd1bGFyL2lzc3Vlcy8xNzc5My4gVG8gd29yayBhcm91bmQgdGhpcywgd2UgZGVmZXJcbiAgICAgICAgLy8gdGVsbGluZyB0aGUgZm9ybSBjb250cm9sIGl0IGhhcyBiZWVuIHRvdWNoZWQgdW50aWwgdGhlIG5leHQgdGljay5cbiAgICAgICAgUHJvbWlzZS5yZXNvbHZlKCkudGhlbigoKSA9PiB7XG4gICAgICAgICAgdGhpcy5fb25Ub3VjaGVkKClcbiAgICAgICAgICBfY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKClcbiAgICAgICAgfSlcbiAgICAgIH1cbiAgICB9KVxuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5fZm9jdXNNb25pdG9yLnN0b3BNb25pdG9yaW5nKHRoaXMuX2VsZW1lbnRSZWYpXG4gIH1cblxuICAvKiogQGlnbm9yZSAqL1xuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgdGhpcy5fc3luY0luZGV0ZXJtaW5hdGUodGhpcy5faW5kZXRlcm1pbmF0ZSlcbiAgfVxuXG4gIC8qKlxuICAgKiBNZXRob2QgYmVpbmcgY2FsbGVkIHdoZW5ldmVyIHRoZSBsYWJlbCB0ZXh0IGNoYW5nZXMuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIF9vbkxhYmVsVGV4dENoYW5nZSgpIHtcbiAgICAvLyBTaW5jZSB0aGUgZXZlbnQgb2YgdGhlIGBjZGtPYnNlcnZlQ29udGVudGAgZGlyZWN0aXZlIHJ1bnMgb3V0c2lkZSBvZiB0aGUgem9uZSwgdGhlIGNoZWNrYm94XG4gICAgLy8gY29tcG9uZW50IHdpbGwgYmUgb25seSBtYXJrZWQgZm9yIGNoZWNrLCBidXQgbm8gYWN0dWFsIGNoYW5nZSBkZXRlY3Rpb24gcnVucyBhdXRvbWF0aWNhbGx5LlxuICAgIC8vIEluc3RlYWQgb2YgZ29pbmcgYmFjayBpbnRvIHRoZSB6b25lIGluIG9yZGVyIHRvIHRyaWdnZXIgYSBjaGFuZ2UgZGV0ZWN0aW9uIHdoaWNoIGNhdXNlc1xuICAgIC8vICphbGwqIGNvbXBvbmVudHMgdG8gYmUgY2hlY2tlZCAoaWYgZXhwbGljaXRseSBtYXJrZWQgb3Igbm90IHVzaW5nIE9uUHVzaCksIHdlIG9ubHkgdHJpZ2dlclxuICAgIC8vIGFuIGV4cGxpY2l0IGNoYW5nZSBkZXRlY3Rpb24gZm9yIHRoZSBjaGVja2JveCB2aWV3IGFuZCBpdHMgY2hpbGRyZW4uXG4gICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpXG4gIH1cblxuICAvLyBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAvKiogQGlnbm9yZSAqL1xuICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpIHtcbiAgICB0aGlzLmNoZWNrZWQgPSAhIXZhbHVlXG4gIH1cblxuICAvLyBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAvKiogQGlnbm9yZSAqL1xuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IGFueSkgPT4gdm9pZCkge1xuICAgIHRoaXMuX2NvbnRyb2xWYWx1ZUFjY2Vzc29yQ2hhbmdlRm4gPSBmblxuICB9XG5cbiAgLy8gSW1wbGVtZW50ZWQgYXMgcGFydCBvZiBDb250cm9sVmFsdWVBY2Nlc3Nvci5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSkge1xuICAgIHRoaXMuX29uVG91Y2hlZCA9IGZuXG4gIH1cblxuICAvLyBJbXBsZW1lbnRlZCBhcyBwYXJ0IG9mIENvbnRyb2xWYWx1ZUFjY2Vzc29yLlxuICAvKiogQGlnbm9yZSAqL1xuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZFxuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgX2dldEFyaWFDaGVja2VkKCk6ICd0cnVlJyB8ICdmYWxzZScgfCAnbWl4ZWQnIHtcbiAgICByZXR1cm4gdGhpcy5jaGVja2VkID8gJ3RydWUnIDogKHRoaXMuaW5kZXRlcm1pbmF0ZSA/ICdtaXhlZCcgOiAnZmFsc2UnKVxuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgcHJpdmF0ZSBfZW1pdENoYW5nZUV2ZW50KCkge1xuICAgIGNvbnN0IGV2ZW50ID0gbmV3IFRoZVNlYW1DaGVja2JveENoYW5nZSh0aGlzLCB0aGlzLmNoZWNrZWQpXG5cbiAgICB0aGlzLl9jb250cm9sVmFsdWVBY2Nlc3NvckNoYW5nZUZuKHRoaXMuY2hlY2tlZClcbiAgICB0aGlzLmNoYW5nZS5lbWl0KGV2ZW50KVxuICB9XG5cbiAgLyoqIFRvZ2dsZXMgdGhlIGBjaGVja2VkYCBzdGF0ZSBvZiB0aGUgY2hlY2tib3guICovXG4gIHRvZ2dsZSgpOiB2b2lkIHtcbiAgICB0aGlzLmNoZWNrZWQgPSAhdGhpcy5jaGVja2VkXG4gIH1cblxuICAvKipcbiAgICogRXZlbnQgaGFuZGxlciBmb3IgY2hlY2tib3ggaW5wdXQgZWxlbWVudC5cbiAgICogVG9nZ2xlcyBjaGVja2VkIHN0YXRlIGlmIGVsZW1lbnQgaXMgbm90IGRpc2FibGVkLlxuICAgKiBEbyBub3QgdG9nZ2xlIG9uIChjaGFuZ2UpIGV2ZW50IHNpbmNlIElFIGRvZXNuJ3QgZmlyZSBjaGFuZ2UgZXZlbnQgd2hlblxuICAgKiAgIGluZGV0ZXJtaW5hdGUgY2hlY2tib3ggaXMgY2xpY2tlZC5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgX29uSW5wdXRDbGljayhldmVudDogRXZlbnQpIHtcbiAgICAvLyBJZiByZXNldEluZGV0ZXJtaW5hdGUgaXMgZmFsc2UsIGFuZCB0aGUgY3VycmVudCBzdGF0ZSBpcyBpbmRldGVybWluYXRlLCBkbyBub3RoaW5nIG9uIGNsaWNrXG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICAvLyBXaGVuIHVzZXIgbWFudWFsbHkgY2xpY2sgb24gdGhlIGNoZWNrYm94LCBgaW5kZXRlcm1pbmF0ZWAgaXMgc2V0IHRvIGZhbHNlLlxuICAgICAgaWYgKHRoaXMuaW5kZXRlcm1pbmF0ZSkge1xuICAgICAgICBQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcbiAgICAgICAgICB0aGlzLl9pbmRldGVybWluYXRlID0gZmFsc2VcbiAgICAgICAgICB0aGlzLmluZGV0ZXJtaW5hdGVDaGFuZ2UuZW1pdCh0aGlzLl9pbmRldGVybWluYXRlKVxuICAgICAgICB9KVxuICAgICAgfVxuXG4gICAgICB0aGlzLnRvZ2dsZSgpXG5cbiAgICAgIC8vIEVtaXQgb3VyIGN1c3RvbSBjaGFuZ2UgZXZlbnQgaWYgdGhlIG5hdGl2ZSBpbnB1dCBlbWl0dGVkIG9uZS5cbiAgICAgIC8vIEl0IGlzIGltcG9ydGFudCB0byBvbmx5IGVtaXQgaXQsIGlmIHRoZSBuYXRpdmUgaW5wdXQgdHJpZ2dlcmVkIG9uZSwgYmVjYXVzZVxuICAgICAgLy8gd2UgZG9uJ3Qgd2FudCB0byB0cmlnZ2VyIGEgY2hhbmdlIGV2ZW50LCB3aGVuIHRoZSBgY2hlY2tlZGAgdmFyaWFibGUgY2hhbmdlcyBmb3IgZXhhbXBsZS5cbiAgICAgIHRoaXMuX2VtaXRDaGFuZ2VFdmVudCgpXG4gICAgfVxuICB9XG5cbiAgLyoqIEZvY3VzZXMgdGhlIGNoZWNrYm94LiAqL1xuICBmb2N1cyhvcmlnaW46IEZvY3VzT3JpZ2luID0gJ2tleWJvYXJkJywgb3B0aW9ucz86IEZvY3VzT3B0aW9ucyk6IHZvaWQge1xuICAgIGlmICghdGhpcy5faW5wdXRFbGVtZW50KSB7IHJldHVybiB9XG4gICAgdGhpcy5fZm9jdXNNb25pdG9yLmZvY3VzVmlhKHRoaXMuX2lucHV0RWxlbWVudCwgb3JpZ2luLCBvcHRpb25zKVxuICB9XG5cbiAgLyoqIEBpZ25vcmUgKi9cbiAgX29uSW50ZXJhY3Rpb25FdmVudChldmVudDogRXZlbnQpIHtcbiAgICAvLyBXZSBhbHdheXMgaGF2ZSB0byBzdG9wIHByb3BhZ2F0aW9uIG9uIHRoZSBjaGFuZ2UgZXZlbnQuXG4gICAgLy8gT3RoZXJ3aXNlIHRoZSBjaGFuZ2UgZXZlbnQsIGZyb20gdGhlIGlucHV0IGVsZW1lbnQsIHdpbGwgYnViYmxlIHVwIGFuZFxuICAgIC8vIGVtaXQgaXRzIGV2ZW50IG9iamVjdCB0byB0aGUgYGNoYW5nZWAgb3V0cHV0LlxuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXG4gIH1cblxuICAvKipcbiAgICogU3luY3MgdGhlIGluZGV0ZXJtaW5hdGUgdmFsdWUgd2l0aCB0aGUgY2hlY2tib3ggRE9NIG5vZGUuXG4gICAqXG4gICAqIFdlIHN5bmMgYGluZGV0ZXJtaW5hdGVgIGRpcmVjdGx5IG9uIHRoZSBET00gbm9kZSwgYmVjYXVzZSBpbiBJdnkgdGhlIGNoZWNrIGZvciB3aGV0aGVyIGFcbiAgICogcHJvcGVydHkgaXMgc3VwcG9ydGVkIG9uIGFuIGVsZW1lbnQgYm9pbHMgZG93biB0byBgaWYgKHByb3BOYW1lIGluIGVsZW1lbnQpYC4gRG9taW5vJ3NcbiAgICogSFRNTElucHV0RWxlbWVudCBkb2Vzbid0IGhhdmUgYW4gYGluZGV0ZXJtaW5hdGVgIHByb3BlcnR5IHNvIEl2eSB3aWxsIHdhcm4gZHVyaW5nXG4gICAqIHNlcnZlci1zaWRlIHJlbmRlcmluZy5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgcHJpdmF0ZSBfc3luY0luZGV0ZXJtaW5hdGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICBjb25zdCBuYXRpdmVDaGVja2JveCA9IHRoaXMuX2lucHV0RWxlbWVudFxuXG4gICAgaWYgKG5hdGl2ZUNoZWNrYm94KSB7XG4gICAgICBuYXRpdmVDaGVja2JveC5uYXRpdmVFbGVtZW50LmluZGV0ZXJtaW5hdGUgPSB2YWx1ZVxuICAgIH1cbiAgfVxuXG59XG4iLCI8aW5wdXQgI2lucHV0XG4gIHR5cGU9XCJjaGVja2JveFwiXG4gIGNsYXNzPVwiY3VzdG9tLWNvbnRyb2wtaW5wdXRcIlxuICBbaWRdPVwiaW5wdXRJZFwiXG4gIFtyZXF1aXJlZF09XCJyZXF1aXJlZFwiXG4gIFtjaGVja2VkXT1cImNoZWNrZWRcIlxuICBbYXR0ci52YWx1ZV09XCJ2YWx1ZVwiXG4gIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gIFthdHRyLm5hbWVdPVwibmFtZVwiXG4gIFt0YWJJbmRleF09XCJ0YWJJbmRleFwiXG4gIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsIHx8IG51bGxcIlxuICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiYXJpYUxhYmVsbGVkYnlcIlxuICBbYXR0ci5hcmlhLWNoZWNrZWRdPVwiX2dldEFyaWFDaGVja2VkKClcIlxuICAoY2hhbmdlKT1cIl9vbkludGVyYWN0aW9uRXZlbnQoJGV2ZW50KVwiXG4gIChjbGljayk9XCJfb25JbnB1dENsaWNrKCRldmVudClcIj5cbjxsYWJlbCAjY2hlY2tib3hMYWJlbFxuICBjbGFzcz1cImN1c3RvbS1jb250cm9sLWxhYmVsXCJcbiAgW2F0dHIuZm9yXT1cImlucHV0SWRcIlxuICAoY2RrT2JzZXJ2ZUNvbnRlbnQpPVwiX29uTGFiZWxUZXh0Q2hhbmdlKClcIj5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9sYWJlbD5cbiJdfQ==
|
|
@@ -5,12 +5,12 @@ import { TheSeamCheckboxComponent } from './checkbox.component';
|
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export class TheSeamCheckboxModule {
|
|
7
7
|
}
|
|
8
|
-
TheSeamCheckboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.
|
|
9
|
-
TheSeamCheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.
|
|
8
|
+
TheSeamCheckboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
9
|
+
TheSeamCheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: TheSeamCheckboxModule, declarations: [TheSeamCheckboxComponent], imports: [CommonModule,
|
|
10
10
|
ObserversModule], exports: [TheSeamCheckboxComponent] });
|
|
11
|
-
TheSeamCheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.
|
|
11
|
+
TheSeamCheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamCheckboxModule, imports: [CommonModule,
|
|
12
12
|
ObserversModule] });
|
|
13
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.
|
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: TheSeamCheckboxModule, decorators: [{
|
|
14
14
|
type: NgModule,
|
|
15
15
|
args: [{
|
|
16
16
|
declarations: [
|
|
@@ -60,4 +60,4 @@ export class TheSeamCheckboxHarness extends ComponentHarness {
|
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
TheSeamCheckboxHarness.hostSelector = 'seam-checkbox';
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guaGFybmVzcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VpLWNvbW1vbi9jaGVja2JveC90ZXN0aW5nL2NoZWNrYm94Lmhhcm5lc3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFzQixnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBVTdGLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxnQkFBZ0I7SUFHMUQsZ0ZBQWdGO0lBQ2hGLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBc0M7UUFDaEQsT0FBTyxJQUFJLGdCQUFnQixDQUFDLHNCQUFzQixFQUFFLE9BQU8sQ0FBQzthQUN2RCxTQUFTLENBQUMsYUFBYSxFQUFFLE9BQU8sQ0FBQyxFQUFFLEVBQ2hDLENBQUMsT0FBTyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDLENBQUM7YUFDbkYsU0FBUyxDQUFDLGVBQWUsRUFBRSxPQUFPLENBQUMsSUFBSSxFQUNwQyxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLGdCQUFnQixDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUNyRixDQUFDO0lBRU0sS0FBSyxDQUFDLEtBQUs7UUFDaEIsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFBO0lBQzFELENBQUM7SUFFTSxLQUFLLENBQUMsT0FBTztRQUNsQixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUE7SUFDNUQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsU0FBUztRQUNwQixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUE7SUFDOUQsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsZUFBZTtRQUMxQixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLENBQUE7SUFDcEUsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsVUFBVTtRQUNyQixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDL0QsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsVUFBVTtRQUNyQixPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUMsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLENBQUE7SUFDL0QsQ0FBQztJQUVEOztPQUVHO0lBQ0ksS0FBSyxDQUFDLEtBQUs7UUFDaEIsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDL0MsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsZUFBZTtRQUMxQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQTtJQUNuQyxDQUFDOztBQXJFTSxtQ0FBWSxHQUFHLGVBQWUsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VIYXJuZXNzRmlsdGVycywgQ29tcG9uZW50SGFybmVzcywgSGFybmVzc1ByZWRpY2F0ZSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90ZXN0aW5nJ1xuXG5pbnRlcmZhY2UgVGhlU2VhbUNoZWNrYm94SGFybmVzc0ZpbHRlcnMgZXh0ZW5kcyBCYXNlSGFybmVzc0ZpbHRlcnMge1xuICAvKiogRmlsdGVycyBiYXNlZCBvbiB0aGUgaWQgb2YgdGhlIGNoZWNrYm94LiAqL1xuICBpZD86IG51bWJlciB8IHN0cmluZyB8IFJlZ0V4cFxuXG4gIC8qKiBGaWx0ZXJzIGJhc2VkIG9uIHRoZSBuYW1lIG9mIHRoZSBjaGVja2JveC4gKi9cbiAgbmFtZT86IHN0cmluZyB8IFJlZ0V4cFxufVxuXG5leHBvcnQgY2xhc3MgVGhlU2VhbUNoZWNrYm94SGFybmVzcyBleHRlbmRzIENvbXBvbmVudEhhcm5lc3Mge1xuICBzdGF0aWMgaG9zdFNlbGVjdG9yID0gJ3NlYW0tY2hlY2tib3gnXG5cbiAgLyoqIENyZWF0ZXMgYSBgSGFybmVzc1ByZWRpY2F0ZWAgdXNlZCB0byBsb2NhdGUgYSBwYXJ0aWN1bGFyIGBNeU1lbnVIYXJuZXNzYC4gKi9cbiAgc3RhdGljIHdpdGgob3B0aW9uczogVGhlU2VhbUNoZWNrYm94SGFybmVzc0ZpbHRlcnMpOiBIYXJuZXNzUHJlZGljYXRlPFRoZVNlYW1DaGVja2JveEhhcm5lc3M+IHtcbiAgICByZXR1cm4gbmV3IEhhcm5lc3NQcmVkaWNhdGUoVGhlU2VhbUNoZWNrYm94SGFybmVzcywgb3B0aW9ucylcbiAgICAgICAgLmFkZE9wdGlvbignY2hlY2tib3ggaWQnLCBvcHRpb25zLmlkLFxuICAgICAgICAgICAgKGhhcm5lc3MsIGluZGV4KSA9PiBIYXJuZXNzUHJlZGljYXRlLnN0cmluZ01hdGNoZXMoaGFybmVzcy5nZXRJZCgpLCBgJHtpbmRleH1gKSlcbiAgICAgICAgLmFkZE9wdGlvbignY2hlY2tib3ggbmFtZScsIG9wdGlvbnMubmFtZSxcbiAgICAgICAgICAgIChoYXJuZXNzLCBuYW1lKSA9PiBIYXJuZXNzUHJlZGljYXRlLnN0cmluZ01hdGNoZXMoaGFybmVzcy5nZXROYW1lKCksIG5hbWUpKVxuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldElkKCk6IFByb21pc2U8c3RyaW5nIHwgbnVsbD4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXRJbnB1dEVsZW1lbnQoKSkuZ2V0QXR0cmlidXRlKCdpZCcpXG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0TmFtZSgpOiBQcm9taXNlPHN0cmluZyB8IG51bGw+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuZ2V0SW5wdXRFbGVtZW50KCkpLmdldEF0dHJpYnV0ZSgnbmFtZScpXG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgY2hlY2tlZCBzdGF0ZSBvZiB0aGUgY2hlY2tib3guXG4gICAqXG4gICAqIEByZXR1cm5zIHRydWUgaWYgdGhlIGNoZWNrYm94IGlzIGNoZWNrZWQsIGZhbHNlIGlmIG5vdFxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzQ2hlY2tlZCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuZ2V0SW5wdXRFbGVtZW50KCkpLmdldFByb3BlcnR5KCdjaGVja2VkJylcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRoZSBpbmRldGVybWluYXRlIHN0YXRlIG9mIHRoZSBjaGVja2JveC5cbiAgICpcbiAgICogQHJldHVybnMgdHJ1ZSBpZiB0aGUgY2hlY2tib3ggaXMgaW5kZXRlcm1pbmF0ZSwgZmFsc2UgaWYgbm90XG4gICAqL1xuICBwdWJsaWMgYXN5bmMgaXNJbmRldGVybWluYXRlKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXRJbnB1dEVsZW1lbnQoKSkuZ2V0UHJvcGVydHkoJ2luZGV0ZXJtaW5hdGUnKVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBjaGVja2JveC5cbiAgICpcbiAgICogQHJldHVybnMgdHJ1ZSBpZiB0aGUgY2hlY2tib3ggaXMgZGlzYWJsZWQsIGZhbHNlIGlmIG5vdFxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzRGlzYWJsZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmdldElucHV0RWxlbWVudCgpKS5nZXRQcm9wZXJ0eSgnZGlzYWJsZWQnKVxuICB9XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIHJlcXVpcmVkIHN0YXRlIG9mIHRoZSBjaGVja2JveC5cbiAgICpcbiAgICogQHJldHVybnMgdHJ1ZSBpZiB0aGUgY2hlY2tib3ggaXMgcmVxdWlyZWQsIGZhbHNlIGlmIG5vdFxuICAgKi9cbiAgcHVibGljIGFzeW5jIGlzUmVxdWlyZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmdldElucHV0RWxlbWVudCgpKS5nZXRQcm9wZXJ0eSgncmVxdWlyZWQnKVxuICB9XG5cbiAgLyoqXG4gICAqIENsaWNrcyB0aGUgY2hlY2tib3guXG4gICAqL1xuICBwdWJsaWMgYXN5bmMgY2xpY2soKSB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmdldElucHV0RWxlbWVudCgpKS5jbGljaygpXG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyB0aGUgaW5wdXQgZWxlbWVudCBvZiB0aGUgY2hlY2tib3guXG4gICAqXG4gICAqIEByZXR1cm5zIHRoZSBpbnB1dCBlbGVtZW50IG9mIHRoZSBjaGVja2JveFxuICAgKi9cbiAgcHVibGljIGFzeW5jIGdldElucHV0RWxlbWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5sb2NhdG9yRm9yKCdpbnB1dCcpKClcbiAgfVxufVxuIl19
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from './checkbox.harness';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91aS1jb21tb24vY2hlY2tib3gvdGVzdGluZy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9CQUFvQixDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9jaGVja2JveC5oYXJuZXNzJ1xuIl19
|