@spectrum-web-components/textfield 0.41.0 → 0.41.1

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.
@@ -144,7 +144,7 @@
144
144
  },
145
145
  "privacy": "public",
146
146
  "default": "false",
147
- "description": "Whether a form control delivered with the `multiline` attribute will change size to accomodate longer input",
147
+ "description": "Whether a form control delivered with the `multiline` attribute will change size\nvertically to accomodate longer input",
148
148
  "attribute": "grows",
149
149
  "reflects": true
150
150
  },
@@ -529,7 +529,7 @@
529
529
  "text": "boolean"
530
530
  },
531
531
  "default": "false",
532
- "description": "Whether a form control delivered with the `multiline` attribute will change size to accomodate longer input",
532
+ "description": "Whether a form control delivered with the `multiline` attribute will change size\nvertically to accomodate longer input",
533
533
  "fieldName": "grows"
534
534
  },
535
535
  {
@@ -840,7 +840,7 @@
840
840
  },
841
841
  "privacy": "public",
842
842
  "default": "false",
843
- "description": "Whether a form control delivered with the `multiline` attribute will change size to accomodate longer input",
843
+ "description": "Whether a form control delivered with the `multiline` attribute will change size\nvertically to accomodate longer input",
844
844
  "attribute": "grows",
845
845
  "reflects": true,
846
846
  "inheritedFrom": {
@@ -1329,7 +1329,7 @@
1329
1329
  "text": "boolean"
1330
1330
  },
1331
1331
  "default": "false",
1332
- "description": "Whether a form control delivered with the `multiline` attribute will change size to accomodate longer input",
1332
+ "description": "Whether a form control delivered with the `multiline` attribute will change size\nvertically to accomodate longer input",
1333
1333
  "fieldName": "grows",
1334
1334
  "inheritedFrom": {
1335
1335
  "name": "TextfieldBase",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@spectrum-web-components/textfield",
3
- "version": "0.41.0",
3
+ "version": "0.41.1",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -57,15 +57,15 @@
57
57
  "lit-html"
58
58
  ],
59
59
  "dependencies": {
60
- "@spectrum-web-components/base": "^0.41.0",
61
- "@spectrum-web-components/help-text": "^0.41.0",
62
- "@spectrum-web-components/icon": "^0.41.0",
63
- "@spectrum-web-components/icons-ui": "^0.41.0",
64
- "@spectrum-web-components/icons-workflow": "^0.41.0",
65
- "@spectrum-web-components/shared": "^0.41.0"
60
+ "@spectrum-web-components/base": "^0.41.1",
61
+ "@spectrum-web-components/help-text": "^0.41.1",
62
+ "@spectrum-web-components/icon": "^0.41.1",
63
+ "@spectrum-web-components/icons-ui": "^0.41.1",
64
+ "@spectrum-web-components/icons-workflow": "^0.41.1",
65
+ "@spectrum-web-components/shared": "^0.41.1"
66
66
  },
67
67
  "devDependencies": {
68
- "@spectrum-css/textfield": "^6.1.0"
68
+ "@spectrum-css/textfield": "^6.1.2"
69
69
  },
70
70
  "types": "./src/index.d.ts",
71
71
  "customElements": "custom-elements.json",
@@ -73,5 +73,5 @@
73
73
  "./sp-*.js",
74
74
  "./**/*.dev.js"
75
75
  ],
76
- "gitHead": "0bf38fd427adc39804b228a4c61de623e5ebb82e"
76
+ "gitHead": "1eded35d98d01973b40990486b86840ba464a2da"
77
77
  }
