@fluentui/web-components 3.0.0-rc.26 → 3.0.0-rc.28
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 +21 -2
- package/README.md +26 -0
- package/custom-elements.json +41 -56
- package/dist/esm/accordion/accordion.styles.css +11 -7
- package/dist/esm/accordion/accordion.template.html +4 -3
- package/dist/esm/accordion-item/accordion-item.styles.css +174 -170
- package/dist/esm/accordion-item/accordion-item.template.html +38 -31
- package/dist/esm/anchor-button/anchor-button.styles.css +224 -223
- package/dist/esm/anchor-button/anchor-button.template.html +8 -11
- package/dist/esm/avatar/avatar.styles.css +475 -470
- package/dist/esm/avatar/avatar.template.html +10 -14
- package/dist/esm/badge/badge.styles.css +264 -266
- package/dist/esm/badge/badge.template.html +5 -2
- package/dist/esm/button/button.base.js +2 -0
- package/dist/esm/button/button.base.js.map +1 -1
- package/dist/esm/button/button.styles.css +260 -259
- package/dist/esm/button/button.template.html +8 -10
- package/dist/esm/checkbox/checkbox.base.js +2 -0
- package/dist/esm/checkbox/checkbox.base.js.map +1 -1
- package/dist/esm/checkbox/checkbox.styles.css +146 -142
- package/dist/esm/checkbox/checkbox.template.html +21 -16
- package/dist/esm/compound-button/compound-button.styles.css +363 -365
- package/dist/esm/compound-button/compound-button.template.html +9 -11
- package/dist/esm/counter-badge/counter-badge.styles.css +177 -177
- package/dist/esm/counter-badge/counter-badge.template.html +5 -2
- package/dist/esm/dialog/dialog.styles.css +65 -66
- package/dist/esm/dialog/dialog.template.html +18 -15
- package/dist/esm/dialog-body/dialog-body.styles.css +81 -76
- package/dist/esm/dialog-body/dialog-body.styles.js +1 -0
- package/dist/esm/dialog-body/dialog-body.styles.js.map +1 -1
- package/dist/esm/dialog-body/dialog-body.template.html +2 -1
- package/dist/esm/divider/divider.styles.css +105 -101
- package/dist/esm/divider/divider.template.html +6 -1
- package/dist/esm/drawer/drawer.styles.css +124 -119
- package/dist/esm/drawer/drawer.template.html +5 -2
- package/dist/esm/drawer-body/drawer-body.styles.css +29 -26
- package/dist/esm/drawer-body/drawer-body.template.html +5 -2
- package/dist/esm/dropdown/dropdown.base.d.ts +1 -1
- package/dist/esm/dropdown/dropdown.base.js +3 -1
- package/dist/esm/dropdown/dropdown.base.js.map +1 -1
- package/dist/esm/dropdown/dropdown.styles.css +192 -190
- package/dist/esm/dropdown/dropdown.styles.js +1 -0
- package/dist/esm/dropdown/dropdown.styles.js.map +1 -1
- package/dist/esm/dropdown/dropdown.template.html +26 -19
- package/dist/esm/field/field.styles.css +125 -121
- package/dist/esm/field/field.template.html +3 -2
- package/dist/esm/image/image.styles.css +49 -50
- package/dist/esm/image/image.template.html +6 -1
- package/dist/esm/label/label.styles.css +34 -30
- package/dist/esm/label/label.template.html +5 -2
- package/dist/esm/link/link.styles.css +58 -54
- package/dist/esm/link/link.template.html +4 -7
- package/dist/esm/listbox/listbox.styles.css +40 -36
- package/dist/esm/listbox/listbox.styles.js +2 -2
- package/dist/esm/listbox/listbox.template.html +4 -6
- package/dist/esm/menu/menu.d.ts +8 -8
- package/dist/esm/menu/menu.js.map +1 -1
- package/dist/esm/menu/menu.styles.css +56 -52
- package/dist/esm/menu/menu.styles.js +5 -5
- package/dist/esm/menu/menu.template.html +6 -5
- package/dist/esm/menu-button/menu-button.styles.css +260 -259
- package/dist/esm/menu-button/menu-button.template.html +23 -14
- 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-item/menu-item.styles.css +141 -137
- package/dist/esm/menu-item/menu-item.styles.js +8 -3
- package/dist/esm/menu-item/menu-item.styles.js.map +1 -1
- package/dist/esm/menu-item/menu-item.template.html +48 -17
- package/dist/esm/menu-list/menu-list.styles.css +19 -15
- package/dist/esm/menu-list/menu-list.template.html +4 -3
- package/dist/esm/message-bar/message-bar.styles.css +83 -84
- package/dist/esm/message-bar/message-bar.template.html +7 -2
- package/dist/esm/option/option.styles.css +117 -114
- package/dist/esm/option/option.template.html +17 -14
- package/dist/esm/progress-bar/progress-bar.styles.css +83 -79
- package/dist/esm/progress-bar/progress-bar.template.html +4 -1
- package/dist/esm/radio/radio.styles.css +100 -96
- package/dist/esm/radio/radio.template.html +6 -9
- package/dist/esm/radio-group/radio-group.styles.css +45 -41
- package/dist/esm/radio-group/radio-group.template.html +11 -10
- package/dist/esm/rating-display/rating-display.styles.css +136 -134
- package/dist/esm/rating-display/rating-display.template.html +5 -2
- package/dist/esm/slider/slider.js +2 -0
- package/dist/esm/slider/slider.js.map +1 -1
- package/dist/esm/slider/slider.styles.css +186 -182
- package/dist/esm/slider/slider.template.html +13 -15
- package/dist/esm/spinner/spinner.styles.css +155 -151
- package/dist/esm/spinner/spinner.template.html +16 -11
- package/dist/esm/switch/switch.styles.css +112 -108
- package/dist/esm/switch/switch.template.html +9 -8
- package/dist/esm/tab/tab.js +2 -0
- package/dist/esm/tab/tab.js.map +1 -1
- package/dist/esm/tab/tab.styles.css +112 -108
- package/dist/esm/tab/tab.template.html +6 -5
- package/dist/esm/tablist/tablist.styles.css +194 -190
- package/dist/esm/tablist/tablist.template.html +2 -5
- package/dist/esm/text/text.styles.css +105 -101
- package/dist/esm/text/text.template.html +6 -1
- package/dist/esm/text-input/text-input.base.d.ts +0 -7
- package/dist/esm/text-input/text-input.base.js +3 -14
- package/dist/esm/text-input/text-input.base.js.map +1 -1
- package/dist/esm/text-input/text-input.styles.css +199 -195
- package/dist/esm/text-input/text-input.template.html +34 -35
- package/dist/esm/text-input/text-input.template.js +1 -4
- package/dist/esm/text-input/text-input.template.js.map +1 -1
- package/dist/esm/textarea/textarea.base.js +2 -0
- package/dist/esm/textarea/textarea.base.js.map +1 -1
- package/dist/esm/textarea/textarea.styles.css +254 -250
- package/dist/esm/textarea/textarea.template.html +28 -27
- package/dist/esm/toggle-button/toggle-button.styles.css +360 -357
- package/dist/esm/toggle-button/toggle-button.template.html +8 -10
- package/dist/esm/tooltip/tooltip.styles.css +81 -77
- package/dist/esm/tooltip/tooltip.template.html +6 -1
- package/dist/esm/tree/tree.styles.css +9 -5
- package/dist/esm/tree/tree.template.html +3 -2
- package/dist/esm/tree-item/tree-item.base.js +2 -0
- package/dist/esm/tree-item/tree-item.base.js.map +1 -1
- package/dist/esm/tree-item/tree-item.styles.css +157 -153
- package/dist/esm/tree-item/tree-item.template.html +8 -7
- package/dist/esm/utils/autofocus.d.ts +12 -0
- package/dist/esm/utils/autofocus.js +25 -0
- package/dist/esm/utils/autofocus.js.map +1 -0
- package/dist/web-components-all.js +26 -20
- package/dist/web-components-all.min.js +15 -15
- package/dist/web-components.d.ts +9 -16
- package/dist/web-components.js +26 -20
- package/dist/web-components.min.js +15 -15
- package/package.json +4 -5
|
@@ -6266,6 +6266,16 @@ const definition$B = Badge.compose({
|
|
|
6266
6266
|
|
|
6267
6267
|
definition$B.define(FluentDesignSystem.registry);
|
|
6268
6268
|
|
|
6269
|
+
function maybeSetAutoFocus(element) {
|
|
6270
|
+
const doc = element.ownerDocument;
|
|
6271
|
+
if (element?.isConnected && element?.hasAttribute("autofocus") && // Note: opacity=0 is considered visible based on the native `autofocus` implementation
|
|
6272
|
+
element?.checkVisibility?.({ contentVisibilityAuto: true, visibilityProperty: true }) && [null, element, doc.body, doc.documentElement].includes(doc.activeElement)) {
|
|
6273
|
+
Updates.enqueue(() => {
|
|
6274
|
+
element.focus();
|
|
6275
|
+
});
|
|
6276
|
+
}
|
|
6277
|
+
}
|
|
6278
|
+
|
|
6269
6279
|
var __defProp$H = Object.defineProperty;
|
|
6270
6280
|
var __getOwnPropDesc$H = Object.getOwnPropertyDescriptor;
|
|
6271
6281
|
var __decorateClass$H = (decorators, target, key, kind) => {
|
|
@@ -6358,6 +6368,7 @@ class BaseButton extends FASTElement {
|
|
|
6358
6368
|
super.connectedCallback();
|
|
6359
6369
|
this.elementInternals.ariaDisabled = `${!!this.disabledFocusable}`;
|
|
6360
6370
|
this.setTabIndex();
|
|
6371
|
+
maybeSetAutoFocus(this);
|
|
6361
6372
|
}
|
|
6362
6373
|
/**
|
|
6363
6374
|
* This fallback creates a new slot, then creates a submit button to mirror the custom element's
|
|
@@ -6821,6 +6832,7 @@ class BaseCheckbox extends FASTElement {
|
|
|
6821
6832
|
this.disabled = !!this.disabledAttribute;
|
|
6822
6833
|
this.setAriaChecked();
|
|
6823
6834
|
this.setValidity();
|
|
6835
|
+
maybeSetAutoFocus(this);
|
|
6824
6836
|
}
|
|
6825
6837
|
/**
|
|
6826
6838
|
* Updates the form value when a user changes the `checked` state.
|
|
@@ -7414,7 +7426,7 @@ class DialogBody extends FASTElement {
|
|
|
7414
7426
|
|
|
7415
7427
|
const template$v = html`<template><div class=title part=title><slot name=title></slot><slot name=title-action></slot><slot name=close @click=${(x, c) => x.clickHandler(c.event)}></slot></div><div class=content part=content><slot></slot></div><div class=actions part=actions><slot name=action></slot></div></template>`;
|
|
7416
7428
|
|
|
7417
|
-
const styles$v = css`${display("grid")} :host{background:${colorNeutralBackground1};box-sizing:border-box;gap:${spacingVerticalS};padding:${spacingVerticalXXL} ${spacingHorizontalXXL};container:dialog-body/inline-size}.title{box-sizing:border-box;align-items:flex-start;background:${colorNeutralBackground1};color:${colorNeutralForeground1};column-gap:8px;display:flex;font-family:${fontFamilyBase};font-size:${fontSizeBase500};font-weight:${fontWeightSemibold};inset-block-start:0;justify-content:space-between;line-height:${lineHeightBase500};margin-block-end:calc(${spacingVerticalS} * -1);margin-block-start:calc(${spacingVerticalXXL} * -1);padding-block-end:${spacingVerticalS};padding-block-start:${spacingVerticalXXL}}.content{box-sizing:border-box;color:${colorNeutralForeground1};font-family:${fontFamilyBase};font-size:${fontSizeBase300};font-weight:${fontWeightRegular};line-height:${lineHeightBase300};min-height:32px}.actions{box-sizing:border-box;background:${colorNeutralBackground1};display:flex;flex-direction:column;gap:${spacingVerticalS};inset-block-end:0;margin-block-end:calc(${spacingVerticalXXL} * -1);padding-block-end:${spacingVerticalXXL};padding-block-start:${spacingVerticalL}}::slotted([slot='title-action']){margin-inline-start:auto}::slotted([slot='title']){font:inherit;padding:0;margin:0}:not(:has(:is([slot='title'],[slot='title-action']))) .title{justify-content:end}@container (min-width:480px){.actions{align-items:center;flex-direction:row;justify-content:flex-end;margin-block-start:calc(${spacingVerticalS} * -1);padding-block-start:${spacingVerticalS}}}@media (min-height:480px){.title{position:sticky;z-index:1}.actions{position:sticky;z-index:2}`;
|
|
7429
|
+
const styles$v = css`${display("grid")} :host{background:${colorNeutralBackground1};box-sizing:border-box;gap:${spacingVerticalS};padding:${spacingVerticalXXL} ${spacingHorizontalXXL};container:dialog-body/inline-size}.title{box-sizing:border-box;align-items:flex-start;background:${colorNeutralBackground1};color:${colorNeutralForeground1};column-gap:8px;display:flex;font-family:${fontFamilyBase};font-size:${fontSizeBase500};font-weight:${fontWeightSemibold};inset-block-start:0;justify-content:space-between;line-height:${lineHeightBase500};margin-block-end:calc(${spacingVerticalS} * -1);margin-block-start:calc(${spacingVerticalXXL} * -1);padding-block-end:${spacingVerticalS};padding-block-start:${spacingVerticalXXL}}.content{box-sizing:border-box;color:${colorNeutralForeground1};font-family:${fontFamilyBase};font-size:${fontSizeBase300};font-weight:${fontWeightRegular};line-height:${lineHeightBase300};min-height:32px}.actions{box-sizing:border-box;background:${colorNeutralBackground1};display:flex;flex-direction:column;gap:${spacingVerticalS};inset-block-end:0;margin-block-end:calc(${spacingVerticalXXL} * -1);padding-block-end:${spacingVerticalXXL};padding-block-start:${spacingVerticalL}}::slotted([slot='title-action']){margin-inline-start:auto}::slotted([slot='title']){font:inherit;padding:0;margin:0}:not(:has(:is([slot='title'],[slot='title-action']))) .title{justify-content:end}@container (min-width:480px){.actions{align-items:center;flex-direction:row;justify-content:flex-end;margin-block-start:calc(${spacingVerticalS} * -1);padding-block-start:${spacingVerticalS}}}@media (min-height:480px){.title{position:sticky;z-index:1}.actions{position:sticky;z-index:2}}`;
|
|
7418
7430
|
|
|
7419
7431
|
const definition$v = DialogBody.compose({
|
|
7420
7432
|
name: tagName$v,
|
|
@@ -8377,7 +8389,7 @@ const _BaseDropdown = class _BaseDropdown extends FASTElement {
|
|
|
8377
8389
|
this._insertingControl = false;
|
|
8378
8390
|
}
|
|
8379
8391
|
/**
|
|
8380
|
-
* Handles printable character input by moving {@link activeIndex} to the next option whose label matches the
|
|
8392
|
+
* Handles printable character input by moving {@link Dropdown#activeIndex} to the next option whose label matches the
|
|
8381
8393
|
* accumulated search string. When the string is a single character (or the same character repeated), matching
|
|
8382
8394
|
* options are cycled through; otherwise the string is treated as a prefix match.
|
|
8383
8395
|
*
|
|
@@ -8580,6 +8592,7 @@ const _BaseDropdown = class _BaseDropdown extends FASTElement {
|
|
|
8580
8592
|
Updates.enqueue(() => {
|
|
8581
8593
|
this.insertControl();
|
|
8582
8594
|
});
|
|
8595
|
+
maybeSetAutoFocus(this);
|
|
8583
8596
|
}
|
|
8584
8597
|
disconnectedCallback() {
|
|
8585
8598
|
_BaseDropdown.AnchorPositionFallbackObserver?.disconnect();
|
|
@@ -8725,7 +8738,7 @@ __decorateClass$w([
|
|
|
8725
8738
|
attr
|
|
8726
8739
|
], Dropdown.prototype, "size", 2);
|
|
8727
8740
|
|
|
8728
|
-
const styles$r = css`${display("inline-flex")} :host{box-sizing:border-box;color:${colorNeutralForeground1};cursor:pointer}:host(${placeholderShownState}){color:${colorNeutralForeground4}}.control{appearance:none;background-color:${colorNeutralBackground1};border-radius:${borderRadiusMedium};border:${strokeWidthThin} solid ${colorTransparentStroke};box-shadow:inset 0 0 0 ${strokeWidthThin} var(--control-border-color);box-sizing:border-box;color:inherit;column-gap:${spacingHorizontalXXS};display:inline-flex;justify-content:space-between;min-width:160px;overflow:hidden;padding:${spacingVerticalSNudge} ${spacingHorizontalMNudge};white-space:normal;position:relative;text-align:start;width:100%;z-index:1;${typographyBody1Styles}}:host([size='small']) .control{column-gap:${spacingHorizontalXXS};padding:${spacingVerticalXS} ${spacingHorizontalSNudge};${typographyCaption1Styles}}:host([size='large']) .control{column-gap:${spacingHorizontalS};padding:${spacingVerticalS} ${spacingHorizontalM};${typographyBody2Styles}}::slotted(:is(input,button)){all:unset;flex:1 1 auto}::slotted(button){cursor:pointer}::slotted(input){cursor:text}:where(slot[name='indicator']>*,::slotted([slot='indicator'])){all:unset;align-items:center;appearance:none;aspect-ratio:1;color:${colorNeutralForeground3};display:inline-flex;justify-content:center;width:20px}:host([size='small']) :where(slot[name='indicator']>*,::slotted([slot='indicator'])){width:16px}:host([size='large']) :where(slot[name='indicator']>*,::slotted([slot='indicator'])){width:24px}.control::after,.control::before{content:''/'';inset:auto 0 0;pointer-events:none;position:absolute}.control::before{height:${strokeWidthThin}}.control::after{background-color:${colorCompoundBrandStroke};height:${strokeWidthThick};scale:0 1;transition:scale ${durationUltraFast} ${curveDecelerateMid}}:host(:where(:focus-within)) .control{border-radius:${borderRadiusMedium};box-shadow:inset 0 0 0 1px ${colorStrokeFocus1};outline:${strokeWidthThick} solid ${colorStrokeFocus2}}:host(:where(${openState},:focus-within)) .control::after{scale:1 1;transition-duration:${durationNormal};transition-timing-function:${curveAccelerateMid}}:host(:where([appearance='outline'],[appearance='transparent'])) .control::before{background-color:${colorNeutralStrokeAccessible}}:host([appearance='transparent']) .control{--control-border-color:${colorTransparentStrokeInteractive};background-color:${colorTransparentBackground};border-radius:${borderRadiusNone}}:host([appearance='outline']) .control{--control-border-color:${colorNeutralStroke1}}:host([appearance='outline']) .control:hover{--control-border-color:${colorNeutralStroke1Hover}}:host(:where([appearance='outline'],[appearance='transparent'])) .control:hover::before{background-color:${colorNeutralStrokeAccessibleHover}}:host([appearance='outline']) .control:hover::after{background-color:${colorCompoundBrandBackgroundHover}}:host([appearance='outline']) .control:active{--control-border-color:${colorNeutralStroke1Pressed}}:host(:where([appearance='outline'],[appearance='transparent'])) .control:active::before{background-color:${colorNeutralStrokeAccessiblePressed}}:host(:where([appearance='outline'],[appearance='transparent'])) .control:active::after{background-color:${colorCompoundBrandBackgroundPressed}}:host([appearance='filled-darker']) .control{background-color:${colorNeutralBackground3}}:host(:where([appearance='filled-lighter'],[appearance='filled-darker'])) .control{--control-border-color:${colorTransparentStroke}}:host(:disabled),:host(:disabled) ::slotted(:where(button,input)){cursor:not-allowed}:host(:disabled) .control::before,:host(:disabled) .control::after{content:none}:host(:disabled) .control:is(*,:active,:hover),:host(:disabled) :where(slot[name='indicator']>*,::slotted([slot='indicator'])){--control-border-color:${colorNeutralStrokeDisabled};background-color:${colorNeutralBackgroundDisabled};color:${colorNeutralForegroundDisabled}}::slotted(:not([slot]):not([popover])),::slotted([popover]:not(:popover-open)){display:none}@supports not (anchor-name:--anchor){:host{--listbox-max-height:50vh;--margin-offset:calc(${lineHeightBase300} + (${spacingVerticalSNudge} * 2) + ${strokeWidthThin})}:host([size='small']){--margin-offset:calc(${lineHeightBase200} + (${spacingVerticalXS} * 2) + ${strokeWidthThin})}:host([size='large']){--margin-offset:calc(${lineHeightBase400} + (${spacingVerticalS} * 2) + ${strokeWidthThin})}}@media (forced-colors:active){:host(:disabled) .control{border-color:GrayText}:host(:disabled) :where(slot[name='indicator']>*,::slotted([slot='indicator'])){color:GrayText}`;
|
|
8741
|
+
const styles$r = css`${display("inline-flex")} :host{box-sizing:border-box;color:${colorNeutralForeground1};cursor:pointer}:host(${placeholderShownState}){color:${colorNeutralForeground4}}.control{appearance:none;background-color:${colorNeutralBackground1};border-radius:${borderRadiusMedium};border:${strokeWidthThin} solid ${colorTransparentStroke};box-shadow:inset 0 0 0 ${strokeWidthThin} var(--control-border-color);box-sizing:border-box;color:inherit;column-gap:${spacingHorizontalXXS};display:inline-flex;justify-content:space-between;min-width:160px;overflow:hidden;padding:${spacingVerticalSNudge} ${spacingHorizontalMNudge};white-space:normal;position:relative;text-align:start;width:100%;z-index:1;${typographyBody1Styles}}:host([size='small']) .control{column-gap:${spacingHorizontalXXS};padding:${spacingVerticalXS} ${spacingHorizontalSNudge};${typographyCaption1Styles}}:host([size='large']) .control{column-gap:${spacingHorizontalS};padding:${spacingVerticalS} ${spacingHorizontalM};${typographyBody2Styles}}::slotted(:is(input,button)){all:unset;flex:1 1 auto}::slotted(button){cursor:pointer}::slotted(input){cursor:text}:where(slot[name='indicator']>*,::slotted([slot='indicator'])){all:unset;align-items:center;appearance:none;aspect-ratio:1;color:${colorNeutralForeground3};display:inline-flex;justify-content:center;width:20px}:host([size='small']) :where(slot[name='indicator']>*,::slotted([slot='indicator'])){width:16px}:host([size='large']) :where(slot[name='indicator']>*,::slotted([slot='indicator'])){width:24px}.control::after,.control::before{content:''/'';inset:auto 0 0;pointer-events:none;position:absolute}.control::before{height:${strokeWidthThin}}.control::after{background-color:${colorCompoundBrandStroke};height:${strokeWidthThick};scale:0 1;transition:scale ${durationUltraFast} ${curveDecelerateMid}}:host(:where(:focus-within)) .control{border-radius:${borderRadiusMedium};box-shadow:inset 0 0 0 1px ${colorStrokeFocus1};outline:${strokeWidthThick} solid ${colorStrokeFocus2}}:host(:where(${openState},:focus-within)) .control::after{scale:1 1;transition-duration:${durationNormal};transition-timing-function:${curveAccelerateMid}}:host(:where([appearance='outline'],[appearance='transparent'])) .control::before{background-color:${colorNeutralStrokeAccessible}}:host([appearance='transparent']) .control{--control-border-color:${colorTransparentStrokeInteractive};background-color:${colorTransparentBackground};border-radius:${borderRadiusNone}}:host([appearance='outline']) .control{--control-border-color:${colorNeutralStroke1}}:host([appearance='outline']) .control:hover{--control-border-color:${colorNeutralStroke1Hover}}:host(:where([appearance='outline'],[appearance='transparent'])) .control:hover::before{background-color:${colorNeutralStrokeAccessibleHover}}:host([appearance='outline']) .control:hover::after{background-color:${colorCompoundBrandBackgroundHover}}:host([appearance='outline']) .control:active{--control-border-color:${colorNeutralStroke1Pressed}}:host(:where([appearance='outline'],[appearance='transparent'])) .control:active::before{background-color:${colorNeutralStrokeAccessiblePressed}}:host(:where([appearance='outline'],[appearance='transparent'])) .control:active::after{background-color:${colorCompoundBrandBackgroundPressed}}:host([appearance='filled-darker']) .control{background-color:${colorNeutralBackground3}}:host(:where([appearance='filled-lighter'],[appearance='filled-darker'])) .control{--control-border-color:${colorTransparentStroke}}:host(:disabled),:host(:disabled) ::slotted(:where(button,input)){cursor:not-allowed}:host(:disabled) .control::before,:host(:disabled) .control::after{content:none}:host(:disabled) .control:is(*,:active,:hover),:host(:disabled) :where(slot[name='indicator']>*,::slotted([slot='indicator'])){--control-border-color:${colorNeutralStrokeDisabled};background-color:${colorNeutralBackgroundDisabled};color:${colorNeutralForegroundDisabled}}::slotted(:not([slot]):not([popover])),::slotted([popover]:not(:popover-open)){display:none}@supports not (anchor-name:--anchor){:host{--listbox-max-height:50vh;--margin-offset:calc(${lineHeightBase300} + (${spacingVerticalSNudge} * 2) + ${strokeWidthThin})}:host([size='small']){--margin-offset:calc(${lineHeightBase200} + (${spacingVerticalXS} * 2) + ${strokeWidthThin})}:host([size='large']){--margin-offset:calc(${lineHeightBase400} + (${spacingVerticalS} * 2) + ${strokeWidthThin})}}@media (forced-colors:active){:host(:disabled) .control{border-color:GrayText}:host(:disabled) :where(slot[name='indicator']>*,::slotted([slot='indicator'])){color:GrayText}}`;
|
|
8729
8742
|
|
|
8730
8743
|
const definition$r = Dropdown.compose({
|
|
8731
8744
|
name: tagName$r,
|
|
@@ -9328,7 +9341,7 @@ __decorateClass$q([
|
|
|
9328
9341
|
observable
|
|
9329
9342
|
], Listbox.prototype, "dropdown", 2);
|
|
9330
9343
|
|
|
9331
|
-
const styles$m = css`${display("inline-flex")} :host{background-color:${colorNeutralBackground1};border-radius:${borderRadiusMedium};border:${strokeWidthThin} solid ${colorTransparentStroke};box-shadow:${shadow16};box-sizing:border-box;flex-direction:column;margin:0;min-inline-size:160px;padding:${spacingHorizontalXS};row-gap:${spacingHorizontalXXS};width:auto}:host([popover]){inset:unset;overflow:auto}@supports (anchor-name:--anchor){:host([popover]){position:fixed;max-block-size:var(--listbox-max-height,calc(50vh - anchor-size(self-block)));min-inline-size:anchor-size(inline);inset-block-start:anchor(
|
|
9344
|
+
const styles$m = css`${display("inline-flex")} :host{background-color:${colorNeutralBackground1};border-radius:${borderRadiusMedium};border:${strokeWidthThin} solid ${colorTransparentStroke};box-shadow:${shadow16};box-sizing:border-box;flex-direction:column;margin:0;min-inline-size:160px;padding:${spacingHorizontalXS};row-gap:${spacingHorizontalXXS};width:auto}:host([popover]){inset:unset;overflow:auto}@supports (anchor-name:--anchor){:host([popover]){position:fixed;max-block-size:var(--listbox-max-height,calc(50vh - anchor-size(self-block)));min-inline-size:anchor-size(inline);inset-block-start:anchor(outside);inset-inline-start:anchor(inside);position-try-fallbacks:flip-block,flip-inline,flip-inline flip-block}}@supports not (anchor-name:--anchor){:host([popover]){margin-block-start:var(--margin-offset,0);max-block-size:var(--listbox-max-height,50vh);position:absolute}:host([popover]${flipBlockState}){margin-block-start:revert;translate:0 -100%}}`;
|
|
9332
9345
|
|
|
9333
9346
|
function listboxTemplate() {
|
|
9334
9347
|
return html`<template @beforetoggle=${(x, c) => x.beforetoggleHandler(c.event)} @click=${(x, c) => x.clickHandler(c.event)}><slot ${ref("defaultSlot")} @slotchange=${(x, c) => x.slotchangeHandler(c.event)}></slot></template>`;
|
|
@@ -9599,6 +9612,7 @@ class MenuItem extends FASTElement {
|
|
|
9599
9612
|
super.connectedCallback();
|
|
9600
9613
|
this.elementInternals.role = this.role ?? MenuItemRole.menuitem;
|
|
9601
9614
|
this.elementInternals.ariaChecked = this.role !== MenuItemRole.menuitem ? `${!!this.checked}` : null;
|
|
9615
|
+
maybeSetAutoFocus(this);
|
|
9602
9616
|
}
|
|
9603
9617
|
}
|
|
9604
9618
|
__decorateClass$p([
|
|
@@ -9621,7 +9635,7 @@ __decorateClass$p([
|
|
|
9621
9635
|
], MenuItem.prototype, "submenu", 2);
|
|
9622
9636
|
applyMixins(MenuItem, StartEnd);
|
|
9623
9637
|
|
|
9624
|
-
const styles$k = css`${display("grid")} :host{--indent:0;align-items:center;background:${colorNeutralBackground1};border-radius:${borderRadiusMedium};color:${colorNeutralForeground2};contain:layout;cursor:pointer;flex-shrink:0;font:${fontWeightRegular} ${fontSizeBase300}/${lineHeightBase300} ${fontFamilyBase};grid-gap:4px;grid-template-columns:20px 20px auto 20px;height:32px;overflow:visible;padding:0 10px}:host(:hover){background:${colorNeutralBackground1Hover};color:${colorNeutralForeground2Hover}}:host(:active){background-color:${colorNeutralBackground1Selected};color:${colorNeutralForeground2Pressed}}:host(:active) ::slotted([slot='start']){color:${colorCompoundBrandForeground1Pressed}}:host(${disabledState}){background-color:${colorNeutralBackgroundDisabled};color:${colorNeutralForegroundDisabled}}:host(${disabledState}) ::slotted([slot='start']),:host(${disabledState}) ::slotted([slot='end']){color:${colorNeutralForegroundDisabled}}:host(:focus-visible){border-radius:${borderRadiusMedium};outline:2px solid ${colorStrokeFocus2}}.content{white-space:nowrap;flex-grow:1;grid-column:auto/span 2;padding:0 2px}:host(:not(${checkedState})) .indicator,:host(:not(${checkedState})) ::slotted([slot='indicator']),:host(:not(${submenuState})) .submenu-glyph,:host(:not(${submenuState})) ::slotted([slot='submenu-glyph']){display:none}::slotted([slot='end']){color:${colorNeutralForeground3};font:${fontWeightRegular} ${fontSizeBase200}/${lineHeightBase200} ${fontFamilyBase};white-space:nowrap}:host([data-indent='1']){--indent:1}:host([data-indent='2']){--indent:2;grid-template-columns:20px 20px auto auto}:host(${submenuState}){grid-template-columns:20px auto auto 20px}:host([data-indent='2']${submenuState}){grid-template-columns:20px 20px auto auto 20px}.indicator,::slotted([slot='indicator']){grid-column:1/span 1;width:20px}::slotted([slot='start']){display:inline-flex;grid-column:calc(var(--indent))/span 1}.content{grid-column:calc(var(--indent) + 1)/span 1}::slotted([slot='end']){grid-column:calc(var(--indent) + 2)/span 1;justify-self:end}.submenu-glyph,::slotted([slot='submenu-glyph']){grid-column:-2/span 1;justify-self:end}@layer popover{:host{anchor-name:--menu-trigger;position:relative}::slotted([popover]){margin:0;max-height:var(--menu-max-height,auto);position:fixed;position-anchor:--menu-trigger;inset:unset;inset-block-start:anchor(
|
|
9638
|
+
const styles$k = css`${display("grid")} :host{--indent:0;align-items:center;background:${colorNeutralBackground1};border-radius:${borderRadiusMedium};color:${colorNeutralForeground2};contain:layout;cursor:pointer;flex-shrink:0;font:${fontWeightRegular} ${fontSizeBase300}/${lineHeightBase300} ${fontFamilyBase};grid-gap:4px;grid-template-columns:20px 20px auto 20px;height:32px;overflow:visible;padding:0 10px}:host(:hover){background:${colorNeutralBackground1Hover};color:${colorNeutralForeground2Hover}}:host(:active){background-color:${colorNeutralBackground1Selected};color:${colorNeutralForeground2Pressed}}:host(:active) ::slotted([slot='start']){color:${colorCompoundBrandForeground1Pressed}}:host(${disabledState}){background-color:${colorNeutralBackgroundDisabled};color:${colorNeutralForegroundDisabled}}:host(${disabledState}) ::slotted([slot='start']),:host(${disabledState}) ::slotted([slot='end']){color:${colorNeutralForegroundDisabled}}:host(:focus-visible){border-radius:${borderRadiusMedium};outline:2px solid ${colorStrokeFocus2}}.content{white-space:nowrap;flex-grow:1;grid-column:auto/span 2;padding:0 2px}:host(:not(${checkedState})) .indicator,:host(:not(${checkedState})) ::slotted([slot='indicator']),:host(:not(${submenuState})) .submenu-glyph,:host(:not(${submenuState})) ::slotted([slot='submenu-glyph']){display:none}::slotted([slot='end']){color:${colorNeutralForeground3};font:${fontWeightRegular} ${fontSizeBase200}/${lineHeightBase200} ${fontFamilyBase};white-space:nowrap}:host([data-indent='1']){--indent:1}:host([data-indent='2']){--indent:2;grid-template-columns:20px 20px auto auto}:host(${submenuState}){grid-template-columns:20px auto auto 20px}:host([data-indent='2']${submenuState}){grid-template-columns:20px 20px auto auto 20px}.indicator,::slotted([slot='indicator']){grid-column:1/span 1;width:20px}::slotted([slot='start']){display:inline-flex;grid-column:calc(var(--indent))/span 1}.content{grid-column:calc(var(--indent) + 1)/span 1}::slotted([slot='end']){grid-column:calc(var(--indent) + 2)/span 1;justify-self:end}.submenu-glyph,::slotted([slot='submenu-glyph']){grid-column:-2/span 1;justify-self:end}@layer popover{:host{anchor-name:--menu-trigger;position:relative}@position-try --inline-inside{inset-inline-start:unset;inset-inline-end:anchor(inside)}::slotted([popover]){margin:0;max-height:var(--menu-max-height,auto);position:fixed;position-anchor:--menu-trigger;inset:unset;inset-block-start:anchor(inside);inset-inline-start:anchor(outside);position-try-fallbacks:--inline-inside,flip-block,flip-block --inline-inside;z-index:1}::slotted([popover]:not(:popover-open)){display:none}@supports not (anchor-name:--menu-trigger){::slotted([popover]){align-self:start}}}@media (forced-colors:active){:host(${disabledState}),:host(${disabledState}) ::slotted([slot='start']),:host(${disabledState}) ::slotted([slot='end']){color:GrayText}}`;
|
|
9625
9639
|
|
|
9626
9640
|
const Checkmark16Filled = html.partial(
|
|
9627
9641
|
`<svg class=indicator fill=currentColor aria-hidden=true width=16 height=16 viewBox="0 0 16 16" xmlns=http://www.w3.org/2000/svg><path d="M14.05 3.49c.28.3.27.77-.04 1.06l-7.93 7.47A.85.85 0 014.9 12L2.22 9.28a.75.75 0 111.06-1.06l2.24 2.27 7.47-7.04a.75.75 0 011.06.04z" fill=currentColor></path></svg>`
|
|
@@ -10621,7 +10635,7 @@ __decorateClass$n([
|
|
|
10621
10635
|
observable
|
|
10622
10636
|
], Menu.prototype, "primaryAction", 2);
|
|
10623
10637
|
|
|
10624
|
-
const styles$i = css`${display("inline-block")} ::slotted([slot='trigger']){anchor-name:--menu-trigger}::slotted([popover]){margin:0;max-height:var(--menu-max-height,auto);position-anchor:--menu-trigger;inset:unset;inset-block-start:anchor(
|
|
10638
|
+
const styles$i = css`${display("inline-block")} ::slotted([slot='trigger']){anchor-name:--menu-trigger}::slotted([popover]){margin:0;max-height:var(--menu-max-height,auto);position-anchor:--menu-trigger;inset:unset;inset-block-start:anchor(outside);inset-inline-start:anchor(self-start);position-try-fallbacks:flip-block,flip-inline,flip-block flip-inline;position:fixed;z-index:1}:host([split]) ::slotted([popover]){inset-inline-start:unset;inset-inline-end:anchor(self-end)}::slotted([popover]:not(:popover-open)){display:none}:host([split]){display:inline-flex}:host([split]) ::slotted([slot='primary-action']){border-inline-end:${strokeWidthThin} solid ${colorNeutralStroke1};border-start-end-radius:0;border-end-end-radius:0}:host([split]) ::slotted([slot='primary-action']:focus-visible){z-index:1}:host([split]) ::slotted([slot='primary-action'][appearance='primary']){border-inline-end:${strokeWidthThin} solid white}:host([split]) ::slotted([slot='trigger']){border-inline-start:0;border-start-start-radius:0;border-end-start-radius:0}`;
|
|
10625
10639
|
|
|
10626
10640
|
function menuTemplate() {
|
|
10627
10641
|
return html`<template @keydown=${(x, c) => x.menuKeydownHandler(c.event)}><slot name=primary-action ${ref("primaryAction")}></slot><slot name=trigger ${slotted({ property: "slottedTriggers", filter: elements() })}></slot><slot ${slotted({ property: "slottedMenuList", filter: elements() })}></slot></template>`;
|
|
@@ -12333,6 +12347,7 @@ class Slider extends FASTElement {
|
|
|
12333
12347
|
notifier.subscribe(this, "min");
|
|
12334
12348
|
notifier.subscribe(this, "step");
|
|
12335
12349
|
});
|
|
12350
|
+
maybeSetAutoFocus(this);
|
|
12336
12351
|
}
|
|
12337
12352
|
/**
|
|
12338
12353
|
* @internal
|
|
@@ -12676,6 +12691,7 @@ class Tab extends FASTElement {
|
|
|
12676
12691
|
}
|
|
12677
12692
|
this.styles = css`:host{--textContent:'${this.textContent}'}`;
|
|
12678
12693
|
this.$fastController.addStyles(this.styles);
|
|
12694
|
+
maybeSetAutoFocus(this);
|
|
12679
12695
|
}
|
|
12680
12696
|
setDisabledSideEffect(disabled) {
|
|
12681
12697
|
if (disabled) {
|
|
@@ -13177,6 +13193,7 @@ class BaseTextArea extends FASTElement {
|
|
|
13177
13193
|
this.setValidity();
|
|
13178
13194
|
this.preConnectControlEl = null;
|
|
13179
13195
|
this.maybeCreateAutoSizerEl();
|
|
13196
|
+
maybeSetAutoFocus(this);
|
|
13180
13197
|
});
|
|
13181
13198
|
}
|
|
13182
13199
|
/**
|
|
@@ -13721,21 +13738,9 @@ class BaseTextInput extends FASTElement {
|
|
|
13721
13738
|
}
|
|
13722
13739
|
connectedCallback() {
|
|
13723
13740
|
super.connectedCallback();
|
|
13724
|
-
this.tabIndex = Number(this.getAttribute("tabindex") ?? 0) < 0 ? -1 : 0;
|
|
13725
13741
|
this.setFormValue(this.value);
|
|
13726
13742
|
this.setValidity();
|
|
13727
|
-
|
|
13728
|
-
/**
|
|
13729
|
-
* Focuses the inner control when the component is focused.
|
|
13730
|
-
*
|
|
13731
|
-
* @param e - the event object
|
|
13732
|
-
* @public
|
|
13733
|
-
*/
|
|
13734
|
-
focusinHandler(e) {
|
|
13735
|
-
if (e.target === this) {
|
|
13736
|
-
this.control?.focus();
|
|
13737
|
-
}
|
|
13738
|
-
return true;
|
|
13743
|
+
maybeSetAutoFocus(this);
|
|
13739
13744
|
}
|
|
13740
13745
|
/**
|
|
13741
13746
|
* Resets the value to its initial value when the form is reset.
|
|
@@ -13958,7 +13963,7 @@ applyMixins(TextInput, StartEnd);
|
|
|
13958
13963
|
const styles$5 = css`${display("block")} :host{font-family:${fontFamilyBase};font-size:${fontSizeBase300};font-weight:${fontWeightRegular};line-height:${lineHeightBase300};max-width:400px}.label{display:flex;color:${colorNeutralForeground1};padding-bottom:${spacingVerticalXS};flex-shrink:0;padding-inline-end:${spacingHorizontalXS}}.label[hidden],:host(:empty) .label{display:none}.root{align-items:center;background-color:${colorNeutralBackground1};border:${strokeWidthThin} solid ${colorNeutralStroke1};border-bottom-color:${colorNeutralStrokeAccessible};border-radius:${borderRadiusMedium};box-sizing:border-box;height:32px;display:inline-flex;flex-direction:row;gap:${spacingHorizontalXXS};padding:0 ${spacingHorizontalMNudge};position:relative;width:100%}:has(.control:user-invalid){border-color:${colorPaletteRedBorder2}}.root::after{box-sizing:border-box;content:'';position:absolute;left:-1px;bottom:0px;right:-1px;height:max(2px,${borderRadiusMedium});border-radius:0 0 ${borderRadiusMedium} ${borderRadiusMedium};border-bottom:2px solid ${colorCompoundBrandStroke};clip-path:inset(calc(100% - 2px) 1px 0px);transform:scaleX(0);transition-property:transform;transition-duration:${durationUltraFast};transition-delay:${curveAccelerateMid}}.control{width:100%;height:100%;box-sizing:border-box;color:${colorNeutralForeground1};border-radius:${borderRadiusMedium};background:${colorTransparentBackground};font-family:${fontFamilyBase};font-weight:${fontWeightRegular};font-size:${fontSizeBase300};border:none;vertical-align:center}.control:focus-visible{outline:0;border:0}.control::placeholder{color:${colorNeutralForeground4}}:host ::slotted([slot='start']),:host ::slotted([slot='end']){display:flex;align-items:center;justify-content:center;color:${colorNeutralForeground3};font-size:${fontSizeBase500}}:host ::slotted([slot='start']){padding-right:${spacingHorizontalXXS}}:host ::slotted([slot='end']){padding-left:${spacingHorizontalXXS};gap:${spacingHorizontalXS}}:host(:hover) .root{border-color:${colorNeutralStroke1Hover};border-bottom-color:${colorNeutralStrokeAccessibleHover}}:host(:active) .root{border-color:${colorNeutralStroke1Pressed}}:host(:focus-within) .root{outline:transparent solid 2px;border-bottom:0}:host(:focus-within) .root::after{transform:scaleX(1);transition-property:transform;transition-duration:${durationNormal};transition-delay:${curveDecelerateMid}}:host(:focus-within:active) .root:after{border-bottom-color:${colorCompoundBrandStrokePressed}}:host([appearance='outline']:focus-within) .root{border:${strokeWidthThin} solid ${colorNeutralStroke1}}:host(:focus-within) .control{color:${colorNeutralForeground1}}:host([disabled]) .root{background:${colorTransparentBackground};border:${strokeWidthThin} solid ${colorNeutralStrokeDisabled}}:host([disabled]) .control::placeholder,:host([disabled]) ::slotted([slot='start']),:host([disabled]) ::slotted([slot='end']){color:${colorNeutralForegroundDisabled}}::selection{color:${colorNeutralForegroundInverted};background-color:${colorNeutralBackgroundInverted}}:host([control-size='small']) .control{font-size:${fontSizeBase200};font-weight:${fontWeightRegular};line-height:${lineHeightBase200}}:host([control-size='small']) .root{height:24px;gap:${spacingHorizontalXXS};padding:0 ${spacingHorizontalSNudge}}:host([control-size='small']) ::slotted([slot='start']),:host([control-size='small']) ::slotted([slot='end']){font-size:${fontSizeBase400}}:host([control-size='large']) .control{font-size:${fontSizeBase400};font-weight:${fontWeightRegular};line-height:${lineHeightBase400}}:host([control-size='large']) .root{height:40px;gap:${spacingHorizontalS};padding:0 ${spacingHorizontalM}}:host([control-size='large']) ::slotted([slot='start']),:host([control-size='large']) ::slotted([slot='end']){font-size:${fontSizeBase600}}:host([appearance='underline']) .root{background:${colorTransparentBackground};border:0;border-radius:0;border-bottom:${strokeWidthThin} solid ${colorNeutralStrokeAccessible}}:host([appearance='underline']:hover) .root{border-bottom-color:${colorNeutralStrokeAccessibleHover}}:host([appearance='underline']:active) .root{border-bottom-color:${colorNeutralStrokeAccessiblePressed}}:host([appearance='underline']:focus-within) .root{border:0;border-bottom-color:${colorNeutralStrokeAccessiblePressed}}:host([appearance='underline'][disabled]) .root{border-bottom-color:${colorNeutralStrokeDisabled}}:host([appearance='filled-lighter']) .root,:host([appearance='filled-darker']) .root{border:${strokeWidthThin} solid ${colorTransparentStroke};box-shadow:${shadow2}}:host([appearance='filled-lighter']) .root{background:${colorNeutralBackground1}}:host([appearance='filled-darker']) .root{background:${colorNeutralBackground3}}:host([appearance='filled-lighter']:hover) .root,:host([appearance='filled-darker']:hover) .root{border-color:${colorTransparentStrokeInteractive}}:host([appearance='filled-lighter']:active) .root,:host([appearance='filled-darker']:active) .root{border-color:${colorTransparentStrokeInteractive};background:${colorNeutralBackground3}}`;
|
|
13959
13964
|
|
|
13960
13965
|
function textInputTemplate(options = {}) {
|
|
13961
|
-
return html`<template @
|
|
13966
|
+
return html`<template @keydown=${(x, c) => x.keydownHandler(c.event)}><label part=label for=control class=label ${ref("controlLabel")}><slot ${slotted("defaultSlottedNodes")}></slot></label><div class=root part=root>${startSlotTemplate(options)} <input class=control part=control id=control @change=${(x, c) => x.changeHandler(c.event)} @input=${(x, c) => x.inputHandler(c.event)} autocomplete=${(x) => x.autocomplete} ?disabled=${(x) => x.disabled} list=${(x) => x.list} maxlength=${(x) => x.maxlength} minlength=${(x) => x.minlength} ?multiple=${(x) => x.multiple} name=${(x) => x.name} pattern=${(x) => x.pattern} placeholder=${(x) => x.placeholder} ?readonly=${(x) => x.readOnly} ?required=${(x) => x.required} size=${(x) => x.size} spellcheck=${(x) => x.spellcheck} type=${(x) => x.type} value=${(x) => x.value} ${ref("control")}> ${endSlotTemplate(options)}</div></template>`;
|
|
13962
13967
|
}
|
|
13963
13968
|
const template$5 = textInputTemplate();
|
|
13964
13969
|
|
|
@@ -14692,6 +14697,7 @@ class BaseTreeItem extends FASTElement {
|
|
|
14692
14697
|
if (isTreeItem(this.parentElement)) {
|
|
14693
14698
|
this.slot || (this.slot = "item");
|
|
14694
14699
|
}
|
|
14700
|
+
maybeSetAutoFocus(this);
|
|
14695
14701
|
}
|
|
14696
14702
|
/**
|
|
14697
14703
|
* Handles changes to the expanded attribute
|