@brightspot/ui 1.10.0 → 1.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/action-bar/ActionBar.d.ts +163 -0
- package/dist/components/action-bar/ActionBar.d.ts.map +1 -0
- package/dist/components/action-bar/ActionBar.js +479 -0
- package/dist/components/action-bar/ActionBar.js.map +1 -0
- package/dist/components/action-bar/ActionItem.d.ts +103 -0
- package/dist/components/action-bar/ActionItem.d.ts.map +1 -0
- package/dist/components/action-bar/ActionItem.js +237 -0
- package/dist/components/action-bar/ActionItem.js.map +1 -0
- package/dist/components/dropdown/Dropdown.d.ts +3 -1
- package/dist/components/dropdown/Dropdown.d.ts.map +1 -1
- package/dist/components/dropdown/Dropdown.js +22 -6
- package/dist/components/dropdown/Dropdown.js.map +1 -1
- package/dist/components/dropdown/DropdownItem.d.ts +14 -1
- package/dist/components/dropdown/DropdownItem.d.ts.map +1 -1
- package/dist/components/dropdown/DropdownItem.js +20 -1
- package/dist/components/dropdown/DropdownItem.js.map +1 -1
- package/dist/components/dropdown/DropdownMenu.d.ts +3 -5
- package/dist/components/dropdown/DropdownMenu.d.ts.map +1 -1
- package/dist/components/dropdown/DropdownMenu.js +17 -32
- package/dist/components/dropdown/DropdownMenu.js.map +1 -1
- package/dist/components/pagination/Pagination.d.ts +33 -4
- package/dist/components/pagination/Pagination.d.ts.map +1 -1
- package/dist/components/pagination/Pagination.js +80 -16
- package/dist/components/pagination/Pagination.js.map +1 -1
- package/dist/components/tabs/Tab.d.ts +108 -0
- package/dist/components/tabs/Tab.d.ts.map +1 -0
- package/dist/components/tabs/Tab.js +152 -0
- package/dist/components/tabs/Tab.js.map +1 -0
- package/dist/components/tabs/Tabs.d.ts +126 -0
- package/dist/components/tabs/Tabs.d.ts.map +1 -0
- package/dist/components/tabs/Tabs.js +390 -0
- package/dist/components/tabs/Tabs.js.map +1 -0
- package/dist/custom-elements.json +2635 -1591
- package/dist/storybook/assets/ActionBar.stories--nAeDC-G.js +408 -0
- package/dist/storybook/assets/ActionItem.stories-BHrGjk-P.js +203 -0
- package/dist/storybook/assets/{Avatar.stories-B26mRkkZ.js → Avatar.stories-Da-mRj6_.js} +1 -1
- package/dist/storybook/assets/{AvatarGroup.stories-J7lVGsMY.js → AvatarGroup.stories-BQlaC_yl.js} +1 -1
- package/dist/storybook/assets/{Badge.stories-BpTIV61M.js → Badge.stories-DnVnOrnF.js} +1 -1
- package/dist/storybook/assets/{Button-Dg-fIrzT.js → Button-CFLAI1H9.js} +1 -1
- package/dist/storybook/assets/{Button.stories-gPKRVbxk.js → Button.stories-DxaBOjwv.js} +1 -1
- package/dist/storybook/assets/{Celebrate.stories-DbY-sKEe.js → Celebrate.stories-CuMm15Nr.js} +1 -1
- package/dist/storybook/assets/{CircularProgress.stories-DeH5JYX_.js → CircularProgress.stories-DRN8Mtvj.js} +1 -1
- package/dist/storybook/assets/{ClipboardMixin.stories-C-lZ4uuw.js → ClipboardMixin.stories-DR7Ou2Av.js} +1 -1
- package/dist/storybook/assets/{Color-6BZIO3FS-Cu6zVIuG.js → Color-6BZIO3FS-Die62Y0Z.js} +1 -1
- package/dist/storybook/assets/{Colors.stories-D6XYMrTD.js → Colors.stories-bIq_ssbI.js} +1 -1
- package/dist/storybook/assets/{CombinedEffects.stories-jFekKTYg.js → CombinedEffects.stories-CtKzOUZn.js} +1 -1
- package/dist/storybook/assets/{ComponentStatesMixin-g50hRCPT.js → ComponentStatesMixin-DMLCk9fE.js} +1 -1
- package/dist/storybook/assets/{ComponentStatesMixin.stories-D3Q5pR38.js → ComponentStatesMixin.stories-D8UI9o-d.js} +1 -1
- package/dist/storybook/assets/{CopyToClipboard.stories-COZZ1VC2.js → CopyToClipboard.stories-ti6CpJNp.js} +1 -1
- package/dist/storybook/assets/{Debounce.stories-Dl10LAnx.js → Debounce.stories-DzZUSvbk.js} +1 -1
- package/dist/storybook/assets/{DocsRenderer-LL677BLK-CFLtMbUx.js → DocsRenderer-LL677BLK-CIRGv5IX.js} +3 -3
- package/dist/storybook/assets/{Dropdown.stories-Drwq-0Z2.js → Dropdown.stories-Lt4cY0Re.js} +41 -14
- package/dist/storybook/assets/{Events.stories-dODeR-g-.js → Events.stories-B1ddcgpT.js} +1 -1
- package/dist/storybook/assets/{Heading.stories-CH7_-_q3.js → Heading.stories-DI4w61cf.js} +1 -1
- package/dist/storybook/assets/{HueRipple.stories-CH1Y739k.js → HueRipple.stories-DjhoxxEw.js} +1 -1
- package/dist/storybook/assets/{Icon.stories-CPjM-jTU.js → Icon.stories-CpziAhae.js} +1 -1
- package/dist/storybook/assets/{IconButton.stories-DuzqvcnN.js → IconButton.stories-KjN28hfc.js} +1 -1
- package/dist/storybook/assets/{LinearProgress.stories-C7IdnJd3.js → LinearProgress.stories-DcIpdz6R.js} +1 -1
- package/dist/storybook/assets/Pagination.stories-BBkLEwoP.js +252 -0
- package/dist/storybook/assets/{Popover.stories-Ca1F-wrI.js → Popover.stories-DLv48c2h.js} +1 -1
- package/dist/storybook/assets/{ReadyMixin-DNZ5dCsZ.js → ReadyMixin-Cw2Dfbu2.js} +1 -1
- package/dist/storybook/assets/RovingTabindexMixin.stories-BWaFx9mu.js +192 -0
- package/dist/storybook/assets/{Rtc.stories-BVJc1vCA.js → Rtc.stories-Ve7Bwo_l.js} +1 -1
- package/dist/storybook/assets/ScrollShadow.stories-C6XmrRLm.js +17 -0
- package/dist/storybook/assets/{Switch.stories-BEEHP8mD.js → Switch.stories-Cf8WM1LG.js} +1 -1
- package/dist/storybook/assets/Tab.stories-CEtdEtOx.js +218 -0
- package/dist/storybook/assets/Tabs.stories-CIAO1bPO.js +211 -0
- package/dist/storybook/assets/{Throttle.stories-C4xsYeAb.js → Throttle.stories-BqxVIb-r.js} +1 -1
- package/dist/storybook/assets/{Tooltip.stories-Ccm4AnSv.js → Tooltip.stories-B6fw6875.js} +1 -1
- package/dist/storybook/assets/{Welcome.stories-Degjk-M0.js → Welcome.stories-CfJtSM19.js} +1 -1
- package/dist/storybook/assets/{Widget.stories-OKnZ9sDs.js → Widget.stories-CiOho7lO.js} +1 -1
- package/dist/storybook/assets/{WithTooltip-65CFNBJE-CXL3TyJ2.js → WithTooltip-65CFNBJE-PGcopp73.js} +2 -2
- package/dist/storybook/assets/{blocks-DLdUKG_W.js → blocks-dP2DwISI.js} +5 -5
- package/dist/storybook/assets/{formatter-EIJCOSYU-29NCxjfM.js → formatter-EIJCOSYU-CZSAC3tg.js} +1 -1
- package/dist/storybook/assets/if-defined-B1RdczOE.js +1 -0
- package/dist/storybook/assets/{iframe-BqvwP3or.js → iframe-DloIUNZz.js} +161 -161
- package/dist/storybook/assets/iframe-bJgLXZKK.css +1 -0
- package/dist/storybook/assets/{index-BIyTv1BF.js → index-DKF0ypu5.js} +1 -1
- package/dist/storybook/assets/onFind-C0l4Gew0.js +1 -0
- package/dist/storybook/assets/{onFind.stories-D64-QZqf.js → onFind.stories-DOTt9puO.js} +1 -1
- package/dist/storybook/assets/{onRemove.stories-BICsnIJL.js → onRemove.stories-CQ9ZC5dm.js} +1 -1
- package/dist/storybook/assets/{onVisible.stories-DpDZP9_5.js → onVisible.stories-Cbj5_Vz0.js} +1 -1
- package/dist/storybook/assets/style-map-DLXysq3r.js +1 -0
- package/dist/storybook/assets/{syntaxhighlighter-ED5Y7EFY-Bz_DuQj8.js → syntaxhighlighter-ED5Y7EFY-Bjjbl9ca.js} +1 -1
- package/dist/storybook/iframe.html +2 -2
- package/dist/storybook/index.json +1 -1
- package/dist/storybook/project.json +1 -1
- package/dist/tailwind-plugin-action-bar.d.ts +2 -0
- package/dist/tailwind-plugin-action-bar.d.ts.map +1 -0
- package/dist/tailwind-plugin-action-bar.js +120 -0
- package/dist/tailwind-plugin-action-bar.js.map +1 -0
- package/dist/tailwind-plugin-action-bar.ts +134 -0
- package/dist/tailwind-plugin-badge.js +4 -5
- package/dist/tailwind-plugin-badge.js.map +1 -1
- package/dist/tailwind-plugin-badge.ts +4 -5
- package/dist/tailwind-plugin-button.js +1 -0
- package/dist/tailwind-plugin-button.js.map +1 -1
- package/dist/tailwind-plugin-button.ts +1 -0
- package/dist/tailwind-plugin-pagination.js +13 -23
- package/dist/tailwind-plugin-pagination.js.map +1 -1
- package/dist/tailwind-plugin-pagination.ts +15 -25
- package/dist/tailwind-plugin-tabs.d.ts +2 -0
- package/dist/tailwind-plugin-tabs.d.ts.map +1 -0
- package/dist/tailwind-plugin-tabs.js +151 -0
- package/dist/tailwind-plugin-tabs.js.map +1 -0
- package/dist/tailwind-plugin-tabs.ts +162 -0
- package/dist/util/EventEmitterMixin.d.ts +16 -0
- package/dist/util/EventEmitterMixin.d.ts.map +1 -1
- package/dist/util/EventEmitterMixin.js.map +1 -1
- package/dist/util/RovingTabindexMixin.d.ts +38 -0
- package/dist/util/RovingTabindexMixin.d.ts.map +1 -0
- package/dist/util/RovingTabindexMixin.js +83 -0
- package/dist/util/RovingTabindexMixin.js.map +1 -0
- package/docs/components/ActionBar.md +71 -0
- package/docs/components/ActionItem.md +76 -0
- package/docs/components/Dropdown.md +7 -7
- package/docs/components/DropdownItem.md +9 -5
- package/docs/components/DropdownMenu.md +12 -12
- package/docs/components/Pagination.md +37 -34
- package/docs/components/README.md +4 -0
- package/docs/components/Tab.md +73 -0
- package/docs/components/Tabs.md +77 -0
- package/package.json +1 -1
- package/dist/storybook/assets/Pagination.stories-C4cLjS_9.js +0 -272
- package/dist/storybook/assets/ScrollShadow.stories-C3W5o9ZW.js +0 -17
- package/dist/storybook/assets/if-defined-BZFPaJjl.js +0 -1
- package/dist/storybook/assets/iframe-C5bIZMJ5.css +0 -1
- package/dist/storybook/assets/onFind-1l3EPW-I.js +0 -1
- package/dist/storybook/assets/style-map-CBrSnxRe.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropdownItem.js","sourceRoot":"","sources":["../../../src/components/dropdown/DropdownItem.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"DropdownItem.js","sourceRoot":"","sources":["../../../src/components/dropdown/DropdownItem.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ export interface DropdownMenuProps {
|
|
|
10
10
|
shortcuts?: boolean;
|
|
11
11
|
emptyMessage?: string;
|
|
12
12
|
}
|
|
13
|
-
declare const DropdownMenu_base: (new (...args: any[]) => import("../../util/EventEmitterMixin.js").EventEmitterMixinInterface) & (new (...args: any[]) => import("../../util/ReadyMixin.js").ReadyMixinInterface) & typeof LitElement;
|
|
13
|
+
declare const DropdownMenu_base: (new (...args: any[]) => import("../../util/RovingTabindexMixin.js").RovingTabindexInterface) & (new (...args: any[]) => import("../../util/EventEmitterMixin.js").EventEmitterMixinInterface) & (new (...args: any[]) => import("../../util/ReadyMixin.js").ReadyMixinInterface) & typeof LitElement;
|
|
14
14
|
/**
|
|
15
15
|
* A menu container component that provides keyboard navigation and ARIA menu semantics.
|
|
16
16
|
*
|
|
@@ -80,6 +80,8 @@ export default class DropdownMenu extends DropdownMenu_base {
|
|
|
80
80
|
/** @internal */
|
|
81
81
|
private _typeaheadTimeout;
|
|
82
82
|
createRenderRoot(): this;
|
|
83
|
+
/** Override: return menuitem elements from focusable items */
|
|
84
|
+
_getRovingTargets(): HTMLElement[];
|
|
83
85
|
connectedCallback(): void;
|
|
84
86
|
disconnectedCallback(): void;
|
|
85
87
|
firstUpdated(): void;
|
|
@@ -98,10 +100,6 @@ export default class DropdownMenu extends DropdownMenu_base {
|
|
|
98
100
|
focusLast(): void;
|
|
99
101
|
/** @internal */
|
|
100
102
|
private _handleKeydown;
|
|
101
|
-
/** Find the current focused item index */
|
|
102
|
-
private _getCurrentFocusIndex;
|
|
103
|
-
/** Find next index wrapping around, moving in direction (+1 or -1) */
|
|
104
|
-
private _findNextIndex;
|
|
105
103
|
/** Typeahead character matching with 500ms accumulation */
|
|
106
104
|
private _handleTypeahead;
|
|
107
105
|
/** Check whether the menu has zero focusable items */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropdownMenu.d.ts","sourceRoot":"","sources":["../../../src/components/dropdown/DropdownMenu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiB,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"DropdownMenu.d.ts","sourceRoot":"","sources":["../../../src/components/dropdown/DropdownMenu.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiB,MAAM,KAAK,CAAA;AAK/C,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AAEjD,MAAM,WAAW,iBAAiB;IAChC,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,iBAA8D;IACtG;;;OAGG;IAEH,IAAI,EAAE,MAAM,CAAK;IAEjB;;;OAGG;IAEH,MAAM,EAAE,OAAO,CAAQ;IAEvB;;;OAGG;IAEH,QAAQ,EAAE,OAAO,CAAQ;IAEzB;;;OAGG;IAEH,IAAI,EAAE,OAAO,CAAQ;IAErB;;;OAGG;IAEH,UAAU,EAAE,MAAM,CAAK;IAEvB;;;OAGG;IAEH,SAAS,EAAE,OAAO,CAAQ;IAE1B;;;OAGG;IAEH,SAAS,EAAE,OAAO,CAAQ;IAE1B;;;OAGG;IAEH,YAAY,EAAE,MAAM,CAAuB;IAE3C,gBAAgB;IAChB,OAAO,CAAC,gBAAgB,CAAK;IAE7B,gBAAgB;IAChB,OAAO,CAAC,iBAAiB,CAA6C;IAEtE,gBAAgB;IAKhB,8DAA8D;IAC9D,iBAAiB,IAAI,WAAW,EAAE;IAMlC,iBAAiB,IAAI,IAAI;IASzB,oBAAoB,IAAI,IAAI;IAQ5B,YAAY,IAAI,IAAI;IAKpB,OAAO,IAAI,IAAI;IASf,yDAAyD;IACzD,OAAO,CAAC,eAAe;IAavB,yCAAyC;IACzC,OAAO,CAAC,YAAY;IAIpB,sEAAsE;IACtE,OAAO,CAAC,kBAAkB;IAI1B,2DAA2D;IAC3D,SAAS,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IAKnC,gGAAgG;IAChG,UAAU,IAAI,IAAI;IAalB,2DAA2D;IAC3D,SAAS,IAAI,IAAI;IAMjB,gBAAgB;IAChB,OAAO,CAAC,cAAc,CAyDrB;IAED,2DAA2D;IAC3D,OAAO,CAAC,gBAAgB;IAgBxB,sDAAsD;IACtD,OAAO,KAAK,QAAQ,GAEnB;IAED,MAAM;CAMP;AAMD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,mBAAmB,EAAE,YAAY,CAAA;KAClC;CACF"}
|
|
@@ -8,6 +8,7 @@ import { LitElement, html, nothing } from 'lit';
|
|
|
8
8
|
import { property } from 'lit/decorators.js';
|
|
9
9
|
import { EventEmitterMixin } from '../../util/EventEmitterMixin.js';
|
|
10
10
|
import { ReadyMixin } from '../../util/ReadyMixin.js';
|
|
11
|
+
import { RovingTabindexMixin } from '../../util/RovingTabindexMixin.js';
|
|
11
12
|
/**
|
|
12
13
|
* A menu container component that provides keyboard navigation and ARIA menu semantics.
|
|
13
14
|
*
|
|
@@ -31,7 +32,7 @@ import { ReadyMixin } from '../../util/ReadyMixin.js';
|
|
|
31
32
|
* </btu-dropdown-menu>
|
|
32
33
|
* ```
|
|
33
34
|
*/
|
|
34
|
-
export default class DropdownMenu extends EventEmitterMixin(ReadyMixin(LitElement)) {
|
|
35
|
+
export default class DropdownMenu extends RovingTabindexMixin(EventEmitterMixin(ReadyMixin(LitElement))) {
|
|
35
36
|
constructor() {
|
|
36
37
|
super(...arguments);
|
|
37
38
|
/**
|
|
@@ -83,32 +84,30 @@ export default class DropdownMenu extends EventEmitterMixin(ReadyMixin(LitElemen
|
|
|
83
84
|
const focusable = this._getFocusableItems();
|
|
84
85
|
if (focusable.length === 0)
|
|
85
86
|
return;
|
|
86
|
-
const currentIndex = this._getCurrentFocusIndex(focusable);
|
|
87
87
|
switch (e.key) {
|
|
88
88
|
case 'ArrowDown': {
|
|
89
89
|
e.preventDefault();
|
|
90
|
-
|
|
91
|
-
this.focusItem(focusable[next]);
|
|
90
|
+
this._rovingNext();
|
|
92
91
|
break;
|
|
93
92
|
}
|
|
94
93
|
case 'ArrowUp': {
|
|
95
94
|
e.preventDefault();
|
|
96
|
-
|
|
97
|
-
this.focusItem(focusable[prev]);
|
|
95
|
+
this._rovingPrev();
|
|
98
96
|
break;
|
|
99
97
|
}
|
|
100
98
|
case 'Home': {
|
|
101
99
|
e.preventDefault();
|
|
102
|
-
this.
|
|
100
|
+
this._rovingFirst();
|
|
103
101
|
break;
|
|
104
102
|
}
|
|
105
103
|
case 'End': {
|
|
106
104
|
e.preventDefault();
|
|
107
|
-
this.
|
|
105
|
+
this._rovingLast();
|
|
108
106
|
break;
|
|
109
107
|
}
|
|
110
108
|
case 'Enter': {
|
|
111
109
|
e.preventDefault();
|
|
110
|
+
const currentIndex = this._rovingCurrentIndex();
|
|
112
111
|
if (currentIndex >= 0) {
|
|
113
112
|
focusable[currentIndex].activate();
|
|
114
113
|
}
|
|
@@ -116,6 +115,7 @@ export default class DropdownMenu extends EventEmitterMixin(ReadyMixin(LitElemen
|
|
|
116
115
|
}
|
|
117
116
|
case ' ': {
|
|
118
117
|
e.preventDefault();
|
|
118
|
+
const currentIndex = this._rovingCurrentIndex();
|
|
119
119
|
if (currentIndex >= 0) {
|
|
120
120
|
focusable[currentIndex].activate();
|
|
121
121
|
}
|
|
@@ -143,6 +143,12 @@ export default class DropdownMenu extends EventEmitterMixin(ReadyMixin(LitElemen
|
|
|
143
143
|
this.renderOptions.renderBefore ??= this.firstChild;
|
|
144
144
|
return this;
|
|
145
145
|
}
|
|
146
|
+
/** Override: return menuitem elements from focusable items */
|
|
147
|
+
_getRovingTargets() {
|
|
148
|
+
return this._getFocusableItems()
|
|
149
|
+
.map(item => item.querySelector('[role="menuitem"], [role="menuitemcheckbox"]'))
|
|
150
|
+
.filter(Boolean);
|
|
151
|
+
}
|
|
146
152
|
connectedCallback() {
|
|
147
153
|
super.connectedCallback();
|
|
148
154
|
this.setAttribute('role', 'menu');
|
|
@@ -194,17 +200,9 @@ export default class DropdownMenu extends EventEmitterMixin(ReadyMixin(LitElemen
|
|
|
194
200
|
}
|
|
195
201
|
/** @internal Focus a specific item by updating tabindex */
|
|
196
202
|
focusItem(item) {
|
|
197
|
-
const
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
if (el)
|
|
201
|
-
el.setAttribute('tabindex', '-1');
|
|
202
|
-
});
|
|
203
|
-
const target = item.querySelector('[role="menuitem"], [role="menuitemcheckbox"]');
|
|
204
|
-
if (target) {
|
|
205
|
-
target.setAttribute('tabindex', '0');
|
|
206
|
-
target.focus();
|
|
207
|
-
}
|
|
203
|
+
const index = this._getFocusableItems().indexOf(item);
|
|
204
|
+
if (index >= 0)
|
|
205
|
+
this._rovingFocus(index);
|
|
208
206
|
}
|
|
209
207
|
/** @internal Focus the first non-disabled focusable item (or first checked in checkbox mode) */
|
|
210
208
|
focusFirst() {
|
|
@@ -227,19 +225,6 @@ export default class DropdownMenu extends EventEmitterMixin(ReadyMixin(LitElemen
|
|
|
227
225
|
if (last)
|
|
228
226
|
this.focusItem(last);
|
|
229
227
|
}
|
|
230
|
-
/** Find the current focused item index */
|
|
231
|
-
_getCurrentFocusIndex(focusable) {
|
|
232
|
-
const active = document.activeElement;
|
|
233
|
-
return focusable.findIndex(item => item.contains(active));
|
|
234
|
-
}
|
|
235
|
-
/** Find next index wrapping around, moving in direction (+1 or -1) */
|
|
236
|
-
_findNextIndex(focusable, current, direction) {
|
|
237
|
-
const len = focusable.length;
|
|
238
|
-
if (current < 0)
|
|
239
|
-
return direction === 1 ? 0 : len - 1;
|
|
240
|
-
const next = (current + direction + len) % len;
|
|
241
|
-
return next;
|
|
242
|
-
}
|
|
243
228
|
/** Typeahead character matching with 500ms accumulation */
|
|
244
229
|
_handleTypeahead(char, focusable) {
|
|
245
230
|
this._typeaheadBuffer += char.toLowerCase();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DropdownMenu.js","sourceRoot":"","sources":["../../../src/components/dropdown/DropdownMenu.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"DropdownMenu.js","sourceRoot":"","sources":["../../../src/components/dropdown/DropdownMenu.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { LitElement } from 'lit';
|
|
2
2
|
import '../circular-progress/CircularProgress.js';
|
|
3
|
+
import '../dropdown/Dropdown.js';
|
|
4
|
+
import '../dropdown/DropdownItem.js';
|
|
5
|
+
import '../dropdown/DropdownMenu.js';
|
|
3
6
|
declare const Pagination_base: (new (...args: any[]) => import("../../util/EventEmitterMixin.js").EventEmitterMixinInterface) & (new (...args: any[]) => import("../../util/ReadyMixin.js").ReadyMixinInterface) & typeof LitElement;
|
|
4
7
|
/**
|
|
5
8
|
* A pagination component for navigating through paged content.
|
|
@@ -7,16 +10,35 @@ declare const Pagination_base: (new (...args: any[]) => import("../../util/Event
|
|
|
7
10
|
* Supports multiple layout variants (Search, Widget, Widget Small, Calendar)
|
|
8
11
|
* through configurable props and pseudo-slots.
|
|
9
12
|
*
|
|
13
|
+
* **Page size modes:**
|
|
14
|
+
*
|
|
15
|
+
* - **Built-in** (default): When no `slot="page-size"` is provided and `page-size-changer`
|
|
16
|
+
* is true, Pagination renders its own `btu-dropdown` from the `page-size-options` attribute.
|
|
17
|
+
* Events, label sync, and page size changes are managed automatically.
|
|
18
|
+
*
|
|
19
|
+
* - **Custom slot**: When a child has `slot="page-size"`, the built-in dropdown is suppressed.
|
|
20
|
+
* The consumer owns all behavior — event handling, label sync, etc. Use this for non-standard
|
|
21
|
+
* selectors like a calendar week/month toggle.
|
|
22
|
+
*
|
|
23
|
+
* **Page jumper modes:**
|
|
24
|
+
*
|
|
25
|
+
* - **Built-in**: When `page-jumper` is true and no `slot="jumper"` is provided, Pagination
|
|
26
|
+
* renders a dropdown with "Page 1" through "Page N" items. Fully reactive — updates
|
|
27
|
+
* automatically when page, page size, or total items change.
|
|
28
|
+
*
|
|
29
|
+
* - **Custom slot**: When a child has `slot="jumper"`, the built-in dropdown is suppressed.
|
|
30
|
+
* The consumer owns all behavior. Use this for custom jumper content like a "Today" button.
|
|
31
|
+
*
|
|
10
32
|
* @element btu-pagination
|
|
11
33
|
*
|
|
12
|
-
* @slot page-size - Custom page-size selector (replaces built-in
|
|
13
|
-
* @slot jumper - Custom jumper content (
|
|
34
|
+
* @slot page-size - Custom page-size selector (replaces built-in dropdown). Consumer manages all behavior.
|
|
35
|
+
* @slot jumper - Custom jumper content (replaces built-in page jumper dropdown). Consumer manages all behavior.
|
|
14
36
|
*
|
|
15
37
|
* @fires {CustomEvent} btu-pagination-ready - Fired after first render
|
|
16
38
|
* @fires {CustomEvent<{page: number, pageSize: number}>} btu-pagination-change - Fired on page navigation
|
|
17
39
|
* @fires {CustomEvent<{page: number, pageSize: number}>} btu-pagination-page-size-change - Fired on page size change
|
|
18
40
|
*
|
|
19
|
-
* @cssprop --pagination-color-background - Background color for
|
|
41
|
+
* @cssprop --pagination-color-background - Background color for dropdowns, buttons, and jumper
|
|
20
42
|
* @cssprop --pagination-color-foreground - Text/icon color
|
|
21
43
|
*/
|
|
22
44
|
export default class Pagination extends Pagination_base {
|
|
@@ -70,6 +92,12 @@ export default class Pagination extends Pagination_base {
|
|
|
70
92
|
* @attr hide-total-count
|
|
71
93
|
*/
|
|
72
94
|
hideTotalCount: boolean;
|
|
95
|
+
/**
|
|
96
|
+
* Show the page jumper dropdown. Intended for moderate page counts (under ~100 pages).
|
|
97
|
+
* For large datasets, use a custom `slot="jumper"` with a virtualized or input-based control.
|
|
98
|
+
* @attr page-jumper
|
|
99
|
+
*/
|
|
100
|
+
pageJumper: boolean;
|
|
73
101
|
/**
|
|
74
102
|
* Accessible label for the pagination nav landmark
|
|
75
103
|
* @attr
|
|
@@ -96,7 +124,8 @@ export default class Pagination extends Pagination_base {
|
|
|
96
124
|
private _goToNextPage;
|
|
97
125
|
private _goToLastPage;
|
|
98
126
|
private _manageBoundaryFocus;
|
|
99
|
-
private
|
|
127
|
+
private _onBuiltinPageSizeSelect;
|
|
128
|
+
private _onBuiltinJumperSelect;
|
|
100
129
|
render(): import("lit-html").TemplateResult<1>;
|
|
101
130
|
}
|
|
102
131
|
declare global {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pagination.d.ts","sourceRoot":"","sources":["../../../src/components/pagination/Pagination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiB,MAAM,KAAK,CAAA;AAK/C,OAAO,0CAA0C,CAAA;;
|
|
1
|
+
{"version":3,"file":"Pagination.d.ts","sourceRoot":"","sources":["../../../src/components/pagination/Pagination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiB,MAAM,KAAK,CAAA;AAK/C,OAAO,0CAA0C,CAAA;AACjD,OAAO,yBAAyB,CAAA;AAChC,OAAO,6BAA6B,CAAA;AACpC,OAAO,6BAA6B,CAAA;;AAGpC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,eAAyC;IAC/E;;;OAGG;IAEH,IAAI,SAAI;IAER;;;OAGG;IAEH,QAAQ,SAAI;IAEZ;;;OAGG;IAEH,QAAQ,UAAQ;IAEhB;;;OAGG;IAEH,OAAO,UAAQ;IAEf;;;OAGG;IAEH,gBAAgB,UAAO;IAEvB;;;OAGG;IAEH,eAAe,UAAO;IAEtB;;;OAGG;IAEH,eAAe,SAAe;IAE9B;;;OAGG;IAEH,UAAU,SAAI;IAEd;;;OAGG;IAEH,eAAe,UAAO;IAEtB;;;OAGG;IAEH,cAAc,UAAQ;IAEtB;;;;OAIG;IAEH,UAAU,UAAQ;IAElB;;;OAGG;IAEH,KAAK,EAAE,MAAM,GAAG,SAAS,CAAA;IAEzB,gBAAgB;IAChB,OAAO,CAAC,cAAc,CAAQ;IAE9B,gBAAgB;IAChB,OAAO,CAAC,cAAc,CAAe;IAErC,gBAAgB;IAChB,OAAO,CAAC,aAAa,CAAQ;IAE7B,OAAO,KAAK,sBAAsB,GAMjC;IAED,OAAO,KAAK,WAAW,GAGtB;IAED,OAAO,KAAK,UAAU,GAGrB;IAED,OAAO,KAAK,QAAQ,GAGnB;IAED,iBAAiB,IAAI,IAAI;IAOzB,gBAAgB;IAIhB,UAAU,IAAI,IAAI;IAmClB,YAAY,IAAI,IAAI;IAIpB,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAe5C,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,cAAc;IAMtB,OAAO,CAAC,iBAAiB;IAMzB,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,wBAAwB;IAiBhC,OAAO,CAAC,sBAAsB;IAQ9B,MAAM;CAoHP;AAMD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,gBAAgB,EAAE,UAAU,CAAA;KAC7B;CACF"}
|
|
@@ -10,6 +10,9 @@ import { EventEmitterMixin } from '../../util/EventEmitterMixin.js';
|
|
|
10
10
|
import { l10n } from '../../util/i18n.js';
|
|
11
11
|
import { ReadyMixin } from '../../util/ReadyMixin.js';
|
|
12
12
|
import '../circular-progress/CircularProgress.js';
|
|
13
|
+
import '../dropdown/Dropdown.js';
|
|
14
|
+
import '../dropdown/DropdownItem.js';
|
|
15
|
+
import '../dropdown/DropdownMenu.js';
|
|
13
16
|
import IconButton from '../icon-button/IconButton.js';
|
|
14
17
|
/**
|
|
15
18
|
* A pagination component for navigating through paged content.
|
|
@@ -17,16 +20,35 @@ import IconButton from '../icon-button/IconButton.js';
|
|
|
17
20
|
* Supports multiple layout variants (Search, Widget, Widget Small, Calendar)
|
|
18
21
|
* through configurable props and pseudo-slots.
|
|
19
22
|
*
|
|
23
|
+
* **Page size modes:**
|
|
24
|
+
*
|
|
25
|
+
* - **Built-in** (default): When no `slot="page-size"` is provided and `page-size-changer`
|
|
26
|
+
* is true, Pagination renders its own `btu-dropdown` from the `page-size-options` attribute.
|
|
27
|
+
* Events, label sync, and page size changes are managed automatically.
|
|
28
|
+
*
|
|
29
|
+
* - **Custom slot**: When a child has `slot="page-size"`, the built-in dropdown is suppressed.
|
|
30
|
+
* The consumer owns all behavior — event handling, label sync, etc. Use this for non-standard
|
|
31
|
+
* selectors like a calendar week/month toggle.
|
|
32
|
+
*
|
|
33
|
+
* **Page jumper modes:**
|
|
34
|
+
*
|
|
35
|
+
* - **Built-in**: When `page-jumper` is true and no `slot="jumper"` is provided, Pagination
|
|
36
|
+
* renders a dropdown with "Page 1" through "Page N" items. Fully reactive — updates
|
|
37
|
+
* automatically when page, page size, or total items change.
|
|
38
|
+
*
|
|
39
|
+
* - **Custom slot**: When a child has `slot="jumper"`, the built-in dropdown is suppressed.
|
|
40
|
+
* The consumer owns all behavior. Use this for custom jumper content like a "Today" button.
|
|
41
|
+
*
|
|
20
42
|
* @element btu-pagination
|
|
21
43
|
*
|
|
22
|
-
* @slot page-size - Custom page-size selector (replaces built-in
|
|
23
|
-
* @slot jumper - Custom jumper content (
|
|
44
|
+
* @slot page-size - Custom page-size selector (replaces built-in dropdown). Consumer manages all behavior.
|
|
45
|
+
* @slot jumper - Custom jumper content (replaces built-in page jumper dropdown). Consumer manages all behavior.
|
|
24
46
|
*
|
|
25
47
|
* @fires {CustomEvent} btu-pagination-ready - Fired after first render
|
|
26
48
|
* @fires {CustomEvent<{page: number, pageSize: number}>} btu-pagination-change - Fired on page navigation
|
|
27
49
|
* @fires {CustomEvent<{page: number, pageSize: number}>} btu-pagination-page-size-change - Fired on page size change
|
|
28
50
|
*
|
|
29
|
-
* @cssprop --pagination-color-background - Background color for
|
|
51
|
+
* @cssprop --pagination-color-background - Background color for dropdowns, buttons, and jumper
|
|
30
52
|
* @cssprop --pagination-color-foreground - Text/icon color
|
|
31
53
|
*/
|
|
32
54
|
export default class Pagination extends EventEmitterMixin(ReadyMixin(LitElement)) {
|
|
@@ -82,6 +104,12 @@ export default class Pagination extends EventEmitterMixin(ReadyMixin(LitElement)
|
|
|
82
104
|
* @attr hide-total-count
|
|
83
105
|
*/
|
|
84
106
|
this.hideTotalCount = false;
|
|
107
|
+
/**
|
|
108
|
+
* Show the page jumper dropdown. Intended for moderate page counts (under ~100 pages).
|
|
109
|
+
* For large datasets, use a custom `slot="jumper"` with a virtualized or input-based control.
|
|
110
|
+
* @attr page-jumper
|
|
111
|
+
*/
|
|
112
|
+
this.pageJumper = false;
|
|
85
113
|
/** @internal */
|
|
86
114
|
this._userInitiated = false;
|
|
87
115
|
/** @internal */
|
|
@@ -173,9 +201,6 @@ export default class Pagination extends EventEmitterMixin(ReadyMixin(LitElement)
|
|
|
173
201
|
if (pageSizeSlot) {
|
|
174
202
|
const container = this.querySelector('.btu-pagination-size-changer');
|
|
175
203
|
if (container && pageSizeSlot.parentElement !== container) {
|
|
176
|
-
const builtinSelect = container.querySelector('.btu-pagination-select');
|
|
177
|
-
if (builtinSelect)
|
|
178
|
-
builtinSelect.remove();
|
|
179
204
|
container.appendChild(pageSizeSlot);
|
|
180
205
|
}
|
|
181
206
|
}
|
|
@@ -216,19 +241,28 @@ export default class Pagination extends EventEmitterMixin(ReadyMixin(LitElement)
|
|
|
216
241
|
}
|
|
217
242
|
});
|
|
218
243
|
}
|
|
219
|
-
|
|
220
|
-
const
|
|
221
|
-
const newSize = parseInt(
|
|
244
|
+
_onBuiltinPageSizeSelect(e) {
|
|
245
|
+
const detail = e.detail;
|
|
246
|
+
const newSize = parseInt(detail.value, 10);
|
|
222
247
|
if (isNaN(newSize) || newSize <= 0)
|
|
223
248
|
return;
|
|
224
249
|
this._userInitiated = true;
|
|
225
250
|
this.pageSize = newSize;
|
|
226
|
-
//
|
|
251
|
+
// Explicitly clamp page here (not just in willUpdate) so both pageSize and
|
|
252
|
+
// page changes are batched in the same _userInitiated cycle, ensuring both
|
|
253
|
+
// btu-pagination-page-size-change and btu-pagination-change events fire.
|
|
227
254
|
const newTotalPages = Math.max(1, Math.ceil(this.totalItems / newSize));
|
|
228
255
|
if (this.page > newTotalPages) {
|
|
229
256
|
this.page = newTotalPages;
|
|
230
257
|
}
|
|
231
258
|
}
|
|
259
|
+
_onBuiltinJumperSelect(e) {
|
|
260
|
+
const page = parseInt(e.detail.value, 10);
|
|
261
|
+
if (!isNaN(page) && page >= 1 && page <= this._totalPages) {
|
|
262
|
+
this._userInitiated = true;
|
|
263
|
+
this.page = page;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
232
266
|
render() {
|
|
233
267
|
const isFirst = this.page <= 1;
|
|
234
268
|
const isLast = this.page >= this._totalPages;
|
|
@@ -239,14 +273,22 @@ export default class Pagination extends EventEmitterMixin(ReadyMixin(LitElement)
|
|
|
239
273
|
? html `<div class="btu-pagination-size-changer">
|
|
240
274
|
${this.pageSizeChanger && !this.querySelector('[slot="page-size"]')
|
|
241
275
|
? html `
|
|
242
|
-
<
|
|
243
|
-
|
|
276
|
+
<btu-dropdown
|
|
277
|
+
label="${this.pageSize}"
|
|
278
|
+
variant="secondary"
|
|
279
|
+
size="small"
|
|
244
280
|
aria-label="${l10n('pagination', 'itemsPerPage', 'Items per page')}"
|
|
245
|
-
@change=${this._onPageSizeChange}
|
|
246
281
|
?disabled=${this.disabled || this.loading}
|
|
282
|
+
@btu-dropdown-item-select=${this._onBuiltinPageSizeSelect}
|
|
247
283
|
>
|
|
248
|
-
|
|
249
|
-
|
|
284
|
+
<btu-dropdown-menu>
|
|
285
|
+
${options.map(o => html `<btu-dropdown-item
|
|
286
|
+
label="${o}"
|
|
287
|
+
value="${o}"
|
|
288
|
+
?selected=${o === this.pageSize}
|
|
289
|
+
></btu-dropdown-item>`)}
|
|
290
|
+
</btu-dropdown-menu>
|
|
291
|
+
</btu-dropdown>
|
|
250
292
|
`
|
|
251
293
|
: nothing}
|
|
252
294
|
</div>`
|
|
@@ -284,7 +326,26 @@ export default class Pagination extends EventEmitterMixin(ReadyMixin(LitElement)
|
|
|
284
326
|
@click=${this._goToPreviousPage}
|
|
285
327
|
></btu-icon-button>
|
|
286
328
|
|
|
287
|
-
|
|
329
|
+
${this.pageJumper && !this.querySelector('[slot="jumper"]')
|
|
330
|
+
? html `<div class="btu-pagination-jumper">
|
|
331
|
+
<btu-dropdown
|
|
332
|
+
label="${l10n('pagination', 'pageLabel', 'Page ___', [this.page])}"
|
|
333
|
+
variant="secondary"
|
|
334
|
+
size="small"
|
|
335
|
+
aria-label="${l10n('pagination', 'goToPage', 'Go to page')}"
|
|
336
|
+
?disabled=${this.disabled || this.loading}
|
|
337
|
+
@btu-dropdown-item-select=${this._onBuiltinJumperSelect}
|
|
338
|
+
>
|
|
339
|
+
<btu-dropdown-menu>
|
|
340
|
+
${Array.from({ length: this._totalPages }, (_, i) => html `<btu-dropdown-item
|
|
341
|
+
label="${l10n('pagination', 'pageLabel', 'Page ___', [i + 1])}"
|
|
342
|
+
value="${i + 1}"
|
|
343
|
+
?selected=${i + 1 === this.page}
|
|
344
|
+
></btu-dropdown-item>`)}
|
|
345
|
+
</btu-dropdown-menu>
|
|
346
|
+
</btu-dropdown>
|
|
347
|
+
</div>`
|
|
348
|
+
: html `<div class="btu-pagination-jumper"></div>`}
|
|
288
349
|
|
|
289
350
|
<btu-icon-button
|
|
290
351
|
icon-symbol="chevron-right"
|
|
@@ -342,6 +403,9 @@ __decorate([
|
|
|
342
403
|
__decorate([
|
|
343
404
|
property({ type: Boolean, attribute: 'hide-total-count' })
|
|
344
405
|
], Pagination.prototype, "hideTotalCount", void 0);
|
|
406
|
+
__decorate([
|
|
407
|
+
property({ type: Boolean, attribute: 'page-jumper' })
|
|
408
|
+
], Pagination.prototype, "pageJumper", void 0);
|
|
345
409
|
__decorate([
|
|
346
410
|
property({ type: String })
|
|
347
411
|
], Pagination.prototype, "label", void 0);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Pagination.js","sourceRoot":"","sources":["../../../src/components/pagination/Pagination.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,KAAK,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AACnE,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,0CAA0C,CAAA;AACjD,OAAO,UAAU,MAAM,8BAA8B,CAAA;AAErD
|
|
1
|
+
{"version":3,"file":"Pagination.js","sourceRoot":"","sources":["../../../src/components/pagination/Pagination.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { LitElement } from 'lit';
|
|
2
|
+
import '../badge/Badge.js';
|
|
3
|
+
import '../icon/Icon.js';
|
|
4
|
+
export interface TabProps {
|
|
5
|
+
name?: string;
|
|
6
|
+
label?: string;
|
|
7
|
+
description?: string;
|
|
8
|
+
disabled?: boolean;
|
|
9
|
+
iconName?: string;
|
|
10
|
+
iconPosition?: 'leading' | 'trailing';
|
|
11
|
+
iconOnly?: boolean;
|
|
12
|
+
error?: boolean;
|
|
13
|
+
badge?: string;
|
|
14
|
+
}
|
|
15
|
+
declare const Tab_base: (new (...args: any[]) => import("../../util/EventEmitterMixin.js").EventEmitterMixinInterface) & (new (...args: any[]) => import("../../util/ReadyMixin.js").ReadyMixinInterface) & typeof LitElement;
|
|
16
|
+
/**
|
|
17
|
+
* An individual tab within a tab group.
|
|
18
|
+
*
|
|
19
|
+
* Renders a button with role="tab" that participates in keyboard navigation
|
|
20
|
+
* and selection state managed by the parent `btu-tabs` container.
|
|
21
|
+
*
|
|
22
|
+
* @element btu-tab
|
|
23
|
+
*
|
|
24
|
+
* @fires {CustomEvent} btu-tab-ready - Fired after first render
|
|
25
|
+
* @fires {CustomEvent<{name: string}>} btu-tab-change - Fired when a non-disabled tab with a name is clicked
|
|
26
|
+
*
|
|
27
|
+
* @cssprop --badge-color-background - Background color of the count indicator badge (default: gray-50)
|
|
28
|
+
* @cssprop --badge-color-foreground - Text color of the count indicator badge (default: gray-700)
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```html
|
|
32
|
+
* <btu-tabs>
|
|
33
|
+
* <btu-tab name="main" label="Main"></btu-tab>
|
|
34
|
+
* <btu-tab name="seo" label="SEO"></btu-tab>
|
|
35
|
+
* <btu-tab name="styles" label="Styles" disabled></btu-tab>
|
|
36
|
+
* </btu-tabs>
|
|
37
|
+
* ```
|
|
38
|
+
*/
|
|
39
|
+
export default class Tab extends Tab_base {
|
|
40
|
+
static get tagName(): string;
|
|
41
|
+
/**
|
|
42
|
+
* Value that identifies this tab and links it to panel elements that share the same `name` attribute.
|
|
43
|
+
* @attr name
|
|
44
|
+
*/
|
|
45
|
+
name?: string;
|
|
46
|
+
/**
|
|
47
|
+
* Text displayed in the tab.
|
|
48
|
+
* @attr
|
|
49
|
+
*/
|
|
50
|
+
label?: string;
|
|
51
|
+
/**
|
|
52
|
+
* Accessibility description for screen readers.
|
|
53
|
+
* @attr
|
|
54
|
+
*/
|
|
55
|
+
description?: string;
|
|
56
|
+
/**
|
|
57
|
+
* Whether the tab is disabled and non-interactive.
|
|
58
|
+
* @attr
|
|
59
|
+
*/
|
|
60
|
+
disabled: boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Lucide icon name to display.
|
|
63
|
+
* @attr icon-name
|
|
64
|
+
*/
|
|
65
|
+
iconName?: string;
|
|
66
|
+
/**
|
|
67
|
+
* Placement of the icon relative to the label.
|
|
68
|
+
* @attr icon-position
|
|
69
|
+
*/
|
|
70
|
+
iconPosition: 'leading' | 'trailing';
|
|
71
|
+
/**
|
|
72
|
+
* When true, hides the label visually while maintaining accessibility.
|
|
73
|
+
* @attr icon-only
|
|
74
|
+
*/
|
|
75
|
+
iconOnly: boolean;
|
|
76
|
+
/**
|
|
77
|
+
* When true, displays an error badge on the tab.
|
|
78
|
+
* @attr
|
|
79
|
+
*/
|
|
80
|
+
error: boolean;
|
|
81
|
+
/**
|
|
82
|
+
* Displays a badge with the given value alongside the label.
|
|
83
|
+
* @attr
|
|
84
|
+
*/
|
|
85
|
+
badge?: string;
|
|
86
|
+
/** @internal Active state set by parent btu-tabs */
|
|
87
|
+
_active: boolean;
|
|
88
|
+
/** @internal Roving tabindex value set by parent btu-tabs */
|
|
89
|
+
_tabindex: number;
|
|
90
|
+
/** @internal Set by parent btu-tabs */
|
|
91
|
+
size: 'xs' | 'sm' | 'md' | 'lg';
|
|
92
|
+
/** @internal */
|
|
93
|
+
private initialClasses;
|
|
94
|
+
connectedCallback(): void;
|
|
95
|
+
createRenderRoot(): this;
|
|
96
|
+
willUpdate(): void;
|
|
97
|
+
firstUpdated(): void;
|
|
98
|
+
/** @internal */
|
|
99
|
+
private handleClick;
|
|
100
|
+
render(): import("lit-html").TemplateResult<1>;
|
|
101
|
+
}
|
|
102
|
+
declare global {
|
|
103
|
+
interface HTMLElementTagNameMap {
|
|
104
|
+
'btu-tab': Tab;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
export {};
|
|
108
|
+
//# sourceMappingURL=Tab.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tab.d.ts","sourceRoot":"","sources":["../../../src/components/tabs/Tab.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiB,MAAM,KAAK,CAAA;AAK/C,OAAO,mBAAmB,CAAA;AAC1B,OAAO,iBAAiB,CAAA;AAExB,MAAM,WAAW,QAAQ;IACvB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,YAAY,CAAC,EAAE,SAAS,GAAG,UAAU,CAAA;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,QAAyC;IACxE,MAAM,KAAK,OAAO,WAEjB;IAED;;;OAGG;IAEH,IAAI,CAAC,EAAE,MAAM,CAAA;IAEb;;;OAGG;IAEH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd;;;OAGG;IAEH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;OAGG;IAEH,QAAQ,UAAQ;IAEhB;;;OAGG;IAEH,QAAQ,CAAC,EAAE,MAAM,CAAA;IAEjB;;;OAGG;IAEH,YAAY,EAAE,SAAS,GAAG,UAAU,CAAY;IAEhD;;;OAGG;IAEH,QAAQ,UAAQ;IAEhB;;;OAGG;IAEH,KAAK,UAAQ;IAEb;;;OAGG;IAEH,KAAK,CAAC,EAAE,MAAM,CAAA;IAEd,oDAAoD;IACpD,OAAO,UAAQ;IAEf,6DAA6D;IAC7D,SAAS,SAAK;IAEd,uCAAuC;IACvC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAO;IAEtC,gBAAgB;IAChB,OAAO,CAAC,cAAc,CAAe;IAErC,iBAAiB,IAAI,IAAI;IAOzB,gBAAgB;IAIhB,UAAU,IAAI,IAAI;IAIlB,YAAY,IAAI,IAAI;IAIpB,gBAAgB;IAChB,OAAO,CAAC,WAAW;IAKnB,MAAM;CAkCP;AAMD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,SAAS,EAAE,GAAG,CAAA;KACf;CACF"}
|