@spectrum-web-components/number-field 0.0.0-20241209155954
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +269 -0
- package/package.json +80 -0
- package/sp-number-field.d.ts +6 -0
- package/sp-number-field.dev.js +5 -0
- package/sp-number-field.dev.js.map +7 -0
- package/sp-number-field.js +2 -0
- package/sp-number-field.js.map +7 -0
- package/src/NumberField.d.ts +117 -0
- package/src/NumberField.dev.js +675 -0
- package/src/NumberField.dev.js.map +7 -0
- package/src/NumberField.js +57 -0
- package/src/NumberField.js.map +7 -0
- package/src/index.d.ts +1 -0
- package/src/index.dev.js +3 -0
- package/src/index.dev.js.map +7 -0
- package/src/index.js +2 -0
- package/src/index.js.map +7 -0
- package/src/number-field-overrides.css.d.ts +2 -0
- package/src/number-field-overrides.css.dev.js +7 -0
- package/src/number-field-overrides.css.dev.js.map +7 -0
- package/src/number-field-overrides.css.js +4 -0
- package/src/number-field-overrides.css.js.map +7 -0
- package/src/number-field.css.d.ts +2 -0
- package/src/number-field.css.dev.js +7 -0
- package/src/number-field.css.dev.js.map +7 -0
- package/src/number-field.css.js +4 -0
- package/src/number-field.css.js.map +7 -0
- package/src/spectrum-config.js +272 -0
- package/src/spectrum-number-field.css.d.ts +2 -0
- package/src/spectrum-number-field.css.dev.js +7 -0
- package/src/spectrum-number-field.css.dev.js.map +7 -0
- package/src/spectrum-number-field.css.js +4 -0
- package/src/spectrum-number-field.css.js.map +7 -0
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["NumberField.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 { NumberFormatter, NumberParser } from '@internationalized/number';\nimport {\n CSSResultArray,\n html,\n nothing,\n PropertyValues,\n TemplateResult,\n} from '@spectrum-web-components/base';\nimport {\n property,\n query,\n} from '@spectrum-web-components/base/src/decorators.js';\nimport { streamingListener } from '@spectrum-web-components/base/src/streaming-listener.js';\nimport {\n LanguageResolutionController,\n languageResolverUpdatedSymbol,\n} from '@spectrum-web-components/reactive-controllers/src/LanguageResolution.js';\n\nimport chevronStyles from '@spectrum-web-components/icon/src/spectrum-icon-chevron.css.js';\nimport '@spectrum-web-components/icons-ui/icons/sp-icon-chevron100.js';\nimport '@spectrum-web-components/icons-ui/icons/sp-icon-chevron200.js';\nimport '@spectrum-web-components/icons-ui/icons/sp-icon-chevron50.js';\nimport '@spectrum-web-components/icons-ui/icons/sp-icon-chevron75.js';\nimport '@spectrum-web-components/infield-button/sp-infield-button.js';\nimport {\n isAndroid,\n isIOS,\n isIPhone,\n} from '@spectrum-web-components/shared/src/platform.js';\nimport { TextfieldBase } from '@spectrum-web-components/textfield';\nimport chevronIconOverrides from '@spectrum-web-components/icon/src/icon-chevron-overrides.css.js';\nimport styles from './number-field.css.js';\n\nexport const FRAMES_PER_CHANGE = 5;\n// Debounce duration for inserting a `change` event after a batch of `wheel` originating `input` events.\nexport const CHANGE_DEBOUNCE_MS = 100;\nexport const indeterminatePlaceholder = '-';\nexport const remapMultiByteCharacters: Record<string, string> = {\n '\uFF11': '1',\n '\uFF12': '2',\n '\uFF13': '3',\n '\uFF14': '4',\n '\uFF15': '5',\n '\uFF16': '6',\n '\uFF17': '7',\n '\uFF18': '8',\n '\uFF19': '9',\n '\uFF10': '0',\n '\u3001': ',',\n '\uFF0C': ',',\n '\u3002': '.',\n '\uFF0E': '.',\n '\uFF05': '%',\n '\uFF0B': '+',\n \u30FC: '-',\n \u4E00: '1',\n \u4E8C: '2',\n \u4E09: '3',\n \u56DB: '4',\n \u4E94: '5',\n \u516D: '6',\n \u4E03: '7',\n \u516B: '8',\n \u4E5D: '9',\n \u96F6: '0',\n};\nconst chevronIcon: Record<string, (dir: 'Down' | 'Up') => TemplateResult> = {\n s: (dir) => html`\n <sp-icon-chevron50\n class=\"stepper-icon spectrum-UIIcon-Chevron${dir}50\"\n ></sp-icon-chevron50>\n `,\n m: (dir) => html`\n <sp-icon-chevron75\n class=\"stepper-icon spectrum-UIIcon-Chevron${dir}75\"\n ></sp-icon-chevron75>\n `,\n l: (dir) => html`\n <sp-icon-chevron100\n class=\"stepper-icon spectrum-UIIcon-Chevron${dir}100\"\n ></sp-icon-chevron100>\n `,\n xl: (dir) => html`\n <sp-icon-chevron200\n class=\"stepper-icon spectrum-UIIcon-Chevron${dir}200\"\n ></sp-icon-chevron200>\n `,\n};\n\n/**\n * @element sp-number-field\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 NumberField extends TextfieldBase {\n public static override get styles(): CSSResultArray {\n return [...super.styles, styles, chevronStyles, chevronIconOverrides];\n }\n\n @query('.buttons')\n private buttons!: HTMLDivElement;\n\n @property({ type: Boolean, reflect: true })\n public override focused = false;\n\n _forcedUnit = '';\n\n /**\n * An `<sp-number-field>` element will process its numeric value with\n * `new Intl.NumberFormat(this.resolvedLanguage, this.formatOptions).format(this.valueAsNumber)`\n * in order to prepare it for visual delivery in the input. In order to customize this\n * processing supply your own `Intl.NumberFormatOptions` object here.\n *\n * See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/NumberFormat\n */\n @property({ type: Object, attribute: 'format-options' })\n public formatOptions: Intl.NumberFormatOptions = {};\n\n /**\n * Whether the stepper UI is hidden or not.\n */\n @property({ type: Boolean, reflect: true, attribute: 'hide-stepper' })\n public hideStepper = false;\n\n @property({ type: Boolean, reflect: true })\n public indeterminate = false;\n\n @property({ type: Boolean, reflect: true, attribute: 'keyboard-focused' })\n public keyboardFocused = false;\n\n @property({ type: Number })\n public max?: number;\n\n @property({ type: Number })\n public min?: number;\n\n /**\n * The distance by which to alter the value of the element when taking a \"step\".\n *\n * When `this.formatOptions.style === 'percentage'` the default step will be\n * set to 0.01 unless otherwise supplied to the element.\n */\n @property({ type: Number })\n public step?: number;\n\n public managedInput = false;\n\n @property({ type: Number, reflect: true, attribute: 'step-modifier' })\n public stepModifier = 10;\n\n @property({ type: Number })\n public override set value(rawValue: number) {\n const value = this.validateInput(rawValue);\n if (value === this.value) {\n return;\n }\n this.lastCommitedValue = value;\n const oldValue = this._value;\n this._value = value;\n this.requestUpdate('value', oldValue);\n }\n\n public override get value(): number {\n return this._value;\n }\n\n private get inputValue(): string {\n return this.indeterminate\n ? this.formattedValue\n : this.inputElement.value;\n }\n\n public override _value = NaN;\n private _trackingValue = '';\n private lastCommitedValue?: number;\n\n private setValue(newValue: number = this.value): void {\n // Capture previous value for accurate IME change detection\n const previousValue = this.lastCommitedValue;\n\n this.value = newValue;\n\n if (\n typeof previousValue === 'undefined' ||\n previousValue === this.value\n ) {\n // Do not announce when the value is unchanged.\n return;\n }\n\n this.lastCommitedValue = this.value;\n\n this.dispatchEvent(\n new Event('change', { bubbles: true, composed: true })\n );\n }\n\n /**\n * Retreive the value of the element parsed to a Number.\n */\n public get valueAsString(): string {\n return this._value.toString();\n }\n\n public set valueAsString(value: string) {\n this.value = this.numberParser.parse(value);\n }\n\n public get formattedValue(): string {\n if (isNaN(this.value)) return '';\n return (\n this.numberFormatter.format(this.value) +\n (this.focused ? '' : this._forcedUnit)\n );\n }\n\n private decimalsChars = new Set(['.', ',']);\n private valueBeforeFocus: string = '';\n private isIntentDecimal: boolean = false;\n\n private convertValueToNumber(inputValue: string): number {\n // Normalize full-width characters to their ASCII equivalents\n let normalizedValue = inputValue\n .split('')\n .map((char) => remapMultiByteCharacters[char] || char)\n .join('');\n\n const separators = this.valueBeforeFocus\n .split('')\n .filter((char) => this.decimalsChars.has(char));\n const uniqueSeparators = new Set(separators);\n\n if (\n isIOS() &&\n this.inputElement.inputMode === 'decimal' &&\n normalizedValue !== this.valueBeforeFocus\n ) {\n const parts = this.numberFormatter.formatToParts(1000.1);\n\n const replacementDecimal = parts.find(\n (part) => part.type === 'decimal'\n )!.value;\n\n for (const separator of uniqueSeparators) {\n const isDecimalSeparator = separator === replacementDecimal;\n if (!isDecimalSeparator && !this.isIntentDecimal) {\n normalizedValue = normalizedValue.replace(\n new RegExp(separator, 'g'),\n ''\n );\n }\n }\n\n let hasReplacedDecimal = false;\n const valueChars = normalizedValue.split('');\n for (let index = valueChars.length - 1; index >= 0; index--) {\n const char = valueChars[index];\n if (this.decimalsChars.has(char)) {\n if (!hasReplacedDecimal) {\n valueChars[index] = replacementDecimal;\n hasReplacedDecimal = true;\n } else valueChars[index] = '';\n }\n }\n normalizedValue = valueChars.join('');\n }\n return this.numberParser.parse(normalizedValue);\n }\n private get _step(): number {\n if (typeof this.step !== 'undefined') {\n return this.step;\n }\n if (this.formatOptions?.style === 'percent') {\n return 0.01;\n }\n return 1;\n }\n\n private nextChange!: number;\n private changeCount = 0;\n private findChange!: (event: PointerEvent) => void;\n private change!: (event: PointerEvent) => void;\n private safty!: number;\n private languageResolver = new LanguageResolutionController(this);\n\n private handlePointerdown(event: PointerEvent): void {\n if (event.button !== 0) {\n event.preventDefault();\n return;\n }\n this.managedInput = true;\n this.buttons.setPointerCapture(event.pointerId);\n const stepUpRect = this.buttons.children[0].getBoundingClientRect();\n const stepDownRect = this.buttons.children[1].getBoundingClientRect();\n this.findChange = (event: PointerEvent) => {\n if (\n event.clientX >= stepUpRect.x &&\n event.clientY >= stepUpRect.y &&\n event.clientX <= stepUpRect.x + stepUpRect.width &&\n event.clientY <= stepUpRect.y + stepUpRect.height\n ) {\n this.change = (event: PointerEvent) =>\n this.increment(event.shiftKey ? this.stepModifier : 1);\n } else if (\n event.clientX >= stepDownRect.x &&\n event.clientY >= stepDownRect.y &&\n event.clientX <= stepDownRect.x + stepDownRect.width &&\n event.clientY <= stepDownRect.y + stepDownRect.height\n ) {\n this.change = (event: PointerEvent) =>\n this.decrement(event.shiftKey ? this.stepModifier : 1);\n }\n };\n this.findChange(event);\n this.startChange(event);\n }\n\n private startChange(event: PointerEvent): void {\n this.changeCount = 0;\n this.doChange(event);\n this.safty = setTimeout(() => {\n this.doNextChange(event);\n }, 400) as unknown as number;\n }\n\n private doChange(event: PointerEvent): void {\n this.change(event);\n }\n\n private handlePointermove(event: PointerEvent): void {\n this.findChange(event);\n }\n\n private handlePointerup(event: PointerEvent): void {\n this.buttons.releasePointerCapture(event.pointerId);\n cancelAnimationFrame(this.nextChange);\n clearTimeout(this.safty);\n this.managedInput = false;\n this.setValue();\n }\n\n private doNextChange(event: PointerEvent): number {\n this.changeCount += 1;\n if (this.changeCount % FRAMES_PER_CHANGE === 0) {\n this.doChange(event);\n }\n return requestAnimationFrame(() => {\n this.nextChange = this.doNextChange(event);\n });\n }\n\n private stepBy(count: number): void {\n if (this.disabled || this.readonly) {\n return;\n }\n const min = typeof this.min !== 'undefined' ? this.min : 0;\n let value = this.value;\n value += count * this._step;\n if (isNaN(this.value)) {\n value = min;\n }\n value = this.valueWithLimits(value);\n\n this.requestUpdate();\n this._value = this.validateInput(value);\n this.inputElement.value = this.numberFormatter.format(value);\n\n this.inputElement.dispatchEvent(\n new Event('input', { bubbles: true, composed: true })\n );\n this.indeterminate = false;\n this.focus();\n }\n\n private increment(factor = 1): void {\n this.stepBy(1 * factor);\n }\n\n private decrement(factor = 1): void {\n this.stepBy(-1 * factor);\n }\n\n private handleKeydown(event: KeyboardEvent): void {\n if (this.isComposing) return;\n switch (event.code) {\n case 'ArrowUp':\n event.preventDefault();\n this.increment(event.shiftKey ? this.stepModifier : 1);\n this.setValue();\n break;\n case 'ArrowDown':\n event.preventDefault();\n this.decrement(event.shiftKey ? this.stepModifier : 1);\n this.setValue();\n break;\n }\n }\n\n private queuedChangeEvent!: number;\n\n protected onScroll(event: WheelEvent): void {\n event.preventDefault();\n this.managedInput = true;\n const direction = event.shiftKey\n ? event.deltaX / Math.abs(event.deltaX)\n : event.deltaY / Math.abs(event.deltaY);\n if (direction !== 0 && !isNaN(direction)) {\n this.stepBy(direction * (event.shiftKey ? this.stepModifier : 1));\n clearTimeout(this.queuedChangeEvent);\n this.queuedChangeEvent = setTimeout(() => {\n this.setValue();\n }, CHANGE_DEBOUNCE_MS) as unknown as number;\n }\n this.managedInput = false;\n }\n\n protected override onFocus(): void {\n super.onFocus();\n this._trackingValue = this.inputValue;\n this.keyboardFocused = !this.readonly && true;\n this.addEventListener('wheel', this.onScroll, { passive: false });\n this.valueBeforeFocus = this.inputElement.value;\n }\n\n protected override onBlur(_event: FocusEvent): void {\n super.onBlur(_event);\n this.keyboardFocused = !this.readonly && false;\n this.removeEventListener('wheel', this.onScroll);\n this.isIntentDecimal = false;\n }\n\n private handleFocusin(): void {\n this.focused = !this.readonly && true;\n this.keyboardFocused = !this.readonly && true;\n }\n\n private handleFocusout(): void {\n this.focused = !this.readonly && false;\n this.keyboardFocused = !this.readonly && false;\n }\n\n private wasIndeterminate = false;\n private indeterminateValue?: number;\n\n protected override handleChange(): void {\n const value = this.convertValueToNumber(this.inputValue);\n if (this.wasIndeterminate) {\n this.wasIndeterminate = false;\n this.indeterminateValue = undefined;\n if (isNaN(value)) {\n this.indeterminate = true;\n return;\n }\n }\n this.setValue(value);\n this.inputElement.value = this.formattedValue;\n }\n\n protected handleCompositionStart(): void {\n this.isComposing = true;\n }\n\n protected handleCompositionEnd(): void {\n this.isComposing = false;\n requestAnimationFrame(() => {\n this.inputElement.dispatchEvent(\n new Event('input', {\n composed: true,\n bubbles: true,\n })\n );\n });\n }\n\n private hasRecentlyReceivedPointerDown = false;\n\n protected override handleInputElementPointerdown(): void {\n this.hasRecentlyReceivedPointerDown = true;\n this.updateComplete.then(() => {\n requestAnimationFrame(() => {\n this.hasRecentlyReceivedPointerDown = false;\n });\n });\n }\n\n protected override handleInput(event: InputEvent): void {\n if (this.isComposing) {\n // If user actually types a new character.\n if (event.data) {\n // Don't allow non-numeric characters even in composing mode.\n const partialValue = this.convertValueToNumber(event.data);\n\n if (Number.isNaN(partialValue)) {\n this.inputElement.value = this.indeterminate\n ? indeterminatePlaceholder\n : this._trackingValue;\n\n this.isComposing = false;\n }\n }\n\n event.stopPropagation();\n return;\n }\n if (this.indeterminate) {\n this.wasIndeterminate = true;\n this.indeterminateValue = this.value;\n this.inputElement.value = this.inputElement.value.replace(\n indeterminatePlaceholder,\n ''\n );\n }\n if (event.data && this.decimalsChars.has(event.data))\n this.isIntentDecimal = true;\n\n const { value: originalValue, selectionStart } = this.inputElement;\n const value = originalValue\n .split('')\n .map((char) => remapMultiByteCharacters[char] || char)\n .join('');\n\n if (this.numberParser.isValidPartialNumber(value)) {\n // Use starting value as this.value is the `input` value.\n this.lastCommitedValue = this.lastCommitedValue ?? this.value;\n const valueAsNumber = this.convertValueToNumber(value);\n if (!value && this.indeterminateValue) {\n this.indeterminate = true;\n this._value = this.indeterminateValue;\n } else {\n this.indeterminate = false;\n this._value = this.validateInput(valueAsNumber);\n }\n this._trackingValue = value;\n this.inputElement.value = value;\n this.inputElement.setSelectionRange(selectionStart, selectionStart);\n return;\n } else {\n this.inputElement.value = this.indeterminate\n ? indeterminatePlaceholder\n : this._trackingValue;\n\n // Don't emit input event when the character is invalid.\n event.stopPropagation();\n }\n const currentLength = value.length;\n const previousLength = this._trackingValue.length;\n const nextSelectStart =\n (selectionStart || currentLength) -\n (currentLength - previousLength);\n this.inputElement.setSelectionRange(nextSelectStart, nextSelectStart);\n }\n\n private valueWithLimits(nextValue: number): number {\n let value = nextValue;\n if (typeof this.min !== 'undefined') {\n value = Math.max(this.min, value);\n }\n if (typeof this.max !== 'undefined') {\n value = Math.min(this.max, value);\n }\n return value;\n }\n\n private validateInput(value: number): number {\n value = this.valueWithLimits(value);\n const signMultiplier = value < 0 ? -1 : 1; // 'signMultiplier' adjusts 'value' for 'validateInput' and reverts it before returning.\n value *= signMultiplier;\n\n // Step shouldn't validate when 0...\n if (this.step) {\n const min = typeof this.min !== 'undefined' ? this.min : 0;\n const moduloStep = parseFloat(\n this.valueFormatter.format((value - min) % this.step)\n );\n const fallsOnStep = moduloStep === 0;\n if (!fallsOnStep) {\n const overUnder = Math.round(moduloStep / this.step);\n if (overUnder === 1) {\n value += this.step - moduloStep;\n } else {\n value -= moduloStep;\n }\n }\n if (typeof this.max !== 'undefined') {\n while (value > this.max) {\n value -= this.step;\n }\n }\n value = parseFloat(this.valueFormatter.format(value));\n }\n value *= signMultiplier;\n return value;\n }\n\n protected override get displayValue(): string {\n const indeterminateValue = this.focused ? '' : indeterminatePlaceholder;\n return this.indeterminate ? indeterminateValue : this.formattedValue;\n }\n\n protected clearNumberFormatterCache(): void {\n this._numberFormatter = undefined;\n this._numberParser = undefined;\n }\n\n protected get numberFormatter(): NumberFormatter {\n if (!this._numberFormatter || !this._numberFormatterFocused) {\n const {\n style,\n unit,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n unitDisplay,\n ...formatOptionsNoUnit\n } = this.formatOptions;\n if (style !== 'unit') {\n (formatOptionsNoUnit as Intl.NumberFormatOptions).style = style;\n }\n this._numberFormatterFocused = new NumberFormatter(\n this.languageResolver.language,\n formatOptionsNoUnit\n );\n try {\n this._numberFormatter = new NumberFormatter(\n this.languageResolver.language,\n this.formatOptions\n );\n this._forcedUnit = '';\n this._numberFormatter.format(1);\n } catch (error) {\n if (style === 'unit') {\n this._forcedUnit = unit as string;\n }\n this._numberFormatter = this._numberFormatterFocused;\n }\n }\n return this.focused\n ? this._numberFormatterFocused\n : this._numberFormatter;\n }\n\n protected clearValueFormatterCache(): void {\n this._valueFormatter = undefined;\n }\n protected get valueFormatter(): NumberFormatter {\n if (!this._valueFormatter) {\n const digitsAfterDecimal = this.step\n ? this.step != Math.floor(this.step)\n ? this.step.toString().split('.')[1].length\n : 0\n : 0;\n this._valueFormatter = new NumberFormatter('en', {\n useGrouping: false,\n maximumFractionDigits: digitsAfterDecimal,\n });\n }\n\n return this._valueFormatter;\n }\n private _numberFormatter?: NumberFormatter;\n private _numberFormatterFocused?: NumberFormatter;\n private _valueFormatter?: NumberFormatter;\n protected get numberParser(): NumberParser {\n if (!this._numberParser || !this._numberParserFocused) {\n const {\n style,\n unit,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n unitDisplay,\n ...formatOptionsNoUnit\n } = this.formatOptions;\n if (style !== 'unit') {\n (formatOptionsNoUnit as Intl.NumberFormatOptions).style = style;\n }\n this._numberParserFocused = new NumberParser(\n this.languageResolver.language,\n formatOptionsNoUnit\n );\n try {\n this._numberParser = new NumberParser(\n this.languageResolver.language,\n this.formatOptions\n );\n this._forcedUnit = '';\n this._numberParser.parse('0');\n } catch (error) {\n if (style === 'unit') {\n this._forcedUnit = unit as string;\n }\n this._numberParser = this._numberParserFocused;\n }\n }\n return this.focused ? this._numberParserFocused : this._numberParser;\n }\n\n applyFocusElementLabel = (value?: string): void => {\n this.appliedLabel = value;\n };\n\n private _numberParser?: NumberParser;\n private _numberParserFocused?: NumberParser;\n\n protected override renderField(): TemplateResult {\n this.autocomplete = 'off';\n return html`\n ${super.renderField()}\n ${this.hideStepper\n ? nothing\n : html`\n <span\n class=\"buttons\"\n @focusin=${this.handleFocusin}\n @focusout=${this.handleFocusout}\n ${streamingListener({\n start: ['pointerdown', this.handlePointerdown],\n streamInside: [\n [\n 'pointermove',\n 'pointerenter',\n 'pointerleave',\n 'pointerover',\n 'pointerout',\n ],\n this.handlePointermove,\n ],\n end: [\n [\n 'pointerup',\n 'pointercancel',\n 'pointerleave',\n ],\n this.handlePointerup,\n ],\n })}\n >\n <sp-infield-button\n inline=\"end\"\n block=\"start\"\n class=\"button step-up\"\n aria-hidden=\"true\"\n label=${'Increase ' + this.appliedLabel}\n size=${this.size}\n tabindex=\"-1\"\n ?focused=${this.focused}\n ?disabled=${this.disabled ||\n this.readonly ||\n (typeof this.max !== 'undefined' &&\n this.value === this.max)}\n ?quiet=${this.quiet}\n >\n ${chevronIcon[this.size]('Up')}\n </sp-infield-button>\n <sp-infield-button\n inline=\"end\"\n block=\"end\"\n class=\"button step-down\"\n aria-hidden=\"true\"\n label=${'Decrease ' + this.appliedLabel}\n size=${this.size}\n tabindex=\"-1\"\n ?focused=${this.focused}\n ?disabled=${this.disabled ||\n this.readonly ||\n (typeof this.min !== 'undefined' &&\n this.value === this.min)}\n ?quiet=${this.quiet}\n >\n ${chevronIcon[this.size]('Down')}\n </sp-infield-button>\n </span>\n `}\n `;\n }\n\n protected override update(changes: PropertyValues): void {\n if (changes.has('formatOptions') || changes.has('resolvedLanguage')) {\n this.clearNumberFormatterCache();\n }\n if (\n changes.has('value') ||\n changes.has('max') ||\n changes.has('min') ||\n changes.has('step')\n ) {\n const value = this.numberParser.parse(\n this.formattedValue.replace(this._forcedUnit, '')\n );\n this.value = value;\n this.clearValueFormatterCache();\n }\n super.update(changes);\n }\n\n public override willUpdate(changes: PropertyValues): void {\n this.multiline = false;\n if (changes.has(languageResolverUpdatedSymbol)) {\n this.clearNumberFormatterCache();\n }\n }\n\n private isComposing = false;\n\n protected override firstUpdated(changes: PropertyValues): void {\n super.firstUpdated(changes);\n this.addEventListener('keydown', this.handleKeydown);\n this.addEventListener('compositionstart', this.handleCompositionStart);\n this.addEventListener('compositionend', this.handleCompositionEnd);\n }\n\n protected override updated(changes: PropertyValues<this>): void {\n if (!this.inputElement || !this.isConnected) {\n // Prevent race conditions if inputElement is removed from DOM while a queued update is still running.\n return;\n }\n\n if (changes.has('min') || changes.has('formatOptions')) {\n const hasOnlyPositives =\n typeof this.min !== 'undefined' && this.min >= 0;\n\n const { maximumFractionDigits } =\n this.numberFormatter.resolvedOptions();\n const hasDecimals =\n maximumFractionDigits && maximumFractionDigits > 0;\n\n let inputMode = 'numeric';\n /* c8 ignore next 5 */\n // iPhone doesn't have a minus sign in either numeric or decimal.\n if (isIPhone() && !hasOnlyPositives) inputMode = 'text';\n else if (isIOS() && hasDecimals) inputMode = 'decimal';\n // Android numeric has both a decimal point and minus key. Decimal does not have a minus key.\n else if (isAndroid() && hasDecimals && hasOnlyPositives)\n inputMode = 'decimal';\n\n this.inputElement.inputMode = inputMode;\n }\n if (\n changes.has('focused') &&\n this.focused &&\n !this.hasRecentlyReceivedPointerDown &&\n !!this.formatOptions.unit\n ) {\n // Normalize keyboard focus entry between unit and non-unit bearing Number Fields\n this.setSelectionRange(0, this.displayValue.length);\n }\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["event"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";var y=Object.defineProperty;var F=Object.getOwnPropertyDescriptor;var a=(o,p,e,t)=>{for(var i=t>1?void 0:t?F(p,e):p,s=o.length-1,r;s>=0;s--)(r=o[s])&&(i=(t?r(p,e,i):r(i))||i);return t&&i&&y(p,e,i),i};import{NumberFormatter as c,NumberParser as v}from"@internationalized/number";import{html as l,nothing as C}from"@spectrum-web-components/base";import{property as u,query as E}from"@spectrum-web-components/base/src/decorators.js";import{streamingListener as P}from"@spectrum-web-components/base/src/streaming-listener.js";import{LanguageResolutionController as _,languageResolverUpdatedSymbol as V}from"@spectrum-web-components/reactive-controllers/src/LanguageResolution.js";import w from"@spectrum-web-components/icon/src/spectrum-icon-chevron.css.js";import"@spectrum-web-components/icons-ui/icons/sp-icon-chevron100.js";import"@spectrum-web-components/icons-ui/icons/sp-icon-chevron200.js";import"@spectrum-web-components/icons-ui/icons/sp-icon-chevron50.js";import"@spectrum-web-components/icons-ui/icons/sp-icon-chevron75.js";import"@spectrum-web-components/infield-button/sp-infield-button.js";import{isAndroid as I,isIOS as b,isIPhone as N}from"@spectrum-web-components/shared/src/platform.js";import{TextfieldBase as x}from"@spectrum-web-components/textfield";import S from"@spectrum-web-components/icon/src/icon-chevron-overrides.css.js";import R from"./number-field.css.js";export const FRAMES_PER_CHANGE=5,CHANGE_DEBOUNCE_MS=100,indeterminatePlaceholder="-",remapMultiByteCharacters={"\uFF11":"1","\uFF12":"2","\uFF13":"3","\uFF14":"4","\uFF15":"5","\uFF16":"6","\uFF17":"7","\uFF18":"8","\uFF19":"9","\uFF10":"0","\u3001":",","\uFF0C":",","\u3002":".","\uFF0E":".","\uFF05":"%","\uFF0B":"+",\u30FC:"-",\u4E00:"1",\u4E8C:"2",\u4E09:"3",\u56DB:"4",\u4E94:"5",\u516D:"6",\u4E03:"7",\u516B:"8",\u4E5D:"9",\u96F6:"0"};const g={s:o=>l`
|
|
2
|
+
<sp-icon-chevron50
|
|
3
|
+
class="stepper-icon spectrum-UIIcon-Chevron${o}50"
|
|
4
|
+
></sp-icon-chevron50>
|
|
5
|
+
`,m:o=>l`
|
|
6
|
+
<sp-icon-chevron75
|
|
7
|
+
class="stepper-icon spectrum-UIIcon-Chevron${o}75"
|
|
8
|
+
></sp-icon-chevron75>
|
|
9
|
+
`,l:o=>l`
|
|
10
|
+
<sp-icon-chevron100
|
|
11
|
+
class="stepper-icon spectrum-UIIcon-Chevron${o}100"
|
|
12
|
+
></sp-icon-chevron100>
|
|
13
|
+
`,xl:o=>l`
|
|
14
|
+
<sp-icon-chevron200
|
|
15
|
+
class="stepper-icon spectrum-UIIcon-Chevron${o}200"
|
|
16
|
+
></sp-icon-chevron200>
|
|
17
|
+
`};export class NumberField extends x{constructor(){super(...arguments);this.focused=!1;this._forcedUnit="";this.formatOptions={};this.hideStepper=!1;this.indeterminate=!1;this.keyboardFocused=!1;this.managedInput=!1;this.stepModifier=10;this._value=NaN;this._trackingValue="";this.decimalsChars=new Set([".",","]);this.valueBeforeFocus="";this.isIntentDecimal=!1;this.changeCount=0;this.languageResolver=new _(this);this.wasIndeterminate=!1;this.hasRecentlyReceivedPointerDown=!1;this.applyFocusElementLabel=e=>{this.appliedLabel=e};this.isComposing=!1}static get styles(){return[...super.styles,R,w,S]}set value(e){const t=this.validateInput(e);if(t===this.value)return;this.lastCommitedValue=t;const i=this._value;this._value=t,this.requestUpdate("value",i)}get value(){return this._value}get inputValue(){return this.indeterminate?this.formattedValue:this.inputElement.value}setValue(e=this.value){const t=this.lastCommitedValue;this.value=e,!(typeof t=="undefined"||t===this.value)&&(this.lastCommitedValue=this.value,this.dispatchEvent(new Event("change",{bubbles:!0,composed:!0})))}get valueAsString(){return this._value.toString()}set valueAsString(e){this.value=this.numberParser.parse(e)}get formattedValue(){return isNaN(this.value)?"":this.numberFormatter.format(this.value)+(this.focused?"":this._forcedUnit)}convertValueToNumber(e){let t=e.split("").map(r=>remapMultiByteCharacters[r]||r).join("");const i=this.valueBeforeFocus.split("").filter(r=>this.decimalsChars.has(r)),s=new Set(i);if(b()&&this.inputElement.inputMode==="decimal"&&t!==this.valueBeforeFocus){const d=this.numberFormatter.formatToParts(1000.1).find(n=>n.type==="decimal").value;for(const n of s)!(n===d)&&!this.isIntentDecimal&&(t=t.replace(new RegExp(n,"g"),""));let m=!1;const h=t.split("");for(let n=h.length-1;n>=0;n--){const f=h[n];this.decimalsChars.has(f)&&(m?h[n]="":(h[n]=d,m=!0))}t=h.join("")}return this.numberParser.parse(t)}get _step(){var e;return typeof this.step!="undefined"?this.step:((e=this.formatOptions)==null?void 0:e.style)==="percent"?.01:1}handlePointerdown(e){if(e.button!==0){e.preventDefault();return}this.managedInput=!0,this.buttons.setPointerCapture(e.pointerId);const t=this.buttons.children[0].getBoundingClientRect(),i=this.buttons.children[1].getBoundingClientRect();this.findChange=s=>{s.clientX>=t.x&&s.clientY>=t.y&&s.clientX<=t.x+t.width&&s.clientY<=t.y+t.height?this.change=r=>this.increment(r.shiftKey?this.stepModifier:1):s.clientX>=i.x&&s.clientY>=i.y&&s.clientX<=i.x+i.width&&s.clientY<=i.y+i.height&&(this.change=r=>this.decrement(r.shiftKey?this.stepModifier:1))},this.findChange(e),this.startChange(e)}startChange(e){this.changeCount=0,this.doChange(e),this.safty=setTimeout(()=>{this.doNextChange(e)},400)}doChange(e){this.change(e)}handlePointermove(e){this.findChange(e)}handlePointerup(e){this.buttons.releasePointerCapture(e.pointerId),cancelAnimationFrame(this.nextChange),clearTimeout(this.safty),this.managedInput=!1,this.setValue()}doNextChange(e){return this.changeCount+=1,this.changeCount%FRAMES_PER_CHANGE===0&&this.doChange(e),requestAnimationFrame(()=>{this.nextChange=this.doNextChange(e)})}stepBy(e){if(this.disabled||this.readonly)return;const t=typeof this.min!="undefined"?this.min:0;let i=this.value;i+=e*this._step,isNaN(this.value)&&(i=t),i=this.valueWithLimits(i),this.requestUpdate(),this._value=this.validateInput(i),this.inputElement.value=this.numberFormatter.format(i),this.inputElement.dispatchEvent(new Event("input",{bubbles:!0,composed:!0})),this.indeterminate=!1,this.focus()}increment(e=1){this.stepBy(1*e)}decrement(e=1){this.stepBy(-1*e)}handleKeydown(e){if(!this.isComposing)switch(e.code){case"ArrowUp":e.preventDefault(),this.increment(e.shiftKey?this.stepModifier:1),this.setValue();break;case"ArrowDown":e.preventDefault(),this.decrement(e.shiftKey?this.stepModifier:1),this.setValue();break}}onScroll(e){e.preventDefault(),this.managedInput=!0;const t=e.shiftKey?e.deltaX/Math.abs(e.deltaX):e.deltaY/Math.abs(e.deltaY);t!==0&&!isNaN(t)&&(this.stepBy(t*(e.shiftKey?this.stepModifier:1)),clearTimeout(this.queuedChangeEvent),this.queuedChangeEvent=setTimeout(()=>{this.setValue()},CHANGE_DEBOUNCE_MS)),this.managedInput=!1}onFocus(){super.onFocus(),this._trackingValue=this.inputValue,this.keyboardFocused=!this.readonly&&!0,this.addEventListener("wheel",this.onScroll,{passive:!1}),this.valueBeforeFocus=this.inputElement.value}onBlur(e){super.onBlur(e),this.keyboardFocused=!this.readonly&&!1,this.removeEventListener("wheel",this.onScroll),this.isIntentDecimal=!1}handleFocusin(){this.focused=!this.readonly&&!0,this.keyboardFocused=!this.readonly&&!0}handleFocusout(){this.focused=!this.readonly&&!1,this.keyboardFocused=!this.readonly&&!1}handleChange(){const e=this.convertValueToNumber(this.inputValue);if(this.wasIndeterminate&&(this.wasIndeterminate=!1,this.indeterminateValue=void 0,isNaN(e))){this.indeterminate=!0;return}this.setValue(e),this.inputElement.value=this.formattedValue}handleCompositionStart(){this.isComposing=!0}handleCompositionEnd(){this.isComposing=!1,requestAnimationFrame(()=>{this.inputElement.dispatchEvent(new Event("input",{composed:!0,bubbles:!0}))})}handleInputElementPointerdown(){this.hasRecentlyReceivedPointerDown=!0,this.updateComplete.then(()=>{requestAnimationFrame(()=>{this.hasRecentlyReceivedPointerDown=!1})})}handleInput(e){var h;if(this.isComposing){if(e.data){const n=this.convertValueToNumber(e.data);Number.isNaN(n)&&(this.inputElement.value=this.indeterminate?indeterminatePlaceholder:this._trackingValue,this.isComposing=!1)}e.stopPropagation();return}this.indeterminate&&(this.wasIndeterminate=!0,this.indeterminateValue=this.value,this.inputElement.value=this.inputElement.value.replace(indeterminatePlaceholder,"")),e.data&&this.decimalsChars.has(e.data)&&(this.isIntentDecimal=!0);const{value:t,selectionStart:i}=this.inputElement,s=t.split("").map(n=>remapMultiByteCharacters[n]||n).join("");if(this.numberParser.isValidPartialNumber(s)){this.lastCommitedValue=(h=this.lastCommitedValue)!=null?h:this.value;const n=this.convertValueToNumber(s);!s&&this.indeterminateValue?(this.indeterminate=!0,this._value=this.indeterminateValue):(this.indeterminate=!1,this._value=this.validateInput(n)),this._trackingValue=s,this.inputElement.value=s,this.inputElement.setSelectionRange(i,i);return}else this.inputElement.value=this.indeterminate?indeterminatePlaceholder:this._trackingValue,e.stopPropagation();const r=s.length,d=this._trackingValue.length,m=(i||r)-(r-d);this.inputElement.setSelectionRange(m,m)}valueWithLimits(e){let t=e;return typeof this.min!="undefined"&&(t=Math.max(this.min,t)),typeof this.max!="undefined"&&(t=Math.min(this.max,t)),t}validateInput(e){e=this.valueWithLimits(e);const t=e<0?-1:1;if(e*=t,this.step){const i=typeof this.min!="undefined"?this.min:0,s=parseFloat(this.valueFormatter.format((e-i)%this.step));if(s===0||(Math.round(s/this.step)===1?e+=this.step-s:e-=s),typeof this.max!="undefined")for(;e>this.max;)e-=this.step;e=parseFloat(this.valueFormatter.format(e))}return e*=t,e}get displayValue(){const e=this.focused?"":indeterminatePlaceholder;return this.indeterminate?e:this.formattedValue}clearNumberFormatterCache(){this._numberFormatter=void 0,this._numberParser=void 0}get numberFormatter(){if(!this._numberFormatter||!this._numberFormatterFocused){const{style:e,unit:t,unitDisplay:i,...s}=this.formatOptions;e!=="unit"&&(s.style=e),this._numberFormatterFocused=new c(this.languageResolver.language,s);try{this._numberFormatter=new c(this.languageResolver.language,this.formatOptions),this._forcedUnit="",this._numberFormatter.format(1)}catch(r){e==="unit"&&(this._forcedUnit=t),this._numberFormatter=this._numberFormatterFocused}}return this.focused?this._numberFormatterFocused:this._numberFormatter}clearValueFormatterCache(){this._valueFormatter=void 0}get valueFormatter(){if(!this._valueFormatter){const e=this.step&&this.step!=Math.floor(this.step)?this.step.toString().split(".")[1].length:0;this._valueFormatter=new c("en",{useGrouping:!1,maximumFractionDigits:e})}return this._valueFormatter}get numberParser(){if(!this._numberParser||!this._numberParserFocused){const{style:e,unit:t,unitDisplay:i,...s}=this.formatOptions;e!=="unit"&&(s.style=e),this._numberParserFocused=new v(this.languageResolver.language,s);try{this._numberParser=new v(this.languageResolver.language,this.formatOptions),this._forcedUnit="",this._numberParser.parse("0")}catch(r){e==="unit"&&(this._forcedUnit=t),this._numberParser=this._numberParserFocused}}return this.focused?this._numberParserFocused:this._numberParser}renderField(){return this.autocomplete="off",l`
|
|
18
|
+
${super.renderField()}
|
|
19
|
+
${this.hideStepper?C:l`
|
|
20
|
+
<span
|
|
21
|
+
class="buttons"
|
|
22
|
+
@focusin=${this.handleFocusin}
|
|
23
|
+
@focusout=${this.handleFocusout}
|
|
24
|
+
${P({start:["pointerdown",this.handlePointerdown],streamInside:[["pointermove","pointerenter","pointerleave","pointerover","pointerout"],this.handlePointermove],end:[["pointerup","pointercancel","pointerleave"],this.handlePointerup]})}
|
|
25
|
+
>
|
|
26
|
+
<sp-infield-button
|
|
27
|
+
inline="end"
|
|
28
|
+
block="start"
|
|
29
|
+
class="button step-up"
|
|
30
|
+
aria-hidden="true"
|
|
31
|
+
label=${"Increase "+this.appliedLabel}
|
|
32
|
+
size=${this.size}
|
|
33
|
+
tabindex="-1"
|
|
34
|
+
?focused=${this.focused}
|
|
35
|
+
?disabled=${this.disabled||this.readonly||typeof this.max!="undefined"&&this.value===this.max}
|
|
36
|
+
?quiet=${this.quiet}
|
|
37
|
+
>
|
|
38
|
+
${g[this.size]("Up")}
|
|
39
|
+
</sp-infield-button>
|
|
40
|
+
<sp-infield-button
|
|
41
|
+
inline="end"
|
|
42
|
+
block="end"
|
|
43
|
+
class="button step-down"
|
|
44
|
+
aria-hidden="true"
|
|
45
|
+
label=${"Decrease "+this.appliedLabel}
|
|
46
|
+
size=${this.size}
|
|
47
|
+
tabindex="-1"
|
|
48
|
+
?focused=${this.focused}
|
|
49
|
+
?disabled=${this.disabled||this.readonly||typeof this.min!="undefined"&&this.value===this.min}
|
|
50
|
+
?quiet=${this.quiet}
|
|
51
|
+
>
|
|
52
|
+
${g[this.size]("Down")}
|
|
53
|
+
</sp-infield-button>
|
|
54
|
+
</span>
|
|
55
|
+
`}
|
|
56
|
+
`}update(e){if((e.has("formatOptions")||e.has("resolvedLanguage"))&&this.clearNumberFormatterCache(),e.has("value")||e.has("max")||e.has("min")||e.has("step")){const t=this.numberParser.parse(this.formattedValue.replace(this._forcedUnit,""));this.value=t,this.clearValueFormatterCache()}super.update(e)}willUpdate(e){this.multiline=!1,e.has(V)&&this.clearNumberFormatterCache()}firstUpdated(e){super.firstUpdated(e),this.addEventListener("keydown",this.handleKeydown),this.addEventListener("compositionstart",this.handleCompositionStart),this.addEventListener("compositionend",this.handleCompositionEnd)}updated(e){if(!(!this.inputElement||!this.isConnected)){if(e.has("min")||e.has("formatOptions")){const t=typeof this.min!="undefined"&&this.min>=0,{maximumFractionDigits:i}=this.numberFormatter.resolvedOptions(),s=i&&i>0;let r="numeric";N()&&!t?r="text":(b()&&s||I()&&s&&t)&&(r="decimal"),this.inputElement.inputMode=r}e.has("focused")&&this.focused&&!this.hasRecentlyReceivedPointerDown&&this.formatOptions.unit&&this.setSelectionRange(0,this.displayValue.length)}}}a([E(".buttons")],NumberField.prototype,"buttons",2),a([u({type:Boolean,reflect:!0})],NumberField.prototype,"focused",2),a([u({type:Object,attribute:"format-options"})],NumberField.prototype,"formatOptions",2),a([u({type:Boolean,reflect:!0,attribute:"hide-stepper"})],NumberField.prototype,"hideStepper",2),a([u({type:Boolean,reflect:!0})],NumberField.prototype,"indeterminate",2),a([u({type:Boolean,reflect:!0,attribute:"keyboard-focused"})],NumberField.prototype,"keyboardFocused",2),a([u({type:Number})],NumberField.prototype,"max",2),a([u({type:Number})],NumberField.prototype,"min",2),a([u({type:Number})],NumberField.prototype,"step",2),a([u({type:Number,reflect:!0,attribute:"step-modifier"})],NumberField.prototype,"stepModifier",2),a([u({type:Number})],NumberField.prototype,"value",1);
|
|
57
|
+
//# sourceMappingURL=NumberField.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["NumberField.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 { NumberFormatter, NumberParser } from '@internationalized/number';\nimport {\n CSSResultArray,\n html,\n nothing,\n PropertyValues,\n TemplateResult,\n} from '@spectrum-web-components/base';\nimport {\n property,\n query,\n} from '@spectrum-web-components/base/src/decorators.js';\nimport { streamingListener } from '@spectrum-web-components/base/src/streaming-listener.js';\nimport {\n LanguageResolutionController,\n languageResolverUpdatedSymbol,\n} from '@spectrum-web-components/reactive-controllers/src/LanguageResolution.js';\n\nimport chevronStyles from '@spectrum-web-components/icon/src/spectrum-icon-chevron.css.js';\nimport '@spectrum-web-components/icons-ui/icons/sp-icon-chevron100.js';\nimport '@spectrum-web-components/icons-ui/icons/sp-icon-chevron200.js';\nimport '@spectrum-web-components/icons-ui/icons/sp-icon-chevron50.js';\nimport '@spectrum-web-components/icons-ui/icons/sp-icon-chevron75.js';\nimport '@spectrum-web-components/infield-button/sp-infield-button.js';\nimport {\n isAndroid,\n isIOS,\n isIPhone,\n} from '@spectrum-web-components/shared/src/platform.js';\nimport { TextfieldBase } from '@spectrum-web-components/textfield';\nimport chevronIconOverrides from '@spectrum-web-components/icon/src/icon-chevron-overrides.css.js';\nimport styles from './number-field.css.js';\n\nexport const FRAMES_PER_CHANGE = 5;\n// Debounce duration for inserting a `change` event after a batch of `wheel` originating `input` events.\nexport const CHANGE_DEBOUNCE_MS = 100;\nexport const indeterminatePlaceholder = '-';\nexport const remapMultiByteCharacters: Record<string, string> = {\n '\uFF11': '1',\n '\uFF12': '2',\n '\uFF13': '3',\n '\uFF14': '4',\n '\uFF15': '5',\n '\uFF16': '6',\n '\uFF17': '7',\n '\uFF18': '8',\n '\uFF19': '9',\n '\uFF10': '0',\n '\u3001': ',',\n '\uFF0C': ',',\n '\u3002': '.',\n '\uFF0E': '.',\n '\uFF05': '%',\n '\uFF0B': '+',\n \u30FC: '-',\n \u4E00: '1',\n \u4E8C: '2',\n \u4E09: '3',\n \u56DB: '4',\n \u4E94: '5',\n \u516D: '6',\n \u4E03: '7',\n \u516B: '8',\n \u4E5D: '9',\n \u96F6: '0',\n};\nconst chevronIcon: Record<string, (dir: 'Down' | 'Up') => TemplateResult> = {\n s: (dir) => html`\n <sp-icon-chevron50\n class=\"stepper-icon spectrum-UIIcon-Chevron${dir}50\"\n ></sp-icon-chevron50>\n `,\n m: (dir) => html`\n <sp-icon-chevron75\n class=\"stepper-icon spectrum-UIIcon-Chevron${dir}75\"\n ></sp-icon-chevron75>\n `,\n l: (dir) => html`\n <sp-icon-chevron100\n class=\"stepper-icon spectrum-UIIcon-Chevron${dir}100\"\n ></sp-icon-chevron100>\n `,\n xl: (dir) => html`\n <sp-icon-chevron200\n class=\"stepper-icon spectrum-UIIcon-Chevron${dir}200\"\n ></sp-icon-chevron200>\n `,\n};\n\n/**\n * @element sp-number-field\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 NumberField extends TextfieldBase {\n public static override get styles(): CSSResultArray {\n return [...super.styles, styles, chevronStyles, chevronIconOverrides];\n }\n\n @query('.buttons')\n private buttons!: HTMLDivElement;\n\n @property({ type: Boolean, reflect: true })\n public override focused = false;\n\n _forcedUnit = '';\n\n /**\n * An `<sp-number-field>` element will process its numeric value with\n * `new Intl.NumberFormat(this.resolvedLanguage, this.formatOptions).format(this.valueAsNumber)`\n * in order to prepare it for visual delivery in the input. In order to customize this\n * processing supply your own `Intl.NumberFormatOptions` object here.\n *\n * See: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat/NumberFormat\n */\n @property({ type: Object, attribute: 'format-options' })\n public formatOptions: Intl.NumberFormatOptions = {};\n\n /**\n * Whether the stepper UI is hidden or not.\n */\n @property({ type: Boolean, reflect: true, attribute: 'hide-stepper' })\n public hideStepper = false;\n\n @property({ type: Boolean, reflect: true })\n public indeterminate = false;\n\n @property({ type: Boolean, reflect: true, attribute: 'keyboard-focused' })\n public keyboardFocused = false;\n\n @property({ type: Number })\n public max?: number;\n\n @property({ type: Number })\n public min?: number;\n\n /**\n * The distance by which to alter the value of the element when taking a \"step\".\n *\n * When `this.formatOptions.style === 'percentage'` the default step will be\n * set to 0.01 unless otherwise supplied to the element.\n */\n @property({ type: Number })\n public step?: number;\n\n public managedInput = false;\n\n @property({ type: Number, reflect: true, attribute: 'step-modifier' })\n public stepModifier = 10;\n\n @property({ type: Number })\n public override set value(rawValue: number) {\n const value = this.validateInput(rawValue);\n if (value === this.value) {\n return;\n }\n this.lastCommitedValue = value;\n const oldValue = this._value;\n this._value = value;\n this.requestUpdate('value', oldValue);\n }\n\n public override get value(): number {\n return this._value;\n }\n\n private get inputValue(): string {\n return this.indeterminate\n ? this.formattedValue\n : this.inputElement.value;\n }\n\n public override _value = NaN;\n private _trackingValue = '';\n private lastCommitedValue?: number;\n\n private setValue(newValue: number = this.value): void {\n // Capture previous value for accurate IME change detection\n const previousValue = this.lastCommitedValue;\n\n this.value = newValue;\n\n if (\n typeof previousValue === 'undefined' ||\n previousValue === this.value\n ) {\n // Do not announce when the value is unchanged.\n return;\n }\n\n this.lastCommitedValue = this.value;\n\n this.dispatchEvent(\n new Event('change', { bubbles: true, composed: true })\n );\n }\n\n /**\n * Retreive the value of the element parsed to a Number.\n */\n public get valueAsString(): string {\n return this._value.toString();\n }\n\n public set valueAsString(value: string) {\n this.value = this.numberParser.parse(value);\n }\n\n public get formattedValue(): string {\n if (isNaN(this.value)) return '';\n return (\n this.numberFormatter.format(this.value) +\n (this.focused ? '' : this._forcedUnit)\n );\n }\n\n private decimalsChars = new Set(['.', ',']);\n private valueBeforeFocus: string = '';\n private isIntentDecimal: boolean = false;\n\n private convertValueToNumber(inputValue: string): number {\n // Normalize full-width characters to their ASCII equivalents\n let normalizedValue = inputValue\n .split('')\n .map((char) => remapMultiByteCharacters[char] || char)\n .join('');\n\n const separators = this.valueBeforeFocus\n .split('')\n .filter((char) => this.decimalsChars.has(char));\n const uniqueSeparators = new Set(separators);\n\n if (\n isIOS() &&\n this.inputElement.inputMode === 'decimal' &&\n normalizedValue !== this.valueBeforeFocus\n ) {\n const parts = this.numberFormatter.formatToParts(1000.1);\n\n const replacementDecimal = parts.find(\n (part) => part.type === 'decimal'\n )!.value;\n\n for (const separator of uniqueSeparators) {\n const isDecimalSeparator = separator === replacementDecimal;\n if (!isDecimalSeparator && !this.isIntentDecimal) {\n normalizedValue = normalizedValue.replace(\n new RegExp(separator, 'g'),\n ''\n );\n }\n }\n\n let hasReplacedDecimal = false;\n const valueChars = normalizedValue.split('');\n for (let index = valueChars.length - 1; index >= 0; index--) {\n const char = valueChars[index];\n if (this.decimalsChars.has(char)) {\n if (!hasReplacedDecimal) {\n valueChars[index] = replacementDecimal;\n hasReplacedDecimal = true;\n } else valueChars[index] = '';\n }\n }\n normalizedValue = valueChars.join('');\n }\n return this.numberParser.parse(normalizedValue);\n }\n private get _step(): number {\n if (typeof this.step !== 'undefined') {\n return this.step;\n }\n if (this.formatOptions?.style === 'percent') {\n return 0.01;\n }\n return 1;\n }\n\n private nextChange!: number;\n private changeCount = 0;\n private findChange!: (event: PointerEvent) => void;\n private change!: (event: PointerEvent) => void;\n private safty!: number;\n private languageResolver = new LanguageResolutionController(this);\n\n private handlePointerdown(event: PointerEvent): void {\n if (event.button !== 0) {\n event.preventDefault();\n return;\n }\n this.managedInput = true;\n this.buttons.setPointerCapture(event.pointerId);\n const stepUpRect = this.buttons.children[0].getBoundingClientRect();\n const stepDownRect = this.buttons.children[1].getBoundingClientRect();\n this.findChange = (event: PointerEvent) => {\n if (\n event.clientX >= stepUpRect.x &&\n event.clientY >= stepUpRect.y &&\n event.clientX <= stepUpRect.x + stepUpRect.width &&\n event.clientY <= stepUpRect.y + stepUpRect.height\n ) {\n this.change = (event: PointerEvent) =>\n this.increment(event.shiftKey ? this.stepModifier : 1);\n } else if (\n event.clientX >= stepDownRect.x &&\n event.clientY >= stepDownRect.y &&\n event.clientX <= stepDownRect.x + stepDownRect.width &&\n event.clientY <= stepDownRect.y + stepDownRect.height\n ) {\n this.change = (event: PointerEvent) =>\n this.decrement(event.shiftKey ? this.stepModifier : 1);\n }\n };\n this.findChange(event);\n this.startChange(event);\n }\n\n private startChange(event: PointerEvent): void {\n this.changeCount = 0;\n this.doChange(event);\n this.safty = setTimeout(() => {\n this.doNextChange(event);\n }, 400) as unknown as number;\n }\n\n private doChange(event: PointerEvent): void {\n this.change(event);\n }\n\n private handlePointermove(event: PointerEvent): void {\n this.findChange(event);\n }\n\n private handlePointerup(event: PointerEvent): void {\n this.buttons.releasePointerCapture(event.pointerId);\n cancelAnimationFrame(this.nextChange);\n clearTimeout(this.safty);\n this.managedInput = false;\n this.setValue();\n }\n\n private doNextChange(event: PointerEvent): number {\n this.changeCount += 1;\n if (this.changeCount % FRAMES_PER_CHANGE === 0) {\n this.doChange(event);\n }\n return requestAnimationFrame(() => {\n this.nextChange = this.doNextChange(event);\n });\n }\n\n private stepBy(count: number): void {\n if (this.disabled || this.readonly) {\n return;\n }\n const min = typeof this.min !== 'undefined' ? this.min : 0;\n let value = this.value;\n value += count * this._step;\n if (isNaN(this.value)) {\n value = min;\n }\n value = this.valueWithLimits(value);\n\n this.requestUpdate();\n this._value = this.validateInput(value);\n this.inputElement.value = this.numberFormatter.format(value);\n\n this.inputElement.dispatchEvent(\n new Event('input', { bubbles: true, composed: true })\n );\n this.indeterminate = false;\n this.focus();\n }\n\n private increment(factor = 1): void {\n this.stepBy(1 * factor);\n }\n\n private decrement(factor = 1): void {\n this.stepBy(-1 * factor);\n }\n\n private handleKeydown(event: KeyboardEvent): void {\n if (this.isComposing) return;\n switch (event.code) {\n case 'ArrowUp':\n event.preventDefault();\n this.increment(event.shiftKey ? this.stepModifier : 1);\n this.setValue();\n break;\n case 'ArrowDown':\n event.preventDefault();\n this.decrement(event.shiftKey ? this.stepModifier : 1);\n this.setValue();\n break;\n }\n }\n\n private queuedChangeEvent!: number;\n\n protected onScroll(event: WheelEvent): void {\n event.preventDefault();\n this.managedInput = true;\n const direction = event.shiftKey\n ? event.deltaX / Math.abs(event.deltaX)\n : event.deltaY / Math.abs(event.deltaY);\n if (direction !== 0 && !isNaN(direction)) {\n this.stepBy(direction * (event.shiftKey ? this.stepModifier : 1));\n clearTimeout(this.queuedChangeEvent);\n this.queuedChangeEvent = setTimeout(() => {\n this.setValue();\n }, CHANGE_DEBOUNCE_MS) as unknown as number;\n }\n this.managedInput = false;\n }\n\n protected override onFocus(): void {\n super.onFocus();\n this._trackingValue = this.inputValue;\n this.keyboardFocused = !this.readonly && true;\n this.addEventListener('wheel', this.onScroll, { passive: false });\n this.valueBeforeFocus = this.inputElement.value;\n }\n\n protected override onBlur(_event: FocusEvent): void {\n super.onBlur(_event);\n this.keyboardFocused = !this.readonly && false;\n this.removeEventListener('wheel', this.onScroll);\n this.isIntentDecimal = false;\n }\n\n private handleFocusin(): void {\n this.focused = !this.readonly && true;\n this.keyboardFocused = !this.readonly && true;\n }\n\n private handleFocusout(): void {\n this.focused = !this.readonly && false;\n this.keyboardFocused = !this.readonly && false;\n }\n\n private wasIndeterminate = false;\n private indeterminateValue?: number;\n\n protected override handleChange(): void {\n const value = this.convertValueToNumber(this.inputValue);\n if (this.wasIndeterminate) {\n this.wasIndeterminate = false;\n this.indeterminateValue = undefined;\n if (isNaN(value)) {\n this.indeterminate = true;\n return;\n }\n }\n this.setValue(value);\n this.inputElement.value = this.formattedValue;\n }\n\n protected handleCompositionStart(): void {\n this.isComposing = true;\n }\n\n protected handleCompositionEnd(): void {\n this.isComposing = false;\n requestAnimationFrame(() => {\n this.inputElement.dispatchEvent(\n new Event('input', {\n composed: true,\n bubbles: true,\n })\n );\n });\n }\n\n private hasRecentlyReceivedPointerDown = false;\n\n protected override handleInputElementPointerdown(): void {\n this.hasRecentlyReceivedPointerDown = true;\n this.updateComplete.then(() => {\n requestAnimationFrame(() => {\n this.hasRecentlyReceivedPointerDown = false;\n });\n });\n }\n\n protected override handleInput(event: InputEvent): void {\n if (this.isComposing) {\n // If user actually types a new character.\n if (event.data) {\n // Don't allow non-numeric characters even in composing mode.\n const partialValue = this.convertValueToNumber(event.data);\n\n if (Number.isNaN(partialValue)) {\n this.inputElement.value = this.indeterminate\n ? indeterminatePlaceholder\n : this._trackingValue;\n\n this.isComposing = false;\n }\n }\n\n event.stopPropagation();\n return;\n }\n if (this.indeterminate) {\n this.wasIndeterminate = true;\n this.indeterminateValue = this.value;\n this.inputElement.value = this.inputElement.value.replace(\n indeterminatePlaceholder,\n ''\n );\n }\n if (event.data && this.decimalsChars.has(event.data))\n this.isIntentDecimal = true;\n\n const { value: originalValue, selectionStart } = this.inputElement;\n const value = originalValue\n .split('')\n .map((char) => remapMultiByteCharacters[char] || char)\n .join('');\n\n if (this.numberParser.isValidPartialNumber(value)) {\n // Use starting value as this.value is the `input` value.\n this.lastCommitedValue = this.lastCommitedValue ?? this.value;\n const valueAsNumber = this.convertValueToNumber(value);\n if (!value && this.indeterminateValue) {\n this.indeterminate = true;\n this._value = this.indeterminateValue;\n } else {\n this.indeterminate = false;\n this._value = this.validateInput(valueAsNumber);\n }\n this._trackingValue = value;\n this.inputElement.value = value;\n this.inputElement.setSelectionRange(selectionStart, selectionStart);\n return;\n } else {\n this.inputElement.value = this.indeterminate\n ? indeterminatePlaceholder\n : this._trackingValue;\n\n // Don't emit input event when the character is invalid.\n event.stopPropagation();\n }\n const currentLength = value.length;\n const previousLength = this._trackingValue.length;\n const nextSelectStart =\n (selectionStart || currentLength) -\n (currentLength - previousLength);\n this.inputElement.setSelectionRange(nextSelectStart, nextSelectStart);\n }\n\n private valueWithLimits(nextValue: number): number {\n let value = nextValue;\n if (typeof this.min !== 'undefined') {\n value = Math.max(this.min, value);\n }\n if (typeof this.max !== 'undefined') {\n value = Math.min(this.max, value);\n }\n return value;\n }\n\n private validateInput(value: number): number {\n value = this.valueWithLimits(value);\n const signMultiplier = value < 0 ? -1 : 1; // 'signMultiplier' adjusts 'value' for 'validateInput' and reverts it before returning.\n value *= signMultiplier;\n\n // Step shouldn't validate when 0...\n if (this.step) {\n const min = typeof this.min !== 'undefined' ? this.min : 0;\n const moduloStep = parseFloat(\n this.valueFormatter.format((value - min) % this.step)\n );\n const fallsOnStep = moduloStep === 0;\n if (!fallsOnStep) {\n const overUnder = Math.round(moduloStep / this.step);\n if (overUnder === 1) {\n value += this.step - moduloStep;\n } else {\n value -= moduloStep;\n }\n }\n if (typeof this.max !== 'undefined') {\n while (value > this.max) {\n value -= this.step;\n }\n }\n value = parseFloat(this.valueFormatter.format(value));\n }\n value *= signMultiplier;\n return value;\n }\n\n protected override get displayValue(): string {\n const indeterminateValue = this.focused ? '' : indeterminatePlaceholder;\n return this.indeterminate ? indeterminateValue : this.formattedValue;\n }\n\n protected clearNumberFormatterCache(): void {\n this._numberFormatter = undefined;\n this._numberParser = undefined;\n }\n\n protected get numberFormatter(): NumberFormatter {\n if (!this._numberFormatter || !this._numberFormatterFocused) {\n const {\n style,\n unit,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n unitDisplay,\n ...formatOptionsNoUnit\n } = this.formatOptions;\n if (style !== 'unit') {\n (formatOptionsNoUnit as Intl.NumberFormatOptions).style = style;\n }\n this._numberFormatterFocused = new NumberFormatter(\n this.languageResolver.language,\n formatOptionsNoUnit\n );\n try {\n this._numberFormatter = new NumberFormatter(\n this.languageResolver.language,\n this.formatOptions\n );\n this._forcedUnit = '';\n this._numberFormatter.format(1);\n } catch (error) {\n if (style === 'unit') {\n this._forcedUnit = unit as string;\n }\n this._numberFormatter = this._numberFormatterFocused;\n }\n }\n return this.focused\n ? this._numberFormatterFocused\n : this._numberFormatter;\n }\n\n protected clearValueFormatterCache(): void {\n this._valueFormatter = undefined;\n }\n protected get valueFormatter(): NumberFormatter {\n if (!this._valueFormatter) {\n const digitsAfterDecimal = this.step\n ? this.step != Math.floor(this.step)\n ? this.step.toString().split('.')[1].length\n : 0\n : 0;\n this._valueFormatter = new NumberFormatter('en', {\n useGrouping: false,\n maximumFractionDigits: digitsAfterDecimal,\n });\n }\n\n return this._valueFormatter;\n }\n private _numberFormatter?: NumberFormatter;\n private _numberFormatterFocused?: NumberFormatter;\n private _valueFormatter?: NumberFormatter;\n protected get numberParser(): NumberParser {\n if (!this._numberParser || !this._numberParserFocused) {\n const {\n style,\n unit,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n unitDisplay,\n ...formatOptionsNoUnit\n } = this.formatOptions;\n if (style !== 'unit') {\n (formatOptionsNoUnit as Intl.NumberFormatOptions).style = style;\n }\n this._numberParserFocused = new NumberParser(\n this.languageResolver.language,\n formatOptionsNoUnit\n );\n try {\n this._numberParser = new NumberParser(\n this.languageResolver.language,\n this.formatOptions\n );\n this._forcedUnit = '';\n this._numberParser.parse('0');\n } catch (error) {\n if (style === 'unit') {\n this._forcedUnit = unit as string;\n }\n this._numberParser = this._numberParserFocused;\n }\n }\n return this.focused ? this._numberParserFocused : this._numberParser;\n }\n\n applyFocusElementLabel = (value?: string): void => {\n this.appliedLabel = value;\n };\n\n private _numberParser?: NumberParser;\n private _numberParserFocused?: NumberParser;\n\n protected override renderField(): TemplateResult {\n this.autocomplete = 'off';\n return html`\n ${super.renderField()}\n ${this.hideStepper\n ? nothing\n : html`\n <span\n class=\"buttons\"\n @focusin=${this.handleFocusin}\n @focusout=${this.handleFocusout}\n ${streamingListener({\n start: ['pointerdown', this.handlePointerdown],\n streamInside: [\n [\n 'pointermove',\n 'pointerenter',\n 'pointerleave',\n 'pointerover',\n 'pointerout',\n ],\n this.handlePointermove,\n ],\n end: [\n [\n 'pointerup',\n 'pointercancel',\n 'pointerleave',\n ],\n this.handlePointerup,\n ],\n })}\n >\n <sp-infield-button\n inline=\"end\"\n block=\"start\"\n class=\"button step-up\"\n aria-hidden=\"true\"\n label=${'Increase ' + this.appliedLabel}\n size=${this.size}\n tabindex=\"-1\"\n ?focused=${this.focused}\n ?disabled=${this.disabled ||\n this.readonly ||\n (typeof this.max !== 'undefined' &&\n this.value === this.max)}\n ?quiet=${this.quiet}\n >\n ${chevronIcon[this.size]('Up')}\n </sp-infield-button>\n <sp-infield-button\n inline=\"end\"\n block=\"end\"\n class=\"button step-down\"\n aria-hidden=\"true\"\n label=${'Decrease ' + this.appliedLabel}\n size=${this.size}\n tabindex=\"-1\"\n ?focused=${this.focused}\n ?disabled=${this.disabled ||\n this.readonly ||\n (typeof this.min !== 'undefined' &&\n this.value === this.min)}\n ?quiet=${this.quiet}\n >\n ${chevronIcon[this.size]('Down')}\n </sp-infield-button>\n </span>\n `}\n `;\n }\n\n protected override update(changes: PropertyValues): void {\n if (changes.has('formatOptions') || changes.has('resolvedLanguage')) {\n this.clearNumberFormatterCache();\n }\n if (\n changes.has('value') ||\n changes.has('max') ||\n changes.has('min') ||\n changes.has('step')\n ) {\n const value = this.numberParser.parse(\n this.formattedValue.replace(this._forcedUnit, '')\n );\n this.value = value;\n this.clearValueFormatterCache();\n }\n super.update(changes);\n }\n\n public override willUpdate(changes: PropertyValues): void {\n this.multiline = false;\n if (changes.has(languageResolverUpdatedSymbol)) {\n this.clearNumberFormatterCache();\n }\n }\n\n private isComposing = false;\n\n protected override firstUpdated(changes: PropertyValues): void {\n super.firstUpdated(changes);\n this.addEventListener('keydown', this.handleKeydown);\n this.addEventListener('compositionstart', this.handleCompositionStart);\n this.addEventListener('compositionend', this.handleCompositionEnd);\n }\n\n protected override updated(changes: PropertyValues<this>): void {\n if (!this.inputElement || !this.isConnected) {\n // Prevent race conditions if inputElement is removed from DOM while a queued update is still running.\n return;\n }\n\n if (changes.has('min') || changes.has('formatOptions')) {\n const hasOnlyPositives =\n typeof this.min !== 'undefined' && this.min >= 0;\n\n const { maximumFractionDigits } =\n this.numberFormatter.resolvedOptions();\n const hasDecimals =\n maximumFractionDigits && maximumFractionDigits > 0;\n\n let inputMode = 'numeric';\n /* c8 ignore next 5 */\n // iPhone doesn't have a minus sign in either numeric or decimal.\n if (isIPhone() && !hasOnlyPositives) inputMode = 'text';\n else if (isIOS() && hasDecimals) inputMode = 'decimal';\n // Android numeric has both a decimal point and minus key. Decimal does not have a minus key.\n else if (isAndroid() && hasDecimals && hasOnlyPositives)\n inputMode = 'decimal';\n\n this.inputElement.inputMode = inputMode;\n }\n if (\n changes.has('focused') &&\n this.focused &&\n !this.hasRecentlyReceivedPointerDown &&\n !!this.formatOptions.unit\n ) {\n // Normalize keyboard focus entry between unit and non-unit bearing Number Fields\n this.setSelectionRange(0, this.displayValue.length);\n }\n }\n}\n"],
|
|
5
|
+
"mappings": "qNAYA,OAAS,mBAAAA,EAAiB,gBAAAC,MAAoB,4BAC9C,OAEI,QAAAC,EACA,WAAAC,MAGG,gCACP,OACI,YAAAC,EACA,SAAAC,MACG,kDACP,OAAS,qBAAAC,MAAyB,0DAClC,OACI,gCAAAC,EACA,iCAAAC,MACG,0EAEP,OAAOC,MAAmB,iEAC1B,MAAO,gEACP,MAAO,gEACP,MAAO,+DACP,MAAO,+DACP,MAAO,+DACP,OACI,aAAAC,EACA,SAAAC,EACA,YAAAC,MACG,kDACP,OAAS,iBAAAC,MAAqB,qCAC9B,OAAOC,MAA0B,kEACjC,OAAOC,MAAY,wBAEZ,aAAM,kBAAoB,EAEpB,mBAAqB,IACrB,yBAA2B,IAC3B,yBAAmD,CAC5D,SAAK,IACL,SAAK,IACL,SAAK,IACL,SAAK,IACL,SAAK,IACL,SAAK,IACL,SAAK,IACL,SAAK,IACL,SAAK,IACL,SAAK,IACL,SAAK,IACL,SAAK,IACL,SAAK,IACL,SAAK,IACL,SAAK,IACL,SAAK,IACL,OAAG,IACH,OAAG,IACH,OAAG,IACH,OAAG,IACH,OAAG,IACH,OAAG,IACH,OAAG,IACH,OAAG,IACH,OAAG,IACH,OAAG,IACH,OAAG,GACP,EACA,MAAMC,EAAsE,CACxE,EAAIC,GAAQf;AAAA;AAAA,yDAEyCe,CAAG;AAAA;AAAA,MAGxD,EAAIA,GAAQf;AAAA;AAAA,yDAEyCe,CAAG;AAAA;AAAA,MAGxD,EAAIA,GAAQf;AAAA;AAAA,yDAEyCe,CAAG;AAAA;AAAA,MAGxD,GAAKA,GAAQf;AAAA;AAAA,yDAEwCe,CAAG;AAAA;AAAA,KAG5D,EAOO,aAAM,oBAAoBJ,CAAc,CAAxC,kCASH,KAAgB,QAAU,GAE1B,iBAAc,GAWd,KAAO,cAA0C,CAAC,EAMlD,KAAO,YAAc,GAGrB,KAAO,cAAgB,GAGvB,KAAO,gBAAkB,GAiBzB,KAAO,aAAe,GAGtB,KAAO,aAAe,GAwBtB,KAAgB,OAAS,IACzB,KAAQ,eAAiB,GA2CzB,KAAQ,cAAgB,IAAI,IAAI,CAAC,IAAK,GAAG,CAAC,EAC1C,KAAQ,iBAA2B,GACnC,KAAQ,gBAA2B,GA6DnC,KAAQ,YAAc,EAItB,KAAQ,iBAAmB,IAAIN,EAA6B,IAAI,EA8JhE,KAAQ,iBAAmB,GAiC3B,KAAQ,+BAAiC,GA2NzC,4BAA0BW,GAAyB,CAC/C,KAAK,aAAeA,CACxB,EAuGA,KAAQ,YAAc,GA/rBtB,WAA2B,QAAyB,CAChD,MAAO,CAAC,GAAG,MAAM,OAAQH,EAAQN,EAAeK,CAAoB,CACxE,CAsDA,IAAoB,MAAMK,EAAkB,CACxC,MAAMD,EAAQ,KAAK,cAAcC,CAAQ,EACzC,GAAID,IAAU,KAAK,MACf,OAEJ,KAAK,kBAAoBA,EACzB,MAAME,EAAW,KAAK,OACtB,KAAK,OAASF,EACd,KAAK,cAAc,QAASE,CAAQ,CACxC,CAEA,IAAoB,OAAgB,CAChC,OAAO,KAAK,MAChB,CAEA,IAAY,YAAqB,CAC7B,OAAO,KAAK,cACN,KAAK,eACL,KAAK,aAAa,KAC5B,CAMQ,SAASC,EAAmB,KAAK,MAAa,CAElD,MAAMC,EAAgB,KAAK,kBAE3B,KAAK,MAAQD,EAGT,SAAOC,GAAkB,aACzBA,IAAkB,KAAK,SAM3B,KAAK,kBAAoB,KAAK,MAE9B,KAAK,cACD,IAAI,MAAM,SAAU,CAAE,QAAS,GAAM,SAAU,EAAK,CAAC,CACzD,EACJ,CAKA,IAAW,eAAwB,CAC/B,OAAO,KAAK,OAAO,SAAS,CAChC,CAEA,IAAW,cAAcJ,EAAe,CACpC,KAAK,MAAQ,KAAK,aAAa,MAAMA,CAAK,CAC9C,CAEA,IAAW,gBAAyB,CAChC,OAAI,MAAM,KAAK,KAAK,EAAU,GAE1B,KAAK,gBAAgB,OAAO,KAAK,KAAK,GACrC,KAAK,QAAU,GAAK,KAAK,YAElC,CAMQ,qBAAqBK,EAA4B,CAErD,IAAIC,EAAkBD,EACjB,MAAM,EAAE,EACR,IAAKE,GAAS,yBAAyBA,CAAI,GAAKA,CAAI,EACpD,KAAK,EAAE,EAEZ,MAAMC,EAAa,KAAK,iBACnB,MAAM,EAAE,EACR,OAAQD,GAAS,KAAK,cAAc,IAAIA,CAAI,CAAC,EAC5CE,EAAmB,IAAI,IAAID,CAAU,EAE3C,GACIf,EAAM,GACN,KAAK,aAAa,YAAc,WAChCa,IAAoB,KAAK,iBAC3B,CAGE,MAAMI,EAFQ,KAAK,gBAAgB,cAAc,MAAM,EAEtB,KAC5BC,GAASA,EAAK,OAAS,SAC5B,EAAG,MAEH,UAAWC,KAAaH,EAEhB,EADuBG,IAAcF,IACd,CAAC,KAAK,kBAC7BJ,EAAkBA,EAAgB,QAC9B,IAAI,OAAOM,EAAW,GAAG,EACzB,EACJ,GAIR,IAAIC,EAAqB,GACzB,MAAMC,EAAaR,EAAgB,MAAM,EAAE,EAC3C,QAASS,EAAQD,EAAW,OAAS,EAAGC,GAAS,EAAGA,IAAS,CACzD,MAAMR,EAAOO,EAAWC,CAAK,EACzB,KAAK,cAAc,IAAIR,CAAI,IACtBM,EAGEC,EAAWC,CAAK,EAAI,IAFvBD,EAAWC,CAAK,EAAIL,EACpBG,EAAqB,IAGjC,CACAP,EAAkBQ,EAAW,KAAK,EAAE,CACxC,CACA,OAAO,KAAK,aAAa,MAAMR,CAAe,CAClD,CACA,IAAY,OAAgB,CAxRhC,IAAAU,EAyRQ,OAAI,OAAO,KAAK,MAAS,YACd,KAAK,OAEZA,EAAA,KAAK,gBAAL,YAAAA,EAAoB,SAAU,UACvB,IAEJ,CACX,CASQ,kBAAkBC,EAA2B,CACjD,GAAIA,EAAM,SAAW,EAAG,CACpBA,EAAM,eAAe,EACrB,MACJ,CACA,KAAK,aAAe,GACpB,KAAK,QAAQ,kBAAkBA,EAAM,SAAS,EAC9C,MAAMC,EAAa,KAAK,QAAQ,SAAS,CAAC,EAAE,sBAAsB,EAC5DC,EAAe,KAAK,QAAQ,SAAS,CAAC,EAAE,sBAAsB,EACpE,KAAK,WAAcF,GAAwB,CAEnCA,EAAM,SAAWC,EAAW,GAC5BD,EAAM,SAAWC,EAAW,GAC5BD,EAAM,SAAWC,EAAW,EAAIA,EAAW,OAC3CD,EAAM,SAAWC,EAAW,EAAIA,EAAW,OAE3C,KAAK,OAAUD,GACX,KAAK,UAAUA,EAAM,SAAW,KAAK,aAAe,CAAC,EAEzDA,EAAM,SAAWE,EAAa,GAC9BF,EAAM,SAAWE,EAAa,GAC9BF,EAAM,SAAWE,EAAa,EAAIA,EAAa,OAC/CF,EAAM,SAAWE,EAAa,EAAIA,EAAa,SAE/C,KAAK,OAAUF,GACX,KAAK,UAAUA,EAAM,SAAW,KAAK,aAAe,CAAC,EAEjE,EACA,KAAK,WAAWA,CAAK,EACrB,KAAK,YAAYA,CAAK,CAC1B,CAEQ,YAAYA,EAA2B,CAC3C,KAAK,YAAc,EACnB,KAAK,SAASA,CAAK,EACnB,KAAK,MAAQ,WAAW,IAAM,CAC1B,KAAK,aAAaA,CAAK,CAC3B,EAAG,GAAG,CACV,CAEQ,SAASA,EAA2B,CACxC,KAAK,OAAOA,CAAK,CACrB,CAEQ,kBAAkBA,EAA2B,CACjD,KAAK,WAAWA,CAAK,CACzB,CAEQ,gBAAgBA,EAA2B,CAC/C,KAAK,QAAQ,sBAAsBA,EAAM,SAAS,EAClD,qBAAqB,KAAK,UAAU,EACpC,aAAa,KAAK,KAAK,EACvB,KAAK,aAAe,GACpB,KAAK,SAAS,CAClB,CAEQ,aAAaA,EAA6B,CAC9C,YAAK,aAAe,EAChB,KAAK,YAAc,oBAAsB,GACzC,KAAK,SAASA,CAAK,EAEhB,sBAAsB,IAAM,CAC/B,KAAK,WAAa,KAAK,aAAaA,CAAK,CAC7C,CAAC,CACL,CAEQ,OAAOG,EAAqB,CAChC,GAAI,KAAK,UAAY,KAAK,SACtB,OAEJ,MAAMC,EAAM,OAAO,KAAK,KAAQ,YAAc,KAAK,IAAM,EACzD,IAAIrB,EAAQ,KAAK,MACjBA,GAASoB,EAAQ,KAAK,MAClB,MAAM,KAAK,KAAK,IAChBpB,EAAQqB,GAEZrB,EAAQ,KAAK,gBAAgBA,CAAK,EAElC,KAAK,cAAc,EACnB,KAAK,OAAS,KAAK,cAAcA,CAAK,EACtC,KAAK,aAAa,MAAQ,KAAK,gBAAgB,OAAOA,CAAK,EAE3D,KAAK,aAAa,cACd,IAAI,MAAM,QAAS,CAAE,QAAS,GAAM,SAAU,EAAK,CAAC,CACxD,EACA,KAAK,cAAgB,GACrB,KAAK,MAAM,CACf,CAEQ,UAAUsB,EAAS,EAAS,CAChC,KAAK,OAAO,EAAIA,CAAM,CAC1B,CAEQ,UAAUA,EAAS,EAAS,CAChC,KAAK,OAAO,GAAKA,CAAM,CAC3B,CAEQ,cAAcL,EAA4B,CAC9C,GAAI,MAAK,YACT,OAAQA,EAAM,KAAM,CAChB,IAAK,UACDA,EAAM,eAAe,EACrB,KAAK,UAAUA,EAAM,SAAW,KAAK,aAAe,CAAC,EACrD,KAAK,SAAS,EACd,MACJ,IAAK,YACDA,EAAM,eAAe,EACrB,KAAK,UAAUA,EAAM,SAAW,KAAK,aAAe,CAAC,EACrD,KAAK,SAAS,EACd,KACR,CACJ,CAIU,SAASA,EAAyB,CACxCA,EAAM,eAAe,EACrB,KAAK,aAAe,GACpB,MAAMM,EAAYN,EAAM,SAClBA,EAAM,OAAS,KAAK,IAAIA,EAAM,MAAM,EACpCA,EAAM,OAAS,KAAK,IAAIA,EAAM,MAAM,EACtCM,IAAc,GAAK,CAAC,MAAMA,CAAS,IACnC,KAAK,OAAOA,GAAaN,EAAM,SAAW,KAAK,aAAe,EAAE,EAChE,aAAa,KAAK,iBAAiB,EACnC,KAAK,kBAAoB,WAAW,IAAM,CACtC,KAAK,SAAS,CAClB,EAAG,kBAAkB,GAEzB,KAAK,aAAe,EACxB,CAEmB,SAAgB,CAC/B,MAAM,QAAQ,EACd,KAAK,eAAiB,KAAK,WAC3B,KAAK,gBAAkB,CAAC,KAAK,UAAY,GACzC,KAAK,iBAAiB,QAAS,KAAK,SAAU,CAAE,QAAS,EAAM,CAAC,EAChE,KAAK,iBAAmB,KAAK,aAAa,KAC9C,CAEmB,OAAOO,EAA0B,CAChD,MAAM,OAAOA,CAAM,EACnB,KAAK,gBAAkB,CAAC,KAAK,UAAY,GACzC,KAAK,oBAAoB,QAAS,KAAK,QAAQ,EAC/C,KAAK,gBAAkB,EAC3B,CAEQ,eAAsB,CAC1B,KAAK,QAAU,CAAC,KAAK,UAAY,GACjC,KAAK,gBAAkB,CAAC,KAAK,UAAY,EAC7C,CAEQ,gBAAuB,CAC3B,KAAK,QAAU,CAAC,KAAK,UAAY,GACjC,KAAK,gBAAkB,CAAC,KAAK,UAAY,EAC7C,CAKmB,cAAqB,CACpC,MAAMxB,EAAQ,KAAK,qBAAqB,KAAK,UAAU,EACvD,GAAI,KAAK,mBACL,KAAK,iBAAmB,GACxB,KAAK,mBAAqB,OACtB,MAAMA,CAAK,GAAG,CACd,KAAK,cAAgB,GACrB,MACJ,CAEJ,KAAK,SAASA,CAAK,EACnB,KAAK,aAAa,MAAQ,KAAK,cACnC,CAEU,wBAA+B,CACrC,KAAK,YAAc,EACvB,CAEU,sBAA6B,CACnC,KAAK,YAAc,GACnB,sBAAsB,IAAM,CACxB,KAAK,aAAa,cACd,IAAI,MAAM,QAAS,CACf,SAAU,GACV,QAAS,EACb,CAAC,CACL,CACJ,CAAC,CACL,CAImB,+BAAsC,CACrD,KAAK,+BAAiC,GACtC,KAAK,eAAe,KAAK,IAAM,CAC3B,sBAAsB,IAAM,CACxB,KAAK,+BAAiC,EAC1C,CAAC,CACL,CAAC,CACL,CAEmB,YAAYiB,EAAyB,CAjf5D,IAAAD,EAkfQ,GAAI,KAAK,YAAa,CAElB,GAAIC,EAAM,KAAM,CAEZ,MAAMQ,EAAe,KAAK,qBAAqBR,EAAM,IAAI,EAErD,OAAO,MAAMQ,CAAY,IACzB,KAAK,aAAa,MAAQ,KAAK,cACzB,yBACA,KAAK,eAEX,KAAK,YAAc,GAE3B,CAEAR,EAAM,gBAAgB,EACtB,MACJ,CACI,KAAK,gBACL,KAAK,iBAAmB,GACxB,KAAK,mBAAqB,KAAK,MAC/B,KAAK,aAAa,MAAQ,KAAK,aAAa,MAAM,QAC9C,yBACA,EACJ,GAEAA,EAAM,MAAQ,KAAK,cAAc,IAAIA,EAAM,IAAI,IAC/C,KAAK,gBAAkB,IAE3B,KAAM,CAAE,MAAOS,EAAe,eAAAC,CAAe,EAAI,KAAK,aAChD3B,EAAQ0B,EACT,MAAM,EAAE,EACR,IAAKnB,GAAS,yBAAyBA,CAAI,GAAKA,CAAI,EACpD,KAAK,EAAE,EAEZ,GAAI,KAAK,aAAa,qBAAqBP,CAAK,EAAG,CAE/C,KAAK,mBAAoBgB,EAAA,KAAK,oBAAL,KAAAA,EAA0B,KAAK,MACxD,MAAMY,EAAgB,KAAK,qBAAqB5B,CAAK,EACjD,CAACA,GAAS,KAAK,oBACf,KAAK,cAAgB,GACrB,KAAK,OAAS,KAAK,qBAEnB,KAAK,cAAgB,GACrB,KAAK,OAAS,KAAK,cAAc4B,CAAa,GAElD,KAAK,eAAiB5B,EACtB,KAAK,aAAa,MAAQA,EAC1B,KAAK,aAAa,kBAAkB2B,EAAgBA,CAAc,EAClE,MACJ,MACI,KAAK,aAAa,MAAQ,KAAK,cACzB,yBACA,KAAK,eAGXV,EAAM,gBAAgB,EAE1B,MAAMY,EAAgB7B,EAAM,OACtB8B,EAAiB,KAAK,eAAe,OACrCC,GACDJ,GAAkBE,IAClBA,EAAgBC,GACrB,KAAK,aAAa,kBAAkBC,EAAiBA,CAAe,CACxE,CAEQ,gBAAgBC,EAA2B,CAC/C,IAAIhC,EAAQgC,EACZ,OAAI,OAAO,KAAK,KAAQ,cACpBhC,EAAQ,KAAK,IAAI,KAAK,IAAKA,CAAK,GAEhC,OAAO,KAAK,KAAQ,cACpBA,EAAQ,KAAK,IAAI,KAAK,IAAKA,CAAK,GAE7BA,CACX,CAEQ,cAAcA,EAAuB,CACzCA,EAAQ,KAAK,gBAAgBA,CAAK,EAClC,MAAMiC,EAAiBjC,EAAQ,EAAI,GAAK,EAIxC,GAHAA,GAASiC,EAGL,KAAK,KAAM,CACX,MAAMZ,EAAM,OAAO,KAAK,KAAQ,YAAc,KAAK,IAAM,EACnDa,EAAa,WACf,KAAK,eAAe,QAAQlC,EAAQqB,GAAO,KAAK,IAAI,CACxD,EAUA,GAToBa,IAAe,IAEb,KAAK,MAAMA,EAAa,KAAK,IAAI,IACjC,EACdlC,GAAS,KAAK,KAAOkC,EAErBlC,GAASkC,GAGb,OAAO,KAAK,KAAQ,YACpB,KAAOlC,EAAQ,KAAK,KAChBA,GAAS,KAAK,KAGtBA,EAAQ,WAAW,KAAK,eAAe,OAAOA,CAAK,CAAC,CACxD,CACA,OAAAA,GAASiC,EACFjC,CACX,CAEA,IAAuB,cAAuB,CAC1C,MAAMmC,EAAqB,KAAK,QAAU,GAAK,yBAC/C,OAAO,KAAK,cAAgBA,EAAqB,KAAK,cAC1D,CAEU,2BAAkC,CACxC,KAAK,iBAAmB,OACxB,KAAK,cAAgB,MACzB,CAEA,IAAc,iBAAmC,CAC7C,GAAI,CAAC,KAAK,kBAAoB,CAAC,KAAK,wBAAyB,CACzD,KAAM,CACF,MAAAC,EACA,KAAAC,EAEA,YAAAC,EACA,GAAGC,CACP,EAAI,KAAK,cACLH,IAAU,SACTG,EAAiD,MAAQH,GAE9D,KAAK,wBAA0B,IAAItD,EAC/B,KAAK,iBAAiB,SACtByD,CACJ,EACA,GAAI,CACA,KAAK,iBAAmB,IAAIzD,EACxB,KAAK,iBAAiB,SACtB,KAAK,aACT,EACA,KAAK,YAAc,GACnB,KAAK,iBAAiB,OAAO,CAAC,CAClC,OAAS0D,EAAO,CACRJ,IAAU,SACV,KAAK,YAAcC,GAEvB,KAAK,iBAAmB,KAAK,uBACjC,CACJ,CACA,OAAO,KAAK,QACN,KAAK,wBACL,KAAK,gBACf,CAEU,0BAAiC,CACvC,KAAK,gBAAkB,MAC3B,CACA,IAAc,gBAAkC,CAC5C,GAAI,CAAC,KAAK,gBAAiB,CACvB,MAAMI,EAAqB,KAAK,MAC1B,KAAK,MAAQ,KAAK,MAAM,KAAK,IAAI,EAC7B,KAAK,KAAK,SAAS,EAAE,MAAM,GAAG,EAAE,CAAC,EAAE,OAEvC,EACN,KAAK,gBAAkB,IAAI3D,EAAgB,KAAM,CAC7C,YAAa,GACb,sBAAuB2D,CAC3B,CAAC,CACL,CAEA,OAAO,KAAK,eAChB,CAIA,IAAc,cAA6B,CACvC,GAAI,CAAC,KAAK,eAAiB,CAAC,KAAK,qBAAsB,CACnD,KAAM,CACF,MAAAL,EACA,KAAAC,EAEA,YAAAC,EACA,GAAGC,CACP,EAAI,KAAK,cACLH,IAAU,SACTG,EAAiD,MAAQH,GAE9D,KAAK,qBAAuB,IAAIrD,EAC5B,KAAK,iBAAiB,SACtBwD,CACJ,EACA,GAAI,CACA,KAAK,cAAgB,IAAIxD,EACrB,KAAK,iBAAiB,SACtB,KAAK,aACT,EACA,KAAK,YAAc,GACnB,KAAK,cAAc,MAAM,GAAG,CAChC,OAASyD,EAAO,CACRJ,IAAU,SACV,KAAK,YAAcC,GAEvB,KAAK,cAAgB,KAAK,oBAC9B,CACJ,CACA,OAAO,KAAK,QAAU,KAAK,qBAAuB,KAAK,aAC3D,CASmB,aAA8B,CAC7C,YAAK,aAAe,MACbrD;AAAA,cACD,MAAM,YAAY,CAAC;AAAA,cACnB,KAAK,YACDC,EACAD;AAAA;AAAA;AAAA,qCAGmB,KAAK,aAAa;AAAA,sCACjB,KAAK,cAAc;AAAA,4BAC7BI,EAAkB,CAChB,MAAO,CAAC,cAAe,KAAK,iBAAiB,EAC7C,aAAc,CACV,CACI,cACA,eACA,eACA,cACA,YACJ,EACA,KAAK,iBACT,EACA,IAAK,CACD,CACI,YACA,gBACA,cACJ,EACA,KAAK,eACT,CACJ,CAAC,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sCAOU,YAAc,KAAK,YAAY;AAAA,qCAChC,KAAK,IAAI;AAAA;AAAA,yCAEL,KAAK,OAAO;AAAA,0CACX,KAAK,UACjB,KAAK,UACJ,OAAO,KAAK,KAAQ,aACjB,KAAK,QAAU,KAAK,GAAI;AAAA,uCACnB,KAAK,KAAK;AAAA;AAAA,gCAEjBU,EAAY,KAAK,IAAI,EAAE,IAAI,CAAC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,sCAOtB,YAAc,KAAK,YAAY;AAAA,qCAChC,KAAK,IAAI;AAAA;AAAA,yCAEL,KAAK,OAAO;AAAA,0CACX,KAAK,UACjB,KAAK,UACJ,OAAO,KAAK,KAAQ,aACjB,KAAK,QAAU,KAAK,GAAI;AAAA,uCACnB,KAAK,KAAK;AAAA;AAAA,gCAEjBA,EAAY,KAAK,IAAI,EAAE,MAAM,CAAC;AAAA;AAAA;AAAA,mBAG3C;AAAA,SAEf,CAEmB,OAAO4C,EAA+B,CAIrD,IAHIA,EAAQ,IAAI,eAAe,GAAKA,EAAQ,IAAI,kBAAkB,IAC9D,KAAK,0BAA0B,EAG/BA,EAAQ,IAAI,OAAO,GACnBA,EAAQ,IAAI,KAAK,GACjBA,EAAQ,IAAI,KAAK,GACjBA,EAAQ,IAAI,MAAM,EACpB,CACE,MAAM1C,EAAQ,KAAK,aAAa,MAC5B,KAAK,eAAe,QAAQ,KAAK,YAAa,EAAE,CACpD,EACA,KAAK,MAAQA,EACb,KAAK,yBAAyB,CAClC,CACA,MAAM,OAAO0C,CAAO,CACxB,CAEgB,WAAWA,EAA+B,CACtD,KAAK,UAAY,GACbA,EAAQ,IAAIpD,CAA6B,GACzC,KAAK,0BAA0B,CAEvC,CAImB,aAAaoD,EAA+B,CAC3D,MAAM,aAAaA,CAAO,EAC1B,KAAK,iBAAiB,UAAW,KAAK,aAAa,EACnD,KAAK,iBAAiB,mBAAoB,KAAK,sBAAsB,EACrE,KAAK,iBAAiB,iBAAkB,KAAK,oBAAoB,CACrE,CAEmB,QAAQA,EAAqC,CAC5D,GAAI,GAAC,KAAK,cAAgB,CAAC,KAAK,aAKhC,IAAIA,EAAQ,IAAI,KAAK,GAAKA,EAAQ,IAAI,eAAe,EAAG,CACpD,MAAMC,EACF,OAAO,KAAK,KAAQ,aAAe,KAAK,KAAO,EAE7C,CAAE,sBAAAC,CAAsB,EAC1B,KAAK,gBAAgB,gBAAgB,EACnCC,EACFD,GAAyBA,EAAwB,EAErD,IAAIE,EAAY,UAGZpD,EAAS,GAAK,CAACiD,EAAkBG,EAAY,QACxCrD,EAAM,GAAKoD,GAEXrD,EAAU,GAAKqD,GAAeF,KACnCG,EAAY,WAEhB,KAAK,aAAa,UAAYA,CAClC,CAEIJ,EAAQ,IAAI,SAAS,GACrB,KAAK,SACL,CAAC,KAAK,gCACJ,KAAK,cAAc,MAGrB,KAAK,kBAAkB,EAAG,KAAK,aAAa,MAAM,EAE1D,CACJ,CAvuBYK,EAAA,CADP5D,EAAM,UAAU,GALR,YAMD,uBAGQ4D,EAAA,CADf7D,EAAS,CAAE,KAAM,QAAS,QAAS,EAAK,CAAC,GARjC,YASO,uBAaT6D,EAAA,CADN7D,EAAS,CAAE,KAAM,OAAQ,UAAW,gBAAiB,CAAC,GArB9C,YAsBF,6BAMA6D,EAAA,CADN7D,EAAS,CAAE,KAAM,QAAS,QAAS,GAAM,UAAW,cAAe,CAAC,GA3B5D,YA4BF,2BAGA6D,EAAA,CADN7D,EAAS,CAAE,KAAM,QAAS,QAAS,EAAK,CAAC,GA9BjC,YA+BF,6BAGA6D,EAAA,CADN7D,EAAS,CAAE,KAAM,QAAS,QAAS,GAAM,UAAW,kBAAmB,CAAC,GAjChE,YAkCF,+BAGA6D,EAAA,CADN7D,EAAS,CAAE,KAAM,MAAO,CAAC,GApCjB,YAqCF,mBAGA6D,EAAA,CADN7D,EAAS,CAAE,KAAM,MAAO,CAAC,GAvCjB,YAwCF,mBASA6D,EAAA,CADN7D,EAAS,CAAE,KAAM,MAAO,CAAC,GAhDjB,YAiDF,oBAKA6D,EAAA,CADN7D,EAAS,CAAE,KAAM,OAAQ,QAAS,GAAM,UAAW,eAAgB,CAAC,GArD5D,YAsDF,4BAGa6D,EAAA,CADnB7D,EAAS,CAAE,KAAM,MAAO,CAAC,GAxDjB,YAyDW",
|
|
6
|
+
"names": ["NumberFormatter", "NumberParser", "html", "nothing", "property", "query", "streamingListener", "LanguageResolutionController", "languageResolverUpdatedSymbol", "chevronStyles", "isAndroid", "isIOS", "isIPhone", "TextfieldBase", "chevronIconOverrides", "styles", "chevronIcon", "dir", "value", "rawValue", "oldValue", "newValue", "previousValue", "inputValue", "normalizedValue", "char", "separators", "uniqueSeparators", "replacementDecimal", "part", "separator", "hasReplacedDecimal", "valueChars", "index", "_a", "event", "stepUpRect", "stepDownRect", "count", "min", "factor", "direction", "_event", "partialValue", "originalValue", "selectionStart", "valueAsNumber", "currentLength", "previousLength", "nextSelectStart", "nextValue", "signMultiplier", "moduloStep", "indeterminateValue", "style", "unit", "unitDisplay", "formatOptionsNoUnit", "error", "digitsAfterDecimal", "changes", "hasOnlyPositives", "maximumFractionDigits", "hasDecimals", "inputMode", "__decorateClass"]
|
|
7
|
+
}
|
package/src/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './NumberField.js';
|
package/src/index.dev.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["index.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\nexport * from './NumberField.dev.js'\n"],
|
|
5
|
+
"mappings": ";AAYA,cAAc;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
package/src/index.js
ADDED
package/src/index.js.map
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["index.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\nexport * from './NumberField.js';\n"],
|
|
5
|
+
"mappings": "aAYA,WAAc",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
import { css } from "@spectrum-web-components/base";
|
|
3
|
+
const styles = css`
|
|
4
|
+
:host{--spectrum-stepper-border-width:var(--system-stepper-border-width);--spectrum-stepper-border-color:var(--system-stepper-border-color);--spectrum-stepper-border-color-hover:var(--system-stepper-border-color-hover);--spectrum-stepper-border-color-focus:var(--system-stepper-border-color-focus);--spectrum-stepper-border-color-focus-hover:var(--system-stepper-border-color-focus-hover);--spectrum-stepper-border-color-keyboard-focus:var(--system-stepper-border-color-keyboard-focus);--spectrum-stepper-border-radius:var(--system-stepper-border-radius);--spectrum-stepper-min-width-multiplier:var(--system-stepper-min-width-multiplier);--spectrum-stepper-animation-duration:var(--system-stepper-animation-duration);--spectrum-stepper-buttons-border-style:var(--system-stepper-buttons-border-style);--spectrum-stepper-buttons-border-width:var(--system-stepper-buttons-border-width);--spectrum-stepper-buttons-border-color:var(--system-stepper-buttons-border-color);--spectrum-stepper-buttons-background-color:var(--system-stepper-buttons-background-color);--spectrum-stepper-buttons-border-color-hover:var(--system-stepper-buttons-border-color-hover);--spectrum-stepper-buttons-border-color-focus:var(--system-stepper-buttons-border-color-focus);--spectrum-stepper-buttons-border-color-keyboard-focus:var(--system-stepper-buttons-border-color-keyboard-focus);--spectrum-stepper-button-padding:var(--system-stepper-button-padding);--spectrum-stepper-button-border-radius-reset:var(--system-stepper-button-border-radius-reset);--spectrum-stepper-button-border-width:var(--system-stepper-button-border-width);--spectrum-stepper-button-background-color-focus:var(--system-stepper-button-background-color-focus);--spectrum-stepper-button-background-color-keyboard-focus:var(--system-stepper-button-background-color-keyboard-focus);--spectrum-stepper-border-color-invalid:var(--system-stepper-border-color-invalid);--spectrum-stepper-border-color-hover-invalid:var(--system-stepper-border-color-hover-invalid);--spectrum-stepper-border-color-focus-invalid:var(--system-stepper-border-color-focus-invalid);--spectrum-stepper-border-color-focus-hover-invalid:var(--system-stepper-border-color-focus-hover-invalid);--spectrum-stepper-border-color-keyboard-focus-invalid:var(--system-stepper-border-color-keyboard-focus-invalid);--spectrum-stepper-focus-indicator-width:var(--system-stepper-focus-indicator-width);--spectrum-stepper-focus-indicator-gap:var(--system-stepper-focus-indicator-gap);--spectrum-stepper-focus-indicator-color:var(--system-stepper-focus-indicator-color);--spectrum-stepper-button-border-color-quiet:var(--system-stepper-button-border-color-quiet);--spectrum-stepper-button-border-color-disabled:var(--system-stepper-button-border-color-disabled);--spectrum-stepper-button-border-width-disabled:var(--system-stepper-button-border-width-disabled);--spectrum-stepper-buttons-background-color-disabled:var(--system-stepper-buttons-background-color-disabled);--spectrum-stepper-button-width:var(--system-stepper-button-width);--spectrum-stepper-height:var(--system-stepper-height)}:host([size=s]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-s-button-width);--spectrum-stepper-height:var(--system-stepper-size-s-height)}:host([size=m]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-m-button-width);--spectrum-stepper-height:var(--system-stepper-size-m-height)}:host([size=l]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-l-button-width);--spectrum-stepper-height:var(--system-stepper-size-l-height)}:host([size=xl]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-xl-button-width);--spectrum-stepper-height:var(--system-stepper-size-xl-height)}
|
|
5
|
+
`;
|
|
6
|
+
export default styles;
|
|
7
|
+
//# sourceMappingURL=number-field-overrides.css.dev.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["number-field-overrides.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-stepper-border-width:var(--system-stepper-border-width);--spectrum-stepper-border-color:var(--system-stepper-border-color);--spectrum-stepper-border-color-hover:var(--system-stepper-border-color-hover);--spectrum-stepper-border-color-focus:var(--system-stepper-border-color-focus);--spectrum-stepper-border-color-focus-hover:var(--system-stepper-border-color-focus-hover);--spectrum-stepper-border-color-keyboard-focus:var(--system-stepper-border-color-keyboard-focus);--spectrum-stepper-border-radius:var(--system-stepper-border-radius);--spectrum-stepper-min-width-multiplier:var(--system-stepper-min-width-multiplier);--spectrum-stepper-animation-duration:var(--system-stepper-animation-duration);--spectrum-stepper-buttons-border-style:var(--system-stepper-buttons-border-style);--spectrum-stepper-buttons-border-width:var(--system-stepper-buttons-border-width);--spectrum-stepper-buttons-border-color:var(--system-stepper-buttons-border-color);--spectrum-stepper-buttons-background-color:var(--system-stepper-buttons-background-color);--spectrum-stepper-buttons-border-color-hover:var(--system-stepper-buttons-border-color-hover);--spectrum-stepper-buttons-border-color-focus:var(--system-stepper-buttons-border-color-focus);--spectrum-stepper-buttons-border-color-keyboard-focus:var(--system-stepper-buttons-border-color-keyboard-focus);--spectrum-stepper-button-padding:var(--system-stepper-button-padding);--spectrum-stepper-button-border-radius-reset:var(--system-stepper-button-border-radius-reset);--spectrum-stepper-button-border-width:var(--system-stepper-button-border-width);--spectrum-stepper-button-background-color-focus:var(--system-stepper-button-background-color-focus);--spectrum-stepper-button-background-color-keyboard-focus:var(--system-stepper-button-background-color-keyboard-focus);--spectrum-stepper-border-color-invalid:var(--system-stepper-border-color-invalid);--spectrum-stepper-border-color-hover-invalid:var(--system-stepper-border-color-hover-invalid);--spectrum-stepper-border-color-focus-invalid:var(--system-stepper-border-color-focus-invalid);--spectrum-stepper-border-color-focus-hover-invalid:var(--system-stepper-border-color-focus-hover-invalid);--spectrum-stepper-border-color-keyboard-focus-invalid:var(--system-stepper-border-color-keyboard-focus-invalid);--spectrum-stepper-focus-indicator-width:var(--system-stepper-focus-indicator-width);--spectrum-stepper-focus-indicator-gap:var(--system-stepper-focus-indicator-gap);--spectrum-stepper-focus-indicator-color:var(--system-stepper-focus-indicator-color);--spectrum-stepper-button-border-color-quiet:var(--system-stepper-button-border-color-quiet);--spectrum-stepper-button-border-color-disabled:var(--system-stepper-button-border-color-disabled);--spectrum-stepper-button-border-width-disabled:var(--system-stepper-button-border-width-disabled);--spectrum-stepper-buttons-background-color-disabled:var(--system-stepper-buttons-background-color-disabled);--spectrum-stepper-button-width:var(--system-stepper-button-width);--spectrum-stepper-height:var(--system-stepper-height)}:host([size=s]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-s-button-width);--spectrum-stepper-height:var(--system-stepper-size-s-height)}:host([size=m]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-m-button-width);--spectrum-stepper-height:var(--system-stepper-size-m-height)}:host([size=l]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-l-button-width);--spectrum-stepper-height:var(--system-stepper-size-l-height)}:host([size=xl]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-xl-button-width);--spectrum-stepper-height:var(--system-stepper-size-xl-height)}\n`;\nexport default styles;"],
|
|
5
|
+
"mappings": ";AAWA,SAAS,WAAW;AACpB,MAAM,SAAS;AAAA;AAAA;AAGf,eAAe;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";import{css as e}from"@spectrum-web-components/base";const r=e`
|
|
2
|
+
:host{--spectrum-stepper-border-width:var(--system-stepper-border-width);--spectrum-stepper-border-color:var(--system-stepper-border-color);--spectrum-stepper-border-color-hover:var(--system-stepper-border-color-hover);--spectrum-stepper-border-color-focus:var(--system-stepper-border-color-focus);--spectrum-stepper-border-color-focus-hover:var(--system-stepper-border-color-focus-hover);--spectrum-stepper-border-color-keyboard-focus:var(--system-stepper-border-color-keyboard-focus);--spectrum-stepper-border-radius:var(--system-stepper-border-radius);--spectrum-stepper-min-width-multiplier:var(--system-stepper-min-width-multiplier);--spectrum-stepper-animation-duration:var(--system-stepper-animation-duration);--spectrum-stepper-buttons-border-style:var(--system-stepper-buttons-border-style);--spectrum-stepper-buttons-border-width:var(--system-stepper-buttons-border-width);--spectrum-stepper-buttons-border-color:var(--system-stepper-buttons-border-color);--spectrum-stepper-buttons-background-color:var(--system-stepper-buttons-background-color);--spectrum-stepper-buttons-border-color-hover:var(--system-stepper-buttons-border-color-hover);--spectrum-stepper-buttons-border-color-focus:var(--system-stepper-buttons-border-color-focus);--spectrum-stepper-buttons-border-color-keyboard-focus:var(--system-stepper-buttons-border-color-keyboard-focus);--spectrum-stepper-button-padding:var(--system-stepper-button-padding);--spectrum-stepper-button-border-radius-reset:var(--system-stepper-button-border-radius-reset);--spectrum-stepper-button-border-width:var(--system-stepper-button-border-width);--spectrum-stepper-button-background-color-focus:var(--system-stepper-button-background-color-focus);--spectrum-stepper-button-background-color-keyboard-focus:var(--system-stepper-button-background-color-keyboard-focus);--spectrum-stepper-border-color-invalid:var(--system-stepper-border-color-invalid);--spectrum-stepper-border-color-hover-invalid:var(--system-stepper-border-color-hover-invalid);--spectrum-stepper-border-color-focus-invalid:var(--system-stepper-border-color-focus-invalid);--spectrum-stepper-border-color-focus-hover-invalid:var(--system-stepper-border-color-focus-hover-invalid);--spectrum-stepper-border-color-keyboard-focus-invalid:var(--system-stepper-border-color-keyboard-focus-invalid);--spectrum-stepper-focus-indicator-width:var(--system-stepper-focus-indicator-width);--spectrum-stepper-focus-indicator-gap:var(--system-stepper-focus-indicator-gap);--spectrum-stepper-focus-indicator-color:var(--system-stepper-focus-indicator-color);--spectrum-stepper-button-border-color-quiet:var(--system-stepper-button-border-color-quiet);--spectrum-stepper-button-border-color-disabled:var(--system-stepper-button-border-color-disabled);--spectrum-stepper-button-border-width-disabled:var(--system-stepper-button-border-width-disabled);--spectrum-stepper-buttons-background-color-disabled:var(--system-stepper-buttons-background-color-disabled);--spectrum-stepper-button-width:var(--system-stepper-button-width);--spectrum-stepper-height:var(--system-stepper-height)}:host([size=s]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-s-button-width);--spectrum-stepper-height:var(--system-stepper-size-s-height)}:host([size=m]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-m-button-width);--spectrum-stepper-height:var(--system-stepper-size-m-height)}:host([size=l]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-l-button-width);--spectrum-stepper-height:var(--system-stepper-size-l-height)}:host([size=xl]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-xl-button-width);--spectrum-stepper-height:var(--system-stepper-size-xl-height)}
|
|
3
|
+
`;export default r;
|
|
4
|
+
//# sourceMappingURL=number-field-overrides.css.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["number-field-overrides.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-stepper-border-width:var(--system-stepper-border-width);--spectrum-stepper-border-color:var(--system-stepper-border-color);--spectrum-stepper-border-color-hover:var(--system-stepper-border-color-hover);--spectrum-stepper-border-color-focus:var(--system-stepper-border-color-focus);--spectrum-stepper-border-color-focus-hover:var(--system-stepper-border-color-focus-hover);--spectrum-stepper-border-color-keyboard-focus:var(--system-stepper-border-color-keyboard-focus);--spectrum-stepper-border-radius:var(--system-stepper-border-radius);--spectrum-stepper-min-width-multiplier:var(--system-stepper-min-width-multiplier);--spectrum-stepper-animation-duration:var(--system-stepper-animation-duration);--spectrum-stepper-buttons-border-style:var(--system-stepper-buttons-border-style);--spectrum-stepper-buttons-border-width:var(--system-stepper-buttons-border-width);--spectrum-stepper-buttons-border-color:var(--system-stepper-buttons-border-color);--spectrum-stepper-buttons-background-color:var(--system-stepper-buttons-background-color);--spectrum-stepper-buttons-border-color-hover:var(--system-stepper-buttons-border-color-hover);--spectrum-stepper-buttons-border-color-focus:var(--system-stepper-buttons-border-color-focus);--spectrum-stepper-buttons-border-color-keyboard-focus:var(--system-stepper-buttons-border-color-keyboard-focus);--spectrum-stepper-button-padding:var(--system-stepper-button-padding);--spectrum-stepper-button-border-radius-reset:var(--system-stepper-button-border-radius-reset);--spectrum-stepper-button-border-width:var(--system-stepper-button-border-width);--spectrum-stepper-button-background-color-focus:var(--system-stepper-button-background-color-focus);--spectrum-stepper-button-background-color-keyboard-focus:var(--system-stepper-button-background-color-keyboard-focus);--spectrum-stepper-border-color-invalid:var(--system-stepper-border-color-invalid);--spectrum-stepper-border-color-hover-invalid:var(--system-stepper-border-color-hover-invalid);--spectrum-stepper-border-color-focus-invalid:var(--system-stepper-border-color-focus-invalid);--spectrum-stepper-border-color-focus-hover-invalid:var(--system-stepper-border-color-focus-hover-invalid);--spectrum-stepper-border-color-keyboard-focus-invalid:var(--system-stepper-border-color-keyboard-focus-invalid);--spectrum-stepper-focus-indicator-width:var(--system-stepper-focus-indicator-width);--spectrum-stepper-focus-indicator-gap:var(--system-stepper-focus-indicator-gap);--spectrum-stepper-focus-indicator-color:var(--system-stepper-focus-indicator-color);--spectrum-stepper-button-border-color-quiet:var(--system-stepper-button-border-color-quiet);--spectrum-stepper-button-border-color-disabled:var(--system-stepper-button-border-color-disabled);--spectrum-stepper-button-border-width-disabled:var(--system-stepper-button-border-width-disabled);--spectrum-stepper-buttons-background-color-disabled:var(--system-stepper-buttons-background-color-disabled);--spectrum-stepper-button-width:var(--system-stepper-button-width);--spectrum-stepper-height:var(--system-stepper-height)}:host([size=s]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-s-button-width);--spectrum-stepper-height:var(--system-stepper-size-s-height)}:host([size=m]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-m-button-width);--spectrum-stepper-height:var(--system-stepper-size-m-height)}:host([size=l]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-l-button-width);--spectrum-stepper-height:var(--system-stepper-size-l-height)}:host([size=xl]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-xl-button-width);--spectrum-stepper-height:var(--system-stepper-size-xl-height)}\n`;\nexport default styles;"],
|
|
5
|
+
"mappings": "aAWA,OAAS,OAAAA,MAAW,gCACpB,MAAMC,EAASD;AAAA;AAAA,EAGf,eAAeC",
|
|
6
|
+
"names": ["css", "styles"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
import { css } from "@spectrum-web-components/base";
|
|
3
|
+
const styles = css`
|
|
4
|
+
#textfield{--spectrum-stepper-width:calc(var(--mod-stepper-height,var(--spectrum-stepper-height))*var(--mod-stepper-min-width-multiplier,var(--spectrum-stepper-min-width-multiplier)) + var(--mod-stepper-button-width,var(--spectrum-stepper-button-width)) + var(--mod-stepper-border-width,var(--spectrum-stepper-border-width))*2);--mod-infield-button-border-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-buttons-border-color,var(--spectrum-stepper-buttons-border-color)));--mod-infield-button-border-width:var(--mod-stepper-button-border-width,var(--spectrum-stepper-button-border-width));--mod-infield-button-border-radius-reset:var(--spectrum-stepper-button-border-radius-reset);--mod-textfield-border-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width));inline-size:var(--mod-stepper-width,var(--spectrum-stepper-width));block-size:var(--mod-stepper-height,var(--spectrum-stepper-height));border-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius));border-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-border-color,var(--spectrum-stepper-border-color)));flex-flow:row;display:inline-flex;position:relative}#textfield:before{content:""}#textfield:after{content:"";inline-size:100%;block-size:var(--mod-stepper-focus-indicator-width,var(--spectrum-stepper-focus-indicator-width));position:absolute;inset-block-end:calc(( var(--mod-stepper-focus-indicator-gap,var(--spectrum-stepper-focus-indicator-gap)) + var(--mod-stepper-focus-indicator-width,var(--spectrum-stepper-focus-indicator-width)))*-1);inset-inline-start:0}:host([focused]) #textfield,#textfield:focus{--mod-stepper-border-color:var(--highcontrast-stepper-border-color-focus,var(--mod-stepper-border-color-focus,var(--spectrum-stepper-border-color-focus)));--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-focus,var(--mod-stepper-buttons-border-color-focus,var(--spectrum-stepper-buttons-border-color-focus)))}:host([focused]:not([disabled])) #textfield .input,:host(:not([disabled])) #textfield:focus .input{outline:none}:host([focused]:not([disabled])) #textfield .buttons,:host([focused]:not([disabled])) #textfield .input,:host(:not([disabled])) #textfield:focus .buttons,:host(:not([disabled])) #textfield:focus .input{border-color:var(--highcontrast-stepper-border-color-focus,var(--mod-stepper-border-color-focus,var(--spectrum-stepper-border-color-focus)))}:host([keyboard-focused]) #textfield,#textfield:focus-visible{--mod-stepper-border-color:var(--highcontrast-stepper-border-color-keyboard-focus,var(--mod-stepper-buttons-border-color-keyboard-focus,var(--spectrum-stepper-buttons-border-color-keyboard-focus)));--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-keyboard-focus,var(--mod-stepper-buttons-border-color-keyboard-focus,var(--spectrum-stepper-buttons-border-color-keyboard-focus)))}:host([keyboard-focused]:not([disabled])) #textfield,:host(:not([disabled])) #textfield:focus-visible{outline:var(--mod-stepper-focus-indicator-width,var(--spectrum-stepper-focus-indicator-width))solid;outline-color:var(--highcontrast-stepper-focus-indicator-color,var(--mod-stepper-focus-indicator-color,var(--spectrum-stepper-focus-indicator-color)));outline-offset:var(--mod-stepper-focus-indicator-gap,var(--spectrum-stepper-focus-indicator-gap))}:host([keyboard-focused]:not([disabled])) #textfield .input,:host(:not([disabled])) #textfield:focus-visible .input{outline:none}:host([keyboard-focused]:not([disabled])) #textfield .buttons,:host([keyboard-focused]:not([disabled])) #textfield .input,:host(:not([disabled])) #textfield:focus-visible .buttons,:host(:not([disabled])) #textfield:focus-visible .input{border-color:var(--highcontrast-stepper-border-color-keyboard-focus,var(--mod-stepper-border-color-keyboard-focus,var(--spectrum-stepper-border-color-keyboard-focus)))}:host([invalid]:not([disabled])) #textfield{--mod-stepper-border-color:var(--mod-stepper-border-color-invalid,var(--spectrum-stepper-border-color-invalid));--mod-stepper-border-color-hover:var(--mod-stepper-border-color-hover-invalid,var(--spectrum-stepper-border-color-hover-invalid));--mod-stepper-border-color-focus:var(--mod-stepper-border-color-focus-invalid,var(--spectrum-stepper-border-color-focus-invalid));--mod-stepper-border-color-focus-hover:var(--mod-stepper-border-color-focus-hover-invalid,var(--spectrum-stepper-border-color-focus-hover-invalid));--mod-stepper-border-color-keyboard-focus:var(--mod-stepper-border-color-keyboard-focus-invalid,var(--spectrum-stepper-border-color-keyboard-focus-invalid));--mod-infield-button-border-color:var(--mod-stepper-border-color-invalid,var(--spectrum-stepper-border-color-invalid));--mod-textfield-icon-spacing-inline-start-invalid:0}:host([invalid][focused]:not([disabled])) #textfield,:host([invalid]:not([disabled])) #textfield:focus{--mod-infield-button-border-color:var(--mod-stepper-border-color-focus-invalid,var(--spectrum-stepper-border-color-focus-invalid))}:host([invalid][keyboard-focused]:not([disabled])) #textfield,:host([invalid]:not([disabled])) #textfield:focus-visible{--mod-infield-button-border-color:var(--mod-stepper-border-color-keyboard-focus-invalid,var(--spectrum-stepper-border-color-keyboard-focus-invalid))}:host([disabled]) #textfield{--mod-stepper-border-color:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-border-color-hover:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-border-color-focus:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-border-color-focus-hover:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-border-color-keyboard-focus:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-buttons-background-color:var(--spectrum-stepper-buttons-background-color-disabled);--mod-infield-button-border-width:var(--spectrum-stepper-button-border-width-disabled);--mod-infield-button-border-color:var(--spectrum-stepper-button-border-color-disabled);--mod-textfield-border-color-disabled:var(--spectrum-stepper-button-border-color-disabled)}#textfield .input{border-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-border-color,var(--spectrum-stepper-border-color)));border-inline-end-width:0;border-start-end-radius:0;border-end-end-radius:0}#textfield.hide-stepper .input{border-inline-end-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width));border-start-end-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius));border-end-end-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius))}#textfield .buttons{box-sizing:border-box;block-size:var(--mod-stepper-height,var(--spectrum-stepper-height));inline-size:var(--mod-stepper-button-width,var(--spectrum-stepper-button-width));border-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-border-color,var(--spectrum-stepper-border-color)));border-style:var(--mod-stepper-buttons-border-style,var(--spectrum-stepper-buttons-border-style));border-width:var(--highcontrast-stepper-buttons-border-width,var(--mod-stepper-buttons-border-width,var(--spectrum-stepper-buttons-border-width)));background-color:var(--highcontrast-stepper-buttons-background-color,var(--mod-stepper-buttons-background-color,var(--spectrum-stepper-buttons-background-color)));transition:border-color var(--mod-stepper-animation-duration,var(--spectrum-stepper-animation-duration))ease-in-out;border-inline-start-width:0;border-start-end-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius));border-end-end-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius));flex-direction:column;justify-content:center;display:flex}:host([quiet]) #textfield{border-start-start-radius:0;border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:0}:host([quiet]) #textfield .input{--mod-textfield-focus-indicator-color:transparent}:host([quiet]) #textfield.hide-stepper .input{border-inline-end-width:0;border-end-end-radius:0}:host([quiet]) #textfield .buttons{--mod-infield-button-border-color:transparent;border-width:0;border-block-end-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width));border-block-end-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-border-color,var(--spectrum-stepper-border-color)));border-block-end-style:solid;border-end-end-radius:0}:host([quiet]) #textfield .button{--mod-infield-button-width-stacked:var(--mod-stepper-button-width-quiet,var(--spectrum-stepper-button-width));--mod-infield-button-border-color:var(--mod-stepper-border-color-quiet,var(--spectrum-stepper-button-border-color-quiet));--mod-infield-button-stacked-bottom-border-block-end-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width));--mod-infield-button-stacked-bottom-border-radius-end-end:0;--mod-infield-button-stacked-bottom-border-radius-end-start:0;--mod-infield-button-fill-justify-content:flex-end;padding:0}:host([quiet]) #textfield .buttons,:host([quiet]) #textfield .input{background-color:initial}:host([quiet][focused]) #textfield,:host([quiet]) #textfield:focus{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-focus,var(--mod-stepper-border-color-focus,var(--spectrum-stepper-border-color-focus)))}:host([quiet][keyboard-focused]:not([disabled])) #textfield{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-keyboard-focus,var(--mod-stepper-border-color-keyboard-focus,var(--spectrum-stepper-border-color-keyboard-focus)));outline:none}:host([quiet][keyboard-focused]:not([disabled])) #textfield:after{background-color:var(--highcontrast-stepper-focus-indicator-color,var(--mod-stepper-focus-indicator-color,var(--spectrum-stepper-focus-indicator-color)))}@media (hover:hover){:host(:hover:not([disabled])) #textfield{--mod-stepper-border-color:var(--highcontrast-stepper-border-color-hover,var(--mod-stepper-border-color-hover,var(--spectrum-stepper-border-color-hover)));--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-hover,var(--mod-stepper-buttons-border-color-hover,var(--spectrum-stepper-buttons-border-color-hover)))}:host([focused]:hover) #textfield,:host(:hover) #textfield:focus{--mod-stepper-border-color:var(--highcontrast-stepper-border-color-focus-hover,var(--mod-stepper-buttons-border-color-focus-hover,var(--spectrum-stepper-buttons-border-color-focus-hover)));--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-focus-hover,var(--mod-stepper-buttons-border-color-focus-hover,var(--spectrum-stepper-buttons-border-color-focus-hover)))}:host([focused]:hover) #textfield .buttons,:host([focused]:hover) #textfield .input,:host(:hover) #textfield:focus .buttons,:host(:hover) #textfield:focus .input{border-color:var(--highcontrast-stepper-border-color-focus-hover,var(--mod-stepper-border-color-focus-hover,var(--spectrum-stepper-border-color-focus-hover)))}:host([invalid]:not([disabled]):hover) #textfield{--mod-infield-button-border-color:var(--mod-stepper-border-color-hover-invalid,var(--spectrum-stepper-border-color-hover-invalid))}:host([invalid][focused]:not([disabled]):hover) #textfield,:host([invalid]:not([disabled]):hover) #textfield:focus{--mod-infield-button-border-color:var(--mod-stepper-border-color-focus-hover-invalid,var(--spectrum-stepper-border-color-focus-hover-invalid))}:host([quiet]:not([disabled]):hover) #textfield{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-hover,var(--mod-stepper-border-color-hover,var(--spectrum-stepper-border-color-hover)))}:host([quiet]:not([disabled]):hover) #textfield .buttons{background-color:initial}:host([quiet][focused]:hover) #textfield,:host([quiet]:hover) #textfield:focus{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-focus-hover,var(--mod-stepper-border-color-focus-hover,var(--spectrum-stepper-border-color-focus-hover)))}:host([quiet][keyboard-focused]:not([disabled]):hover) #textfield{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-hover,var(--mod-stepper-border-color-hover,var(--spectrum-stepper-border-color-hover)))}}@media (forced-colors:active){:host{--highcontrast-stepper-border-color:CanvasText;--highcontrast-stepper-border-color-hover:Highlight;--highcontrast-stepper-border-color-focus:Highlight;--highcontrast-stepper-border-color-focus-hover:Highlight;--highcontrast-stepper-border-color-keyboard-focus:CanvasText;--highcontrast-stepper-button-background-color-default:Canvas;--highcontrast-stepper-button-background-color-hover:Canvas;--highcontrast-stepper-button-background-color-focus:Canvas;--highcontrast-stepper-button-background-color-keyboard-focus:Canvas;--highcontrast-stepper-focus-indicator-color:Highlight}:host([invalid]) #textfield{--highcontrast-stepper-border-color:Highlight;--highcontrast-stepper-border-color-hover:Highlight;--highcontrast-stepper-border-color-focus:Highlight;--highcontrast-stepper-border-color-focus-hover:Highlight;--highcontrast-stepper-border-color-keyboard-focus:Highlight;--highcontrast-infield-button-border-color:Highlight}:host([disabled]) #textfield{--highcontrast-stepper-border-color:GrayText;--highcontrast-infield-button-border-color:GrayText;--highcontrast-stepper-buttons-border-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width))}}:host{--spectrum-stepper-border-width:var(--system-stepper-border-width);--spectrum-stepper-border-color:var(--system-stepper-border-color);--spectrum-stepper-border-color-hover:var(--system-stepper-border-color-hover);--spectrum-stepper-border-color-focus:var(--system-stepper-border-color-focus);--spectrum-stepper-border-color-focus-hover:var(--system-stepper-border-color-focus-hover);--spectrum-stepper-border-color-keyboard-focus:var(--system-stepper-border-color-keyboard-focus);--spectrum-stepper-border-radius:var(--system-stepper-border-radius);--spectrum-stepper-min-width-multiplier:var(--system-stepper-min-width-multiplier);--spectrum-stepper-animation-duration:var(--system-stepper-animation-duration);--spectrum-stepper-buttons-border-style:var(--system-stepper-buttons-border-style);--spectrum-stepper-buttons-border-width:var(--system-stepper-buttons-border-width);--spectrum-stepper-buttons-border-color:var(--system-stepper-buttons-border-color);--spectrum-stepper-buttons-background-color:var(--system-stepper-buttons-background-color);--spectrum-stepper-buttons-border-color-hover:var(--system-stepper-buttons-border-color-hover);--spectrum-stepper-buttons-border-color-focus:var(--system-stepper-buttons-border-color-focus);--spectrum-stepper-buttons-border-color-keyboard-focus:var(--system-stepper-buttons-border-color-keyboard-focus);--spectrum-stepper-button-padding:var(--system-stepper-button-padding);--spectrum-stepper-button-border-radius-reset:var(--system-stepper-button-border-radius-reset);--spectrum-stepper-button-border-width:var(--system-stepper-button-border-width);--spectrum-stepper-button-background-color-focus:var(--system-stepper-button-background-color-focus);--spectrum-stepper-button-background-color-keyboard-focus:var(--system-stepper-button-background-color-keyboard-focus);--spectrum-stepper-border-color-invalid:var(--system-stepper-border-color-invalid);--spectrum-stepper-border-color-hover-invalid:var(--system-stepper-border-color-hover-invalid);--spectrum-stepper-border-color-focus-invalid:var(--system-stepper-border-color-focus-invalid);--spectrum-stepper-border-color-focus-hover-invalid:var(--system-stepper-border-color-focus-hover-invalid);--spectrum-stepper-border-color-keyboard-focus-invalid:var(--system-stepper-border-color-keyboard-focus-invalid);--spectrum-stepper-focus-indicator-width:var(--system-stepper-focus-indicator-width);--spectrum-stepper-focus-indicator-gap:var(--system-stepper-focus-indicator-gap);--spectrum-stepper-focus-indicator-color:var(--system-stepper-focus-indicator-color);--spectrum-stepper-button-border-color-quiet:var(--system-stepper-button-border-color-quiet);--spectrum-stepper-button-border-color-disabled:var(--system-stepper-button-border-color-disabled);--spectrum-stepper-button-border-width-disabled:var(--system-stepper-button-border-width-disabled);--spectrum-stepper-buttons-background-color-disabled:var(--system-stepper-buttons-background-color-disabled);--spectrum-stepper-button-width:var(--system-stepper-button-width);--spectrum-stepper-height:var(--system-stepper-height)}:host([size=s]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-s-button-width);--spectrum-stepper-height:var(--system-stepper-size-s-height)}:host([size=m]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-m-button-width);--spectrum-stepper-height:var(--system-stepper-size-m-height)}:host([size=l]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-l-button-width);--spectrum-stepper-height:var(--system-stepper-size-l-height)}:host([size=xl]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-xl-button-width);--spectrum-stepper-height:var(--system-stepper-size-xl-height)}:host{inline-size:var(--mod-stepper-width,var(--spectrum-stepper-width));--swc-number-field-width:calc(var(--mod-stepper-height,var(--spectrum-stepper-height))*var(--mod-stepper-min-width-multiplier,var(--spectrum-text-field-minimum-width-multiplier)) + var(--mod-stepper-button-width,var(--spectrum-stepper-button-width)) + var(--mod-stepper-border-width,var(--spectrum-stepper-border-width))*2);--mod-infield-button-border-width:var(--unset-value-resets-inheritance);--spectrum-stepper-width:var(--swc-number-field-width)}:host([size=s]){--spectrum-stepper-width:calc(var(--swc-number-field-width)/5*4)}:host([size=l]){--spectrum-stepper-width:calc(var(--swc-number-field-width)*1.25)}:host([size=xl]){--spectrum-stepper-width:calc(var(--swc-number-field-width)*1.25*1.25)}#textfield{inline-size:100%}.input{font-variant-numeric:tabular-nums}:host([readonly]) .buttons{pointer-events:none;visibility:hidden}:host([readonly]:not([disabled],[invalid],[focused],[keyboard-focused])) #textfield:hover .input{border-color:#0000}:host([hide-stepper]:not([quiet])) #textfield input{border:var(--mod-textfield-border-width,var(--spectrum-textfield-border-width))solid var(--mod-textfield-border-color,var(--spectrum-textfield-border-color));border-radius:var(--spectrum-textfield-corner-radius)}:host([quiet]) #textfield .button{--mod-infield-button-border-color:var(--mod-infield-border-color-quiet,transparent);--mod-infield-button-edge-to-fill:0;--mod-infield-button-border-width:var(--mod-infield-button-border-width-quiet,0)}
|
|
5
|
+
`;
|
|
6
|
+
export default styles;
|
|
7
|
+
//# sourceMappingURL=number-field.css.dev.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["number-field.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 #textfield{--spectrum-stepper-width:calc(var(--mod-stepper-height,var(--spectrum-stepper-height))*var(--mod-stepper-min-width-multiplier,var(--spectrum-stepper-min-width-multiplier)) + var(--mod-stepper-button-width,var(--spectrum-stepper-button-width)) + var(--mod-stepper-border-width,var(--spectrum-stepper-border-width))*2);--mod-infield-button-border-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-buttons-border-color,var(--spectrum-stepper-buttons-border-color)));--mod-infield-button-border-width:var(--mod-stepper-button-border-width,var(--spectrum-stepper-button-border-width));--mod-infield-button-border-radius-reset:var(--spectrum-stepper-button-border-radius-reset);--mod-textfield-border-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width));inline-size:var(--mod-stepper-width,var(--spectrum-stepper-width));block-size:var(--mod-stepper-height,var(--spectrum-stepper-height));border-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius));border-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-border-color,var(--spectrum-stepper-border-color)));flex-flow:row;display:inline-flex;position:relative}#textfield:before{content:\"\"}#textfield:after{content:\"\";inline-size:100%;block-size:var(--mod-stepper-focus-indicator-width,var(--spectrum-stepper-focus-indicator-width));position:absolute;inset-block-end:calc(( var(--mod-stepper-focus-indicator-gap,var(--spectrum-stepper-focus-indicator-gap)) + var(--mod-stepper-focus-indicator-width,var(--spectrum-stepper-focus-indicator-width)))*-1);inset-inline-start:0}:host([focused]) #textfield,#textfield:focus{--mod-stepper-border-color:var(--highcontrast-stepper-border-color-focus,var(--mod-stepper-border-color-focus,var(--spectrum-stepper-border-color-focus)));--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-focus,var(--mod-stepper-buttons-border-color-focus,var(--spectrum-stepper-buttons-border-color-focus)))}:host([focused]:not([disabled])) #textfield .input,:host(:not([disabled])) #textfield:focus .input{outline:none}:host([focused]:not([disabled])) #textfield .buttons,:host([focused]:not([disabled])) #textfield .input,:host(:not([disabled])) #textfield:focus .buttons,:host(:not([disabled])) #textfield:focus .input{border-color:var(--highcontrast-stepper-border-color-focus,var(--mod-stepper-border-color-focus,var(--spectrum-stepper-border-color-focus)))}:host([keyboard-focused]) #textfield,#textfield:focus-visible{--mod-stepper-border-color:var(--highcontrast-stepper-border-color-keyboard-focus,var(--mod-stepper-buttons-border-color-keyboard-focus,var(--spectrum-stepper-buttons-border-color-keyboard-focus)));--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-keyboard-focus,var(--mod-stepper-buttons-border-color-keyboard-focus,var(--spectrum-stepper-buttons-border-color-keyboard-focus)))}:host([keyboard-focused]:not([disabled])) #textfield,:host(:not([disabled])) #textfield:focus-visible{outline:var(--mod-stepper-focus-indicator-width,var(--spectrum-stepper-focus-indicator-width))solid;outline-color:var(--highcontrast-stepper-focus-indicator-color,var(--mod-stepper-focus-indicator-color,var(--spectrum-stepper-focus-indicator-color)));outline-offset:var(--mod-stepper-focus-indicator-gap,var(--spectrum-stepper-focus-indicator-gap))}:host([keyboard-focused]:not([disabled])) #textfield .input,:host(:not([disabled])) #textfield:focus-visible .input{outline:none}:host([keyboard-focused]:not([disabled])) #textfield .buttons,:host([keyboard-focused]:not([disabled])) #textfield .input,:host(:not([disabled])) #textfield:focus-visible .buttons,:host(:not([disabled])) #textfield:focus-visible .input{border-color:var(--highcontrast-stepper-border-color-keyboard-focus,var(--mod-stepper-border-color-keyboard-focus,var(--spectrum-stepper-border-color-keyboard-focus)))}:host([invalid]:not([disabled])) #textfield{--mod-stepper-border-color:var(--mod-stepper-border-color-invalid,var(--spectrum-stepper-border-color-invalid));--mod-stepper-border-color-hover:var(--mod-stepper-border-color-hover-invalid,var(--spectrum-stepper-border-color-hover-invalid));--mod-stepper-border-color-focus:var(--mod-stepper-border-color-focus-invalid,var(--spectrum-stepper-border-color-focus-invalid));--mod-stepper-border-color-focus-hover:var(--mod-stepper-border-color-focus-hover-invalid,var(--spectrum-stepper-border-color-focus-hover-invalid));--mod-stepper-border-color-keyboard-focus:var(--mod-stepper-border-color-keyboard-focus-invalid,var(--spectrum-stepper-border-color-keyboard-focus-invalid));--mod-infield-button-border-color:var(--mod-stepper-border-color-invalid,var(--spectrum-stepper-border-color-invalid));--mod-textfield-icon-spacing-inline-start-invalid:0}:host([invalid][focused]:not([disabled])) #textfield,:host([invalid]:not([disabled])) #textfield:focus{--mod-infield-button-border-color:var(--mod-stepper-border-color-focus-invalid,var(--spectrum-stepper-border-color-focus-invalid))}:host([invalid][keyboard-focused]:not([disabled])) #textfield,:host([invalid]:not([disabled])) #textfield:focus-visible{--mod-infield-button-border-color:var(--mod-stepper-border-color-keyboard-focus-invalid,var(--spectrum-stepper-border-color-keyboard-focus-invalid))}:host([disabled]) #textfield{--mod-stepper-border-color:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-border-color-hover:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-border-color-focus:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-border-color-focus-hover:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-border-color-keyboard-focus:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-buttons-background-color:var(--spectrum-stepper-buttons-background-color-disabled);--mod-infield-button-border-width:var(--spectrum-stepper-button-border-width-disabled);--mod-infield-button-border-color:var(--spectrum-stepper-button-border-color-disabled);--mod-textfield-border-color-disabled:var(--spectrum-stepper-button-border-color-disabled)}#textfield .input{border-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-border-color,var(--spectrum-stepper-border-color)));border-inline-end-width:0;border-start-end-radius:0;border-end-end-radius:0}#textfield.hide-stepper .input{border-inline-end-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width));border-start-end-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius));border-end-end-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius))}#textfield .buttons{box-sizing:border-box;block-size:var(--mod-stepper-height,var(--spectrum-stepper-height));inline-size:var(--mod-stepper-button-width,var(--spectrum-stepper-button-width));border-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-border-color,var(--spectrum-stepper-border-color)));border-style:var(--mod-stepper-buttons-border-style,var(--spectrum-stepper-buttons-border-style));border-width:var(--highcontrast-stepper-buttons-border-width,var(--mod-stepper-buttons-border-width,var(--spectrum-stepper-buttons-border-width)));background-color:var(--highcontrast-stepper-buttons-background-color,var(--mod-stepper-buttons-background-color,var(--spectrum-stepper-buttons-background-color)));transition:border-color var(--mod-stepper-animation-duration,var(--spectrum-stepper-animation-duration))ease-in-out;border-inline-start-width:0;border-start-end-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius));border-end-end-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius));flex-direction:column;justify-content:center;display:flex}:host([quiet]) #textfield{border-start-start-radius:0;border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:0}:host([quiet]) #textfield .input{--mod-textfield-focus-indicator-color:transparent}:host([quiet]) #textfield.hide-stepper .input{border-inline-end-width:0;border-end-end-radius:0}:host([quiet]) #textfield .buttons{--mod-infield-button-border-color:transparent;border-width:0;border-block-end-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width));border-block-end-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-border-color,var(--spectrum-stepper-border-color)));border-block-end-style:solid;border-end-end-radius:0}:host([quiet]) #textfield .button{--mod-infield-button-width-stacked:var(--mod-stepper-button-width-quiet,var(--spectrum-stepper-button-width));--mod-infield-button-border-color:var(--mod-stepper-border-color-quiet,var(--spectrum-stepper-button-border-color-quiet));--mod-infield-button-stacked-bottom-border-block-end-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width));--mod-infield-button-stacked-bottom-border-radius-end-end:0;--mod-infield-button-stacked-bottom-border-radius-end-start:0;--mod-infield-button-fill-justify-content:flex-end;padding:0}:host([quiet]) #textfield .buttons,:host([quiet]) #textfield .input{background-color:initial}:host([quiet][focused]) #textfield,:host([quiet]) #textfield:focus{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-focus,var(--mod-stepper-border-color-focus,var(--spectrum-stepper-border-color-focus)))}:host([quiet][keyboard-focused]:not([disabled])) #textfield{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-keyboard-focus,var(--mod-stepper-border-color-keyboard-focus,var(--spectrum-stepper-border-color-keyboard-focus)));outline:none}:host([quiet][keyboard-focused]:not([disabled])) #textfield:after{background-color:var(--highcontrast-stepper-focus-indicator-color,var(--mod-stepper-focus-indicator-color,var(--spectrum-stepper-focus-indicator-color)))}@media (hover:hover){:host(:hover:not([disabled])) #textfield{--mod-stepper-border-color:var(--highcontrast-stepper-border-color-hover,var(--mod-stepper-border-color-hover,var(--spectrum-stepper-border-color-hover)));--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-hover,var(--mod-stepper-buttons-border-color-hover,var(--spectrum-stepper-buttons-border-color-hover)))}:host([focused]:hover) #textfield,:host(:hover) #textfield:focus{--mod-stepper-border-color:var(--highcontrast-stepper-border-color-focus-hover,var(--mod-stepper-buttons-border-color-focus-hover,var(--spectrum-stepper-buttons-border-color-focus-hover)));--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-focus-hover,var(--mod-stepper-buttons-border-color-focus-hover,var(--spectrum-stepper-buttons-border-color-focus-hover)))}:host([focused]:hover) #textfield .buttons,:host([focused]:hover) #textfield .input,:host(:hover) #textfield:focus .buttons,:host(:hover) #textfield:focus .input{border-color:var(--highcontrast-stepper-border-color-focus-hover,var(--mod-stepper-border-color-focus-hover,var(--spectrum-stepper-border-color-focus-hover)))}:host([invalid]:not([disabled]):hover) #textfield{--mod-infield-button-border-color:var(--mod-stepper-border-color-hover-invalid,var(--spectrum-stepper-border-color-hover-invalid))}:host([invalid][focused]:not([disabled]):hover) #textfield,:host([invalid]:not([disabled]):hover) #textfield:focus{--mod-infield-button-border-color:var(--mod-stepper-border-color-focus-hover-invalid,var(--spectrum-stepper-border-color-focus-hover-invalid))}:host([quiet]:not([disabled]):hover) #textfield{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-hover,var(--mod-stepper-border-color-hover,var(--spectrum-stepper-border-color-hover)))}:host([quiet]:not([disabled]):hover) #textfield .buttons{background-color:initial}:host([quiet][focused]:hover) #textfield,:host([quiet]:hover) #textfield:focus{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-focus-hover,var(--mod-stepper-border-color-focus-hover,var(--spectrum-stepper-border-color-focus-hover)))}:host([quiet][keyboard-focused]:not([disabled]):hover) #textfield{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-hover,var(--mod-stepper-border-color-hover,var(--spectrum-stepper-border-color-hover)))}}@media (forced-colors:active){:host{--highcontrast-stepper-border-color:CanvasText;--highcontrast-stepper-border-color-hover:Highlight;--highcontrast-stepper-border-color-focus:Highlight;--highcontrast-stepper-border-color-focus-hover:Highlight;--highcontrast-stepper-border-color-keyboard-focus:CanvasText;--highcontrast-stepper-button-background-color-default:Canvas;--highcontrast-stepper-button-background-color-hover:Canvas;--highcontrast-stepper-button-background-color-focus:Canvas;--highcontrast-stepper-button-background-color-keyboard-focus:Canvas;--highcontrast-stepper-focus-indicator-color:Highlight}:host([invalid]) #textfield{--highcontrast-stepper-border-color:Highlight;--highcontrast-stepper-border-color-hover:Highlight;--highcontrast-stepper-border-color-focus:Highlight;--highcontrast-stepper-border-color-focus-hover:Highlight;--highcontrast-stepper-border-color-keyboard-focus:Highlight;--highcontrast-infield-button-border-color:Highlight}:host([disabled]) #textfield{--highcontrast-stepper-border-color:GrayText;--highcontrast-infield-button-border-color:GrayText;--highcontrast-stepper-buttons-border-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width))}}:host{--spectrum-stepper-border-width:var(--system-stepper-border-width);--spectrum-stepper-border-color:var(--system-stepper-border-color);--spectrum-stepper-border-color-hover:var(--system-stepper-border-color-hover);--spectrum-stepper-border-color-focus:var(--system-stepper-border-color-focus);--spectrum-stepper-border-color-focus-hover:var(--system-stepper-border-color-focus-hover);--spectrum-stepper-border-color-keyboard-focus:var(--system-stepper-border-color-keyboard-focus);--spectrum-stepper-border-radius:var(--system-stepper-border-radius);--spectrum-stepper-min-width-multiplier:var(--system-stepper-min-width-multiplier);--spectrum-stepper-animation-duration:var(--system-stepper-animation-duration);--spectrum-stepper-buttons-border-style:var(--system-stepper-buttons-border-style);--spectrum-stepper-buttons-border-width:var(--system-stepper-buttons-border-width);--spectrum-stepper-buttons-border-color:var(--system-stepper-buttons-border-color);--spectrum-stepper-buttons-background-color:var(--system-stepper-buttons-background-color);--spectrum-stepper-buttons-border-color-hover:var(--system-stepper-buttons-border-color-hover);--spectrum-stepper-buttons-border-color-focus:var(--system-stepper-buttons-border-color-focus);--spectrum-stepper-buttons-border-color-keyboard-focus:var(--system-stepper-buttons-border-color-keyboard-focus);--spectrum-stepper-button-padding:var(--system-stepper-button-padding);--spectrum-stepper-button-border-radius-reset:var(--system-stepper-button-border-radius-reset);--spectrum-stepper-button-border-width:var(--system-stepper-button-border-width);--spectrum-stepper-button-background-color-focus:var(--system-stepper-button-background-color-focus);--spectrum-stepper-button-background-color-keyboard-focus:var(--system-stepper-button-background-color-keyboard-focus);--spectrum-stepper-border-color-invalid:var(--system-stepper-border-color-invalid);--spectrum-stepper-border-color-hover-invalid:var(--system-stepper-border-color-hover-invalid);--spectrum-stepper-border-color-focus-invalid:var(--system-stepper-border-color-focus-invalid);--spectrum-stepper-border-color-focus-hover-invalid:var(--system-stepper-border-color-focus-hover-invalid);--spectrum-stepper-border-color-keyboard-focus-invalid:var(--system-stepper-border-color-keyboard-focus-invalid);--spectrum-stepper-focus-indicator-width:var(--system-stepper-focus-indicator-width);--spectrum-stepper-focus-indicator-gap:var(--system-stepper-focus-indicator-gap);--spectrum-stepper-focus-indicator-color:var(--system-stepper-focus-indicator-color);--spectrum-stepper-button-border-color-quiet:var(--system-stepper-button-border-color-quiet);--spectrum-stepper-button-border-color-disabled:var(--system-stepper-button-border-color-disabled);--spectrum-stepper-button-border-width-disabled:var(--system-stepper-button-border-width-disabled);--spectrum-stepper-buttons-background-color-disabled:var(--system-stepper-buttons-background-color-disabled);--spectrum-stepper-button-width:var(--system-stepper-button-width);--spectrum-stepper-height:var(--system-stepper-height)}:host([size=s]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-s-button-width);--spectrum-stepper-height:var(--system-stepper-size-s-height)}:host([size=m]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-m-button-width);--spectrum-stepper-height:var(--system-stepper-size-m-height)}:host([size=l]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-l-button-width);--spectrum-stepper-height:var(--system-stepper-size-l-height)}:host([size=xl]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-xl-button-width);--spectrum-stepper-height:var(--system-stepper-size-xl-height)}:host{inline-size:var(--mod-stepper-width,var(--spectrum-stepper-width));--swc-number-field-width:calc(var(--mod-stepper-height,var(--spectrum-stepper-height))*var(--mod-stepper-min-width-multiplier,var(--spectrum-text-field-minimum-width-multiplier)) + var(--mod-stepper-button-width,var(--spectrum-stepper-button-width)) + var(--mod-stepper-border-width,var(--spectrum-stepper-border-width))*2);--mod-infield-button-border-width:var(--unset-value-resets-inheritance);--spectrum-stepper-width:var(--swc-number-field-width)}:host([size=s]){--spectrum-stepper-width:calc(var(--swc-number-field-width)/5*4)}:host([size=l]){--spectrum-stepper-width:calc(var(--swc-number-field-width)*1.25)}:host([size=xl]){--spectrum-stepper-width:calc(var(--swc-number-field-width)*1.25*1.25)}#textfield{inline-size:100%}.input{font-variant-numeric:tabular-nums}:host([readonly]) .buttons{pointer-events:none;visibility:hidden}:host([readonly]:not([disabled],[invalid],[focused],[keyboard-focused])) #textfield:hover .input{border-color:#0000}:host([hide-stepper]:not([quiet])) #textfield input{border:var(--mod-textfield-border-width,var(--spectrum-textfield-border-width))solid var(--mod-textfield-border-color,var(--spectrum-textfield-border-color));border-radius:var(--spectrum-textfield-corner-radius)}:host([quiet]) #textfield .button{--mod-infield-button-border-color:var(--mod-infield-border-color-quiet,transparent);--mod-infield-button-edge-to-fill:0;--mod-infield-button-border-width:var(--mod-infield-button-border-width-quiet,0)}\n`;\nexport default styles;"],
|
|
5
|
+
"mappings": ";AAWA,SAAS,WAAW;AACpB,MAAM,SAAS;AAAA;AAAA;AAGf,eAAe;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
"use strict";import{css as r}from"@spectrum-web-components/base";const e=r`
|
|
2
|
+
#textfield{--spectrum-stepper-width:calc(var(--mod-stepper-height,var(--spectrum-stepper-height))*var(--mod-stepper-min-width-multiplier,var(--spectrum-stepper-min-width-multiplier)) + var(--mod-stepper-button-width,var(--spectrum-stepper-button-width)) + var(--mod-stepper-border-width,var(--spectrum-stepper-border-width))*2);--mod-infield-button-border-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-buttons-border-color,var(--spectrum-stepper-buttons-border-color)));--mod-infield-button-border-width:var(--mod-stepper-button-border-width,var(--spectrum-stepper-button-border-width));--mod-infield-button-border-radius-reset:var(--spectrum-stepper-button-border-radius-reset);--mod-textfield-border-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width));inline-size:var(--mod-stepper-width,var(--spectrum-stepper-width));block-size:var(--mod-stepper-height,var(--spectrum-stepper-height));border-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius));border-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-border-color,var(--spectrum-stepper-border-color)));flex-flow:row;display:inline-flex;position:relative}#textfield:before{content:""}#textfield:after{content:"";inline-size:100%;block-size:var(--mod-stepper-focus-indicator-width,var(--spectrum-stepper-focus-indicator-width));position:absolute;inset-block-end:calc(( var(--mod-stepper-focus-indicator-gap,var(--spectrum-stepper-focus-indicator-gap)) + var(--mod-stepper-focus-indicator-width,var(--spectrum-stepper-focus-indicator-width)))*-1);inset-inline-start:0}:host([focused]) #textfield,#textfield:focus{--mod-stepper-border-color:var(--highcontrast-stepper-border-color-focus,var(--mod-stepper-border-color-focus,var(--spectrum-stepper-border-color-focus)));--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-focus,var(--mod-stepper-buttons-border-color-focus,var(--spectrum-stepper-buttons-border-color-focus)))}:host([focused]:not([disabled])) #textfield .input,:host(:not([disabled])) #textfield:focus .input{outline:none}:host([focused]:not([disabled])) #textfield .buttons,:host([focused]:not([disabled])) #textfield .input,:host(:not([disabled])) #textfield:focus .buttons,:host(:not([disabled])) #textfield:focus .input{border-color:var(--highcontrast-stepper-border-color-focus,var(--mod-stepper-border-color-focus,var(--spectrum-stepper-border-color-focus)))}:host([keyboard-focused]) #textfield,#textfield:focus-visible{--mod-stepper-border-color:var(--highcontrast-stepper-border-color-keyboard-focus,var(--mod-stepper-buttons-border-color-keyboard-focus,var(--spectrum-stepper-buttons-border-color-keyboard-focus)));--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-keyboard-focus,var(--mod-stepper-buttons-border-color-keyboard-focus,var(--spectrum-stepper-buttons-border-color-keyboard-focus)))}:host([keyboard-focused]:not([disabled])) #textfield,:host(:not([disabled])) #textfield:focus-visible{outline:var(--mod-stepper-focus-indicator-width,var(--spectrum-stepper-focus-indicator-width))solid;outline-color:var(--highcontrast-stepper-focus-indicator-color,var(--mod-stepper-focus-indicator-color,var(--spectrum-stepper-focus-indicator-color)));outline-offset:var(--mod-stepper-focus-indicator-gap,var(--spectrum-stepper-focus-indicator-gap))}:host([keyboard-focused]:not([disabled])) #textfield .input,:host(:not([disabled])) #textfield:focus-visible .input{outline:none}:host([keyboard-focused]:not([disabled])) #textfield .buttons,:host([keyboard-focused]:not([disabled])) #textfield .input,:host(:not([disabled])) #textfield:focus-visible .buttons,:host(:not([disabled])) #textfield:focus-visible .input{border-color:var(--highcontrast-stepper-border-color-keyboard-focus,var(--mod-stepper-border-color-keyboard-focus,var(--spectrum-stepper-border-color-keyboard-focus)))}:host([invalid]:not([disabled])) #textfield{--mod-stepper-border-color:var(--mod-stepper-border-color-invalid,var(--spectrum-stepper-border-color-invalid));--mod-stepper-border-color-hover:var(--mod-stepper-border-color-hover-invalid,var(--spectrum-stepper-border-color-hover-invalid));--mod-stepper-border-color-focus:var(--mod-stepper-border-color-focus-invalid,var(--spectrum-stepper-border-color-focus-invalid));--mod-stepper-border-color-focus-hover:var(--mod-stepper-border-color-focus-hover-invalid,var(--spectrum-stepper-border-color-focus-hover-invalid));--mod-stepper-border-color-keyboard-focus:var(--mod-stepper-border-color-keyboard-focus-invalid,var(--spectrum-stepper-border-color-keyboard-focus-invalid));--mod-infield-button-border-color:var(--mod-stepper-border-color-invalid,var(--spectrum-stepper-border-color-invalid));--mod-textfield-icon-spacing-inline-start-invalid:0}:host([invalid][focused]:not([disabled])) #textfield,:host([invalid]:not([disabled])) #textfield:focus{--mod-infield-button-border-color:var(--mod-stepper-border-color-focus-invalid,var(--spectrum-stepper-border-color-focus-invalid))}:host([invalid][keyboard-focused]:not([disabled])) #textfield,:host([invalid]:not([disabled])) #textfield:focus-visible{--mod-infield-button-border-color:var(--mod-stepper-border-color-keyboard-focus-invalid,var(--spectrum-stepper-border-color-keyboard-focus-invalid))}:host([disabled]) #textfield{--mod-stepper-border-color:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-border-color-hover:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-border-color-focus:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-border-color-focus-hover:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-border-color-keyboard-focus:var(--spectrum-stepper-button-border-color-disabled);--mod-stepper-buttons-background-color:var(--spectrum-stepper-buttons-background-color-disabled);--mod-infield-button-border-width:var(--spectrum-stepper-button-border-width-disabled);--mod-infield-button-border-color:var(--spectrum-stepper-button-border-color-disabled);--mod-textfield-border-color-disabled:var(--spectrum-stepper-button-border-color-disabled)}#textfield .input{border-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-border-color,var(--spectrum-stepper-border-color)));border-inline-end-width:0;border-start-end-radius:0;border-end-end-radius:0}#textfield.hide-stepper .input{border-inline-end-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width));border-start-end-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius));border-end-end-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius))}#textfield .buttons{box-sizing:border-box;block-size:var(--mod-stepper-height,var(--spectrum-stepper-height));inline-size:var(--mod-stepper-button-width,var(--spectrum-stepper-button-width));border-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-border-color,var(--spectrum-stepper-border-color)));border-style:var(--mod-stepper-buttons-border-style,var(--spectrum-stepper-buttons-border-style));border-width:var(--highcontrast-stepper-buttons-border-width,var(--mod-stepper-buttons-border-width,var(--spectrum-stepper-buttons-border-width)));background-color:var(--highcontrast-stepper-buttons-background-color,var(--mod-stepper-buttons-background-color,var(--spectrum-stepper-buttons-background-color)));transition:border-color var(--mod-stepper-animation-duration,var(--spectrum-stepper-animation-duration))ease-in-out;border-inline-start-width:0;border-start-end-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius));border-end-end-radius:var(--mod-stepper-border-radius,var(--spectrum-stepper-border-radius));flex-direction:column;justify-content:center;display:flex}:host([quiet]) #textfield{border-start-start-radius:0;border-start-end-radius:0;border-end-end-radius:0;border-end-start-radius:0}:host([quiet]) #textfield .input{--mod-textfield-focus-indicator-color:transparent}:host([quiet]) #textfield.hide-stepper .input{border-inline-end-width:0;border-end-end-radius:0}:host([quiet]) #textfield .buttons{--mod-infield-button-border-color:transparent;border-width:0;border-block-end-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width));border-block-end-color:var(--highcontrast-stepper-border-color,var(--mod-stepper-border-color,var(--spectrum-stepper-border-color)));border-block-end-style:solid;border-end-end-radius:0}:host([quiet]) #textfield .button{--mod-infield-button-width-stacked:var(--mod-stepper-button-width-quiet,var(--spectrum-stepper-button-width));--mod-infield-button-border-color:var(--mod-stepper-border-color-quiet,var(--spectrum-stepper-button-border-color-quiet));--mod-infield-button-stacked-bottom-border-block-end-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width));--mod-infield-button-stacked-bottom-border-radius-end-end:0;--mod-infield-button-stacked-bottom-border-radius-end-start:0;--mod-infield-button-fill-justify-content:flex-end;padding:0}:host([quiet]) #textfield .buttons,:host([quiet]) #textfield .input{background-color:initial}:host([quiet][focused]) #textfield,:host([quiet]) #textfield:focus{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-focus,var(--mod-stepper-border-color-focus,var(--spectrum-stepper-border-color-focus)))}:host([quiet][keyboard-focused]:not([disabled])) #textfield{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-keyboard-focus,var(--mod-stepper-border-color-keyboard-focus,var(--spectrum-stepper-border-color-keyboard-focus)));outline:none}:host([quiet][keyboard-focused]:not([disabled])) #textfield:after{background-color:var(--highcontrast-stepper-focus-indicator-color,var(--mod-stepper-focus-indicator-color,var(--spectrum-stepper-focus-indicator-color)))}@media (hover:hover){:host(:hover:not([disabled])) #textfield{--mod-stepper-border-color:var(--highcontrast-stepper-border-color-hover,var(--mod-stepper-border-color-hover,var(--spectrum-stepper-border-color-hover)));--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-hover,var(--mod-stepper-buttons-border-color-hover,var(--spectrum-stepper-buttons-border-color-hover)))}:host([focused]:hover) #textfield,:host(:hover) #textfield:focus{--mod-stepper-border-color:var(--highcontrast-stepper-border-color-focus-hover,var(--mod-stepper-buttons-border-color-focus-hover,var(--spectrum-stepper-buttons-border-color-focus-hover)));--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-focus-hover,var(--mod-stepper-buttons-border-color-focus-hover,var(--spectrum-stepper-buttons-border-color-focus-hover)))}:host([focused]:hover) #textfield .buttons,:host([focused]:hover) #textfield .input,:host(:hover) #textfield:focus .buttons,:host(:hover) #textfield:focus .input{border-color:var(--highcontrast-stepper-border-color-focus-hover,var(--mod-stepper-border-color-focus-hover,var(--spectrum-stepper-border-color-focus-hover)))}:host([invalid]:not([disabled]):hover) #textfield{--mod-infield-button-border-color:var(--mod-stepper-border-color-hover-invalid,var(--spectrum-stepper-border-color-hover-invalid))}:host([invalid][focused]:not([disabled]):hover) #textfield,:host([invalid]:not([disabled]):hover) #textfield:focus{--mod-infield-button-border-color:var(--mod-stepper-border-color-focus-hover-invalid,var(--spectrum-stepper-border-color-focus-hover-invalid))}:host([quiet]:not([disabled]):hover) #textfield{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-hover,var(--mod-stepper-border-color-hover,var(--spectrum-stepper-border-color-hover)))}:host([quiet]:not([disabled]):hover) #textfield .buttons{background-color:initial}:host([quiet][focused]:hover) #textfield,:host([quiet]:hover) #textfield:focus{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-focus-hover,var(--mod-stepper-border-color-focus-hover,var(--spectrum-stepper-border-color-focus-hover)))}:host([quiet][keyboard-focused]:not([disabled]):hover) #textfield{--mod-infield-button-border-color:var(--highcontrast-stepper-border-color-hover,var(--mod-stepper-border-color-hover,var(--spectrum-stepper-border-color-hover)))}}@media (forced-colors:active){:host{--highcontrast-stepper-border-color:CanvasText;--highcontrast-stepper-border-color-hover:Highlight;--highcontrast-stepper-border-color-focus:Highlight;--highcontrast-stepper-border-color-focus-hover:Highlight;--highcontrast-stepper-border-color-keyboard-focus:CanvasText;--highcontrast-stepper-button-background-color-default:Canvas;--highcontrast-stepper-button-background-color-hover:Canvas;--highcontrast-stepper-button-background-color-focus:Canvas;--highcontrast-stepper-button-background-color-keyboard-focus:Canvas;--highcontrast-stepper-focus-indicator-color:Highlight}:host([invalid]) #textfield{--highcontrast-stepper-border-color:Highlight;--highcontrast-stepper-border-color-hover:Highlight;--highcontrast-stepper-border-color-focus:Highlight;--highcontrast-stepper-border-color-focus-hover:Highlight;--highcontrast-stepper-border-color-keyboard-focus:Highlight;--highcontrast-infield-button-border-color:Highlight}:host([disabled]) #textfield{--highcontrast-stepper-border-color:GrayText;--highcontrast-infield-button-border-color:GrayText;--highcontrast-stepper-buttons-border-width:var(--mod-stepper-border-width,var(--spectrum-stepper-border-width))}}:host{--spectrum-stepper-border-width:var(--system-stepper-border-width);--spectrum-stepper-border-color:var(--system-stepper-border-color);--spectrum-stepper-border-color-hover:var(--system-stepper-border-color-hover);--spectrum-stepper-border-color-focus:var(--system-stepper-border-color-focus);--spectrum-stepper-border-color-focus-hover:var(--system-stepper-border-color-focus-hover);--spectrum-stepper-border-color-keyboard-focus:var(--system-stepper-border-color-keyboard-focus);--spectrum-stepper-border-radius:var(--system-stepper-border-radius);--spectrum-stepper-min-width-multiplier:var(--system-stepper-min-width-multiplier);--spectrum-stepper-animation-duration:var(--system-stepper-animation-duration);--spectrum-stepper-buttons-border-style:var(--system-stepper-buttons-border-style);--spectrum-stepper-buttons-border-width:var(--system-stepper-buttons-border-width);--spectrum-stepper-buttons-border-color:var(--system-stepper-buttons-border-color);--spectrum-stepper-buttons-background-color:var(--system-stepper-buttons-background-color);--spectrum-stepper-buttons-border-color-hover:var(--system-stepper-buttons-border-color-hover);--spectrum-stepper-buttons-border-color-focus:var(--system-stepper-buttons-border-color-focus);--spectrum-stepper-buttons-border-color-keyboard-focus:var(--system-stepper-buttons-border-color-keyboard-focus);--spectrum-stepper-button-padding:var(--system-stepper-button-padding);--spectrum-stepper-button-border-radius-reset:var(--system-stepper-button-border-radius-reset);--spectrum-stepper-button-border-width:var(--system-stepper-button-border-width);--spectrum-stepper-button-background-color-focus:var(--system-stepper-button-background-color-focus);--spectrum-stepper-button-background-color-keyboard-focus:var(--system-stepper-button-background-color-keyboard-focus);--spectrum-stepper-border-color-invalid:var(--system-stepper-border-color-invalid);--spectrum-stepper-border-color-hover-invalid:var(--system-stepper-border-color-hover-invalid);--spectrum-stepper-border-color-focus-invalid:var(--system-stepper-border-color-focus-invalid);--spectrum-stepper-border-color-focus-hover-invalid:var(--system-stepper-border-color-focus-hover-invalid);--spectrum-stepper-border-color-keyboard-focus-invalid:var(--system-stepper-border-color-keyboard-focus-invalid);--spectrum-stepper-focus-indicator-width:var(--system-stepper-focus-indicator-width);--spectrum-stepper-focus-indicator-gap:var(--system-stepper-focus-indicator-gap);--spectrum-stepper-focus-indicator-color:var(--system-stepper-focus-indicator-color);--spectrum-stepper-button-border-color-quiet:var(--system-stepper-button-border-color-quiet);--spectrum-stepper-button-border-color-disabled:var(--system-stepper-button-border-color-disabled);--spectrum-stepper-button-border-width-disabled:var(--system-stepper-button-border-width-disabled);--spectrum-stepper-buttons-background-color-disabled:var(--system-stepper-buttons-background-color-disabled);--spectrum-stepper-button-width:var(--system-stepper-button-width);--spectrum-stepper-height:var(--system-stepper-height)}:host([size=s]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-s-button-width);--spectrum-stepper-height:var(--system-stepper-size-s-height)}:host([size=m]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-m-button-width);--spectrum-stepper-height:var(--system-stepper-size-m-height)}:host([size=l]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-l-button-width);--spectrum-stepper-height:var(--system-stepper-size-l-height)}:host([size=xl]) #textfield{--spectrum-stepper-button-width:var(--system-stepper-size-xl-button-width);--spectrum-stepper-height:var(--system-stepper-size-xl-height)}:host{inline-size:var(--mod-stepper-width,var(--spectrum-stepper-width));--swc-number-field-width:calc(var(--mod-stepper-height,var(--spectrum-stepper-height))*var(--mod-stepper-min-width-multiplier,var(--spectrum-text-field-minimum-width-multiplier)) + var(--mod-stepper-button-width,var(--spectrum-stepper-button-width)) + var(--mod-stepper-border-width,var(--spectrum-stepper-border-width))*2);--mod-infield-button-border-width:var(--unset-value-resets-inheritance);--spectrum-stepper-width:var(--swc-number-field-width)}:host([size=s]){--spectrum-stepper-width:calc(var(--swc-number-field-width)/5*4)}:host([size=l]){--spectrum-stepper-width:calc(var(--swc-number-field-width)*1.25)}:host([size=xl]){--spectrum-stepper-width:calc(var(--swc-number-field-width)*1.25*1.25)}#textfield{inline-size:100%}.input{font-variant-numeric:tabular-nums}:host([readonly]) .buttons{pointer-events:none;visibility:hidden}:host([readonly]:not([disabled],[invalid],[focused],[keyboard-focused])) #textfield:hover .input{border-color:#0000}:host([hide-stepper]:not([quiet])) #textfield input{border:var(--mod-textfield-border-width,var(--spectrum-textfield-border-width))solid var(--mod-textfield-border-color,var(--spectrum-textfield-border-color));border-radius:var(--spectrum-textfield-corner-radius)}:host([quiet]) #textfield .button{--mod-infield-button-border-color:var(--mod-infield-border-color-quiet,transparent);--mod-infield-button-edge-to-fill:0;--mod-infield-button-border-width:var(--mod-infield-button-border-width-quiet,0)}
|
|
3
|
+
`;export default e;
|
|
4
|
+
//# sourceMappingURL=number-field.css.js.map
|