@fluentui/web-components 3.0.0-beta.93 → 3.0.0-beta.95
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 +20 -2
- package/README.md +8 -0
- package/custom-elements.json +28367 -0
- package/dist/dts/accordion/accordion.d.ts +2 -0
- package/dist/dts/accordion-item/accordion-item.d.ts +3 -0
- package/dist/dts/anchor-button/anchor-button.d.ts +3 -0
- package/dist/dts/avatar/avatar.d.ts +2 -0
- package/dist/dts/badge/badge.d.ts +2 -0
- package/dist/dts/button/button.d.ts +2 -0
- package/dist/dts/checkbox/checkbox.d.ts +2 -0
- package/dist/dts/compound-button/compound-button.d.ts +3 -0
- package/dist/dts/counter-badge/counter-badge.d.ts +3 -0
- package/dist/dts/dialog/dialog.d.ts +2 -0
- package/dist/dts/dialog-body/dialog-body.d.ts +2 -0
- package/dist/dts/divider/divider.d.ts +2 -0
- package/dist/dts/drawer/drawer.d.ts +3 -0
- package/dist/dts/drawer-body/drawer-body.d.ts +3 -0
- package/dist/dts/dropdown/dropdown.d.ts +2 -0
- package/dist/dts/field/field.d.ts +2 -0
- package/dist/dts/image/image.d.ts +3 -0
- package/dist/dts/label/label.d.ts +3 -0
- package/dist/dts/link/link.d.ts +2 -0
- package/dist/dts/listbox/listbox.d.ts +2 -0
- package/dist/dts/menu/menu.d.ts +3 -0
- package/dist/dts/menu-button/menu-button.d.ts +3 -0
- package/dist/dts/menu-item/menu-item.d.ts +2 -0
- package/dist/dts/menu-list/menu-list.d.ts +2 -0
- package/dist/dts/message-bar/message-bar.d.ts +2 -0
- package/dist/dts/option/option.d.ts +2 -0
- package/dist/dts/progress-bar/progress-bar.d.ts +2 -0
- package/dist/dts/radio/radio.d.ts +2 -0
- package/dist/dts/radio-group/radio-group.d.ts +2 -0
- package/dist/dts/rating-display/rating-display.d.ts +2 -0
- package/dist/dts/slider/slider.d.ts +2 -0
- package/dist/dts/spinner/spinner.d.ts +2 -0
- package/dist/dts/switch/switch.d.ts +7 -0
- package/dist/dts/tab/tab.d.ts +2 -0
- package/dist/dts/tab-panel/tab-panel.d.ts +2 -0
- package/dist/dts/tablist/tablist.d.ts +3 -0
- package/dist/dts/tabs/tabs.d.ts +2 -0
- package/dist/dts/text/text.d.ts +3 -0
- package/dist/dts/text-input/text-input.d.ts +2 -0
- package/dist/dts/textarea/textarea.d.ts +6 -0
- package/dist/dts/toggle-button/toggle-button.d.ts +2 -0
- package/dist/dts/tooltip/tooltip.d.ts +3 -0
- package/dist/dts/tree/tree.d.ts +6 -0
- package/dist/dts/tree-item/tree-item.d.ts +6 -0
- package/dist/esm/accordion/accordion.js +2 -0
- package/dist/esm/accordion/accordion.js.map +1 -1
- package/dist/esm/accordion-item/accordion-item.js.map +1 -1
- package/dist/esm/anchor-button/anchor-button.js.map +1 -1
- package/dist/esm/avatar/avatar.js +2 -0
- package/dist/esm/avatar/avatar.js.map +1 -1
- package/dist/esm/badge/badge.js +2 -0
- package/dist/esm/badge/badge.js.map +1 -1
- package/dist/esm/button/button.js +2 -0
- package/dist/esm/button/button.js.map +1 -1
- package/dist/esm/checkbox/checkbox.js +2 -0
- package/dist/esm/checkbox/checkbox.js.map +1 -1
- package/dist/esm/compound-button/compound-button.js +3 -0
- package/dist/esm/compound-button/compound-button.js.map +1 -1
- package/dist/esm/counter-badge/counter-badge.js +3 -0
- package/dist/esm/counter-badge/counter-badge.js.map +1 -1
- package/dist/esm/dialog/dialog.js +2 -0
- package/dist/esm/dialog/dialog.js.map +1 -1
- package/dist/esm/dialog-body/dialog-body.js +2 -0
- package/dist/esm/dialog-body/dialog-body.js.map +1 -1
- package/dist/esm/divider/divider.js +2 -0
- package/dist/esm/divider/divider.js.map +1 -1
- package/dist/esm/drawer/drawer.js +3 -0
- package/dist/esm/drawer/drawer.js.map +1 -1
- package/dist/esm/drawer-body/drawer-body.js +3 -0
- package/dist/esm/drawer-body/drawer-body.js.map +1 -1
- package/dist/esm/dropdown/dropdown.js +2 -0
- package/dist/esm/dropdown/dropdown.js.map +1 -1
- package/dist/esm/field/field.js +2 -0
- package/dist/esm/field/field.js.map +1 -1
- package/dist/esm/image/image.js +3 -0
- package/dist/esm/image/image.js.map +1 -1
- package/dist/esm/label/label.js +3 -0
- package/dist/esm/label/label.js.map +1 -1
- package/dist/esm/link/link.js +2 -0
- package/dist/esm/link/link.js.map +1 -1
- package/dist/esm/listbox/listbox.js +2 -0
- package/dist/esm/listbox/listbox.js.map +1 -1
- package/dist/esm/menu/menu.js +3 -0
- package/dist/esm/menu/menu.js.map +1 -1
- package/dist/esm/menu-button/menu-button.js +3 -0
- package/dist/esm/menu-button/menu-button.js.map +1 -1
- package/dist/esm/menu-item/menu-item.js +2 -0
- package/dist/esm/menu-item/menu-item.js.map +1 -1
- package/dist/esm/menu-list/menu-list.js +2 -0
- package/dist/esm/menu-list/menu-list.js.map +1 -1
- package/dist/esm/message-bar/message-bar.js +2 -0
- package/dist/esm/message-bar/message-bar.js.map +1 -1
- package/dist/esm/option/option.js +2 -0
- package/dist/esm/option/option.js.map +1 -1
- package/dist/esm/progress-bar/progress-bar.js +2 -0
- package/dist/esm/progress-bar/progress-bar.js.map +1 -1
- package/dist/esm/radio/radio.js +2 -0
- package/dist/esm/radio/radio.js.map +1 -1
- package/dist/esm/radio-group/radio-group.js +2 -0
- package/dist/esm/radio-group/radio-group.js.map +1 -1
- package/dist/esm/rating-display/rating-display.js +2 -0
- package/dist/esm/rating-display/rating-display.js.map +1 -1
- package/dist/esm/slider/slider.js +2 -0
- package/dist/esm/slider/slider.js.map +1 -1
- package/dist/esm/spinner/spinner.js +2 -0
- package/dist/esm/spinner/spinner.js.map +1 -1
- package/dist/esm/switch/switch.js +7 -0
- package/dist/esm/switch/switch.js.map +1 -1
- package/dist/esm/tab/tab.js +2 -0
- package/dist/esm/tab/tab.js.map +1 -1
- package/dist/esm/tab-panel/tab-panel.js +2 -0
- package/dist/esm/tab-panel/tab-panel.js.map +1 -1
- package/dist/esm/tablist/tablist.js +3 -0
- package/dist/esm/tablist/tablist.js.map +1 -1
- package/dist/esm/tabs/tabs.js +2 -0
- package/dist/esm/tabs/tabs.js.map +1 -1
- package/dist/esm/text/text.js +3 -0
- package/dist/esm/text/text.js.map +1 -1
- package/dist/esm/text-input/text-input.js +2 -0
- package/dist/esm/text-input/text-input.js.map +1 -1
- package/dist/esm/textarea/textarea.js +6 -0
- package/dist/esm/textarea/textarea.js.map +1 -1
- package/dist/esm/toggle-button/toggle-button.js +2 -0
- package/dist/esm/toggle-button/toggle-button.js.map +1 -1
- package/dist/esm/tooltip/tooltip.js +3 -0
- package/dist/esm/tooltip/tooltip.js.map +1 -1
- package/dist/esm/tree/tree.js +6 -0
- package/dist/esm/tree/tree.js.map +1 -1
- package/dist/esm/tree-item/tree-item.base.js +4 -0
- package/dist/esm/tree-item/tree-item.base.js.map +1 -1
- package/dist/esm/tree-item/tree-item.js +6 -0
- package/dist/esm/tree-item/tree-item.js.map +1 -1
- package/dist/web-components.d.ts +109 -0
- package/dist/web-components.js +4 -0
- package/dist/web-components.min.js +1 -1
- package/package.json +12 -4
package/dist/web-components.d.ts
CHANGED
|
@@ -16,6 +16,8 @@ import { ViewTemplate } from '@microsoft/fast-element';
|
|
|
16
16
|
* An Accordion Custom HTML Element
|
|
17
17
|
* Implements {@link https://www.w3.org/TR/wai-aria-practices-1.1/#accordion | ARIA Accordion}.
|
|
18
18
|
*
|
|
19
|
+
* @tag fluent-accordion
|
|
20
|
+
*
|
|
19
21
|
* @slot - The default slot for the accordion items
|
|
20
22
|
* @fires change - Fires a custom 'change' event when the active item changes
|
|
21
23
|
*
|
|
@@ -173,6 +175,9 @@ export declare type AccordionItemMarkerPosition = ValuesOf<typeof AccordionItemM
|
|
|
173
175
|
|
|
174
176
|
/**
|
|
175
177
|
* Accordion Item configuration options
|
|
178
|
+
*
|
|
179
|
+
* @tag fluent-accordion-item
|
|
180
|
+
*
|
|
176
181
|
* @public
|
|
177
182
|
*/
|
|
178
183
|
export declare type AccordionItemOptions = StartEndOptions<AccordionItem> & {
|
|
@@ -367,6 +372,8 @@ export declare type AnchorTarget = ValuesOf<typeof AnchorTarget>;
|
|
|
367
372
|
* An Avatar Custom HTML Element.
|
|
368
373
|
* Based on BaseAvatar and includes style and layout specific attributes
|
|
369
374
|
*
|
|
375
|
+
* @tag fluent-avatar
|
|
376
|
+
*
|
|
370
377
|
* @public
|
|
371
378
|
*/
|
|
372
379
|
export declare class Avatar extends BaseAvatar {
|
|
@@ -635,6 +642,8 @@ export declare class Badge extends FASTElement {
|
|
|
635
642
|
/**
|
|
636
643
|
* The appearance the badge should have.
|
|
637
644
|
*
|
|
645
|
+
* @tag fluent-badge
|
|
646
|
+
*
|
|
638
647
|
* @public
|
|
639
648
|
* @remarks
|
|
640
649
|
* HTML Attribute: appearance
|
|
@@ -3383,6 +3392,8 @@ export declare const borderRadiusXLarge = "var(--borderRadiusXLarge)";
|
|
|
3383
3392
|
* A Button Custom HTML Element.
|
|
3384
3393
|
* Based on BaseButton and includes style and layout specific attributes
|
|
3385
3394
|
*
|
|
3395
|
+
* @tag fluent-button
|
|
3396
|
+
*
|
|
3386
3397
|
* @public
|
|
3387
3398
|
*/
|
|
3388
3399
|
export declare class Button extends BaseButton {
|
|
@@ -3542,6 +3553,8 @@ export declare type ButtonType = ValuesOf<typeof ButtonType>;
|
|
|
3542
3553
|
* A Checkbox Custom HTML Element.
|
|
3543
3554
|
* Implements the {@link https://w3c.github.io/aria/#checkbox | ARIA checkbox }.
|
|
3544
3555
|
*
|
|
3556
|
+
* @tag fluent-checkbox
|
|
3557
|
+
*
|
|
3545
3558
|
* @slot checked-indicator - The checked indicator
|
|
3546
3559
|
* @slot indeterminate-indicator - The indeterminate indicator
|
|
3547
3560
|
* @fires change - Emits a custom change event when the checked state changes
|
|
@@ -5741,6 +5754,9 @@ export declare const colorTransparentStrokeInteractive = "var(--colorTransparent
|
|
|
5741
5754
|
|
|
5742
5755
|
/**
|
|
5743
5756
|
* The base class used for constructing a fluent-compound-button custom element
|
|
5757
|
+
*
|
|
5758
|
+
* @tag fluent-compound-button
|
|
5759
|
+
*
|
|
5744
5760
|
* @public
|
|
5745
5761
|
*/
|
|
5746
5762
|
export declare class CompoundButton extends Button {
|
|
@@ -5812,6 +5828,9 @@ export declare const CompoundButtonTemplate: ElementViewTemplate<CompoundButton>
|
|
|
5812
5828
|
|
|
5813
5829
|
/**
|
|
5814
5830
|
* The base class used for constructing a fluent-badge custom element
|
|
5831
|
+
*
|
|
5832
|
+
* @tag fluent-counter-badge
|
|
5833
|
+
*
|
|
5815
5834
|
* @public
|
|
5816
5835
|
*/
|
|
5817
5836
|
export declare class CounterBadge extends FASTElement {
|
|
@@ -6062,6 +6081,8 @@ export declare const darkModeStylesheetBehavior: (styles: ElementStyles) => Matc
|
|
|
6062
6081
|
/**
|
|
6063
6082
|
* A Dialog Custom HTML Element.
|
|
6064
6083
|
*
|
|
6084
|
+
* @tag fluent-dialog
|
|
6085
|
+
*
|
|
6065
6086
|
* @public
|
|
6066
6087
|
*/
|
|
6067
6088
|
export declare class Dialog extends FASTElement {
|
|
@@ -6119,6 +6140,8 @@ export declare class Dialog extends FASTElement {
|
|
|
6119
6140
|
/**
|
|
6120
6141
|
* Dialog Body component that extends the FASTElement class.
|
|
6121
6142
|
*
|
|
6143
|
+
* @tag fluent-dialog-body
|
|
6144
|
+
*
|
|
6122
6145
|
* @public
|
|
6123
6146
|
* @extends FASTElement
|
|
6124
6147
|
*/
|
|
@@ -6194,6 +6217,8 @@ export declare function display(displayValue: CSSDisplayPropertyValue): string;
|
|
|
6194
6217
|
* A Divider Custom HTML Element.
|
|
6195
6218
|
* Based on BaseDivider and includes style and layout specific attributes
|
|
6196
6219
|
*
|
|
6220
|
+
* @tag fluent-divider
|
|
6221
|
+
*
|
|
6197
6222
|
* @public
|
|
6198
6223
|
*/
|
|
6199
6224
|
export declare class Divider extends BaseDivider {
|
|
@@ -6310,6 +6335,9 @@ export declare const DividerTemplate: ElementViewTemplate<Divider>;
|
|
|
6310
6335
|
|
|
6311
6336
|
/**
|
|
6312
6337
|
* A Drawer component that allows content to be displayed in a side panel. It can be rendered as modal or non-modal.
|
|
6338
|
+
*
|
|
6339
|
+
* @tag fluent-drawer
|
|
6340
|
+
*
|
|
6313
6341
|
* @extends FASTElement
|
|
6314
6342
|
*
|
|
6315
6343
|
* @attr {DrawerType} type - Determines whether the drawer should be displayed as modal, non-modal, or alert.
|
|
@@ -6402,6 +6430,9 @@ export declare class Drawer extends FASTElement {
|
|
|
6402
6430
|
|
|
6403
6431
|
/**
|
|
6404
6432
|
* A DrawerBody component to layout drawer content
|
|
6433
|
+
*
|
|
6434
|
+
* @tag fluent-drawer-body
|
|
6435
|
+
*
|
|
6405
6436
|
* @extends FASTElement
|
|
6406
6437
|
*
|
|
6407
6438
|
* @slot title - The title slot
|
|
@@ -6498,6 +6529,8 @@ export declare type DrawerType = ValuesOf<typeof DrawerType>;
|
|
|
6498
6529
|
/**
|
|
6499
6530
|
* The Fluent Dropdown Element. Implements {@link @microsoft/fast-foundation#BaseDropdown}.
|
|
6500
6531
|
*
|
|
6532
|
+
* @tag fluent-dropdown
|
|
6533
|
+
*
|
|
6501
6534
|
* @slot - The default slot. Accepts a {@link (Listbox:class)} element.
|
|
6502
6535
|
* @slot indicator - The indicator slot.
|
|
6503
6536
|
* @slot control - The control slot. This slot is automatically populated and should not be manually manipulated.
|
|
@@ -6571,6 +6604,8 @@ export declare const dropdownInputTemplate: ViewTemplate<BaseDropdown, any>;
|
|
|
6571
6604
|
* A DropdownOption Custom HTML Element.
|
|
6572
6605
|
* Implements the {@link https://w3c.github.io/aria/#option | ARIA option } role.
|
|
6573
6606
|
*
|
|
6607
|
+
* @tag fluent-dropdown-option
|
|
6608
|
+
*
|
|
6574
6609
|
* @slot - The default slot for the option's content.
|
|
6575
6610
|
* @slot checked-indicator - The checked indicator.
|
|
6576
6611
|
* @slot description - Optional description content.
|
|
@@ -6981,6 +7016,8 @@ export declare function endSlotTemplate<TSource extends StartEnd = StartEnd, TPa
|
|
|
6981
7016
|
* A Field Custom HTML Element.
|
|
6982
7017
|
* Based on BaseField and includes style and layout specific attributes
|
|
6983
7018
|
*
|
|
7019
|
+
* @tag fluent-field
|
|
7020
|
+
*
|
|
6984
7021
|
* @public
|
|
6985
7022
|
*/
|
|
6986
7023
|
export declare class Field extends BaseField {
|
|
@@ -7155,6 +7192,9 @@ export declare const getDirection: (rootNode: HTMLElement) => Direction;
|
|
|
7155
7192
|
|
|
7156
7193
|
/**
|
|
7157
7194
|
* The base class used for constucting a fluent image custom element
|
|
7195
|
+
*
|
|
7196
|
+
* @tag fluent-image
|
|
7197
|
+
*
|
|
7158
7198
|
* @public
|
|
7159
7199
|
*/
|
|
7160
7200
|
declare class Image_2 extends FASTElement {
|
|
@@ -7293,6 +7333,9 @@ export declare function isTreeItem(element?: Node | null, tagName?: string): ele
|
|
|
7293
7333
|
|
|
7294
7334
|
/**
|
|
7295
7335
|
* The base class used for constructing a fluent-label custom element
|
|
7336
|
+
*
|
|
7337
|
+
* @tag fluent-label
|
|
7338
|
+
*
|
|
7296
7339
|
* @public
|
|
7297
7340
|
*/
|
|
7298
7341
|
export declare class Label extends FASTElement {
|
|
@@ -7446,6 +7489,8 @@ export declare const lineHeightHero900 = "var(--lineHeightHero900)";
|
|
|
7446
7489
|
* An Anchor Custom HTML Element.
|
|
7447
7490
|
* Based largely on the {@link https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a | <a> element }.
|
|
7448
7491
|
*
|
|
7492
|
+
* @tag fluent-link
|
|
7493
|
+
*
|
|
7449
7494
|
* @slot start - Content which can be provided before the link content
|
|
7450
7495
|
* @slot end - Content which can be provided after the link content
|
|
7451
7496
|
* @slot - The default slot for link content
|
|
@@ -7526,6 +7571,8 @@ export declare const LinkTemplate: ElementViewTemplate<Link>;
|
|
|
7526
7571
|
* A Listbox Custom HTML Element.
|
|
7527
7572
|
* Implements the {@link https://w3c.github.io/aria/#listbox | ARIA listbox } role.
|
|
7528
7573
|
*
|
|
7574
|
+
* @tag fluent-listbox
|
|
7575
|
+
*
|
|
7529
7576
|
* @slot - The default slot for the options.
|
|
7530
7577
|
* @emits connected - Dispatched when the element is connected to the DOM.
|
|
7531
7578
|
*
|
|
@@ -7782,6 +7829,9 @@ export declare type MediaQueryListListener = (this: MediaQueryList, ev?: MediaQu
|
|
|
7782
7829
|
|
|
7783
7830
|
/**
|
|
7784
7831
|
* A Menu component that provides a customizable menu element.
|
|
7832
|
+
*
|
|
7833
|
+
* @tag fluent-menu
|
|
7834
|
+
*
|
|
7785
7835
|
* @class Menu
|
|
7786
7836
|
* @extends FASTElement
|
|
7787
7837
|
*
|
|
@@ -8004,6 +8054,9 @@ export declare class Menu extends FASTElement {
|
|
|
8004
8054
|
|
|
8005
8055
|
/**
|
|
8006
8056
|
* The base class used for constructing a fluent-menu-button custom element
|
|
8057
|
+
*
|
|
8058
|
+
* @tag fluent-menu-button
|
|
8059
|
+
*
|
|
8007
8060
|
* @public
|
|
8008
8061
|
*/
|
|
8009
8062
|
export declare class MenuButton extends Button {
|
|
@@ -8084,6 +8137,8 @@ export declare const MenuDefinition: FASTElementDefinition<typeof Menu>;
|
|
|
8084
8137
|
* A Switch Custom HTML Element.
|
|
8085
8138
|
* Implements {@link https://www.w3.org/TR/wai-aria-1.1/#menuitem | ARIA menuitem }, {@link https://www.w3.org/TR/wai-aria-1.1/#menuitemcheckbox | ARIA menuitemcheckbox}, or {@link https://www.w3.org/TR/wai-aria-1.1/#menuitemradio | ARIA menuitemradio }.
|
|
8086
8139
|
*
|
|
8140
|
+
* @tag fluent-menu-item
|
|
8141
|
+
*
|
|
8087
8142
|
* @slot indicator - The checkbox or radio indicator
|
|
8088
8143
|
* @slot start - Content which can be provided before the menu item content
|
|
8089
8144
|
* @slot - The default slot for menu item content
|
|
@@ -8264,6 +8319,8 @@ export declare const MenuItemTemplate: ElementViewTemplate<MenuItem>;
|
|
|
8264
8319
|
* A Menu Custom HTML Element.
|
|
8265
8320
|
* Implements the {@link https://www.w3.org/TR/wai-aria-1.1/#menu | ARIA menu }.
|
|
8266
8321
|
*
|
|
8322
|
+
* @tag fluent-menu-list
|
|
8323
|
+
*
|
|
8267
8324
|
* @slot - The default slot for the menu items
|
|
8268
8325
|
*
|
|
8269
8326
|
* @public
|
|
@@ -8362,6 +8419,8 @@ export declare const MenuTemplate: ElementViewTemplate<Menu>;
|
|
|
8362
8419
|
/**
|
|
8363
8420
|
* A Message Bar Custom HTML Element.
|
|
8364
8421
|
*
|
|
8422
|
+
* @tag fluent-message-bar
|
|
8423
|
+
*
|
|
8365
8424
|
* @slot actions - Content that can be provided for the actions
|
|
8366
8425
|
* @slot dismiss - Content that can be provided for the dismiss button
|
|
8367
8426
|
* @slot - The default slot for the content
|
|
@@ -8467,6 +8526,8 @@ export declare const MessageBarTemplate: ElementViewTemplate<MessageBar>;
|
|
|
8467
8526
|
* A Progress HTML Element.
|
|
8468
8527
|
* Based on BaseProgressBar and includes style and layout specific attributes
|
|
8469
8528
|
*
|
|
8529
|
+
* @tag fluent-progress-bar
|
|
8530
|
+
*
|
|
8470
8531
|
* @public
|
|
8471
8532
|
*/
|
|
8472
8533
|
declare class ProgressBar_2 extends BaseProgressBar {
|
|
@@ -8553,6 +8614,8 @@ export declare type ProgressBarValidationState = ValuesOf<typeof ProgressBarVali
|
|
|
8553
8614
|
* A Radio Custom HTML Element.
|
|
8554
8615
|
* Implements the {@link https://w3c.github.io/aria/#radio | ARIA `radio` role}.
|
|
8555
8616
|
*
|
|
8617
|
+
* @tag fluent-radio
|
|
8618
|
+
*
|
|
8556
8619
|
* @slot checked-indicator - The checked indicator slot
|
|
8557
8620
|
* @fires change - Emits a custom change event when the checked state changes
|
|
8558
8621
|
* @fires input - Emits a custom input event when the checked state changes
|
|
@@ -8629,6 +8692,8 @@ export declare const RadioDefinition: FASTElementDefinition<typeof Radio>;
|
|
|
8629
8692
|
* A Radio Group Custom HTML Element.
|
|
8630
8693
|
* Implements the {@link https://w3c.github.io/aria/#radiogroup | ARIA `radiogroup` role}.
|
|
8631
8694
|
*
|
|
8695
|
+
* @tag fluent-radio-group
|
|
8696
|
+
*
|
|
8632
8697
|
* @public
|
|
8633
8698
|
*
|
|
8634
8699
|
* @slot - The default slot for the radio group
|
|
@@ -8950,6 +9015,8 @@ export declare const RadioTemplate: ElementViewTemplate<Radio>;
|
|
|
8950
9015
|
* A Rating Display Custom HTML Element.
|
|
8951
9016
|
* Based on BaseRatingDisplay and includes style and layout specific attributes
|
|
8952
9017
|
*
|
|
9018
|
+
* @tag fluent-rating-display
|
|
9019
|
+
*
|
|
8953
9020
|
* @public
|
|
8954
9021
|
*/
|
|
8955
9022
|
export declare class RatingDisplay extends BaseRatingDisplay {
|
|
@@ -9155,6 +9222,8 @@ export declare const shadow8Brand = "var(--shadow8Brand)";
|
|
|
9155
9222
|
/**
|
|
9156
9223
|
* The base class used for constructing a fluent-slider custom element
|
|
9157
9224
|
*
|
|
9225
|
+
* @tag fluent-slider
|
|
9226
|
+
*
|
|
9158
9227
|
* @slot thumb - The slot for a custom thumb element.
|
|
9159
9228
|
* @csspart thumb-container - The container element of the thumb.
|
|
9160
9229
|
* @csspart track-container - The container element of the track.
|
|
@@ -9733,6 +9802,8 @@ export declare const spacingVerticalXXXL = "var(--spacingVerticalXXXL)";
|
|
|
9733
9802
|
* A Spinner Custom HTML Element.
|
|
9734
9803
|
* Based on BaseSpinner and includes style and layout specific attributes
|
|
9735
9804
|
*
|
|
9805
|
+
* @tag fluent-spinner
|
|
9806
|
+
*
|
|
9736
9807
|
* @public
|
|
9737
9808
|
*/
|
|
9738
9809
|
export declare class Spinner extends BaseSpinner {
|
|
@@ -9882,6 +9953,13 @@ declare const styles: ElementStyles;
|
|
|
9882
9953
|
export { styles as ButtonStyles }
|
|
9883
9954
|
export { styles as MenuButtonStyles }
|
|
9884
9955
|
|
|
9956
|
+
/**
|
|
9957
|
+
* A Switch Custom HTML Element.
|
|
9958
|
+
* Based on BaseCheckbox and includes style and layout specific attributes
|
|
9959
|
+
*
|
|
9960
|
+
* @tag fluent-switch
|
|
9961
|
+
*
|
|
9962
|
+
*/
|
|
9885
9963
|
export declare class Switch extends BaseCheckbox {
|
|
9886
9964
|
constructor();
|
|
9887
9965
|
}
|
|
@@ -9921,6 +9999,8 @@ export declare const SwitchTemplate: ElementViewTemplate<Switch>;
|
|
|
9921
9999
|
|
|
9922
10000
|
/**
|
|
9923
10001
|
* Tab extends the FASTTab and is a child of the TabList
|
|
10002
|
+
*
|
|
10003
|
+
* @tag fluent-tab
|
|
9924
10004
|
*/
|
|
9925
10005
|
export declare class Tab extends FASTElement {
|
|
9926
10006
|
/**
|
|
@@ -9941,6 +10021,9 @@ export declare const TabDefinition: FASTElementDefinition<typeof Tab>;
|
|
|
9941
10021
|
|
|
9942
10022
|
/**
|
|
9943
10023
|
* A BaseTablist component with extra logic for handling the styled active tab indicator.
|
|
10024
|
+
*
|
|
10025
|
+
* @tag fluent-tablist
|
|
10026
|
+
*
|
|
9944
10027
|
* @public
|
|
9945
10028
|
*/
|
|
9946
10029
|
export declare class Tablist extends BaseTablist {
|
|
@@ -10103,6 +10186,8 @@ export declare type TabOptions = StartEndOptions<Tab>;
|
|
|
10103
10186
|
|
|
10104
10187
|
/**
|
|
10105
10188
|
* @deprecated - Use tablist instead
|
|
10189
|
+
*
|
|
10190
|
+
* @tag fluent-tab-panel
|
|
10106
10191
|
*/
|
|
10107
10192
|
export declare class TabPanel extends FASTElement {
|
|
10108
10193
|
}
|
|
@@ -10118,6 +10203,8 @@ export declare const TabPanelTemplate: ElementViewTemplate<TabPanel, any>;
|
|
|
10118
10203
|
|
|
10119
10204
|
/**
|
|
10120
10205
|
* @deprecated - Use tablist instead
|
|
10206
|
+
*
|
|
10207
|
+
* @tag fluent-tabs
|
|
10121
10208
|
*/
|
|
10122
10209
|
export declare class Tabs extends BaseTabs {
|
|
10123
10210
|
/**
|
|
@@ -10264,6 +10351,9 @@ export declare const TabTemplate: ElementViewTemplate<Tab, any>;
|
|
|
10264
10351
|
|
|
10265
10352
|
/**
|
|
10266
10353
|
* The base class used for constructing a fluent-text custom element
|
|
10354
|
+
*
|
|
10355
|
+
* @tag fluent-text
|
|
10356
|
+
*
|
|
10267
10357
|
* @public
|
|
10268
10358
|
*/
|
|
10269
10359
|
declare class Text_2 extends FASTElement {
|
|
@@ -10376,6 +10466,12 @@ export declare const TextAlign: {
|
|
|
10376
10466
|
*/
|
|
10377
10467
|
export declare type TextAlign = ValuesOf<typeof TextAlign>;
|
|
10378
10468
|
|
|
10469
|
+
/**
|
|
10470
|
+
* The Fluent TextArea Element.
|
|
10471
|
+
*
|
|
10472
|
+
* @tag fluent-text-area
|
|
10473
|
+
*
|
|
10474
|
+
*/
|
|
10379
10475
|
export declare class TextArea extends BaseTextArea {
|
|
10380
10476
|
protected labelSlottedNodesChanged(): void;
|
|
10381
10477
|
/**
|
|
@@ -10524,6 +10620,8 @@ export declare type TextFont = ValuesOf<typeof TextFont>;
|
|
|
10524
10620
|
* A Text Input Custom HTML Element.
|
|
10525
10621
|
* Based on BaseTextInput and includes style and layout specific attributes
|
|
10526
10622
|
*
|
|
10623
|
+
* @tag fluent-text-input
|
|
10624
|
+
*
|
|
10527
10625
|
* @public
|
|
10528
10626
|
*/
|
|
10529
10627
|
export declare class TextInput extends BaseTextInput {
|
|
@@ -10686,6 +10784,8 @@ export declare type Theme = Record<string, string | number>;
|
|
|
10686
10784
|
/**
|
|
10687
10785
|
* The base class used for constructing a `<fluent-toggle-button>` custom element.
|
|
10688
10786
|
*
|
|
10787
|
+
* @tag fluent-toggle-button
|
|
10788
|
+
*
|
|
10689
10789
|
* @public
|
|
10690
10790
|
*/
|
|
10691
10791
|
export declare class ToggleButton extends Button {
|
|
@@ -10809,6 +10909,9 @@ export declare const ToggleButtonTemplate: ElementViewTemplate<ToggleButton>;
|
|
|
10809
10909
|
/**
|
|
10810
10910
|
* A Tooltip Custom HTML Element.
|
|
10811
10911
|
* Based on ARIA APG Tooltip Pattern {@link https://www.w3.org/WAI/ARIA/apg/patterns/tooltip/ }
|
|
10912
|
+
*
|
|
10913
|
+
* @tag fluent-tooltip
|
|
10914
|
+
*
|
|
10812
10915
|
* @public
|
|
10813
10916
|
*/
|
|
10814
10917
|
export declare class Tooltip extends FASTElement {
|
|
@@ -10937,6 +11040,12 @@ export declare const TooltipStyles: ElementStyles;
|
|
|
10937
11040
|
*/
|
|
10938
11041
|
export declare const TooltipTemplate: ViewTemplate<Tooltip, any>;
|
|
10939
11042
|
|
|
11043
|
+
/**
|
|
11044
|
+
* The Fluent Tree Item Element. Implements {@link @microsoft/fast-foundation#BaseTreeItem}.
|
|
11045
|
+
*
|
|
11046
|
+
* @tag fluent-tree-item
|
|
11047
|
+
*
|
|
11048
|
+
*/
|
|
10940
11049
|
export declare class TreeItem extends BaseTreeItem {
|
|
10941
11050
|
/**
|
|
10942
11051
|
* The size of the tree item element
|
package/dist/web-components.js
CHANGED
|
@@ -13563,6 +13563,10 @@ class BaseTreeItem extends FASTElement {
|
|
|
13563
13563
|
* @public
|
|
13564
13564
|
*/
|
|
13565
13565
|
expandedChanged(prev, next) {
|
|
13566
|
+
this.$emit("toggle", {
|
|
13567
|
+
oldState: prev ? "open" : "closed",
|
|
13568
|
+
newState: next ? "open" : "closed"
|
|
13569
|
+
});
|
|
13566
13570
|
toggleState(this.elementInternals, "expanded", next);
|
|
13567
13571
|
if (this.childTreeItems && this.childTreeItems.length > 0) {
|
|
13568
13572
|
this.elementInternals.ariaExpanded = next ? "true" : "false";
|
|
@@ -564,7 +564,7 @@ const p=Object.freeze({prefix:"fluent",shadowRootMode:"open",registry:customElem
|
|
|
564
564
|
|
|
565
565
|
:host(:not(:popover-open)){display:none}:host{--position-area:block-start;--position-try-options:flip-block;--block-offset:${qt};--inline-offset:${pe};background:${I};border-radius:${C};border:1px solid ${J};box-sizing:border-box;color:${P};display:inline-flex;filter:drop-shadow(0 0 2px ${Zl}) drop-shadow(0 4px 8px ${Jl});font-family:${v};font-size:${F};inset:unset;line-height:${X};margin:unset;max-width:240px;overflow:visible;padding:4px ${ne} 6px;position:absolute;position-area:var(--position-area);position-try-options:var(--position-try-options);width:auto;z-index:1}@supports (inset-area:block-start){:host{inset-area:var(--position-area);position-try-fallbacks:var(--position-try-options)}}:host(:is([positioning^='above'],[positioning^='below'],:not([positioning]))){margin-block:var(--block-offset)}:host(:is([positioning^='before'],[positioning^='after'])){margin-inline:var(--inline-offset);--position-try-options:flip-inline}:host([positioning='above-start']){--position-area:${Te["above-start"]}}:host([positioning='above']){--position-area:${Te.above}}:host([positioning='above-end']){--position-area:${Te["above-end"]}}:host([positioning='below-start']){--position-area:${Te["below-start"]}}:host([positioning='below']){--position-area:${Te.below}}:host([positioning='below-end']){--position-area:${Te["below-end"]}}:host([positioning='before-top']){--position-area:${Te["before-top"]}}:host([positioning='before']){--position-area:${Te.before}}:host([positioning='before-bottom']){--position-area:${Te["before-bottom"]}}:host([positioning='after-top']){--position-area:${Te["after-top"]}}:host([positioning='after']){--position-area:${Te.after}}:host([positioning='after-bottom']){--position-area:${Te["after-bottom"]}}`,Nf=b`<template popover aria-hidden="true"><slot></slot></template>`,Ff=_o.compose({name:`${p.prefix}-tooltip`,template:Nf,styles:Ef});Ff.define(p.registry);const Ca={subtle:"subtle",subtleAlpha:"subtle-alpha",transparent:"transparent"},Sa={small:"small",medium:"medium"};function Ee(o,e="-tree-item"){return o?.nodeType!==Node.ELEMENT_NODE?!1:o.tagName.toLowerCase().endsWith(e)}var Mf=Object.defineProperty,Df=Object.getOwnPropertyDescriptor,Ia=(o,e,t,r)=>{for(var i=r>1?void 0:r?Df(e,t):e,s=o.length-1,n;s>=0;s--)(n=o[s])&&(i=(r?n(e,t,i):n(i))||i);return r&&i&&Mf(e,t,i),i};class Zi extends ${constructor(){super(),this.currentSelected=null,this.currentFocused=null,this.elementInternals=this.attachInternals(),this.childTreeItems=[],this.elementInternals.role="tree"}childTreeItemsChanged(){this.updateCurrentSelected()}updateCurrentSelected(){const e=this.querySelector("[selected]");this.currentSelected=e,(this.currentFocused===null||!this.contains(this.currentFocused))&&(this.currentFocused=this.getValidFocusableItem())}keydownHandler(e){if(e.defaultPrevented)return;const t=e.target;if(!Ee(t)||this.childTreeItems.length<1)return!0;const r=this.getVisibleNodes();switch(e.key){case go:{r.length&&r[0].focus();return}case po:{r.length&&r[r.length-1].focus();return}case co:{t?.childTreeItems?.length&&t.expanded?t.expanded=!1:Ee(t.parentElement)&&t.parentElement.focus();return}case ho:{t?.childTreeItems?.length&&(t.expanded?this.focusNextNode(1,t):t.expanded=!0);return}case lo:{this.focusNextNode(1,t);return}case uo:{this.focusNextNode(-1,t);return}case bo:{this.clickHandler(e);return}case Yo:{t.selected=!0;return}}return!0}focusHandler(e){if(!(this.childTreeItems.length<1)){if(e.target===this){this.currentFocused=this.getValidFocusableItem(),this.currentFocused?.focus();return}this.contains(e.target)&&(this.setAttribute("tabindex","-1"),this.currentFocused=e.target)}}blurHandler(e){e.target instanceof HTMLElement&&(e.relatedTarget===null||!this.contains(e.relatedTarget))&&this.setAttribute("tabindex","0")}clickHandler(e){if(e.defaultPrevented)return;if(!Ee(e.target))return!0;const t=e.target;t.toggleExpansion(),t.selected=!0}changeHandler(e){if(e.defaultPrevented)return;if(!Ee(e.target))return!0;const t=e.target;t.selected?(this.currentSelected&&this.currentSelected!==t&&Ee(this.currentSelected)&&(this.currentSelected.selected=!1),this.currentSelected=t):!t.selected&&this.currentSelected===t&&(this.currentSelected=null)}getValidFocusableItem(){const e=this.getVisibleNodes();let t=e.findIndex(r=>r.selected);return t===-1&&(t=e.findIndex(r=>Ee(r))),t!==-1?e[t]:null}getVisibleNodes(){return Array.from(this.querySelectorAll("*")).filter(e=>Ee(e)&&e.offsetParent!==null)}focusNextNode(e,t){const r=this.getVisibleNodes();if(!r.length)return;const i=r[r.indexOf(t)+e];si(i)&&i.focus()}}Ia([g],Zi.prototype,"currentSelected",2),Ia([g],Zi.prototype,"childTreeItems",2);var Vf=Object.defineProperty,Hf=Object.getOwnPropertyDescriptor,Pa=(o,e,t,r)=>{for(var i=r>1?void 0:r?Hf(e,t):e,s=o.length-1,n;s>=0;s--)(n=o[s])&&(i=(r?n(e,t,i):n(i))||i);return r&&i&&Vf(e,t,i),i};class Ji extends Zi{constructor(){super(...arguments),this.size=Sa.small,this.appearance=Ca.subtle}sizeChanged(){this.updateSizeAndAppearance()}appearanceChanged(){this.updateSizeAndAppearance()}childTreeItemsChanged(){super.childTreeItemsChanged(),this.updateSizeAndAppearance()}updateSizeAndAppearance(){this.childTreeItems?.length&&this.childTreeItems.forEach(e=>{e.size=this.size,e.appearance=this.appearance})}}Pa([a],Ji.prototype,"size",2),Pa([a],Ji.prototype,"appearance",2);const Lf=u`
|
|
566
566
|
${k("block")}
|
|
567
|
-
:host{outline:none}`,jf=b`<template tabindex="0" @click="${(o,e)=>o.clickHandler(e.event)}" @focusin="${(o,e)=>o.focusHandler(e.event)}" @focusout="${(o,e)=>o.blurHandler(e.event)}" @keydown="${(o,e)=>o.keydownHandler(e.event)}" @change="${(o,e)=>o.changeHandler(e.event)}" ${ri({property:"childTreeItems",filter:o=>Ee(o)})}><slot></slot></template>`,Rf=Ji.compose({name:`${p.prefix}-tree`,template:jf,styles:Lf});Rf.define(p.registry);var qf=Object.defineProperty,Gf=Object.getOwnPropertyDescriptor,Eo=(o,e,t,r)=>{for(var i=r>1?void 0:r?Gf(e,t):e,s=o.length-1,n;s>=0;s--)(n=o[s])&&(i=(r?n(e,t,i):n(i))||i);return r&&i&&qf(e,t,i),i};class ro extends ${constructor(){super(),this.elementInternals=this.attachInternals(),this.expanded=!1,this.selected=!1,this.empty=!1,this.childTreeItems=[],this.elementInternals.role="treeitem"}expandedChanged(e,t){y(this.elementInternals,"expanded",t),this.childTreeItems&&this.childTreeItems.length>0&&(this.elementInternals.ariaExpanded=t?"true":"false")}selectedChanged(e,t){this.$emit("change"),y(this.elementInternals,"selected",t),this.elementInternals.ariaSelected=t?"true":"false"}dataIndentChanged(e,t){this.styles!==void 0&&this.$fastController.removeStyles(this.styles),this.styles=u`
|
|
567
|
+
:host{outline:none}`,jf=b`<template tabindex="0" @click="${(o,e)=>o.clickHandler(e.event)}" @focusin="${(o,e)=>o.focusHandler(e.event)}" @focusout="${(o,e)=>o.blurHandler(e.event)}" @keydown="${(o,e)=>o.keydownHandler(e.event)}" @change="${(o,e)=>o.changeHandler(e.event)}" ${ri({property:"childTreeItems",filter:o=>Ee(o)})}><slot></slot></template>`,Rf=Ji.compose({name:`${p.prefix}-tree`,template:jf,styles:Lf});Rf.define(p.registry);var qf=Object.defineProperty,Gf=Object.getOwnPropertyDescriptor,Eo=(o,e,t,r)=>{for(var i=r>1?void 0:r?Gf(e,t):e,s=o.length-1,n;s>=0;s--)(n=o[s])&&(i=(r?n(e,t,i):n(i))||i);return r&&i&&qf(e,t,i),i};class ro extends ${constructor(){super(),this.elementInternals=this.attachInternals(),this.expanded=!1,this.selected=!1,this.empty=!1,this.childTreeItems=[],this.elementInternals.role="treeitem"}expandedChanged(e,t){this.$emit("toggle",{oldState:e?"open":"closed",newState:t?"open":"closed"}),y(this.elementInternals,"expanded",t),this.childTreeItems&&this.childTreeItems.length>0&&(this.elementInternals.ariaExpanded=t?"true":"false")}selectedChanged(e,t){this.$emit("change"),y(this.elementInternals,"selected",t),this.elementInternals.ariaSelected=t?"true":"false"}dataIndentChanged(e,t){this.styles!==void 0&&this.$fastController.removeStyles(this.styles),this.styles=u`
|
|
568
568
|
:host{--indent:${t}}`,this.$fastController.addStyles(this.styles)}childTreeItemsChanged(){this.empty=this.childTreeItems?.length===0,this.updateChildTreeItems()}updateChildTreeItems(){this.childTreeItems?.length&&(this.expanded||(this.expanded=Array.from(this.querySelectorAll("[selected]")).some(e=>Ee(e))),this.childTreeItems.forEach(e=>{this.setIndent(e)}))}setIndent(e){const t=this.dataIndent??0;e.dataIndent=t+1}toggleExpansion(){this.childTreeItems?.length&&(this.expanded=!this.expanded)}get isNestedItem(){return Ee(this.parentElement)}}Eo([a({mode:"boolean"})],ro.prototype,"expanded",2),Eo([a({mode:"boolean"})],ro.prototype,"selected",2),Eo([a({mode:"boolean"})],ro.prototype,"empty",2),Eo([a({attribute:"data-indent"})],ro.prototype,"dataIndent",2),Eo([g],ro.prototype,"childTreeItems",2);var Wf=Object.defineProperty,Xf=Object.getOwnPropertyDescriptor,za=(o,e,t,r)=>{for(var i=r>1?void 0:r?Xf(e,t):e,s=o.length-1,n;s>=0;s--)(n=o[s])&&(i=(r?n(e,t,i):n(i))||i);return r&&i&&Wf(e,t,i),i};class es extends ro{constructor(){super(...arguments),this.size=Sa.small,this.appearance=Ca.subtle}sizeChanged(){this.updateSizeAndAppearance()}appearanceChanged(){this.updateSizeAndAppearance()}childTreeItemsChanged(){super.childTreeItemsChanged(),this.updateSizeAndAppearance()}updateSizeAndAppearance(){this.childTreeItems?.length&&this.childTreeItems.forEach(e=>{e.size=this.size,e.appearance=this.appearance})}}za([a],es.prototype,"size",2),za([a],es.prototype,"appearance",2);const Uf=u`
|
|
569
569
|
${k("block")}
|
|
570
570
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluentui/web-components",
|
|
3
3
|
"description": "A library of Fluent Web Components",
|
|
4
|
-
"version": "3.0.0-beta.
|
|
4
|
+
"version": "3.0.0-beta.95",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Microsoft",
|
|
7
7
|
"url": "https://discord.gg/FcSNfg4"
|
|
@@ -23,7 +23,8 @@
|
|
|
23
23
|
"dist/dts/",
|
|
24
24
|
"dist/esm/",
|
|
25
25
|
"dist/*.js",
|
|
26
|
-
"dist/*.d.ts"
|
|
26
|
+
"dist/*.d.ts",
|
|
27
|
+
"custom-elements.json"
|
|
27
28
|
],
|
|
28
29
|
"exports": {
|
|
29
30
|
".": {
|
|
@@ -76,6 +77,7 @@
|
|
|
76
77
|
"./dist/web-components.min.js"
|
|
77
78
|
],
|
|
78
79
|
"scripts": {
|
|
80
|
+
"analyze": "cem analyze",
|
|
79
81
|
"verify-packaging": "node ./scripts/verify-packaging",
|
|
80
82
|
"type-check": "node ./scripts/type-check",
|
|
81
83
|
"benchmark": "yarn clean && yarn compile:benchmark && yarn compile && node ./scripts/run-benchmarks",
|
|
@@ -83,7 +85,7 @@
|
|
|
83
85
|
"compile:benchmark": "rollup -c rollup.bench.js",
|
|
84
86
|
"clean": "node ./scripts/clean dist",
|
|
85
87
|
"generate-api": "api-extractor run --local",
|
|
86
|
-
"build": "yarn compile && yarn rollup -c && yarn generate-api",
|
|
88
|
+
"build": "yarn compile && yarn rollup -c && yarn generate-api && yarn analyze",
|
|
87
89
|
"lint": "ESLINT_USE_FLAT_CONFIG=false eslint . --ext .ts",
|
|
88
90
|
"lint:fix": "eslint . --ext .ts --fix",
|
|
89
91
|
"format": "prettier -w src/**/*.{ts,html} --ignore-path ../../.prettierignore",
|
|
@@ -96,11 +98,16 @@
|
|
|
96
98
|
"e2e:local": "node ./scripts/e2e.js --ui"
|
|
97
99
|
},
|
|
98
100
|
"devDependencies": {
|
|
101
|
+
"@custom-elements-manifest/analyzer": "0.10.4",
|
|
99
102
|
"@fluentui/scripts-api-extractor": "*",
|
|
100
103
|
"@microsoft/fast-element": "2.0.0",
|
|
101
104
|
"@tensile-perf/web-components": "~0.2.0",
|
|
102
105
|
"@storybook/html": "7.6.20",
|
|
103
106
|
"@storybook/html-webpack5": "7.6.20",
|
|
107
|
+
"@wc-toolkit/cem-validator": "1.0.3",
|
|
108
|
+
"@wc-toolkit/cem-inheritance": "1.0.4",
|
|
109
|
+
"@wc-toolkit/module-path-resolver": "1.0.0",
|
|
110
|
+
"@wc-toolkit/type-parser": "1.0.3",
|
|
104
111
|
"chromedriver": "^125.0.0"
|
|
105
112
|
},
|
|
106
113
|
"dependencies": {
|
|
@@ -119,5 +126,6 @@
|
|
|
119
126
|
"patch"
|
|
120
127
|
],
|
|
121
128
|
"tag": "beta"
|
|
122
|
-
}
|
|
129
|
+
},
|
|
130
|
+
"customElements": "./custom-elements.json"
|
|
123
131
|
}
|