@brightspot/ui 1.6.0 → 1.7.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/dropdown/Dropdown.d.ts +172 -0
- package/dist/components/dropdown/Dropdown.d.ts.map +1 -0
- package/dist/components/dropdown/Dropdown.js +407 -0
- package/dist/components/dropdown/Dropdown.js.map +1 -0
- package/dist/components/dropdown/DropdownItem.d.ts +108 -0
- package/dist/components/dropdown/DropdownItem.d.ts.map +1 -0
- package/dist/components/dropdown/DropdownItem.js +210 -0
- package/dist/components/dropdown/DropdownItem.js.map +1 -0
- package/dist/components/dropdown/DropdownMenu.d.ts +117 -0
- package/dist/components/dropdown/DropdownMenu.d.ts.map +1 -0
- package/dist/components/dropdown/DropdownMenu.js +295 -0
- package/dist/components/dropdown/DropdownMenu.js.map +1 -0
- package/dist/custom-elements.json +1097 -101
- package/dist/storybook/assets/Avatar.stories-BAaSlDF7.js +213 -0
- package/dist/storybook/assets/{AvatarGroup.stories-BBkQuFKk.js → AvatarGroup.stories-CgoDB4N4.js} +1 -1
- package/dist/storybook/assets/{Badge.stories-mFZsls7i.js → Badge.stories-uexxdmo6.js} +3 -3
- package/dist/storybook/assets/{Button.stories-CAWX17L1.js → Button.stories-T9UJUPHI.js} +1 -1
- package/dist/storybook/assets/{CircularProgress.stories-DBVt4Cg2.js → CircularProgress.stories-DW-VJA5j.js} +6 -6
- package/dist/storybook/assets/{ClipboardMixin.stories-BH9E-OI6.js → ClipboardMixin.stories-DzU4vxu5.js} +1 -1
- package/dist/storybook/assets/{Color-6BZIO3FS-CVnTzq2p.js → Color-6BZIO3FS-DRk2xjoN.js} +1 -1
- package/dist/storybook/assets/{Colors.stories-BFYmP0LL.js → Colors.stories-_UPdvuhY.js} +1 -1
- package/dist/storybook/assets/{ComponentStatesMixin-Cu7YXkU8.js → ComponentStatesMixin-BIu5SKeV.js} +1 -1
- package/dist/storybook/assets/{ComponentStatesMixin.stories-CAvyYt0H.js → ComponentStatesMixin.stories-C0FLaqLu.js} +1 -1
- package/dist/storybook/assets/{CopyToClipboard.stories-DbJZsp_L.js → CopyToClipboard.stories-D31zoUVI.js} +1 -1
- package/dist/storybook/assets/{Debounce.stories-BiFiH1K9.js → Debounce.stories-CgPPl5Ee.js} +1 -1
- package/dist/storybook/assets/{DocsRenderer-LL677BLK-Bq6G4eeC.js → DocsRenderer-LL677BLK-iwiwOzX9.js} +6 -6
- package/dist/storybook/assets/Dropdown.stories-CDcl6rmG.js +697 -0
- package/dist/storybook/assets/{Events.stories-BsDBxh8_.js → Events.stories-DS6UC9dZ.js} +1 -1
- package/dist/storybook/assets/{Heading.stories-zGzWgHVO.js → Heading.stories-CAQfEGE2.js} +1 -1
- package/dist/storybook/assets/{Icon.stories-B4T6sSwf.js → Icon.stories-C7msWlHs.js} +11 -11
- package/dist/storybook/assets/{LinearProgress.stories-qzqmUUwY.js → LinearProgress.stories-DBGJ5a2-.js} +7 -7
- package/dist/storybook/assets/{Pagination.stories-B6Q-7taJ.js → Pagination.stories-C58bGOdf.js} +1 -1
- package/dist/storybook/assets/{Popover.stories-CGkU0SGv.js → Popover.stories-C9zU0sEX.js} +5 -5
- package/dist/storybook/assets/{ReadyMixin-3YCzoG6W.js → ReadyMixin-qf8SAjMu.js} +1 -1
- package/dist/storybook/assets/{Rtc.stories-Y1MYTWAt.js → Rtc.stories-k9tKHNhD.js} +1 -1
- package/dist/storybook/assets/{ScrollShadow.stories-B9kSpLT1.js → ScrollShadow.stories-Bp42zyLH.js} +1 -1
- package/dist/storybook/assets/{Throttle.stories-BgvLDrS3.js → Throttle.stories-B5YU-Nms.js} +1 -1
- package/dist/storybook/assets/Tooltip.stories-COQcvOnL.js +143 -0
- package/dist/storybook/assets/{Widget.stories--JpqVyJe.js → Widget.stories-D3Sq5-_A.js} +13 -13
- package/dist/storybook/assets/{WithTooltip-65CFNBJE-DNbD9hAX.js → WithTooltip-65CFNBJE-Cox81aM_.js} +1 -1
- package/dist/storybook/assets/{formatter-EIJCOSYU-Cy8KIxab.js → formatter-EIJCOSYU-3ErcoV9q.js} +1 -1
- package/dist/storybook/assets/if-defined-Bv2_qPJg.js +1 -0
- package/dist/storybook/assets/{iframe-Dz6CxatW.js → iframe-CM6gBkqA.js} +152 -152
- package/dist/storybook/assets/{iframe-DiT9Iz2T.css → iframe-D3r2Ciu8.css} +1 -1
- package/dist/storybook/assets/{index-CebChkmF.js → index-iwfnMgqg.js} +1 -1
- package/dist/storybook/assets/{onFind.stories-nHDImx0x.js → onFind.stories-CDtoTN6S.js} +1 -1
- package/dist/storybook/assets/{onRemove.stories-CBxYVPwd.js → onRemove.stories-CSTeFCLU.js} +1 -1
- package/dist/storybook/assets/{onVisible.stories-D4Qewc9Y.js → onVisible.stories-C-yiw9n4.js} +1 -1
- package/dist/storybook/assets/{style-map-BgW9piaW.js → style-map-BJGdSb_D.js} +1 -1
- package/dist/storybook/assets/{syntaxhighlighter-ED5Y7EFY-CROW1475.js → syntaxhighlighter-ED5Y7EFY-BEudYlVi.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-button.js +10 -0
- package/dist/tailwind-plugin-button.js.map +1 -1
- package/dist/tailwind-plugin-button.ts +10 -0
- package/dist/tailwind-plugin-dropdown.d.ts +2 -0
- package/dist/tailwind-plugin-dropdown.d.ts.map +1 -0
- package/dist/tailwind-plugin-dropdown.js +223 -0
- package/dist/tailwind-plugin-dropdown.js.map +1 -0
- package/dist/tailwind-plugin-dropdown.ts +249 -0
- package/dist/util/EventEmitterMixin.d.ts +13 -0
- package/dist/util/EventEmitterMixin.d.ts.map +1 -1
- package/dist/util/EventEmitterMixin.js.map +1 -1
- package/docs/components/Avatar.md +62 -0
- package/docs/components/AvatarGroup.md +52 -0
- package/docs/components/Badge.md +58 -0
- package/docs/components/CircularProgress.md +55 -0
- package/docs/components/CopyToClipboard.md +54 -0
- package/docs/components/Dropdown.md +100 -0
- package/docs/components/DropdownItem.md +64 -0
- package/docs/components/DropdownMenu.md +81 -0
- package/docs/components/Icon.md +61 -0
- package/docs/components/LinearProgress.md +40 -0
- package/docs/components/Pagination.md +95 -0
- package/docs/components/Popover.md +71 -0
- package/docs/components/README.md +24 -0
- package/docs/components/Widget.md +79 -0
- package/package.json +3 -2
- package/dist/storybook/assets/Avatar.stories-CafEcy4T.js +0 -214
- package/dist/storybook/assets/Tooltip.stories-POo1M-ew.js +0 -143
- package/dist/storybook/assets/if-defined-CngSGyRu.js +0 -1
|
@@ -0,0 +1,249 @@
|
|
|
1
|
+
import plugin from 'tailwindcss/plugin'
|
|
2
|
+
import type { CSSRuleObject } from 'tailwindcss/types/config'
|
|
3
|
+
declare let module: any
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Dropdown menu component styling.
|
|
7
|
+
*
|
|
8
|
+
* Class Names:
|
|
9
|
+
*
|
|
10
|
+
* btu-dropdown-panel - Panel container with popover positioning
|
|
11
|
+
* btu-dropdown-item - Menu item row
|
|
12
|
+
* btu-dropdown-item-selected - Selected/checked item highlight
|
|
13
|
+
* btu-dropdown-item-disabled - Disabled item styling (no pointer-events: none)
|
|
14
|
+
* btu-dropdown-divider - Horizontal separator between item groups
|
|
15
|
+
* btu-dropdown-subhead - Group heading label
|
|
16
|
+
* btu-dropdown-header - Menu header bar
|
|
17
|
+
* btu-dropdown-checkbox - Checkbox indicator
|
|
18
|
+
* btu-dropdown-favorite - Favorite star button
|
|
19
|
+
* btu-dropdown-shortcut - Keyboard shortcut text
|
|
20
|
+
* btu-dropdown-chevron - Trigger chevron icon
|
|
21
|
+
*/
|
|
22
|
+
|
|
23
|
+
module.exports = plugin(function ({ addComponents, config, theme }) {
|
|
24
|
+
const itemFontSize = config('theme.fontSize.sm')?.[0] ?? '0.875rem'
|
|
25
|
+
const itemLineHeight = config('theme.fontSize.sm')?.[1] ?? '1.25rem'
|
|
26
|
+
const subheadFontSize = config('theme.fontSize.xs')?.[0] ?? '0.75rem'
|
|
27
|
+
|
|
28
|
+
const components: CSSRuleObject = {
|
|
29
|
+
/* ─── Panel ─── */
|
|
30
|
+
'.btu-dropdown-panel': {
|
|
31
|
+
backgroundColor: 'var(--dropdown-panel-background, var(--btu-theme-white))',
|
|
32
|
+
border: '1px solid var(--dropdown-panel-border-color, oklch(var(--btu-theme-gray-200)))',
|
|
33
|
+
borderRadius: `var(--dropdown-panel-border-radius, ${theme('borderRadius.lg')})`,
|
|
34
|
+
boxShadow: theme('boxShadow.lg'),
|
|
35
|
+
padding: '0.25rem 0',
|
|
36
|
+
overflow: 'auto',
|
|
37
|
+
maxHeight: 'min(20rem, 50vh)',
|
|
38
|
+
|
|
39
|
+
/* High-contrast border */
|
|
40
|
+
':root.is-moreContrast &': {
|
|
41
|
+
borderColor: 'var(--dropdown-panel-border-color, oklch(var(--btu-theme-gray-400)))',
|
|
42
|
+
},
|
|
43
|
+
'@media screen and (prefers-contrast: more) and (forced-colors: none)': {
|
|
44
|
+
':root:not(.is-normalContrast) &': {
|
|
45
|
+
borderColor: 'var(--dropdown-panel-border-color, oklch(var(--btu-theme-gray-400)))',
|
|
46
|
+
},
|
|
47
|
+
},
|
|
48
|
+
|
|
49
|
+
/* Exit state — hidden */
|
|
50
|
+
opacity: '0',
|
|
51
|
+
|
|
52
|
+
/* Transitions with allow-discrete for display/overlay */
|
|
53
|
+
transition: `opacity 150ms ease`,
|
|
54
|
+
'@supports (transition-behavior: allow-discrete)': {
|
|
55
|
+
transition: `opacity 150ms ease, display 150ms allow-discrete, overlay 150ms allow-discrete`,
|
|
56
|
+
},
|
|
57
|
+
|
|
58
|
+
/* Reduced motion */
|
|
59
|
+
'@media (prefers-reduced-motion: reduce)': {
|
|
60
|
+
transition: 'opacity 0.01ms ease',
|
|
61
|
+
'@supports (transition-behavior: allow-discrete)': {
|
|
62
|
+
transition: 'opacity 0.01ms ease, display 0.01ms allow-discrete, overlay 0.01ms allow-discrete',
|
|
63
|
+
},
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
/* Entry state — visible (popover open) */
|
|
67
|
+
'.btu-dropdown-panel:popover-open': {
|
|
68
|
+
opacity: '1',
|
|
69
|
+
},
|
|
70
|
+
/* Starting style for entry animation */
|
|
71
|
+
'@starting-style': {
|
|
72
|
+
'.btu-dropdown-panel:popover-open': {
|
|
73
|
+
opacity: '0',
|
|
74
|
+
},
|
|
75
|
+
} as any,
|
|
76
|
+
|
|
77
|
+
/* ─── Header ─── */
|
|
78
|
+
'.btu-dropdown-header': {
|
|
79
|
+
display: 'flex',
|
|
80
|
+
alignItems: 'center',
|
|
81
|
+
padding: '0.5rem 0.75rem',
|
|
82
|
+
fontSize: subheadFontSize,
|
|
83
|
+
fontWeight: theme('fontWeight.semibold'),
|
|
84
|
+
color: 'oklch(var(--btu-theme-gray-900))',
|
|
85
|
+
borderBottom: '1px solid var(--dropdown-divider-color, oklch(var(--btu-theme-gray-200)))',
|
|
86
|
+
marginBottom: '0.25rem',
|
|
87
|
+
},
|
|
88
|
+
|
|
89
|
+
/* ─── Empty state ─── */
|
|
90
|
+
'.btu-dropdown-empty': {
|
|
91
|
+
display: 'flex',
|
|
92
|
+
alignItems: 'center',
|
|
93
|
+
justifyContent: 'center',
|
|
94
|
+
padding: '1rem',
|
|
95
|
+
fontSize: itemFontSize,
|
|
96
|
+
color: 'var(--dropdown-empty-color, oklch(var(--btu-theme-gray-400)))',
|
|
97
|
+
},
|
|
98
|
+
|
|
99
|
+
/* ─── Item ─── */
|
|
100
|
+
'.btu-dropdown-item': {
|
|
101
|
+
display: 'flex',
|
|
102
|
+
alignItems: 'center',
|
|
103
|
+
gap: '0.5rem',
|
|
104
|
+
padding: '0.375rem 0.75rem',
|
|
105
|
+
fontSize: `var(--dropdown-item-font-size, ${itemFontSize})`,
|
|
106
|
+
lineHeight: itemLineHeight,
|
|
107
|
+
color: 'var(--dropdown-item-color, oklch(var(--btu-theme-gray-700)))',
|
|
108
|
+
backgroundColor: 'var(--dropdown-item-background, transparent)',
|
|
109
|
+
cursor: 'pointer',
|
|
110
|
+
userSelect: 'none',
|
|
111
|
+
outline: 'none',
|
|
112
|
+
whiteSpace: 'nowrap',
|
|
113
|
+
|
|
114
|
+
'&:hover': {
|
|
115
|
+
backgroundColor: 'var(--dropdown-item-hover-background, oklch(var(--btu-theme-gray-100)))',
|
|
116
|
+
color: 'var(--dropdown-item-hover-color, oklch(var(--btu-theme-gray-900)))',
|
|
117
|
+
},
|
|
118
|
+
'&:focus-visible': {
|
|
119
|
+
backgroundColor: 'var(--dropdown-item-hover-background, oklch(var(--btu-theme-gray-100)))',
|
|
120
|
+
color: 'var(--dropdown-item-hover-color, oklch(var(--btu-theme-gray-900)))',
|
|
121
|
+
},
|
|
122
|
+
},
|
|
123
|
+
|
|
124
|
+
'.btu-dropdown-item-selected': {
|
|
125
|
+
backgroundColor: 'var(--dropdown-item-selected-background, oklch(var(--btu-theme-primary-50)))',
|
|
126
|
+
color: 'var(--dropdown-item-selected-color, oklch(var(--btu-theme-primary-700)))',
|
|
127
|
+
'&:hover': {
|
|
128
|
+
backgroundColor: 'var(--dropdown-item-selected-background, oklch(var(--btu-theme-primary-50)))',
|
|
129
|
+
color: 'var(--dropdown-item-selected-color, oklch(var(--btu-theme-primary-700)))',
|
|
130
|
+
},
|
|
131
|
+
'&:focus-visible': {
|
|
132
|
+
backgroundColor: 'var(--dropdown-item-selected-background, oklch(var(--btu-theme-primary-50)))',
|
|
133
|
+
color: 'var(--dropdown-item-selected-color, oklch(var(--btu-theme-primary-700)))',
|
|
134
|
+
},
|
|
135
|
+
},
|
|
136
|
+
|
|
137
|
+
'.btu-dropdown-item-disabled': {
|
|
138
|
+
opacity: '0.5',
|
|
139
|
+
cursor: 'default',
|
|
140
|
+
|
|
141
|
+
':root.is-moreContrast &': {
|
|
142
|
+
opacity: '0.4',
|
|
143
|
+
},
|
|
144
|
+
'@media screen and (prefers-contrast: more) and (forced-colors: none)': {
|
|
145
|
+
':root:not(.is-normalContrast) &': {
|
|
146
|
+
opacity: '0.4',
|
|
147
|
+
},
|
|
148
|
+
},
|
|
149
|
+
},
|
|
150
|
+
|
|
151
|
+
/* ─── Checkbox indicator ─── */
|
|
152
|
+
'.btu-dropdown-checkbox': {
|
|
153
|
+
display: 'inline-flex',
|
|
154
|
+
alignItems: 'center',
|
|
155
|
+
justifyContent: 'center',
|
|
156
|
+
width: '1rem',
|
|
157
|
+
height: '1rem',
|
|
158
|
+
flexShrink: '0',
|
|
159
|
+
borderRadius: theme('borderRadius.sm'),
|
|
160
|
+
border: '1px solid oklch(var(--btu-theme-gray-300))',
|
|
161
|
+
backgroundColor: 'transparent',
|
|
162
|
+
color: 'transparent',
|
|
163
|
+
},
|
|
164
|
+
'.btu-dropdown-checkbox-checked': {
|
|
165
|
+
backgroundColor: 'oklch(var(--btu-theme-primary-600))',
|
|
166
|
+
borderColor: 'oklch(var(--btu-theme-primary-600))',
|
|
167
|
+
color: 'var(--btu-theme-white)',
|
|
168
|
+
},
|
|
169
|
+
|
|
170
|
+
/* ─── Divider ─── */
|
|
171
|
+
'.btu-dropdown-divider': {
|
|
172
|
+
borderTop: '1px solid var(--dropdown-divider-color, oklch(var(--btu-theme-gray-200)))',
|
|
173
|
+
margin: '0.25rem 0',
|
|
174
|
+
},
|
|
175
|
+
|
|
176
|
+
/* ─── Subhead ─── */
|
|
177
|
+
'.btu-dropdown-subhead': {
|
|
178
|
+
padding: '0.5rem 0.75rem 0.25rem',
|
|
179
|
+
fontSize: subheadFontSize,
|
|
180
|
+
fontWeight: theme('fontWeight.semibold'),
|
|
181
|
+
color: 'oklch(var(--btu-theme-gray-500))',
|
|
182
|
+
textTransform: 'uppercase',
|
|
183
|
+
letterSpacing: '0.05em',
|
|
184
|
+
lineHeight: '1rem',
|
|
185
|
+
},
|
|
186
|
+
|
|
187
|
+
/* ─── Favorite star ─── */
|
|
188
|
+
'button.btu-dropdown-favorite': {
|
|
189
|
+
flexShrink: '0',
|
|
190
|
+
marginLeft: 'auto',
|
|
191
|
+
color: 'oklch(var(--btu-theme-gray-400))',
|
|
192
|
+
'&:hover': {
|
|
193
|
+
color: 'oklch(var(--btu-theme-warning-500))',
|
|
194
|
+
},
|
|
195
|
+
},
|
|
196
|
+
'button.btu-dropdown-favorite-active': {
|
|
197
|
+
color: 'oklch(var(--btu-theme-warning-500))',
|
|
198
|
+
},
|
|
199
|
+
|
|
200
|
+
/* ─── Shortcut text ─── */
|
|
201
|
+
'.btu-dropdown-shortcut': {
|
|
202
|
+
marginLeft: 'auto',
|
|
203
|
+
fontSize: subheadFontSize,
|
|
204
|
+
color: 'oklch(var(--btu-theme-gray-400))',
|
|
205
|
+
},
|
|
206
|
+
|
|
207
|
+
/* ─── Disabled trigger ─── */
|
|
208
|
+
'btu-dropdown[disabled]': {
|
|
209
|
+
opacity: '0.5',
|
|
210
|
+
pointerEvents: 'none',
|
|
211
|
+
},
|
|
212
|
+
|
|
213
|
+
/* ─── Chevron ─── */
|
|
214
|
+
'.btu-dropdown-chevron': {
|
|
215
|
+
transition: 'transform 200ms ease',
|
|
216
|
+
flexShrink: '0',
|
|
217
|
+
},
|
|
218
|
+
/* Icon-only trigger with chevron: override square sizing so both icons fit */
|
|
219
|
+
'.btu-button-text-hidden:has(.btu-dropdown-chevron)': {
|
|
220
|
+
width: 'auto',
|
|
221
|
+
gap: '0.5rem',
|
|
222
|
+
},
|
|
223
|
+
'btu-dropdown[open] .btu-dropdown-chevron': {
|
|
224
|
+
transform: 'rotate(180deg)',
|
|
225
|
+
},
|
|
226
|
+
|
|
227
|
+
/* ─── Item icon container ─── */
|
|
228
|
+
'.btu-dropdown-item-icon': {
|
|
229
|
+
display: 'inline-flex',
|
|
230
|
+
flexShrink: '0',
|
|
231
|
+
},
|
|
232
|
+
|
|
233
|
+
/* ─── Item label ─── */
|
|
234
|
+
'.btu-dropdown-item-label': {
|
|
235
|
+
flex: '1',
|
|
236
|
+
overflow: 'hidden',
|
|
237
|
+
textOverflow: 'ellipsis',
|
|
238
|
+
},
|
|
239
|
+
|
|
240
|
+
/* ─── Selected check mark (non-checkbox mode) ─── */
|
|
241
|
+
'.btu-dropdown-check': {
|
|
242
|
+
display: 'inline-flex',
|
|
243
|
+
flexShrink: '0',
|
|
244
|
+
color: 'oklch(var(--btu-theme-primary-600))',
|
|
245
|
+
},
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
addComponents(components)
|
|
249
|
+
})
|
|
@@ -49,6 +49,19 @@ export interface CustomEventMap {
|
|
|
49
49
|
page: number;
|
|
50
50
|
pageSize: number;
|
|
51
51
|
}>;
|
|
52
|
+
'btu-dropdown-ready': CustomEvent<unknown>;
|
|
53
|
+
'btu-dropdown-show': CustomEvent<unknown>;
|
|
54
|
+
'btu-dropdown-hide': CustomEvent<unknown>;
|
|
55
|
+
'btu-dropdown-menu-ready': CustomEvent<unknown>;
|
|
56
|
+
'btu-dropdown-item-ready': CustomEvent<unknown>;
|
|
57
|
+
'btu-dropdown-item-select': CustomEvent<{
|
|
58
|
+
label: string;
|
|
59
|
+
selected: boolean;
|
|
60
|
+
}>;
|
|
61
|
+
'btu-dropdown-item-favorite': CustomEvent<{
|
|
62
|
+
label: string;
|
|
63
|
+
favorited: boolean;
|
|
64
|
+
}>;
|
|
52
65
|
}
|
|
53
66
|
interface CombinedEventMap extends HTMLElementEventMap, CustomEventMap {
|
|
54
67
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventEmitterMixin.d.ts","sourceRoot":"","sources":["../../src/util/EventEmitterMixin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AAEhC,KAAK,WAAW,CAAC,CAAC,GAAG,MAAM,IAAI,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAA;AACxD,KAAK,iBAAiB,CAAC,CAAC,IAAI,CAAC,SAAS,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AAEtE;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,uBAAuB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAC7C,0BAA0B,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAChD,mBAAmB,EAAE,WAAW,CAAC;QAAE,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC,CAAA;IAClD,kBAAkB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IACxC,yBAAyB,EAAE,WAAW,CAAC;QAAE,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACvD,wBAAwB,EAAE,WAAW,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC,CAAA;IACpE,wBAAwB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAC9C,2BAA2B,EAAE,WAAW,CAAC;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAC5D,iBAAiB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IACvC,sBAAsB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAC5C,qBAAqB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAC3C,gBAAgB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IACtC,oBAAoB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAC1C,uBAAuB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAC7C,kBAAkB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IACxC,kBAAkB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IACxC,kBAAkB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IACxC,kBAAkB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IACxC,kBAAkB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IACxC,6BAA6B,EAAE,WAAW,CAAC;QAAE,SAAS,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IAClE,+BAA+B,EAAE,WAAW,CAAC;QAAE,UAAU,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IACrE,sBAAsB,EAAE,WAAW,CAAC,OAAO,CAAC,CAAA;IAC5C,uBAAuB,EAAE,WAAW,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACxE,iCAAiC,EAAE,WAAW,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"EventEmitterMixin.d.ts","sourceRoot":"","sources":["../../src/util/EventEmitterMixin.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EventEmitterMixin.js","sourceRoot":"","sources":["../../src/util/EventEmitterMixin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"EventEmitterMixin.js","sourceRoot":"","sources":["../../src/util/EventEmitterMixin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,KAAK,CAAA;AA+DhC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAoC,UAAa,EAAE,EAAE;IACpF,MAAM,sBAAuB,SAAQ,UAAU;QAC7C;;;;WAIG;QACH,iBAAiB;YACf,KAAK,CAAC,iBAAiB,EAAE,CAAA;YACzB,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CACpB,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,CAAC,EAC5C,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,KAAK,EAAE,CAAC,CACnD,CAAA;QACH,CAAC;QAED;;;;WAIG;QACH,oBAAoB;YAClB,KAAK,CAAC,oBAAoB,EAAE,CAAA;YAC5B,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;QACvC,CAAC;QAED;;;;;;;;;;;;;;;;WAgBG;QACH,IAAI,CAAiC,IAAO,EAAE,MAA6C;YACzF,OAAO,IAAI,CAAC,aAAa,CACvB,IAAI,WAAW,CAAC,IAAI,EAAE;gBACpB,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,KAAK;gBACjB,QAAQ,EAAE,IAAI;gBACd,MAAM;aACP,CAAC,CACH,CAAA;QACH,CAAC;KACF;IACD,OAAO,sBAAqE,CAAA;AAC9E,CAAC,CAAA"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# `src/components/avatar/Avatar.ts`:
|
|
2
|
+
|
|
3
|
+
## class: `Avatar`, `btu-avatar`
|
|
4
|
+
|
|
5
|
+
### Superclass
|
|
6
|
+
|
|
7
|
+
| Name | Module | Package |
|
|
8
|
+
| ------------ | ------ | ------- |
|
|
9
|
+
| `LitElement` | | lit |
|
|
10
|
+
|
|
11
|
+
### Mixins
|
|
12
|
+
|
|
13
|
+
| Name | Module | Package |
|
|
14
|
+
| ------------------- | ------------------------------ | ------- |
|
|
15
|
+
| `TooltipMixin` | /src/util/TooltipMixin.js | |
|
|
16
|
+
| `EventEmitterMixin` | /src/util/EventEmitterMixin.js | |
|
|
17
|
+
| `ReadyMixin` | /src/util/ReadyMixin.js | |
|
|
18
|
+
|
|
19
|
+
### Fields
|
|
20
|
+
|
|
21
|
+
| Name | Privacy | Type | Default | Description | Inherited From |
|
|
22
|
+
| ---------- | ------- | ----------------------------------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- |
|
|
23
|
+
| `src` | | `string` | `''` | Image source URL | |
|
|
24
|
+
| `alt` | | `string` | `''` | Alt text for the image | |
|
|
25
|
+
| `fallback` | | `string` | `''` | Fallback text (typically user initials) | |
|
|
26
|
+
| `size` | | `'xs' \| 'sm' \| 'md' \| 'lg' \| 'xl' \| 'xxl'` | `'md'` | Size variant.
- 'xs': Extra small (1.5rem)
- 'sm': Small (2.25rem)
- 'md': Medium (2.5rem) - default
- 'lg': Large (3rem)
- 'xl': Extra large (3.5rem)
- 'xxl': Extra extra large (4rem) | |
|
|
27
|
+
|
|
28
|
+
### Events
|
|
29
|
+
|
|
30
|
+
| Name | Type | Description | Inherited From |
|
|
31
|
+
| ------------------------- | ------------------------------------------ | ------------------------------------------- | -------------- |
|
|
32
|
+
| `btu-avatar-ready` | `CustomEvent` | Fired after first render and initialization | |
|
|
33
|
+
| `btu-avatar-image-loaded` | `CustomEvent<{src: string}>` | Fired when image successfully loads | |
|
|
34
|
+
| `btu-avatar-image-error` | `CustomEvent<{src: string, error: Event}>` | Fired when image fails to load | |
|
|
35
|
+
|
|
36
|
+
### Attributes
|
|
37
|
+
|
|
38
|
+
| Name | Field | Inherited From |
|
|
39
|
+
| ---------- | -------- | -------------- |
|
|
40
|
+
| `src` | src | |
|
|
41
|
+
| `alt` | alt | |
|
|
42
|
+
| `fallback` | fallback | |
|
|
43
|
+
| `size` | size | |
|
|
44
|
+
|
|
45
|
+
### CSS Properties
|
|
46
|
+
|
|
47
|
+
| Name | Default | Description |
|
|
48
|
+
| -------------------------- | ------- | ----------------------------------------------- |
|
|
49
|
+
| `--avatar-size` | | Custom size (overrides size prop) |
|
|
50
|
+
| `--avatar-bg-color` | | Fallback background color (default: purple-600) |
|
|
51
|
+
| `--avatar-corner-rounding` | | How rounded is the avatar (default: circle) |
|
|
52
|
+
| `--avatar-ring-color` | | Optional ring border color |
|
|
53
|
+
| `--avatar-ring-width` | | Ring border width (default: 2px) |
|
|
54
|
+
|
|
55
|
+
<hr/>
|
|
56
|
+
|
|
57
|
+
## Exports
|
|
58
|
+
|
|
59
|
+
| Kind | Name | Declaration | Module | Package |
|
|
60
|
+
| --------------------------- | ------------ | ----------- | ------------------------------- | ------- |
|
|
61
|
+
| `js` | `default` | Avatar | src/components/avatar/Avatar.ts | |
|
|
62
|
+
| `custom-element-definition` | `btu-avatar` | Avatar | src/components/avatar/Avatar.ts | |
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
# `src/components/avatar/AvatarGroup.ts`:
|
|
2
|
+
|
|
3
|
+
## class: `AvatarGroup`, `btu-avatar-group`
|
|
4
|
+
|
|
5
|
+
### Superclass
|
|
6
|
+
|
|
7
|
+
| Name | Module | Package |
|
|
8
|
+
| ------------ | ------ | ------- |
|
|
9
|
+
| `LitElement` | | lit |
|
|
10
|
+
|
|
11
|
+
### Mixins
|
|
12
|
+
|
|
13
|
+
| Name | Module | Package |
|
|
14
|
+
| ------------------- | ------------------------------ | ------- |
|
|
15
|
+
| `EventEmitterMixin` | /src/util/EventEmitterMixin.js | |
|
|
16
|
+
| `ReadyMixin` | /src/util/ReadyMixin.js | |
|
|
17
|
+
|
|
18
|
+
### Fields
|
|
19
|
+
|
|
20
|
+
| Name | Privacy | Type | Default | Description | Inherited From |
|
|
21
|
+
| ------ | ------- | ---------------------- | ------- | ------------------------------------------------------------------- | -------------- |
|
|
22
|
+
| `max` | | `number \| undefined` | | Maximum number of visible avatars. Remaining avatars shown as "+N" | |
|
|
23
|
+
| `size` | | `'xs' \| 'sm' \| 'md'` | `'md'` | Size variant for all child avatars (unless individually overridden) | |
|
|
24
|
+
|
|
25
|
+
### Methods
|
|
26
|
+
|
|
27
|
+
| Name | Privacy | Description | Parameters | Return | Inherited From |
|
|
28
|
+
| ---------------- | ------- | --------------------------------------------------------------------------------------------------------------------------- | ---------- | ------ | -------------- |
|
|
29
|
+
| `processAvatars` | | Process all avatar children: apply size, handle overflow
Call this method when avatars are dynamically added or removed | | `void` | |
|
|
30
|
+
|
|
31
|
+
### Events
|
|
32
|
+
|
|
33
|
+
| Name | Type | Description | Inherited From |
|
|
34
|
+
| --------------------------- | ------------------------------- | ---------------------------------------------- | -------------- |
|
|
35
|
+
| `btu-avatar-group-ready` | `CustomEvent` | Fired after first render and initialization | |
|
|
36
|
+
| `btu-avatar-group-overflow` | `CustomEvent<{hidden: number}>` | Fired when avatars are hidden due to max limit | |
|
|
37
|
+
|
|
38
|
+
### Attributes
|
|
39
|
+
|
|
40
|
+
| Name | Field | Inherited From |
|
|
41
|
+
| ------ | ----- | -------------- |
|
|
42
|
+
| `max` | max | |
|
|
43
|
+
| `size` | size | |
|
|
44
|
+
|
|
45
|
+
<hr/>
|
|
46
|
+
|
|
47
|
+
## Exports
|
|
48
|
+
|
|
49
|
+
| Kind | Name | Declaration | Module | Package |
|
|
50
|
+
| --------------------------- | ------------------ | ----------- | ------------------------------------ | ------- |
|
|
51
|
+
| `js` | `default` | AvatarGroup | src/components/avatar/AvatarGroup.ts | |
|
|
52
|
+
| `custom-element-definition` | `btu-avatar-group` | AvatarGroup | src/components/avatar/AvatarGroup.ts | |
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
# `src/components/badge/Badge.ts`:
|
|
2
|
+
|
|
3
|
+
## class: `Badge`, `btu-badge`
|
|
4
|
+
|
|
5
|
+
### Superclass
|
|
6
|
+
|
|
7
|
+
| Name | Module | Package |
|
|
8
|
+
| ------------ | ------ | ------- |
|
|
9
|
+
| `LitElement` | | lit |
|
|
10
|
+
|
|
11
|
+
### Mixins
|
|
12
|
+
|
|
13
|
+
| Name | Module | Package |
|
|
14
|
+
| ------------------- | ------------------------------ | ------- |
|
|
15
|
+
| `EventEmitterMixin` | /src/util/EventEmitterMixin.js | |
|
|
16
|
+
| `ReadyMixin` | /src/util/ReadyMixin.js | |
|
|
17
|
+
|
|
18
|
+
### Fields
|
|
19
|
+
|
|
20
|
+
| Name | Privacy | Type | Default | Description | Inherited From |
|
|
21
|
+
| --------- | ------- | ---------------------------------------------------------- | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------- |
|
|
22
|
+
| `variant` | | `'info' \| 'primary' \| 'error' \| 'success' \| 'warning'` | `'info'` | Style of the badge.
- 'info': Informational (default)
- 'primary': Primary action or emphasis
- 'error': Error or danger state
- 'success': Success or completion state
- 'warning': Warning or caution state | |
|
|
23
|
+
| `dot` | | `boolean` | `false` | Should a dot be displayed before the label? | |
|
|
24
|
+
| `size` | | `string` | `'sm'` | Size variant.
- 'sm': Small (default)
- 'md': Medium
- 'lg': Large | |
|
|
25
|
+
|
|
26
|
+
### Events
|
|
27
|
+
|
|
28
|
+
| Name | Type | Description | Inherited From |
|
|
29
|
+
| ----------------- | ------------- | ------------------------------------------- | -------------- |
|
|
30
|
+
| `btu-badge-ready` | `CustomEvent` | Fired after first render and initialization | |
|
|
31
|
+
|
|
32
|
+
### Attributes
|
|
33
|
+
|
|
34
|
+
| Name | Field | Inherited From |
|
|
35
|
+
| --------- | ------- | -------------- |
|
|
36
|
+
| `variant` | variant | |
|
|
37
|
+
| `dot` | dot | |
|
|
38
|
+
| `size` | size | |
|
|
39
|
+
|
|
40
|
+
### CSS Properties
|
|
41
|
+
|
|
42
|
+
| Name | Default | Description |
|
|
43
|
+
| -------------------------- | ------- | ------------------------------------------------------------ |
|
|
44
|
+
| `--badge-color-foreground` | | Text color (overrides theme color) |
|
|
45
|
+
| `--badge-color-background` | | Background color (overrides theme color) |
|
|
46
|
+
| `--badge-radius-size` | | Border radius size (overrides shape default, default: 999px) |
|
|
47
|
+
| `--badge-px` | | Horizontal padding (overrides size default) |
|
|
48
|
+
| `--badge-py` | | Vertical padding (overrides size default) |
|
|
49
|
+
| `--badge-dot-size` | | Size of the dot affordance (default: 6px) |
|
|
50
|
+
|
|
51
|
+
<hr/>
|
|
52
|
+
|
|
53
|
+
## Exports
|
|
54
|
+
|
|
55
|
+
| Kind | Name | Declaration | Module | Package |
|
|
56
|
+
| --------------------------- | ----------- | ----------- | ----------------------------- | ------- |
|
|
57
|
+
| `js` | `default` | Badge | src/components/badge/Badge.ts | |
|
|
58
|
+
| `custom-element-definition` | `btu-badge` | Badge | src/components/badge/Badge.ts | |
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
# `src/components/circular-progress/CircularProgress.ts`:
|
|
2
|
+
|
|
3
|
+
## class: `CircularProgress`, `btu-circular-progress`
|
|
4
|
+
|
|
5
|
+
### Superclass
|
|
6
|
+
|
|
7
|
+
| Name | Module | Package |
|
|
8
|
+
| ------------ | ------ | ------- |
|
|
9
|
+
| `LitElement` | | lit |
|
|
10
|
+
|
|
11
|
+
### Mixins
|
|
12
|
+
|
|
13
|
+
| Name | Module | Package |
|
|
14
|
+
| ------------------- | ------------------------------ | ------- |
|
|
15
|
+
| `ProgressMixin` | /src/util/ProgressMixin.js | |
|
|
16
|
+
| `EventEmitterMixin` | /src/util/EventEmitterMixin.js | |
|
|
17
|
+
| `ReadyMixin` | /src/util/ReadyMixin.js | |
|
|
18
|
+
|
|
19
|
+
### Fields
|
|
20
|
+
|
|
21
|
+
| Name | Privacy | Type | Default | Description | Inherited From |
|
|
22
|
+
| --------------- | ------- | ---------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -------------- |
|
|
23
|
+
| `indeterminate` | | `boolean` | `true` | Whether the progress indicator is indeterminate (animated spinner).
When false, shows determinate progress based on the progress value. | |
|
|
24
|
+
| `size` | | `'sm' \| 'md' \| 'lg'` | `'sm'` | Size variant.
- 'sm': Small (16px) - default
- 'md': Medium (32px)
- 'lg': Large (48px) | |
|
|
25
|
+
|
|
26
|
+
### Events
|
|
27
|
+
|
|
28
|
+
| Name | Type | Description | Inherited From |
|
|
29
|
+
| ----------------------- | ------------- | ------------------------------------------- | -------------- |
|
|
30
|
+
| `btu-progress-ready` | `CustomEvent` | Fired after first render and initialization | |
|
|
31
|
+
| `btu-progress-complete` | `CustomEvent` | Fired when determinate progress reaches 100 | |
|
|
32
|
+
|
|
33
|
+
### Attributes
|
|
34
|
+
|
|
35
|
+
| Name | Field | Inherited From |
|
|
36
|
+
| --------------- | ------------- | -------------- |
|
|
37
|
+
| `indeterminate` | indeterminate | |
|
|
38
|
+
| `size` | size | |
|
|
39
|
+
|
|
40
|
+
### CSS Properties
|
|
41
|
+
|
|
42
|
+
| Name | Default | Description |
|
|
43
|
+
| ------------------ | ------- | ------------------------------------------------------- |
|
|
44
|
+
| `--progress-color` | | Custom progress indicator color (overrides theme color) |
|
|
45
|
+
| `--track-color` | | Track/background color (overrides default gray-100) |
|
|
46
|
+
| `--progress-size` | | Custom size in pixels (overrides size preset) |
|
|
47
|
+
|
|
48
|
+
<hr/>
|
|
49
|
+
|
|
50
|
+
## Exports
|
|
51
|
+
|
|
52
|
+
| Kind | Name | Declaration | Module | Package |
|
|
53
|
+
| --------------------------- | ----------------------- | ---------------- | ---------------------------------------------------- | ------- |
|
|
54
|
+
| `js` | `default` | CircularProgress | src/components/circular-progress/CircularProgress.ts | |
|
|
55
|
+
| `custom-element-definition` | `btu-circular-progress` | CircularProgress | src/components/circular-progress/CircularProgress.ts | |
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# `src/components/copy-to-clipboard/CopyToClipboard.ts`:
|
|
2
|
+
|
|
3
|
+
## class: `CopyToClipboard`, `btu-copy-to-clipboard`
|
|
4
|
+
|
|
5
|
+
### Superclass
|
|
6
|
+
|
|
7
|
+
| Name | Module | Package |
|
|
8
|
+
| ------------ | ------ | ------- |
|
|
9
|
+
| `LitElement` | | lit |
|
|
10
|
+
|
|
11
|
+
### Mixins
|
|
12
|
+
|
|
13
|
+
| Name | Module | Package |
|
|
14
|
+
| ---------------------- | --------------------------------- | ------- |
|
|
15
|
+
| `ClipboardMixin` | /src/util/ClipboardMixin.js | |
|
|
16
|
+
| `ComponentStatesMixin` | /src/util/ComponentStatesMixin.js | |
|
|
17
|
+
| `EventEmitterMixin` | /src/util/EventEmitterMixin.js | |
|
|
18
|
+
| `ReadyMixin` | /src/util/ReadyMixin.js | |
|
|
19
|
+
|
|
20
|
+
### Fields
|
|
21
|
+
|
|
22
|
+
| Name | Privacy | Type | Default | Description | Inherited From |
|
|
23
|
+
| --------------- | ------- | --------------------- | ------- | ----------------------------------------------------------------------------- | -------------- |
|
|
24
|
+
| `copydata` | | `string \| undefined` | | The text to be copied to the system clipboard. | |
|
|
25
|
+
| `buttonClasses` | | `string \| undefined` | | Custom CSS classes for the button. If provided, replaces the default classes. | |
|
|
26
|
+
|
|
27
|
+
### Methods
|
|
28
|
+
|
|
29
|
+
| Name | Privacy | Description | Parameters | Return | Inherited From |
|
|
30
|
+
| ------ | ------- | ------------------------------------------------------------------------------------------------------ | ---------- | ------ | -------------- |
|
|
31
|
+
| `copy` | | Copies the copydata to the system clipboard.
Displays a success state for 3 seconds after copying. | | | |
|
|
32
|
+
|
|
33
|
+
### Events
|
|
34
|
+
|
|
35
|
+
| Name | Type | Description | Inherited From |
|
|
36
|
+
| ---------------------- | ------------- | --------------------------------------------------- | -------------- |
|
|
37
|
+
| `btu-clipboard-ready` | `CustomEvent` | Fired after first render and initialization | |
|
|
38
|
+
| `btu-clipboard-copied` | `CustomEvent` | Fired when text is successfully copied to clipboard | |
|
|
39
|
+
|
|
40
|
+
### Attributes
|
|
41
|
+
|
|
42
|
+
| Name | Field | Inherited From |
|
|
43
|
+
| --------------- | ------------- | -------------- |
|
|
44
|
+
| `copydata` | copydata | |
|
|
45
|
+
| `buttonClasses` | buttonClasses | |
|
|
46
|
+
|
|
47
|
+
<hr/>
|
|
48
|
+
|
|
49
|
+
## Exports
|
|
50
|
+
|
|
51
|
+
| Kind | Name | Declaration | Module | Package |
|
|
52
|
+
| --------------------------- | ----------------------- | --------------- | --------------------------------------------------- | ------- |
|
|
53
|
+
| `js` | `default` | CopyToClipboard | src/components/copy-to-clipboard/CopyToClipboard.ts | |
|
|
54
|
+
| `custom-element-definition` | `btu-copy-to-clipboard` | CopyToClipboard | src/components/copy-to-clipboard/CopyToClipboard.ts | |
|