@brandsync/wc 1.8.0 → 1.9.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.
Files changed (100) hide show
  1. package/custom-elements.json +139 -11
  2. package/dist/brandsync-wc/brandsync-wc.esm.js +1 -1
  3. package/dist/brandsync-wc/p-0eed6813.entry.js +1 -0
  4. package/dist/brandsync-wc/{p-ee7da23d.entry.js → p-107b1c5d.entry.js} +1 -1
  5. package/dist/brandsync-wc/p-2181378f.entry.js +1 -0
  6. package/dist/brandsync-wc/p-27bbed83.entry.js +1 -0
  7. package/dist/brandsync-wc/p-36bf37d9.entry.js +1 -0
  8. package/dist/brandsync-wc/p-3b64e3cd.entry.js +1 -0
  9. package/dist/brandsync-wc/p-6fd7dd6a.entry.js +1 -0
  10. package/dist/brandsync-wc/p-9f6fe37d.entry.js +1 -0
  11. package/dist/brandsync-wc/{p-03b08508.entry.js → p-c3f72584.entry.js} +1 -1
  12. package/dist/brandsync-wc/p-fc240aa0.entry.js +1 -0
  13. package/dist/cjs/brandsync-wc.cjs.js +1 -1
  14. package/dist/cjs/bs-breadcrumb-overflow.cjs.entry.js +13 -1
  15. package/dist/cjs/bs-breadcrumb.cjs.entry.js +15 -1
  16. package/dist/cjs/bs-data-table.cjs.entry.js +18 -4
  17. package/dist/cjs/bs-icon-button.cjs.entry.js +2 -2
  18. package/dist/cjs/bs-inline-tab.cjs.entry.js +5 -1
  19. package/dist/cjs/bs-navigation-drawer-item.cjs.entry.js +1 -1
  20. package/dist/cjs/bs-navigation-drawer.cjs.entry.js +118 -5
  21. package/dist/cjs/bs-navigation-header.cjs.entry.js +1 -1
  22. package/dist/cjs/bs-tab.cjs.entry.js +5 -1
  23. package/dist/cjs/bs-tabs.cjs.entry.js +47 -2
  24. package/dist/cjs/loader.cjs.js +1 -1
  25. package/dist/collection/components/bs-breadcrumb/bs-breadcrumb/bs-breadcrumb.cmp.test.js +63 -0
  26. package/dist/collection/components/bs-breadcrumb/bs-breadcrumb/bs-breadcrumb.js +32 -1
  27. package/dist/collection/components/bs-breadcrumb/bs-breadcrumb-overflow/bs-breadcrumb-overflow.cmp.test.js +45 -0
  28. package/dist/collection/components/bs-breadcrumb/bs-breadcrumb-overflow/bs-breadcrumb-overflow.js +30 -1
  29. package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.cmp.test.js +20 -0
  30. package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.css +21 -4
  31. package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.js +3 -2
  32. package/dist/collection/components/bs-button/bs-icon-button/bs-icon-button.stories.js +10 -0
  33. package/dist/collection/components/bs-data-table/bs-data-table.cmp.test.js +19 -0
  34. package/dist/collection/components/bs-data-table/bs-data-table.js +19 -5
  35. package/dist/collection/components/bs-data-table/bs-data-table.stories.js +8 -1
  36. package/dist/collection/components/bs-logo/bs-logo.cmp.test.js +52 -3
  37. package/dist/collection/components/bs-menu/bs-menu.stories.js +54 -0
  38. package/dist/collection/components/bs-tab/bs-inline-tab/bs-inline-tab.js +24 -1
  39. package/dist/collection/components/bs-tab/bs-tab/bs-tab.js +24 -1
  40. package/dist/collection/components/bs-tab/bs-tabs/bs-tabs.cmp.test.js +88 -0
  41. package/dist/collection/components/bs-tab/bs-tabs/bs-tabs.js +83 -2
  42. package/dist/collection/components/bs-tab/bs-tabs/bs-tabs.stories.js +24 -0
  43. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.cmp.test.js +173 -5
  44. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.css +106 -34
  45. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.js +181 -5
  46. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.stories.js +48 -0
  47. package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer-item/bs-navigation-drawer-item.js +1 -1
  48. package/dist/collection/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.cmp.test.js +68 -0
  49. package/dist/collection/components/ui-shell/bs-navigation-header/bs-navigation-header/bs-navigation-header.css +31 -17
  50. package/dist/components/bs-attachment.js +1 -1
  51. package/dist/components/bs-breadcrumb-overflow.js +1 -1
  52. package/dist/components/bs-breadcrumb.js +1 -1
  53. package/dist/components/bs-carousel.js +1 -1
  54. package/dist/components/bs-data-table.js +1 -1
  55. package/dist/components/bs-dialog.js +1 -1
  56. package/dist/components/bs-file-upload-item.js +1 -1
  57. package/dist/components/bs-icon-button.js +1 -1
  58. package/dist/components/bs-inline-tab.js +1 -1
  59. package/dist/components/bs-navigation-drawer-item.js +1 -1
  60. package/dist/components/bs-navigation-drawer.js +1 -1
  61. package/dist/components/bs-navigation-header.js +1 -1
  62. package/dist/components/bs-snackbar.js +1 -1
  63. package/dist/components/bs-tab.js +1 -1
  64. package/dist/components/bs-tabs.js +1 -1
  65. package/dist/components/p-BoeorHNv.js +1 -0
  66. package/dist/esm/brandsync-wc.js +1 -1
  67. package/dist/esm/bs-breadcrumb-overflow.entry.js +14 -2
  68. package/dist/esm/bs-breadcrumb.entry.js +16 -2
  69. package/dist/esm/bs-data-table.entry.js +18 -4
  70. package/dist/esm/bs-icon-button.entry.js +2 -2
  71. package/dist/esm/bs-inline-tab.entry.js +5 -1
  72. package/dist/esm/bs-navigation-drawer-item.entry.js +1 -1
  73. package/dist/esm/bs-navigation-drawer.entry.js +119 -6
  74. package/dist/esm/bs-navigation-header.entry.js +1 -1
  75. package/dist/esm/bs-tab.entry.js +5 -1
  76. package/dist/esm/bs-tabs.entry.js +48 -3
  77. package/dist/esm/loader.js +1 -1
  78. package/dist/types/components/bs-breadcrumb/bs-breadcrumb/bs-breadcrumb.d.ts +10 -0
  79. package/dist/types/components/bs-breadcrumb/bs-breadcrumb-overflow/bs-breadcrumb-overflow.d.ts +8 -0
  80. package/dist/types/components/bs-button/bs-icon-button/bs-icon-button.d.ts +2 -1
  81. package/dist/types/components/bs-button/bs-icon-button/bs-icon-button.stories.d.ts +1 -0
  82. package/dist/types/components/bs-data-table/bs-data-table.d.ts +16 -2
  83. package/dist/types/components/bs-menu/bs-menu.stories.d.ts +1 -0
  84. package/dist/types/components/bs-tab/bs-inline-tab/bs-inline-tab.d.ts +4 -0
  85. package/dist/types/components/bs-tab/bs-tab/bs-tab.d.ts +4 -0
  86. package/dist/types/components/bs-tab/bs-tabs/bs-tabs.d.ts +17 -0
  87. package/dist/types/components/bs-tab/bs-tabs/bs-tabs.stories.d.ts +1 -0
  88. package/dist/types/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.d.ts +50 -1
  89. package/dist/types/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.stories.d.ts +2 -0
  90. package/dist/types/components.d.ts +130 -2
  91. package/package.json +1 -1
  92. package/dist/brandsync-wc/p-002d258d.entry.js +0 -1
  93. package/dist/brandsync-wc/p-153da845.entry.js +0 -1
  94. package/dist/brandsync-wc/p-2e7a1082.entry.js +0 -1
  95. package/dist/brandsync-wc/p-612cf79c.entry.js +0 -1
  96. package/dist/brandsync-wc/p-652d4068.entry.js +0 -1
  97. package/dist/brandsync-wc/p-bc69a96c.entry.js +0 -1
  98. package/dist/brandsync-wc/p-bf53ad52.entry.js +0 -1
  99. package/dist/brandsync-wc/p-c7f4c114.entry.js +0 -1
  100. package/dist/components/p-BkHYJIyj.js +0 -1
@@ -37,6 +37,14 @@ import { EventEmitter } from '../../../../stencil-public-runtime';
37
37
  * that state, so this deliberately does not add the same "flip on toggle" idiom the drawer item's
38
38
  * own disclosure chevron does (that one really is an unconfirmed addition; this one was checked).
39
39
  *
40
+ * **Small screens (768px and below)** switch to an off-canvas overlay instead of a permanent rail:
41
+ * the drawer is hidden until `open` is set, then slides in over the page with a backdrop, fully
42
+ * expanded (labels visible, nested items reachable). Escape or a click on the backdrop closes it and
43
+ * emits `bsClose`; focus moves into it on open and back to whatever opened it on close. The
44
+ * collapse toggle and the compact search trigger are not shown in this mode (nothing sits behind
45
+ * them). The drawer has no trigger of its own -- put a button in your header and set `open` from it.
46
+ * On wider screens `open` is ignored and nothing changes.
47
+ *
40
48
  * @slot search - Reserved for a search field, e.g. a `bs-input type="search"`. This component
41
49
  * does not build one itself. Hidden while `collapsed` (see above).
42
50
  * @slot - Default slot: the scrollable list of nav items, typically one or more
@@ -52,6 +60,7 @@ import { EventEmitter } from '../../../../stencil-public-runtime';
52
60
  * @part search - The wrapper around the `search` slot.
53
61
  * @part search-trigger - The compact search button shown instead of the `search` slot while `collapsed`.
54
62
  * @part items - The wrapper around the default (items) slot.
63
+ * @part backdrop - The scrim behind the overlay (small screens only; clicking it closes the overlay).
55
64
  */
