@brandsync/wc 1.15.0 → 1.16.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/CHANGELOG.md +7 -0
- package/REFERENCE.md +82 -0
- package/custom-elements.json +1293 -443
- package/dist/brandsync-wc/brandsync-wc.esm.js +1 -1
- package/dist/brandsync-wc/{p-87d44938.entry.js → p-0159f0da.entry.js} +1 -1
- package/dist/brandsync-wc/p-0228a584.entry.js +1 -0
- package/dist/brandsync-wc/{p-6df48031.entry.js → p-15f4c343.entry.js} +1 -1
- package/dist/brandsync-wc/{p-3c21d0bf.entry.js → p-298158da.entry.js} +1 -1
- package/dist/brandsync-wc/{p-1b4c0971.entry.js → p-38fe9d07.entry.js} +1 -1
- package/dist/brandsync-wc/{p-bc97ece8.entry.js → p-42b79d95.entry.js} +1 -1
- package/dist/brandsync-wc/{p-b9c0b481.entry.js → p-521d0fc2.entry.js} +1 -1
- package/dist/brandsync-wc/{p-1bf8fbbb.entry.js → p-67629178.entry.js} +1 -1
- package/dist/brandsync-wc/{p-e294f698.entry.js → p-76748795.entry.js} +1 -1
- package/dist/brandsync-wc/p-7dc59e0b.entry.js +1 -0
- package/dist/brandsync-wc/p-949a4270.entry.js +1 -0
- package/dist/brandsync-wc/{p-7a072e64.entry.js → p-a12691d8.entry.js} +1 -1
- package/dist/brandsync-wc/{p-ac9472ec.entry.js → p-cc4c8c1d.entry.js} +1 -1
- package/dist/brandsync-wc/p-e9afb553.entry.js +1 -0
- package/dist/cjs/brandsync-wc.cjs.js +1 -1
- package/dist/cjs/bs-inline-tab.cjs.entry.js +1 -1
- package/dist/cjs/bs-input_3.cjs.entry.js +2 -2
- package/dist/cjs/bs-list-item.cjs.entry.js +66 -0
- package/dist/cjs/bs-list.cjs.entry.js +103 -0
- package/dist/cjs/bs-message-list.cjs.entry.js +1 -1
- package/dist/cjs/bs-navigation-drawer-item.cjs.entry.js +1 -1
- package/dist/cjs/bs-navigation-drawer.cjs.entry.js +2 -2
- package/dist/cjs/bs-pagination.cjs.entry.js +1 -1
- package/dist/cjs/bs-radio.cjs.entry.js +1 -1
- package/dist/cjs/bs-source-link.cjs.entry.js +2 -2
- package/dist/cjs/bs-stepper.cjs.entry.js +1 -1
- package/dist/cjs/bs-tooltip.cjs.entry.js +1 -1
- package/dist/cjs/bs-tree-item.cjs.entry.js +94 -0
- package/dist/cjs/bs-tree.cjs.entry.js +197 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/collection/collection-manifest.json +4 -0
- package/dist/collection/components/bs-list/bs-list.cmp.test.js +99 -0
- package/dist/collection/components/bs-list/bs-list.css +15 -0
- package/dist/collection/components/bs-list/bs-list.js +241 -0
- package/dist/collection/components/bs-list/bs-list.stories.js +43 -0
- package/dist/collection/components/bs-list-item/bs-list-item.cmp.test.js +137 -0
- package/dist/collection/components/bs-list-item/bs-list-item.css +139 -0
- package/dist/collection/components/bs-list-item/bs-list-item.js +343 -0
- package/dist/collection/components/bs-list-item/bs-list-item.stories.js +86 -0
- package/dist/collection/components/bs-menu/bs-menu.js +1 -1
- package/dist/collection/components/bs-menu-item/bs-menu-item.cmp.test.js +6 -0
- package/dist/collection/components/bs-menu-item/bs-menu-item.js +1 -1
- package/dist/collection/components/bs-message-list/bs-message-list.js +1 -1
- package/dist/collection/components/bs-pagination/bs-pagination.js +1 -1
- package/dist/collection/components/bs-radio/bs-radio.js +1 -1
- package/dist/collection/components/bs-source-link/bs-source-link.js +2 -2
- package/dist/collection/components/bs-stepper/bs-stepper/bs-stepper.js +1 -1
- package/dist/collection/components/bs-tab/bs-inline-tab/bs-inline-tab.js +1 -1
- package/dist/collection/components/bs-tooltip/bs-tooltip.js +1 -1
- package/dist/collection/components/bs-tree/bs-tree.cmp.test.js +166 -0
- package/dist/collection/components/bs-tree/bs-tree.css +8 -0
- package/dist/collection/components/bs-tree/bs-tree.js +354 -0
- package/dist/collection/components/bs-tree/bs-tree.stories.js +34 -0
- package/dist/collection/components/bs-tree-item/bs-tree-item.cmp.test.js +187 -0
- package/dist/collection/components/bs-tree-item/bs-tree-item.css +161 -0
- package/dist/collection/components/bs-tree-item/bs-tree-item.js +305 -0
- package/dist/collection/components/bs-tree-item/bs-tree-item.stories.js +54 -0
- package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer/bs-navigation-drawer.js +2 -2
- package/dist/collection/components/ui-shell/bs-navigation-drawer/bs-navigation-drawer-item/bs-navigation-drawer-item.js +1 -1
- package/dist/components/bs-breadcrumb-overflow.js +1 -1
- package/dist/components/bs-carousel.js +1 -1
- package/dist/components/bs-chatbot-header.js +1 -1
- package/dist/components/bs-citation-preview.js +1 -1
- package/dist/components/bs-datepicker.js +1 -1
- package/dist/components/bs-inline-tab.js +1 -1
- package/dist/components/bs-input.js +1 -1
- package/dist/components/bs-list-item.d.ts +11 -0
- package/dist/components/bs-list-item.js +1 -0
- package/dist/components/bs-list.d.ts +11 -0
- package/dist/components/bs-list.js +1 -0
- package/dist/components/bs-menu-item.js +1 -1
- package/dist/components/bs-menu.js +1 -1
- package/dist/components/bs-message-list.js +1 -1
- package/dist/components/bs-navigation-drawer-item.js +1 -1
- package/dist/components/bs-navigation-drawer.js +1 -1
- package/dist/components/bs-pagination.js +1 -1
- package/dist/components/bs-radio.js +1 -1
- package/dist/components/bs-session-timeout.js +1 -1
- package/dist/components/bs-source-link.js +1 -1
- package/dist/components/bs-stepper.js +1 -1
- package/dist/components/bs-timepicker.js +1 -1
- package/dist/components/bs-tooltip-trigger.js +1 -1
- package/dist/components/bs-tooltip.js +1 -1
- package/dist/components/bs-tree-item.d.ts +11 -0
- package/dist/components/bs-tree-item.js +1 -0
- package/dist/components/bs-tree.d.ts +11 -0
- package/dist/components/bs-tree.js +1 -0
- package/dist/components/p-BaJEv6rL.js +1 -0
- package/dist/components/{p-BvYkZcOU.js → p-Bb1-2M8K.js} +1 -1
- package/dist/components/{p-Bqe4waKJ.js → p-BdkE4auv.js} +1 -1
- package/dist/components/{p-ElcsxZSh.js → p-C93ymWm7.js} +1 -1
- package/dist/components/{p-ByKcHsj0.js → p-DFKc3lLA.js} +1 -1
- package/dist/components/{p-B3l4WpgS.js → p-J9cxcDhY.js} +1 -1
- package/dist/esm/brandsync-wc.js +1 -1
- package/dist/esm/bs-inline-tab.entry.js +1 -1
- package/dist/esm/bs-input_3.entry.js +2 -2
- package/dist/esm/bs-list-item.entry.js +64 -0
- package/dist/esm/bs-list.entry.js +101 -0
- package/dist/esm/bs-message-list.entry.js +1 -1
- package/dist/esm/bs-navigation-drawer-item.entry.js +1 -1
- package/dist/esm/bs-navigation-drawer.entry.js +2 -2
- package/dist/esm/bs-pagination.entry.js +1 -1
- package/dist/esm/bs-radio.entry.js +1 -1
- package/dist/esm/bs-source-link.entry.js +2 -2
- package/dist/esm/bs-stepper.entry.js +1 -1
- package/dist/esm/bs-tooltip.entry.js +1 -1
- package/dist/esm/bs-tree-item.entry.js +92 -0
- package/dist/esm/bs-tree.entry.js +195 -0
- package/dist/esm/loader.js +1 -1
- package/dist/types/components/bs-list/bs-list.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-list/bs-list.d.ts +42 -0
- package/dist/types/components/bs-list/bs-list.stories.d.ts +13 -0
- package/dist/types/components/bs-list-item/bs-list-item.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-list-item/bs-list-item.d.ts +85 -0
- package/dist/types/components/bs-list-item/bs-list-item.stories.d.ts +22 -0
- package/dist/types/components/bs-tree/bs-tree.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-tree/bs-tree.d.ts +53 -0
- package/dist/types/components/bs-tree/bs-tree.stories.d.ts +11 -0
- package/dist/types/components/bs-tree-item/bs-tree-item.cmp.test.d.ts +1 -0
- package/dist/types/components/bs-tree-item/bs-tree-item.d.ts +60 -0
- package/dist/types/components/bs-tree-item/bs-tree-item.stories.d.ts +19 -0
- package/dist/types/components.d.ts +675 -0
- package/package.json +1 -1
- package/reference.d.ts +12 -0
- package/reference.json +250 -0
- package/dist/components/p-Mf1jorXP.js +0 -1
|
@@ -2309,6 +2309,125 @@ export namespace Components {
|
|
|
2309
2309
|
*/
|
|
2310
2310
|
"value": string;
|
|
2311
2311
|
}
|
|
2312
|
+
/**
|
|
2313
|
+
* A vertical list of `bs-list-item` rows, optionally single-select.
|
|
2314
|
+
* ## When to use
|
|
2315
|
+
* - Records, people, files or options shown as rows with leading media and descriptions.
|
|
2316
|
+
* - `selectable` for a single-choice list (e.g. a conversation list next to a detail pane).
|
|
2317
|
+
* ## When not to use
|
|
2318
|
+
* - A popup list of actions -- use `bs-menu`.
|
|
2319
|
+
* - Navigation between app sections -- use `bs-navigation-drawer`.
|
|
2320
|
+
* - Multi-column, sortable or paged data -- use `bs-data-table`.
|
|
2321
|
+
* Built from `bs-list-item` children (light DOM; the list never moves nodes).
|
|
2322
|
+
* @prop --bs-list-gap - Gap between rows. Defaults to `0`.
|
|
2323
|
+
* @prop --bs-list-divider-color - Divider colour when `dividers` is set. Aliased to `--bs-border-neutral-container`.
|
|
2324
|
+
*/
|
|
2325
|
+
interface BsList {
|
|
2326
|
+
/**
|
|
2327
|
+
* Accessible name of the list.
|
|
2328
|
+
* @default null
|
|
2329
|
+
*/
|
|
2330
|
+
"ariaLabel": string | null;
|
|
2331
|
+
/**
|
|
2332
|
+
* Draws a 1px separator between rows.
|
|
2333
|
+
* @default false
|
|
2334
|
+
*/
|
|
2335
|
+
"dividers": boolean;
|
|
2336
|
+
/**
|
|
2337
|
+
* Single-selection mode: role="listbox", rows are `option`s with roving tabindex.
|
|
2338
|
+
* @default false
|
|
2339
|
+
*/
|
|
2340
|
+
"selectable": boolean;
|
|
2341
|
+
/**
|
|
2342
|
+
* `value` of the selected item (selectable mode).
|
|
2343
|
+
* @default null
|
|
2344
|
+
*/
|
|
2345
|
+
"value": string | null;
|
|
2346
|
+
}
|
|
2347
|
+
/**
|
|
2348
|
+
* A single row of a list: optional leading media (avatar, icon, image), a label, a description and
|
|
2349
|
+
* optional support text, and an optional trailing caret or custom trailing content.
|
|
2350
|
+
* ## When to use
|
|
2351
|
+
* - As a child of `bs-list`, one per record, person, file or option.
|
|
2352
|
+
* - Standalone as a plain information row (non-interactive), or with `interactive` as a button-like row.
|
|
2353
|
+
* ## When not to use
|
|
2354
|
+
* - A popup list of actions -- use `bs-menu` / `bs-menu-item`.
|
|
2355
|
+
* - App navigation with an active route -- use `bs-navigation-drawer-item`.
|
|
2356
|
+
* - Tabular data with columns, sorting or paging -- use `bs-data-table`.
|
|
2357
|
+
* Composed from: leading media (`bs-avatar`) and trailing controls (`bs-icon-button`) are supplied by the
|
|
2358
|
+
* consumer through the `leading` and `trailing` slots; the row itself only reserves layout. The default
|
|
2359
|
+
* trailing caret is inline SVG.
|
|
2360
|
+
* Roles are driven by the parent `bs-list` (via `selectionRole`). Standalone, the row has no role
|
|
2361
|
+
* (`listitem` is only valid inside a list) unless `interactive` is set, which makes it a focusable
|
|
2362
|
+
* `role="button"`.
|
|
2363
|
+
* @prop --bs-list-item-min-height - Minimum row height. Aliased to `--bs-spacing-1000`.
|
|
2364
|
+
* @prop --bs-list-item-padding-y - Aliased to `--bs-spacing-150`.
|
|
2365
|
+
* @prop --bs-list-item-padding-x - Aliased to `--bs-spacing-200`.
|
|
2366
|
+
* @prop --bs-list-item-gap - Gap between leading, content and trailing. Aliased to `--bs-spacing-200`.
|
|
2367
|
+
* @prop --bs-list-item-content-gap - Gap between text lines. Aliased to `--bs-spacing-25`.
|
|
2368
|
+
* @prop --bs-list-item-radius - Aliased to `--bs-border-radius-100`.
|
|
2369
|
+
* @prop --bs-list-item-bg - Enabled background. `transparent`.
|
|
2370
|
+
* @prop --bs-list-item-bg-hover - Aliased to `--bs-surface-hover`.
|
|
2371
|
+
* @prop --bs-list-item-bg-pressed - Aliased to `--bs-surface-pressed`.
|
|
2372
|
+
* @prop --bs-list-item-bg-focus - Aliased to `--bs-surface-focus`.
|
|
2373
|
+
* @prop --bs-list-item-bg-selected - Aliased to `--bs-surface-selected`.
|
|
2374
|
+
* @prop --bs-list-item-bg-selected-hover - Aliased to `--bs-surface-selected-hover`.
|
|
2375
|
+
* @prop --bs-list-item-bg-selected-pressed - Aliased to `--bs-surface-selected-pressed`.
|
|
2376
|
+
* @prop --bs-list-item-bg-selected-focus - Aliased to `--bs-surface-selected-focus`.
|
|
2377
|
+
* @prop --bs-list-item-bg-disabled - Aliased to `--bs-surface-action-disabled`.
|
|
2378
|
+
* @prop --bs-list-item-color - Text colour. Aliased to `--bs-text-default`.
|
|
2379
|
+
* @prop --bs-list-item-color-disabled - Aliased to `--bs-text-on-disabled`.
|
|
2380
|
+
* @prop --bs-list-item-focus-ring - Focus ring colour. Aliased to `--bs-border-neutral-focus`.
|
|
2381
|
+
* @prop --bs-list-item-image-width - Leading image width. 72px.
|
|
2382
|
+
* @prop --bs-list-item-image-height - Leading image height. 56px.
|
|
2383
|
+
*/
|
|
2384
|
+
interface BsListItem {
|
|
2385
|
+
/**
|
|
2386
|
+
* Second text line (the "paragraph").
|
|
2387
|
+
* @default null
|
|
2388
|
+
*/
|
|
2389
|
+
"description": string | null;
|
|
2390
|
+
/**
|
|
2391
|
+
* Disables the row: dimmed, not focusable, no click event.
|
|
2392
|
+
* @default false
|
|
2393
|
+
*/
|
|
2394
|
+
"disabled": boolean;
|
|
2395
|
+
/**
|
|
2396
|
+
* Makes a standalone row a focusable `role="button"` that emits `bsItemClick`.
|
|
2397
|
+
* @default false
|
|
2398
|
+
*/
|
|
2399
|
+
"interactive": boolean;
|
|
2400
|
+
/**
|
|
2401
|
+
* First text line (semibold).
|
|
2402
|
+
* @default null
|
|
2403
|
+
*/
|
|
2404
|
+
"label": string | null;
|
|
2405
|
+
/**
|
|
2406
|
+
* Marks the row as selected. Managed by the parent `bs-list` when it is `selectable`.
|
|
2407
|
+
* @default false
|
|
2408
|
+
*/
|
|
2409
|
+
"selected": boolean;
|
|
2410
|
+
/**
|
|
2411
|
+
* Set by the parent `bs-list`: `listitem` (plain list) or `option` (selectable list). Do not set by hand.
|
|
2412
|
+
* @default null
|
|
2413
|
+
*/
|
|
2414
|
+
"selectionRole": 'listitem' | 'option' | null;
|
|
2415
|
+
/**
|
|
2416
|
+
* Shows a trailing caret (unless the `trailing` slot has content).
|
|
2417
|
+
* @default false
|
|
2418
|
+
*/
|
|
2419
|
+
"showArrow": boolean;
|
|
2420
|
+
/**
|
|
2421
|
+
* Optional third text line.
|
|
2422
|
+
* @default null
|
|
2423
|
+
*/
|
|
2424
|
+
"supportText": string | null;
|
|
2425
|
+
/**
|
|
2426
|
+
* Identifies the item; emitted by `bsItemClick` and matched against `bs-list`'s `value`.
|
|
2427
|
+
* @default null
|
|
2428
|
+
*/
|
|
2429
|
+
"value": string | null;
|
|
2430
|
+
}
|
|
2312
2431
|
/**
|
|
2313
2432
|
* The BrandSync brand mark, as its own standalone component -- shared by `bs-navigation-header`
|
|
2314
2433
|
* and `bs-navigation-drawer`, which used to each render their own duplicated copy of this SVG
|
|
@@ -4089,6 +4208,87 @@ export namespace Components {
|
|
|
4089
4208
|
*/
|
|
4090
4209
|
"text": string;
|
|
4091
4210
|
}
|
|
4211
|
+
/**
|
|
4212
|
+
* A hierarchical list of `bs-tree-item` rows with single selection, expand/collapse and the
|
|
4213
|
+
* WAI-ARIA tree keyboard pattern.
|
|
4214
|
+
* The tree owns `role="tree"`, the roving `tabindex` (exactly one enabled, visible item is
|
|
4215
|
+
* tabbable: the selected one, otherwise the first), selection (kept in sync with each item's
|
|
4216
|
+
* `selected`) and keyboard navigation over the visible (rendered, non-disabled) items. Items own
|
|
4217
|
+
* their expansion state and emit `bsSelect` / `bsToggle`.
|
|
4218
|
+
* Built from: `bs-tree-item` rows.
|
|
4219
|
+
*/
|
|
4220
|
+
interface BsTree {
|
|
4221
|
+
/**
|
|
4222
|
+
* Accessible name of the tree. Bound onto the internal `role="tree"` element (an `aria-label` on the host would not reach it).
|
|
4223
|
+
* @default null
|
|
4224
|
+
*/
|
|
4225
|
+
"ariaLabel": string | null;
|
|
4226
|
+
/**
|
|
4227
|
+
* Collapses every parent item.
|
|
4228
|
+
*/
|
|
4229
|
+
"collapseAll": () => Promise<void>;
|
|
4230
|
+
/**
|
|
4231
|
+
* Expands every parent item.
|
|
4232
|
+
*/
|
|
4233
|
+
"expandAll": () => Promise<void>;
|
|
4234
|
+
/**
|
|
4235
|
+
* When `false`, rows do not select (clicks and Enter/Space do nothing) but parents still expand and collapse.
|
|
4236
|
+
* @default true
|
|
4237
|
+
*/
|
|
4238
|
+
"selectable": boolean;
|
|
4239
|
+
/**
|
|
4240
|
+
* The `value` (or, when empty, the `label`) of the selected item. Two-way synced with each item's `selected` (single selection). Setting it from code does not emit `bsChange`.
|
|
4241
|
+
* @default ''
|
|
4242
|
+
*/
|
|
4243
|
+
"value": string;
|
|
4244
|
+
}
|
|
4245
|
+
/**
|
|
4246
|
+
* A single row of a `bs-tree`. An item that contains child `bs-tree-item` elements is a parent
|
|
4247
|
+
* (it gets an expand/collapse caret and a folder icon); an item without children is a leaf (no
|
|
4248
|
+
* caret, file icon).
|
|
4249
|
+
* The host carries `role="treeitem"` and the `aria-*` state; the owning `bs-tree` manages the
|
|
4250
|
+
* roving `tabindex`, selection and keyboard navigation. Nesting depth is computed automatically
|
|
4251
|
+
* from the number of ancestor `bs-tree-item` elements and exposed as `aria-level` -- it is not a
|
|
4252
|
+
* prop. Clicking the row selects it; clicking the caret (or pressing Right/Left in a tree) toggles
|
|
4253
|
+
* expansion -- the two are deliberately separate.
|
|
4254
|
+
* Built from: inline SVG icons only (no existing `bs-*` component covers a tree row).
|
|
4255
|
+
*/
|
|
4256
|
+
interface BsTreeItem {
|
|
4257
|
+
/**
|
|
4258
|
+
* Disables the row: not focusable, ignores clicks, dimmed. Reflected.
|
|
4259
|
+
* @default false
|
|
4260
|
+
*/
|
|
4261
|
+
"disabled": boolean;
|
|
4262
|
+
/**
|
|
4263
|
+
* Whether the child items are shown. Only meaningful for parents. Mutable: the caret, the keyboard and the owning tree toggle it. Reflected.
|
|
4264
|
+
* @default false
|
|
4265
|
+
*/
|
|
4266
|
+
"expanded": boolean;
|
|
4267
|
+
/**
|
|
4268
|
+
* The row's text. Use the `label` slot for rich content.
|
|
4269
|
+
* @default ''
|
|
4270
|
+
*/
|
|
4271
|
+
"label": string;
|
|
4272
|
+
/**
|
|
4273
|
+
* Marks the row as selected. Owned by the tree (single selection, synced with its `value`). Reflected.
|
|
4274
|
+
* @default false
|
|
4275
|
+
*/
|
|
4276
|
+
"selected": boolean;
|
|
4277
|
+
/**
|
|
4278
|
+
* Sets `expanded` as a user action: updates the prop and emits `bsToggle`. No-op for leaves, disabled items, or when the value would not change.
|
|
4279
|
+
*/
|
|
4280
|
+
"setExpanded": (next: boolean) => Promise<void>;
|
|
4281
|
+
/**
|
|
4282
|
+
* Shows the leading icon (default folder / file, or the `icon` slot).
|
|
4283
|
+
* @default true
|
|
4284
|
+
*/
|
|
4285
|
+
"showIcon": boolean;
|
|
4286
|
+
/**
|
|
4287
|
+
* Identifier used in events and for the tree's `value`. Falls back to `label` when empty.
|
|
4288
|
+
* @default ''
|
|
4289
|
+
*/
|
|
4290
|
+
"value": string;
|
|
4291
|
+
}
|
|
4092
4292
|
/**
|
|
4093
4293
|
* A product's "What's new" surface, in three forms matching the Figma component:
|
|
4094
4294
|
* - `feed` -- a docked panel: heading, "Mark all as read", filter tabs, the list of updates (each a
|
|
@@ -4382,6 +4582,14 @@ export interface BsInputCustomEvent<T> extends CustomEvent<T> {
|
|
|
4382
4582
|
detail: T;
|
|
4383
4583
|
target: HTMLBsInputElement;
|
|
4384
4584
|
}
|
|
4585
|
+
export interface BsListCustomEvent<T> extends CustomEvent<T> {
|
|
4586
|
+
detail: T;
|
|
4587
|
+
target: HTMLBsListElement;
|
|
4588
|
+
}
|
|
4589
|
+
export interface BsListItemCustomEvent<T> extends CustomEvent<T> {
|
|
4590
|
+
detail: T;
|
|
4591
|
+
target: HTMLBsListItemElement;
|
|
4592
|
+
}
|
|
4385
4593
|
export interface BsMenuItemCustomEvent<T> extends CustomEvent<T> {
|
|
4386
4594
|
detail: T;
|
|
4387
4595
|
target: HTMLBsMenuItemElement;
|
|
@@ -4466,6 +4674,14 @@ export interface BsToastCustomEvent<T> extends CustomEvent<T> {
|
|
|
4466
4674
|
detail: T;
|
|
4467
4675
|
target: HTMLBsToastElement;
|
|
4468
4676
|
}
|
|
4677
|
+
export interface BsTreeCustomEvent<T> extends CustomEvent<T> {
|
|
4678
|
+
detail: T;
|
|
4679
|
+
target: HTMLBsTreeElement;
|
|
4680
|
+
}
|
|
4681
|
+
export interface BsTreeItemCustomEvent<T> extends CustomEvent<T> {
|
|
4682
|
+
detail: T;
|
|
4683
|
+
target: HTMLBsTreeItemElement;
|
|
4684
|
+
}
|
|
4469
4685
|
export interface BsWhatsNewCustomEvent<T> extends CustomEvent<T> {
|
|
4470
4686
|
detail: T;
|
|
4471
4687
|
target: HTMLBsWhatsNewElement;
|
|
@@ -5904,6 +6120,90 @@ declare global {
|
|
|
5904
6120
|
prototype: HTMLBsInputElement;
|
|
5905
6121
|
new (): HTMLBsInputElement;
|
|
5906
6122
|
};
|
|
6123
|
+
interface HTMLBsListElementEventMap {
|
|
6124
|
+
"bsChange": string | null;
|
|
6125
|
+
}
|
|
6126
|
+
/**
|
|
6127
|
+
* A vertical list of `bs-list-item` rows, optionally single-select.
|
|
6128
|
+
* ## When to use
|
|
6129
|
+
* - Records, people, files or options shown as rows with leading media and descriptions.
|
|
6130
|
+
* - `selectable` for a single-choice list (e.g. a conversation list next to a detail pane).
|
|
6131
|
+
* ## When not to use
|
|
6132
|
+
* - A popup list of actions -- use `bs-menu`.
|
|
6133
|
+
* - Navigation between app sections -- use `bs-navigation-drawer`.
|
|
6134
|
+
* - Multi-column, sortable or paged data -- use `bs-data-table`.
|
|
6135
|
+
* Built from `bs-list-item` children (light DOM; the list never moves nodes).
|
|
6136
|
+
* @prop --bs-list-gap - Gap between rows. Defaults to `0`.
|
|
6137
|
+
* @prop --bs-list-divider-color - Divider colour when `dividers` is set. Aliased to `--bs-border-neutral-container`.
|
|
6138
|
+
*/
|
|
6139
|
+
interface HTMLBsListElement extends Components.BsList, HTMLStencilElement {
|
|
6140
|
+
addEventListener<K extends keyof HTMLBsListElementEventMap>(type: K, listener: (this: HTMLBsListElement, ev: BsListCustomEvent<HTMLBsListElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
6141
|
+
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
6142
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
6143
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
6144
|
+
removeEventListener<K extends keyof HTMLBsListElementEventMap>(type: K, listener: (this: HTMLBsListElement, ev: BsListCustomEvent<HTMLBsListElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
6145
|
+
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
6146
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
6147
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
6148
|
+
}
|
|
6149
|
+
var HTMLBsListElement: {
|
|
6150
|
+
prototype: HTMLBsListElement;
|
|
6151
|
+
new (): HTMLBsListElement;
|
|
6152
|
+
};
|
|
6153
|
+
interface HTMLBsListItemElementEventMap {
|
|
6154
|
+
"bsItemClick": string | null;
|
|
6155
|
+
}
|
|
6156
|
+
/**
|
|
6157
|
+
* A single row of a list: optional leading media (avatar, icon, image), a label, a description and
|
|
6158
|
+
* optional support text, and an optional trailing caret or custom trailing content.
|
|
6159
|
+
* ## When to use
|
|
6160
|
+
* - As a child of `bs-list`, one per record, person, file or option.
|
|
6161
|
+
* - Standalone as a plain information row (non-interactive), or with `interactive` as a button-like row.
|
|
6162
|
+
* ## When not to use
|
|
6163
|
+
* - A popup list of actions -- use `bs-menu` / `bs-menu-item`.
|
|
6164
|
+
* - App navigation with an active route -- use `bs-navigation-drawer-item`.
|
|
6165
|
+
* - Tabular data with columns, sorting or paging -- use `bs-data-table`.
|
|
6166
|
+
* Composed from: leading media (`bs-avatar`) and trailing controls (`bs-icon-button`) are supplied by the
|
|
6167
|
+
* consumer through the `leading` and `trailing` slots; the row itself only reserves layout. The default
|
|
6168
|
+
* trailing caret is inline SVG.
|
|
6169
|
+
* Roles are driven by the parent `bs-list` (via `selectionRole`). Standalone, the row has no role
|
|
6170
|
+
* (`listitem` is only valid inside a list) unless `interactive` is set, which makes it a focusable
|
|
6171
|
+
* `role="button"`.
|
|
6172
|
+
* @prop --bs-list-item-min-height - Minimum row height. Aliased to `--bs-spacing-1000`.
|
|
6173
|
+
* @prop --bs-list-item-padding-y - Aliased to `--bs-spacing-150`.
|
|
6174
|
+
* @prop --bs-list-item-padding-x - Aliased to `--bs-spacing-200`.
|
|
6175
|
+
* @prop --bs-list-item-gap - Gap between leading, content and trailing. Aliased to `--bs-spacing-200`.
|
|
6176
|
+
* @prop --bs-list-item-content-gap - Gap between text lines. Aliased to `--bs-spacing-25`.
|
|
6177
|
+
* @prop --bs-list-item-radius - Aliased to `--bs-border-radius-100`.
|
|
6178
|
+
* @prop --bs-list-item-bg - Enabled background. `transparent`.
|
|
6179
|
+
* @prop --bs-list-item-bg-hover - Aliased to `--bs-surface-hover`.
|
|
6180
|
+
* @prop --bs-list-item-bg-pressed - Aliased to `--bs-surface-pressed`.
|
|
6181
|
+
* @prop --bs-list-item-bg-focus - Aliased to `--bs-surface-focus`.
|
|
6182
|
+
* @prop --bs-list-item-bg-selected - Aliased to `--bs-surface-selected`.
|
|
6183
|
+
* @prop --bs-list-item-bg-selected-hover - Aliased to `--bs-surface-selected-hover`.
|
|
6184
|
+
* @prop --bs-list-item-bg-selected-pressed - Aliased to `--bs-surface-selected-pressed`.
|
|
6185
|
+
* @prop --bs-list-item-bg-selected-focus - Aliased to `--bs-surface-selected-focus`.
|
|
6186
|
+
* @prop --bs-list-item-bg-disabled - Aliased to `--bs-surface-action-disabled`.
|
|
6187
|
+
* @prop --bs-list-item-color - Text colour. Aliased to `--bs-text-default`.
|
|
6188
|
+
* @prop --bs-list-item-color-disabled - Aliased to `--bs-text-on-disabled`.
|
|
6189
|
+
* @prop --bs-list-item-focus-ring - Focus ring colour. Aliased to `--bs-border-neutral-focus`.
|
|
6190
|
+
* @prop --bs-list-item-image-width - Leading image width. 72px.
|
|
6191
|
+
* @prop --bs-list-item-image-height - Leading image height. 56px.
|
|
6192
|
+
*/
|
|
6193
|
+
interface HTMLBsListItemElement extends Components.BsListItem, HTMLStencilElement {
|
|
6194
|
+
addEventListener<K extends keyof HTMLBsListItemElementEventMap>(type: K, listener: (this: HTMLBsListItemElement, ev: BsListItemCustomEvent<HTMLBsListItemElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
6195
|
+
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
6196
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
6197
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
6198
|
+
removeEventListener<K extends keyof HTMLBsListItemElementEventMap>(type: K, listener: (this: HTMLBsListItemElement, ev: BsListItemCustomEvent<HTMLBsListItemElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
6199
|
+
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
6200
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
6201
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
6202
|
+
}
|
|
6203
|
+
var HTMLBsListItemElement: {
|
|
6204
|
+
prototype: HTMLBsListItemElement;
|
|
6205
|
+
new (): HTMLBsListItemElement;
|
|
6206
|
+
};
|
|
5907
6207
|
/**
|
|
5908
6208
|
* The BrandSync brand mark, as its own standalone component -- shared by `bs-navigation-header`
|
|
5909
6209
|
* and `bs-navigation-drawer`, which used to each render their own duplicated copy of this SVG
|
|
@@ -7005,6 +7305,61 @@ declare global {
|
|
|
7005
7305
|
prototype: HTMLBsTooltipTriggerElement;
|
|
7006
7306
|
new (): HTMLBsTooltipTriggerElement;
|
|
7007
7307
|
};
|
|
7308
|
+
interface HTMLBsTreeElementEventMap {
|
|
7309
|
+
"bsChange": string;
|
|
7310
|
+
}
|
|
7311
|
+
/**
|
|
7312
|
+
* A hierarchical list of `bs-tree-item` rows with single selection, expand/collapse and the
|
|
7313
|
+
* WAI-ARIA tree keyboard pattern.
|
|
7314
|
+
* The tree owns `role="tree"`, the roving `tabindex` (exactly one enabled, visible item is
|
|
7315
|
+
* tabbable: the selected one, otherwise the first), selection (kept in sync with each item's
|
|
7316
|
+
* `selected`) and keyboard navigation over the visible (rendered, non-disabled) items. Items own
|
|
7317
|
+
* their expansion state and emit `bsSelect` / `bsToggle`.
|
|
7318
|
+
* Built from: `bs-tree-item` rows.
|
|
7319
|
+
*/
|
|
7320
|
+
interface HTMLBsTreeElement extends Components.BsTree, HTMLStencilElement {
|
|
7321
|
+
addEventListener<K extends keyof HTMLBsTreeElementEventMap>(type: K, listener: (this: HTMLBsTreeElement, ev: BsTreeCustomEvent<HTMLBsTreeElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
7322
|
+
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
7323
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
7324
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
7325
|
+
removeEventListener<K extends keyof HTMLBsTreeElementEventMap>(type: K, listener: (this: HTMLBsTreeElement, ev: BsTreeCustomEvent<HTMLBsTreeElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
7326
|
+
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
7327
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
7328
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
7329
|
+
}
|
|
7330
|
+
var HTMLBsTreeElement: {
|
|
7331
|
+
prototype: HTMLBsTreeElement;
|
|
7332
|
+
new (): HTMLBsTreeElement;
|
|
7333
|
+
};
|
|
7334
|
+
interface HTMLBsTreeItemElementEventMap {
|
|
7335
|
+
"bsToggle": boolean;
|
|
7336
|
+
"bsSelect": string;
|
|
7337
|
+
}
|
|
7338
|
+
/**
|
|
7339
|
+
* A single row of a `bs-tree`. An item that contains child `bs-tree-item` elements is a parent
|
|
7340
|
+
* (it gets an expand/collapse caret and a folder icon); an item without children is a leaf (no
|
|
7341
|
+
* caret, file icon).
|
|
7342
|
+
* The host carries `role="treeitem"` and the `aria-*` state; the owning `bs-tree` manages the
|
|
7343
|
+
* roving `tabindex`, selection and keyboard navigation. Nesting depth is computed automatically
|
|
7344
|
+
* from the number of ancestor `bs-tree-item` elements and exposed as `aria-level` -- it is not a
|
|
7345
|
+
* prop. Clicking the row selects it; clicking the caret (or pressing Right/Left in a tree) toggles
|
|
7346
|
+
* expansion -- the two are deliberately separate.
|
|
7347
|
+
* Built from: inline SVG icons only (no existing `bs-*` component covers a tree row).
|
|
7348
|
+
*/
|
|
7349
|
+
interface HTMLBsTreeItemElement extends Components.BsTreeItem, HTMLStencilElement {
|
|
7350
|
+
addEventListener<K extends keyof HTMLBsTreeItemElementEventMap>(type: K, listener: (this: HTMLBsTreeItemElement, ev: BsTreeItemCustomEvent<HTMLBsTreeItemElementEventMap[K]>) => any, options?: boolean | AddEventListenerOptions): void;
|
|
7351
|
+
addEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
7352
|
+
addEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | AddEventListenerOptions): void;
|
|
7353
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | AddEventListenerOptions): void;
|
|
7354
|
+
removeEventListener<K extends keyof HTMLBsTreeItemElementEventMap>(type: K, listener: (this: HTMLBsTreeItemElement, ev: BsTreeItemCustomEvent<HTMLBsTreeItemElementEventMap[K]>) => any, options?: boolean | EventListenerOptions): void;
|
|
7355
|
+
removeEventListener<K extends keyof DocumentEventMap>(type: K, listener: (this: Document, ev: DocumentEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
7356
|
+
removeEventListener<K extends keyof HTMLElementEventMap>(type: K, listener: (this: HTMLElement, ev: HTMLElementEventMap[K]) => any, options?: boolean | EventListenerOptions): void;
|
|
7357
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject, options?: boolean | EventListenerOptions): void;
|
|
7358
|
+
}
|
|
7359
|
+
var HTMLBsTreeItemElement: {
|
|
7360
|
+
prototype: HTMLBsTreeItemElement;
|
|
7361
|
+
new (): HTMLBsTreeItemElement;
|
|
7362
|
+
};
|
|
7008
7363
|
interface HTMLBsWhatsNewElementEventMap {
|
|
7009
7364
|
"bsMarkAllRead": void;
|
|
7010
7365
|
"bsEntryAction": { id: string };
|
|
@@ -7119,6 +7474,8 @@ declare global {
|
|
|
7119
7474
|
"bs-icon-tile": HTMLBsIconTileElement;
|
|
7120
7475
|
"bs-inline-tab": HTMLBsInlineTabElement;
|
|
7121
7476
|
"bs-input": HTMLBsInputElement;
|
|
7477
|
+
"bs-list": HTMLBsListElement;
|
|
7478
|
+
"bs-list-item": HTMLBsListItemElement;
|
|
7122
7479
|
"bs-logo": HTMLBsLogoElement;
|
|
7123
7480
|
"bs-menu": HTMLBsMenuElement;
|
|
7124
7481
|
"bs-menu-item": HTMLBsMenuItemElement;
|
|
@@ -7153,6 +7510,8 @@ declare global {
|
|
|
7153
7510
|
"bs-toast": HTMLBsToastElement;
|
|
7154
7511
|
"bs-tooltip": HTMLBsTooltipElement;
|
|
7155
7512
|
"bs-tooltip-trigger": HTMLBsTooltipTriggerElement;
|
|
7513
|
+
"bs-tree": HTMLBsTreeElement;
|
|
7514
|
+
"bs-tree-item": HTMLBsTreeItemElement;
|
|
7156
7515
|
"bs-whats-new": HTMLBsWhatsNewElement;
|
|
7157
7516
|
"bs-whats-new-entry": HTMLBsWhatsNewEntryElement;
|
|
7158
7517
|
}
|
|
@@ -9602,6 +9961,133 @@ declare namespace LocalJSX {
|
|
|
9602
9961
|
*/
|
|
9603
9962
|
"value"?: string;
|
|
9604
9963
|
}
|
|
9964
|
+
/**
|
|
9965
|
+
* A vertical list of `bs-list-item` rows, optionally single-select.
|
|
9966
|
+
* ## When to use
|
|
9967
|
+
* - Records, people, files or options shown as rows with leading media and descriptions.
|
|
9968
|
+
* - `selectable` for a single-choice list (e.g. a conversation list next to a detail pane).
|
|
9969
|
+
* ## When not to use
|
|
9970
|
+
* - A popup list of actions -- use `bs-menu`.
|
|
9971
|
+
* - Navigation between app sections -- use `bs-navigation-drawer`.
|
|
9972
|
+
* - Multi-column, sortable or paged data -- use `bs-data-table`.
|
|
9973
|
+
* Built from `bs-list-item` children (light DOM; the list never moves nodes).
|
|
9974
|
+
* @prop --bs-list-gap - Gap between rows. Defaults to `0`.
|
|
9975
|
+
* @prop --bs-list-divider-color - Divider colour when `dividers` is set. Aliased to `--bs-border-neutral-container`.
|
|
9976
|
+
*/
|
|
9977
|
+
interface BsList {
|
|
9978
|
+
/**
|
|
9979
|
+
* Accessible name of the list.
|
|
9980
|
+
* @default null
|
|
9981
|
+
*/
|
|
9982
|
+
"ariaLabel"?: string | null;
|
|
9983
|
+
/**
|
|
9984
|
+
* Draws a 1px separator between rows.
|
|
9985
|
+
* @default false
|
|
9986
|
+
*/
|
|
9987
|
+
"dividers"?: boolean;
|
|
9988
|
+
/**
|
|
9989
|
+
* Fires with the new `value` when the user changes the selection.
|
|
9990
|
+
*/
|
|
9991
|
+
"onBsChange"?: (event: BsListCustomEvent<string | null>) => void;
|
|
9992
|
+
/**
|
|
9993
|
+
* Single-selection mode: role="listbox", rows are `option`s with roving tabindex.
|
|
9994
|
+
* @default false
|
|
9995
|
+
*/
|
|
9996
|
+
"selectable"?: boolean;
|
|
9997
|
+
/**
|
|
9998
|
+
* `value` of the selected item (selectable mode).
|
|
9999
|
+
* @default null
|
|
10000
|
+
*/
|
|
10001
|
+
"value"?: string | null;
|
|
10002
|
+
}
|
|
10003
|
+
/**
|
|
10004
|
+
* A single row of a list: optional leading media (avatar, icon, image), a label, a description and
|
|
10005
|
+
* optional support text, and an optional trailing caret or custom trailing content.
|
|
10006
|
+
* ## When to use
|
|
10007
|
+
* - As a child of `bs-list`, one per record, person, file or option.
|
|
10008
|
+
* - Standalone as a plain information row (non-interactive), or with `interactive` as a button-like row.
|
|
10009
|
+
* ## When not to use
|
|
10010
|
+
* - A popup list of actions -- use `bs-menu` / `bs-menu-item`.
|
|
10011
|
+
* - App navigation with an active route -- use `bs-navigation-drawer-item`.
|
|
10012
|
+
* - Tabular data with columns, sorting or paging -- use `bs-data-table`.
|
|
10013
|
+
* Composed from: leading media (`bs-avatar`) and trailing controls (`bs-icon-button`) are supplied by the
|
|
10014
|
+
* consumer through the `leading` and `trailing` slots; the row itself only reserves layout. The default
|
|
10015
|
+
* trailing caret is inline SVG.
|
|
10016
|
+
* Roles are driven by the parent `bs-list` (via `selectionRole`). Standalone, the row has no role
|
|
10017
|
+
* (`listitem` is only valid inside a list) unless `interactive` is set, which makes it a focusable
|
|
10018
|
+
* `role="button"`.
|
|
10019
|
+
* @prop --bs-list-item-min-height - Minimum row height. Aliased to `--bs-spacing-1000`.
|
|
10020
|
+
* @prop --bs-list-item-padding-y - Aliased to `--bs-spacing-150`.
|
|
10021
|
+
* @prop --bs-list-item-padding-x - Aliased to `--bs-spacing-200`.
|
|
10022
|
+
* @prop --bs-list-item-gap - Gap between leading, content and trailing. Aliased to `--bs-spacing-200`.
|
|
10023
|
+
* @prop --bs-list-item-content-gap - Gap between text lines. Aliased to `--bs-spacing-25`.
|
|
10024
|
+
* @prop --bs-list-item-radius - Aliased to `--bs-border-radius-100`.
|
|
10025
|
+
* @prop --bs-list-item-bg - Enabled background. `transparent`.
|
|
10026
|
+
* @prop --bs-list-item-bg-hover - Aliased to `--bs-surface-hover`.
|
|
10027
|
+
* @prop --bs-list-item-bg-pressed - Aliased to `--bs-surface-pressed`.
|
|
10028
|
+
* @prop --bs-list-item-bg-focus - Aliased to `--bs-surface-focus`.
|
|
10029
|
+
* @prop --bs-list-item-bg-selected - Aliased to `--bs-surface-selected`.
|
|
10030
|
+
* @prop --bs-list-item-bg-selected-hover - Aliased to `--bs-surface-selected-hover`.
|
|
10031
|
+
* @prop --bs-list-item-bg-selected-pressed - Aliased to `--bs-surface-selected-pressed`.
|
|
10032
|
+
* @prop --bs-list-item-bg-selected-focus - Aliased to `--bs-surface-selected-focus`.
|
|
10033
|
+
* @prop --bs-list-item-bg-disabled - Aliased to `--bs-surface-action-disabled`.
|
|
10034
|
+
* @prop --bs-list-item-color - Text colour. Aliased to `--bs-text-default`.
|
|
10035
|
+
* @prop --bs-list-item-color-disabled - Aliased to `--bs-text-on-disabled`.
|
|
10036
|
+
* @prop --bs-list-item-focus-ring - Focus ring colour. Aliased to `--bs-border-neutral-focus`.
|
|
10037
|
+
* @prop --bs-list-item-image-width - Leading image width. 72px.
|
|
10038
|
+
* @prop --bs-list-item-image-height - Leading image height. 56px.
|
|
10039
|
+
*/
|
|
10040
|
+
interface BsListItem {
|
|
10041
|
+
/**
|
|
10042
|
+
* Second text line (the "paragraph").
|
|
10043
|
+
* @default null
|
|
10044
|
+
*/
|
|
10045
|
+
"description"?: string | null;
|
|
10046
|
+
/**
|
|
10047
|
+
* Disables the row: dimmed, not focusable, no click event.
|
|
10048
|
+
* @default false
|
|
10049
|
+
*/
|
|
10050
|
+
"disabled"?: boolean;
|
|
10051
|
+
/**
|
|
10052
|
+
* Makes a standalone row a focusable `role="button"` that emits `bsItemClick`.
|
|
10053
|
+
* @default false
|
|
10054
|
+
*/
|
|
10055
|
+
"interactive"?: boolean;
|
|
10056
|
+
/**
|
|
10057
|
+
* First text line (semibold).
|
|
10058
|
+
* @default null
|
|
10059
|
+
*/
|
|
10060
|
+
"label"?: string | null;
|
|
10061
|
+
/**
|
|
10062
|
+
* Fires on click / Enter / Space when the row is interactive and not disabled. Payload is `value`.
|
|
10063
|
+
*/
|
|
10064
|
+
"onBsItemClick"?: (event: BsListItemCustomEvent<string | null>) => void;
|
|
10065
|
+
/**
|
|
10066
|
+
* Marks the row as selected. Managed by the parent `bs-list` when it is `selectable`.
|
|
10067
|
+
* @default false
|
|
10068
|
+
*/
|
|
10069
|
+
"selected"?: boolean;
|
|
10070
|
+
/**
|
|
10071
|
+
* Set by the parent `bs-list`: `listitem` (plain list) or `option` (selectable list). Do not set by hand.
|
|
10072
|
+
* @default null
|
|
10073
|
+
*/
|
|
10074
|
+
"selectionRole"?: 'listitem' | 'option' | null;
|
|
10075
|
+
/**
|
|
10076
|
+
* Shows a trailing caret (unless the `trailing` slot has content).
|
|
10077
|
+
* @default false
|
|
10078
|
+
*/
|
|
10079
|
+
"showArrow"?: boolean;
|
|
10080
|
+
/**
|
|
10081
|
+
* Optional third text line.
|
|
10082
|
+
* @default null
|
|
10083
|
+
*/
|
|
10084
|
+
"supportText"?: string | null;
|
|
10085
|
+
/**
|
|
10086
|
+
* Identifies the item; emitted by `bsItemClick` and matched against `bs-list`'s `value`.
|
|
10087
|
+
* @default null
|
|
10088
|
+
*/
|
|
10089
|
+
"value"?: string | null;
|
|
10090
|
+
}
|
|
9605
10091
|
/**
|
|
9606
10092
|
* The BrandSync brand mark, as its own standalone component -- shared by `bs-navigation-header`
|
|
9607
10093
|
* and `bs-navigation-drawer`, which used to each render their own duplicated copy of this SVG
|
|
@@ -11566,6 +12052,87 @@ declare namespace LocalJSX {
|
|
|
11566
12052
|
*/
|
|
11567
12053
|
"text"?: string;
|
|
11568
12054
|
}
|
|
12055
|
+
/**
|
|
12056
|
+
* A hierarchical list of `bs-tree-item` rows with single selection, expand/collapse and the
|
|
12057
|
+
* WAI-ARIA tree keyboard pattern.
|
|
12058
|
+
* The tree owns `role="tree"`, the roving `tabindex` (exactly one enabled, visible item is
|
|
12059
|
+
* tabbable: the selected one, otherwise the first), selection (kept in sync with each item's
|
|
12060
|
+
* `selected`) and keyboard navigation over the visible (rendered, non-disabled) items. Items own
|
|
12061
|
+
* their expansion state and emit `bsSelect` / `bsToggle`.
|
|
12062
|
+
* Built from: `bs-tree-item` rows.
|
|
12063
|
+
*/
|
|
12064
|
+
interface BsTree {
|
|
12065
|
+
/**
|
|
12066
|
+
* Accessible name of the tree. Bound onto the internal `role="tree"` element (an `aria-label` on the host would not reach it).
|
|
12067
|
+
* @default null
|
|
12068
|
+
*/
|
|
12069
|
+
"ariaLabel"?: string | null;
|
|
12070
|
+
/**
|
|
12071
|
+
* Emitted when the user changes the selection (click, Enter/Space), with the new value. Not emitted when `value` is set from code.
|
|
12072
|
+
*/
|
|
12073
|
+
"onBsChange"?: (event: BsTreeCustomEvent<string>) => void;
|
|
12074
|
+
/**
|
|
12075
|
+
* When `false`, rows do not select (clicks and Enter/Space do nothing) but parents still expand and collapse.
|
|
12076
|
+
* @default true
|
|
12077
|
+
*/
|
|
12078
|
+
"selectable"?: boolean;
|
|
12079
|
+
/**
|
|
12080
|
+
* The `value` (or, when empty, the `label`) of the selected item. Two-way synced with each item's `selected` (single selection). Setting it from code does not emit `bsChange`.
|
|
12081
|
+
* @default ''
|
|
12082
|
+
*/
|
|
12083
|
+
"value"?: string;
|
|
12084
|
+
}
|
|
12085
|
+
/**
|
|
12086
|
+
* A single row of a `bs-tree`. An item that contains child `bs-tree-item` elements is a parent
|
|
12087
|
+
* (it gets an expand/collapse caret and a folder icon); an item without children is a leaf (no
|
|
12088
|
+
* caret, file icon).
|
|
12089
|
+
* The host carries `role="treeitem"` and the `aria-*` state; the owning `bs-tree` manages the
|
|
12090
|
+
* roving `tabindex`, selection and keyboard navigation. Nesting depth is computed automatically
|
|
12091
|
+
* from the number of ancestor `bs-tree-item` elements and exposed as `aria-level` -- it is not a
|
|
12092
|
+
* prop. Clicking the row selects it; clicking the caret (or pressing Right/Left in a tree) toggles
|
|
12093
|
+
* expansion -- the two are deliberately separate.
|
|
12094
|
+
* Built from: inline SVG icons only (no existing `bs-*` component covers a tree row).
|
|
12095
|
+
*/
|
|
12096
|
+
interface BsTreeItem {
|
|
12097
|
+
/**
|
|
12098
|
+
* Disables the row: not focusable, ignores clicks, dimmed. Reflected.
|
|
12099
|
+
* @default false
|
|
12100
|
+
*/
|
|
12101
|
+
"disabled"?: boolean;
|
|
12102
|
+
/**
|
|
12103
|
+
* Whether the child items are shown. Only meaningful for parents. Mutable: the caret, the keyboard and the owning tree toggle it. Reflected.
|
|
12104
|
+
* @default false
|
|
12105
|
+
*/
|
|
12106
|
+
"expanded"?: boolean;
|
|
12107
|
+
/**
|
|
12108
|
+
* The row's text. Use the `label` slot for rich content.
|
|
12109
|
+
* @default ''
|
|
12110
|
+
*/
|
|
12111
|
+
"label"?: string;
|
|
12112
|
+
/**
|
|
12113
|
+
* Emitted (bubbling, composed) when the user activates the row, with the item's value. The owning `bs-tree` listens and updates the selection.
|
|
12114
|
+
*/
|
|
12115
|
+
"onBsSelect"?: (event: BsTreeItemCustomEvent<string>) => void;
|
|
12116
|
+
/**
|
|
12117
|
+
* Emitted when the user toggles expansion (caret click or keyboard), with the new `expanded` value. Not emitted when `expanded` is set from code.
|
|
12118
|
+
*/
|
|
12119
|
+
"onBsToggle"?: (event: BsTreeItemCustomEvent<boolean>) => void;
|
|
12120
|
+
/**
|
|
12121
|
+
* Marks the row as selected. Owned by the tree (single selection, synced with its `value`). Reflected.
|
|
12122
|
+
* @default false
|
|
12123
|
+
*/
|
|
12124
|
+
"selected"?: boolean;
|
|
12125
|
+
/**
|
|
12126
|
+
* Shows the leading icon (default folder / file, or the `icon` slot).
|
|
12127
|
+
* @default true
|
|
12128
|
+
*/
|
|
12129
|
+
"showIcon"?: boolean;
|
|
12130
|
+
/**
|
|
12131
|
+
* Identifier used in events and for the tree's `value`. Falls back to `label` when empty.
|
|
12132
|
+
* @default ''
|
|
12133
|
+
*/
|
|
12134
|
+
"value"?: string;
|
|
12135
|
+
}
|
|
11569
12136
|
/**
|
|
11570
12137
|
* A product's "What's new" surface, in three forms matching the Figma component:
|
|
11571
12138
|
* - `feed` -- a docked panel: heading, "Mark all as read", filter tabs, the list of updates (each a
|
|
@@ -12141,6 +12708,23 @@ declare namespace LocalJSX {
|
|
|
12141
12708
|
"length": number;
|
|
12142
12709
|
"open": boolean;
|
|
12143
12710
|
}
|
|
12711
|
+
interface BsListAttributes {
|
|
12712
|
+
"selectable": boolean;
|
|
12713
|
+
"value": string | null;
|
|
12714
|
+
"dividers": boolean;
|
|
12715
|
+
"ariaLabel": string | null;
|
|
12716
|
+
}
|
|
12717
|
+
interface BsListItemAttributes {
|
|
12718
|
+
"label": string | null;
|
|
12719
|
+
"description": string | null;
|
|
12720
|
+
"supportText": string | null;
|
|
12721
|
+
"selected": boolean;
|
|
12722
|
+
"disabled": boolean;
|
|
12723
|
+
"showArrow": boolean;
|
|
12724
|
+
"value": string | null;
|
|
12725
|
+
"interactive": boolean;
|
|
12726
|
+
"selectionRole": 'listitem' | 'option' | null;
|
|
12727
|
+
}
|
|
12144
12728
|
interface BsLogoAttributes {
|
|
12145
12729
|
"variant": BsLogoVariant;
|
|
12146
12730
|
"background": BsLogoBackground;
|
|
@@ -12425,6 +13009,19 @@ declare namespace LocalJSX {
|
|
|
12425
13009
|
"delay": number;
|
|
12426
13010
|
"placement": BsTooltipTriggerPlacement;
|
|
12427
13011
|
}
|
|
13012
|
+
interface BsTreeAttributes {
|
|
13013
|
+
"ariaLabel": string | null;
|
|
13014
|
+
"value": string;
|
|
13015
|
+
"selectable": boolean;
|
|
13016
|
+
}
|
|
13017
|
+
interface BsTreeItemAttributes {
|
|
13018
|
+
"label": string;
|
|
13019
|
+
"expanded": boolean;
|
|
13020
|
+
"selected": boolean;
|
|
13021
|
+
"disabled": boolean;
|
|
13022
|
+
"showIcon": boolean;
|
|
13023
|
+
"value": string;
|
|
13024
|
+
}
|
|
12428
13025
|
interface BsWhatsNewAttributes {
|
|
12429
13026
|
"type": BsWhatsNewType;
|
|
12430
13027
|
"heading": string;
|
|
@@ -12506,6 +13103,8 @@ declare namespace LocalJSX {
|
|
|
12506
13103
|
"bs-icon-tile": Omit<BsIconTile, keyof BsIconTileAttributes> & { [K in keyof BsIconTile & keyof BsIconTileAttributes]?: BsIconTile[K] } & { [K in keyof BsIconTile & keyof BsIconTileAttributes as `attr:${K}`]?: BsIconTileAttributes[K] } & { [K in keyof BsIconTile & keyof BsIconTileAttributes as `prop:${K}`]?: BsIconTile[K] };
|
|
12507
13104
|
"bs-inline-tab": Omit<BsInlineTab, keyof BsInlineTabAttributes> & { [K in keyof BsInlineTab & keyof BsInlineTabAttributes]?: BsInlineTab[K] } & { [K in keyof BsInlineTab & keyof BsInlineTabAttributes as `attr:${K}`]?: BsInlineTabAttributes[K] } & { [K in keyof BsInlineTab & keyof BsInlineTabAttributes as `prop:${K}`]?: BsInlineTab[K] };
|
|
12508
13105
|
"bs-input": Omit<BsInput, keyof BsInputAttributes> & { [K in keyof BsInput & keyof BsInputAttributes]?: BsInput[K] } & { [K in keyof BsInput & keyof BsInputAttributes as `attr:${K}`]?: BsInputAttributes[K] } & { [K in keyof BsInput & keyof BsInputAttributes as `prop:${K}`]?: BsInput[K] };
|
|
13106
|
+
"bs-list": Omit<BsList, keyof BsListAttributes> & { [K in keyof BsList & keyof BsListAttributes]?: BsList[K] } & { [K in keyof BsList & keyof BsListAttributes as `attr:${K}`]?: BsListAttributes[K] } & { [K in keyof BsList & keyof BsListAttributes as `prop:${K}`]?: BsList[K] };
|
|
13107
|
+
"bs-list-item": Omit<BsListItem, keyof BsListItemAttributes> & { [K in keyof BsListItem & keyof BsListItemAttributes]?: BsListItem[K] } & { [K in keyof BsListItem & keyof BsListItemAttributes as `attr:${K}`]?: BsListItemAttributes[K] } & { [K in keyof BsListItem & keyof BsListItemAttributes as `prop:${K}`]?: BsListItem[K] };
|
|
12509
13108
|
"bs-logo": Omit<BsLogo, keyof BsLogoAttributes> & { [K in keyof BsLogo & keyof BsLogoAttributes]?: BsLogo[K] } & { [K in keyof BsLogo & keyof BsLogoAttributes as `attr:${K}`]?: BsLogoAttributes[K] } & { [K in keyof BsLogo & keyof BsLogoAttributes as `prop:${K}`]?: BsLogo[K] };
|
|
12510
13109
|
"bs-menu": BsMenu;
|
|
12511
13110
|
"bs-menu-item": Omit<BsMenuItem, keyof BsMenuItemAttributes> & { [K in keyof BsMenuItem & keyof BsMenuItemAttributes]?: BsMenuItem[K] } & { [K in keyof BsMenuItem & keyof BsMenuItemAttributes as `attr:${K}`]?: BsMenuItemAttributes[K] } & { [K in keyof BsMenuItem & keyof BsMenuItemAttributes as `prop:${K}`]?: BsMenuItem[K] };
|
|
@@ -12540,6 +13139,8 @@ declare namespace LocalJSX {
|
|
|
12540
13139
|
"bs-toast": Omit<BsToast, keyof BsToastAttributes> & { [K in keyof BsToast & keyof BsToastAttributes]?: BsToast[K] } & { [K in keyof BsToast & keyof BsToastAttributes as `attr:${K}`]?: BsToastAttributes[K] } & { [K in keyof BsToast & keyof BsToastAttributes as `prop:${K}`]?: BsToast[K] };
|
|
12541
13140
|
"bs-tooltip": Omit<BsTooltip, keyof BsTooltipAttributes> & { [K in keyof BsTooltip & keyof BsTooltipAttributes]?: BsTooltip[K] } & { [K in keyof BsTooltip & keyof BsTooltipAttributes as `attr:${K}`]?: BsTooltipAttributes[K] } & { [K in keyof BsTooltip & keyof BsTooltipAttributes as `prop:${K}`]?: BsTooltip[K] };
|
|
12542
13141
|
"bs-tooltip-trigger": Omit<BsTooltipTrigger, keyof BsTooltipTriggerAttributes> & { [K in keyof BsTooltipTrigger & keyof BsTooltipTriggerAttributes]?: BsTooltipTrigger[K] } & { [K in keyof BsTooltipTrigger & keyof BsTooltipTriggerAttributes as `attr:${K}`]?: BsTooltipTriggerAttributes[K] } & { [K in keyof BsTooltipTrigger & keyof BsTooltipTriggerAttributes as `prop:${K}`]?: BsTooltipTrigger[K] };
|
|
13142
|
+
"bs-tree": Omit<BsTree, keyof BsTreeAttributes> & { [K in keyof BsTree & keyof BsTreeAttributes]?: BsTree[K] } & { [K in keyof BsTree & keyof BsTreeAttributes as `attr:${K}`]?: BsTreeAttributes[K] } & { [K in keyof BsTree & keyof BsTreeAttributes as `prop:${K}`]?: BsTree[K] };
|
|
13143
|
+
"bs-tree-item": Omit<BsTreeItem, keyof BsTreeItemAttributes> & { [K in keyof BsTreeItem & keyof BsTreeItemAttributes]?: BsTreeItem[K] } & { [K in keyof BsTreeItem & keyof BsTreeItemAttributes as `attr:${K}`]?: BsTreeItemAttributes[K] } & { [K in keyof BsTreeItem & keyof BsTreeItemAttributes as `prop:${K}`]?: BsTreeItem[K] };
|
|
12543
13144
|
"bs-whats-new": Omit<BsWhatsNew, keyof BsWhatsNewAttributes> & { [K in keyof BsWhatsNew & keyof BsWhatsNewAttributes]?: BsWhatsNew[K] } & { [K in keyof BsWhatsNew & keyof BsWhatsNewAttributes as `attr:${K}`]?: BsWhatsNewAttributes[K] } & { [K in keyof BsWhatsNew & keyof BsWhatsNewAttributes as `prop:${K}`]?: BsWhatsNew[K] };
|
|
12544
13145
|
"bs-whats-new-entry": Omit<BsWhatsNewEntry, keyof BsWhatsNewEntryAttributes> & { [K in keyof BsWhatsNewEntry & keyof BsWhatsNewEntryAttributes]?: BsWhatsNewEntry[K] } & { [K in keyof BsWhatsNewEntry & keyof BsWhatsNewEntryAttributes as `attr:${K}`]?: BsWhatsNewEntryAttributes[K] } & { [K in keyof BsWhatsNewEntry & keyof BsWhatsNewEntryAttributes as `prop:${K}`]?: BsWhatsNewEntry[K] };
|
|
12545
13146
|
}
|
|
@@ -13446,6 +14047,58 @@ declare module "@stencil/core" {
|
|
|
13446
14047
|
* options list at all (freeform chip entry).
|
|
13447
14048
|
*/
|
|
13448
14049
|
"bs-input": LocalJSX.IntrinsicElements["bs-input"] & JSXBase.HTMLAttributes<HTMLBsInputElement>;
|
|
14050
|
+
/**
|
|
14051
|
+
* A vertical list of `bs-list-item` rows, optionally single-select.
|
|
14052
|
+
* ## When to use
|
|
14053
|
+
* - Records, people, files or options shown as rows with leading media and descriptions.
|
|
14054
|
+
* - `selectable` for a single-choice list (e.g. a conversation list next to a detail pane).
|
|
14055
|
+
* ## When not to use
|
|
14056
|
+
* - A popup list of actions -- use `bs-menu`.
|
|
14057
|
+
* - Navigation between app sections -- use `bs-navigation-drawer`.
|
|
14058
|
+
* - Multi-column, sortable or paged data -- use `bs-data-table`.
|
|
14059
|
+
* Built from `bs-list-item` children (light DOM; the list never moves nodes).
|
|
14060
|
+
* @prop --bs-list-gap - Gap between rows. Defaults to `0`.
|
|
14061
|
+
* @prop --bs-list-divider-color - Divider colour when `dividers` is set. Aliased to `--bs-border-neutral-container`.
|
|
14062
|
+
*/
|
|
14063
|
+
"bs-list": LocalJSX.IntrinsicElements["bs-list"] & JSXBase.HTMLAttributes<HTMLBsListElement>;
|
|
14064
|
+
/**
|
|
14065
|
+
* A single row of a list: optional leading media (avatar, icon, image), a label, a description and
|
|
14066
|
+
* optional support text, and an optional trailing caret or custom trailing content.
|
|
14067
|
+
* ## When to use
|
|
14068
|
+
* - As a child of `bs-list`, one per record, person, file or option.
|
|
14069
|
+
* - Standalone as a plain information row (non-interactive), or with `interactive` as a button-like row.
|
|
14070
|
+
* ## When not to use
|
|
14071
|
+
* - A popup list of actions -- use `bs-menu` / `bs-menu-item`.
|
|
14072
|
+
* - App navigation with an active route -- use `bs-navigation-drawer-item`.
|
|
14073
|
+
* - Tabular data with columns, sorting or paging -- use `bs-data-table`.
|
|
14074
|
+
* Composed from: leading media (`bs-avatar`) and trailing controls (`bs-icon-button`) are supplied by the
|
|
14075
|
+
* consumer through the `leading` and `trailing` slots; the row itself only reserves layout. The default
|
|
14076
|
+
* trailing caret is inline SVG.
|
|
14077
|
+
* Roles are driven by the parent `bs-list` (via `selectionRole`). Standalone, the row has no role
|
|
14078
|
+
* (`listitem` is only valid inside a list) unless `interactive` is set, which makes it a focusable
|
|
14079
|
+
* `role="button"`.
|
|
14080
|
+
* @prop --bs-list-item-min-height - Minimum row height. Aliased to `--bs-spacing-1000`.
|
|
14081
|
+
* @prop --bs-list-item-padding-y - Aliased to `--bs-spacing-150`.
|
|
14082
|
+
* @prop --bs-list-item-padding-x - Aliased to `--bs-spacing-200`.
|
|
14083
|
+
* @prop --bs-list-item-gap - Gap between leading, content and trailing. Aliased to `--bs-spacing-200`.
|
|
14084
|
+
* @prop --bs-list-item-content-gap - Gap between text lines. Aliased to `--bs-spacing-25`.
|
|
14085
|
+
* @prop --bs-list-item-radius - Aliased to `--bs-border-radius-100`.
|
|
14086
|
+
* @prop --bs-list-item-bg - Enabled background. `transparent`.
|
|
14087
|
+
* @prop --bs-list-item-bg-hover - Aliased to `--bs-surface-hover`.
|
|
14088
|
+
* @prop --bs-list-item-bg-pressed - Aliased to `--bs-surface-pressed`.
|
|
14089
|
+
* @prop --bs-list-item-bg-focus - Aliased to `--bs-surface-focus`.
|
|
14090
|
+
* @prop --bs-list-item-bg-selected - Aliased to `--bs-surface-selected`.
|
|
14091
|
+
* @prop --bs-list-item-bg-selected-hover - Aliased to `--bs-surface-selected-hover`.
|
|
14092
|
+
* @prop --bs-list-item-bg-selected-pressed - Aliased to `--bs-surface-selected-pressed`.
|
|
14093
|
+
* @prop --bs-list-item-bg-selected-focus - Aliased to `--bs-surface-selected-focus`.
|
|
14094
|
+
* @prop --bs-list-item-bg-disabled - Aliased to `--bs-surface-action-disabled`.
|
|
14095
|
+
* @prop --bs-list-item-color - Text colour. Aliased to `--bs-text-default`.
|
|
14096
|
+
* @prop --bs-list-item-color-disabled - Aliased to `--bs-text-on-disabled`.
|
|
14097
|
+
* @prop --bs-list-item-focus-ring - Focus ring colour. Aliased to `--bs-border-neutral-focus`.
|
|
14098
|
+
* @prop --bs-list-item-image-width - Leading image width. 72px.
|
|
14099
|
+
* @prop --bs-list-item-image-height - Leading image height. 56px.
|
|
14100
|
+
*/
|
|
14101
|
+
"bs-list-item": LocalJSX.IntrinsicElements["bs-list-item"] & JSXBase.HTMLAttributes<HTMLBsListItemElement>;
|
|
13449
14102
|
/**
|
|
13450
14103
|
* The BrandSync brand mark, as its own standalone component -- shared by `bs-navigation-header`
|
|
13451
14104
|
* and `bs-navigation-drawer`, which used to each render their own duplicated copy of this SVG
|
|
@@ -14124,6 +14777,28 @@ declare module "@stencil/core" {
|
|
|
14124
14777
|
* @prop --bs-tooltip-trigger-z-index - Stacking order. Aliased to `--bs-z-index-popover`.
|
|
14125
14778
|
*/
|
|
14126
14779
|
"bs-tooltip-trigger": LocalJSX.IntrinsicElements["bs-tooltip-trigger"] & JSXBase.HTMLAttributes<HTMLBsTooltipTriggerElement>;
|
|
14780
|
+
/**
|
|
14781
|
+
* A hierarchical list of `bs-tree-item` rows with single selection, expand/collapse and the
|
|
14782
|
+
* WAI-ARIA tree keyboard pattern.
|
|
14783
|
+
* The tree owns `role="tree"`, the roving `tabindex` (exactly one enabled, visible item is
|
|
14784
|
+
* tabbable: the selected one, otherwise the first), selection (kept in sync with each item's
|
|
14785
|
+
* `selected`) and keyboard navigation over the visible (rendered, non-disabled) items. Items own
|
|
14786
|
+
* their expansion state and emit `bsSelect` / `bsToggle`.
|
|
14787
|
+
* Built from: `bs-tree-item` rows.
|
|
14788
|
+
*/
|
|
14789
|
+
"bs-tree": LocalJSX.IntrinsicElements["bs-tree"] & JSXBase.HTMLAttributes<HTMLBsTreeElement>;
|
|
14790
|
+
/**
|
|
14791
|
+
* A single row of a `bs-tree`. An item that contains child `bs-tree-item` elements is a parent
|
|
14792
|
+
* (it gets an expand/collapse caret and a folder icon); an item without children is a leaf (no
|
|
14793
|
+
* caret, file icon).
|
|
14794
|
+
* The host carries `role="treeitem"` and the `aria-*` state; the owning `bs-tree` manages the
|
|
14795
|
+
* roving `tabindex`, selection and keyboard navigation. Nesting depth is computed automatically
|
|
14796
|
+
* from the number of ancestor `bs-tree-item` elements and exposed as `aria-level` -- it is not a
|
|
14797
|
+
* prop. Clicking the row selects it; clicking the caret (or pressing Right/Left in a tree) toggles
|
|
14798
|
+
* expansion -- the two are deliberately separate.
|
|
14799
|
+
* Built from: inline SVG icons only (no existing `bs-*` component covers a tree row).
|
|
14800
|
+
*/
|
|
14801
|
+
"bs-tree-item": LocalJSX.IntrinsicElements["bs-tree-item"] & JSXBase.HTMLAttributes<HTMLBsTreeItemElement>;
|
|
14127
14802
|
/**
|
|
14128
14803
|
* A product's "What's new" surface, in three forms matching the Figma component:
|
|
14129
14804
|
* - `feed` -- a docked panel: heading, "Mark all as read", filter tabs, the list of updates (each a
|