@@ -55,7 +55,8 @@ export declare class TextfieldBase extends TextfieldBase_base {
55
55
  */
56
56
  pattern?: string;
57
57
  /**
58
- * Whether a form control delivered with the `multiline` attribute will change size to accomodate longer input
58
+ * Whether a form control delivered with the `multiline` attribute will change size
59
+ * vertically to accomodate longer input
59
60
  */
60
61
  grows: boolean;
61
62
  /**
@@ -154,7 +154,7 @@ export class TextfieldBase extends ManageHelpText(
154
154
  }
155
155
  get renderMultiline() {
156
156
  return html`
157
- ${this.grows && this.rows === -1 ? html`
157
+ ${this.multiline && this.grows && this.rows === -1 ? html`
158
158
  <div id="sizer" class="input" aria-hidden="true">
159
159
  ${this.value}&#8203;
160
160
  </div>
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["Textfield.ts"],
4
- "sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport {\n CSSResultArray,\n html,\n nothing,\n PropertyValues,\n SizedMixin,\n TemplateResult,\n} from '@spectrum-web-components/base';\nimport {\n ifDefined,\n live,\n} from '@spectrum-web-components/base/src/directives.js';\nimport {\n property,\n query,\n state,\n} from '@spectrum-web-components/base/src/decorators.js';\n\nimport { ManageHelpText } from '@spectrum-web-components/help-text/src/manage-help-text.js';\nimport { Focusable } from '@spectrum-web-components/shared/src/focusable.js';\nimport '@spectrum-web-components/icons-ui/icons/sp-icon-checkmark100.js';\nimport '@spectrum-web-components/icons-workflow/icons/sp-icon-alert.js';\n\nimport textfieldStyles from './textfield.css.js';\nimport checkmarkStyles from '@spectrum-web-components/icon/src/spectrum-icon-checkmark.css.js';\n\nconst textfieldTypes = ['text', 'url', 'tel', 'email', 'password'] as const;\nexport type TextfieldType = typeof textfieldTypes[number];\n\n/**\n * @fires input - The value of the element has changed.\n * @fires change - An alteration to the value of the element has been committed by the user.\n */\nexport class TextfieldBase extends ManageHelpText(\n SizedMixin(Focusable, {\n noDefaultSize: true,\n })\n) {\n public static override get styles(): CSSResultArray {\n return [textfieldStyles, checkmarkStyles];\n }\n\n @state()\n protected appliedLabel?: string;\n\n /**\n * A regular expression outlining the keys that will be allowed to update the value of the form control.\n */\n @property({ attribute: 'allowed-keys' })\n allowedKeys = '';\n\n /**\n * @private\n */\n @property({ type: Boolean, reflect: true })\n public focused = false;\n\n @query('.input:not(#sizer)')\n protected inputElement!: HTMLInputElement | HTMLTextAreaElement;\n\n /**\n * Whether the `value` held by the form control is invalid.\n */\n @property({ type: Boolean, reflect: true })\n public invalid = false;\n\n /**\n * A string applied via `aria-label` to the form control when a user visible label is not provided.\n */\n @property()\n public label = '';\n\n /**\n * Name of the form control.\n */\n @property({ type: String, reflect: true })\n public name: string | undefined;\n\n /**\n * Text that appears in the form control when it has no value set\n */\n @property()\n public placeholder = '';\n\n @state()\n set type(val: TextfieldType) {\n const prev = this._type;\n this._type = val;\n this.requestUpdate('type', prev);\n }\n\n get type(): TextfieldType {\n return textfieldTypes.find((t) => t === this._type) ?? 'text';\n }\n\n /**\n * @private\n * This binding allows for invalid value for `type` to still be reflected to the DOM\n */\n @property({ attribute: 'type', reflect: true })\n private _type: TextfieldType = 'text';\n\n /**\n * Pattern the `value` must match to be valid\n */\n @property()\n public pattern?: string;\n\n /**\n * Whether a form control delivered with the `multiline` attribute will change size to accomodate longer input\n */\n @property({ type: Boolean, reflect: true })\n public grows = false;\n\n /**\n * Defines the maximum string length that the user can enter\n */\n @property({ type: Number })\n public maxlength = -1;\n\n /**\n * Defines the minimum string length that the user can enter\n */\n @property({ type: Number })\n public minlength = -1;\n\n /**\n * Whether the form control should accept a value longer than one line\n */\n @property({ type: Boolean, reflect: true })\n public multiline = false;\n\n /**\n * Whether a user can interact with the value of the form control\n */\n @property({ type: Boolean, reflect: true })\n public readonly = false;\n\n /**\n * The specific number of rows the form control should provide in the user interface\n */\n @property({ type: Number })\n public rows = -1;\n\n /**\n * Whether the `value` held by the form control is valid.\n */\n @property({ type: Boolean, reflect: true })\n public valid = false;\n\n /**\n * The value held by the form control\n */\n @property({ type: String })\n public set value(value: string | number) {\n if (value === this.value) {\n return;\n }\n const oldValue = this._value;\n this._value = value;\n this.requestUpdate('value', oldValue);\n }\n\n public get value(): string | number {\n return this._value;\n }\n\n protected _value: string | number = '';\n\n /**\n * Whether to display the form control with no visible background\n */\n @property({ type: Boolean, reflect: true })\n public quiet = false;\n\n /**\n * Whether the form control will be found to be invalid when it holds no `value`\n */\n @property({ type: Boolean, reflect: true })\n public required = false;\n\n /**\n * What form of assistance should be provided when attempting to supply a value to the form control\n */\n @property({ type: String, reflect: true })\n public autocomplete?:\n | HTMLInputElement['autocomplete']\n | HTMLTextAreaElement['autocomplete'];\n\n public override get focusElement(): HTMLInputElement | HTMLTextAreaElement {\n return this.inputElement;\n }\n\n /**\n * Sets the start and end positions of the current selection.\n *\n * @param selectionStart The 0-based index of the first selected character. An index greater than the length of the\n * element's value is treated as pointing to the end of the value.\n * @param selectionEnd The 0-based index of the character after the last selected character. An index greater than\n * the length of the element's value is treated as pointing to the end of the value.\n * @param [selectionDirection=\"none\"] A string indicating the direction in which the selection is considered to\n * have been performed.\n */\n public setSelectionRange(\n selectionStart: number,\n selectionEnd: number,\n selectionDirection: 'forward' | 'backward' | 'none' = 'none'\n ): void {\n this.inputElement.setSelectionRange(\n selectionStart,\n selectionEnd,\n selectionDirection\n );\n }\n\n /**\n * Selects all the text.\n */\n public select(): void {\n this.inputElement.select();\n }\n\n protected handleInput(_event: Event): void {\n if (this.allowedKeys && this.inputElement.value) {\n const regExp = new RegExp(`^[${this.allowedKeys}]*$`, 'u');\n if (!regExp.test(this.inputElement.value)) {\n const selectionStart = this.inputElement\n .selectionStart as number;\n const nextSelectStart = selectionStart - 1;\n this.inputElement.value = this.value.toString();\n this.inputElement.setSelectionRange(\n nextSelectStart,\n nextSelectStart\n );\n return;\n }\n }\n this.value = this.inputElement.value;\n }\n\n protected handleChange(): void {\n this.dispatchEvent(\n new Event('change', {\n bubbles: true,\n composed: true,\n })\n );\n }\n\n protected onFocus(): void {\n this.focused = !this.readonly && true;\n }\n\n protected onBlur(_event: FocusEvent): void {\n this.focused = !this.readonly && false;\n }\n\n protected renderStateIcons(): TemplateResult | typeof nothing {\n if (this.invalid) {\n return html`\n <sp-icon-alert id=\"invalid\" class=\"icon\"></sp-icon-alert>\n `;\n } else if (this.valid) {\n return html`\n <sp-icon-checkmark100\n id=\"valid\"\n class=\"icon spectrum-UIIcon-Checkmark100\"\n ></sp-icon-checkmark100>\n `;\n }\n return nothing;\n }\n\n protected get displayValue(): string {\n return this.value.toString();\n }\n\n private get renderMultiline(): TemplateResult {\n return html`\n ${this.grows && this.rows === -1\n ? html`\n <div id=\"sizer\" class=\"input\" aria-hidden=\"true\">\n ${this.value}&#8203;\n </div>\n `\n : nothing}\n <!-- @ts-ignore -->\n <textarea\n name=${ifDefined(this.name || undefined)}\n aria-describedby=${this.helpTextId}\n aria-label=${this.label ||\n this.appliedLabel ||\n this.placeholder}\n aria-invalid=${ifDefined(this.invalid || undefined)}\n class=\"input\"\n maxlength=${ifDefined(\n this.maxlength > -1 ? this.maxlength : undefined\n )}\n minlength=${ifDefined(\n this.minlength > -1 ? this.minlength : undefined\n )}\n title=${this.invalid ? '' : nothing}\n pattern=${ifDefined(this.pattern)}\n placeholder=${this.placeholder}\n .value=${this.displayValue}\n @change=${this.handleChange}\n @input=${this.handleInput}\n @focus=${this.onFocus}\n @blur=${this.onBlur}\n ?disabled=${this.disabled}\n ?required=${this.required}\n ?readonly=${this.readonly}\n rows=${ifDefined(this.rows > -1 ? this.rows : undefined)}\n autocomplete=${ifDefined(this.autocomplete)}\n ></textarea>\n `;\n }\n\n private get renderInput(): TemplateResult {\n return html`\n <!-- @ts-ignore -->\n <input\n name=${ifDefined(this.name || undefined)}\n type=${this.type}\n aria-describedby=${this.helpTextId}\n aria-label=${this.label ||\n this.appliedLabel ||\n this.placeholder}\n aria-invalid=${ifDefined(this.invalid || undefined)}\n class=\"input\"\n title=${this.invalid ? '' : nothing}\n maxlength=${ifDefined(\n this.maxlength > -1 ? this.maxlength : undefined\n )}\n minlength=${ifDefined(\n this.minlength > -1 ? this.minlength : undefined\n )}\n pattern=${ifDefined(this.pattern)}\n placeholder=${this.placeholder}\n .value=${live(this.displayValue)}\n @change=${this.handleChange}\n @input=${this.handleInput}\n @focus=${this.onFocus}\n @blur=${this.onBlur}\n ?disabled=${this.disabled}\n ?required=${this.required}\n ?readonly=${this.readonly}\n autocomplete=${ifDefined(this.autocomplete)}\n />\n `;\n }\n\n protected renderField(): TemplateResult {\n return html`\n ${this.renderStateIcons()}\n ${this.multiline ? this.renderMultiline : this.renderInput}\n `;\n }\n\n protected override render(): TemplateResult {\n return html`\n <div id=\"textfield\">${this.renderField()}</div>\n ${this.renderHelpText(this.invalid)}\n `;\n }\n\n protected override update(changedProperties: PropertyValues): void {\n if (\n changedProperties.has('value') ||\n (changedProperties.has('required') && this.required)\n ) {\n this.updateComplete.then(() => {\n this.checkValidity();\n });\n }\n super.update(changedProperties);\n }\n\n public checkValidity(): boolean {\n let validity = this.inputElement.checkValidity();\n if (this.required || (this.value && this.pattern)) {\n if ((this.disabled || this.multiline) && this.pattern) {\n const regex = new RegExp(`^${this.pattern}$`, 'u');\n validity = regex.test(this.value.toString());\n }\n if (typeof this.minlength !== 'undefined') {\n validity =\n validity && this.value.toString().length >= this.minlength;\n }\n this.valid = validity;\n this.invalid = !validity;\n }\n return validity;\n }\n}\n\n/**\n * @element sp-textfield\n * @slot help-text - default or non-negative help text to associate to your form element\n * @slot negative-help-text - negative help text to associate to your form element when `invalid`\n */\nexport class Textfield extends TextfieldBase {\n @property({ type: String })\n public override set value(value: string) {\n if (value === this.value) {\n return;\n }\n const oldValue = this._value;\n this._value = value;\n this.requestUpdate('value', oldValue);\n }\n\n public override get value(): string {\n return this._value;\n }\n\n protected override _value = '';\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport {\n CSSResultArray,\n html,\n nothing,\n PropertyValues,\n SizedMixin,\n TemplateResult,\n} from '@spectrum-web-components/base';\nimport {\n ifDefined,\n live,\n} from '@spectrum-web-components/base/src/directives.js';\nimport {\n property,\n query,\n state,\n} from '@spectrum-web-components/base/src/decorators.js';\n\nimport { ManageHelpText } from '@spectrum-web-components/help-text/src/manage-help-text.js';\nimport { Focusable } from '@spectrum-web-components/shared/src/focusable.js';\nimport '@spectrum-web-components/icons-ui/icons/sp-icon-checkmark100.js';\nimport '@spectrum-web-components/icons-workflow/icons/sp-icon-alert.js';\n\nimport textfieldStyles from './textfield.css.js';\nimport checkmarkStyles from '@spectrum-web-components/icon/src/spectrum-icon-checkmark.css.js';\n\nconst textfieldTypes = ['text', 'url', 'tel', 'email', 'password'] as const;\nexport type TextfieldType = typeof textfieldTypes[number];\n\n/**\n * @fires input - The value of the element has changed.\n * @fires change - An alteration to the value of the element has been committed by the user.\n */\nexport class TextfieldBase extends ManageHelpText(\n SizedMixin(Focusable, {\n noDefaultSize: true,\n })\n) {\n public static override get styles(): CSSResultArray {\n return [textfieldStyles, checkmarkStyles];\n }\n\n @state()\n protected appliedLabel?: string;\n\n /**\n * A regular expression outlining the keys that will be allowed to update the value of the form control.\n */\n @property({ attribute: 'allowed-keys' })\n allowedKeys = '';\n\n /**\n * @private\n */\n @property({ type: Boolean, reflect: true })\n public focused = false;\n\n @query('.input:not(#sizer)')\n protected inputElement!: HTMLInputElement | HTMLTextAreaElement;\n\n /**\n * Whether the `value` held by the form control is invalid.\n */\n @property({ type: Boolean, reflect: true })\n public invalid = false;\n\n /**\n * A string applied via `aria-label` to the form control when a user visible label is not provided.\n */\n @property()\n public label = '';\n\n /**\n * Name of the form control.\n */\n @property({ type: String, reflect: true })\n public name: string | undefined;\n\n /**\n * Text that appears in the form control when it has no value set\n */\n @property()\n public placeholder = '';\n\n @state()\n set type(val: TextfieldType) {\n const prev = this._type;\n this._type = val;\n this.requestUpdate('type', prev);\n }\n\n get type(): TextfieldType {\n return textfieldTypes.find((t) => t === this._type) ?? 'text';\n }\n\n /**\n * @private\n * This binding allows for invalid value for `type` to still be reflected to the DOM\n */\n @property({ attribute: 'type', reflect: true })\n private _type: TextfieldType = 'text';\n\n /**\n * Pattern the `value` must match to be valid\n */\n @property()\n public pattern?: string;\n\n /**\n * Whether a form control delivered with the `multiline` attribute will change size\n * vertically to accomodate longer input\n */\n @property({ type: Boolean, reflect: true })\n public grows = false;\n\n /**\n * Defines the maximum string length that the user can enter\n */\n @property({ type: Number })\n public maxlength = -1;\n\n /**\n * Defines the minimum string length that the user can enter\n */\n @property({ type: Number })\n public minlength = -1;\n\n /**\n * Whether the form control should accept a value longer than one line\n */\n @property({ type: Boolean, reflect: true })\n public multiline = false;\n\n /**\n * Whether a user can interact with the value of the form control\n */\n @property({ type: Boolean, reflect: true })\n public readonly = false;\n\n /**\n * The specific number of rows the form control should provide in the user interface\n */\n @property({ type: Number })\n public rows = -1;\n\n /**\n * Whether the `value` held by the form control is valid.\n */\n @property({ type: Boolean, reflect: true })\n public valid = false;\n\n /**\n * The value held by the form control\n */\n @property({ type: String })\n public set value(value: string | number) {\n if (value === this.value) {\n return;\n }\n const oldValue = this._value;\n this._value = value;\n this.requestUpdate('value', oldValue);\n }\n\n public get value(): string | number {\n return this._value;\n }\n\n protected _value: string | number = '';\n\n /**\n * Whether to display the form control with no visible background\n */\n @property({ type: Boolean, reflect: true })\n public quiet = false;\n\n /**\n * Whether the form control will be found to be invalid when it holds no `value`\n */\n @property({ type: Boolean, reflect: true })\n public required = false;\n\n /**\n * What form of assistance should be provided when attempting to supply a value to the form control\n */\n @property({ type: String, reflect: true })\n public autocomplete?:\n | HTMLInputElement['autocomplete']\n | HTMLTextAreaElement['autocomplete'];\n\n public override get focusElement(): HTMLInputElement | HTMLTextAreaElement {\n return this.inputElement;\n }\n\n /**\n * Sets the start and end positions of the current selection.\n *\n * @param selectionStart The 0-based index of the first selected character. An index greater than the length of the\n * element's value is treated as pointing to the end of the value.\n * @param selectionEnd The 0-based index of the character after the last selected character. An index greater than\n * the length of the element's value is treated as pointing to the end of the value.\n * @param [selectionDirection=\"none\"] A string indicating the direction in which the selection is considered to\n * have been performed.\n */\n public setSelectionRange(\n selectionStart: number,\n selectionEnd: number,\n selectionDirection: 'forward' | 'backward' | 'none' = 'none'\n ): void {\n this.inputElement.setSelectionRange(\n selectionStart,\n selectionEnd,\n selectionDirection\n );\n }\n\n /**\n * Selects all the text.\n */\n public select(): void {\n this.inputElement.select();\n }\n\n protected handleInput(_event: Event): void {\n if (this.allowedKeys && this.inputElement.value) {\n const regExp = new RegExp(`^[${this.allowedKeys}]*$`, 'u');\n if (!regExp.test(this.inputElement.value)) {\n const selectionStart = this.inputElement\n .selectionStart as number;\n const nextSelectStart = selectionStart - 1;\n this.inputElement.value = this.value.toString();\n this.inputElement.setSelectionRange(\n nextSelectStart,\n nextSelectStart\n );\n return;\n }\n }\n this.value = this.inputElement.value;\n }\n\n protected handleChange(): void {\n this.dispatchEvent(\n new Event('change', {\n bubbles: true,\n composed: true,\n })\n );\n }\n\n protected onFocus(): void {\n this.focused = !this.readonly && true;\n }\n\n protected onBlur(_event: FocusEvent): void {\n this.focused = !this.readonly && false;\n }\n\n protected renderStateIcons(): TemplateResult | typeof nothing {\n if (this.invalid) {\n return html`\n <sp-icon-alert id=\"invalid\" class=\"icon\"></sp-icon-alert>\n `;\n } else if (this.valid) {\n return html`\n <sp-icon-checkmark100\n id=\"valid\"\n class=\"icon spectrum-UIIcon-Checkmark100\"\n ></sp-icon-checkmark100>\n `;\n }\n return nothing;\n }\n\n protected get displayValue(): string {\n return this.value.toString();\n }\n\n private get renderMultiline(): TemplateResult {\n return html`\n ${this.multiline && this.grows && this.rows === -1\n ? html`\n <div id=\"sizer\" class=\"input\" aria-hidden=\"true\">\n ${this.value}&#8203;\n </div>\n `\n : nothing}\n <!-- @ts-ignore -->\n <textarea\n name=${ifDefined(this.name || undefined)}\n aria-describedby=${this.helpTextId}\n aria-label=${this.label ||\n this.appliedLabel ||\n this.placeholder}\n aria-invalid=${ifDefined(this.invalid || undefined)}\n class=\"input\"\n maxlength=${ifDefined(\n this.maxlength > -1 ? this.maxlength : undefined\n )}\n minlength=${ifDefined(\n this.minlength > -1 ? this.minlength : undefined\n )}\n title=${this.invalid ? '' : nothing}\n pattern=${ifDefined(this.pattern)}\n placeholder=${this.placeholder}\n .value=${this.displayValue}\n @change=${this.handleChange}\n @input=${this.handleInput}\n @focus=${this.onFocus}\n @blur=${this.onBlur}\n ?disabled=${this.disabled}\n ?required=${this.required}\n ?readonly=${this.readonly}\n rows=${ifDefined(this.rows > -1 ? this.rows : undefined)}\n autocomplete=${ifDefined(this.autocomplete)}\n ></textarea>\n `;\n }\n\n private get renderInput(): TemplateResult {\n return html`\n <!-- @ts-ignore -->\n <input\n name=${ifDefined(this.name || undefined)}\n type=${this.type}\n aria-describedby=${this.helpTextId}\n aria-label=${this.label ||\n this.appliedLabel ||\n this.placeholder}\n aria-invalid=${ifDefined(this.invalid || undefined)}\n class=\"input\"\n title=${this.invalid ? '' : nothing}\n maxlength=${ifDefined(\n this.maxlength > -1 ? this.maxlength : undefined\n )}\n minlength=${ifDefined(\n this.minlength > -1 ? this.minlength : undefined\n )}\n pattern=${ifDefined(this.pattern)}\n placeholder=${this.placeholder}\n .value=${live(this.displayValue)}\n @change=${this.handleChange}\n @input=${this.handleInput}\n @focus=${this.onFocus}\n @blur=${this.onBlur}\n ?disabled=${this.disabled}\n ?required=${this.required}\n ?readonly=${this.readonly}\n autocomplete=${ifDefined(this.autocomplete)}\n />\n `;\n }\n\n protected renderField(): TemplateResult {\n return html`\n ${this.renderStateIcons()}\n ${this.multiline ? this.renderMultiline : this.renderInput}\n `;\n }\n\n protected override render(): TemplateResult {\n return html`\n <div id=\"textfield\">${this.renderField()}</div>\n ${this.renderHelpText(this.invalid)}\n `;\n }\n\n protected override update(changedProperties: PropertyValues): void {\n if (\n changedProperties.has('value') ||\n (changedProperties.has('required') && this.required)\n ) {\n this.updateComplete.then(() => {\n this.checkValidity();\n });\n }\n super.update(changedProperties);\n }\n\n public checkValidity(): boolean {\n let validity = this.inputElement.checkValidity();\n if (this.required || (this.value && this.pattern)) {\n if ((this.disabled || this.multiline) && this.pattern) {\n const regex = new RegExp(`^${this.pattern}$`, 'u');\n validity = regex.test(this.value.toString());\n }\n if (typeof this.minlength !== 'undefined') {\n validity =\n validity && this.value.toString().length >= this.minlength;\n }\n this.valid = validity;\n this.invalid = !validity;\n }\n return validity;\n }\n}\n\n/**\n * @element sp-textfield\n * @slot help-text - default or non-negative help text to associate to your form element\n * @slot negative-help-text - negative help text to associate to your form element when `invalid`\n */\nexport class Textfield extends TextfieldBase {\n @property({ type: String })\n public override set value(value: string) {\n if (value === this.value) {\n return;\n }\n const oldValue = this._value;\n this._value = value;\n this.requestUpdate('value', oldValue);\n }\n\n public override get value(): string {\n return this._value;\n }\n\n protected override _value = '';\n}\n"],
5
+ "mappings": "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",
6
6
  "names": []
7
7
  }
package/src/Textfield.js CHANGED
@@ -6,7 +6,7 @@
6
6
  class="icon spectrum-UIIcon-Checkmark100"
7
7
  ></sp-icon-checkmark100>
8
8
  `:o}get displayValue(){return this.value.toString()}get renderMultiline(){return s`
9
- ${this.grows&&this.rows===-1?s`
9
+ ${this.multiline&&this.grows&&this.rows===-1?s`
10
10
  <div id="sizer" class="input" aria-hidden="true">
11
11
  ${this.value}&#8203;
12
12
  </div>
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["Textfield.ts"],
4
- "sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport {\n CSSResultArray,\n html,\n nothing,\n PropertyValues,\n SizedMixin,\n TemplateResult,\n} from '@spectrum-web-components/base';\nimport {\n ifDefined,\n live,\n} from '@spectrum-web-components/base/src/directives.js';\nimport {\n property,\n query,\n state,\n} from '@spectrum-web-components/base/src/decorators.js';\n\nimport { ManageHelpText } from '@spectrum-web-components/help-text/src/manage-help-text.js';\nimport { Focusable } from '@spectrum-web-components/shared/src/focusable.js';\nimport '@spectrum-web-components/icons-ui/icons/sp-icon-checkmark100.js';\nimport '@spectrum-web-components/icons-workflow/icons/sp-icon-alert.js';\n\nimport textfieldStyles from './textfield.css.js';\nimport checkmarkStyles from '@spectrum-web-components/icon/src/spectrum-icon-checkmark.css.js';\n\nconst textfieldTypes = ['text', 'url', 'tel', 'email', 'password'] as const;\nexport type TextfieldType = typeof textfieldTypes[number];\n\n/**\n * @fires input - The value of the element has changed.\n * @fires change - An alteration to the value of the element has been committed by the user.\n */\nexport class TextfieldBase extends ManageHelpText(\n SizedMixin(Focusable, {\n noDefaultSize: true,\n })\n) {\n public static override get styles(): CSSResultArray {\n return [textfieldStyles, checkmarkStyles];\n }\n\n @state()\n protected appliedLabel?: string;\n\n /**\n * A regular expression outlining the keys that will be allowed to update the value of the form control.\n */\n @property({ attribute: 'allowed-keys' })\n allowedKeys = '';\n\n /**\n * @private\n */\n @property({ type: Boolean, reflect: true })\n public focused = false;\n\n @query('.input:not(#sizer)')\n protected inputElement!: HTMLInputElement | HTMLTextAreaElement;\n\n /**\n * Whether the `value` held by the form control is invalid.\n */\n @property({ type: Boolean, reflect: true })\n public invalid = false;\n\n /**\n * A string applied via `aria-label` to the form control when a user visible label is not provided.\n */\n @property()\n public label = '';\n\n /**\n * Name of the form control.\n */\n @property({ type: String, reflect: true })\n public name: string | undefined;\n\n /**\n * Text that appears in the form control when it has no value set\n */\n @property()\n public placeholder = '';\n\n @state()\n set type(val: TextfieldType) {\n const prev = this._type;\n this._type = val;\n this.requestUpdate('type', prev);\n }\n\n get type(): TextfieldType {\n return textfieldTypes.find((t) => t === this._type) ?? 'text';\n }\n\n /**\n * @private\n * This binding allows for invalid value for `type` to still be reflected to the DOM\n */\n @property({ attribute: 'type', reflect: true })\n private _type: TextfieldType = 'text';\n\n /**\n * Pattern the `value` must match to be valid\n */\n @property()\n public pattern?: string;\n\n /**\n * Whether a form control delivered with the `multiline` attribute will change size to accomodate longer input\n */\n @property({ type: Boolean, reflect: true })\n public grows = false;\n\n /**\n * Defines the maximum string length that the user can enter\n */\n @property({ type: Number })\n public maxlength = -1;\n\n /**\n * Defines the minimum string length that the user can enter\n */\n @property({ type: Number })\n public minlength = -1;\n\n /**\n * Whether the form control should accept a value longer than one line\n */\n @property({ type: Boolean, reflect: true })\n public multiline = false;\n\n /**\n * Whether a user can interact with the value of the form control\n */\n @property({ type: Boolean, reflect: true })\n public readonly = false;\n\n /**\n * The specific number of rows the form control should provide in the user interface\n */\n @property({ type: Number })\n public rows = -1;\n\n /**\n * Whether the `value` held by the form control is valid.\n */\n @property({ type: Boolean, reflect: true })\n public valid = false;\n\n /**\n * The value held by the form control\n */\n @property({ type: String })\n public set value(value: string | number) {\n if (value === this.value) {\n return;\n }\n const oldValue = this._value;\n this._value = value;\n this.requestUpdate('value', oldValue);\n }\n\n public get value(): string | number {\n return this._value;\n }\n\n protected _value: string | number = '';\n\n /**\n * Whether to display the form control with no visible background\n */\n @property({ type: Boolean, reflect: true })\n public quiet = false;\n\n /**\n * Whether the form control will be found to be invalid when it holds no `value`\n */\n @property({ type: Boolean, reflect: true })\n public required = false;\n\n /**\n * What form of assistance should be provided when attempting to supply a value to the form control\n */\n @property({ type: String, reflect: true })\n public autocomplete?:\n | HTMLInputElement['autocomplete']\n | HTMLTextAreaElement['autocomplete'];\n\n public override get focusElement(): HTMLInputElement | HTMLTextAreaElement {\n return this.inputElement;\n }\n\n /**\n * Sets the start and end positions of the current selection.\n *\n * @param selectionStart The 0-based index of the first selected character. An index greater than the length of the\n * element's value is treated as pointing to the end of the value.\n * @param selectionEnd The 0-based index of the character after the last selected character. An index greater than\n * the length of the element's value is treated as pointing to the end of the value.\n * @param [selectionDirection=\"none\"] A string indicating the direction in which the selection is considered to\n * have been performed.\n */\n public setSelectionRange(\n selectionStart: number,\n selectionEnd: number,\n selectionDirection: 'forward' | 'backward' | 'none' = 'none'\n ): void {\n this.inputElement.setSelectionRange(\n selectionStart,\n selectionEnd,\n selectionDirection\n );\n }\n\n /**\n * Selects all the text.\n */\n public select(): void {\n this.inputElement.select();\n }\n\n protected handleInput(_event: Event): void {\n if (this.allowedKeys && this.inputElement.value) {\n const regExp = new RegExp(`^[${this.allowedKeys}]*$`, 'u');\n if (!regExp.test(this.inputElement.value)) {\n const selectionStart = this.inputElement\n .selectionStart as number;\n const nextSelectStart = selectionStart - 1;\n this.inputElement.value = this.value.toString();\n this.inputElement.setSelectionRange(\n nextSelectStart,\n nextSelectStart\n );\n return;\n }\n }\n this.value = this.inputElement.value;\n }\n\n protected handleChange(): void {\n this.dispatchEvent(\n new Event('change', {\n bubbles: true,\n composed: true,\n })\n );\n }\n\n protected onFocus(): void {\n this.focused = !this.readonly && true;\n }\n\n protected onBlur(_event: FocusEvent): void {\n this.focused = !this.readonly && false;\n }\n\n protected renderStateIcons(): TemplateResult | typeof nothing {\n if (this.invalid) {\n return html`\n <sp-icon-alert id=\"invalid\" class=\"icon\"></sp-icon-alert>\n `;\n } else if (this.valid) {\n return html`\n <sp-icon-checkmark100\n id=\"valid\"\n class=\"icon spectrum-UIIcon-Checkmark100\"\n ></sp-icon-checkmark100>\n `;\n }\n return nothing;\n }\n\n protected get displayValue(): string {\n return this.value.toString();\n }\n\n private get renderMultiline(): TemplateResult {\n return html`\n ${this.grows && this.rows === -1\n ? html`\n <div id=\"sizer\" class=\"input\" aria-hidden=\"true\">\n ${this.value}&#8203;\n </div>\n `\n : nothing}\n <!-- @ts-ignore -->\n <textarea\n name=${ifDefined(this.name || undefined)}\n aria-describedby=${this.helpTextId}\n aria-label=${this.label ||\n this.appliedLabel ||\n this.placeholder}\n aria-invalid=${ifDefined(this.invalid || undefined)}\n class=\"input\"\n maxlength=${ifDefined(\n this.maxlength > -1 ? this.maxlength : undefined\n )}\n minlength=${ifDefined(\n this.minlength > -1 ? this.minlength : undefined\n )}\n title=${this.invalid ? '' : nothing}\n pattern=${ifDefined(this.pattern)}\n placeholder=${this.placeholder}\n .value=${this.displayValue}\n @change=${this.handleChange}\n @input=${this.handleInput}\n @focus=${this.onFocus}\n @blur=${this.onBlur}\n ?disabled=${this.disabled}\n ?required=${this.required}\n ?readonly=${this.readonly}\n rows=${ifDefined(this.rows > -1 ? this.rows : undefined)}\n autocomplete=${ifDefined(this.autocomplete)}\n ></textarea>\n `;\n }\n\n private get renderInput(): TemplateResult {\n return html`\n <!-- @ts-ignore -->\n <input\n name=${ifDefined(this.name || undefined)}\n type=${this.type}\n aria-describedby=${this.helpTextId}\n aria-label=${this.label ||\n this.appliedLabel ||\n this.placeholder}\n aria-invalid=${ifDefined(this.invalid || undefined)}\n class=\"input\"\n title=${this.invalid ? '' : nothing}\n maxlength=${ifDefined(\n this.maxlength > -1 ? this.maxlength : undefined\n )}\n minlength=${ifDefined(\n this.minlength > -1 ? this.minlength : undefined\n )}\n pattern=${ifDefined(this.pattern)}\n placeholder=${this.placeholder}\n .value=${live(this.displayValue)}\n @change=${this.handleChange}\n @input=${this.handleInput}\n @focus=${this.onFocus}\n @blur=${this.onBlur}\n ?disabled=${this.disabled}\n ?required=${this.required}\n ?readonly=${this.readonly}\n autocomplete=${ifDefined(this.autocomplete)}\n />\n `;\n }\n\n protected renderField(): TemplateResult {\n return html`\n ${this.renderStateIcons()}\n ${this.multiline ? this.renderMultiline : this.renderInput}\n `;\n }\n\n protected override render(): TemplateResult {\n return html`\n <div id=\"textfield\">${this.renderField()}</div>\n ${this.renderHelpText(this.invalid)}\n `;\n }\n\n protected override update(changedProperties: PropertyValues): void {\n if (\n changedProperties.has('value') ||\n (changedProperties.has('required') && this.required)\n ) {\n this.updateComplete.then(() => {\n this.checkValidity();\n });\n }\n super.update(changedProperties);\n }\n\n public checkValidity(): boolean {\n let validity = this.inputElement.checkValidity();\n if (this.required || (this.value && this.pattern)) {\n if ((this.disabled || this.multiline) && this.pattern) {\n const regex = new RegExp(`^${this.pattern}$`, 'u');\n validity = regex.test(this.value.toString());\n }\n if (typeof this.minlength !== 'undefined') {\n validity =\n validity && this.value.toString().length >= this.minlength;\n }\n this.valid = validity;\n this.invalid = !validity;\n }\n return validity;\n }\n}\n\n/**\n * @element sp-textfield\n * @slot help-text - default or non-negative help text to associate to your form element\n * @slot negative-help-text - negative help text to associate to your form element when `invalid`\n */\nexport class Textfield extends TextfieldBase {\n @property({ type: String })\n public override set value(value: string) {\n if (value === this.value) {\n return;\n }\n const oldValue = this._value;\n this._value = value;\n this.requestUpdate('value', oldValue);\n }\n\n public override get value(): string {\n return this._value;\n }\n\n protected override _value = '';\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/*\nCopyright 2020 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\n\nimport {\n CSSResultArray,\n html,\n nothing,\n PropertyValues,\n SizedMixin,\n TemplateResult,\n} from '@spectrum-web-components/base';\nimport {\n ifDefined,\n live,\n} from '@spectrum-web-components/base/src/directives.js';\nimport {\n property,\n query,\n state,\n} from '@spectrum-web-components/base/src/decorators.js';\n\nimport { ManageHelpText } from '@spectrum-web-components/help-text/src/manage-help-text.js';\nimport { Focusable } from '@spectrum-web-components/shared/src/focusable.js';\nimport '@spectrum-web-components/icons-ui/icons/sp-icon-checkmark100.js';\nimport '@spectrum-web-components/icons-workflow/icons/sp-icon-alert.js';\n\nimport textfieldStyles from './textfield.css.js';\nimport checkmarkStyles from '@spectrum-web-components/icon/src/spectrum-icon-checkmark.css.js';\n\nconst textfieldTypes = ['text', 'url', 'tel', 'email', 'password'] as const;\nexport type TextfieldType = typeof textfieldTypes[number];\n\n/**\n * @fires input - The value of the element has changed.\n * @fires change - An alteration to the value of the element has been committed by the user.\n */\nexport class TextfieldBase extends ManageHelpText(\n SizedMixin(Focusable, {\n noDefaultSize: true,\n })\n) {\n public static override get styles(): CSSResultArray {\n return [textfieldStyles, checkmarkStyles];\n }\n\n @state()\n protected appliedLabel?: string;\n\n /**\n * A regular expression outlining the keys that will be allowed to update the value of the form control.\n */\n @property({ attribute: 'allowed-keys' })\n allowedKeys = '';\n\n /**\n * @private\n */\n @property({ type: Boolean, reflect: true })\n public focused = false;\n\n @query('.input:not(#sizer)')\n protected inputElement!: HTMLInputElement | HTMLTextAreaElement;\n\n /**\n * Whether the `value` held by the form control is invalid.\n */\n @property({ type: Boolean, reflect: true })\n public invalid = false;\n\n /**\n * A string applied via `aria-label` to the form control when a user visible label is not provided.\n */\n @property()\n public label = '';\n\n /**\n * Name of the form control.\n */\n @property({ type: String, reflect: true })\n public name: string | undefined;\n\n /**\n * Text that appears in the form control when it has no value set\n */\n @property()\n public placeholder = '';\n\n @state()\n set type(val: TextfieldType) {\n const prev = this._type;\n this._type = val;\n this.requestUpdate('type', prev);\n }\n\n get type(): TextfieldType {\n return textfieldTypes.find((t) => t === this._type) ?? 'text';\n }\n\n /**\n * @private\n * This binding allows for invalid value for `type` to still be reflected to the DOM\n */\n @property({ attribute: 'type', reflect: true })\n private _type: TextfieldType = 'text';\n\n /**\n * Pattern the `value` must match to be valid\n */\n @property()\n public pattern?: string;\n\n /**\n * Whether a form control delivered with the `multiline` attribute will change size\n * vertically to accomodate longer input\n */\n @property({ type: Boolean, reflect: true })\n public grows = false;\n\n /**\n * Defines the maximum string length that the user can enter\n */\n @property({ type: Number })\n public maxlength = -1;\n\n /**\n * Defines the minimum string length that the user can enter\n */\n @property({ type: Number })\n public minlength = -1;\n\n /**\n * Whether the form control should accept a value longer than one line\n */\n @property({ type: Boolean, reflect: true })\n public multiline = false;\n\n /**\n * Whether a user can interact with the value of the form control\n */\n @property({ type: Boolean, reflect: true })\n public readonly = false;\n\n /**\n * The specific number of rows the form control should provide in the user interface\n */\n @property({ type: Number })\n public rows = -1;\n\n /**\n * Whether the `value` held by the form control is valid.\n */\n @property({ type: Boolean, reflect: true })\n public valid = false;\n\n /**\n * The value held by the form control\n */\n @property({ type: String })\n public set value(value: string | number) {\n if (value === this.value) {\n return;\n }\n const oldValue = this._value;\n this._value = value;\n this.requestUpdate('value', oldValue);\n }\n\n public get value(): string | number {\n return this._value;\n }\n\n protected _value: string | number = '';\n\n /**\n * Whether to display the form control with no visible background\n */\n @property({ type: Boolean, reflect: true })\n public quiet = false;\n\n /**\n * Whether the form control will be found to be invalid when it holds no `value`\n */\n @property({ type: Boolean, reflect: true })\n public required = false;\n\n /**\n * What form of assistance should be provided when attempting to supply a value to the form control\n */\n @property({ type: String, reflect: true })\n public autocomplete?:\n | HTMLInputElement['autocomplete']\n | HTMLTextAreaElement['autocomplete'];\n\n public override get focusElement(): HTMLInputElement | HTMLTextAreaElement {\n return this.inputElement;\n }\n\n /**\n * Sets the start and end positions of the current selection.\n *\n * @param selectionStart The 0-based index of the first selected character. An index greater than the length of the\n * element's value is treated as pointing to the end of the value.\n * @param selectionEnd The 0-based index of the character after the last selected character. An index greater than\n * the length of the element's value is treated as pointing to the end of the value.\n * @param [selectionDirection=\"none\"] A string indicating the direction in which the selection is considered to\n * have been performed.\n */\n public setSelectionRange(\n selectionStart: number,\n selectionEnd: number,\n selectionDirection: 'forward' | 'backward' | 'none' = 'none'\n ): void {\n this.inputElement.setSelectionRange(\n selectionStart,\n selectionEnd,\n selectionDirection\n );\n }\n\n /**\n * Selects all the text.\n */\n public select(): void {\n this.inputElement.select();\n }\n\n protected handleInput(_event: Event): void {\n if (this.allowedKeys && this.inputElement.value) {\n const regExp = new RegExp(`^[${this.allowedKeys}]*$`, 'u');\n if (!regExp.test(this.inputElement.value)) {\n const selectionStart = this.inputElement\n .selectionStart as number;\n const nextSelectStart = selectionStart - 1;\n this.inputElement.value = this.value.toString();\n this.inputElement.setSelectionRange(\n nextSelectStart,\n nextSelectStart\n );\n return;\n }\n }\n this.value = this.inputElement.value;\n }\n\n protected handleChange(): void {\n this.dispatchEvent(\n new Event('change', {\n bubbles: true,\n composed: true,\n })\n );\n }\n\n protected onFocus(): void {\n this.focused = !this.readonly && true;\n }\n\n protected onBlur(_event: FocusEvent): void {\n this.focused = !this.readonly && false;\n }\n\n protected renderStateIcons(): TemplateResult | typeof nothing {\n if (this.invalid) {\n return html`\n <sp-icon-alert id=\"invalid\" class=\"icon\"></sp-icon-alert>\n `;\n } else if (this.valid) {\n return html`\n <sp-icon-checkmark100\n id=\"valid\"\n class=\"icon spectrum-UIIcon-Checkmark100\"\n ></sp-icon-checkmark100>\n `;\n }\n return nothing;\n }\n\n protected get displayValue(): string {\n return this.value.toString();\n }\n\n private get renderMultiline(): TemplateResult {\n return html`\n ${this.multiline && this.grows && this.rows === -1\n ? html`\n <div id=\"sizer\" class=\"input\" aria-hidden=\"true\">\n ${this.value}&#8203;\n </div>\n `\n : nothing}\n <!-- @ts-ignore -->\n <textarea\n name=${ifDefined(this.name || undefined)}\n aria-describedby=${this.helpTextId}\n aria-label=${this.label ||\n this.appliedLabel ||\n this.placeholder}\n aria-invalid=${ifDefined(this.invalid || undefined)}\n class=\"input\"\n maxlength=${ifDefined(\n this.maxlength > -1 ? this.maxlength : undefined\n )}\n minlength=${ifDefined(\n this.minlength > -1 ? this.minlength : undefined\n )}\n title=${this.invalid ? '' : nothing}\n pattern=${ifDefined(this.pattern)}\n placeholder=${this.placeholder}\n .value=${this.displayValue}\n @change=${this.handleChange}\n @input=${this.handleInput}\n @focus=${this.onFocus}\n @blur=${this.onBlur}\n ?disabled=${this.disabled}\n ?required=${this.required}\n ?readonly=${this.readonly}\n rows=${ifDefined(this.rows > -1 ? this.rows : undefined)}\n autocomplete=${ifDefined(this.autocomplete)}\n ></textarea>\n `;\n }\n\n private get renderInput(): TemplateResult {\n return html`\n <!-- @ts-ignore -->\n <input\n name=${ifDefined(this.name || undefined)}\n type=${this.type}\n aria-describedby=${this.helpTextId}\n aria-label=${this.label ||\n this.appliedLabel ||\n this.placeholder}\n aria-invalid=${ifDefined(this.invalid || undefined)}\n class=\"input\"\n title=${this.invalid ? '' : nothing}\n maxlength=${ifDefined(\n this.maxlength > -1 ? this.maxlength : undefined\n )}\n minlength=${ifDefined(\n this.minlength > -1 ? this.minlength : undefined\n )}\n pattern=${ifDefined(this.pattern)}\n placeholder=${this.placeholder}\n .value=${live(this.displayValue)}\n @change=${this.handleChange}\n @input=${this.handleInput}\n @focus=${this.onFocus}\n @blur=${this.onBlur}\n ?disabled=${this.disabled}\n ?required=${this.required}\n ?readonly=${this.readonly}\n autocomplete=${ifDefined(this.autocomplete)}\n />\n `;\n }\n\n protected renderField(): TemplateResult {\n return html`\n ${this.renderStateIcons()}\n ${this.multiline ? this.renderMultiline : this.renderInput}\n `;\n }\n\n protected override render(): TemplateResult {\n return html`\n <div id=\"textfield\">${this.renderField()}</div>\n ${this.renderHelpText(this.invalid)}\n `;\n }\n\n protected override update(changedProperties: PropertyValues): void {\n if (\n changedProperties.has('value') ||\n (changedProperties.has('required') && this.required)\n ) {\n this.updateComplete.then(() => {\n this.checkValidity();\n });\n }\n super.update(changedProperties);\n }\n\n public checkValidity(): boolean {\n let validity = this.inputElement.checkValidity();\n if (this.required || (this.value && this.pattern)) {\n if ((this.disabled || this.multiline) && this.pattern) {\n const regex = new RegExp(`^${this.pattern}$`, 'u');\n validity = regex.test(this.value.toString());\n }\n if (typeof this.minlength !== 'undefined') {\n validity =\n validity && this.value.toString().length >= this.minlength;\n }\n this.valid = validity;\n this.invalid = !validity;\n }\n return validity;\n }\n}\n\n/**\n * @element sp-textfield\n * @slot help-text - default or non-negative help text to associate to your form element\n * @slot negative-help-text - negative help text to associate to your form element when `invalid`\n */\nexport class Textfield extends TextfieldBase {\n @property({ type: String })\n public override set value(value: string) {\n if (value === this.value) {\n return;\n }\n const oldValue = this._value;\n this._value = value;\n this.requestUpdate('value', oldValue);\n }\n\n public override get value(): string {\n return this._value;\n }\n\n protected override _value = '';\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["html", "nothing", "SizedMixin", "ifDefined", "live", "property", "query", "state", "ManageHelpText", "Focusable", "textfieldStyles", "checkmarkStyles", "textfieldTypes", "val", "prev", "_a", "t", "value", "oldValue", "selectionStart", "selectionEnd", "selectionDirection", "_event", "nextSelectStart", "changedProperties", "validity", "__decorateClass"]
7
7
  }
@@ -480,11 +480,7 @@ var(--spectrum-textfield-border-width)
480
480
  --highcontrast-textfield-border-color-invalid-focus-hover,var(
481
481
  --mod-textfield-border-color-invalid-focus-hover,var(--spectrum-textfield-border-color-invalid-focus-hover)
482
482
  )
483
- )}:host([disabled]) #textfield:hover .input::placeholder{color:var(
484
- --highcontrast-textfield-text-color-disabled,var(
485
- --mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)
486
- )
487
- )}:host([quiet][disabled]:hover) .input::placeholder{color:var(
483
+ )}:host([disabled]) #textfield:hover .input::placeholder,:host([quiet][disabled]:hover) .input::placeholder{color:var(
488
484
  --highcontrast-textfield-text-color-disabled,var(
489
485
  --mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)