56
65
  export declare class BsNavigationDrawer {
57
66
  el: HTMLElement;
@@ -90,8 +99,48 @@ export declare class BsNavigationDrawer {
90
99
  * pairing works too: a header that keeps its own logo (`alignment="default"`) paired with this
91
100
  * drawer set to `showLogo={false}`, so the brand mark only ever appears once. */
92
101
  showLogo: boolean;
93
- onCollapsedChange(collapsed: boolean): void;
102
+ /** Small screens only (768px and below): whether the off-canvas overlay is shown. Mutable and
103
+ * reflected -- the drawer sets it back to `false` itself when the user dismisses it (Escape or
104
+ * the backdrop), and emits `bsClose`. Ignored on wider screens, where the drawer is always in
105
+ * the page flow. There is no built-in trigger: set this from your own button. */
106
+ open: boolean;
107
+ /** Fires when the user dismisses the overlay (Escape, or a click on the backdrop), after `open`
108
+ * has been set back to `false`. Does not fire when you set `open = false` yourself. */
109
+ bsClose: EventEmitter<void>;
110
+ /** Whether the viewport is in the small-screen range (<= 768px), tracked with `matchMedia`. */
111
+ mobile: boolean;
112
+ private mediaQuery?;
113
+ private focusPending;
114
+ private navRef?;
115
+ private previouslyFocused?;
116
+ private bodyOverflowBefore?;
117
+ private get overlayOpen();
118
+ connectedCallback(): void;
119
+ disconnectedCallback(): void;
120
+ private onMediaChange;
121
+ onCollapsedChange(): void;
122
+ onMobileChange(): void;
123
+ onOpenChange(): void;
94
124
  componentDidLoad(): void;
125
+ componentDidRender(): void;
126
+ /** Focus is moved only after the render that makes the panel visible -- focusing earlier races the
127
+ * re-render (the panel is still `visibility: hidden`), and a hidden element can't take focus. */
128
+ private flushFocus;
129
+ /** In the small-screen overlay the items always use their expanded layout -- the collapsed
130
+ * (icon-above-caption) layout is for the desktop rail, and would clip labels in a full-width
131
+ * panel and hide nested items. */
132
+ private syncItems;
133
+ /** Scroll lock, focus entry and focus return for the overlay, mirroring `bs-dialog`: the focus
134
+ * move is deferred a frame because focusing right after the panel becomes visible does not
135
+ * reliably land. */
136
+ private applyOverlayState;
137
+ private unlockScroll;
138
+ private requestClose;
139
+ onDocumentKeydown(ev: KeyboardEvent): void;
140
+ /** Keeps focus inside the open overlay: focus that lands anywhere outside this component is
141
+ * pulled back in. `composedPath()` is used so this works across shadow-DOM boundaries (same
142
+ * approach as `bs-dialog`). */
143
+ onDocumentFocusIn(ev: FocusEvent): void;
95
144
  /** Keeps every direct-child `bs-navigation-drawer-item`'s `collapsed` prop in sync with this
96
145
  * component's own -- same direct-children-prop-sync approach `bs-tabs` uses for `selected`
97
146
  * across its `bs-tab` children. Only direct children (top-level items): Figma's collapsed rail
@@ -17,3 +17,5 @@ export declare const Dark: Story;
17
17
  export declare const WithoutSearch: Story;
18
18
  export declare const EmptyItems: Story;
19
19
  export declare const LargeItemList: Story;
20
+ export declare const MobileOverlay: Story;
21
+ export declare const MobileOverlayPage: Story;
@@ -1187,7 +1187,7 @@ export namespace Components {
1187
1187
  */
1188
1188
  interface BsDataTable {
1189
1189
  /**
1190
- * Optional custom cell renderer, e.g. for an actions column. Function props are JS-property-only, same as array props -- there is no attribute equivalent. Falls back to the raw cell value.
1190
+ * Optional custom cell renderer, for rich cells such as a status badge, a link or an actions column. It returns an **HTML string** that is inserted into the cell as real markup (`innerHTML`), so links, buttons, `<img>` and other web components (e.g. `<bs-badge>`) all render. **When set it renders every cell, not just the special ones** -- return the plain value for ordinary columns too. And **the returned string is not escaped or sanitized** (same trust model as React's `dangerouslySetInnerHTML`): escape any untrusted row data you put in it, plain columns included, or it will be interpreted as HTML. Without a `cellRenderer`, values are rendered as escaped text. The markup is static HTML -- attach behavior yourself, e.g. one `click` listener on the table that reads `event.composedPath()[0]` (events from inside the shadow root are retargeted to the table itself). Function props are JS-property-only, same as array props -- there is no attribute equivalent. Falls back to the raw cell value (as escaped text) when unset.
1191
1191
  */
1192
1192
  "cellRenderer"?: (row: BsDataTableRow, column: BsDataTableColumn) => string;
1193
1193
  /**
@@ -1440,6 +1440,10 @@ export namespace Components {
1440
1440
  * Set by a parent `bs-tabs` to implement roving tabindex (only one tab in the group is in the Tab order; arrow keys move between them). Left `undefined` for a standalone tab, which stays a normal tab stop.
1441
1441
  */
1442
1442
  "tabbable"?: boolean;
1443
+ /**
1444
+ * Identifies this tab within a parent `bs-tabs`: the group's `value` is the selected tab's `value`, and `bsChange` reports it. Optional -- a tab without one is identified by its zero-based position in the group (`"0"`, `"1"`...).
1445
+ */
1446
+ "value"?: string;
1443
1447
  }
1444
1448
  /**
1445
1449
  * A single-line text field with an optional label, description, and error state. Also covers a
@@ -1680,6 +1684,13 @@ export namespace Components {
1680
1684
  * reuses the identical left-pointing "CaretLeft" asset unchanged, confirmed by directly inspecting
1681
1685
  * that state, so this deliberately does not add the same "flip on toggle" idiom the drawer item's
1682
1686
  * own disclosure chevron does (that one really is an unconfirmed addition; this one was checked).
1687
+ * **Small screens (768px and below)** switch to an off-canvas overlay instead of a permanent rail:
1688
+ * the drawer is hidden until `open` is set, then slides in over the page with a backdrop, fully
1689
+ * expanded (labels visible, nested items reachable). Escape or a click on the backdrop closes it and
1690
+ * emits `bsClose`; focus moves into it on open and back to whatever opened it on close. The
1691
+ * collapse toggle and the compact search trigger are not shown in this mode (nothing sits behind
1692
+ * them). The drawer has no trigger of its own -- put a button in your header and set `open` from it.
1693
+ * On wider screens `open` is ignored and nothing changes.
1683
1694
  */
1684
1695
  interface BsNavigationDrawer {
1685
1696
  /**
@@ -1702,6 +1713,11 @@ export namespace Components {
1702
1713
  * @default 'auto'
1703
1714
  */
1704
1715
  "logoBackground": 'auto' | 'light' | 'dark';
1716
+ /**
1717
+ * Small screens only (768px and below): whether the off-canvas overlay is shown. Mutable and reflected -- the drawer sets it back to `false` itself when the user dismisses it (Escape or the backdrop), and emits `bsClose`. Ignored on wider screens, where the drawer is always in the page flow. There is no built-in trigger: set this from your own button.
1718
+ * @default false
1719
+ */
1720
+ "open": boolean;
1705
1721
  /**
1706
1722
  * Whether to render the BrandSync logo at all. Defaults to `true`. This drawer is normally the one that owns the logo when paired with a `bs-navigation-header` (that header's own `with-navigation-drawer` alignment omits its logo for exactly this reason) -- but the reverse pairing works too: a header that keeps its own logo (`alignment="default"`) paired with this drawer set to `showLogo={false}`, so the brand mark only ever appears once.
1707
1723
  * @default true
@@ -2310,6 +2326,10 @@ export namespace Components {
2310
2326
  * Set by a parent `bs-tabs` to implement roving tabindex (only one tab in the group is in the Tab order; arrow keys move between them). Left `undefined` for a standalone tab, which stays a normal tab stop.
2311
2327
  */
2312
2328
  "tabbable"?: boolean;
2329
+ /**
2330
+ * Identifies this tab within a parent `bs-tabs`: the group's `value` is the selected tab's `value`, and `bsChange` reports it. Optional -- a tab without one is identified by its zero-based position in the group (`"0"`, `"1"`...).
2331
+ */
2332
+ "value"?: string;
2313
2333
  }
2314
2334
  /**
2315
2335
  * A tab-group wrapper: owns `role="tablist"` and coordinates selection across its slotted
@@ -2339,6 +2359,10 @@ export namespace Components {
2339
2359
  * @default 'bs-tab'
2340
2360
  */
2341
2361
  "type": BsTabsType;
2362
+ /**
2363
+ * The selected tab's `value`. Mutable and reflected: it follows the user's selection, and setting it from outside (attribute or property) selects the matching tab -- without emitting `bsChange`, which only fires for user-driven changes. A tab's value is its own `value` prop, or, for a tab without one, its zero-based position in the group as a string (`"0"`, `"1"`...). If unset, it is read from whichever tab is already `selected` once the group loads.
2364
+ */
2365
+ "value"?: string;
2342
2366
  }
2343
2367
  /**
2344
2368
  * A transient status message for confirming the result of an action (e.g. "Files uploaded
@@ -2398,6 +2422,14 @@ export interface BsAttachmentCustomEvent<T> extends CustomEvent<T> {
2398
2422
  detail: T;
2399
2423
  target: HTMLBsAttachmentElement;
2400
2424
  }
2425
+ export interface BsBreadcrumbCustomEvent<T> extends CustomEvent<T> {
2426
+ detail: T;
2427
+ target: HTMLBsBreadcrumbElement;
2428
+ }
2429
+ export interface BsBreadcrumbOverflowCustomEvent<T> extends CustomEvent<T> {
2430
+ detail: T;
2431
+ target: HTMLBsBreadcrumbOverflowElement;
2432
+ }
2401
2433
  export interface BsCarouselCustomEvent<T> extends CustomEvent<T> {
2402
2434
  detail: T;
2403
2435
  target: HTMLBsCarouselElement;
@@ -2506,6 +2538,10 @@ export interface BsTabCustomEvent<T> extends CustomEvent<T> {
2506
2538
  detail: T;
2507
2539
  target: HTMLBsTabElement;
2508
2540
  }
2541
+ export interface BsTabsCustomEvent<T> extends CustomEvent<T> {
2542
+ detail: T;
2543
+ target: HTMLBsTabsElement;
2544
+ }
2509
2545
  export interface BsToastCustomEvent<T> extends CustomEvent<T> {
2510
2546
  detail: T;
2511
2547
  target: HTMLBsToastElement;
@@ -2725,6 +2761,9 @@ declare global {
2725
2761
  prototype: HTMLBsBadgeElement;
2726
2762
  new (): HTMLBsBadgeElement;
2727
2763
  };
2764
+ interface HTMLBsBreadcrumbElementEventMap {
2765
+ "bsNavigate": { href: string };
2766
+ }
2728
2767
  /**
2729
2768
  * A single crumb within a `<bs-breadcrumbs>` trail: a leading separator icon plus either a link,
2730
2769
  * plain text, or the current-page label, depending on `current`/`href`.
@@ -2742,11 +2781,22 @@ declare global {
2742
2781
  * first-child-aware separator hiding depend on that parent structure.
2743
2782
  */
2744
2783
  interface HTMLBsBreadcrumbElement extends Components.BsBreadcrumb, HTMLStencilElement {
2784
+ addEventListener<K extends keyof HTMLBsBreadcrumbElementEventMap>(type: K, listener: (this: HTMLBsBreadcrumbElement, ev: BsBreadcrumbCustomEvent<HTMLBsBreadcrumbElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2785
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2786
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2787
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2788
+ removeEventListener<K extends keyof HTMLBsBreadcrumbElementEventMap>(type: K, listener: (this: HTMLBsBreadcrumbElement, ev: BsBreadcrumbCustomEvent<HTMLBsBreadcrumbElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2789
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2790
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2791
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2745
2792
  }
2746
2793
  var HTMLBsBreadcrumbElement: {
2747
2794
  prototype: HTMLBsBreadcrumbElement;
2748
2795
  new (): HTMLBsBreadcrumbElement;
2749
2796
  };
2797
+ interface HTMLBsBreadcrumbOverflowElementEventMap {
2798
+ "bsNavigate": { href: string };
2799
+ }
2750
2800
  /**
2751
2801
  * A manually-placed collapsed-items disclosure for a `<bs-breadcrumbs>` trail: a leading separator
2752
2802
  * plus an icon-only ellipsis button that reveals a `bs-menu` popup listing every hidden crumb.
@@ -2773,6 +2823,14 @@ declare global {
2773
2823
  * - As an automatic collapsing mechanism -- there is none; the consumer decides what's hidden.
2774
2824
  */
2775
2825
  interface HTMLBsBreadcrumbOverflowElement extends Components.BsBreadcrumbOverflow, HTMLStencilElement {
2826
+ addEventListener<K extends keyof HTMLBsBreadcrumbOverflowElementEventMap>(type: K, listener: (this: HTMLBsBreadcrumbOverflowElement, ev: BsBreadcrumbOverflowCustomEvent<HTMLBsBreadcrumbOverflowElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
2827
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2828
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
2829
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
2830
+ removeEventListener<K extends keyof HTMLBsBreadcrumbOverflowElementEventMap>(type: K, listener: (this: HTMLBsBreadcrumbOverflowElement, ev: BsBreadcrumbOverflowCustomEvent<HTMLBsBreadcrumbOverflowElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
2831
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2832
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
2833
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
2776
2834
  }
2777
2835
  var HTMLBsBreadcrumbOverflowElement: {
2778
2836
  prototype: HTMLBsBreadcrumbOverflowElement;
@@ -3740,6 +3798,7 @@ declare global {
3740
3798
  interface HTMLBsNavigationDrawerElementEventMap {
3741
3799
  "bsCollapse": boolean;
3742
3800
  "bsSearchClick": void;
3801
+ "bsClose": void;
3743
3802
  }
3744
3803
  /**
3745
3804
  * A left-side persistent navigation sidebar: the BrandSync logo, a "Main Menu" title with a
@@ -3774,6 +3833,13 @@ declare global {
3774
3833
  * reuses the identical left-pointing "CaretLeft" asset unchanged, confirmed by directly inspecting
3775
3834
  * that state, so this deliberately does not add the same "flip on toggle" idiom the drawer item's
3776
3835
  * own disclosure chevron does (that one really is an unconfirmed addition; this one was checked).
3836
+ * **Small screens (768px and below)** switch to an off-canvas overlay instead of a permanent rail:
3837
+ * the drawer is hidden until `open` is set, then slides in over the page with a backdrop, fully
3838
+ * expanded (labels visible, nested items reachable). Escape or a click on the backdrop closes it and
3839
+ * emits `bsClose`; focus moves into it on open and back to whatever opened it on close. The
3840
+ * collapse toggle and the compact search trigger are not shown in this mode (nothing sits behind
3841
+ * them). The drawer has no trigger of its own -- put a button in your header and set `open` from it.
3842
+ * On wider screens `open` is ignored and nothing changes.
3777
3843
  */
3778
3844
  interface HTMLBsNavigationDrawerElement extends Components.BsNavigationDrawer, HTMLStencilElement {
3779
3845
  addEventListener<K extends keyof HTMLBsNavigationDrawerElementEventMap>(type: K, listener: (this: HTMLBsNavigationDrawerElement, ev: BsNavigationDrawerCustomEvent<HTMLBsNavigationDrawerElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
@@ -4182,6 +4248,9 @@ declare global {
4182
4248
  prototype: HTMLBsTabElement;
4183
4249
  new (): HTMLBsTabElement;
4184
4250
  };
4251
+ interface HTMLBsTabsElementEventMap {
4252
+ "bsChange": { value: string };
4253
+ }
4185
4254
  /**
4186
4255
  * A tab-group wrapper: owns `role="tablist"` and coordinates selection across its slotted
4187
4256
  * `<bs-tab>` or `<bs-inline-tab>` children, so consumers no longer have to hand-roll this.
@@ -4200,6 +4269,14 @@ declare global {
4200
4269
  * directly.
4201
4270
  */
4202
4271
  interface HTMLBsTabsElement extends Components.BsTabs, HTMLStencilElement {
4272
+ addEventListener<K extends keyof HTMLBsTabsElementEventMap>(type: K, listener: (this: HTMLBsTabsElement, ev: BsTabsCustomEvent<HTMLBsTabsElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
4273
+ addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4274
+ addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
4275
+ addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
4276
+ removeEventListener<K extends keyof HTMLBsTabsElementEventMap>(type: K, listener: (this: HTMLBsTabsElement, ev: BsTabsCustomEvent<HTMLBsTabsElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
4277
+ removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4278
+ removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
4279
+ removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
4203
4280
  }
4204
4281
  var HTMLBsTabsElement: {
4205
4282
  prototype: HTMLBsTabsElement;
@@ -4628,6 +4705,10 @@ declare namespace LocalJSX {
4628
4705
  * Destination for a non-current crumb. Ignored when `current` is true -- the current page is never a link, even if `href` is set (see the class JSDoc).
4629
4706
  */
4630
4707
  "href"?: string;
4708
+ /**
4709
+ * Fires when the crumb's link is clicked, before the browser navigates. **Cancelable**: call `event.preventDefault()` to stop the native navigation and route it yourself (an SPA router). Detail is `{ href }`. Only a plain primary-button click emits it -- ctrl/cmd/shift/alt-clicks and middle-clicks (open in a new tab/window) are left to the browser. Bubbles and is composed, so one listener on the surrounding `<bs-breadcrumbs>` covers every crumb.
4710
+ */
4711
+ "onBsNavigate"?: (event: BsBreadcrumbCustomEvent<{ href: string }>) => void;
4631
4712
  /**
4632
4713
  * Size variant. Normally set automatically by a parent `<bs-breadcrumbs size="...">` -- the container propagates its own `size` as a JS property to every slotted `bs-breadcrumb`/ `bs-breadcrumb-overflow` child (see `bs-breadcrumbs.tsx`'s `propagateSize`), since CSS custom properties can't carry an enum that switches rules on their own. Can also be set directly on a standalone crumb. `sm` scales down font-size/line-height only -- the separator icon's pixel size is unchanged, since Figma didn't specify a `sm` icon size and guessing one risked drifting off-brand. Reflected so consumers/CSS can target `bs-breadcrumb[size="sm"]`.
4633
4714
  * @default 'md'
@@ -4665,6 +4746,10 @@ declare namespace LocalJSX {
4665
4746
  * @default []
4666
4747
  */
4667
4748
  "items"?: BsBreadcrumbOverflowItem[];
4749
+ /**
4750
+ * Fires when one of the popup's links is clicked, before the browser navigates. **Cancelable** -- see `bs-breadcrumb`'s `bsNavigate`, which this mirrors (same detail, same modified-click rule). Detail is `{ href }`.
4751
+ */
4752
+ "onBsNavigate"?: (event: BsBreadcrumbOverflowCustomEvent<{ href: string }>) => void;
4668
4753
  /**
4669
4754
  * Accessible name (`aria-label`) for the icon-only ellipsis trigger button.
4670
4755
  * @default 'Show hidden breadcrumbs'
@@ -5576,7 +5661,7 @@ declare namespace LocalJSX {
5576
5661
  */
5577
5662
  interface BsDataTable {
5578
5663
  /**
5579
- * Optional custom cell renderer, e.g. for an actions column. Function props are JS-property-only, same as array props -- there is no attribute equivalent. Falls back to the raw cell value.
5664
+ * Optional custom cell renderer, for rich cells such as a status badge, a link or an actions column. It returns an **HTML string** that is inserted into the cell as real markup (`innerHTML`), so links, buttons, `<img>` and other web components (e.g. `<bs-badge>`) all render. **When set it renders every cell, not just the special ones** -- return the plain value for ordinary columns too. And **the returned string is not escaped or sanitized** (same trust model as React's `dangerouslySetInnerHTML`): escape any untrusted row data you put in it, plain columns included, or it will be interpreted as HTML. Without a `cellRenderer`, values are rendered as escaped text. The markup is static HTML -- attach behavior yourself, e.g. one `click` listener on the table that reads `event.composedPath()[0]` (events from inside the shadow root are retargeted to the table itself). Function props are JS-property-only, same as array props -- there is no attribute equivalent. Falls back to the raw cell value (as escaped text) when unset.
5580
5665
  */
5581
5666
  "cellRenderer"?: (row: BsDataTableRow, column: BsDataTableColumn) => string;
5582
5667
  /**
@@ -5856,6 +5941,10 @@ declare namespace LocalJSX {
5856
5941
  * Set by a parent `bs-tabs` to implement roving tabindex (only one tab in the group is in the Tab order; arrow keys move between them). Left `undefined` for a standalone tab, which stays a normal tab stop.
5857
5942
  */
5858
5943
  "tabbable"?: boolean;
5944
+ /**
5945
+ * Identifies this tab within a parent `bs-tabs`: the group's `value` is the selected tab's `value`, and `bsChange` reports it. Optional -- a tab without one is identified by its zero-based position in the group (`"0"`, `"1"`...).
5946
+ */
5947
+ "value"?: string;
5859
5948
  }
5860
5949
  /**
5861
5950
  * A single-line text field with an optional label, description, and error state. Also covers a
@@ -6126,6 +6215,13 @@ declare namespace LocalJSX {
6126
6215
  * reuses the identical left-pointing "CaretLeft" asset unchanged, confirmed by directly inspecting
6127
6216
  * that state, so this deliberately does not add the same "flip on toggle" idiom the drawer item's
6128
6217
  * own disclosure chevron does (that one really is an unconfirmed addition; this one was checked).
6218
+ * **Small screens (768px and below)** switch to an off-canvas overlay instead of a permanent rail:
6219
+ * the drawer is hidden until `open` is set, then slides in over the page with a backdrop, fully
6220
+ * expanded (labels visible, nested items reachable). Escape or a click on the backdrop closes it and
6221
+ * emits `bsClose`; focus moves into it on open and back to whatever opened it on close. The
6222
+ * collapse toggle and the compact search trigger are not shown in this mode (nothing sits behind
6223
+ * them). The drawer has no trigger of its own -- put a button in your header and set `open` from it.
6224
+ * On wider screens `open` is ignored and nothing changes.
6129
6225
  */
6130
6226
  interface BsNavigationDrawer {
6131
6227
  /**
@@ -6148,6 +6244,10 @@ declare namespace LocalJSX {
6148
6244
  * @default 'auto'
6149
6245
  */
6150
6246
  "logoBackground"?: 'auto' | 'light' | 'dark';
6247
+ /**
6248
+ * Fires when the user dismisses the overlay (Escape, or a click on the backdrop), after `open` has been set back to `false`. Does not fire when you set `open = false` yourself.
6249
+ */
6250
+ "onBsClose"?: (event: BsNavigationDrawerCustomEvent<void>) => void;
6151
6251
  /**
6152
6252
  * Fires with the new `collapsed` value when the collapse toggle button is clicked.
6153
6253
  */
@@ -6156,6 +6256,11 @@ declare namespace LocalJSX {
6156
6256
  * Fires when the compact search-trigger button (shown instead of the `search` slot while `collapsed`) is clicked -- e.g. to open a full search overlay. This component has no visibility into what the `search` slot actually contains, so it can't drive a real search itself once shrunk to icon size.
6157
6257
  */
6158
6258
  "onBsSearchClick"?: (event: BsNavigationDrawerCustomEvent<void>) => void;
6259
+ /**
6260
+ * Small screens only (768px and below): whether the off-canvas overlay is shown. Mutable and reflected -- the drawer sets it back to `false` itself when the user dismisses it (Escape or the backdrop), and emits `bsClose`. Ignored on wider screens, where the drawer is always in the page flow. There is no built-in trigger: set this from your own button.
6261
+ * @default false
6262
+ */
6263
+ "open"?: boolean;
6159
6264
  /**
6160
6265
  * Whether to render the BrandSync logo at all. Defaults to `true`. This drawer is normally the one that owns the logo when paired with a `bs-navigation-header` (that header's own `with-navigation-drawer` alignment omits its logo for exactly this reason) -- but the reverse pairing works too: a header that keeps its own logo (`alignment="default"`) paired with this drawer set to `showLogo={false}`, so the brand mark only ever appears once.
6161
6266
  * @default true
@@ -6820,6 +6925,10 @@ declare namespace LocalJSX {
6820
6925
  * Set by a parent `bs-tabs` to implement roving tabindex (only one tab in the group is in the Tab order; arrow keys move between them). Left `undefined` for a standalone tab, which stays a normal tab stop.
6821
6926
  */
6822
6927
  "tabbable"?: boolean;
6928
+ /**
6929
+ * Identifies this tab within a parent `bs-tabs`: the group's `value` is the selected tab's `value`, and `bsChange` reports it. Optional -- a tab without one is identified by its zero-based position in the group (`"0"`, `"1"`...).
6930
+ */
6931
+ "value"?: string;
6823
6932
  }
6824
6933
  /**
6825
6934
  * A tab-group wrapper: owns `role="tablist"` and coordinates selection across its slotted
@@ -6839,6 +6948,10 @@ declare namespace LocalJSX {
6839
6948
  * directly.
6840
6949
  */
6841
6950
  interface BsTabs {
6951
+ /**
6952
+ * Fires when the user selects a different tab (click, or arrow/Home/End), with the new `value`. Does not fire when `value` is set programmatically. `bsSelect` on the individual tab still fires as before.
6953
+ */
6954
+ "onBsChange"?: (event: BsTabsCustomEvent<{ value: string }>) => void;
6842
6955
  /**
6843
6956
  * Layout direction of the tab bar itself. Sets `aria-orientation` on the internal wrapper and switches `flex-direction`.
6844
6957
  * @default 'horizontal'
@@ -6849,6 +6962,10 @@ declare namespace LocalJSX {
6849
6962
  * @default 'bs-tab'
6850
6963
  */
6851
6964
  "type"?: BsTabsType;
6965
+ /**
6966
+ * The selected tab's `value`. Mutable and reflected: it follows the user's selection, and setting it from outside (attribute or property) selects the matching tab -- without emitting `bsChange`, which only fires for user-driven changes. A tab's value is its own `value` prop, or, for a tab without one, its zero-based position in the group as a string (`"0"`, `"1"`...). If unset, it is read from whichever tab is already `selected` once the group loads.
6967
+ */
6968
+ "value"?: string;
6852
6969
  }
6853
6970
  /**
6854
6971
  * A transient status message for confirming the result of an action (e.g. "Files uploaded
@@ -7091,6 +7208,7 @@ declare namespace LocalJSX {
7091
7208
  "selected": boolean;
7092
7209
  "disabled": boolean;
7093
7210
  "ariaLabel": string | null;
7211
+ "value": string;
7094
7212
  "tabbable": boolean;
7095
7213
  }
7096
7214
  interface BsInputAttributes {
@@ -7139,6 +7257,7 @@ declare namespace LocalJSX {
7139
7257
  "collapsed": boolean;
7140
7258
  "logoBackground": 'auto' | 'light' | 'dark';
7141
7259
  "showLogo": boolean;
7260
+ "open": boolean;
7142
7261
  }
7143
7262
  interface BsNavigationDrawerItemAttributes {
7144
7263
  "selected": boolean;
@@ -7237,11 +7356,13 @@ declare namespace LocalJSX {
7237
7356
  "disabled": boolean;
7238
7357
  "iconPosition": BsTabIconPosition;
7239
7358
  "ariaLabel": string | null;
7359
+ "value": string;
7240
7360
  "tabbable": boolean;
7241
7361
  }
7242
7362
  interface BsTabsAttributes {
7243
7363
  "type": BsTabsType;
7244
7364
  "orientation": BsTabsOrientation;
7365
+ "value": string;
7245
7366
  }
7246
7367
  interface BsToastAttributes {
7247
7368
  "state": BsToastState;
@@ -8136,6 +8257,13 @@ declare module "@stencil/core" {
8136
8257
  * reuses the identical left-pointing "CaretLeft" asset unchanged, confirmed by directly inspecting
8137
8258
  * that state, so this deliberately does not add the same "flip on toggle" idiom the drawer item's
8138
8259
  * own disclosure chevron does (that one really is an unconfirmed addition; this one was checked).
8260
+ * **Small screens (768px and below)** switch to an off-canvas overlay instead of a permanent rail:
8261
+ * the drawer is hidden until `open` is set, then slides in over the page with a backdrop, fully
8262
+ * expanded (labels visible, nested items reachable). Escape or a click on the backdrop closes it and
8263
+ * emits `bsClose`; focus moves into it on open and back to whatever opened it on close. The
8264
+ * collapse toggle and the compact search trigger are not shown in this mode (nothing sits behind
8265
+ * them). The drawer has no trigger of its own -- put a button in your header and set `open` from it.
8266
+ * On wider screens `open` is ignored and nothing changes.
8139
8267
  */
8140
8268
  "bs-navigation-drawer": LocalJSX.IntrinsicElements["bs-navigation-drawer"] & JSXBase.HTMLAttributes<HTMLBsNavigationDrawerElement>;
8141
8269
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brandsync/wc",
3
- "version": "1.8.0",
3
+ "version": "1.9.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -1 +0,0 @@
1
- import{r,h as e,H as a}from"./p-AgoOSYvW.js";const b=class{constructor(e){r(this,e)}href;current=!1;size="md";render(){return e(a,{key:"f9c93eed4d4844e03cdfc50c9efbee238c188257",role:"listitem"},e("span",{key:"e0f26700582662cd4269bd786a9c81fd8031716e",part:"separator",class:"bs-breadcrumb__separator","aria-hidden":"true"},e(s,{key:"77e8ed02ffd367e9b7ca39869ab41a95759450e4"})),this.current?e("span",{part:"current",class:"bs-breadcrumb__current","aria-current":"page"},e("slot",null)):this.href?e("a",{part:"link",class:"bs-breadcrumb__link",href:this.href},e("slot",null)):e("span",{part:"link",class:"bs-breadcrumb__link"},e("slot",null)))}},s=()=>e("svg",{viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},e("path",{d:"M6 3L11 8L6 13",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"}));b.style=":host{display:inline-flex;align-items:center;--bs-breadcrumb-gap:var(--bs-spacing-50);--bs-breadcrumb-separator-color:var(--bs-icon-default);--bs-breadcrumb-color-default:var(--bs-text-muted);--bs-breadcrumb-color-hover:var(--bs-text-default);--bs-breadcrumb-color-current:var(--bs-text-default);--bs-breadcrumb-font-size:var(--bs-font-size-md);--bs-breadcrumb-line-height:var(--bs-line-height-body-md);--bs-breadcrumb-font-size-sm:var(--bs-font-size-sm);--bs-breadcrumb-line-height-sm:var(--bs-line-height-body-sm);--bs-breadcrumb-font-weight-default:var(--bs-font-weight-regular);--bs-breadcrumb-font-weight-current:var(--bs-font-weight-semibold);--bs-breadcrumb-focus-ring-color:var(--bs-border-neutral-focus);--bs-breadcrumb-radius:var(--bs-border-radius-50);gap:var(--bs-breadcrumb-gap);font-family:inherit;font-size:var(--bs-breadcrumb-font-size);line-height:calc(var(--bs-breadcrumb-line-height) * 1px)}:host(:first-child) .bs-breadcrumb__separator{display:none}:host([size='sm']){font-size:var(--bs-breadcrumb-font-size-sm);line-height:calc(var(--bs-breadcrumb-line-height-sm) * 1px)}.bs-breadcrumb__separator{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--bs-breadcrumb-separator-color)}.bs-breadcrumb__separator svg{width:16px;height:16px}.bs-breadcrumb__link{color:var(--bs-breadcrumb-color-default);font-weight:var(--bs-breadcrumb-font-weight-default);text-decoration:none;border-radius:var(--bs-breadcrumb-radius);transition:color var(--bs-duration-fast) var(--bs-easing-standard)}a.bs-breadcrumb__link:hover{color:var(--bs-breadcrumb-color-hover)}a.bs-breadcrumb__link:focus-visible{outline:2px solid var(--bs-breadcrumb-focus-ring-color);outline-offset:2px}.bs-breadcrumb__current{color:var(--bs-breadcrumb-color-current);font-weight:var(--bs-breadcrumb-font-weight-current)}";export{b as bs_breadcrumb}
@@ -1 +0,0 @@
1
- import{r as a,c as r,a as i,h as e}from"./p-AgoOSYvW.js";const n=class{constructor(i){a(this,i),this.bsCollapse=r(this,"bsCollapse"),this.bsSearchClick=r(this,"bsSearchClick")}get el(){return i(this)}heading="Main Menu";collapsible=!0;collapsed=!1;bsCollapse;bsSearchClick;logoBackground="auto";showLogo=!0;onCollapsedChange(a){this.syncItemsCollapsed(a)}componentDidLoad(){this.syncItemsCollapsed(this.collapsed)}syncItemsCollapsed(a){this.el.querySelectorAll(":scope > bs-navigation-drawer-item").forEach((r=>{r.collapsed=a}))}onCollapseClick=()=>{this.collapsed=!this.collapsed,this.bsCollapse.emit(this.collapsed)};onSearchTriggerClick=()=>{this.bsSearchClick.emit()};render(){return e("nav",{key:"8be5fb4e45d6919408ff7057b963c2d95281b470",class:"bs-navigation-drawer","aria-label":this.heading},this.showLogo&&e("div",{key:"f66ec1272c4c226d1a67fb7321b1247c3be54fb1",part:"logo",class:"bs-navigation-drawer__logo bs-navigation-drawer__logo--full"},e("bs-logo",{key:"88cddd1d8696f895b33dd141bc2f5bfd3bd260b4",variant:"full",background:this.logoBackground})),this.showLogo&&e("div",{key:"89b4efebeac6b934cbdd6cf3d25caaf5a36c86e8",part:"logo",class:"bs-navigation-drawer__logo bs-navigation-drawer__logo--mark"},e("bs-logo",{key:"4f9ef53f8a02d9bb21b134e6a73caf28d9e864fc",variant:"mark",background:this.logoBackground})),e("div",{key:"841040ad4770b0590ce632db1ce7122766c27ef6",class:"bs-navigation-drawer__title-row"},e("span",{key:"857e9420aae428b44c2086bec5a2b4205a3dda04",part:"title",class:"bs-navigation-drawer__title"},this.heading),this.collapsible&&e("button",{key:"c109b6f3b54268cf729e114a249864fbd57203cc",type:"button",part:"collapse",class:"bs-navigation-drawer__collapse","aria-label":this.collapsed?"Expand":"Collapse","aria-pressed":this.collapsed?"true":"false",onClick:this.onCollapseClick},e(s,{key:"e46c9d2569b59e76398772d7a48e7a02d6b36ba3"}))),e("div",{key:"88031f0fd6cffb8480f2a086efb93a9d6418b4fc",part:"search",class:"bs-navigation-drawer__search"},e("slot",{key:"c86cb8c32f754fe81d91b76d8e1a352f9de5b31b",name:"search"})),e("button",{key:"90ade94c988aac8a1b2c855da7b193167b4eeee6",type:"button",part:"search-trigger",class:"bs-navigation-drawer__search-trigger","aria-label":"Search",onClick:this.onSearchTriggerClick},e(t,{key:"ff02c6f7f07de15b98bc5799914756e2245e36b9"})),e("div",{key:"41203613ef27dba8768c2755b8653d17c65d02c6",part:"items",class:"bs-navigation-drawer__items"},e("slot",{key:"d120d4a7477e748f5be81a5af742bfa558bf00bd"})))}static get watchers(){return{collapsed:[{onCollapsedChange:0}]}}},s=()=>e("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},e("path",{d:"M15 18L9 12L15 6",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"})),t=()=>e("svg",{viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},e("circle",{cx:"11",cy:"11",r:"7",stroke:"currentColor","stroke-width":"2"}),e("path",{d:"M16.5 16.5L21 21",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round"}));n.style=":host{display:block;--bs-navigation-drawer-bg:var(--bs-surface-base);--bs-navigation-drawer-border:var(--bs-border-neutral-container);--bs-navigation-drawer-padding-y:var(--bs-spacing-300);--bs-navigation-drawer-padding-left:var(--bs-spacing-300);--bs-navigation-drawer-padding-right:var(--bs-spacing-200);--bs-navigation-drawer-gap:var(--bs-spacing-300);--bs-navigation-drawer-width:280px;--bs-navigation-drawer-title-font-family:var(--bs-typography-font-family-heading);--bs-navigation-drawer-title-font-weight:var(--bs-font-weight-bold);--bs-navigation-drawer-title-font-size:var(--bs-font-size-md);--bs-navigation-drawer-title-line-height:var(--bs-line-height-heading-h6);--bs-navigation-drawer-title-color:var(--bs-text-default);--bs-navigation-drawer-collapse-size:48px;--bs-navigation-drawer-collapse-radius:var(--bs-border-radius-100);--bs-navigation-drawer-collapse-hover:var(--bs-color-neutral-container);--bs-navigation-drawer-collapse-pressed:var(--bs-color-neutral-container-pressed);--bs-navigation-drawer-collapse-icon:var(--bs-icon-default);--bs-navigation-drawer-items-gap:var(--bs-spacing-100);--bs-navigation-drawer-collapsed-width:96px;--bs-navigation-drawer-search-trigger-size:44px;--bs-navigation-drawer-search-trigger-bg:var(--bs-color-neutral-container);--bs-navigation-drawer-search-trigger-border:var(--bs-border-neutral-container);--bs-navigation-drawer-search-trigger-icon:var(--bs-icon-default)}.bs-navigation-drawer{box-sizing:border-box;display:flex;flex-direction:column;gap:var(--bs-navigation-drawer-gap);width:var(--bs-navigation-drawer-width);height:100%;background:var(--bs-navigation-drawer-bg);border-right:1px solid var(--bs-navigation-drawer-border);padding:var(--bs-navigation-drawer-padding-y) var(--bs-navigation-drawer-padding-right) var(--bs-navigation-drawer-padding-y) var(--bs-navigation-drawer-padding-left);font-family:inherit;transition:width var(--bs-duration-fast) var(--bs-easing-standard), padding var(--bs-duration-fast) var(--bs-easing-standard)}:host([collapsed]) .bs-navigation-drawer{width:var(--bs-navigation-drawer-collapsed-width);padding-left:0;padding-right:0;align-items:center}.bs-navigation-drawer__logo{flex-shrink:0;display:flex;align-items:center}.bs-navigation-drawer__logo--mark{display:none}:host([collapsed]) .bs-navigation-drawer__logo--full{display:none}:host([collapsed]) .bs-navigation-drawer__logo--mark{display:flex}.bs-navigation-drawer__title-row{flex-shrink:0;display:flex;align-items:center;gap:var(--bs-navigation-drawer-gap)}.bs-navigation-drawer__title{flex:1;min-width:0;font-family:var(--bs-navigation-drawer-title-font-family);font-weight:var(--bs-navigation-drawer-title-font-weight);font-size:var(--bs-navigation-drawer-title-font-size);line-height:calc(var(--bs-navigation-drawer-title-line-height) * 1px);color:var(--bs-navigation-drawer-title-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:host([collapsed]) .bs-navigation-drawer__title{display:none}.bs-navigation-drawer__collapse{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;width:var(--bs-navigation-drawer-collapse-size);height:var(--bs-navigation-drawer-collapse-size);border:none;border-radius:var(--bs-navigation-drawer-collapse-radius);padding:0;background:transparent;color:var(--bs-navigation-drawer-collapse-icon);cursor:pointer;transition:background-color var(--bs-duration-fast) var(--bs-easing-standard)}.bs-navigation-drawer__collapse svg{width:24px;height:24px}.bs-navigation-drawer__collapse:hover{background:var(--bs-navigation-drawer-collapse-hover)}.bs-navigation-drawer__collapse:active{background:var(--bs-navigation-drawer-collapse-pressed)}.bs-navigation-drawer__collapse:focus-visible{outline:2px solid var(--bs-border-neutral-focus);outline-offset:2px}.bs-navigation-drawer__search{flex-shrink:0;width:100%}:host([collapsed]) .bs-navigation-drawer__search{display:none}.bs-navigation-drawer__search-trigger{display:none;flex-shrink:0;align-items:center;justify-content:center;box-sizing:border-box;width:var(--bs-navigation-drawer-search-trigger-size);height:var(--bs-navigation-drawer-search-trigger-size);border:1px solid var(--bs-navigation-drawer-search-trigger-border);border-radius:var(--bs-navigation-drawer-collapse-radius);background:var(--bs-navigation-drawer-search-trigger-bg);color:var(--bs-navigation-drawer-search-trigger-icon);cursor:pointer;transition:background-color var(--bs-duration-fast) var(--bs-easing-standard)}.bs-navigation-drawer__search-trigger svg{width:24px;height:24px}.bs-navigation-drawer__search-trigger:focus-visible{outline:2px solid var(--bs-border-neutral-focus);outline-offset:2px}:host([collapsed]) .bs-navigation-drawer__search-trigger{display:inline-flex}.bs-navigation-drawer__items{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:var(--bs-navigation-drawer-items-gap);scrollbar-width:none}.bs-navigation-drawer__items::-webkit-scrollbar{display:none}@media (max-width: 768px){.bs-navigation-drawer{width:var(--bs-navigation-drawer-collapsed-width);padding-left:0;padding-right:0;align-items:center}.bs-navigation-drawer__logo--full{display:none}.bs-navigation-drawer__logo--mark{display:flex}.bs-navigation-drawer__title{display:none}.bs-navigation-drawer__search{display:none}.bs-navigation-drawer__search-trigger{display:inline-flex}}";export{n as bs_navigation_drawer}
@@ -1 +0,0 @@
1
- import{r as o,a as n,h as t}from"./p-AgoOSYvW.js";const r=class{constructor(n){o(this,n),n.$hostElement$["s-ei"]?this.internals=n.$hostElement$["s-ei"]:(this.internals=n.$hostElement$.attachInternals(),n.$hostElement$["s-ei"]=this.internals)}get el(){return n(this)}internals;variant="primary";size="md";disabled=!1;type="button";ariaLabel=null;onClick=()=>{const o=this.internals?.form;o&&!this.disabled&&("submit"===this.type?o.requestSubmit():"reset"===this.type&&o.reset())};render(){return t("button",{key:"1d0525e3ad0b90e723cab2c9cd0217046a905a5e",class:`bs-icon-button bs-icon-button--${this.variant} bs-icon-button--${this.size}`,type:this.type,disabled:this.disabled,"aria-label":this.ariaLabel,onClick:this.onClick},t("span",{key:"1c94ad4a861dde9e4942f6795a2a868161c0b4a1",part:"icon",class:"bs-icon-button__icon"},t("slot",{key:"9cd3a6aa2d9cbfebaa1d0e70fc10448af4ef4429"})))}static get delegatesFocus(){return!0}static get formAssociated(){return!0}};r.style=":host{display:inline-block;--bs-icon-button-radius:var(--bs-border-radius-100);--bs-icon-button-size-sm:40px;--bs-icon-button-size-md:44px;--bs-icon-button-size-lg:48px;--bs-icon-button-icon-size-sm:16px;--bs-icon-button-icon-size-md:20px;--bs-icon-button-icon-size-lg:24px;--bs-icon-button-padding:var(--bs-spacing-150);--bs-icon-button-radius-xs:var(--bs-border-radius-50);--bs-icon-button-size-xs:16px;--bs-icon-button-icon-size-xs:8px;--bs-icon-button-padding-xs:var(--bs-spacing-50);--bs-icon-button-primary-default:var(--bs-color-primary-default);--bs-icon-button-primary-hover:var(--bs-color-primary-hover);--bs-icon-button-primary-pressed:var(--bs-color-primary-pressed);--bs-icon-button-primary-disabled:var(--bs-surface-action-disabled);--bs-icon-button-neutral-container:var(--bs-color-neutral-container);--bs-icon-button-neutral-hover:var(--bs-color-neutral-container-hover);--bs-icon-button-neutral-pressed:var(--bs-color-neutral-container-pressed);--bs-icon-button-neutral-border:var(--bs-border-neutral-container);--bs-icon-button-neutral-border-hover:var(--bs-border-neutral-container-hover);--bs-icon-button-neutral-border-pressed:var(--bs-border-neutral-container-pressed);--bs-icon-button-subtle-hover:var(--bs-color-neutral-container);--bs-icon-button-subtle-pressed:var(--bs-color-neutral-container-pressed);--bs-icon-button-subtle-focus:var(--bs-border-primary-focus);--bs-icon-button-outlined-border:var(--bs-color-primary-default);--bs-icon-button-outlined-border-hover:var(--bs-color-primary-hover);--bs-icon-button-outlined-border-pressed:var(--bs-color-primary-pressed);--bs-icon-button-outlined-text-hover:var(--bs-text-action-hover);--bs-icon-button-outlined-container:var(--bs-color-primary-container);--bs-icon-button-outlined-focus:var(--bs-border-primary-focus);--bs-icon-button-success-default:var(--bs-color-success-default);--bs-icon-button-success-hover:var(--bs-color-success-hover);--bs-icon-button-success-pressed:var(--bs-color-success-pressed);--bs-icon-button-success-disabled:var(--bs-surface-action-disabled);--bs-icon-button-success-focus:var(--bs-border-success-focus);--bs-icon-button-warning-default:var(--bs-color-warning-default);--bs-icon-button-warning-hover:var(--bs-color-warning-hover);--bs-icon-button-warning-pressed:var(--bs-color-warning-pressed);--bs-icon-button-warning-disabled:var(--bs-surface-action-disabled);--bs-icon-button-warning-focus:var(--bs-border-warning-focus);--bs-icon-button-info-default:var(--bs-color-info-default);--bs-icon-button-info-hover:var(--bs-color-info-hover);--bs-icon-button-info-pressed:var(--bs-color-info-pressed);--bs-icon-button-info-disabled:var(--bs-surface-action-disabled);--bs-icon-button-info-focus:var(--bs-border-info-focus);--bs-icon-button-error-default:var(--bs-color-error-default);--bs-icon-button-error-hover:var(--bs-color-error-hover);--bs-icon-button-error-pressed:var(--bs-color-error-pressed);--bs-icon-button-error-disabled:var(--bs-surface-action-disabled);--bs-icon-button-error-focus:var(--bs-border-error-focus)}.bs-icon-button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;border:none;border-radius:var(--bs-icon-button-radius);padding:var(--bs-icon-button-padding);cursor:pointer;transition:background-color var(--bs-duration-fast, 120ms) var(--bs-easing-standard, ease)}.bs-icon-button:focus-visible{outline:2px solid var(--bs-border-neutral-focus);outline-offset:2px}.bs-icon-button:disabled{cursor:not-allowed}.bs-icon-button--xs{width:var(--bs-icon-button-size-xs);height:var(--bs-icon-button-size-xs);padding:var(--bs-icon-button-padding-xs);border-radius:var(--bs-icon-button-radius-xs)}.bs-icon-button--xs .bs-icon-button__icon{width:var(--bs-icon-button-icon-size-xs);height:var(--bs-icon-button-icon-size-xs)}.bs-icon-button--sm{width:var(--bs-icon-button-size-sm);height:var(--bs-icon-button-size-sm)}.bs-icon-button--sm .bs-icon-button__icon{width:var(--bs-icon-button-icon-size-sm);height:var(--bs-icon-button-icon-size-sm)}.bs-icon-button--md{width:var(--bs-icon-button-size-md);height:var(--bs-icon-button-size-md)}.bs-icon-button--md .bs-icon-button__icon{width:var(--bs-icon-button-icon-size-md);height:var(--bs-icon-button-icon-size-md)}.bs-icon-button--lg{width:var(--bs-icon-button-size-lg);height:var(--bs-icon-button-size-lg)}.bs-icon-button--lg .bs-icon-button__icon{width:var(--bs-icon-button-icon-size-lg);height:var(--bs-icon-button-icon-size-lg)}.bs-icon-button__icon{display:inline-flex;align-items:center;justify-content:center;color:inherit}.bs-icon-button__icon ::slotted(*){display:block;width:100%;height:100%}.bs-icon-button--primary{background:var(--bs-icon-button-primary-default);color:var(--bs-text-on-action)}.bs-icon-button--primary:hover:not(:disabled){background:var(--bs-icon-button-primary-hover)}.bs-icon-button--primary:active:not(:disabled){background:var(--bs-icon-button-primary-pressed)}.bs-icon-button--primary:disabled{background:var(--bs-icon-button-primary-disabled);color:var(--bs-text-on-disabled)}.bs-icon-button--neutral{background:var(--bs-icon-button-neutral-container);color:var(--bs-text-default);border:1px solid var(--bs-icon-button-neutral-border)}.bs-icon-button--neutral:hover:not(:disabled){background:var(--bs-icon-button-neutral-hover);border-color:var(--bs-icon-button-neutral-border-hover)}.bs-icon-button--neutral:active:not(:disabled){background:var(--bs-icon-button-neutral-pressed);border-color:var(--bs-icon-button-neutral-border-pressed)}.bs-icon-button--neutral:disabled{background:var(--bs-icon-button-neutral-container);color:var(--bs-text-on-disabled);border-color:var(--bs-icon-button-neutral-border)}.bs-icon-button--error{background:var(--bs-icon-button-error-default);color:var(--bs-text-on-action)}.bs-icon-button--error:hover:not(:disabled){background:var(--bs-icon-button-error-hover)}.bs-icon-button--error:active:not(:disabled){background:var(--bs-icon-button-error-pressed)}.bs-icon-button--error:disabled{background:var(--bs-icon-button-error-disabled);color:var(--bs-text-on-disabled)}.bs-icon-button--error:focus-visible{outline-color:var(--bs-icon-button-error-focus)}.bs-icon-button--success{background:var(--bs-icon-button-success-default);color:var(--bs-text-on-action)}.bs-icon-button--success:hover:not(:disabled){background:var(--bs-icon-button-success-hover)}.bs-icon-button--success:active:not(:disabled){background:var(--bs-icon-button-success-pressed)}.bs-icon-button--success:disabled{background:var(--bs-icon-button-success-disabled);color:var(--bs-text-on-disabled)}.bs-icon-button--success:focus-visible{outline-color:var(--bs-icon-button-success-focus)}.bs-icon-button--warning{background:var(--bs-icon-button-warning-default);color:var(--bs-text-on-action)}.bs-icon-button--warning:hover:not(:disabled){background:var(--bs-icon-button-warning-hover)}.bs-icon-button--warning:active:not(:disabled){background:var(--bs-icon-button-warning-pressed)}.bs-icon-button--warning:disabled{background:var(--bs-icon-button-warning-disabled);color:var(--bs-text-on-disabled)}.bs-icon-button--warning:focus-visible{outline-color:var(--bs-icon-button-warning-focus)}.bs-icon-button--info{background:var(--bs-icon-button-info-default);color:var(--bs-text-on-action)}.bs-icon-button--info:hover:not(:disabled){background:var(--bs-icon-button-info-hover)}.bs-icon-button--info:active:not(:disabled){background:var(--bs-icon-button-info-pressed)}.bs-icon-button--info:disabled{background:var(--bs-icon-button-info-disabled);color:var(--bs-text-on-disabled)}.bs-icon-button--info:focus-visible{outline-color:var(--bs-icon-button-info-focus)}.bs-icon-button--subtle{background:transparent;color:var(--bs-icon-neutral-default)}.bs-icon-button--subtle:hover:not(:disabled){background:var(--bs-icon-button-subtle-hover)}.bs-icon-button--subtle:active:not(:disabled){background:var(--bs-icon-button-subtle-pressed)}.bs-icon-button--subtle:disabled{background:transparent;color:var(--bs-text-on-disabled)}.bs-icon-button--subtle:focus-visible{outline-color:var(--bs-icon-button-subtle-focus);background:var(--bs-icon-button-subtle-hover)}.bs-icon-button--outlined{background:transparent;color:var(--bs-color-primary-default);border:1px solid var(--bs-icon-button-outlined-border)}.bs-icon-button--outlined:hover:not(:disabled){background:var(--bs-icon-button-outlined-container);border-color:var(--bs-icon-button-outlined-border-hover);color:var(--bs-icon-button-outlined-text-hover)}.bs-icon-button--outlined:active:not(:disabled){background:var(--bs-icon-button-outlined-container);color:var(--bs-icon-button-outlined-text-hover);border-color:var(--bs-icon-button-outlined-border-pressed)}.bs-icon-button--outlined:disabled{opacity:var(--bs-opacity-disabled);cursor:not-allowed}.bs-icon-button--outlined:focus-visible{outline-color:var(--bs-icon-button-outlined-focus)}";export{r as bs_icon_button}
@@ -1 +0,0 @@
1
- import{r as a,c as t,a as b,h as s}from"./p-AgoOSYvW.js";const e=class{constructor(b){a(this,b),this.bsSelect=t(this,"bsSelect")}get el(){return b(this)}selected=!1;disabled=!1;iconPosition="start";ariaLabel=null;tabbable;hasIcon=!1;hasLabel=!1;hasBadge=!1;bsSelect;componentWillLoad(){this.hasIcon=this.hasSlottedContent("icon"),this.hasLabel=this.hasSlottedContent(null),this.hasBadge=this.hasSlottedContent("badge")}hasSlottedContent(a){return Array.from(this.el.childNodes).some((t=>t.nodeType===Node.ELEMENT_NODE?t.getAttribute("slot")===a:null===a))}onIconSlotchange=a=>{this.hasIcon=a.target.assignedNodes().length>0};onLabelSlotchange=a=>{this.hasLabel=a.target.assignedNodes().length>0};onBadgeSlotchange=a=>{this.hasBadge=a.target.assignedNodes().length>0};onClick=()=>{this.disabled||this.bsSelect.emit()};render(){const a=this.hasIcon&&!this.hasLabel,t=this.hasIcon&&this.hasLabel&&"top"===this.iconPosition,b=this.hasBadge&&!a&&!t;return s("button",{key:"368a2f20536d169e06e47500dcca4d6a54f17dde",type:"button",part:"tab",role:"tab",class:`bs-tab ${this.selected?"bs-tab--selected":""} ${this.disabled?"bs-tab--disabled":""} ${a?"bs-tab--icon-only":""} ${t?"bs-tab--vertical":""}`,disabled:this.disabled,"aria-selected":String(this.selected),"aria-disabled":this.disabled?"true":void 0,"aria-label":this.ariaLabel,tabIndex:void 0===this.tabbable?void 0:this.tabbable?0:-1,onClick:this.onClick},s("span",{key:"3b22e92a5d6bca27c0b12b6f80ef29af06bcc564",part:"icon",class:"bs-tab__icon "+(this.hasIcon?"bs-tab__icon--has-content":"")},s("slot",{key:"d75cb8cc85547a8c6a8be3bca3fc82a61d3cfa38",name:"icon",onSlotchange:this.onIconSlotchange})),s("span",{key:"43ff4feb2425f1b0dd9485f323b1886b42e10a32",part:"label",class:"bs-tab__label "+(this.hasLabel?"bs-tab__label--has-content":"")},s("slot",{key:"74a0af9a35043faa3baa2415c3b4a204f5745155",onSlotchange:this.onLabelSlotchange})),s("span",{key:"22b5c4671b7a7c93abffae5a34a4e3bb600d8ed3",part:"badge",class:"bs-tab__badge "+(b?"bs-tab__badge--has-content":"")},s("slot",{key:"17b123826ca4b78ff00b89d3a0944e1d805ad4fe",name:"badge",onSlotchange:this.onBadgeSlotchange})),s("span",{key:"d51f23caa9d0fd0abddd37c7394994e1ffef0586",part:"indicator",class:"bs-tab__indicator"}))}};e.style=":host{display:inline-block;--bs-tab-radius:var(--bs-border-radius-100);--bs-tab-padding-y:var(--bs-spacing-150);--bs-tab-padding-x:var(--bs-spacing-200);--bs-tab-gap:var(--bs-spacing-75);--bs-tab-gap-vertical:var(--bs-spacing-50);--bs-tab-color-default:var(--bs-text-muted);--bs-tab-icon-color-default:var(--bs-icon-muted);--bs-tab-color-hover:var(--bs-text-default);--bs-tab-icon-color-hover:var(--bs-icon-default);--bs-tab-indicator-hover:var(--bs-border-neutral-hover);--bs-tab-color-selected:var(--bs-color-primary-default);--bs-tab-color-selected-hover:var(--bs-color-primary-hover);--bs-tab-color-selected-pressed:var(--bs-color-primary-pressed);--bs-tab-indicator-selected:var(--bs-color-primary-default);--bs-tab-indicator-selected-hover:var(--bs-color-primary-hover);--bs-tab-indicator-selected-pressed:var(--bs-color-primary-pressed);--bs-tab-focus-ring-color:var(--bs-border-neutral-focus);--bs-tab-color-disabled:var(--bs-text-on-disabled);--bs-tab-icon-color-disabled:var(--bs-icon-disabled);--bs-tab-font-size:var(--bs-font-size-md);--bs-tab-line-height:var(--bs-line-height-body-md)}.bs-tab{box-sizing:border-box;position:relative;display:flex;flex-direction:row;align-items:center;justify-content:center;border:none;cursor:pointer;background:transparent;color:var(--bs-tab-color-default);font-family:inherit;border-radius:var(--bs-tab-radius);padding:var(--bs-tab-padding-y) var(--bs-tab-padding-x);gap:var(--bs-tab-gap);transition:color var(--bs-duration-fast) var(--bs-easing-standard), background-color var(--bs-duration-fast) var(--bs-easing-standard)}.bs-tab--vertical{flex-direction:column;gap:var(--bs-tab-gap-vertical)}.bs-tab:focus-visible{outline:2px solid var(--bs-tab-focus-ring-color);outline-offset:2px}.bs-tab:not(.bs-tab--selected):not(.bs-tab--disabled):hover,.bs-tab:not(.bs-tab--selected):not(.bs-tab--disabled):focus-visible,.bs-tab:not(.bs-tab--selected):not(.bs-tab--disabled):active{color:var(--bs-tab-color-hover)}.bs-tab:not(.bs-tab--selected):not(.bs-tab--disabled):hover .bs-tab__icon,.bs-tab:not(.bs-tab--selected):not(.bs-tab--disabled):focus-visible .bs-tab__icon,.bs-tab:not(.bs-tab--selected):not(.bs-tab--disabled):active .bs-tab__icon{color:var(--bs-tab-icon-color-hover)}.bs-tab:not(.bs-tab--selected):not(.bs-tab--disabled):hover .bs-tab__indicator,.bs-tab:not(.bs-tab--selected):not(.bs-tab--disabled):focus-visible .bs-tab__indicator,.bs-tab:not(.bs-tab--selected):not(.bs-tab--disabled):active .bs-tab__indicator{background:var(--bs-tab-indicator-hover)}.bs-tab--selected{color:var(--bs-tab-color-selected)}.bs-tab--selected .bs-tab__icon--has-content{color:var(--bs-tab-color-selected)}.bs-tab--selected .bs-tab__indicator{background:var(--bs-tab-indicator-selected)}.bs-tab--selected:not(.bs-tab--disabled):hover,.bs-tab--selected:not(.bs-tab--disabled):focus-visible{color:var(--bs-tab-color-selected-hover)}.bs-tab--selected:not(.bs-tab--disabled):hover .bs-tab__icon--has-content,.bs-tab--selected:not(.bs-tab--disabled):focus-visible .bs-tab__icon--has-content{color:var(--bs-tab-color-selected-hover)}.bs-tab--selected:not(.bs-tab--disabled):hover .bs-tab__indicator,.bs-tab--selected:not(.bs-tab--disabled):focus-visible .bs-tab__indicator{background:var(--bs-tab-indicator-selected-hover)}.bs-tab--selected:not(.bs-tab--disabled):active{color:var(--bs-tab-color-selected-pressed)}.bs-tab--selected:not(.bs-tab--disabled):active .bs-tab__icon--has-content{color:var(--bs-tab-color-selected-pressed)}.bs-tab--selected:not(.bs-tab--disabled):active .bs-tab__indicator{background:var(--bs-tab-indicator-selected-pressed)}.bs-tab--disabled{color:var(--bs-tab-color-disabled);cursor:not-allowed}.bs-tab--disabled .bs-tab__icon--has-content{color:var(--bs-tab-icon-color-disabled)}.bs-tab--disabled .bs-tab__indicator{background:transparent}.bs-tab__icon{display:none;width:24px;height:24px;flex-shrink:0;color:var(--bs-tab-icon-color-default)}.bs-tab__icon--has-content{display:inline-flex;align-items:center;justify-content:center}.bs-tab__icon ::slotted(svg){width:24px;height:24px}.bs-tab__label{display:none;font-size:var(--bs-tab-font-size);line-height:calc(var(--bs-tab-line-height) * 1px);white-space:nowrap}.bs-tab__label--has-content{display:inline-block}.bs-tab__badge{display:none}.bs-tab__badge--has-content{display:inline-flex;align-items:center}.bs-tab__indicator{position:absolute;inset-inline-start:var(--bs-tab-padding-x);inset-inline-end:var(--bs-tab-padding-x);bottom:0;height:2px;background:transparent;border-radius:var(--bs-border-radius-50, 2px)}";export{e as bs_tab}
@@ -1 +0,0 @@
1
- import{r,a as e,h as o,H as a}from"./p-AgoOSYvW.js";const s=class{constructor(e){r(this,e)}get el(){return e(this)}items=[];overflowLabel="Show hidden breadcrumbs";size="md";open=!1;onEllipsisToggle=()=>{this.open=!this.open};onHostKeydown(r){this.open&&"Escape"===r.key&&(this.open=!1)}onHostFocusOut(r){if(!this.open)return;const e=r.relatedTarget;e&&this.el.contains(e)||(this.open=!1)}render(){return o(a,{key:"6219cabef08760aa3940d9a4e12d6e5ecd21e407",role:"listitem"},o("span",{key:"59261696d02c49b1ea81b29d822d6d42c4fbafd5",part:"separator",class:"bs-breadcrumb-overflow__separator","aria-hidden":"true"},o(b,{key:"62921ade525de21d7e74e732e0736c345fef87b7"})),o("span",{key:"0a8e9a9dc472ab9d1b63bdd497ceda12e04a736a",class:"bs-breadcrumb-overflow__wrapper"},o("button",{key:"6930b4b341ee5b810eae5ffe32e33022402a01d3",type:"button",part:"ellipsis",class:"bs-breadcrumb-overflow__ellipsis","aria-haspopup":"menu","aria-expanded":String(this.open),"aria-label":this.overflowLabel,onClick:this.onEllipsisToggle},o(i,{key:"c9cf273fa51bac2bf11953d294184be641a47a9f"})),this.open&&this.items.length>0&&o("bs-menu",{key:"1a1948a75569ad7639131d2982c8ebdf28027f85",part:"menu",class:"bs-breadcrumb-overflow__menu"},this.items.map((r=>r.href?o("a",{part:"link",class:"bs-breadcrumb-overflow__link",href:r.href},r.label):o("span",{part:"link",class:"bs-breadcrumb-overflow__link"},r.label))))))}},b=()=>o("svg",{viewBox:"0 0 16 16",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},o("path",{d:"M6 3L11 8L6 13",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"})),i=()=>o("svg",{viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true"},o("path",{fill:"currentColor",d:"M12 13.125C12.6213 13.125 13.125 12.6213 13.125 12C13.125 11.3787 12.6213 10.875 12 10.875C11.3787 10.875 10.875 11.3787 10.875 12C10.875 12.6213 11.3787 13.125 12 13.125Z"}),o("path",{fill:"currentColor",d:"M18.375 13.125C18.9963 13.125 19.5 12.6213 19.5 12C19.5 11.3787 18.9963 10.875 18.375 10.875C17.7537 10.875 17.25 11.3787 17.25 12C17.25 12.6213 17.7537 13.125 18.375 13.125Z"}),o("path",{fill:"currentColor",d:"M5.625 13.125C6.24632 13.125 6.75 12.6213 6.75 12C6.75 11.3787 6.24632 10.875 5.625 10.875C5.00368 10.875 4.5 11.3787 4.5 12C4.5 12.6213 5.00368 13.125 5.625 13.125Z"}));s.style=":host{display:inline-flex;align-items:center;--bs-breadcrumb-overflow-gap:var(--bs-spacing-50);--bs-breadcrumb-overflow-separator-color:var(--bs-icon-default);--bs-breadcrumb-overflow-ellipsis-color:var(--bs-icon-muted);--bs-breadcrumb-overflow-radius:var(--bs-border-radius-100);--bs-breadcrumb-overflow-padding-y:var(--bs-spacing-100);--bs-breadcrumb-overflow-padding-x:var(--bs-spacing-150);--bs-breadcrumb-overflow-hover:var(--bs-color-neutral-container-hover);--bs-breadcrumb-overflow-color:var(--bs-text-muted);--bs-breadcrumb-overflow-font-size:var(--bs-font-size-md);--bs-breadcrumb-overflow-line-height:var(--bs-line-height-body-md);--bs-breadcrumb-overflow-font-size-sm:var(--bs-font-size-sm);--bs-breadcrumb-overflow-line-height-sm:var(--bs-line-height-body-sm);gap:var(--bs-breadcrumb-overflow-gap)}:host(:first-child) .bs-breadcrumb-overflow__separator{display:none}:host([size='sm']) .bs-breadcrumb-overflow__link{font-size:var(--bs-breadcrumb-overflow-font-size-sm);line-height:calc(var(--bs-breadcrumb-overflow-line-height-sm) * 1px)}.bs-breadcrumb-overflow__separator{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;color:var(--bs-breadcrumb-overflow-separator-color)}.bs-breadcrumb-overflow__separator svg{width:16px;height:16px}.bs-breadcrumb-overflow__wrapper{position:relative;display:inline-flex}.bs-breadcrumb-overflow__ellipsis{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0;padding:0;border:none;background:transparent;cursor:pointer;color:var(--bs-breadcrumb-overflow-ellipsis-color);border-radius:var(--bs-breadcrumb-overflow-radius)}.bs-breadcrumb-overflow__ellipsis:focus-visible{outline:2px solid var(--bs-border-neutral-focus);outline-offset:2px}.bs-breadcrumb-overflow__ellipsis svg{width:24px;height:24px}.bs-breadcrumb-overflow__menu{position:absolute;top:calc(100% + var(--bs-breadcrumb-overflow-gap));inset-inline-start:0;z-index:1;white-space:nowrap}.bs-breadcrumb-overflow__link{display:block;box-sizing:border-box;padding:var(--bs-breadcrumb-overflow-padding-y) var(--bs-breadcrumb-overflow-padding-x);border-radius:var(--bs-breadcrumb-overflow-radius);color:var(--bs-breadcrumb-overflow-color);font-size:var(--bs-breadcrumb-overflow-font-size);line-height:calc(var(--bs-breadcrumb-overflow-line-height) * 1px);text-decoration:none;transition:background-color var(--bs-duration-fast) var(--bs-easing-standard)}a.bs-breadcrumb-overflow__link:hover,a.bs-breadcrumb-overflow__link:focus-visible{background:var(--bs-breadcrumb-overflow-hover)}a.bs-breadcrumb-overflow__link:focus-visible{outline:2px solid var(--bs-border-neutral-focus);outline-offset:-2px}";export{s as bs_breadcrumb_overflow}
@@ -1 +0,0 @@
1
- import{r as a,h as i}from"./p-AgoOSYvW.js";const e=class{constructor(i){a(this,i)}alignment="default";ariaLabel=null;skipToContentHref=null;skipToContentLabel="Skip to main content";logoBackground="auto";render(){const a="with-navigation-drawer"!==this.alignment;return i("header",{key:"0dc99abb8f2db96f0befe1b838a2db037636a75c",class:`bs-navigation-header bs-navigation-header--${this.alignment}`,"aria-label":this.ariaLabel??void 0},this.skipToContentHref&&i("a",{key:"1f906366d5398aa62d2485afdb1c9cf350354f05",part:"skip-link",class:"bs-navigation-header__skip-link",href:this.skipToContentHref},this.skipToContentLabel),a&&i("bs-logo",{key:"c735b4647acc92ff5b6725dc72bfbab421230a9c",part:"logo",class:"bs-navigation-header__logo",variant:"full",background:this.logoBackground}),i("div",{key:"845c1d60319daf2aa7aa57f0f8ba71e0f633598e",part:"left",class:"bs-navigation-header__left"},i("slot",{key:"67436745b63a843e86a79163f927f2b563b6e2e4",name:"left"})),i("div",{key:"4c6d514d7cf238b5be8476f9fede7292b1dc1c10",part:"right",class:"bs-navigation-header__right"},i("slot",{key:"a6c12231c6cc728314fdfc076a48fd1ce0f79ede",name:"right"})))}};e.style=":host{display:block;--bs-navigation-header-bg:var(--bs-surface-base);--bs-navigation-header-border:var(--bs-border-default);--bs-navigation-header-padding-top:var(--bs-spacing-200);--bs-navigation-header-padding-bottom:var(--bs-spacing-100);--bs-navigation-header-padding-x:var(--bs-margin-fluid);--bs-navigation-header-max-width:1920px;--bs-navigation-header-item-gap:calc(var(--bs-navigation-header-gap) * 1px);--bs-navigation-header-slot-gap:var(--bs-spacing-100);--bs-navigation-header-skip-link-bg:var(--bs-surface-action);--bs-navigation-header-skip-link-color:var(--bs-text-inverse)}.bs-navigation-header{box-sizing:border-box;position:relative;display:flex;align-items:center;width:100%;max-width:var(--bs-navigation-header-max-width);background:var(--bs-navigation-header-bg);border-bottom:1px solid var(--bs-navigation-header-border);padding:var(--bs-navigation-header-padding-top) var(--bs-navigation-header-padding-x) var(--bs-navigation-header-padding-bottom)}.bs-navigation-header__skip-link{position:absolute;top:var(--bs-spacing-100);left:-9999px;z-index:1;padding:var(--bs-spacing-100) var(--bs-spacing-200);border-radius:var(--bs-border-radius-100);background:var(--bs-navigation-header-skip-link-bg);color:var(--bs-navigation-header-skip-link-color);font-size:var(--bs-font-size-sm);text-decoration:underline}.bs-navigation-header__skip-link:focus{left:var(--bs-navigation-header-padding-x)}.bs-navigation-header--default,.bs-navigation-header--with-navigation-drawer{gap:var(--bs-navigation-header-item-gap)}.bs-navigation-header__logo{flex-shrink:0;display:flex;align-items:center}.bs-navigation-header--center .bs-navigation-header__logo{flex:1 0 0;min-width:0}.bs-navigation-header__left{display:flex;align-items:center;gap:var(--bs-navigation-header-slot-gap);flex-shrink:0}.bs-navigation-header__right{display:flex;align-items:center;justify-content:flex-end;gap:var(--bs-navigation-header-slot-gap);flex:1 0 0;min-width:0}@media (max-width: 768px){.bs-navigation-header--default,.bs-navigation-header--with-navigation-drawer{flex-wrap:wrap;row-gap:var(--bs-navigation-header-slot-gap)}.bs-navigation-header--default .bs-navigation-header__right,.bs-navigation-header--with-navigation-drawer .bs-navigation-header__right{flex:1 1 100%;justify-content:flex-end}}";export{e as bs_navigation_header}
@@ -1 +0,0 @@
1
- import{r as t,a,h as s}from"./p-AgoOSYvW.js";const i=class{constructor(a){t(this,a)}get el(){return a(this)}type="bs-tab";orientation="horizontal";onTabSelect(t){this.el.querySelectorAll(":scope > bs-tab, :scope > bs-inline-tab").forEach((a=>{a.selected=a===t.target})),this.syncRovingTabindex()}componentDidLoad(){this.syncRovingTabindex()}syncRovingTabindex(){const t=this.tabs(),a=t.some((t=>t.selected)),s=t.find((t=>!t.disabled));t.forEach((t=>{t.tabbable=a?t.selected:t===s}))}tabs(){return Array.from(this.el.querySelectorAll(":scope > bs-tab, :scope > bs-inline-tab"))}onKeyDown(t){const a="vertical"===this.orientation,s="rtl"===getComputedStyle(this.el).direction,i=a?"ArrowUp":s?"ArrowRight":"ArrowLeft",b=a?"ArrowDown":s?"ArrowLeft":"ArrowRight";if(![i,b,"Home","End"].includes(t.key))return;const e=this.tabs().filter((t=>!t.disabled)),n=e.findIndex((a=>a===t.target||a.contains(t.target)));if(-1===n||0===e.length)return;t.preventDefault();let r=n;r=t.key===b?(n+1)%e.length:t.key===i?(n-1+e.length)%e.length:"Home"===t.key?0:e.length-1;const o=e[r],l=o.shadowRoot?.querySelector("button");l?.focus(),l?.click()}render(){return s("div",{key:"81b3b46d54d4acc074b0c59d0da5e3e971e7b62e",part:"tablist",role:"tablist","aria-orientation":this.orientation,class:`bs-tabs bs-tabs--${this.type} ${"vertical"===this.orientation?"bs-tabs--vertical":""}`},s("slot",{key:"ba296a99062629de3e331cd7de1ebc41548c77f9",onSlotchange:()=>this.syncRovingTabindex()}))}static get watchers(){return{orientation:[{syncRovingTabindex:0}]}}};i.style=":host{display:inline-block;--bs-tabs-tab-gap:var(--bs-spacing-100);--bs-tabs-inline-tab-bg:var(--bs-color-neutral-container);--bs-tabs-inline-tab-padding-x:var(--bs-spacing-50);--bs-tabs-inline-tab-radius:var(--bs-border-radius-full);--bs-tabs-inline-tab-gap:var(--bs-spacing-50)}.bs-tabs{display:inline-flex;align-items:center}.bs-tabs--vertical{display:flex;flex-direction:column;align-items:flex-start}.bs-tabs--bs-tab{gap:var(--bs-tabs-tab-gap)}.bs-tabs--bs-inline-tab{background:var(--bs-tabs-inline-tab-bg);padding:0 var(--bs-tabs-inline-tab-padding-x);border-radius:var(--bs-tabs-inline-tab-radius);gap:var(--bs-tabs-inline-tab-gap)}";export{i as bs_tabs}
@@ -1 +0,0 @@
1
- import{r as i,c as n,a as e,h as a}from"./p-AgoOSYvW.js";const b=class{constructor(e){i(this,e),this.bsSelect=n(this,"bsSelect")}get el(){return e(this)}selected=!1;disabled=!1;ariaLabel=null;tabbable;hasIcon=!1;hasLabel=!1;bsSelect;componentWillLoad(){this.hasIcon=this.hasSlottedContent("icon"),this.hasLabel=this.hasSlottedContent(null)}hasSlottedContent(i){return Array.from(this.el.childNodes).some((n=>n.nodeType===Node.ELEMENT_NODE?n.getAttribute("slot")===i:null===i))}onIconSlotchange=i=>{this.hasIcon=i.target.assignedNodes().length>0};onLabelSlotchange=i=>{this.hasLabel=i.target.assignedNodes().length>0};onClick=()=>{this.disabled||this.bsSelect.emit()};render(){return a("button",{key:"72a2298b0dff31e192dc679ee153d1d87e6a8723",type:"button",part:"tab",role:"tab",class:`bs-inline-tab ${this.selected?"bs-inline-tab--selected":""} ${this.disabled?"bs-inline-tab--disabled":""} ${this.hasIcon&&!this.hasLabel?"bs-inline-tab--icon-only":""} ${this.hasIcon?"bs-inline-tab--has-icon":""}`,disabled:this.disabled,"aria-selected":String(this.selected),"aria-disabled":this.disabled?"true":void 0,"aria-label":this.ariaLabel,tabIndex:void 0===this.tabbable?void 0:this.tabbable?0:-1,onClick:this.onClick},a("span",{key:"25679b5cfc3bfec29f91b12f6180048429706b86",part:"icon",class:"bs-inline-tab__icon "+(this.hasIcon?"bs-inline-tab__icon--has-content":"")},a("slot",{key:"f5c996ae38a4e5ace60c8b1145dfb64114097600",name:"icon",onSlotchange:this.onIconSlotchange})),a("span",{key:"101ac663fa1b05e3f4f2faaaff865e02ecbd4e90",part:"label",class:"bs-inline-tab__label "+(this.hasLabel?"bs-inline-tab__label--has-content":"")},a("slot",{key:"a705183b26ad7d7ad3e286939b256cfbafb78580",onSlotchange:this.onLabelSlotchange})))}};b.style=":host{display:inline-block;--bs-inline-tab-radius:var(--bs-border-radius-full);--bs-inline-tab-padding-y:var(--bs-spacing-100);--bs-inline-tab-padding-x:var(--bs-spacing-200);--bs-inline-tab-padding-left-with-icon:var(--bs-spacing-150);--bs-inline-tab-padding-right-with-icon:var(--bs-spacing-200);--bs-inline-tab-gap:var(--bs-spacing-50);--bs-inline-tab-bg-default:var(--bs-color-neutral-container);--bs-inline-tab-color-default:var(--bs-text-secondary);--bs-inline-tab-bg-hover:var(--bs-color-neutral-container-hover);--bs-inline-tab-color-hover:var(--bs-text-default);--bs-inline-tab-bg-focus:var(--bs-color-neutral-container-focused);--bs-inline-tab-bg-pressed:var(--bs-color-neutral-container-pressed);--bs-inline-tab-focus-ring-color:var(--bs-border-neutral-focus);--bs-inline-tab-bg-disabled:var(--bs-surface-action-disabled);--bs-inline-tab-color-disabled:var(--bs-text-on-disabled);--bs-inline-tab-bg-selected:var(--bs-color-primary-default);--bs-inline-tab-color-selected:var(--bs-text-on-action);--bs-inline-tab-bg-selected-hover:var(--bs-color-primary-hover);--bs-inline-tab-bg-selected-focus:var(--bs-color-primary-focused);--bs-inline-tab-bg-selected-pressed:var(--bs-color-primary-pressed);--bs-inline-tab-font-size:var(--bs-font-size-sm);--bs-inline-tab-font-weight:var(--bs-font-weight-semibold);--bs-inline-tab-line-height:var(--bs-line-height-body-sm)}.bs-inline-tab{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;border:none;cursor:pointer;font-family:inherit;border-radius:var(--bs-inline-tab-radius);padding:var(--bs-inline-tab-padding-y) var(--bs-inline-tab-padding-x);background:var(--bs-inline-tab-bg-default);color:var(--bs-inline-tab-color-default);transition:color var(--bs-duration-fast) var(--bs-easing-standard), background-color var(--bs-duration-fast) var(--bs-easing-standard)}.bs-inline-tab--has-icon{padding-top:var(--bs-inline-tab-padding-y);padding-bottom:var(--bs-inline-tab-padding-y);padding-inline-start:var(--bs-inline-tab-padding-left-with-icon);padding-inline-end:var(--bs-inline-tab-padding-right-with-icon);gap:var(--bs-inline-tab-gap)}.bs-inline-tab:focus-visible{outline:2px solid var(--bs-inline-tab-focus-ring-color);outline-offset:2px}.bs-inline-tab:not(.bs-inline-tab--selected):not(.bs-inline-tab--disabled):hover{background:var(--bs-inline-tab-bg-hover);color:var(--bs-inline-tab-color-hover)}.bs-inline-tab:not(.bs-inline-tab--selected):not(.bs-inline-tab--disabled):focus-visible{background:var(--bs-inline-tab-bg-focus);color:var(--bs-inline-tab-color-hover)}.bs-inline-tab:not(.bs-inline-tab--selected):not(.bs-inline-tab--disabled):active{background:var(--bs-inline-tab-bg-pressed);color:var(--bs-inline-tab-color-hover)}.bs-inline-tab--selected{background:var(--bs-inline-tab-bg-selected);color:var(--bs-inline-tab-color-selected)}.bs-inline-tab--selected:not(.bs-inline-tab--disabled):hover{background:var(--bs-inline-tab-bg-selected-hover)}.bs-inline-tab--selected:not(.bs-inline-tab--disabled):focus-visible{background:var(--bs-inline-tab-bg-selected-focus)}.bs-inline-tab--selected:not(.bs-inline-tab--disabled):active{background:var(--bs-inline-tab-bg-selected-pressed)}.bs-inline-tab--disabled{background:var(--bs-inline-tab-bg-disabled);color:var(--bs-inline-tab-color-disabled);cursor:not-allowed}.bs-inline-tab__icon{display:none;width:24px;height:24px;flex-shrink:0;color:inherit}.bs-inline-tab__icon--has-content{display:inline-flex;align-items:center;justify-content:center}.bs-inline-tab__icon ::slotted(svg){width:24px;height:24px}.bs-inline-tab__label{display:none;font-size:var(--bs-inline-tab-font-size);font-weight:var(--bs-inline-tab-font-weight);line-height:calc(var(--bs-inline-tab-line-height) * 1px);white-space:nowrap}.bs-inline-tab__label--has-content{display:inline-block}";export{b as bs_inline_tab}
@@ -1 +0,0 @@
1
- import{t as o,p as n,H as t,h as s}from"./p-JYlmcxBn.js";const r=n(class extends t{constructor(o){super(),!1!==o&&this.__registerHost(),this.__attachShadow(),this.internals=this.attachInternals()}get el(){return this}internals;variant="primary";size="md";disabled=!1;type="button";ariaLabel=null;onClick=()=>{const o=this.internals?.form;o&&!this.disabled&&("submit"===this.type?o.requestSubmit():"reset"===this.type&&o.reset())};render(){return s("button",{key:"1d0525e3ad0b90e723cab2c9cd0217046a905a5e",class:`bs-icon-button bs-icon-button--${this.variant} bs-icon-button--${this.size}`,type:this.type,disabled:this.disabled,"aria-label":this.ariaLabel,onClick:this.onClick},s("span",{key:"1c94ad4a861dde9e4942f6795a2a868161c0b4a1",part:"icon",class:"bs-icon-button__icon"},s("slot",{key:"9cd3a6aa2d9cbfebaa1d0e70fc10448af4ef4429"})))}static get delegatesFocus(){return!0}static get formAssociated(){return!0}static get style(){return":host{display:inline-block;--bs-icon-button-radius:var(--bs-border-radius-100);--bs-icon-button-size-sm:40px;--bs-icon-button-size-md:44px;--bs-icon-button-size-lg:48px;--bs-icon-button-icon-size-sm:16px;--bs-icon-button-icon-size-md:20px;--bs-icon-button-icon-size-lg:24px;--bs-icon-button-padding:var(--bs-spacing-150);--bs-icon-button-radius-xs:var(--bs-border-radius-50);--bs-icon-button-size-xs:16px;--bs-icon-button-icon-size-xs:8px;--bs-icon-button-padding-xs:var(--bs-spacing-50);--bs-icon-button-primary-default:var(--bs-color-primary-default);--bs-icon-button-primary-hover:var(--bs-color-primary-hover);--bs-icon-button-primary-pressed:var(--bs-color-primary-pressed);--bs-icon-button-primary-disabled:var(--bs-surface-action-disabled);--bs-icon-button-neutral-container:var(--bs-color-neutral-container);--bs-icon-button-neutral-hover:var(--bs-color-neutral-container-hover);--bs-icon-button-neutral-pressed:var(--bs-color-neutral-container-pressed);--bs-icon-button-neutral-border:var(--bs-border-neutral-container);--bs-icon-button-neutral-border-hover:var(--bs-border-neutral-container-hover);--bs-icon-button-neutral-border-pressed:var(--bs-border-neutral-container-pressed);--bs-icon-button-subtle-hover:var(--bs-color-neutral-container);--bs-icon-button-subtle-pressed:var(--bs-color-neutral-container-pressed);--bs-icon-button-subtle-focus:var(--bs-border-primary-focus);--bs-icon-button-outlined-border:var(--bs-color-primary-default);--bs-icon-button-outlined-border-hover:var(--bs-color-primary-hover);--bs-icon-button-outlined-border-pressed:var(--bs-color-primary-pressed);--bs-icon-button-outlined-text-hover:var(--bs-text-action-hover);--bs-icon-button-outlined-container:var(--bs-color-primary-container);--bs-icon-button-outlined-focus:var(--bs-border-primary-focus);--bs-icon-button-success-default:var(--bs-color-success-default);--bs-icon-button-success-hover:var(--bs-color-success-hover);--bs-icon-button-success-pressed:var(--bs-color-success-pressed);--bs-icon-button-success-disabled:var(--bs-surface-action-disabled);--bs-icon-button-success-focus:var(--bs-border-success-focus);--bs-icon-button-warning-default:var(--bs-color-warning-default);--bs-icon-button-warning-hover:var(--bs-color-warning-hover);--bs-icon-button-warning-pressed:var(--bs-color-warning-pressed);--bs-icon-button-warning-disabled:var(--bs-surface-action-disabled);--bs-icon-button-warning-focus:var(--bs-border-warning-focus);--bs-icon-button-info-default:var(--bs-color-info-default);--bs-icon-button-info-hover:var(--bs-color-info-hover);--bs-icon-button-info-pressed:var(--bs-color-info-pressed);--bs-icon-button-info-disabled:var(--bs-surface-action-disabled);--bs-icon-button-info-focus:var(--bs-border-info-focus);--bs-icon-button-error-default:var(--bs-color-error-default);--bs-icon-button-error-hover:var(--bs-color-error-hover);--bs-icon-button-error-pressed:var(--bs-color-error-pressed);--bs-icon-button-error-disabled:var(--bs-surface-action-disabled);--bs-icon-button-error-focus:var(--bs-border-error-focus)}.bs-icon-button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;border:none;border-radius:var(--bs-icon-button-radius);padding:var(--bs-icon-button-padding);cursor:pointer;transition:background-color var(--bs-duration-fast, 120ms) var(--bs-easing-standard, ease)}.bs-icon-button:focus-visible{outline:2px solid var(--bs-border-neutral-focus);outline-offset:2px}.bs-icon-button:disabled{cursor:not-allowed}.bs-icon-button--xs{width:var(--bs-icon-button-size-xs);height:var(--bs-icon-button-size-xs);padding:var(--bs-icon-button-padding-xs);border-radius:var(--bs-icon-button-radius-xs)}.bs-icon-button--xs .bs-icon-button__icon{width:var(--bs-icon-button-icon-size-xs);height:var(--bs-icon-button-icon-size-xs)}.bs-icon-button--sm{width:var(--bs-icon-button-size-sm);height:var(--bs-icon-button-size-sm)}.bs-icon-button--sm .bs-icon-button__icon{width:var(--bs-icon-button-icon-size-sm);height:var(--bs-icon-button-icon-size-sm)}.bs-icon-button--md{width:var(--bs-icon-button-size-md);height:var(--bs-icon-button-size-md)}.bs-icon-button--md .bs-icon-button__icon{width:var(--bs-icon-button-icon-size-md);height:var(--bs-icon-button-icon-size-md)}.bs-icon-button--lg{width:var(--bs-icon-button-size-lg);height:var(--bs-icon-button-size-lg)}.bs-icon-button--lg .bs-icon-button__icon{width:var(--bs-icon-button-icon-size-lg);height:var(--bs-icon-button-icon-size-lg)}.bs-icon-button__icon{display:inline-flex;align-items:center;justify-content:center;color:inherit}.bs-icon-button__icon ::slotted(*){display:block;width:100%;height:100%}.bs-icon-button--primary{background:var(--bs-icon-button-primary-default);color:var(--bs-text-on-action)}.bs-icon-button--primary:hover:not(:disabled){background:var(--bs-icon-button-primary-hover)}.bs-icon-button--primary:active:not(:disabled){background:var(--bs-icon-button-primary-pressed)}.bs-icon-button--primary:disabled{background:var(--bs-icon-button-primary-disabled);color:var(--bs-text-on-disabled)}.bs-icon-button--neutral{background:var(--bs-icon-button-neutral-container);color:var(--bs-text-default);border:1px solid var(--bs-icon-button-neutral-border)}.bs-icon-button--neutral:hover:not(:disabled){background:var(--bs-icon-button-neutral-hover);border-color:var(--bs-icon-button-neutral-border-hover)}.bs-icon-button--neutral:active:not(:disabled){background:var(--bs-icon-button-neutral-pressed);border-color:var(--bs-icon-button-neutral-border-pressed)}.bs-icon-button--neutral:disabled{background:var(--bs-icon-button-neutral-container);color:var(--bs-text-on-disabled);border-color:var(--bs-icon-button-neutral-border)}.bs-icon-button--error{background:var(--bs-icon-button-error-default);color:var(--bs-text-on-action)}.bs-icon-button--error:hover:not(:disabled){background:var(--bs-icon-button-error-hover)}.bs-icon-button--error:active:not(:disabled){background:var(--bs-icon-button-error-pressed)}.bs-icon-button--error:disabled{background:var(--bs-icon-button-error-disabled);color:var(--bs-text-on-disabled)}.bs-icon-button--error:focus-visible{outline-color:var(--bs-icon-button-error-focus)}.bs-icon-button--success{background:var(--bs-icon-button-success-default);color:var(--bs-text-on-action)}.bs-icon-button--success:hover:not(:disabled){background:var(--bs-icon-button-success-hover)}.bs-icon-button--success:active:not(:disabled){background:var(--bs-icon-button-success-pressed)}.bs-icon-button--success:disabled{background:var(--bs-icon-button-success-disabled);color:var(--bs-text-on-disabled)}.bs-icon-button--success:focus-visible{outline-color:var(--bs-icon-button-success-focus)}.bs-icon-button--warning{background:var(--bs-icon-button-warning-default);color:var(--bs-text-on-action)}.bs-icon-button--warning:hover:not(:disabled){background:var(--bs-icon-button-warning-hover)}.bs-icon-button--warning:active:not(:disabled){background:var(--bs-icon-button-warning-pressed)}.bs-icon-button--warning:disabled{background:var(--bs-icon-button-warning-disabled);color:var(--bs-text-on-disabled)}.bs-icon-button--warning:focus-visible{outline-color:var(--bs-icon-button-warning-focus)}.bs-icon-button--info{background:var(--bs-icon-button-info-default);color:var(--bs-text-on-action)}.bs-icon-button--info:hover:not(:disabled){background:var(--bs-icon-button-info-hover)}.bs-icon-button--info:active:not(:disabled){background:var(--bs-icon-button-info-pressed)}.bs-icon-button--info:disabled{background:var(--bs-icon-button-info-disabled);color:var(--bs-text-on-disabled)}.bs-icon-button--info:focus-visible{outline-color:var(--bs-icon-button-info-focus)}.bs-icon-button--subtle{background:transparent;color:var(--bs-icon-neutral-default)}.bs-icon-button--subtle:hover:not(:disabled){background:var(--bs-icon-button-subtle-hover)}.bs-icon-button--subtle:active:not(:disabled){background:var(--bs-icon-button-subtle-pressed)}.bs-icon-button--subtle:disabled{background:transparent;color:var(--bs-text-on-disabled)}.bs-icon-button--subtle:focus-visible{outline-color:var(--bs-icon-button-subtle-focus);background:var(--bs-icon-button-subtle-hover)}.bs-icon-button--outlined{background:transparent;color:var(--bs-color-primary-default);border:1px solid var(--bs-icon-button-outlined-border)}.bs-icon-button--outlined:hover:not(:disabled){background:var(--bs-icon-button-outlined-container);border-color:var(--bs-icon-button-outlined-border-hover);color:var(--bs-icon-button-outlined-text-hover)}.bs-icon-button--outlined:active:not(:disabled){background:var(--bs-icon-button-outlined-container);color:var(--bs-icon-button-outlined-text-hover);border-color:var(--bs-icon-button-outlined-border-pressed)}.bs-icon-button--outlined:disabled{opacity:var(--bs-opacity-disabled);cursor:not-allowed}.bs-icon-button--outlined:focus-visible{outline-color:var(--bs-icon-button-outlined-focus)}"}},[849,"bs-icon-button",{variant:[1],size:[1],disabled:[4],type:[1],ariaLabel:[1,"aria-label"]}]);function b(){"undefined"!=typeof customElements&&["bs-icon-button"].forEach((n=>{"bs-icon-button"===n&&(customElements.get(o(n))||customElements.define(o(n),r))}))}b();export{r as B,b as d}