@daffodil/design 0.78.0 → 0.79.0
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/atoms/form/form-field/form-field/form-field.component.d.ts +1 -1
- package/button/README.md +3 -3
- package/button/button/basic/button.component.d.ts +28 -0
- package/button/button/button-base.directive.d.ts +51 -0
- package/button/button/flat/flat.component.d.ts +28 -0
- package/button/button/icon/icon.component.d.ts +24 -0
- package/button/button/raised/raised.component.d.ts +28 -0
- package/button/button/stroked/stroked.component.d.ts +28 -0
- package/button/button/underline/underline.component.d.ts +28 -0
- package/button/button.d.ts +7 -2
- package/button/button.module.d.ts +8 -3
- package/button/public_api.d.ts +6 -1
- package/button/src/button/basic/button-theme.scss +145 -0
- package/button/src/button/button-base.scss +79 -0
- package/button/src/button/flat/flat-theme.scss +143 -0
- package/button/src/button/icon/icon-theme.scss +141 -0
- package/button/src/button/raised/raised-theme.scss +120 -0
- package/button/src/button/stroked/stroked-theme.scss +158 -0
- package/button/src/button/underline/underline-theme.scss +93 -0
- package/card/card.module.d.ts +1 -1
- package/container/container.module.d.ts +1 -1
- package/core/statusable/statusable.d.ts +5 -3
- package/core/statusable/statusable.directive.d.ts +6 -4
- package/esm2022/accordion/accordion/animation/accordion-animation.mjs +1 -4
- package/esm2022/atoms/form/form-field/form-field/form-field.component.mjs +2 -2
- package/esm2022/button/button/basic/button.component.mjs +48 -0
- package/esm2022/button/button/button-base.directive.mjs +105 -0
- package/esm2022/button/button/flat/flat.component.mjs +48 -0
- package/esm2022/button/button/icon/icon.component.mjs +44 -0
- package/esm2022/button/button/raised/raised.component.mjs +48 -0
- package/esm2022/button/button/stroked/stroked.component.mjs +48 -0
- package/esm2022/button/button/underline/underline.component.mjs +48 -0
- package/esm2022/button/button.mjs +12 -2
- package/esm2022/button/button.module.mjs +34 -4
- package/esm2022/button/examples/basic-button/basic-button.component.mjs +4 -6
- package/esm2022/button/examples/flat-button/flat-button.component.mjs +4 -6
- package/esm2022/button/examples/icon-button/icon-button.component.mjs +4 -6
- package/esm2022/button/examples/raised-button/raised-button.component.mjs +4 -6
- package/esm2022/button/examples/sizeable-button/sizeable-button.component.mjs +2 -2
- package/esm2022/button/examples/statusable-button/statusable-button.component.mjs +3 -3
- package/esm2022/button/examples/stroked-button/stroked-button.component.mjs +4 -6
- package/esm2022/button/examples/underline-button/underline-button.component.mjs +4 -6
- package/esm2022/button/public_api.mjs +7 -2
- package/esm2022/callout/examples/callout-text-alignment/callout-text-alignment.component.mjs +5 -7
- package/esm2022/callout/examples/callout-theming/callout-theming.component.mjs +5 -7
- package/esm2022/callout/examples/callout-with-grid/callout-with-grid.component.mjs +5 -6
- package/esm2022/callout/examples/compact-callout/compact-callout.component.mjs +4 -6
- package/esm2022/card/card.module.mjs +2 -2
- package/esm2022/card/examples/basic-card/basic-card.component.mjs +4 -6
- package/esm2022/card/examples/card-orientation/card-orientation.component.mjs +5 -7
- package/esm2022/checkbox/examples/basic-checkbox/basic-checkbox.component.mjs +4 -5
- package/esm2022/checkbox/examples/checkbox-set/checkbox-set.component.mjs +4 -5
- package/esm2022/container/container.module.mjs +2 -2
- package/esm2022/core/statusable/statusable.directive.mjs +7 -5
- package/esm2022/core/statusable/statusable.mjs +3 -2
- package/esm2022/hero/examples/compact-hero/compact-hero.component.mjs +4 -6
- package/esm2022/hero/examples/hero-text-alignment/hero-text-alignment.component.mjs +5 -7
- package/esm2022/hero/examples/hero-theming/hero-theming.component.mjs +5 -7
- package/esm2022/hero/examples/hero-with-grid/hero-with-grid.component.mjs +4 -6
- package/esm2022/hero/hero.module.mjs +2 -2
- package/esm2022/image/image.module.mjs +2 -2
- package/esm2022/link-set/link-set.module.mjs +2 -2
- package/esm2022/list/list.module.mjs +2 -2
- package/esm2022/loading-icon/examples/examples.mjs +1 -3
- package/esm2022/loading-icon/examples/loading-icon-color/loading-icon-color.component.mjs +2 -2
- package/esm2022/loading-icon/loading-icon/loading-icon.component.mjs +5 -20
- package/esm2022/loading-icon/loading-icon.module.mjs +2 -2
- package/esm2022/media-gallery/helpers/media-gallery-token.mjs +7 -3
- package/esm2022/media-gallery/media-gallery.module.mjs +2 -2
- package/esm2022/media-gallery/thumbnail/thumbnail-compat.token.mjs +8 -3
- package/esm2022/menu/examples/basic-menu/basic-menu.component.mjs +5 -7
- package/esm2022/modal/examples/basic-modal/basic-modal.component.mjs +4 -6
- package/esm2022/modal/examples/basic-modal/modal-content.component.mjs +4 -6
- package/esm2022/modal/modal-header/modal-header.component.mjs +4 -6
- package/esm2022/modal/modal.module.mjs +2 -2
- package/esm2022/navbar/examples/basic-navbar/basic-navbar.component.mjs +4 -6
- package/esm2022/navbar/examples/contained-navbar/contained-navbar.component.mjs +4 -6
- package/esm2022/navbar/examples/navbar-theming/navbar-theming.component.mjs +5 -7
- package/esm2022/navbar/examples/raised-navbar/raised-navbar.component.mjs +4 -6
- package/esm2022/navbar/navbar.module.mjs +2 -2
- package/esm2022/notification/examples/default-notification/default-notification.component.mjs +1 -3
- package/esm2022/notification/examples/notification-orientations/notification-orientations.component.mjs +1 -3
- package/esm2022/notification/examples/notification-status/notification-status.component.mjs +3 -5
- package/esm2022/notification/examples/notification-with-actions/notification-with-actions.component.mjs +4 -5
- package/esm2022/notification/notification/notification.component.mjs +3 -3
- package/esm2022/notification/notification.module.mjs +2 -2
- package/esm2022/paginator/paginator.module.mjs +2 -2
- package/esm2022/progress-bar/progress-bar.module.mjs +2 -2
- package/esm2022/sidebar/examples/over-and-under-sidebars/over-and-under-sidebars.component.mjs +5 -6
- package/esm2022/sidebar/sidebar-viewport/scroll-token/scroll.token.mjs +9 -3
- package/esm2022/sidebar/sidebar-viewport/sidebar-viewport.component.mjs +3 -3
- package/esm2022/sidebar/sidebar.module.mjs +2 -2
- package/esm2022/tabs/daffodil-design-tabs.mjs +5 -0
- package/esm2022/tabs/examples/basic-tabs/basic-tabs.component.mjs +22 -0
- package/esm2022/tabs/examples/custom-select-tabs/custom-select-tabs.component.mjs +34 -0
- package/esm2022/tabs/examples/daffodil-design-tabs-examples.mjs +5 -0
- package/esm2022/tabs/examples/disabled-tabs/disabled-tabs.component.mjs +22 -0
- package/esm2022/tabs/examples/index.mjs +2 -0
- package/esm2022/tabs/examples/initially-select-tab/initially-select-tab.component.mjs +22 -0
- package/esm2022/tabs/examples/public_api.mjs +11 -0
- package/esm2022/tabs/index.mjs +2 -0
- package/esm2022/tabs/public_api.mjs +6 -0
- package/esm2022/tabs/tabs/tab/tab.component.mjs +86 -0
- package/esm2022/tabs/tabs/tab-activator/tab-activator.component.mjs +83 -0
- package/esm2022/tabs/tabs/tab-label/tab-label.component.mjs +33 -0
- package/esm2022/tabs/tabs/tab-panel/tab-panel.component.mjs +68 -0
- package/esm2022/tabs/tabs/tabs.component.mjs +161 -0
- package/esm2022/tabs/tabs.mjs +13 -0
- package/esm2022/text-snippet/daffodil-design-text-snippet.mjs +5 -0
- package/esm2022/text-snippet/examples/basic-text-snippet/basic-text-snippet.component.mjs +14 -0
- package/esm2022/text-snippet/examples/daffodil-design-text-snippet-examples.mjs +5 -0
- package/esm2022/text-snippet/examples/index.mjs +2 -0
- package/esm2022/text-snippet/examples/public_api.mjs +5 -0
- package/esm2022/text-snippet/index.mjs +2 -0
- package/esm2022/text-snippet/public_api.mjs +2 -0
- package/esm2022/text-snippet/text-snippet.component.mjs +46 -0
- package/esm2022/toast/examples/default-toast/default-toast.component.mjs +4 -6
- package/esm2022/toast/examples/toast-positions/toast-positions.component.mjs +4 -6
- package/esm2022/toast/examples/toast-status/toast-status.component.mjs +8 -10
- package/esm2022/toast/examples/toast-with-custom-duration/toast-with-custom-duration.component.mjs +4 -6
- package/esm2022/toast/options/daff-toast-options.mjs +7 -7
- package/esm2022/toast/toast/toast-provider.mjs +2 -2
- package/esm2022/toast/toast/toast-template.component.mjs +2 -2
- package/esm2022/toast/toast.module.mjs +2 -2
- package/esm2022/tree/tree.module.mjs +2 -2
- package/fesm2022/daffodil-design-accordion.mjs +0 -3
- package/fesm2022/daffodil-design-accordion.mjs.map +1 -1
- package/fesm2022/daffodil-design-button-examples.mjs +16 -16
- package/fesm2022/daffodil-design-button-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-button.mjs +305 -131
- package/fesm2022/daffodil-design-button.mjs.map +1 -1
- package/fesm2022/daffodil-design-callout-examples.mjs +12 -13
- package/fesm2022/daffodil-design-callout-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-card-examples.mjs +10 -12
- package/fesm2022/daffodil-design-card-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-card.mjs +1 -1
- package/fesm2022/daffodil-design-card.mjs.map +1 -1
- package/fesm2022/daffodil-design-checkbox-examples.mjs +5 -6
- package/fesm2022/daffodil-design-checkbox-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-container.mjs +1 -1
- package/fesm2022/daffodil-design-container.mjs.map +1 -1
- package/fesm2022/daffodil-design-hero-examples.mjs +11 -13
- package/fesm2022/daffodil-design-hero-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-hero.mjs +1 -1
- package/fesm2022/daffodil-design-hero.mjs.map +1 -1
- package/fesm2022/daffodil-design-image.mjs +1 -1
- package/fesm2022/daffodil-design-image.mjs.map +1 -1
- package/fesm2022/daffodil-design-link-set.mjs +1 -1
- package/fesm2022/daffodil-design-link-set.mjs.map +1 -1
- package/fesm2022/daffodil-design-list.mjs +1 -1
- package/fesm2022/daffodil-design-list.mjs.map +1 -1
- package/fesm2022/daffodil-design-loading-icon-examples.mjs +1 -13
- package/fesm2022/daffodil-design-loading-icon-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-loading-icon.mjs +5 -20
- package/fesm2022/daffodil-design-loading-icon.mjs.map +1 -1
- package/fesm2022/daffodil-design-media-gallery.mjs +14 -4
- package/fesm2022/daffodil-design-media-gallery.mjs.map +1 -1
- package/fesm2022/daffodil-design-menu-examples.mjs +3 -5
- package/fesm2022/daffodil-design-menu-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-modal-examples.mjs +5 -7
- package/fesm2022/daffodil-design-modal-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-modal.mjs +4 -5
- package/fesm2022/daffodil-design-modal.mjs.map +1 -1
- package/fesm2022/daffodil-design-navbar-examples.mjs +11 -13
- package/fesm2022/daffodil-design-navbar-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-navbar.mjs +1 -1
- package/fesm2022/daffodil-design-navbar.mjs.map +1 -1
- package/fesm2022/daffodil-design-notification-examples.mjs +5 -9
- package/fesm2022/daffodil-design-notification-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-notification.mjs +3 -3
- package/fesm2022/daffodil-design-notification.mjs.map +1 -1
- package/fesm2022/daffodil-design-paginator.mjs +1 -1
- package/fesm2022/daffodil-design-paginator.mjs.map +1 -1
- package/fesm2022/daffodil-design-progress-bar.mjs +1 -1
- package/fesm2022/daffodil-design-progress-bar.mjs.map +1 -1
- package/fesm2022/daffodil-design-sidebar-examples.mjs +4 -5
- package/fesm2022/daffodil-design-sidebar-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-sidebar.mjs +11 -5
- package/fesm2022/daffodil-design-sidebar.mjs.map +1 -1
- package/fesm2022/daffodil-design-tabs-examples.mjs +93 -0
- package/fesm2022/daffodil-design-tabs-examples.mjs.map +1 -0
- package/fesm2022/daffodil-design-tabs.mjs +431 -0
- package/fesm2022/daffodil-design-tabs.mjs.map +1 -0
- package/fesm2022/daffodil-design-text-snippet-examples.mjs +25 -0
- package/fesm2022/daffodil-design-text-snippet-examples.mjs.map +1 -0
- package/fesm2022/daffodil-design-text-snippet.mjs +53 -0
- package/fesm2022/daffodil-design-text-snippet.mjs.map +1 -0
- package/fesm2022/daffodil-design-toast-examples.mjs +13 -15
- package/fesm2022/daffodil-design-toast-examples.mjs.map +1 -1
- package/fesm2022/daffodil-design-toast.mjs +11 -10
- package/fesm2022/daffodil-design-toast.mjs.map +1 -1
- package/fesm2022/daffodil-design-tree.mjs +1 -1
- package/fesm2022/daffodil-design-tree.mjs.map +1 -1
- package/fesm2022/daffodil-design.mjs +9 -6
- package/fesm2022/daffodil-design.mjs.map +1 -1
- package/hero/hero.module.d.ts +1 -1
- package/image/README.md +4 -1
- package/image/image.module.d.ts +1 -1
- package/link-set/README.md +1 -1
- package/link-set/link-set.module.d.ts +1 -1
- package/list/list.module.d.ts +1 -1
- package/loading-icon/README.md +0 -5
- package/loading-icon/examples/examples.d.ts +2 -2
- package/loading-icon/loading-icon/loading-icon.component.d.ts +1 -9
- package/loading-icon/loading-icon.module.d.ts +1 -1
- package/media-gallery/README.md +4 -1
- package/media-gallery/helpers/media-gallery-token.d.ts +1 -2
- package/media-gallery/media-gallery.module.d.ts +1 -1
- package/media-gallery/thumbnail/thumbnail-compat.token.d.ts +1 -5
- package/modal/modal.module.d.ts +1 -1
- package/navbar/navbar.module.d.ts +1 -1
- package/notification/README.md +2 -2
- package/notification/notification/notification.component.d.ts +1 -1
- package/notification/notification.module.d.ts +1 -1
- package/notification/src/notification-theme.scss +17 -13
- package/package.json +1 -1
- package/paginator/paginator.module.d.ts +1 -1
- package/progress-bar/progress-bar.module.d.ts +1 -1
- package/scss/theme.scss +13 -1
- package/scss/theming/_configure-theme.scss +60 -2
- package/scss/theming/_theme-css-variables.scss +1 -1
- package/sidebar/sidebar-viewport/scroll-token/scroll.token.d.ts +1 -7
- package/sidebar/sidebar-viewport/sidebar-viewport.component.d.ts +1 -1
- package/sidebar/sidebar.module.d.ts +1 -1
- package/tabs/README.md +19 -0
- package/tabs/examples/basic-tabs/basic-tabs.component.d.ts +6 -0
- package/tabs/examples/custom-select-tabs/custom-select-tabs.component.d.ts +11 -0
- package/tabs/examples/disabled-tabs/disabled-tabs.component.d.ts +6 -0
- package/tabs/examples/index.d.ts +1 -0
- package/tabs/examples/initially-select-tab/initially-select-tab.component.d.ts +6 -0
- package/tabs/examples/public_api.d.ts +2 -0
- package/tabs/index.d.ts +1 -0
- package/tabs/public_api.d.ts +5 -0
- package/tabs/src/tabs-theme.scss +22 -0
- package/tabs/tabs/tab/tab.component.d.ts +57 -0
- package/tabs/tabs/tab-activator/tab-activator.component.d.ts +37 -0
- package/tabs/tabs/tab-label/tab-label.component.d.ts +19 -0
- package/tabs/tabs/tab-panel/tab-panel.component.d.ts +38 -0
- package/tabs/tabs/tabs.component.d.ts +104 -0
- package/tabs/tabs.d.ts +6 -0
- package/text-snippet/README.md +2 -0
- package/text-snippet/examples/basic-text-snippet/basic-text-snippet.component.d.ts +5 -0
- package/text-snippet/examples/index.d.ts +1 -0
- package/text-snippet/examples/public_api.d.ts +2 -0
- package/text-snippet/index.d.ts +1 -0
- package/text-snippet/public_api.d.ts +1 -0
- package/text-snippet/text-snippet.component.d.ts +19 -0
- package/toast/README.md +5 -5
- package/toast/options/daff-toast-options.d.ts +1 -3
- package/toast/src/toast-theme.scss +14 -10
- package/toast/toast/toast-provider.d.ts +1 -1
- package/toast/toast.module.d.ts +1 -1
- package/tree/tree.module.d.ts +1 -1
- package/button/button/button.component.d.ts +0 -80
- package/button/src/button-theme-variants/button.scss +0 -26
- package/button/src/button-theme-variants/flat.scss +0 -25
- package/button/src/button-theme-variants/icon.scss +0 -21
- package/button/src/button-theme-variants/raised.scss +0 -36
- package/button/src/button-theme-variants/stroked.scss +0 -28
- package/button/src/button-theme-variants/underline.scss +0 -9
- package/button/src/button-theme.scss +0 -574
- package/esm2022/button/button/button.component.mjs +0 -212
- package/esm2022/loading-icon/examples/loading-icon-diameter/loading-icon-diameter.component.mjs +0 -15
- package/loading-icon/examples/loading-icon-diameter/loading-icon-diameter.component.d.ts +0 -5
@@ -0,0 +1,93 @@
|
|
1
|
+
import * as i0 from '@angular/core';
|
2
|
+
import { Component, ChangeDetectionStrategy, ViewChild } from '@angular/core';
|
3
|
+
import { FaIconComponent } from '@fortawesome/angular-fontawesome';
|
4
|
+
import { faInfoCircle } from '@fortawesome/free-solid-svg-icons';
|
5
|
+
import * as i1 from '@daffodil/design/tabs';
|
6
|
+
import { DAFF_TABS_COMPONENTS, DaffTabsComponent } from '@daffodil/design/tabs';
|
7
|
+
import * as i2 from '@daffodil/design';
|
8
|
+
import { DaffButtonComponent } from '@daffodil/design/button';
|
9
|
+
|
10
|
+
class BasicTabsComponent {
|
11
|
+
constructor() {
|
12
|
+
this.faInfoCircle = faInfoCircle;
|
13
|
+
}
|
14
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: BasicTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
15
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: BasicTabsComponent, isStandalone: true, selector: "basic-tabs", ngImport: i0, template: "<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n</daff-tabs>", dependencies: [{ kind: "component", type: i1.DaffTabsComponent, selector: "daff-tabs", inputs: ["initiallySelected", "aria-label"], outputs: ["tabChange"] }, { kind: "component", type: i1.DaffTabLabelComponent, selector: "daff-tab-label" }, { kind: "component", type: i1.DaffTabPanelComponent, selector: "daff-tab-panel" }, { kind: "ngmodule", type: i2.DaffPrefixSuffixModule }, { kind: "directive", type: i2.DaffPrefixDirective, selector: "[daffPrefix]" }, { kind: "directive", type: i2.DaffSuffixDirective, selector: "[daffSuffix]" }, { kind: "component", type: i1.DaffTabComponent, selector: "daff-tab", inputs: ["disabled", "id"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
16
|
+
}
|
17
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: BasicTabsComponent, decorators: [{
|
18
|
+
type: Component,
|
19
|
+
args: [{ selector: 'basic-tabs', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
20
|
+
DAFF_TABS_COMPONENTS,
|
21
|
+
FaIconComponent,
|
22
|
+
], template: "<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n</daff-tabs>" }]
|
23
|
+
}] });
|
24
|
+
|
25
|
+
class CustomSelectTabsComponent {
|
26
|
+
constructor() {
|
27
|
+
this.faInfoCircle = faInfoCircle;
|
28
|
+
this.selectedTab = 'tab-3';
|
29
|
+
}
|
30
|
+
selectTabThree() {
|
31
|
+
this._tab.select('tab-3');
|
32
|
+
}
|
33
|
+
selectTabFive() {
|
34
|
+
this._tab.select('tab-5');
|
35
|
+
}
|
36
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: CustomSelectTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
37
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: CustomSelectTabsComponent, isStandalone: true, selector: "custom-select-tabs", viewQueries: [{ propertyName: "_tab", first: true, predicate: DaffTabsComponent, descendants: true }], ngImport: i0, template: "<div class=\"custom-select-tabs__buttons\">\n\t<button daff-button size=\"sm\" (click)=\"selectTabThree()\">\n\t\tSelect Tab 3\n\t</button>\n\t\n\t<button daff-button size=\"sm\" (click)=\"selectTabFive()\">\n\t\tSelect Tab 5\n\t</button>\n</div>\n\n<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-3\">\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-5\">\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>", styles: [".custom-select-tabs__buttons{display:flex;gap:8px;margin:0 0 16px}\n"], dependencies: [{ kind: "component", type: i1.DaffTabsComponent, selector: "daff-tabs", inputs: ["initiallySelected", "aria-label"], outputs: ["tabChange"] }, { kind: "component", type: i1.DaffTabLabelComponent, selector: "daff-tab-label" }, { kind: "component", type: i1.DaffTabPanelComponent, selector: "daff-tab-panel" }, { kind: "ngmodule", type: i2.DaffPrefixSuffixModule }, { kind: "directive", type: i2.DaffPrefixDirective, selector: "[daffPrefix]" }, { kind: "directive", type: i2.DaffSuffixDirective, selector: "[daffSuffix]" }, { kind: "component", type: i1.DaffTabComponent, selector: "daff-tab", inputs: ["disabled", "id"] }, { kind: "component", type: DaffButtonComponent, selector: "button[daff-button],a[daff-button]" }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
38
|
+
}
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: CustomSelectTabsComponent, decorators: [{
|
40
|
+
type: Component,
|
41
|
+
args: [{ selector: 'custom-select-tabs', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
42
|
+
DAFF_TABS_COMPONENTS,
|
43
|
+
DaffButtonComponent,
|
44
|
+
FaIconComponent,
|
45
|
+
], template: "<div class=\"custom-select-tabs__buttons\">\n\t<button daff-button size=\"sm\" (click)=\"selectTabThree()\">\n\t\tSelect Tab 3\n\t</button>\n\t\n\t<button daff-button size=\"sm\" (click)=\"selectTabFive()\">\n\t\tSelect Tab 5\n\t</button>\n</div>\n\n<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-3\">\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-5\">\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>", styles: [".custom-select-tabs__buttons{display:flex;gap:8px;margin:0 0 16px}\n"] }]
|
46
|
+
}], propDecorators: { _tab: [{
|
47
|
+
type: ViewChild,
|
48
|
+
args: [DaffTabsComponent]
|
49
|
+
}] } });
|
50
|
+
|
51
|
+
class DisabledTabsComponent {
|
52
|
+
constructor() {
|
53
|
+
this.faInfoCircle = faInfoCircle;
|
54
|
+
}
|
55
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DisabledTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
56
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DisabledTabsComponent, isStandalone: true, selector: "disabled-tabs", ngImport: i0, template: "<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab [disabled]=\"true\">\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>", dependencies: [{ kind: "component", type: i1.DaffTabsComponent, selector: "daff-tabs", inputs: ["initiallySelected", "aria-label"], outputs: ["tabChange"] }, { kind: "component", type: i1.DaffTabLabelComponent, selector: "daff-tab-label" }, { kind: "component", type: i1.DaffTabPanelComponent, selector: "daff-tab-panel" }, { kind: "ngmodule", type: i2.DaffPrefixSuffixModule }, { kind: "directive", type: i2.DaffPrefixDirective, selector: "[daffPrefix]" }, { kind: "directive", type: i2.DaffSuffixDirective, selector: "[daffSuffix]" }, { kind: "component", type: i1.DaffTabComponent, selector: "daff-tab", inputs: ["disabled", "id"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
57
|
+
}
|
58
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DisabledTabsComponent, decorators: [{
|
59
|
+
type: Component,
|
60
|
+
args: [{ selector: 'disabled-tabs', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
61
|
+
DAFF_TABS_COMPONENTS,
|
62
|
+
FaIconComponent,
|
63
|
+
], template: "<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab [disabled]=\"true\">\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>" }]
|
64
|
+
}] });
|
65
|
+
|
66
|
+
class InitiallySelectTabComponent {
|
67
|
+
constructor() {
|
68
|
+
this.faInfoCircle = faInfoCircle;
|
69
|
+
}
|
70
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: InitiallySelectTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
71
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: InitiallySelectTabComponent, isStandalone: true, selector: "initially-select-tab", ngImport: i0, template: "<daff-tabs aria-label=\"List of tabs\" [initiallySelected]=\"'tab-4'\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-4\">\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>", dependencies: [{ kind: "component", type: i1.DaffTabsComponent, selector: "daff-tabs", inputs: ["initiallySelected", "aria-label"], outputs: ["tabChange"] }, { kind: "component", type: i1.DaffTabLabelComponent, selector: "daff-tab-label" }, { kind: "component", type: i1.DaffTabPanelComponent, selector: "daff-tab-panel" }, { kind: "ngmodule", type: i2.DaffPrefixSuffixModule }, { kind: "directive", type: i2.DaffPrefixDirective, selector: "[daffPrefix]" }, { kind: "directive", type: i2.DaffSuffixDirective, selector: "[daffSuffix]" }, { kind: "component", type: i1.DaffTabComponent, selector: "daff-tab", inputs: ["disabled", "id"] }, { kind: "component", type: FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
72
|
+
}
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: InitiallySelectTabComponent, decorators: [{
|
74
|
+
type: Component,
|
75
|
+
args: [{ selector: 'initially-select-tab', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
76
|
+
DAFF_TABS_COMPONENTS,
|
77
|
+
FaIconComponent,
|
78
|
+
], template: "<daff-tabs aria-label=\"List of tabs\" [initiallySelected]=\"'tab-4'\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-4\">\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>" }]
|
79
|
+
}] });
|
80
|
+
|
81
|
+
const TABS_EXAMPLES = [
|
82
|
+
BasicTabsComponent,
|
83
|
+
DisabledTabsComponent,
|
84
|
+
InitiallySelectTabComponent,
|
85
|
+
CustomSelectTabsComponent,
|
86
|
+
];
|
87
|
+
|
88
|
+
/**
|
89
|
+
* Generated bundle index. Do not edit.
|
90
|
+
*/
|
91
|
+
|
92
|
+
export { TABS_EXAMPLES };
|
93
|
+
//# sourceMappingURL=daffodil-design-tabs-examples.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"daffodil-design-tabs-examples.mjs","sources":["../../../libs/design/tabs/examples/src/basic-tabs/basic-tabs.component.ts","../../../libs/design/tabs/examples/src/basic-tabs/basic-tabs.component.html","../../../libs/design/tabs/examples/src/custom-select-tabs/custom-select-tabs.component.ts","../../../libs/design/tabs/examples/src/custom-select-tabs/custom-select-tabs.component.html","../../../libs/design/tabs/examples/src/disabled-tabs/disabled-tabs.component.ts","../../../libs/design/tabs/examples/src/disabled-tabs/disabled-tabs.component.html","../../../libs/design/tabs/examples/src/initially-select-tab/initially-select-tab.component.ts","../../../libs/design/tabs/examples/src/initially-select-tab/initially-select-tab.component.html","../../../libs/design/tabs/examples/src/public_api.ts","../../../libs/design/tabs/examples/src/daffodil-design-tabs-examples.ts"],"sourcesContent":["import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\nimport { faInfoCircle } from '@fortawesome/free-solid-svg-icons';\n\nimport { DAFF_TABS_COMPONENTS } from '@daffodil/design/tabs';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'basic-tabs',\n templateUrl: './basic-tabs.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n DAFF_TABS_COMPONENTS,\n FaIconComponent,\n ],\n})\nexport class BasicTabsComponent {\n faInfoCircle = faInfoCircle;\n}\n","<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n</daff-tabs>","import {\n ChangeDetectionStrategy,\n Component,\n ViewChild,\n} from '@angular/core';\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\nimport { faInfoCircle } from '@fortawesome/free-solid-svg-icons';\n\nimport { DaffButtonComponent } from '@daffodil/design/button';\nimport {\n DAFF_TABS_COMPONENTS,\n DaffTabsComponent,\n} from '@daffodil/design/tabs';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'custom-select-tabs',\n templateUrl: './custom-select-tabs.component.html',\n styleUrl: './custom-select-tabs.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n DAFF_TABS_COMPONENTS,\n DaffButtonComponent,\n FaIconComponent,\n ],\n})\nexport class CustomSelectTabsComponent {\n faInfoCircle = faInfoCircle;\n\n selectedTab = 'tab-3';\n\n @ViewChild(DaffTabsComponent) _tab: DaffTabsComponent;\n\n selectTabThree() {\n this._tab.select('tab-3');\n }\n\n selectTabFive() {\n this._tab.select('tab-5');\n }\n}\n","<div class=\"custom-select-tabs__buttons\">\n\t<button daff-button size=\"sm\" (click)=\"selectTabThree()\">\n\t\tSelect Tab 3\n\t</button>\n\t\n\t<button daff-button size=\"sm\" (click)=\"selectTabFive()\">\n\t\tSelect Tab 5\n\t</button>\n</div>\n\n<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-3\">\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-5\">\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\nimport { faInfoCircle } from '@fortawesome/free-solid-svg-icons';\n\nimport { DAFF_TABS_COMPONENTS } from '@daffodil/design/tabs';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'disabled-tabs',\n templateUrl: './disabled-tabs.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n DAFF_TABS_COMPONENTS,\n FaIconComponent,\n ],\n})\nexport class DisabledTabsComponent {\n faInfoCircle = faInfoCircle;\n}\n","<daff-tabs aria-label=\"List of tabs\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab [disabled]=\"true\">\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>","import {\n ChangeDetectionStrategy,\n Component,\n} from '@angular/core';\nimport { FaIconComponent } from '@fortawesome/angular-fontawesome';\nimport { faInfoCircle } from '@fortawesome/free-solid-svg-icons';\n\nimport { DAFF_TABS_COMPONENTS } from '@daffodil/design/tabs';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'initially-select-tab',\n templateUrl: './initially-select-tab.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true,\n imports: [\n DAFF_TABS_COMPONENTS,\n FaIconComponent,\n ],\n})\nexport class InitiallySelectTabComponent {\n faInfoCircle = faInfoCircle;\n}\n","<daff-tabs aria-label=\"List of tabs\" [initiallySelected]=\"'tab-4'\">\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 1\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 1 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 2\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 2 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffPrefix></fa-icon>\n\t\t\tTab 3\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 3 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab id=\"tab-4\">\n\t\t<daff-tab-label>\n\t\t\tTab 4\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 4 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\n\t<daff-tab>\n\t\t<daff-tab-label>\n\t\t\tTab 5\n\t\t\t<fa-icon [icon]=\"faInfoCircle\" daffSuffix></fa-icon>\n\t\t</daff-tab-label>\n\t\t<daff-tab-panel>\n\t\t\tTab 5 Panel\n\t\t</daff-tab-panel>\n\t</daff-tab>\n\t\n</daff-tabs>","import { BasicTabsComponent } from './basic-tabs/basic-tabs.component';\nimport { CustomSelectTabsComponent } from './custom-select-tabs/custom-select-tabs.component';\nimport { DisabledTabsComponent } from './disabled-tabs/disabled-tabs.component';\nimport { InitiallySelectTabComponent } from './initially-select-tab/initially-select-tab.component';\n\nexport const TABS_EXAMPLES = [\n BasicTabsComponent,\n DisabledTabsComponent,\n InitiallySelectTabComponent,\n CustomSelectTabsComponent,\n];\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,431 @@
|
|
1
|
+
import * as i1 from '@daffodil/design';
|
2
|
+
import { DaffPrefixDirective, DaffSuffixDirective, DaffPrefixSuffixModule, DaffArticleEncapsulatedDirective } from '@daffodil/design';
|
3
|
+
import * as i0 from '@angular/core';
|
4
|
+
import { TemplateRef, Component, ChangeDetectionStrategy, Input, ViewChild, ContentChild, HostBinding, ViewEncapsulation, EventEmitter, Output, ContentChildren, ViewChildren } from '@angular/core';
|
5
|
+
import { NgIf, NgTemplateOutlet } from '@angular/common';
|
6
|
+
|
7
|
+
let tabId = 1;
|
8
|
+
/**
|
9
|
+
* `DaffTabComponet` is an element in the tab list that is used as a content container to group the label of a tab panel and the tab panel together.
|
10
|
+
*
|
11
|
+
* ## Template Structure
|
12
|
+
* A `<daff-tab>` should include the {@link DaffTabLabelComponent} and {@link DaffTabPanelComponent} components in order to properly structure the UI.
|
13
|
+
*
|
14
|
+
* ## Usage
|
15
|
+
* ```html
|
16
|
+
* <daff-tab>
|
17
|
+
* <daff-tab-label>
|
18
|
+
* <fa-icon [icon]="faInfoCircle" daffPrefix></fa-icon>
|
19
|
+
* Tab 1
|
20
|
+
* </daff-tab-label>
|
21
|
+
* <daff-tab-panel>
|
22
|
+
* Tab 1 Panel
|
23
|
+
* </daff-tab-panel>
|
24
|
+
* </daff-tab>
|
25
|
+
* ```
|
26
|
+
*/
|
27
|
+
class DaffTabComponent {
|
28
|
+
constructor() {
|
29
|
+
/**
|
30
|
+
* Whether the tab is disabled.
|
31
|
+
*
|
32
|
+
* ```html
|
33
|
+
* <daff-tab [disabled]="true">
|
34
|
+
* </daff-tab>
|
35
|
+
* ```
|
36
|
+
*/
|
37
|
+
this.disabled = false;
|
38
|
+
/**
|
39
|
+
* A unique id for the tab component.
|
40
|
+
*
|
41
|
+
* The `id` is automatically generated by linking the prefix 'daff-tab-' with an incrementing `tabId`. This value can be customized by passing a different `id` value via the component's `id` input.
|
42
|
+
*
|
43
|
+
* ```html
|
44
|
+
* <daff-tab [id]="'custom-id'"></daff-tab>
|
45
|
+
* ```
|
46
|
+
*/
|
47
|
+
this.id = 'daff-tab-' + tabId;
|
48
|
+
/**
|
49
|
+
* @docs-private
|
50
|
+
*/
|
51
|
+
this.panelId = 'daff-tab-panel-' + tabId;
|
52
|
+
tabId++;
|
53
|
+
}
|
54
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
55
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffTabComponent, isStandalone: true, selector: "daff-tab", inputs: { disabled: "disabled", id: "id" }, viewQueries: [{ propertyName: "contentRef", first: true, predicate: ["content"], descendants: true, read: TemplateRef, static: true }, { propertyName: "labelRef", first: true, predicate: ["label"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: `
|
56
|
+
<ng-template #label>
|
57
|
+
<ng-content select="daff-tab-label"></ng-content>
|
58
|
+
</ng-template>
|
59
|
+
<ng-template #content>
|
60
|
+
<ng-content select="daff-tab-panel"></ng-content>
|
61
|
+
</ng-template>
|
62
|
+
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
63
|
+
}
|
64
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffTabComponent, decorators: [{
|
65
|
+
type: Component,
|
66
|
+
args: [{
|
67
|
+
standalone: true,
|
68
|
+
selector: 'daff-tab',
|
69
|
+
template: `
|
70
|
+
<ng-template #label>
|
71
|
+
<ng-content select="daff-tab-label"></ng-content>
|
72
|
+
</ng-template>
|
73
|
+
<ng-template #content>
|
74
|
+
<ng-content select="daff-tab-panel"></ng-content>
|
75
|
+
</ng-template>
|
76
|
+
`,
|
77
|
+
changeDetection: ChangeDetectionStrategy.OnPush,
|
78
|
+
}]
|
79
|
+
}], ctorParameters: () => [], propDecorators: { disabled: [{
|
80
|
+
type: Input
|
81
|
+
}], contentRef: [{
|
82
|
+
type: ViewChild,
|
83
|
+
args: ['content', { read: TemplateRef, static: true }]
|
84
|
+
}], labelRef: [{
|
85
|
+
type: ViewChild,
|
86
|
+
args: ['label', { read: TemplateRef, static: true }]
|
87
|
+
}], id: [{
|
88
|
+
type: Input
|
89
|
+
}] } });
|
90
|
+
|
91
|
+
/**
|
92
|
+
* DaffTabLabelComponent is used to display the label of a tab panel. Labels may optionally contain a `daffPrefix` or `daffSuffix` to add icons or badges.
|
93
|
+
*
|
94
|
+
* ```html
|
95
|
+
* <daff-tab-label>
|
96
|
+
* <div daffPrefix></div>
|
97
|
+
* Label
|
98
|
+
* <div daffSuffix></div
|
99
|
+
* </daff-tab-Label>
|
100
|
+
* ```
|
101
|
+
*/
|
102
|
+
class DaffTabLabelComponent {
|
103
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffTabLabelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
104
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffTabLabelComponent, isStandalone: true, selector: "daff-tab-label", queries: [{ propertyName: "_prefix", first: true, predicate: DaffPrefixDirective, descendants: true }, { propertyName: "_suffix", first: true, predicate: DaffSuffixDirective, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"_prefix\">\n <ng-content select=\"[daffPrefix]\"></ng-content>\n</ng-container>\n<div class=\"daff-tab-label__content\">\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf=\"_suffix\">\n <ng-content select=\"[daffSuffix]\"></ng-content>\n</ng-container>", styles: [":host{display:flex;gap:8px}.daff-tab-label__content{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: DaffPrefixSuffixModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
105
|
+
}
|
106
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffTabLabelComponent, decorators: [{
|
107
|
+
type: Component,
|
108
|
+
args: [{ standalone: true, selector: 'daff-tab-label', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
109
|
+
NgIf,
|
110
|
+
DaffPrefixSuffixModule,
|
111
|
+
], template: "<ng-container *ngIf=\"_prefix\">\n <ng-content select=\"[daffPrefix]\"></ng-content>\n</ng-container>\n<div class=\"daff-tab-label__content\">\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf=\"_suffix\">\n <ng-content select=\"[daffSuffix]\"></ng-content>\n</ng-container>", styles: [":host{display:flex;gap:8px}.daff-tab-label__content{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}\n"] }]
|
112
|
+
}], propDecorators: { _prefix: [{
|
113
|
+
type: ContentChild,
|
114
|
+
args: [DaffPrefixDirective]
|
115
|
+
}], _suffix: [{
|
116
|
+
type: ContentChild,
|
117
|
+
args: [DaffSuffixDirective]
|
118
|
+
}] } });
|
119
|
+
|
120
|
+
/**
|
121
|
+
* DaffTabPanelComponent is used to display the content panel of a tab.
|
122
|
+
*
|
123
|
+
* ```html
|
124
|
+
* <daff-tab-panel>
|
125
|
+
* <!-- Tab panel content goes here -->
|
126
|
+
* </daff-tab-panel>
|
127
|
+
* ```
|
128
|
+
*/
|
129
|
+
class DaffTabPanelComponent {
|
130
|
+
/**
|
131
|
+
* Dynamically binds the tab panel's id to a unique value generated from the associated tab's panelId.
|
132
|
+
*/
|
133
|
+
get tabPanelId() {
|
134
|
+
return this._id;
|
135
|
+
}
|
136
|
+
constructor(tab) {
|
137
|
+
this.tab = tab;
|
138
|
+
/**
|
139
|
+
* @docs-private
|
140
|
+
*/
|
141
|
+
this.class = true;
|
142
|
+
/**
|
143
|
+
* Sets the `role` to tabpanel.
|
144
|
+
*/
|
145
|
+
this.role = 'tabpanel';
|
146
|
+
/**
|
147
|
+
* `aria-labelledby` for the tab.
|
148
|
+
*/
|
149
|
+
this.ariaLabelledBy = '';
|
150
|
+
/**
|
151
|
+
* Sets the `tabindex` to 0.
|
152
|
+
*/
|
153
|
+
this.tabIndex = '0';
|
154
|
+
this._id = '';
|
155
|
+
/**
|
156
|
+
* Sets the value of `ariaLabelledBy` to the id of the tab component.
|
157
|
+
*/
|
158
|
+
this.ariaLabelledBy = this.tab.id;
|
159
|
+
this._id = this.tab.panelId;
|
160
|
+
}
|
161
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffTabPanelComponent, deps: [{ token: DaffTabComponent }], target: i0.ɵɵFactoryTarget.Component }); }
|
162
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffTabPanelComponent, isStandalone: true, selector: "daff-tab-panel", host: { properties: { "class.daff-tab-panel": "this.class", "attr.role": "this.role", "attr.aria-labelledby": "this.ariaLabelledBy", "attr.tabindex": "this.tabIndex", "attr.id": "this.tabPanelId" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [":host(.daff-tab-panel){display:block;padding:1rem}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
163
|
+
}
|
164
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffTabPanelComponent, decorators: [{
|
165
|
+
type: Component,
|
166
|
+
args: [{ standalone: true, selector: 'daff-tab-panel', template: `<ng-content></ng-content>`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host(.daff-tab-panel){display:block;padding:1rem}\n"] }]
|
167
|
+
}], ctorParameters: () => [{ type: DaffTabComponent }], propDecorators: { class: [{
|
168
|
+
type: HostBinding,
|
169
|
+
args: ['class.daff-tab-panel']
|
170
|
+
}], role: [{
|
171
|
+
type: HostBinding,
|
172
|
+
args: ['attr.role']
|
173
|
+
}], ariaLabelledBy: [{
|
174
|
+
type: HostBinding,
|
175
|
+
args: ['attr.aria-labelledby']
|
176
|
+
}], tabIndex: [{
|
177
|
+
type: HostBinding,
|
178
|
+
args: ['attr.tabindex']
|
179
|
+
}], tabPanelId: [{
|
180
|
+
type: HostBinding,
|
181
|
+
args: ['attr.id']
|
182
|
+
}] } });
|
183
|
+
|
184
|
+
class DaffTabActivatorComponent {
|
185
|
+
/**
|
186
|
+
* Sets `aria-selected` to true if the component is selected and false if it's not selected.
|
187
|
+
*/
|
188
|
+
get ariaSelected() {
|
189
|
+
return this.selected ? true : false;
|
190
|
+
}
|
191
|
+
/**
|
192
|
+
* Sets `tabindex` to `0` if the component is selected and `-1` if it's not selected.
|
193
|
+
*/
|
194
|
+
get tabIndex() {
|
195
|
+
return this.selected ? '0' : '-1';
|
196
|
+
}
|
197
|
+
ngOnInit() {
|
198
|
+
/**
|
199
|
+
* Sets the value of `panelId` to the `ariaControls` property
|
200
|
+
*/
|
201
|
+
this.ariaControls = this.panelId;
|
202
|
+
}
|
203
|
+
constructor(el) {
|
204
|
+
this.el = el;
|
205
|
+
/**
|
206
|
+
* @docs-private
|
207
|
+
*/
|
208
|
+
this.class = true;
|
209
|
+
/**
|
210
|
+
* Sets the `role` to tab.
|
211
|
+
*/
|
212
|
+
this.role = 'tab';
|
213
|
+
/** Whether or not a tab is selected */
|
214
|
+
this.selected = false;
|
215
|
+
this.ariaControls = '';
|
216
|
+
/**
|
217
|
+
* The html id of the tab activator component
|
218
|
+
*/
|
219
|
+
this.tabActivatorId = '';
|
220
|
+
this.panelId = '';
|
221
|
+
}
|
222
|
+
/**
|
223
|
+
* Sets focus to the native element of the component
|
224
|
+
*/
|
225
|
+
focus() {
|
226
|
+
this.el.nativeElement.focus();
|
227
|
+
}
|
228
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffTabActivatorComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
229
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.2", type: DaffTabActivatorComponent, isStandalone: true, selector: "button[daff-tab-activator],a[daff-tab-activator]", inputs: { selected: "selected", tabActivatorId: "tabActivatorId", panelId: "panelId" }, host: { properties: { "class.daff-tab-activator": "this.class", "attr.role": "this.role", "class.selected": "this.selected", "attr.aria-selected": "this.ariaSelected", "attr.tabindex": "this.tabIndex", "attr.aria-controls": "this.ariaControls", "attr.id": "this.tabActivatorId" } }, ngImport: i0, template: `<ng-content></ng-content>`, isInline: true, styles: [".daff-tab-activator{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:inline-block;appearance:none;background:none;border:none;color:currentColor;font-size:1rem;font-weight:400;height:2.5rem;margin:0;padding:.5rem 1.5rem}.daff-tab-activator[disabled]{cursor:not-allowed;opacity:.6}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
230
|
+
}
|
231
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffTabActivatorComponent, decorators: [{
|
232
|
+
type: Component,
|
233
|
+
args: [{ standalone: true, selector: '' +
|
234
|
+
'button[daff-tab-activator]' + ',' +
|
235
|
+
'a[daff-tab-activator]', template: `<ng-content></ng-content>`, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, styles: [".daff-tab-activator{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;display:inline-block;appearance:none;background:none;border:none;color:currentColor;font-size:1rem;font-weight:400;height:2.5rem;margin:0;padding:.5rem 1.5rem}.daff-tab-activator[disabled]{cursor:not-allowed;opacity:.6}\n"] }]
|
236
|
+
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { class: [{
|
237
|
+
type: HostBinding,
|
238
|
+
args: ['class.daff-tab-activator']
|
239
|
+
}], role: [{
|
240
|
+
type: HostBinding,
|
241
|
+
args: ['attr.role']
|
242
|
+
}], selected: [{
|
243
|
+
type: Input
|
244
|
+
}, {
|
245
|
+
type: HostBinding,
|
246
|
+
args: ['class.selected']
|
247
|
+
}], ariaSelected: [{
|
248
|
+
type: HostBinding,
|
249
|
+
args: ['attr.aria-selected']
|
250
|
+
}], tabIndex: [{
|
251
|
+
type: HostBinding,
|
252
|
+
args: ['attr.tabindex']
|
253
|
+
}], ariaControls: [{
|
254
|
+
type: HostBinding,
|
255
|
+
args: ['attr.aria-controls']
|
256
|
+
}], tabActivatorId: [{
|
257
|
+
type: Input
|
258
|
+
}, {
|
259
|
+
type: HostBinding,
|
260
|
+
args: ['attr.id']
|
261
|
+
}], panelId: [{
|
262
|
+
type: Input
|
263
|
+
}] } });
|
264
|
+
|
265
|
+
/**
|
266
|
+
* Tabs provide a way to navigate between panels that display related content.
|
267
|
+
*
|
268
|
+
* ## Usage
|
269
|
+
* ```html
|
270
|
+
* <daff-tabs aria-label="List of tabs">
|
271
|
+
* <daff-tab>
|
272
|
+
* <daff-tab-label>
|
273
|
+
* <fa-icon [icon]="faInfoCircle" daffPrefix></fa-icon>
|
274
|
+
* Tab 1
|
275
|
+
* </daff-tab-label>
|
276
|
+
* <daff-tab-panel>
|
277
|
+
* Tab 1 Panel
|
278
|
+
* </daff-tab-panel>
|
279
|
+
* </daff-tab>
|
280
|
+
* <daff-tab>
|
281
|
+
* <daff-tab-label>
|
282
|
+
* Tab 2
|
283
|
+
* <fa-icon [icon]="faInfoCircle" daffSuffix></fa-icon>
|
284
|
+
* </daff-tab-label>
|
285
|
+
* <daff-tab-panel>
|
286
|
+
* Tab 2 Panel
|
287
|
+
* </daff-tab-panel>
|
288
|
+
* </daff-tab>
|
289
|
+
* </daff-tabs>
|
290
|
+
* ```
|
291
|
+
*/
|
292
|
+
class DaffTabsComponent {
|
293
|
+
constructor(cdRef) {
|
294
|
+
this.cdRef = cdRef;
|
295
|
+
/**
|
296
|
+
* @docs-private
|
297
|
+
*/
|
298
|
+
this.class = true;
|
299
|
+
/**
|
300
|
+
* The tab that is initially selected on initial load. If it's not used, the first tab in the tablist will be selected by default.
|
301
|
+
*/
|
302
|
+
this.initiallySelected = null;
|
303
|
+
/**
|
304
|
+
* @docs-private
|
305
|
+
*/
|
306
|
+
this.externalAriaLabel = null;
|
307
|
+
/**
|
308
|
+
* aria-label for the tab.
|
309
|
+
*/
|
310
|
+
this.ariaLabel = '';
|
311
|
+
/**
|
312
|
+
* Event emitted when tab selection changes.
|
313
|
+
*/
|
314
|
+
this.tabChange = new EventEmitter();
|
315
|
+
}
|
316
|
+
/**
|
317
|
+
* @docs-private
|
318
|
+
*/
|
319
|
+
ngAfterContentInit() {
|
320
|
+
if (this.initiallySelected) {
|
321
|
+
this.selectedTab = this.initiallySelected;
|
322
|
+
}
|
323
|
+
if (!this.selectedTab) {
|
324
|
+
this.selectedTab = this._tabs.first.id;
|
325
|
+
}
|
326
|
+
}
|
327
|
+
/**
|
328
|
+
* Selects a tab and sets focus on the selected tab.
|
329
|
+
*/
|
330
|
+
select(tabId) {
|
331
|
+
const tabActivator = this._tabActivators.find(el => el.tabActivatorId === tabId);
|
332
|
+
if (!tabActivator) {
|
333
|
+
console.warn(`The tab '${tabId}' was not able to be selected because it does not exist. Check the id on your <daff-tab>s.`);
|
334
|
+
return;
|
335
|
+
}
|
336
|
+
this.tabChange.emit(tabId);
|
337
|
+
this.selectedTab = tabId;
|
338
|
+
this.cdRef.markForCheck();
|
339
|
+
tabActivator.focus();
|
340
|
+
}
|
341
|
+
/**
|
342
|
+
* Navigates through the tabs based on the given offset.
|
343
|
+
* Moves forward or backward in the tab array, wrapping around when necessary.
|
344
|
+
*/
|
345
|
+
navigateTabs(offset) {
|
346
|
+
const array = this._tabs.toArray();
|
347
|
+
let selectedIndex = array.findIndex(el => el.id === this.selectedTab);
|
348
|
+
const startingIndex = selectedIndex;
|
349
|
+
let newIndex;
|
350
|
+
do {
|
351
|
+
newIndex = (selectedIndex + offset + array.length) % array.length;
|
352
|
+
selectedIndex = newIndex;
|
353
|
+
} while (array[newIndex].disabled && selectedIndex !== startingIndex); // Skip disabled tabs
|
354
|
+
this.select(array[newIndex].id);
|
355
|
+
}
|
356
|
+
/**
|
357
|
+
* Selects the previous tab and wraps around to the last tab if the first tab is currently selected.
|
358
|
+
*/
|
359
|
+
previous() {
|
360
|
+
this.navigateTabs(-1);
|
361
|
+
}
|
362
|
+
/**
|
363
|
+
* Selects the next tab and wraps around to the first tab if the last tab is currently selected.
|
364
|
+
*/
|
365
|
+
next() {
|
366
|
+
this.navigateTabs(1);
|
367
|
+
}
|
368
|
+
/**
|
369
|
+
* Selects the first tab.
|
370
|
+
*/
|
371
|
+
selectFirst(event) {
|
372
|
+
event.preventDefault();
|
373
|
+
this.select(this._tabs.toArray()[0].id);
|
374
|
+
}
|
375
|
+
/**
|
376
|
+
* Selects the last tab.
|
377
|
+
*/
|
378
|
+
selectLast(event) {
|
379
|
+
event.preventDefault();
|
380
|
+
const array = this._tabs.toArray();
|
381
|
+
this.select(array[array.length - 1].id);
|
382
|
+
}
|
383
|
+
/** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffTabsComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
384
|
+
/** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: DaffTabsComponent, isStandalone: true, selector: "daff-tabs", inputs: { initiallySelected: "initiallySelected", ariaLabel: ["aria-label", "ariaLabel"] }, outputs: { tabChange: "tabChange" }, host: { properties: { "class.daff-tabs": "this.class", "attr.aria-label": "this.externalAriaLabel" } }, queries: [{ propertyName: "_labels", predicate: DaffTabLabelComponent, descendants: true }, { propertyName: "_tabs", predicate: DaffTabComponent }], viewQueries: [{ propertyName: "_tabActivators", predicate: DaffTabActivatorComponent, descendants: true }], hostDirectives: [{ directive: i1.DaffArticleEncapsulatedDirective }], ngImport: i0, template: "<div class=\"daff-tabs__tab-list\"\n\trole=\"tablist\"\n\t[attr.aria-label]=\"ariaLabel\"\n\t(keydown.home)=\"selectFirst($event)\"\n\t(keydown.end)=\"selectLast($event)\">\n\t@for (tab of _tabs; track tab) {\n\t\t<button daff-tab-activator\n\t\t\t[selected]=\"tab.id === selectedTab\"\n\t\t\t(click)=\"select(tab.id)\"\n\t\t\t[panelId]=\"tab.panelId\"\n\t\t\t[disabled]=\"tab.disabled\"\n\t\t\t[tabActivatorId]=\"tab.id\"\n\t\t\t(keydown.arrowright)=\"next()\"\n\t\t\t(keydown.arrowleft)=\"previous()\">\n\t\t\t\t<ng-container *ngTemplateOutlet=\"tab.labelRef\"></ng-container>\n\t\t</button>\n\t}\n</div>\n\n@for (tab of _tabs; track tab) {\n\t@if(tab.id === selectedTab ) {\n\t\t<ng-container *ngTemplateOutlet=\"tab.contentRef\"></ng-container>\n\t}\n}", styles: [":host(.daff-tabs){max-width:100%}.daff-tabs{display:block}.daff-tabs .daff-tabs__tab-list{display:flex;overflow-x:scroll;scrollbar-width:thin}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: DaffTabActivatorComponent, selector: "button[daff-tab-activator],a[daff-tab-activator]", inputs: ["selected", "tabActivatorId", "panelId"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
385
|
+
}
|
386
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: DaffTabsComponent, decorators: [{
|
387
|
+
type: Component,
|
388
|
+
args: [{ standalone: true, selector: 'daff-tabs', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, imports: [
|
389
|
+
NgTemplateOutlet,
|
390
|
+
DaffTabActivatorComponent,
|
391
|
+
], hostDirectives: [
|
392
|
+
{ directive: DaffArticleEncapsulatedDirective },
|
393
|
+
], template: "<div class=\"daff-tabs__tab-list\"\n\trole=\"tablist\"\n\t[attr.aria-label]=\"ariaLabel\"\n\t(keydown.home)=\"selectFirst($event)\"\n\t(keydown.end)=\"selectLast($event)\">\n\t@for (tab of _tabs; track tab) {\n\t\t<button daff-tab-activator\n\t\t\t[selected]=\"tab.id === selectedTab\"\n\t\t\t(click)=\"select(tab.id)\"\n\t\t\t[panelId]=\"tab.panelId\"\n\t\t\t[disabled]=\"tab.disabled\"\n\t\t\t[tabActivatorId]=\"tab.id\"\n\t\t\t(keydown.arrowright)=\"next()\"\n\t\t\t(keydown.arrowleft)=\"previous()\">\n\t\t\t\t<ng-container *ngTemplateOutlet=\"tab.labelRef\"></ng-container>\n\t\t</button>\n\t}\n</div>\n\n@for (tab of _tabs; track tab) {\n\t@if(tab.id === selectedTab ) {\n\t\t<ng-container *ngTemplateOutlet=\"tab.contentRef\"></ng-container>\n\t}\n}", styles: [":host(.daff-tabs){max-width:100%}.daff-tabs{display:block}.daff-tabs .daff-tabs__tab-list{display:flex;overflow-x:scroll;scrollbar-width:thin}\n"] }]
|
394
|
+
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { class: [{
|
395
|
+
type: HostBinding,
|
396
|
+
args: ['class.daff-tabs']
|
397
|
+
}], initiallySelected: [{
|
398
|
+
type: Input
|
399
|
+
}], externalAriaLabel: [{
|
400
|
+
type: HostBinding,
|
401
|
+
args: ['attr.aria-label']
|
402
|
+
}], ariaLabel: [{
|
403
|
+
type: Input,
|
404
|
+
args: ['aria-label']
|
405
|
+
}], tabChange: [{
|
406
|
+
type: Output
|
407
|
+
}], _labels: [{
|
408
|
+
type: ContentChildren,
|
409
|
+
args: [DaffTabLabelComponent, { descendants: true }]
|
410
|
+
}], _tabs: [{
|
411
|
+
type: ContentChildren,
|
412
|
+
args: [DaffTabComponent]
|
413
|
+
}], _tabActivators: [{
|
414
|
+
type: ViewChildren,
|
415
|
+
args: [DaffTabActivatorComponent]
|
416
|
+
}] } });
|
417
|
+
|
418
|
+
const DAFF_TABS_COMPONENTS = [
|
419
|
+
DaffTabsComponent,
|
420
|
+
DaffTabLabelComponent,
|
421
|
+
DaffTabPanelComponent,
|
422
|
+
DaffPrefixSuffixModule,
|
423
|
+
DaffTabComponent,
|
424
|
+
];
|
425
|
+
|
426
|
+
/**
|
427
|
+
* Generated bundle index. Do not edit.
|
428
|
+
*/
|
429
|
+
|
430
|
+
export { DAFF_TABS_COMPONENTS, DaffTabComponent, DaffTabLabelComponent, DaffTabPanelComponent, DaffTabsComponent };
|
431
|
+
//# sourceMappingURL=daffodil-design-tabs.mjs.map
|