490
486
  )
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["spectrum-textfield.css.ts"],
4
- "sourcesContent": ["/*\nCopyright 2024 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\nimport { css } from '@spectrum-web-components/base';\nconst styles = css`\n:host{--spectrum-textfield-input-line-height:var(--spectrum-textfield-height);--spectrum-texfield-animation-duration:var(\n--spectrum-animation-duration-100\n);--spectrum-textfield-width:240px;--spectrum-textfield-min-width:var(\n--spectrum-text-field-minimum-width-multiplier\n);--spectrum-textfield-corner-radius:var(--spectrum-corner-radius-100);--spectrum-textfield-spacing-inline-quiet:var(\n--spectrum-field-edge-to-text-quiet\n);--spectrum-textfield-spacing-block-start:var(\n--spectrum-component-top-to-text-100\n);--spectrum-textfield-spacing-block-end:var(\n--spectrum-component-bottom-to-text-100\n);--spectrum-textfield-spacing-block-quiet:var(\n--spectrum-field-edge-to-border-quiet\n);--spectrum-textfield-label-spacing-block:var(\n--spectrum-field-label-to-component\n);--spectrum-textfield-label-spacing-inline-side-label:var(\n--spectrum-spacing-100\n);--spectrum-textfield-helptext-spacing-block:var(\n--spectrum-help-text-to-component\n);--spectrum-textfield-icon-spacing-inline-end-quiet-invalid:var(\n--spectrum-field-edge-to-alert-icon-quiet\n);--spectrum-textfield-icon-spacing-inline-end-quiet-valid:var(\n--spectrum-field-edge-to-validation-icon-quiet\n);--spectrum-textfield-font-family:var(--spectrum-sans-font-family-stack);--spectrum-textfield-font-weight:var(--spectrum-regular-font-weight);--spectrum-textfield-character-count-font-family:var(\n--spectrum-sans-font-family-stack\n);--spectrum-textfield-character-count-font-weight:var(\n--spectrum-regular-font-weight\n);--spectrum-textfield-character-count-spacing-inline:var(\n--spectrum-spacing-200\n);--spectrum-textfield-character-count-spacing-inline-side:var(\n--spectrum-side-label-character-count-to-field\n);--spectrum-textfield-focus-indicator-width:var(\n--spectrum-focus-indicator-thickness\n);--spectrum-textfield-focus-indicator-gap:var(\n--spectrum-focus-indicator-gap\n);--spectrum-textfield-background-color:var(--spectrum-gray-50);--spectrum-textfield-text-color-default:var(\n--spectrum-neutral-content-color-default\n);--spectrum-textfield-text-color-hover:var(\n--spectrum-neutral-content-color-hover\n);--spectrum-textfield-text-color-focus:var(\n--spectrum-neutral-content-color-focus\n);--spectrum-textfield-text-color-focus-hover:var(\n--spectrum-neutral-content-color-focus-hover\n);--spectrum-textfield-text-color-keyboard-focus:var(\n--spectrum-neutral-content-color-key-focus\n);--spectrum-textfield-text-color-readonly:var(\n--spectrum-neutral-content-color-default\n);--spectrum-textfield-background-color-disabled:var(\n--spectrum-disabled-background-color\n);--spectrum-textfield-border-color-disabled:var(\n--spectrum-disabled-border-color\n);--spectrum-textfield-text-color-disabled:var(\n--spectrum-disabled-content-color\n);--spectrum-textfield-border-color-invalid-default:var(\n--spectrum-negative-border-color-default\n);--spectrum-textfield-border-color-invalid-hover:var(\n--spectrum-negative-border-color-hover\n);--spectrum-textfield-border-color-invalid-focus:var(\n--spectrum-negative-border-color-focus\n);--spectrum-textfield-border-color-invalid-focus-hover:var(\n--spectrum-negative-border-color-focus-hover\n);--spectrum-textfield-border-color-invalid-keyboard-focus:var(\n--spectrum-negative-border-color-key-focus\n);--spectrum-textfield-icon-color-invalid:var(\n--spectrum-negative-visual-color\n);--spectrum-textfield-text-color-invalid:var(\n--spectrum-neutral-content-color-default\n);--spectrum-textfield-text-color-valid:var(\n--spectrum-neutral-content-color-default\n);--spectrum-textfield-icon-color-valid:var(\n--spectrum-positive-visual-color\n);--spectrum-textfield-focus-indicator-color:var(\n--spectrum-focus-indicator-color\n);--spectrum-text-area-min-inline-size:var(\n--spectrum-text-area-minimum-width\n);--spectrum-text-area-min-block-size:var(\n--spectrum-text-area-minimum-height\n)}:host([size=s]){--spectrum-textfield-height:var(--spectrum-component-height-75);--spectrum-textfield-label-spacing-block-quiet:var(\n--spectrum-field-label-to-component-quiet-small\n);--spectrum-textfield-label-spacing-inline-side-label:var(\n--spectrum-spacing-100\n);--spectrum-textfield-placeholder-font-size:var(--spectrum-font-size-75);--spectrum-textfield-spacing-inline:var(\n--spectrum-component-edge-to-text-75\n);--spectrum-textfield-icon-size-invalid:var(\n--spectrum-workflow-icon-size-75\n);--spectrum-textfield-icon-size-valid:var(\n--spectrum-checkmark-icon-size-75\n);--spectrum-textfield-icon-spacing-inline-end-invalid:var(\n--spectrum-field-edge-to-alert-icon-small\n);--spectrum-textfield-icon-spacing-inline-end-valid:var(\n--spectrum-field-edge-to-validation-icon-small\n);--spectrum-textfield-icon-spacing-block-invalid:var(\n--spectrum-field-top-to-alert-icon-small\n);--spectrum-textfield-icon-spacing-block-valid:var(\n--spectrum-field-top-to-validation-icon-small\n);--spectrum-textfield-icon-spacing-inline-start-invalid:var(\n--spectrum-field-text-to-alert-icon-small\n);--spectrum-textfield-icon-spacing-inline-start-valid:var(\n--spectrum-field-text-to-validation-icon-small\n);--spectrum-textfield-character-count-font-size:var(\n--spectrum-font-size-75\n);--spectrum-textfield-character-count-spacing-block:var(\n--spectrum-component-bottom-to-text-75\n);--spectrum-textfield-character-count-spacing-block-quiet:var(\n--spectrum-character-count-to-field-quiet-small\n);--spectrum-textfield-character-count-spacing-block-side:var(\n--spectrum-side-label-character-count-top-margin-small\n);--spectrum-text-area-min-block-size-quiet:var(\n--spectrum-component-height-75\n)}:host{--spectrum-textfield-height:var(--spectrum-component-height-100);--spectrum-textfield-label-spacing-block-quiet:var(\n--spectrum-field-label-to-component-quiet-medium\n);--spectrum-textfield-label-spacing-inline-side-label:var(\n--spectrum-spacing-200\n);--spectrum-textfield-placeholder-font-size:var(--spectrum-font-size-100);--spectrum-textfield-spacing-inline:var(\n--spectrum-component-edge-to-text-100\n);--spectrum-textfield-icon-size-invalid:var(\n--spectrum-workflow-icon-size-100\n);--spectrum-textfield-icon-size-valid:var(\n--spectrum-checkmark-icon-size-100\n);--spectrum-textfield-icon-spacing-inline-end-invalid:var(\n--spectrum-field-edge-to-alert-icon-medium\n);--spectrum-textfield-icon-spacing-inline-end-valid:var(\n--spectrum-field-edge-to-validation-icon-medium\n);--spectrum-textfield-icon-spacing-block-invalid:var(\n--spectrum-field-top-to-alert-icon-medium\n);--spectrum-textfield-icon-spacing-block-valid:var(\n--spectrum-field-top-to-validation-icon-medium\n);--spectrum-textfield-icon-spacing-inline-start-invalid:var(\n--spectrum-field-text-to-alert-icon-medium\n);--spectrum-textfield-icon-spacing-inline-start-valid:var(\n--spectrum-field-text-to-validation-icon-medium\n);--spectrum-textfield-character-count-font-size:var(\n--spectrum-font-size-75\n);--spectrum-textfield-character-count-spacing-block:var(\n--spectrum-component-bottom-to-text-75\n);--spectrum-textfield-character-count-spacing-block-quiet:var(\n--spectrum-character-count-to-field-quiet-medium\n);--spectrum-textfield-character-count-spacing-block-side:var(\n--spectrum-side-label-character-count-top-margin-medium\n);--spectrum-text-area-min-block-size-quiet:var(\n--spectrum-component-height-100\n)}:host([size=l]){--spectrum-textfield-height:var(--spectrum-component-height-200);--spectrum-textfield-label-spacing-block-quiet:var(\n--spectrum-field-label-to-component-quiet-large\n);--spectrum-textfield-label-spacing-inline-side-label:var(\n--spectrum-spacing-200\n);--spectrum-textfield-placeholder-font-size:var(--spectrum-font-size-200);--spectrum-textfield-spacing-inline:var(\n--spectrum-component-edge-to-text-200\n);--spectrum-textfield-icon-size-invalid:var(\n--spectrum-workflow-icon-size-200\n);--spectrum-textfield-icon-size-valid:var(\n--spectrum-checkmark-icon-size-200\n);--spectrum-textfield-icon-spacing-inline-end-invalid:var(\n--spectrum-field-edge-to-alert-icon-large\n);--spectrum-textfield-icon-spacing-inline-end-valid:var(\n--spectrum-field-edge-to-validation-icon-large\n);--spectrum-textfield-icon-spacing-block-invalid:var(\n--spectrum-field-top-to-alert-icon-large\n);--spectrum-textfield-icon-spacing-block-valid:var(\n--spectrum-field-top-to-validation-icon-large\n);--spectrum-textfield-icon-spacing-inline-start-invalid:var(\n--spectrum-field-text-to-alert-icon-large\n);--spectrum-textfield-icon-spacing-inline-start-valid:var(\n--spectrum-field-text-to-validation-icon-large\n);--spectrum-textfield-character-count-font-size:var(\n--spectrum-font-size-100\n);--spectrum-textfield-character-count-spacing-block:var(\n--spectrum-component-bottom-to-text-100\n);--spectrum-textfield-character-count-spacing-block-quiet:var(\n--spectrum-character-count-to-field-quiet-large\n);--spectrum-textfield-character-count-spacing-block-side:var(\n--spectrum-side-label-character-count-top-margin-large\n);--spectrum-text-area-min-block-size-quiet:var(\n--spectrum-component-height-200\n)}:host([size=xl]){--spectrum-textfield-height:var(--spectrum-component-height-300);--spectrum-textfield-label-spacing-block-quiet:var(\n--spectrum-field-label-to-component-quiet-extra-large\n);--spectrum-textfield-label-spacing-inline-side-label:var(\n--spectrum-spacing-200\n);--spectrum-textfield-placeholder-font-size:var(--spectrum-font-size-300);--spectrum-textfield-spacing-inline:var(\n--spectrum-component-edge-to-text-200\n);--spectrum-textfield-icon-size-invalid:var(\n--spectrum-workflow-icon-size-300\n);--spectrum-textfield-icon-size-valid:var(\n--spectrum-checkmark-icon-size-300\n);--spectrum-textfield-icon-spacing-inline-end-invalid:var(\n--spectrum-field-edge-to-alert-icon-extra-large\n);--spectrum-textfield-icon-spacing-inline-end-valid:var(\n--spectrum-field-edge-to-validation-icon-extra-large\n);--spectrum-textfield-icon-spacing-block-invalid:var(\n--spectrum-field-top-to-alert-icon-extra-large\n);--spectrum-textfield-icon-spacing-block-valid:var(\n--spectrum-field-top-to-validation-icon-extra-large\n);--spectrum-textfield-icon-spacing-inline-start-invalid:var(\n--spectrum-field-text-to-alert-icon-extra-large\n);--spectrum-textfield-icon-spacing-inline-start-valid:var(\n--spectrum-field-text-to-validation-icon-extra-large\n);--spectrum-textfield-character-count-font-size:var(\n--spectrum-font-size-200\n);--spectrum-textfield-character-count-spacing-block:var(\n--spectrum-component-bottom-to-text-200\n);--spectrum-textfield-character-count-spacing-block-quiet:var(\n--spectrum-character-count-to-field-quiet-extra-large\n);--spectrum-textfield-character-count-spacing-block-side:var(\n--spectrum-side-label-character-count-top-margin-extra-large\n);--spectrum-text-area-min-block-size-quiet:var(\n--spectrum-component-height-300\n)}#textfield{-moz-appearance:textfield;display:inline-grid;grid-template-columns:auto auto;grid-template-rows:auto auto auto;inline-size:var(--mod-textfield-width,var(--spectrum-textfield-width));margin:0;overflow:visible;position:relative;text-indent:0;text-overflow:ellipsis}:host([quiet]) #textfield:after{block-size:var(\n--mod-textfield-focus-indicator-width,var(--spectrum-textfield-focus-indicator-width)\n);content:\"\";inline-size:100%;inset-block-end:calc((var(\n--mod-textfield-focus-indicator-gap,\nvar(--spectrum-textfield-focus-indicator-gap)\n) + var(\n--mod-textfield-focus-indicator-width,\nvar(--spectrum-textfield-focus-indicator-width)\n))*-1);inset-inline-start:0;position:absolute}:host([quiet][focused]) #textfield:after{background-color:var(\n--highcontrast-textfield-focus-indicator-color,var(\n--mod-textfield-focus-indicator-color,var(--spectrum-textfield-focus-indicator-color)\n)\n)}:host([quiet][invalid]) #textfield .input{padding-inline-end:calc(var(\n--mod-textfield-icon-spacing-inline-start-invalid,\nvar(--spectrum-textfield-icon-spacing-inline-start-invalid)\n) + var(\n--mod-textfield-icon-size-invalid,\nvar(--spectrum-textfield-icon-size-invalid)\n))}:host([quiet][valid]) #textfield .input{padding-inline-end:calc(var(\n--mod-textfield-icon-spacing-inline-start-valid,\nvar(--spectrum-textfield-icon-spacing-inline-start-valid)\n) + var(\n--mod-textfield-icon-size-valid,\nvar(--spectrum-textfield-icon-size-valid)\n))}:host([invalid]) #textfield .icon,:host([valid]) #textfield .icon{grid-area:2/2;inset-block-start:0;margin-inline-start:auto;pointer-events:all;position:absolute}:host([valid]) #textfield .icon{color:var(\n--highcontrast-textfield-icon-color-valid,var(\n--mod-textfield-icon-color-valid,var(--spectrum-textfield-icon-color-valid)\n)\n);inset-block-end:var(\n--mod-textfield-icon-spacing-block-valid,var(--spectrum-textfield-icon-spacing-block-valid)\n);inset-block-start:var(\n--mod-textfield-icon-spacing-block-valid,var(--spectrum-textfield-icon-spacing-block-valid)\n);inset-inline-end:var(\n--mod-textfield-icon-spacing-inline-end-valid,var(--spectrum-textfield-icon-spacing-inline-end-valid)\n);inset-inline-start:var(\n--mod-textfield-icon-spacing-inline-start-valid,var(--spectrum-textfield-icon-spacing-inline-start-valid)\n)}:host([invalid]) #textfield .icon{block-size:var(\n--mod-textfield-icon-size-invalid,var(--spectrum-textfield-icon-size-invalid)\n);color:var(\n--highcontrast-textfield-icon-color-invalid,var(\n--mod-textfield-icon-color-invalid,var(--spectrum-textfield-icon-color-invalid)\n)\n);inline-size:var(\n--mod-textfield-icon-size-invalid,var(--spectrum-textfield-icon-size-invalid)\n);inset-block-end:var(\n--mod-textfield-icon-spacing-block-invalid,var(--spectrum-textfield-icon-spacing-block-invalid)\n);inset-block-start:var(\n--mod-textfield-icon-spacing-block-invalid,var(--spectrum-textfield-icon-spacing-block-invalid)\n);inset-inline-end:var(\n--mod-textfield-icon-spacing-inline-end-invalid,var(--spectrum-textfield-icon-spacing-inline-end-invalid)\n);inset-inline-start:var(\n--mod-textfield-icon-spacing-inline-start-invalid,var(--spectrum-textfield-icon-spacing-inline-start-invalid)\n)}:host([disabled]) #textfield .icon,:host([readonly]) #textfield .icon{color:#0000}:host([quiet]) .icon{padding-inline-end:0}:host([quiet][valid]) .icon{inset-inline-end:var(\n--mod-textfield-icon-spacing-inline-end-quiet-valid,var(--spectrum-textfield-icon-spacing-inline-end-quiet-valid)\n)}:host([quiet][invalid]) .icon{inset-inline-end:var(\n--mod-textfield-icon-spacing-inline-end-quiet-invalid,var(--spectrum-textfield-icon-spacing-inline-end-quiet-invalid)\n)}#textfield .spectrum-FieldLabel{grid-area:1/1/auto/span 1;margin-block-end:var(\n--mod-textfield-label-spacing-block,var(--spectrum-textfield-label-spacing-block)\n);padding-inline-start:calc(var(\n--mod-textfield-corner-radius,\nvar(--spectrum-textfield-corner-radius)\n)/2)}:host([quiet]) .spectrum-FieldLabel{margin-block-end:var(\n--mod-textfield-label-spacing-block-quiet,var(--spectrum-textfield-label-spacing-block-quiet)\n)}:host([disabled]) .spectrum-FieldLabel{color:var(--spectrum-textfield-text-color-disabled)}#textfield .spectrum-HelpText{grid-area:3/1/auto/span 2;margin-block-start:var(\n--mod-textfield-helptext-spacing-block,var(--spectrum-textfield-helptext-spacing-block)\n);padding-inline-start:calc(var(\n--mod-textfield-corner-radius,\nvar(--spectrum-textfield-corner-radius)\n)/2)}.spectrum-Textfield-characterCount{align-items:flex-end;display:inline-flex;font-family:var(\n--mod-textfield-character-count-font-family,var(--spectrum-textfield-character-count-font-family)\n);font-size:var(\n--mod-textfield-character-count-font-size,var(--spectrum-textfield-character-count-font-size)\n);font-weight:var(\n--mod-textfield-character-count-font-weight,var(--spectrum-textfield-character-count-font-weight)\n);grid-area:1/2/auto/span 1;inline-size:auto;justify-content:flex-end;margin-block-end:var(\n--mod-textfield-character-count-spacing-block,var(--spectrum-textfield-character-count-spacing-block)\n);margin-inline-end:0;margin-inline-start:var(\n--mod-textfield-character-count-spacing-inline,var(--spectrum-textfield-character-count-spacing-inline)\n);padding-inline-end:calc(var(\n--mod-textfield-corner-radius,\nvar(--spectrum-textfield-corner-radius)\n)/2)}:host([quiet]) .spectrum-Textfield-characterCount{margin-block-end:var(\n--mod-textfield-character-count-spacing-block-quiet,var(--spectrum-textfield-character-count-spacing-block-quiet)\n)}.input{-webkit-appearance:none;-moz-appearance:textfield;background-color:var(\n--mod-textfield-background-color,var(--spectrum-textfield-background-color)\n);block-size:var(--mod-textfield-height,var(--spectrum-textfield-height));border:var(\n--mod-textfield-border-width,var(--spectrum-textfield-border-width)\n) solid var(\n--highcontrast-textfield-border-color,var(\n--mod-textfield-border-color,var(--spectrum-textfield-border-color)\n)\n);border-radius:var(\n--mod-textfield-corner-radius,var(--spectrum-textfield-corner-radius)\n);box-sizing:border-box;color:var(\n--highcontrast-textfield-text-color-default,var(\n--mod-textfield-text-color-default,var(--spectrum-textfield-text-color-default)\n)\n);font-family:var(\n--mod-textfield-font-family,var(--spectrum-textfield-font-family)\n);font-size:var(\n--mod-textfield-placeholder-font-size,var(--spectrum-textfield-placeholder-font-size)\n);font-weight:var(\n--mod-textfield-font-weight,var(--spectrum-textfield-font-weight)\n);grid-area:2/1/auto/span 2;inline-size:100%;line-height:var(--spectrum-textfield-input-line-height);margin:0;min-inline-size:var(\n--mod-textfield-min-width,var(--spectrum-textfield-min-width)\n);outline:none;overflow:visible;padding-block-end:calc(var(\n--mod-textfield-spacing-block-end,\nvar(--spectrum-textfield-spacing-block-end)\n) - var(\n--mod-textfield-border-width,\nvar(--spectrum-textfield-border-width)\n));padding-block-start:calc(var(\n--mod-textfield-spacing-block-start,\nvar(--spectrum-textfield-spacing-block-start)\n) - var(\n--mod-textfield-border-width,\nvar(--spectrum-textfield-border-width)\n));padding-inline:calc(var(\n--mod-textfield-spacing-inline,\nvar(--spectrum-textfield-spacing-inline)\n) - var(\n--mod-textfield-border-width,\nvar(--spectrum-textfield-border-width)\n));text-indent:0;text-overflow:ellipsis;transition:border-color var(\n--mod-texfield-animation-duration,var(--spectrum-texfield-animation-duration)\n) ease-in-out;vertical-align:top}.input::-ms-clear{block-size:0;inline-size:0}.input::-webkit-inner-spin-button,.input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input:-moz-ui-invalid{box-shadow:none}.input::placeholder{color:var(\n--highcontrast-textfield-text-color-default,var(\n--mod-textfield-text-color-default,var(--spectrum-textfield-text-color-default)\n)\n);font-family:var(\n--mod-textfield-font-family,var(--spectrum-textfield-font-family)\n);font-size:var(\n--mod-textfield-placeholder-font-size,var(--spectrum-textfield-placeholder-font-size)\n);font-weight:var(\n--mod-textfield-font-weight,var(--spectrum-textfield-font-weight)\n);opacity:1;transition:color var(\n--mod-texfield-animation-duration,var(--spectrum-texfield-animation-duration)\n) ease-in-out}.input:lang(ja)::placeholder,.input:lang(ko)::placeholder,.input:lang(zh)::placeholder{font-style:normal}.input:lang(ja)::-moz-placeholder,.input:lang(ko)::-moz-placeholder,.input:lang(zh)::-moz-placeholder{font-style:normal}.input:focus,:host([focused]) .input{border-color:var(\n--highcontrast-textfield-border-color-focus,var(\n--mod-textfield-border-color-focus,var(--spectrum-textfield-border-color-focus)\n)\n);color:var(\n--highcontrast-textfield-text-color-focus,var(\n--mod-textfield-text-color-focus,var(--spectrum-textfield-text-color-focus)\n)\n)}.input:focus::placeholder,:host([focused]) .input::placeholder{color:var(\n--highcontrast-textfield-text-color-focus,var(\n--mod-textfield-text-color-focus,var(--spectrum-textfield-text-color-focus)\n)\n)}:host([focused]) .input{border-color:var(\n--highcontrast-textfield-border-color-keyboard-focus,var(\n--mod-textfield-border-color-keyboard-focus,var(--spectrum-textfield-border-color-keyboard-focus)\n)\n);color:var(\n--highcontrast-textfield-text-color-keyboard-focus,var(\n--mod-textfield-text-color-keyboard-focus,var(--spectrum-textfield-text-color-keyboard-focus)\n)\n)}:host([focused]) .input::placeholder{color:var(\n--highcontrast-textfield-text-color-keyboard-focus,var(\n--mod-textfield-text-color-keyboard-focus,var(--spectrum-textfield-text-color-keyboard-focus)\n)\n)}:host([focused]) .input{outline:var(\n--mod-textfield-focus-indicator-width,var(--spectrum-textfield-focus-indicator-width)\n) solid;outline-color:var(\n--highcontrast-textfield-focus-indicator-color,var(\n--mod-textfield-focus-indicator-color,var(--spectrum-textfield-focus-indicator-color)\n)\n);outline-offset:var(\n--mod-textfield-focus-indicator-gap,var(--spectrum-textfield-focus-indicator-gap)\n)}:host([valid]) .input{color:var(\n--highcontrast-textfield-text-color-valid,var(\n--mod-textfield-text-color-valid,var(--spectrum-textfield-text-color-valid)\n)\n);padding-inline-end:calc(var(\n--mod-textfield-icon-spacing-inline-start-valid,\nvar(--spectrum-textfield-icon-spacing-inline-start-valid)\n) + var(\n--mod-textfield-icon-size-valid,\nvar(--spectrum-textfield-icon-size-valid)\n) + var(\n--mod-textfield-icon-spacing-inline-end-valid,\nvar(--spectrum-textfield-icon-spacing-inline-end-valid)\n) - var(\n--mod-textfield-border-width,\nvar(--spectrum-textfield-border-width)\n))}:host([invalid]) .input{border-color:var(\n--highcontrast-textfield-border-color-invalid-default,var(\n--mod-textfield-border-color-invalid-default,var(--spectrum-textfield-border-color-invalid-default)\n)\n);color:var(\n--highcontrast-textfield-text-color-invalid,var(\n--mod-textfield-text-color-invalid,var(--spectrum-textfield-text-color-invalid)\n)\n);padding-inline-end:calc(var(\n--mod-textfield-icon-spacing-inline-start-invalid,\nvar(--spectrum-textfield-icon-spacing-inline-start-invalid)\n) + var(\n--mod-textfield-icon-size-invalid,\nvar(--spectrum-textfield-icon-size-invalid)\n) + var(\n--mod-textfield-icon-spacing-inline-end-invalid,\nvar(--spectrum-textfield-icon-spacing-inline-end-invalid)\n) - var(\n--mod-textfield-border-width,\nvar(--spectrum-textfield-border-width)\n))}:host([invalid]) .input:focus,:host([invalid]:focus) .input,:host([invalid][focused]) .input{border-color:var(\n--highcontrast-textfield-border-color-invalid-focus,var(\n--mod-textfield-border-color-invalid-focus,var(--spectrum-textfield-border-color-invalid-focus)\n)\n)}:host([invalid]) .input.focus-visible,:host([invalid][focused]) .input{border-color:var(\n--highcontrast-textfield-border-color-invalid-keyboard-focus,var(\n--mod-textfield-border-color-invalid-keyboard-focus,var(--spectrum-textfield-border-color-invalid-keyboard-focus)\n)\n)}:host([invalid]) .input:focus-visible,:host([invalid][focused]) .input{border-color:var(\n--highcontrast-textfield-border-color-invalid-keyboard-focus,var(\n--mod-textfield-border-color-invalid-keyboard-focus,var(--spectrum-textfield-border-color-invalid-keyboard-focus)\n)\n)}.input:disabled,:host([disabled]) #textfield .input{background-color:var(\n--mod-textfield-background-color-disabled,var(--spectrum-textfield-background-color-disabled)\n);color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n);-webkit-text-fill-color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n);border-color:#0000;opacity:1;resize:none}.input:disabled::placeholder,:host([disabled]) #textfield .input::placeholder{color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n)}:host([quiet]) .input{background-color:#0000;border-block-start-width:0;border-inline-width:0;border-radius:0;margin-block-end:var(\n--mod-textfield-spacing-block-quiet,var(--spectrum-textfield-spacing-block-quiet)\n);outline:none;overflow-y:hidden;padding-block-start:var(\n--mod-textfield-spacing-block-start,var(--spectrum-textfield-spacing-block-start)\n);padding-inline:var(\n--mod-textfield-spacing-inline-quiet,var(--spectrum-textfield-spacing-inline-quiet)\n);resize:none}.input:disabled,:host([quiet][disabled]) .input{background-color:#0000;border-color:var(\n--mod-textfield-border-color-disabled,var(--spectrum-textfield-border-color-disabled)\n);color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n)}.input:disabled::placeholder,:host([quiet][disabled]) .input::placeholder{color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n)}.input:read-only,:host([readonly]) #textfield .input{background-color:#0000;border-color:#0000;color:var(\n--highcontrast-textfield-text-color-readonly,var(\n--mod-textfield-text-color-readonly,var(--spectrum-textfield-text-color-readonly)\n)\n);outline:none}.input:read-only::placeholder,:host([readonly]) #textfield .input::placeholder{background-color:#0000;color:var(\n--highcontrast-textfield-text-color-readonly,var(\n--mod-textfield-text-color-readonly,var(--spectrum-textfield-text-color-readonly)\n)\n)}@media (hover:hover){#textfield:hover .input::placeholder,.input:hover::placeholder{color:var(\n--highcontrast-textfield-text-color-hover,var(\n--mod-textfield-text-color-hover,var(--spectrum-textfield-text-color-hover)\n)\n)}.input:focus:hover,:host([focused]) .input:hover{border-color:var(\n--highcontrast-textfield-border-color-focus-hover,var(\n--mod-textfield-border-color-focus-hover,var(--spectrum-textfield-border-color-focus-hover)\n)\n);color:var(\n--highcontrast-textfield-text-color-focus-hover,var(\n--mod-textfield-text-color-focus-hover,var(--spectrum-textfield-text-color-focus-hover)\n)\n)}.input:focus:hover::placeholder,:host([focused]) .input:hover::placeholder{color:var(\n--highcontrast-textfield-text-color-focus-hover,var(\n--mod-textfield-text-color-focus-hover,var(--spectrum-textfield-text-color-focus-hover)\n)\n)}:host([invalid]) .input:focus:hover,:host([invalid]:focus) .input:hover,:host([invalid][focused]) .input:hover{border-color:var(\n--highcontrast-textfield-border-color-invalid-focus-hover,var(\n--mod-textfield-border-color-invalid-focus-hover,var(--spectrum-textfield-border-color-invalid-focus-hover)\n)\n)}:host([disabled]) #textfield:hover .input::placeholder{color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n)}:host([quiet][disabled]:hover) .input::placeholder{color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n)}#textfield:hover .input,.input:hover{border-color:var(\n--highcontrast-textfield-border-color-hover,var(\n--mod-textfield-border-color-hover,var(--spectrum-textfield-border-color-hover)\n)\n);color:var(\n--highcontrast-textfield-text-color-hover,var(\n--mod-textfield-text-color-hover,var(--spectrum-textfield-text-color-hover)\n)\n)}:host([invalid]) .input:hover,:host([invalid]:hover) .input{border-color:var(\n--highcontrast-textfield-border-color-invalid-hover,var(\n--mod-textfield-border-color-invalid-hover,var(--spectrum-textfield-border-color-invalid-hover)\n)\n)}:host([disabled]) #textfield:hover .input{background-color:var(\n--mod-textfield-background-color-disabled,var(--spectrum-textfield-background-color-disabled)\n);color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n);-webkit-text-fill-color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n);border-color:#0000;opacity:1;resize:none}:host([quiet][disabled]:hover) .input{background-color:#0000;border-color:var(\n--mod-textfield-border-color-disabled,var(--spectrum-textfield-border-color-disabled)\n);color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n)}:host([readonly]) #textfield:hover .input{background-color:#0000;border-color:#0000;color:var(\n--highcontrast-textfield-text-color-readonly,var(\n--mod-textfield-text-color-readonly,var(--spectrum-textfield-text-color-readonly)\n)\n);outline:none}:host([readonly]) #textfield:hover .input::placeholder{background-color:#0000;color:var(\n--highcontrast-textfield-text-color-readonly,var(\n--mod-textfield-text-color-readonly,var(--spectrum-textfield-text-color-readonly)\n)\n)}}.spectrum-Textfield--sideLabel{grid-template-columns:auto auto auto;grid-template-rows:auto auto}.spectrum-Textfield--sideLabel:after{grid-area:1/2/span 1/span 1}.spectrum-Textfield--sideLabel .spectrum-FieldLabel{grid-area:1/1/span 2/span 1;margin-inline-end:var(\n--mod-textfield-label-spacing-inline-side-label,var(--spectrum-textfield-label-spacing-inline-side-label)\n)}.spectrum-Textfield--sideLabel .spectrum-Textfield-characterCount{align-items:flex-start;grid-area:1/3/auto/span 1;margin-block-start:var(\n--mod-textfield-character-count-spacing-block-side,var(--spectrum-textfield-character-count-spacing-block-side)\n);margin-inline-start:var(\n--mod-textfield-character-count-spacing-inline-side,var(--spectrum-textfield-character-count-spacing-inline-side)\n)}.spectrum-Textfield--sideLabel .spectrum-HelpText{grid-area:2/2/auto/span 1}.spectrum-Textfield--sideLabel .icon,.spectrum-Textfield--sideLabel .input{grid-area:1/2/span 1/span 1}:host([multiline]){--spectrum-textfield-input-line-height:normal}:host([multiline]) .input{min-block-size:var(\n--mod-text-area-min-block-size,var(--spectrum-text-area-min-block-size)\n);min-inline-size:var(\n--mod-text-area-min-inline-size,var(--spectrum-text-area-min-inline-size)\n);resize:inherit}:host([multiline][grows]) .input{grid-row:1}:host([multiline][quiet]) .input{min-block-size:var(\n--mod-text-area-min-block-size-quiet,var(--spectrum-text-area-min-block-size-quiet)\n);overflow-y:hidden;resize:none}@media (forced-colors:active){:host{--highcontrast-textfield-border-color-hover:Highlight;--highcontrast-textfield-border-color-focus:Highlight;--highcontrast-textfield-border-color-keyboard-focus:CanvasText;--highcontrast-textfield-focus-indicator-color:Highlight;--highcontrast-textfield-border-color-invalid-default:Highlight;--highcontrast-textfield-border-color-invalid-hover:Highlight;--highcontrast-textfield-border-color-invalid-focus:Highlight;--highcontrast-textfield-border-color-invalid-keyboard-focus:Highlight;--highcontrast-textfield-text-color-valid:CanvasText;--highcontrast-textfield-text-color-invalid:CanvasText}#textfield .input{--highcontrast-textfield-text-color-default:CanvasText;--highcontrast-textfield-text-color-hover:CanvasText;--highcontrast-textfield-text-color-keyboard-focus:CanvasText;--highcontrast-textfield-text-color-disabled:GrayText;--highcontrast-textfield-text-color-readonly:CanvasText}#textfield .input::placeholder{--highcontrast-textfield-text-color-default:GrayText;--highcontrast-textfield-text-color-hover:GrayText;--highcontrast-textfield-text-color-keyboard-focus:GrayText;--highcontrast-textfield-text-color-disabled:GrayText;--highcontrast-textfield-text-color-readonly:CanvasText}}:host{--spectrum-textfield-border-color:var(\n--system-spectrum-textfield-border-color\n);--spectrum-textfield-border-color-hover:var(\n--system-spectrum-textfield-border-color-hover\n);--spectrum-textfield-border-color-focus:var(\n--system-spectrum-textfield-border-color-focus\n);--spectrum-textfield-border-color-focus-hover:var(\n--system-spectrum-textfield-border-color-focus-hover\n);--spectrum-textfield-border-color-keyboard-focus:var(\n--system-spectrum-textfield-border-color-keyboard-focus\n);--spectrum-textfield-border-width:var(\n--system-spectrum-textfield-border-width\n)}\n`;\nexport default styles;"],
5
- "mappings": ";AAWA,SAAS,WAAW;AACpB,MAAM,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAsiBf,eAAe;",
4
+ "sourcesContent": ["/*\nCopyright 2024 Adobe. All rights reserved.\nThis file is licensed to you under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License. You may obtain a copy\nof the License at http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under\nthe License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\nOF ANY KIND, either express or implied. See the License for the specific language\ngoverning permissions and limitations under the License.\n*/\nimport { css } from '@spectrum-web-components/base';\nconst styles = css`\n:host{--spectrum-textfield-input-line-height:var(--spectrum-textfield-height);--spectrum-texfield-animation-duration:var(\n--spectrum-animation-duration-100\n);--spectrum-textfield-width:240px;--spectrum-textfield-min-width:var(\n--spectrum-text-field-minimum-width-multiplier\n);--spectrum-textfield-corner-radius:var(--spectrum-corner-radius-100);--spectrum-textfield-spacing-inline-quiet:var(\n--spectrum-field-edge-to-text-quiet\n);--spectrum-textfield-spacing-block-start:var(\n--spectrum-component-top-to-text-100\n);--spectrum-textfield-spacing-block-end:var(\n--spectrum-component-bottom-to-text-100\n);--spectrum-textfield-spacing-block-quiet:var(\n--spectrum-field-edge-to-border-quiet\n);--spectrum-textfield-label-spacing-block:var(\n--spectrum-field-label-to-component\n);--spectrum-textfield-label-spacing-inline-side-label:var(\n--spectrum-spacing-100\n);--spectrum-textfield-helptext-spacing-block:var(\n--spectrum-help-text-to-component\n);--spectrum-textfield-icon-spacing-inline-end-quiet-invalid:var(\n--spectrum-field-edge-to-alert-icon-quiet\n);--spectrum-textfield-icon-spacing-inline-end-quiet-valid:var(\n--spectrum-field-edge-to-validation-icon-quiet\n);--spectrum-textfield-font-family:var(--spectrum-sans-font-family-stack);--spectrum-textfield-font-weight:var(--spectrum-regular-font-weight);--spectrum-textfield-character-count-font-family:var(\n--spectrum-sans-font-family-stack\n);--spectrum-textfield-character-count-font-weight:var(\n--spectrum-regular-font-weight\n);--spectrum-textfield-character-count-spacing-inline:var(\n--spectrum-spacing-200\n);--spectrum-textfield-character-count-spacing-inline-side:var(\n--spectrum-side-label-character-count-to-field\n);--spectrum-textfield-focus-indicator-width:var(\n--spectrum-focus-indicator-thickness\n);--spectrum-textfield-focus-indicator-gap:var(\n--spectrum-focus-indicator-gap\n);--spectrum-textfield-background-color:var(--spectrum-gray-50);--spectrum-textfield-text-color-default:var(\n--spectrum-neutral-content-color-default\n);--spectrum-textfield-text-color-hover:var(\n--spectrum-neutral-content-color-hover\n);--spectrum-textfield-text-color-focus:var(\n--spectrum-neutral-content-color-focus\n);--spectrum-textfield-text-color-focus-hover:var(\n--spectrum-neutral-content-color-focus-hover\n);--spectrum-textfield-text-color-keyboard-focus:var(\n--spectrum-neutral-content-color-key-focus\n);--spectrum-textfield-text-color-readonly:var(\n--spectrum-neutral-content-color-default\n);--spectrum-textfield-background-color-disabled:var(\n--spectrum-disabled-background-color\n);--spectrum-textfield-border-color-disabled:var(\n--spectrum-disabled-border-color\n);--spectrum-textfield-text-color-disabled:var(\n--spectrum-disabled-content-color\n);--spectrum-textfield-border-color-invalid-default:var(\n--spectrum-negative-border-color-default\n);--spectrum-textfield-border-color-invalid-hover:var(\n--spectrum-negative-border-color-hover\n);--spectrum-textfield-border-color-invalid-focus:var(\n--spectrum-negative-border-color-focus\n);--spectrum-textfield-border-color-invalid-focus-hover:var(\n--spectrum-negative-border-color-focus-hover\n);--spectrum-textfield-border-color-invalid-keyboard-focus:var(\n--spectrum-negative-border-color-key-focus\n);--spectrum-textfield-icon-color-invalid:var(\n--spectrum-negative-visual-color\n);--spectrum-textfield-text-color-invalid:var(\n--spectrum-neutral-content-color-default\n);--spectrum-textfield-text-color-valid:var(\n--spectrum-neutral-content-color-default\n);--spectrum-textfield-icon-color-valid:var(\n--spectrum-positive-visual-color\n);--spectrum-textfield-focus-indicator-color:var(\n--spectrum-focus-indicator-color\n);--spectrum-text-area-min-inline-size:var(\n--spectrum-text-area-minimum-width\n);--spectrum-text-area-min-block-size:var(\n--spectrum-text-area-minimum-height\n)}:host([size=s]){--spectrum-textfield-height:var(--spectrum-component-height-75);--spectrum-textfield-label-spacing-block-quiet:var(\n--spectrum-field-label-to-component-quiet-small\n);--spectrum-textfield-label-spacing-inline-side-label:var(\n--spectrum-spacing-100\n);--spectrum-textfield-placeholder-font-size:var(--spectrum-font-size-75);--spectrum-textfield-spacing-inline:var(\n--spectrum-component-edge-to-text-75\n);--spectrum-textfield-icon-size-invalid:var(\n--spectrum-workflow-icon-size-75\n);--spectrum-textfield-icon-size-valid:var(\n--spectrum-checkmark-icon-size-75\n);--spectrum-textfield-icon-spacing-inline-end-invalid:var(\n--spectrum-field-edge-to-alert-icon-small\n);--spectrum-textfield-icon-spacing-inline-end-valid:var(\n--spectrum-field-edge-to-validation-icon-small\n);--spectrum-textfield-icon-spacing-block-invalid:var(\n--spectrum-field-top-to-alert-icon-small\n);--spectrum-textfield-icon-spacing-block-valid:var(\n--spectrum-field-top-to-validation-icon-small\n);--spectrum-textfield-icon-spacing-inline-start-invalid:var(\n--spectrum-field-text-to-alert-icon-small\n);--spectrum-textfield-icon-spacing-inline-start-valid:var(\n--spectrum-field-text-to-validation-icon-small\n);--spectrum-textfield-character-count-font-size:var(\n--spectrum-font-size-75\n);--spectrum-textfield-character-count-spacing-block:var(\n--spectrum-component-bottom-to-text-75\n);--spectrum-textfield-character-count-spacing-block-quiet:var(\n--spectrum-character-count-to-field-quiet-small\n);--spectrum-textfield-character-count-spacing-block-side:var(\n--spectrum-side-label-character-count-top-margin-small\n);--spectrum-text-area-min-block-size-quiet:var(\n--spectrum-component-height-75\n)}:host{--spectrum-textfield-height:var(--spectrum-component-height-100);--spectrum-textfield-label-spacing-block-quiet:var(\n--spectrum-field-label-to-component-quiet-medium\n);--spectrum-textfield-label-spacing-inline-side-label:var(\n--spectrum-spacing-200\n);--spectrum-textfield-placeholder-font-size:var(--spectrum-font-size-100);--spectrum-textfield-spacing-inline:var(\n--spectrum-component-edge-to-text-100\n);--spectrum-textfield-icon-size-invalid:var(\n--spectrum-workflow-icon-size-100\n);--spectrum-textfield-icon-size-valid:var(\n--spectrum-checkmark-icon-size-100\n);--spectrum-textfield-icon-spacing-inline-end-invalid:var(\n--spectrum-field-edge-to-alert-icon-medium\n);--spectrum-textfield-icon-spacing-inline-end-valid:var(\n--spectrum-field-edge-to-validation-icon-medium\n);--spectrum-textfield-icon-spacing-block-invalid:var(\n--spectrum-field-top-to-alert-icon-medium\n);--spectrum-textfield-icon-spacing-block-valid:var(\n--spectrum-field-top-to-validation-icon-medium\n);--spectrum-textfield-icon-spacing-inline-start-invalid:var(\n--spectrum-field-text-to-alert-icon-medium\n);--spectrum-textfield-icon-spacing-inline-start-valid:var(\n--spectrum-field-text-to-validation-icon-medium\n);--spectrum-textfield-character-count-font-size:var(\n--spectrum-font-size-75\n);--spectrum-textfield-character-count-spacing-block:var(\n--spectrum-component-bottom-to-text-75\n);--spectrum-textfield-character-count-spacing-block-quiet:var(\n--spectrum-character-count-to-field-quiet-medium\n);--spectrum-textfield-character-count-spacing-block-side:var(\n--spectrum-side-label-character-count-top-margin-medium\n);--spectrum-text-area-min-block-size-quiet:var(\n--spectrum-component-height-100\n)}:host([size=l]){--spectrum-textfield-height:var(--spectrum-component-height-200);--spectrum-textfield-label-spacing-block-quiet:var(\n--spectrum-field-label-to-component-quiet-large\n);--spectrum-textfield-label-spacing-inline-side-label:var(\n--spectrum-spacing-200\n);--spectrum-textfield-placeholder-font-size:var(--spectrum-font-size-200);--spectrum-textfield-spacing-inline:var(\n--spectrum-component-edge-to-text-200\n);--spectrum-textfield-icon-size-invalid:var(\n--spectrum-workflow-icon-size-200\n);--spectrum-textfield-icon-size-valid:var(\n--spectrum-checkmark-icon-size-200\n);--spectrum-textfield-icon-spacing-inline-end-invalid:var(\n--spectrum-field-edge-to-alert-icon-large\n);--spectrum-textfield-icon-spacing-inline-end-valid:var(\n--spectrum-field-edge-to-validation-icon-large\n);--spectrum-textfield-icon-spacing-block-invalid:var(\n--spectrum-field-top-to-alert-icon-large\n);--spectrum-textfield-icon-spacing-block-valid:var(\n--spectrum-field-top-to-validation-icon-large\n);--spectrum-textfield-icon-spacing-inline-start-invalid:var(\n--spectrum-field-text-to-alert-icon-large\n);--spectrum-textfield-icon-spacing-inline-start-valid:var(\n--spectrum-field-text-to-validation-icon-large\n);--spectrum-textfield-character-count-font-size:var(\n--spectrum-font-size-100\n);--spectrum-textfield-character-count-spacing-block:var(\n--spectrum-component-bottom-to-text-100\n);--spectrum-textfield-character-count-spacing-block-quiet:var(\n--spectrum-character-count-to-field-quiet-large\n);--spectrum-textfield-character-count-spacing-block-side:var(\n--spectrum-side-label-character-count-top-margin-large\n);--spectrum-text-area-min-block-size-quiet:var(\n--spectrum-component-height-200\n)}:host([size=xl]){--spectrum-textfield-height:var(--spectrum-component-height-300);--spectrum-textfield-label-spacing-block-quiet:var(\n--spectrum-field-label-to-component-quiet-extra-large\n);--spectrum-textfield-label-spacing-inline-side-label:var(\n--spectrum-spacing-200\n);--spectrum-textfield-placeholder-font-size:var(--spectrum-font-size-300);--spectrum-textfield-spacing-inline:var(\n--spectrum-component-edge-to-text-200\n);--spectrum-textfield-icon-size-invalid:var(\n--spectrum-workflow-icon-size-300\n);--spectrum-textfield-icon-size-valid:var(\n--spectrum-checkmark-icon-size-300\n);--spectrum-textfield-icon-spacing-inline-end-invalid:var(\n--spectrum-field-edge-to-alert-icon-extra-large\n);--spectrum-textfield-icon-spacing-inline-end-valid:var(\n--spectrum-field-edge-to-validation-icon-extra-large\n);--spectrum-textfield-icon-spacing-block-invalid:var(\n--spectrum-field-top-to-alert-icon-extra-large\n);--spectrum-textfield-icon-spacing-block-valid:var(\n--spectrum-field-top-to-validation-icon-extra-large\n);--spectrum-textfield-icon-spacing-inline-start-invalid:var(\n--spectrum-field-text-to-alert-icon-extra-large\n);--spectrum-textfield-icon-spacing-inline-start-valid:var(\n--spectrum-field-text-to-validation-icon-extra-large\n);--spectrum-textfield-character-count-font-size:var(\n--spectrum-font-size-200\n);--spectrum-textfield-character-count-spacing-block:var(\n--spectrum-component-bottom-to-text-200\n);--spectrum-textfield-character-count-spacing-block-quiet:var(\n--spectrum-character-count-to-field-quiet-extra-large\n);--spectrum-textfield-character-count-spacing-block-side:var(\n--spectrum-side-label-character-count-top-margin-extra-large\n);--spectrum-text-area-min-block-size-quiet:var(\n--spectrum-component-height-300\n)}#textfield{-moz-appearance:textfield;display:inline-grid;grid-template-columns:auto auto;grid-template-rows:auto auto auto;inline-size:var(--mod-textfield-width,var(--spectrum-textfield-width));margin:0;overflow:visible;position:relative;text-indent:0;text-overflow:ellipsis}:host([quiet]) #textfield:after{block-size:var(\n--mod-textfield-focus-indicator-width,var(--spectrum-textfield-focus-indicator-width)\n);content:\"\";inline-size:100%;inset-block-end:calc((var(\n--mod-textfield-focus-indicator-gap,\nvar(--spectrum-textfield-focus-indicator-gap)\n) + var(\n--mod-textfield-focus-indicator-width,\nvar(--spectrum-textfield-focus-indicator-width)\n))*-1);inset-inline-start:0;position:absolute}:host([quiet][focused]) #textfield:after{background-color:var(\n--highcontrast-textfield-focus-indicator-color,var(\n--mod-textfield-focus-indicator-color,var(--spectrum-textfield-focus-indicator-color)\n)\n)}:host([quiet][invalid]) #textfield .input{padding-inline-end:calc(var(\n--mod-textfield-icon-spacing-inline-start-invalid,\nvar(--spectrum-textfield-icon-spacing-inline-start-invalid)\n) + var(\n--mod-textfield-icon-size-invalid,\nvar(--spectrum-textfield-icon-size-invalid)\n))}:host([quiet][valid]) #textfield .input{padding-inline-end:calc(var(\n--mod-textfield-icon-spacing-inline-start-valid,\nvar(--spectrum-textfield-icon-spacing-inline-start-valid)\n) + var(\n--mod-textfield-icon-size-valid,\nvar(--spectrum-textfield-icon-size-valid)\n))}:host([invalid]) #textfield .icon,:host([valid]) #textfield .icon{grid-area:2/2;inset-block-start:0;margin-inline-start:auto;pointer-events:all;position:absolute}:host([valid]) #textfield .icon{color:var(\n--highcontrast-textfield-icon-color-valid,var(\n--mod-textfield-icon-color-valid,var(--spectrum-textfield-icon-color-valid)\n)\n);inset-block-end:var(\n--mod-textfield-icon-spacing-block-valid,var(--spectrum-textfield-icon-spacing-block-valid)\n);inset-block-start:var(\n--mod-textfield-icon-spacing-block-valid,var(--spectrum-textfield-icon-spacing-block-valid)\n);inset-inline-end:var(\n--mod-textfield-icon-spacing-inline-end-valid,var(--spectrum-textfield-icon-spacing-inline-end-valid)\n);inset-inline-start:var(\n--mod-textfield-icon-spacing-inline-start-valid,var(--spectrum-textfield-icon-spacing-inline-start-valid)\n)}:host([invalid]) #textfield .icon{block-size:var(\n--mod-textfield-icon-size-invalid,var(--spectrum-textfield-icon-size-invalid)\n);color:var(\n--highcontrast-textfield-icon-color-invalid,var(\n--mod-textfield-icon-color-invalid,var(--spectrum-textfield-icon-color-invalid)\n)\n);inline-size:var(\n--mod-textfield-icon-size-invalid,var(--spectrum-textfield-icon-size-invalid)\n);inset-block-end:var(\n--mod-textfield-icon-spacing-block-invalid,var(--spectrum-textfield-icon-spacing-block-invalid)\n);inset-block-start:var(\n--mod-textfield-icon-spacing-block-invalid,var(--spectrum-textfield-icon-spacing-block-invalid)\n);inset-inline-end:var(\n--mod-textfield-icon-spacing-inline-end-invalid,var(--spectrum-textfield-icon-spacing-inline-end-invalid)\n);inset-inline-start:var(\n--mod-textfield-icon-spacing-inline-start-invalid,var(--spectrum-textfield-icon-spacing-inline-start-invalid)\n)}:host([disabled]) #textfield .icon,:host([readonly]) #textfield .icon{color:#0000}:host([quiet]) .icon{padding-inline-end:0}:host([quiet][valid]) .icon{inset-inline-end:var(\n--mod-textfield-icon-spacing-inline-end-quiet-valid,var(--spectrum-textfield-icon-spacing-inline-end-quiet-valid)\n)}:host([quiet][invalid]) .icon{inset-inline-end:var(\n--mod-textfield-icon-spacing-inline-end-quiet-invalid,var(--spectrum-textfield-icon-spacing-inline-end-quiet-invalid)\n)}#textfield .spectrum-FieldLabel{grid-area:1/1/auto/span 1;margin-block-end:var(\n--mod-textfield-label-spacing-block,var(--spectrum-textfield-label-spacing-block)\n);padding-inline-start:calc(var(\n--mod-textfield-corner-radius,\nvar(--spectrum-textfield-corner-radius)\n)/2)}:host([quiet]) .spectrum-FieldLabel{margin-block-end:var(\n--mod-textfield-label-spacing-block-quiet,var(--spectrum-textfield-label-spacing-block-quiet)\n)}:host([disabled]) .spectrum-FieldLabel{color:var(--spectrum-textfield-text-color-disabled)}#textfield .spectrum-HelpText{grid-area:3/1/auto/span 2;margin-block-start:var(\n--mod-textfield-helptext-spacing-block,var(--spectrum-textfield-helptext-spacing-block)\n);padding-inline-start:calc(var(\n--mod-textfield-corner-radius,\nvar(--spectrum-textfield-corner-radius)\n)/2)}.spectrum-Textfield-characterCount{align-items:flex-end;display:inline-flex;font-family:var(\n--mod-textfield-character-count-font-family,var(--spectrum-textfield-character-count-font-family)\n);font-size:var(\n--mod-textfield-character-count-font-size,var(--spectrum-textfield-character-count-font-size)\n);font-weight:var(\n--mod-textfield-character-count-font-weight,var(--spectrum-textfield-character-count-font-weight)\n);grid-area:1/2/auto/span 1;inline-size:auto;justify-content:flex-end;margin-block-end:var(\n--mod-textfield-character-count-spacing-block,var(--spectrum-textfield-character-count-spacing-block)\n);margin-inline-end:0;margin-inline-start:var(\n--mod-textfield-character-count-spacing-inline,var(--spectrum-textfield-character-count-spacing-inline)\n);padding-inline-end:calc(var(\n--mod-textfield-corner-radius,\nvar(--spectrum-textfield-corner-radius)\n)/2)}:host([quiet]) .spectrum-Textfield-characterCount{margin-block-end:var(\n--mod-textfield-character-count-spacing-block-quiet,var(--spectrum-textfield-character-count-spacing-block-quiet)\n)}.input{-webkit-appearance:none;-moz-appearance:textfield;background-color:var(\n--mod-textfield-background-color,var(--spectrum-textfield-background-color)\n);block-size:var(--mod-textfield-height,var(--spectrum-textfield-height));border:var(\n--mod-textfield-border-width,var(--spectrum-textfield-border-width)\n) solid var(\n--highcontrast-textfield-border-color,var(\n--mod-textfield-border-color,var(--spectrum-textfield-border-color)\n)\n);border-radius:var(\n--mod-textfield-corner-radius,var(--spectrum-textfield-corner-radius)\n);box-sizing:border-box;color:var(\n--highcontrast-textfield-text-color-default,var(\n--mod-textfield-text-color-default,var(--spectrum-textfield-text-color-default)\n)\n);font-family:var(\n--mod-textfield-font-family,var(--spectrum-textfield-font-family)\n);font-size:var(\n--mod-textfield-placeholder-font-size,var(--spectrum-textfield-placeholder-font-size)\n);font-weight:var(\n--mod-textfield-font-weight,var(--spectrum-textfield-font-weight)\n);grid-area:2/1/auto/span 2;inline-size:100%;line-height:var(--spectrum-textfield-input-line-height);margin:0;min-inline-size:var(\n--mod-textfield-min-width,var(--spectrum-textfield-min-width)\n);outline:none;overflow:visible;padding-block-end:calc(var(\n--mod-textfield-spacing-block-end,\nvar(--spectrum-textfield-spacing-block-end)\n) - var(\n--mod-textfield-border-width,\nvar(--spectrum-textfield-border-width)\n));padding-block-start:calc(var(\n--mod-textfield-spacing-block-start,\nvar(--spectrum-textfield-spacing-block-start)\n) - var(\n--mod-textfield-border-width,\nvar(--spectrum-textfield-border-width)\n));padding-inline:calc(var(\n--mod-textfield-spacing-inline,\nvar(--spectrum-textfield-spacing-inline)\n) - var(\n--mod-textfield-border-width,\nvar(--spectrum-textfield-border-width)\n));text-indent:0;text-overflow:ellipsis;transition:border-color var(\n--mod-texfield-animation-duration,var(--spectrum-texfield-animation-duration)\n) ease-in-out;vertical-align:top}.input::-ms-clear{block-size:0;inline-size:0}.input::-webkit-inner-spin-button,.input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.input:-moz-ui-invalid{box-shadow:none}.input::placeholder{color:var(\n--highcontrast-textfield-text-color-default,var(\n--mod-textfield-text-color-default,var(--spectrum-textfield-text-color-default)\n)\n);font-family:var(\n--mod-textfield-font-family,var(--spectrum-textfield-font-family)\n);font-size:var(\n--mod-textfield-placeholder-font-size,var(--spectrum-textfield-placeholder-font-size)\n);font-weight:var(\n--mod-textfield-font-weight,var(--spectrum-textfield-font-weight)\n);opacity:1;transition:color var(\n--mod-texfield-animation-duration,var(--spectrum-texfield-animation-duration)\n) ease-in-out}.input:lang(ja)::placeholder,.input:lang(ko)::placeholder,.input:lang(zh)::placeholder{font-style:normal}.input:lang(ja)::-moz-placeholder,.input:lang(ko)::-moz-placeholder,.input:lang(zh)::-moz-placeholder{font-style:normal}.input:focus,:host([focused]) .input{border-color:var(\n--highcontrast-textfield-border-color-focus,var(\n--mod-textfield-border-color-focus,var(--spectrum-textfield-border-color-focus)\n)\n);color:var(\n--highcontrast-textfield-text-color-focus,var(\n--mod-textfield-text-color-focus,var(--spectrum-textfield-text-color-focus)\n)\n)}.input:focus::placeholder,:host([focused]) .input::placeholder{color:var(\n--highcontrast-textfield-text-color-focus,var(\n--mod-textfield-text-color-focus,var(--spectrum-textfield-text-color-focus)\n)\n)}:host([focused]) .input{border-color:var(\n--highcontrast-textfield-border-color-keyboard-focus,var(\n--mod-textfield-border-color-keyboard-focus,var(--spectrum-textfield-border-color-keyboard-focus)\n)\n);color:var(\n--highcontrast-textfield-text-color-keyboard-focus,var(\n--mod-textfield-text-color-keyboard-focus,var(--spectrum-textfield-text-color-keyboard-focus)\n)\n)}:host([focused]) .input::placeholder{color:var(\n--highcontrast-textfield-text-color-keyboard-focus,var(\n--mod-textfield-text-color-keyboard-focus,var(--spectrum-textfield-text-color-keyboard-focus)\n)\n)}:host([focused]) .input{outline:var(\n--mod-textfield-focus-indicator-width,var(--spectrum-textfield-focus-indicator-width)\n) solid;outline-color:var(\n--highcontrast-textfield-focus-indicator-color,var(\n--mod-textfield-focus-indicator-color,var(--spectrum-textfield-focus-indicator-color)\n)\n);outline-offset:var(\n--mod-textfield-focus-indicator-gap,var(--spectrum-textfield-focus-indicator-gap)\n)}:host([valid]) .input{color:var(\n--highcontrast-textfield-text-color-valid,var(\n--mod-textfield-text-color-valid,var(--spectrum-textfield-text-color-valid)\n)\n);padding-inline-end:calc(var(\n--mod-textfield-icon-spacing-inline-start-valid,\nvar(--spectrum-textfield-icon-spacing-inline-start-valid)\n) + var(\n--mod-textfield-icon-size-valid,\nvar(--spectrum-textfield-icon-size-valid)\n) + var(\n--mod-textfield-icon-spacing-inline-end-valid,\nvar(--spectrum-textfield-icon-spacing-inline-end-valid)\n) - var(\n--mod-textfield-border-width,\nvar(--spectrum-textfield-border-width)\n))}:host([invalid]) .input{border-color:var(\n--highcontrast-textfield-border-color-invalid-default,var(\n--mod-textfield-border-color-invalid-default,var(--spectrum-textfield-border-color-invalid-default)\n)\n);color:var(\n--highcontrast-textfield-text-color-invalid,var(\n--mod-textfield-text-color-invalid,var(--spectrum-textfield-text-color-invalid)\n)\n);padding-inline-end:calc(var(\n--mod-textfield-icon-spacing-inline-start-invalid,\nvar(--spectrum-textfield-icon-spacing-inline-start-invalid)\n) + var(\n--mod-textfield-icon-size-invalid,\nvar(--spectrum-textfield-icon-size-invalid)\n) + var(\n--mod-textfield-icon-spacing-inline-end-invalid,\nvar(--spectrum-textfield-icon-spacing-inline-end-invalid)\n) - var(\n--mod-textfield-border-width,\nvar(--spectrum-textfield-border-width)\n))}:host([invalid]) .input:focus,:host([invalid]:focus) .input,:host([invalid][focused]) .input{border-color:var(\n--highcontrast-textfield-border-color-invalid-focus,var(\n--mod-textfield-border-color-invalid-focus,var(--spectrum-textfield-border-color-invalid-focus)\n)\n)}:host([invalid]) .input.focus-visible,:host([invalid][focused]) .input{border-color:var(\n--highcontrast-textfield-border-color-invalid-keyboard-focus,var(\n--mod-textfield-border-color-invalid-keyboard-focus,var(--spectrum-textfield-border-color-invalid-keyboard-focus)\n)\n)}:host([invalid]) .input:focus-visible,:host([invalid][focused]) .input{border-color:var(\n--highcontrast-textfield-border-color-invalid-keyboard-focus,var(\n--mod-textfield-border-color-invalid-keyboard-focus,var(--spectrum-textfield-border-color-invalid-keyboard-focus)\n)\n)}.input:disabled,:host([disabled]) #textfield .input{background-color:var(\n--mod-textfield-background-color-disabled,var(--spectrum-textfield-background-color-disabled)\n);color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n);-webkit-text-fill-color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n);border-color:#0000;opacity:1;resize:none}.input:disabled::placeholder,:host([disabled]) #textfield .input::placeholder{color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n)}:host([quiet]) .input{background-color:#0000;border-block-start-width:0;border-inline-width:0;border-radius:0;margin-block-end:var(\n--mod-textfield-spacing-block-quiet,var(--spectrum-textfield-spacing-block-quiet)\n);outline:none;overflow-y:hidden;padding-block-start:var(\n--mod-textfield-spacing-block-start,var(--spectrum-textfield-spacing-block-start)\n);padding-inline:var(\n--mod-textfield-spacing-inline-quiet,var(--spectrum-textfield-spacing-inline-quiet)\n);resize:none}.input:disabled,:host([quiet][disabled]) .input{background-color:#0000;border-color:var(\n--mod-textfield-border-color-disabled,var(--spectrum-textfield-border-color-disabled)\n);color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n)}.input:disabled::placeholder,:host([quiet][disabled]) .input::placeholder{color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n)}.input:read-only,:host([readonly]) #textfield .input{background-color:#0000;border-color:#0000;color:var(\n--highcontrast-textfield-text-color-readonly,var(\n--mod-textfield-text-color-readonly,var(--spectrum-textfield-text-color-readonly)\n)\n);outline:none}.input:read-only::placeholder,:host([readonly]) #textfield .input::placeholder{background-color:#0000;color:var(\n--highcontrast-textfield-text-color-readonly,var(\n--mod-textfield-text-color-readonly,var(--spectrum-textfield-text-color-readonly)\n)\n)}@media (hover:hover){#textfield:hover .input::placeholder,.input:hover::placeholder{color:var(\n--highcontrast-textfield-text-color-hover,var(\n--mod-textfield-text-color-hover,var(--spectrum-textfield-text-color-hover)\n)\n)}.input:focus:hover,:host([focused]) .input:hover{border-color:var(\n--highcontrast-textfield-border-color-focus-hover,var(\n--mod-textfield-border-color-focus-hover,var(--spectrum-textfield-border-color-focus-hover)\n)\n);color:var(\n--highcontrast-textfield-text-color-focus-hover,var(\n--mod-textfield-text-color-focus-hover,var(--spectrum-textfield-text-color-focus-hover)\n)\n)}.input:focus:hover::placeholder,:host([focused]) .input:hover::placeholder{color:var(\n--highcontrast-textfield-text-color-focus-hover,var(\n--mod-textfield-text-color-focus-hover,var(--spectrum-textfield-text-color-focus-hover)\n)\n)}:host([invalid]) .input:focus:hover,:host([invalid]:focus) .input:hover,:host([invalid][focused]) .input:hover{border-color:var(\n--highcontrast-textfield-border-color-invalid-focus-hover,var(\n--mod-textfield-border-color-invalid-focus-hover,var(--spectrum-textfield-border-color-invalid-focus-hover)\n)\n)}:host([disabled]) #textfield:hover .input::placeholder,:host([quiet][disabled]:hover) .input::placeholder{color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n)}#textfield:hover .input,.input:hover{border-color:var(\n--highcontrast-textfield-border-color-hover,var(\n--mod-textfield-border-color-hover,var(--spectrum-textfield-border-color-hover)\n)\n);color:var(\n--highcontrast-textfield-text-color-hover,var(\n--mod-textfield-text-color-hover,var(--spectrum-textfield-text-color-hover)\n)\n)}:host([invalid]) .input:hover,:host([invalid]:hover) .input{border-color:var(\n--highcontrast-textfield-border-color-invalid-hover,var(\n--mod-textfield-border-color-invalid-hover,var(--spectrum-textfield-border-color-invalid-hover)\n)\n)}:host([disabled]) #textfield:hover .input{background-color:var(\n--mod-textfield-background-color-disabled,var(--spectrum-textfield-background-color-disabled)\n);color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n);-webkit-text-fill-color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n);border-color:#0000;opacity:1;resize:none}:host([quiet][disabled]:hover) .input{background-color:#0000;border-color:var(\n--mod-textfield-border-color-disabled,var(--spectrum-textfield-border-color-disabled)\n);color:var(\n--highcontrast-textfield-text-color-disabled,var(\n--mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)\n)\n)}:host([readonly]) #textfield:hover .input{background-color:#0000;border-color:#0000;color:var(\n--highcontrast-textfield-text-color-readonly,var(\n--mod-textfield-text-color-readonly,var(--spectrum-textfield-text-color-readonly)\n)\n);outline:none}:host([readonly]) #textfield:hover .input::placeholder{background-color:#0000;color:var(\n--highcontrast-textfield-text-color-readonly,var(\n--mod-textfield-text-color-readonly,var(--spectrum-textfield-text-color-readonly)\n)\n)}}.spectrum-Textfield--sideLabel{grid-template-columns:auto auto auto;grid-template-rows:auto auto}.spectrum-Textfield--sideLabel:after{grid-area:1/2/span 1/span 1}.spectrum-Textfield--sideLabel .spectrum-FieldLabel{grid-area:1/1/span 2/span 1;margin-inline-end:var(\n--mod-textfield-label-spacing-inline-side-label,var(--spectrum-textfield-label-spacing-inline-side-label)\n)}.spectrum-Textfield--sideLabel .spectrum-Textfield-characterCount{align-items:flex-start;grid-area:1/3/auto/span 1;margin-block-start:var(\n--mod-textfield-character-count-spacing-block-side,var(--spectrum-textfield-character-count-spacing-block-side)\n);margin-inline-start:var(\n--mod-textfield-character-count-spacing-inline-side,var(--spectrum-textfield-character-count-spacing-inline-side)\n)}.spectrum-Textfield--sideLabel .spectrum-HelpText{grid-area:2/2/auto/span 1}.spectrum-Textfield--sideLabel .icon,.spectrum-Textfield--sideLabel .input{grid-area:1/2/span 1/span 1}:host([multiline]){--spectrum-textfield-input-line-height:normal}:host([multiline]) .input{min-block-size:var(\n--mod-text-area-min-block-size,var(--spectrum-text-area-min-block-size)\n);min-inline-size:var(\n--mod-text-area-min-inline-size,var(--spectrum-text-area-min-inline-size)\n);resize:inherit}:host([multiline][grows]) .input{grid-row:1}:host([multiline][quiet]) .input{min-block-size:var(\n--mod-text-area-min-block-size-quiet,var(--spectrum-text-area-min-block-size-quiet)\n);overflow-y:hidden;resize:none}@media (forced-colors:active){:host{--highcontrast-textfield-border-color-hover:Highlight;--highcontrast-textfield-border-color-focus:Highlight;--highcontrast-textfield-border-color-keyboard-focus:CanvasText;--highcontrast-textfield-focus-indicator-color:Highlight;--highcontrast-textfield-border-color-invalid-default:Highlight;--highcontrast-textfield-border-color-invalid-hover:Highlight;--highcontrast-textfield-border-color-invalid-focus:Highlight;--highcontrast-textfield-border-color-invalid-keyboard-focus:Highlight;--highcontrast-textfield-text-color-valid:CanvasText;--highcontrast-textfield-text-color-invalid:CanvasText}#textfield .input{--highcontrast-textfield-text-color-default:CanvasText;--highcontrast-textfield-text-color-hover:CanvasText;--highcontrast-textfield-text-color-keyboard-focus:CanvasText;--highcontrast-textfield-text-color-disabled:GrayText;--highcontrast-textfield-text-color-readonly:CanvasText}#textfield .input::placeholder{--highcontrast-textfield-text-color-default:GrayText;--highcontrast-textfield-text-color-hover:GrayText;--highcontrast-textfield-text-color-keyboard-focus:GrayText;--highcontrast-textfield-text-color-disabled:GrayText;--highcontrast-textfield-text-color-readonly:CanvasText}}:host{--spectrum-textfield-border-color:var(\n--system-spectrum-textfield-border-color\n);--spectrum-textfield-border-color-hover:var(\n--system-spectrum-textfield-border-color-hover\n);--spectrum-textfield-border-color-focus:var(\n--system-spectrum-textfield-border-color-focus\n);--spectrum-textfield-border-color-focus-hover:var(\n--system-spectrum-textfield-border-color-focus-hover\n);--spectrum-textfield-border-color-keyboard-focus:var(\n--system-spectrum-textfield-border-color-keyboard-focus\n);--spectrum-textfield-border-width:var(\n--system-spectrum-textfield-border-width\n)}\n`;\nexport default styles;"],
5
+ "mappings": ";AAWA,SAAS,WAAW;AACpB,MAAM,SAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAkiBf,eAAe;",
6
6
  "names": []
7
7
  }
@@ -478,11 +478,7 @@ var(--spectrum-textfield-border-width)
478
478
  --highcontrast-textfield-border-color-invalid-focus-hover,var(
479
479
  --mod-textfield-border-color-invalid-focus-hover,var(--spectrum-textfield-border-color-invalid-focus-hover)
480
480
  )
481
- )}:host([disabled]) #textfield:hover .input::placeholder{color:var(
482
- --highcontrast-textfield-text-color-disabled,var(
483
- --mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)
484
- )
485
- )}:host([quiet][disabled]:hover) .input::placeholder{color:var(
481
+ )}:host([disabled]) #textfield:hover .input::placeholder,:host([quiet][disabled]:hover) .input::placeholder{color:var(
486
482
  --highcontrast-textfield-text-color-disabled,var(
487
483
  --mod-textfield-text-color-disabled,var(--spectrum-textfield-text-color-disabled)
488
484
  )