@fluentui/web-components 3.0.0-beta.114 → 3.0.0-beta.116
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/custom-elements.json +89 -0
- package/dist/esm/button/button.base.js +4 -0
- package/dist/esm/button/button.base.js.map +1 -1
- package/dist/esm/dialog/dialog.d.ts +3 -0
- package/dist/esm/dialog/dialog.js +22 -0
- package/dist/esm/dialog/dialog.js.map +1 -1
- package/dist/esm/dialog/dialog.template.js +0 -4
- package/dist/esm/dialog/dialog.template.js.map +1 -1
- package/dist/esm/drawer/drawer.d.ts +14 -0
- package/dist/esm/drawer/drawer.js +50 -0
- package/dist/esm/drawer/drawer.js.map +1 -1
- package/dist/esm/drawer/drawer.template.js +1 -4
- package/dist/esm/drawer/drawer.template.js.map +1 -1
- package/dist/esm/field/field.base.d.ts +1 -0
- package/dist/esm/field/field.base.js +13 -4
- package/dist/esm/field/field.base.js.map +1 -1
- package/dist/esm/field/field.template.js +2 -10
- package/dist/esm/field/field.template.js.map +1 -1
- package/dist/esm/slider/slider.template.js +0 -1
- package/dist/esm/slider/slider.template.js.map +1 -1
- package/dist/esm/textarea/textarea.base.d.ts +1 -0
- package/dist/esm/textarea/textarea.base.js +14 -6
- package/dist/esm/textarea/textarea.base.js.map +1 -1
- package/dist/esm/textarea/textarea.template.js +2 -14
- package/dist/esm/textarea/textarea.template.js.map +1 -1
- package/dist/web-components.d.ts +19 -0
- package/dist/web-components.js +99 -28
- package/dist/web-components.min.js +98 -98
- package/package.json +2 -2
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { __decorate } from "tslib";
|
|
2
2
|
import { attr, FASTElement, nullableNumberConverter, observable } from '@microsoft/fast-element';
|
|
3
|
+
import { whitespaceFilter } from '../utils/index.js';
|
|
3
4
|
import { hasMatchingState, swapStates, toggleState } from '../utils/element-internals.js';
|
|
4
5
|
import { TextAreaResize } from './textarea.options.js';
|
|
5
6
|
/**
|
|
@@ -30,10 +31,11 @@ export class BaseTextArea extends FASTElement {
|
|
|
30
31
|
this.value = next;
|
|
31
32
|
}
|
|
32
33
|
labelSlottedNodesChanged() {
|
|
34
|
+
this.filteredLabelSlottedNodes = this.labelSlottedNodes.filter(whitespaceFilter);
|
|
33
35
|
if (this.labelEl) {
|
|
34
|
-
this.labelEl.hidden = !this.
|
|
36
|
+
this.labelEl.hidden = !this.filteredLabelSlottedNodes.length;
|
|
35
37
|
}
|
|
36
|
-
this.
|
|
38
|
+
this.filteredLabelSlottedNodes.forEach(node => {
|
|
37
39
|
node.disabled = this.disabled;
|
|
38
40
|
node.required = this.required;
|
|
39
41
|
});
|
|
@@ -67,8 +69,8 @@ export class BaseTextArea extends FASTElement {
|
|
|
67
69
|
}
|
|
68
70
|
requiredChanged() {
|
|
69
71
|
this.elementInternals.ariaRequired = `${!!this.required}`;
|
|
70
|
-
if (this.
|
|
71
|
-
this.
|
|
72
|
+
if (this.filteredLabelSlottedNodes?.length) {
|
|
73
|
+
this.filteredLabelSlottedNodes.forEach(node => (node.required = this.required));
|
|
72
74
|
}
|
|
73
75
|
}
|
|
74
76
|
resizeChanged(prev, next) {
|
|
@@ -167,6 +169,12 @@ export class BaseTextArea extends FASTElement {
|
|
|
167
169
|
* @internal
|
|
168
170
|
*/
|
|
169
171
|
this.elementInternals = this.attachInternals();
|
|
172
|
+
this.filteredLabelSlottedNodes = [];
|
|
173
|
+
/**
|
|
174
|
+
* The list of nodes that are assigned to the `label` slot.
|
|
175
|
+
* @internal
|
|
176
|
+
*/
|
|
177
|
+
this.labelSlottedNodes = [];
|
|
170
178
|
this.userInteracted = false;
|
|
171
179
|
this.preConnectControlEl = document.createElement('textarea');
|
|
172
180
|
/**
|
|
@@ -377,8 +385,8 @@ export class BaseTextArea extends FASTElement {
|
|
|
377
385
|
if (this.controlEl) {
|
|
378
386
|
this.controlEl.disabled = disabled;
|
|
379
387
|
}
|
|
380
|
-
if (this.
|
|
381
|
-
this.
|
|
388
|
+
if (this.filteredLabelSlottedNodes?.length) {
|
|
389
|
+
this.filteredLabelSlottedNodes.forEach(node => (node.disabled = this.disabled));
|
|
382
390
|
}
|
|
383
391
|
}
|
|
384
392
|
toggleUserValidityState() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textarea.base.js","sourceRoot":"","sources":["../../../src/textarea/textarea.base.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,uBAAuB,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"textarea.base.js","sourceRoot":"","sources":["../../../src/textarea/textarea.base.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { html, ref, slotted } from '@microsoft/fast-element';
|
|
2
|
-
import { whitespaceFilter } from '../utils/index.js';
|
|
3
2
|
/**
|
|
4
3
|
* Generates a template for the TextArea component.
|
|
5
4
|
*
|
|
@@ -9,13 +8,7 @@ export function textAreaTemplate() {
|
|
|
9
8
|
return html `
|
|
10
9
|
<template>
|
|
11
10
|
<label ${ref('labelEl')} for="control" part="label">
|
|
12
|
-
<slot
|
|
13
|
-
name="label"
|
|
14
|
-
${slotted({
|
|
15
|
-
property: 'labelSlottedNodes',
|
|
16
|
-
filter: whitespaceFilter,
|
|
17
|
-
})}
|
|
18
|
-
></slot>
|
|
11
|
+
<slot name="label" ${slotted('labelSlottedNodes')}></slot>
|
|
19
12
|
</label>
|
|
20
13
|
<div class="root" part="root">
|
|
21
14
|
<textarea
|
|
@@ -37,12 +30,7 @@ export function textAreaTemplate() {
|
|
|
37
30
|
></textarea>
|
|
38
31
|
</div>
|
|
39
32
|
<div hidden>
|
|
40
|
-
<slot
|
|
41
|
-
${slotted({
|
|
42
|
-
property: 'defaultSlottedNodes',
|
|
43
|
-
filter: whitespaceFilter,
|
|
44
|
-
})}
|
|
45
|
-
></slot>
|
|
33
|
+
<slot ${slotted('defaultSlottedNodes')}></slot>
|
|
46
34
|
</div>
|
|
47
35
|
</template>
|
|
48
36
|
`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"textarea.template.js","sourceRoot":"","sources":["../../../src/textarea/textarea.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"textarea.template.js","sourceRoot":"","sources":["../../../src/textarea/textarea.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAGvF;;;;GAIG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,IAAI,CAAG;;eAED,GAAG,CAAC,SAAS,CAAC;6BACA,OAAO,CAAC,mBAAmB,CAAC;;;;YAI7C,GAAG,CAAC,WAAW,CAAC;;;;uBAIL,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ;uBACf,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ;uBACf,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ;yBACb,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU;0BAChB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY;uBACtB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;uBAChB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS;yBACd,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW;qBACtB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB,EAAE;qBAC5B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB,EAAE;oBAC7B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,EAAE;;;;gBAI/B,OAAO,CAAC,qBAAqB,CAAC;;;GAG3C,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAkC,gBAAgB,EAAE,CAAC"}
|
package/dist/web-components.d.ts
CHANGED
|
@@ -2084,6 +2084,7 @@ export declare class BaseDropdown extends FASTElement {
|
|
|
2084
2084
|
* @public
|
|
2085
2085
|
*/
|
|
2086
2086
|
export declare class BaseField extends FASTElement {
|
|
2087
|
+
private slottedInputObserver;
|
|
2087
2088
|
/**
|
|
2088
2089
|
* The slotted label elements.
|
|
2089
2090
|
*
|
|
@@ -2614,6 +2615,7 @@ export declare class BaseTextArea extends FASTElement {
|
|
|
2614
2615
|
*/
|
|
2615
2616
|
defaultSlottedNodes: Node[];
|
|
2616
2617
|
protected defaultSlottedNodesChanged(): void;
|
|
2618
|
+
private filteredLabelSlottedNodes;
|
|
2617
2619
|
/**
|
|
2618
2620
|
* The list of nodes that are assigned to the `label` slot.
|
|
2619
2621
|
* @internal
|
|
@@ -6214,6 +6216,9 @@ export declare class Dialog extends FASTElement {
|
|
|
6214
6216
|
* The type of the dialog modal
|
|
6215
6217
|
*/
|
|
6216
6218
|
type: DialogType;
|
|
6219
|
+
protected typeChanged(prev: DialogType | undefined, next: DialogType | undefined): void;
|
|
6220
|
+
/** @internal */
|
|
6221
|
+
connectedCallback(): void;
|
|
6217
6222
|
/**
|
|
6218
6223
|
* @public
|
|
6219
6224
|
* Method to emit an event before the dialog's open state changes
|
|
@@ -6466,6 +6471,7 @@ export declare const DividerTemplate: ElementViewTemplate<Divider>;
|
|
|
6466
6471
|
* @method show - Method to show the drawer.
|
|
6467
6472
|
* @method hide - Method to hide the drawer.
|
|
6468
6473
|
* @method clickHandler - Handles click events on the drawer.
|
|
6474
|
+
* @method cancelHandler - Handles cancel events on the drawer.
|
|
6469
6475
|
* @method emitToggle - Emits an event after the dialog's open state changes.
|
|
6470
6476
|
* @method emitBeforeToggle - Emits an event before the dialog's open state changes.
|
|
6471
6477
|
*
|
|
@@ -6474,12 +6480,14 @@ export declare const DividerTemplate: ElementViewTemplate<Divider>;
|
|
|
6474
6480
|
* @tag fluent-drawer
|
|
6475
6481
|
*/
|
|
6476
6482
|
export declare class Drawer extends FASTElement {
|
|
6483
|
+
protected roleAttrObserver: MutationObserver;
|
|
6477
6484
|
/**
|
|
6478
6485
|
* @public
|
|
6479
6486
|
* Determines whether the drawer should be displayed as modal or non-modal
|
|
6480
6487
|
* When rendered as a modal, an overlay is applied over the rest of the view.
|
|
6481
6488
|
*/
|
|
6482
6489
|
type: DrawerType;
|
|
6490
|
+
protected typeChanged(): void;
|
|
6483
6491
|
/**
|
|
6484
6492
|
* @public
|
|
6485
6493
|
* The ID of the element that labels the drawer.
|
|
@@ -6507,6 +6515,10 @@ export declare class Drawer extends FASTElement {
|
|
|
6507
6515
|
* The dialog element.
|
|
6508
6516
|
*/
|
|
6509
6517
|
dialog: HTMLDialogElement;
|
|
6518
|
+
/** @internal */
|
|
6519
|
+
connectedCallback(): void;
|
|
6520
|
+
/** @internal */
|
|
6521
|
+
disconnectedCallback(): void;
|
|
6510
6522
|
/**
|
|
6511
6523
|
* @public
|
|
6512
6524
|
* Method to emit an event after the dialog's open state changes
|
|
@@ -6536,6 +6548,13 @@ export declare class Drawer extends FASTElement {
|
|
|
6536
6548
|
* Handles click events on the drawer.
|
|
6537
6549
|
*/
|
|
6538
6550
|
clickHandler(event: Event): boolean;
|
|
6551
|
+
/**
|
|
6552
|
+
* @public
|
|
6553
|
+
* Handles cancel events on the drawer.
|
|
6554
|
+
*/
|
|
6555
|
+
cancelHandler(): void;
|
|
6556
|
+
protected observeRoleAttr(): void;
|
|
6557
|
+
protected updateDialogRole(): void;
|
|
6539
6558
|
}
|
|
6540
6559
|
|
|
6541
6560
|
/**
|
package/dist/web-components.js
CHANGED
|
@@ -5795,6 +5795,9 @@ class BaseButton extends FASTElement {
|
|
|
5795
5795
|
this.elementInternals.role = "button";
|
|
5796
5796
|
}
|
|
5797
5797
|
disabledChanged() {
|
|
5798
|
+
if (!this.$fastController.isConnected) {
|
|
5799
|
+
return;
|
|
5800
|
+
}
|
|
5798
5801
|
if (this.disabled) {
|
|
5799
5802
|
this.removeAttribute("tabindex");
|
|
5800
5803
|
} else {
|
|
@@ -5859,6 +5862,7 @@ class BaseButton extends FASTElement {
|
|
|
5859
5862
|
connectedCallback() {
|
|
5860
5863
|
super.connectedCallback();
|
|
5861
5864
|
this.elementInternals.ariaDisabled = `${!!this.disabledFocusable}`;
|
|
5865
|
+
this.disabledChanged();
|
|
5862
5866
|
}
|
|
5863
5867
|
/**
|
|
5864
5868
|
* This fallback creates a new slot, then creates a submit button to mirror the custom element's
|
|
@@ -6715,6 +6719,26 @@ class Dialog extends FASTElement {
|
|
|
6715
6719
|
});
|
|
6716
6720
|
};
|
|
6717
6721
|
}
|
|
6722
|
+
typeChanged(prev, next) {
|
|
6723
|
+
if (!this.dialog) {
|
|
6724
|
+
return;
|
|
6725
|
+
}
|
|
6726
|
+
if (next === DialogType.alert) {
|
|
6727
|
+
this.dialog.setAttribute("role", "alertdialog");
|
|
6728
|
+
} else {
|
|
6729
|
+
this.dialog.removeAttribute("role");
|
|
6730
|
+
}
|
|
6731
|
+
if (next !== DialogType.nonModal) {
|
|
6732
|
+
this.dialog.setAttribute("aria-modal", "true");
|
|
6733
|
+
} else {
|
|
6734
|
+
this.dialog.removeAttribute("aria-modal");
|
|
6735
|
+
}
|
|
6736
|
+
}
|
|
6737
|
+
/** @internal */
|
|
6738
|
+
connectedCallback() {
|
|
6739
|
+
super.connectedCallback();
|
|
6740
|
+
this.typeChanged(void 0, this.type);
|
|
6741
|
+
}
|
|
6718
6742
|
/**
|
|
6719
6743
|
* @public
|
|
6720
6744
|
* Method to show the dialog
|
|
@@ -6761,7 +6785,7 @@ __decorateClass$D([attr({
|
|
|
6761
6785
|
})], Dialog.prototype, "ariaLabelledby", 2);
|
|
6762
6786
|
__decorateClass$D([attr], Dialog.prototype, "type", 2);
|
|
6763
6787
|
|
|
6764
|
-
const template$y = html`<dialog
|
|
6788
|
+
const template$y = html`<dialog class="dialog" part="dialog" aria-describedby="${x => x.ariaDescribedby}" aria-labelledby="${x => x.ariaLabelledby}" aria-label="${x => x.ariaLabel}" @click="${(x, c) => x.clickHandler(c.event)}" @cancel="${x => x.hide()}" ${ref("dialog")}><slot></slot></dialog>`;
|
|
6765
6789
|
|
|
6766
6790
|
const styles$x = css`
|
|
6767
6791
|
@layer base{:host{--dialog-backdrop:${colorBackgroundOverlay};--dialog-starting-scale:0.85}::backdrop{background:var(--dialog-backdrop,rgba(0,0,0,0.4))}dialog{background:${colorNeutralBackground1};border-radius:${borderRadiusXLarge};border:none;box-shadow:${shadow64};color:${colorNeutralForeground1};max-height:100vh;padding:0;width:100%;max-width:600px}:host([type='non-modal']) dialog{inset:0;position:fixed;z-index:2;overflow:auto}@supports (max-height:1dvh){dialog{max-height:100dvh}}}@layer animations{@media (prefers-reduced-motion:no-preference){dialog,::backdrop{transition:display allow-discrete,opacity,overlay allow-discrete,scale;transition-duration:${durationGentle};transition-timing-function:${curveDecelerateMid};opacity:0}::backdrop{transition-timing-function:${curveLinear}}[open],[open]::backdrop{opacity:1}dialog:not([open]){scale:var(--dialog-starting-scale);transition-timing-function:${curveAccelerateMid}}}@starting-style{[open],[open]::backdrop{opacity:0}dialog{scale:var(--dialog-starting-scale)}}}`.withBehaviors(forcedColorsStylesheetBehavior(css`
|
|
@@ -6964,6 +6988,28 @@ class Drawer extends FASTElement {
|
|
|
6964
6988
|
});
|
|
6965
6989
|
};
|
|
6966
6990
|
}
|
|
6991
|
+
typeChanged() {
|
|
6992
|
+
if (!this.dialog) {
|
|
6993
|
+
return;
|
|
6994
|
+
}
|
|
6995
|
+
this.updateDialogRole();
|
|
6996
|
+
if (this.type === DrawerType.modal) {
|
|
6997
|
+
this.dialog.setAttribute("aria-modal", "true");
|
|
6998
|
+
} else {
|
|
6999
|
+
this.dialog.removeAttribute("aria-modal");
|
|
7000
|
+
}
|
|
7001
|
+
}
|
|
7002
|
+
/** @internal */
|
|
7003
|
+
connectedCallback() {
|
|
7004
|
+
super.connectedCallback();
|
|
7005
|
+
this.typeChanged();
|
|
7006
|
+
this.observeRoleAttr();
|
|
7007
|
+
}
|
|
7008
|
+
/** @internal */
|
|
7009
|
+
disconnectedCallback() {
|
|
7010
|
+
super.disconnectedCallback();
|
|
7011
|
+
this.roleAttrObserver.disconnect();
|
|
7012
|
+
}
|
|
6967
7013
|
/**
|
|
6968
7014
|
* @public
|
|
6969
7015
|
* Method to show the drawer
|
|
@@ -7001,6 +7047,32 @@ class Drawer extends FASTElement {
|
|
|
7001
7047
|
}
|
|
7002
7048
|
return true;
|
|
7003
7049
|
}
|
|
7050
|
+
/**
|
|
7051
|
+
* @public
|
|
7052
|
+
* Handles cancel events on the drawer.
|
|
7053
|
+
*/
|
|
7054
|
+
cancelHandler() {
|
|
7055
|
+
this.hide();
|
|
7056
|
+
}
|
|
7057
|
+
observeRoleAttr() {
|
|
7058
|
+
if (this.roleAttrObserver) {
|
|
7059
|
+
return;
|
|
7060
|
+
}
|
|
7061
|
+
this.roleAttrObserver = new MutationObserver(() => {
|
|
7062
|
+
this.updateDialogRole();
|
|
7063
|
+
});
|
|
7064
|
+
this.roleAttrObserver.observe(this, {
|
|
7065
|
+
attributes: true,
|
|
7066
|
+
attributeFilter: ["role"]
|
|
7067
|
+
});
|
|
7068
|
+
}
|
|
7069
|
+
updateDialogRole() {
|
|
7070
|
+
console.log(this.role);
|
|
7071
|
+
if (!this.dialog) {
|
|
7072
|
+
return;
|
|
7073
|
+
}
|
|
7074
|
+
this.dialog.role = this.type === DrawerType.modal ? "dialog" : this.role;
|
|
7075
|
+
}
|
|
7004
7076
|
}
|
|
7005
7077
|
__decorateClass$A([attr], Drawer.prototype, "type", 2);
|
|
7006
7078
|
__decorateClass$A([attr({
|
|
@@ -7021,7 +7093,7 @@ const styles$u = css`
|
|
|
7021
7093
|
:host{--dialog-backdrop:${colorBackgroundOverlay}}:host([type='non-modal']) dialog[open]::backdrop{display:none}:host([type='non-modal']) dialog{position:fixed;top:0;bottom:0}:host([type='inline']){height:100%;width:fit-content}:host([type='inline']) dialog[open]{box-shadow:none;position:relative}:host([size='small']) dialog{width:320px;max-width:320px}:host([size='large']) dialog{width:940px;max-width:940px}:host([size='full']) dialog{width:100%;max-width:100%}:host([position='end']) dialog{margin-inline-start:auto;margin-inline-end:0}dialog{box-sizing:border-box;z-index:var(--drawer-elevation,1000);font-size:${fontSizeBase300};line-height:${lineHeightBase300};font-family:${fontFamilyBase};font-weight:${fontWeightRegular};color:${colorNeutralForeground1};max-width:var(--drawer-width,592px);max-height:100vh;height:100%;margin-inline-start:0;margin-inline-end:auto;border-inline-end-color:${colorTransparentStroke};border-inline-start-color:var(--drawer-separator,${colorTransparentStroke});outline:none;top:0;bottom:0;width:var(--drawer-width,592px);border-radius:0;padding:0;max-width:var(--drawer-width,592px);box-shadow:${shadow64};border:${strokeWidthThin} solid ${colorTransparentStroke};background:${colorNeutralBackground1}}dialog::backdrop{background:var(--dialog-backdrop)}@layer animations{@media (prefers-reduced-motion:no-preference){dialog{transition:display allow-discrete,opacity,overlay allow-discrete,transform;transition-duration:${durationGentle};transition-timing-function:${curveDecelerateMid}}:host dialog:not([open]){transform:translateX(-100%);transition-timing-function:${curveAccelerateMid}}:host([position='end']) dialog:not([open]){transform:translateX(100%);transition-timing-function:${curveAccelerateMid}}dialog[open]{transform:translateX(0)}dialog::backdrop{transition:display allow-discrete,opacity,overlay allow-discrete,scale;transition-duration:${durationGentle};transition-timing-function:${curveDecelerateMid};background:var(--dialog-backdrop,${colorBackgroundOverlay});opacity:0}dialog[open]::backdrop{opacity:1}dialog::backdrop{transition-timing-function:${curveLinear}}}@starting-style{dialog[open]{transform:translateX(-100%)}:host([position='end']) dialog[open]{transform:translateX(100%)}dialog[open]::backdrop{opacity:0}}}`;
|
|
7022
7094
|
|
|
7023
7095
|
function drawerTemplate() {
|
|
7024
|
-
return html`<dialog class="dialog" part="dialog"
|
|
7096
|
+
return html`<dialog class="dialog" part="dialog" aria-describedby="${x => x.ariaDescribedby}" aria-labelledby="${x => x.ariaLabelledby}" aria-label="${x => x.ariaLabel}" size="${x => x.size}" position="${x => x.position}" @click="${(x, c) => x.clickHandler(c.event)}" @cancel="${x => x.cancelHandler()}" ${ref("dialog")}><slot></slot></dialog>`;
|
|
7025
7097
|
}
|
|
7026
7098
|
const template$v = drawerTemplate();
|
|
7027
7099
|
|
|
@@ -7973,9 +8045,9 @@ class BaseField extends FASTElement {
|
|
|
7973
8045
|
* @internal
|
|
7974
8046
|
*/
|
|
7975
8047
|
slottedInputsChanged(prev, next) {
|
|
7976
|
-
|
|
7977
|
-
|
|
7978
|
-
this.
|
|
8048
|
+
const filtered = next?.filter(node => node.nodeType === Node.ELEMENT_NODE) ?? [];
|
|
8049
|
+
if (filtered?.length) {
|
|
8050
|
+
this.input = filtered?.[0];
|
|
7979
8051
|
}
|
|
7980
8052
|
}
|
|
7981
8053
|
/**
|
|
@@ -7988,6 +8060,11 @@ class BaseField extends FASTElement {
|
|
|
7988
8060
|
if (next) {
|
|
7989
8061
|
this.setStates();
|
|
7990
8062
|
this.setLabelProperties();
|
|
8063
|
+
this.slottedInputObserver.observe(this.input, {
|
|
8064
|
+
attributes: true,
|
|
8065
|
+
attributeFilter: ["disabled", "required", "readonly"],
|
|
8066
|
+
subtree: true
|
|
8067
|
+
});
|
|
7991
8068
|
}
|
|
7992
8069
|
}
|
|
7993
8070
|
/**
|
|
@@ -8018,8 +8095,12 @@ class BaseField extends FASTElement {
|
|
|
8018
8095
|
this.addEventListener("invalid", this.invalidHandler, {
|
|
8019
8096
|
capture: true
|
|
8020
8097
|
});
|
|
8098
|
+
this.slottedInputObserver = new MutationObserver(() => {
|
|
8099
|
+
this.setStates();
|
|
8100
|
+
});
|
|
8021
8101
|
}
|
|
8022
8102
|
disconnectedCallback() {
|
|
8103
|
+
this.slottedInputObserver.disconnect();
|
|
8023
8104
|
this.removeEventListener("invalid", this.invalidHandler, {
|
|
8024
8105
|
capture: true
|
|
8025
8106
|
});
|
|
@@ -8091,7 +8172,7 @@ class BaseField extends FASTElement {
|
|
|
8091
8172
|
}
|
|
8092
8173
|
}
|
|
8093
8174
|
setValidationStates() {
|
|
8094
|
-
if (!this.input
|
|
8175
|
+
if (!this.input?.validity) {
|
|
8095
8176
|
return;
|
|
8096
8177
|
}
|
|
8097
8178
|
for (const [flag, value] of Object.entries(ValidationFlags)) {
|
|
@@ -8127,14 +8208,7 @@ const styles$r = css`
|
|
|
8127
8208
|
|
|
8128
8209
|
:host{color:${colorNeutralForeground1};align-items:center;gap:0 ${spacingHorizontalM};justify-items:start}:has([slot='message']){color:${colorNeutralForeground1};row-gap:${spacingVerticalS}}:not(::slotted([slot='label'])){gap:0}:host([label-position='before']){grid-template-areas:'label input' 'label message'}:host([label-position='after']){gap:0;grid-template-areas:'input label' 'message message';grid-template-columns:auto 1fr}:host([label-position='after']) ::slotted([slot='input']){margin-inline-end:${spacingHorizontalM}}:host([label-position='above']){grid-template-areas:'label' 'input' 'message';row-gap:${spacingVerticalXXS}}:host([label-position='below']){grid-template-areas:'input' 'label' 'message';justify-items:center}:host([label-position='below']) ::slotted([slot='label']){margin-block-start:${spacingVerticalM}}:host(${requiredState}) ::slotted([slot='label'])::after{content:'*' / '';color:${colorPaletteRedForeground1};margin-inline-start:${spacingHorizontalXS}}::slotted([slot='input']){grid-area:input}::slotted([slot='message']){color:${colorNeutralForeground3};font-family:${fontFamilyBase};font-size:${fontSizeBase200};font-weight:${fontWeightRegular};grid-area:message;line-height:${lineHeightBase200};margin-block-start:${spacingVerticalXXS}}:host(${focusVisibleState}:focus-within){border-radius:${borderRadiusMedium};outline:${strokeWidthThick} solid ${colorStrokeFocus2}}::slotted(label),::slotted([slot='label']){cursor:inherit;display:inline-flex;font-family:${fontFamilyBase};font-size:${fontSizeBase300};font-weight:${fontWeightRegular};grid-area:label;line-height:${lineHeightBase300};justify-self:stretch;user-select:none}:host([size='small']) ::slotted(label){font-size:${fontSizeBase200};line-height:${lineHeightBase200}}:host([size='large']) ::slotted(label){font-size:${fontSizeBase400};line-height:${lineHeightBase400}}:host([size='large']) ::slotted(label),:host([weight='semibold']) ::slotted(label){font-weight:${fontWeightSemibold}}:host(${disabledState}){cursor:default}::slotted([flag]){display:none}:host(${badInputState}) ::slotted([flag='${ValidationFlags.badInput}']),:host(${customErrorState}) ::slotted([flag='${ValidationFlags.customError}']),:host(${patternMismatchState}) ::slotted([flag='${ValidationFlags.patternMismatch}']),:host(${rangeOverflowState}) ::slotted([flag='${ValidationFlags.rangeOverflow}']),:host(${rangeUnderflowState}) ::slotted([flag='${ValidationFlags.rangeUnderflow}']),:host(${stepMismatchState}) ::slotted([flag='${ValidationFlags.stepMismatch}']),:host(${tooLongState}) ::slotted([flag='${ValidationFlags.tooLong}']),:host(${tooShortState}) ::slotted([flag='${ValidationFlags.tooShort}']),:host(${typeMismatchState}) ::slotted([flag='${ValidationFlags.typeMismatch}']),:host(${valueMissingState}) ::slotted([flag='${ValidationFlags.valueMissing}']),:host(${validState}) ::slotted([flag='${ValidationFlags.valid}']){display:block}`;
|
|
8129
8210
|
|
|
8130
|
-
const template$s = html`<template @click="${(x, c) => x.clickHandler(c.event)}" @change="${(x, c) => x.changeHandler(c.event)}" @focusin="${(x, c) => x.focusinHandler(c.event)}" @focusout="${(x, c) => x.focusoutHandler(c.event)}" ${
|
|
8131
|
-
property: "slottedInputs",
|
|
8132
|
-
attributes: true,
|
|
8133
|
-
attributeFilter: ["disabled", "required", "readonly"],
|
|
8134
|
-
subtree: true,
|
|
8135
|
-
selector: '[slot="input"]',
|
|
8136
|
-
filter: elements()
|
|
8137
|
-
})}><slot name="label" part="label" ${slotted("labelSlot")}></slot><slot name="input" part="input"></slot><slot name="message" part="message" ${slotted({
|
|
8211
|
+
const template$s = html`<template @click="${(x, c) => x.clickHandler(c.event)}" @change="${(x, c) => x.changeHandler(c.event)}" @focusin="${(x, c) => x.focusinHandler(c.event)}" @focusout="${(x, c) => x.focusoutHandler(c.event)}"><slot name="label" part="label" ${slotted("labelSlot")}></slot><slot name="input" part="input" ${slotted("slottedInputs")}></slot><slot name="message" part="message" ${slotted({
|
|
8138
8212
|
property: "messageSlot",
|
|
8139
8213
|
filter: elements("[flag]")
|
|
8140
8214
|
})}></slot></template>`;
|
|
@@ -11058,7 +11132,7 @@ const styles$d = css`
|
|
|
11058
11132
|
.track:hover,.track:active,.track{background:WindowText}.thumb:hover,.thumb:active,.thumb{background:ButtonText}:host(:hover) .track::before,:host(:active) .track::before,.track::before{background:Highlight}`));
|
|
11059
11133
|
|
|
11060
11134
|
function sliderTemplate(options = {}) {
|
|
11061
|
-
return html`<template
|
|
11135
|
+
return html`<template @pointerdown="${(x, c) => x.handlePointerDown(c.event)}" @keydown="${(x, c) => x.handleKeydown(c.event)}"><div ${ref("track")} part="track-container" class="track" style="${x => x.position}"></div><div ${ref("thumb")} part="thumb-container" class="thumb-container" style="${x => x.position}" @pointerdown="${(x, c) => x.handleThumbPointerDown(c.event)}"><slot name="thumb">${staticallyCompose(options.thumb)}</slot></div></template>`;
|
|
11062
11136
|
}
|
|
11063
11137
|
const template$d = sliderTemplate({
|
|
11064
11138
|
thumb: `<div class="thumb"></div>`
|
|
@@ -12100,6 +12174,8 @@ class BaseTextArea extends FASTElement {
|
|
|
12100
12174
|
* @internal
|
|
12101
12175
|
*/
|
|
12102
12176
|
this.elementInternals = this.attachInternals();
|
|
12177
|
+
this.filteredLabelSlottedNodes = [];
|
|
12178
|
+
this.labelSlottedNodes = [];
|
|
12103
12179
|
this.userInteracted = false;
|
|
12104
12180
|
this.preConnectControlEl = document.createElement("textarea");
|
|
12105
12181
|
this.autoResize = false;
|
|
@@ -12116,10 +12192,11 @@ class BaseTextArea extends FASTElement {
|
|
|
12116
12192
|
this.value = next;
|
|
12117
12193
|
}
|
|
12118
12194
|
labelSlottedNodesChanged() {
|
|
12195
|
+
this.filteredLabelSlottedNodes = this.labelSlottedNodes.filter(whitespaceFilter);
|
|
12119
12196
|
if (this.labelEl) {
|
|
12120
|
-
this.labelEl.hidden = !this.
|
|
12197
|
+
this.labelEl.hidden = !this.filteredLabelSlottedNodes.length;
|
|
12121
12198
|
}
|
|
12122
|
-
this.
|
|
12199
|
+
this.filteredLabelSlottedNodes.forEach(node => {
|
|
12123
12200
|
node.disabled = this.disabled;
|
|
12124
12201
|
node.required = this.required;
|
|
12125
12202
|
});
|
|
@@ -12153,8 +12230,8 @@ class BaseTextArea extends FASTElement {
|
|
|
12153
12230
|
}
|
|
12154
12231
|
requiredChanged() {
|
|
12155
12232
|
this.elementInternals.ariaRequired = `${!!this.required}`;
|
|
12156
|
-
if (this.
|
|
12157
|
-
this.
|
|
12233
|
+
if (this.filteredLabelSlottedNodes?.length) {
|
|
12234
|
+
this.filteredLabelSlottedNodes.forEach(node => node.required = this.required);
|
|
12158
12235
|
}
|
|
12159
12236
|
}
|
|
12160
12237
|
resizeChanged(prev, next) {
|
|
@@ -12389,8 +12466,8 @@ class BaseTextArea extends FASTElement {
|
|
|
12389
12466
|
if (this.controlEl) {
|
|
12390
12467
|
this.controlEl.disabled = disabled;
|
|
12391
12468
|
}
|
|
12392
|
-
if (this.
|
|
12393
|
-
this.
|
|
12469
|
+
if (this.filteredLabelSlottedNodes?.length) {
|
|
12470
|
+
this.filteredLabelSlottedNodes.forEach(node => node.disabled = this.disabled);
|
|
12394
12471
|
}
|
|
12395
12472
|
}
|
|
12396
12473
|
toggleUserValidityState() {
|
|
@@ -12563,13 +12640,7 @@ const styles$6 = css`
|
|
|
12563
12640
|
:host{--border-color:FieldText;--border-block-end-color:FieldText;--focus-indicator-color:Highlight;--placeholder-color:FieldText}:host(:hover),:host(:active),:host(:focus-within){--border-color:Highlight;--border-block-end-color:Highlight}:host(:disabled){--color:GrayText;--border-color:GrayText;--border-block-end-color:GrayText;--placeholder-color:GrayText}`));
|
|
12564
12641
|
|
|
12565
12642
|
function textAreaTemplate() {
|
|
12566
|
-
return html`<template><label ${ref("labelEl")} for="control" part="label"><slot name="label" ${slotted({
|
|
12567
|
-
property: "labelSlottedNodes",
|
|
12568
|
-
filter: whitespaceFilter
|
|
12569
|
-
})}></slot></label><div class="root" part="root"><textarea ${ref("controlEl")} id="control" class="control" part="control" ?required="${x => x.required}" ?disabled="${x => x.disabled}" ?readonly="${x => x.readOnly}" ?spellcheck="${x => x.spellcheck}" autocomplete="${x => x.autocomplete}" maxlength="${x => x.maxLength}" minlength="${x => x.minLength}" placeholder="${x => x.placeholder}" @change="${x => x.handleControlChange()}" @select="${x => x.handleControlSelect()}" @input="${x => x.handleControlInput()}"></textarea></div><div hidden><slot ${slotted({
|
|
12570
|
-
property: "defaultSlottedNodes",
|
|
12571
|
-
filter: whitespaceFilter
|
|
12572
|
-
})}></slot></div></template>`;
|
|
12643
|
+
return html`<template><label ${ref("labelEl")} for="control" part="label"><slot name="label" ${slotted("labelSlottedNodes")}></slot></label><div class="root" part="root"><textarea ${ref("controlEl")} id="control" class="control" part="control" ?required="${x => x.required}" ?disabled="${x => x.disabled}" ?readonly="${x => x.readOnly}" ?spellcheck="${x => x.spellcheck}" autocomplete="${x => x.autocomplete}" maxlength="${x => x.maxLength}" minlength="${x => x.minLength}" placeholder="${x => x.placeholder}" @change="${x => x.handleControlChange()}" @select="${x => x.handleControlSelect()}" @input="${x => x.handleControlInput()}"></textarea></div><div hidden><slot ${slotted("defaultSlottedNodes")}></slot></div></template>`;
|
|
12573
12644
|
}
|
|
12574
12645
|
const template$6 = textAreaTemplate();
|
|
12575
12646
|
|