@vonage/vivid 5.28.0 → 5.29.0
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/bundled/definition17.cjs +1 -1
- package/bundled/definition17.js +1 -1
- package/bundled/definition18.cjs +1 -1
- package/bundled/definition18.js +1 -1
- package/bundled/definition25.cjs +4 -4
- package/bundled/definition25.js +4 -4
- package/bundled/definition5.cjs +1 -1
- package/bundled/definition5.js +1 -1
- package/bundled/numberConverter.cjs +1 -1
- package/bundled/numberConverter.js +1 -1
- package/bundled/picker-field.template.cjs +5 -3
- package/bundled/picker-field.template.js +20 -17
- package/bundled/vivid-element.cjs +1 -1
- package/bundled/vivid-element.js +1 -1
- package/color-picker/index.cjs +1 -1
- package/color-picker/index.js +1 -1
- package/custom-elements.json +2369 -2195
- package/data-grid/index.cjs +1 -1
- package/data-grid/index.js +1 -1
- package/empty-state/index.cjs +2 -2
- package/empty-state/index.js +3 -3
- package/lib/date-picker/date-picker.d.ts +4 -0
- package/lib/date-range-picker/date-range-picker.d.ts +2 -0
- package/lib/date-time-picker/date-time-picker.d.ts +4 -0
- package/lib/empty-state/definition.d.ts +1 -1
- package/lib/empty-state/empty-state.d.ts +3 -1
- package/lib/number-field/definition.d.ts +1 -1
- package/lib/number-field/number-field.d.ts +3 -1
- package/lib/rich-text-editor/rte/features/suggest.d.ts +7 -1
- package/lib/time-picker/time-picker.d.ts +2 -0
- package/listbox/index.cjs +1 -1
- package/listbox/index.js +1 -1
- package/locales/de-DE.cjs +1 -1
- package/locales/de-DE.js +1 -1
- package/locales/en-GB.cjs +1 -1
- package/locales/en-GB.js +1 -1
- package/locales/ja-JP.cjs +1 -1
- package/locales/ja-JP.js +1 -1
- package/locales/zh-CN.cjs +1 -1
- package/locales/zh-CN.js +1 -1
- package/number-field/index.cjs +16 -14
- package/number-field/index.js +49 -31
- package/package.json +22 -22
- package/rich-text-editor/index.cjs +14 -14
- package/rich-text-editor/index.js +1820 -1791
- package/shared/picker-field/mixins/calendar-picker.d.ts +1 -0
- package/shared/picker-field/mixins/calendar-picker.template.d.ts +1 -0
- package/shared/picker-field/mixins/min-max-calendar-picker.d.ts +1 -0
- package/shared/picker-field/mixins/single-date-picker.d.ts +1 -0
- package/shared/picker-field/mixins/single-value-picker.d.ts +1 -0
- package/shared/picker-field/mixins/time-selection-picker.d.ts +1 -0
- package/shared/picker-field/mixins/time-selection-picker.template.d.ts +2 -0
- package/shared/picker-field/picker-field.d.ts +38 -31
- package/tabs/index.cjs +1 -1
- package/tabs/index.js +1 -1
- package/unbundled/definition16.cjs +1 -1
- package/unbundled/definition16.js +1 -1
- package/unbundled/definition2.cjs +4 -4
- package/unbundled/definition2.js +4 -4
- package/unbundled/definition28.cjs +5 -1
- package/unbundled/definition28.js +5 -1
- package/unbundled/definition29.cjs +1 -1
- package/unbundled/definition29.js +1 -1
- package/unbundled/definition30.cjs +1 -1
- package/unbundled/definition30.js +1 -1
- package/unbundled/definition35.cjs +1 -1
- package/unbundled/definition35.js +1 -1
- package/unbundled/definition42.cjs +3 -2
- package/unbundled/definition42.js +3 -2
- package/unbundled/definition50.cjs +1 -1
- package/unbundled/definition50.js +1 -1
- package/unbundled/definition55.cjs +41 -8
- package/unbundled/definition55.js +41 -8
- package/unbundled/definition6.cjs +1 -1
- package/unbundled/definition6.js +1 -1
- package/unbundled/definition63.cjs +45 -20
- package/unbundled/definition63.js +40 -15
- package/unbundled/definition76.cjs +1 -1
- package/unbundled/definition76.js +1 -1
- package/unbundled/en-US.cjs +1 -1
- package/unbundled/en-US.js +1 -1
- package/unbundled/numberConverter.cjs +1 -1
- package/unbundled/numberConverter.js +1 -1
- package/unbundled/picker-field.template.cjs +6 -1
- package/unbundled/picker-field.template.js +6 -1
- package/unbundled/vivid-element.cjs +1 -1
- package/unbundled/vivid-element.js +1 -1
- package/video-player/index.cjs +25 -25
- package/video-player/index.js +2437 -2412
- package/vivid.api.json +158 -3
|
@@ -6,7 +6,7 @@ import { t as componentEnum } from "./component-enum.js";
|
|
|
6
6
|
import { attr, html, observable, slotted, when } from "@microsoft/fast-element";
|
|
7
7
|
import { classNames } from "@microsoft/fast-web-utilities";
|
|
8
8
|
//#region src/lib/empty-state/empty-state.scss?inline
|
|
9
|
-
var empty_state_default = ":host{display:block}.base{--_empty-state-icon-container:120px;--_empty-state-icon-
|
|
9
|
+
var empty_state_default = ":host{display:block}.base{--_empty-state-icon-container:120px;--_empty-state-icon-font-size:40px;--_empty-state-box-shadow:20px;--_empty-state-icon-padding:20px;--_empty-state-border-width:1px;--_empty-state-gap:24px;box-sizing:border-box;justify-content:center;align-items:center;gap:var(--_empty-state-gap);flex-direction:column;block-size:100%;display:flex}.base.size-condensed{--_empty-state-icon-container:80px;--_empty-state-icon-font-size:28px;--_empty-state-box-shadow:14px;--_empty-state-icon-padding:12px;--_empty-state-border-width:1px;--_empty-state-gap:16px}.base.size-expanded{--_empty-state-icon-container:240px;--_empty-state-icon-font-size:80px;--_empty-state-box-shadow:40px;--_empty-state-icon-padding:38px;--_empty-state-border-width:2px;--_empty-state-gap:24px}.icon-container{block-size:var(--_empty-state-icon-container);box-shadow:inset 0 0 0 var(--_empty-state-box-shadow) color-mix(in sRGB, var(--_connotation-color-primary), transparent 90%);font-size:var(--_empty-state-icon-font-size);inline-size:var(--_empty-state-icon-container);border-radius:50%;justify-content:center;align-items:center;display:flex}.icon-container .icon{padding:var(--_empty-state-icon-padding);border:var(--_empty-state-border-width) solid var(--_connotation-color-dim);border-radius:inherit;color:var(--_connotation-color-firm-all)}.content{color:var(--vvd-color-canvas-text);font:var(--vvd-typography-base);text-align:center;flex-direction:column;gap:8px;display:flex}header{color:var(--_connotation-color-firm-all);font:var(--vvd-typography-base-extended-bold)}.actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.base.no-actions .actions{display:none}";
|
|
10
10
|
//#endregion
|
|
11
11
|
//#region src/lib/empty-state/empty-state.ts
|
|
12
12
|
var emptyStateConnotation = componentEnum([
|
|
@@ -29,6 +29,7 @@ var emptyStateConnotation = componentEnum([
|
|
|
29
29
|
var EmptyState = class extends VividElement {};
|
|
30
30
|
__decorate([attr], EmptyState.prototype, "connotation", void 0);
|
|
31
31
|
__decorate([attr], EmptyState.prototype, "headline", void 0);
|
|
32
|
+
__decorate([attr], EmptyState.prototype, "size", void 0);
|
|
32
33
|
__decorate([attr], EmptyState.prototype, "icon", void 0);
|
|
33
34
|
__decorate([attr({ attribute: "icon-decoration" })], EmptyState.prototype, "iconDecoration", void 0);
|
|
34
35
|
__decorate([observable], EmptyState.prototype, "slottedActionItems", void 0);
|
|
@@ -37,7 +38,7 @@ __decorate([observable], EmptyState.prototype, "slottedActionItems", void 0);
|
|
|
37
38
|
var EmptyStateTemplate = (context) => {
|
|
38
39
|
const iconTag = context.tagFor(Icon);
|
|
39
40
|
return html` <div
|
|
40
|
-
class="${(x) => classNames("base", `connotation-${emptyStateConnotation.parse(x.connotation)}`, ["no-actions", x.slottedActionItems?.length === 0])}"
|
|
41
|
+
class="${(x) => classNames("base", `connotation-${emptyStateConnotation.parse(x.connotation)}`, ["no-actions", x.slottedActionItems?.length === 0], [`size-${x.size}`, Boolean(x.size)])}"
|
|
41
42
|
aria-labelledby="${(x) => x.headline ? "empty-state-headline" : null}"
|
|
42
43
|
>
|
|
43
44
|
<slot name="graphic">
|
|
@@ -600,7 +600,7 @@ require_decorate.__decorate([_microsoft_fast_element.observable], Listbox.protot
|
|
|
600
600
|
require_decorate.__decorate([_microsoft_fast_element.observable], Listbox.prototype, "values", void 0);
|
|
601
601
|
//#endregion
|
|
602
602
|
//#region src/lib/listbox/listbox.scss?inline
|
|
603
|
-
var listbox_default = ":host{outline:none;flex-direction:column;gap:2px;display:flex}:host(:not(:focus-visible)){--_suppressable-focus-shadow:none;--_suppressable-focus-outline:none;--_suppressable-focus-outline-offset:0}.no-matches{padding:8px 16px}";
|
|
603
|
+
var listbox_default = ":host{--option-text-line-clamp:1;--option-text-secondary-line-clamp:1;outline:none;flex-direction:column;gap:2px;display:flex}:host(:not(:focus-visible)){--_suppressable-focus-shadow:none;--_suppressable-focus-outline:none;--_suppressable-focus-outline-offset:0}.no-matches{padding:8px 16px}";
|
|
604
604
|
//#endregion
|
|
605
605
|
//#region src/lib/listbox/listbox.template.ts
|
|
606
606
|
var hasNoMatches = (x) => x._hasNoMatches;
|
|
@@ -598,7 +598,7 @@ __decorate([observable], Listbox.prototype, "_activeDescendantId", void 0);
|
|
|
598
598
|
__decorate([observable], Listbox.prototype, "values", void 0);
|
|
599
599
|
//#endregion
|
|
600
600
|
//#region src/lib/listbox/listbox.scss?inline
|
|
601
|
-
var listbox_default = ":host{outline:none;flex-direction:column;gap:2px;display:flex}:host(:not(:focus-visible)){--_suppressable-focus-shadow:none;--_suppressable-focus-outline:none;--_suppressable-focus-outline-offset:0}.no-matches{padding:8px 16px}";
|
|
601
|
+
var listbox_default = ":host{--option-text-line-clamp:1;--option-text-secondary-line-clamp:1;outline:none;flex-direction:column;gap:2px;display:flex}:host(:not(:focus-visible)){--_suppressable-focus-shadow:none;--_suppressable-focus-outline:none;--_suppressable-focus-outline-offset:0}.no-matches{padding:8px 16px}";
|
|
602
602
|
//#endregion
|
|
603
603
|
//#region src/lib/listbox/listbox.template.ts
|
|
604
604
|
var hasNoMatches = (x) => x._hasNoMatches;
|
|
@@ -21,7 +21,7 @@ const require_definition$4 = require("./definition36.cjs");
|
|
|
21
21
|
let _microsoft_fast_element = require("@microsoft/fast-element");
|
|
22
22
|
let _microsoft_fast_web_utilities = require("@microsoft/fast-web-utilities");
|
|
23
23
|
//#region src/lib/number-field/number-field.scss?inline
|
|
24
|
-
var number_field_default = ".label-wrapper{align-items:center;gap:var(--label-wrapper-gap,4px);flex-direction:row;display:flex}.label-wrapper[hidden]{display:none}.label:not(slot),.label::slotted(label){flex:0 auto}:host{display:inline-block}.base{--_text-field-gutter-start:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2.5);--_text-field-gutter-end:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2.5);--_text-field-icon-size:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2);--_text-field-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2)));--_text-field-border-radius:8px;--_text-field-pill-border-radius:24px;grid-template-columns:min-content 1fr max-content;align-items:center;gap:4px;width:100%;display:inline-grid}.base.size-condensed{--_text-field-gutter-start:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16)) / 2);--_text-field-gutter-end:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16)) / 2);--_text-field-icon-size:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8)) / 2);--_text-field-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));--_text-field-border-radius:4px}.base{user-select:none}.base:not(.disabled){--_low-ink-color:var(--vvd-color-neutral-600)}.base.disabled{--_low-ink-color:var(--_appearance-color-text)}.label:not(slot),.label::slotted(label){font:var(--vvd-typography-base);grid-area:1/1/auto/4;box-sizing:initial!important;padding:initial!important;margin:initial!important;color:var(--vvd-color-canvas-text)!important}.char-count+.label:not(slot),.char-count+.label::slotted(label){grid-column:1/3}.char-count{color:var(--_low-ink-color);font:var(--vvd-typography-base)}.label-wrapper{grid-area:1/1/auto/4}.char-count+.label-wrapper{grid-column:1/3}.fieldset{background-color:var(--_appearance-color-fill);font:var(--vvd-typography-base);grid-column:1/4;align-items:center;padding-block:0;transition:color .2s,background-color .2s;display:flex;position:relative}.fieldset:after{border-radius:inherit;block-size:100%;box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);content:\"\";pointer-events:none;inline-size:100%;transition:box-shadow .2s;display:block;position:absolute}.fieldset:focus-visible{outline:none}.base>.fieldset{block-size:var(--_text-field-block-size)}.base:not(.shape-pill) .fieldset{border-radius:var(--_text-field-border-radius)}.base.shape-pill .fieldset{border-radius:var(--_text-field-pill-border-radius)}.wrapper{border-radius:inherit;block-size:100%;inline-size:100%}.control{border-radius:inherit;text-align:start}.control:not(slot),.control::slotted(input){font:inherit;text-align:inherit;outline:#0000;box-sizing:border-box!important;border-radius:inherit!important;width:100%!important;margin:initial!important;appearance:none!important;block-size:100%!important;color:inherit!important;padding-block:0!important;padding-inline:var(--_text-field-gutter-start) var(--_text-field-gutter-end)!important;background-color:#0000!important;border:0!important}.control:not(slot,:focus),.control::slotted(input:not(:focus)){text-overflow:ellipsis!important}.control:not(slot):disabled,.control::slotted(input:disabled){cursor:not-allowed!important;opacity:1!important;-webkit-text-fill-color:var(--_appearance-color-text)!important}.control:not(slot)::placeholder{opacity:1!important;-webkit-text-fill-color:var(--_low-ink-color)!important}.control::slotted(input:-webkit-autofill),.control:not(slot):-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--_appearance-color-fill) inset;-webkit-text-fill-color:var(--_appearance-color-text)!important}.control::slotted(input:autofill),.control:not(slot):autofill{-webkit-box-shadow:0 0 0 1000px var(--_appearance-color-fill) inset;-webkit-text-fill-color:var(--_appearance-color-text)!important}.has-icon .control:not(slot),.has-icon .control::slotted(input){padding-inline-start:calc(var(--_text-field-icon-size) + var(--_text-field-gutter-start) * 2)!important}.icon{z-index:1;color:var(--_low-ink-color);font-size:var(--_text-field-icon-size);line-height:1;position:absolute;inset-block-start:50%;inset-inline-start:calc(100% + var(--_text-field-gutter-start));transform:translateY(-50%)}.leading-items-wrapper{position:relative}.base.no-leading .leading-items-wrapper{display:none}.action-items-wrapper{margin-inline-end:4px}.base:not(.action-items) .action-items-wrapper{display:none}@supports selector(:has(*)){.base:not(.has-activedescendant) .fieldset:has(.wrapper .control:focus-within):after{--focus-stroke-gap-color:transparent;box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}}@supports not selector(:has(*)){.base:not(.has-activedescendant) .wrapper:focus-within:after{box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px));--focus-stroke-gap-color:transparent;z-index:1;border-radius:inherit;content:\"\";pointer-events:none;display:block;position:absolute;inset:0}}:host([internal-part]) .fieldset{font:var(--vvd-typography-heading-4);background-color:#0000;line-height:1.1}:host([internal-part]) .fieldset:not(:focus-within):after{block-size:1px;inset-block-end:0}@supports selector(:has(*)){:host([internal-part]) .fieldset:has(.action-items-wrapper:focus-within):after{block-size:1px;inset-block-end:0}}:host([internal-part]) .control{text-align:center}slot[name=_mirrored-helper-text]{display:none}.base{--_text-field-gutter-end:70px}.control::-webkit-outer-spin-button,.control::-webkit-inner-spin-button{appearance:none}.control-buttons{z-index:1;display:flex;position:absolute;right:3px}.readonly .control-buttons,.disabled .control-buttons{pointer-events:none}.control-buttons .divider{margin-block:8px}.control-buttons>*{flex-shrink:0}";
|
|
24
|
+
var number_field_default = ".label-wrapper{align-items:center;gap:var(--label-wrapper-gap,4px);flex-direction:row;display:flex}.label-wrapper[hidden]{display:none}.label:not(slot),.label::slotted(label){flex:0 auto}:host{display:inline-block}.base{--_text-field-gutter-start:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2.5);--_text-field-gutter-end:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2.5);--_text-field-icon-size:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2);--_text-field-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2)));--_text-field-border-radius:8px;--_text-field-pill-border-radius:24px;grid-template-columns:min-content 1fr max-content;align-items:center;gap:4px;width:100%;display:inline-grid}.base.size-condensed{--_text-field-gutter-start:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16)) / 2);--_text-field-gutter-end:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16)) / 2);--_text-field-icon-size:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8)) / 2);--_text-field-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));--_text-field-border-radius:4px}.base{user-select:none}.base:not(.disabled){--_low-ink-color:var(--vvd-color-neutral-600)}.base.disabled{--_low-ink-color:var(--_appearance-color-text)}.label:not(slot),.label::slotted(label){font:var(--vvd-typography-base);grid-area:1/1/auto/4;box-sizing:initial!important;padding:initial!important;margin:initial!important;color:var(--vvd-color-canvas-text)!important}.char-count+.label:not(slot),.char-count+.label::slotted(label){grid-column:1/3}.char-count{color:var(--_low-ink-color);font:var(--vvd-typography-base)}.label-wrapper{grid-area:1/1/auto/4}.char-count+.label-wrapper{grid-column:1/3}.fieldset{background-color:var(--_appearance-color-fill);font:var(--vvd-typography-base);grid-column:1/4;align-items:center;padding-block:0;transition:color .2s,background-color .2s;display:flex;position:relative}.fieldset:after{border-radius:inherit;block-size:100%;box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);content:\"\";pointer-events:none;inline-size:100%;transition:box-shadow .2s;display:block;position:absolute}.fieldset:focus-visible{outline:none}.base>.fieldset{block-size:var(--_text-field-block-size)}.base:not(.shape-pill) .fieldset{border-radius:var(--_text-field-border-radius)}.base.shape-pill .fieldset{border-radius:var(--_text-field-pill-border-radius)}.wrapper{border-radius:inherit;block-size:100%;inline-size:100%}.control{border-radius:inherit;text-align:start}.control:not(slot),.control::slotted(input){font:inherit;text-align:inherit;outline:#0000;box-sizing:border-box!important;border-radius:inherit!important;width:100%!important;margin:initial!important;appearance:none!important;block-size:100%!important;color:inherit!important;padding-block:0!important;padding-inline:var(--_text-field-gutter-start) var(--_text-field-gutter-end)!important;background-color:#0000!important;border:0!important}.control:not(slot,:focus),.control::slotted(input:not(:focus)){text-overflow:ellipsis!important}.control:not(slot):disabled,.control::slotted(input:disabled){cursor:not-allowed!important;opacity:1!important;-webkit-text-fill-color:var(--_appearance-color-text)!important}.control:not(slot)::placeholder{opacity:1!important;-webkit-text-fill-color:var(--_low-ink-color)!important}.control::slotted(input:-webkit-autofill),.control:not(slot):-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--_appearance-color-fill) inset;-webkit-text-fill-color:var(--_appearance-color-text)!important}.control::slotted(input:autofill),.control:not(slot):autofill{-webkit-box-shadow:0 0 0 1000px var(--_appearance-color-fill) inset;-webkit-text-fill-color:var(--_appearance-color-text)!important}.has-icon .control:not(slot),.has-icon .control::slotted(input){padding-inline-start:calc(var(--_text-field-icon-size) + var(--_text-field-gutter-start) * 2)!important}.icon{z-index:1;color:var(--_low-ink-color);font-size:var(--_text-field-icon-size);line-height:1;position:absolute;inset-block-start:50%;inset-inline-start:calc(100% + var(--_text-field-gutter-start));transform:translateY(-50%)}.leading-items-wrapper{position:relative}.base.no-leading .leading-items-wrapper{display:none}.action-items-wrapper{margin-inline-end:4px}.base:not(.action-items) .action-items-wrapper{display:none}@supports selector(:has(*)){.base:not(.has-activedescendant) .fieldset:has(.wrapper .control:focus-within):after{--focus-stroke-gap-color:transparent;box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}}@supports not selector(:has(*)){.base:not(.has-activedescendant) .wrapper:focus-within:after{box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px));--focus-stroke-gap-color:transparent;z-index:1;border-radius:inherit;content:\"\";pointer-events:none;display:block;position:absolute;inset:0}}:host([internal-part]) .fieldset{font:var(--vvd-typography-heading-4);background-color:#0000;line-height:1.1}:host([internal-part]) .fieldset:not(:focus-within):after{block-size:1px;inset-block-end:0}@supports selector(:has(*)){:host([internal-part]) .fieldset:has(.action-items-wrapper:focus-within):after{block-size:1px;inset-block-end:0}}:host([internal-part]) .control{text-align:center}slot[name=_mirrored-helper-text]{display:none}.base{--_text-field-gutter-end:70px}.base.no-steppers{--_text-field-gutter-end:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2.5)}.base.no-steppers.size-condensed{--_text-field-gutter-end:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16)) / 2)}.control::-webkit-outer-spin-button,.control::-webkit-inner-spin-button{appearance:none}.control-buttons{z-index:1;display:flex;position:absolute;right:3px}.control-buttons[hidden]{display:none}.readonly .control-buttons,.disabled .control-buttons{pointer-events:none}.control-buttons .divider{margin-block:8px}.control-buttons>*{flex-shrink:0}";
|
|
25
25
|
//#endregion
|
|
26
26
|
//#region src/lib/number-field/number-field.ts
|
|
27
27
|
var numberFieldAppearance = require_component_enum.componentEnum(["fieldset", "ghost"], "fieldset");
|
|
@@ -29,12 +29,26 @@ var STEP_DIRECTION = {
|
|
|
29
29
|
up: 1,
|
|
30
30
|
down: -1
|
|
31
31
|
};
|
|
32
|
+
/** The default step used for arrow key stepping when `step="any"` is set, matching native `<input type="number">` behavior. */
|
|
33
|
+
var ANY_STEP_FALLBACK = 1;
|
|
32
34
|
function makeStep(element, direction) {
|
|
35
|
+
const step = element._numericStep;
|
|
33
36
|
const value = parseFloat(element.value);
|
|
34
|
-
const stepUpValue = !isNaN(value) ? value + direction *
|
|
37
|
+
const stepUpValue = !isNaN(value) ? value + direction * step : element.min > 0 ? element.min : element.max < 0 ? element.max : !element.min ? direction * step : 0;
|
|
35
38
|
element.value = Number(stepUpValue.toFixed(12)).toString();
|
|
36
39
|
element._updatedValueAnnouncement = element.locale.numberField.updatedValueAnnouncement(element._presentationValue);
|
|
37
40
|
}
|
|
41
|
+
/** Allows `step` to be a finite number, or the string `"any"` which disables the native step constraint. */
|
|
42
|
+
var stepConverter = {
|
|
43
|
+
toView(value) {
|
|
44
|
+
if (value === "any") return "any";
|
|
45
|
+
return _microsoft_fast_element.nullableNumberConverter.toView(value);
|
|
46
|
+
},
|
|
47
|
+
fromView(value) {
|
|
48
|
+
if (typeof value === "string" && value.trim().toLowerCase() === "any") return "any";
|
|
49
|
+
return _microsoft_fast_element.nullableNumberConverter.fromView(value);
|
|
50
|
+
}
|
|
51
|
+
};
|
|
38
52
|
var buildNumberPatterns = (decimalSeparator) => {
|
|
39
53
|
const ds = decimalSeparator.source;
|
|
40
54
|
return {
|
|
@@ -71,6 +85,7 @@ var NumberField = class extends require_with_contextual_help.WithContextualHelp(
|
|
|
71
85
|
this.readOnly = false;
|
|
72
86
|
this.autofocus = false;
|
|
73
87
|
this.step = 1;
|
|
88
|
+
this.noSteppers = false;
|
|
74
89
|
this.isUserInput = false;
|
|
75
90
|
this._presentationValue = "";
|
|
76
91
|
this._updatedValueAnnouncement = "";
|
|
@@ -79,7 +94,19 @@ var NumberField = class extends require_with_contextual_help.WithContextualHelp(
|
|
|
79
94
|
}
|
|
80
95
|
/** @internal */
|
|
81
96
|
stepChanged(_, next) {
|
|
82
|
-
this.proxy.setAttribute("step", Number.isFinite(next) ? next.toString() : "");
|
|
97
|
+
this.proxy.setAttribute("step", next === "any" ? "any" : Number.isFinite(next) ? next.toString() : "");
|
|
98
|
+
this.validate();
|
|
99
|
+
}
|
|
100
|
+
/** @internal */
|
|
101
|
+
get _hasSteppers() {
|
|
102
|
+
return !this.noSteppers && this.step !== "any";
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* The step used by the stepper buttons and arrow keys. Falls back to `1` when `step` is `"any"`.
|
|
106
|
+
* @internal
|
|
107
|
+
*/
|
|
108
|
+
get _numericStep() {
|
|
109
|
+
return this.step === "any" ? ANY_STEP_FALLBACK : this.step;
|
|
83
110
|
}
|
|
84
111
|
/**
|
|
85
112
|
* Ensures that the max is greater than the min and that the value
|
|
@@ -221,7 +248,11 @@ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ converter: _mic
|
|
|
221
248
|
require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ converter: _microsoft_fast_element.nullableNumberConverter })], NumberField.prototype, "minlength", void 0);
|
|
222
249
|
require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ converter: _microsoft_fast_element.nullableNumberConverter })], NumberField.prototype, "size", void 0);
|
|
223
250
|
require_decorate.__decorate([(0, _microsoft_fast_element.attr)()], NumberField.prototype, "scale", void 0);
|
|
224
|
-
require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ converter:
|
|
251
|
+
require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ converter: stepConverter })], NumberField.prototype, "step", void 0);
|
|
252
|
+
require_decorate.__decorate([(0, _microsoft_fast_element.attr)({
|
|
253
|
+
attribute: "no-steppers",
|
|
254
|
+
mode: "boolean"
|
|
255
|
+
})], NumberField.prototype, "noSteppers", void 0);
|
|
225
256
|
require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ converter: _microsoft_fast_element.nullableNumberConverter })], NumberField.prototype, "max", void 0);
|
|
226
257
|
require_decorate.__decorate([(0, _microsoft_fast_element.attr)({ converter: _microsoft_fast_element.nullableNumberConverter })], NumberField.prototype, "min", void 0);
|
|
227
258
|
require_decorate.__decorate([_microsoft_fast_element.observable], NumberField.prototype, "defaultSlottedNodes", void 0);
|
|
@@ -250,10 +281,12 @@ function numberControlButtons(context) {
|
|
|
250
281
|
const buttonTag = context.tagFor(require_definition$1.Button);
|
|
251
282
|
const dividerTag = context.tagFor(require_divider.Divider);
|
|
252
283
|
return _microsoft_fast_element.html`
|
|
253
|
-
<div class="control-buttons"
|
|
284
|
+
<div class="control-buttons"
|
|
285
|
+
?hidden="${(x) => !x._hasSteppers}"
|
|
286
|
+
?inert="${(x) => x.disabled || x.readOnly}">
|
|
254
287
|
<${buttonTag} id="subtract" icon="minus-line"
|
|
255
288
|
?disabled="${(x) => x.disabled || x.readOnly}"
|
|
256
|
-
aria-label=${(x) => x.decrementButtonAriaLabel || x.locale.numberField.decrementButtonLabel(x.
|
|
289
|
+
aria-label=${(x) => x.decrementButtonAriaLabel || x.locale.numberField.decrementButtonLabel(x._numericStep)}
|
|
257
290
|
shape="${setControlButtonShape}"
|
|
258
291
|
type="button"
|
|
259
292
|
size="${(x) => x.scale === "condensed" ? "super-condensed" : "condensed"}"
|
|
@@ -262,7 +295,7 @@ function numberControlButtons(context) {
|
|
|
262
295
|
<${dividerTag} class="divider" orientation="vertical"></${dividerTag}>
|
|
263
296
|
<${buttonTag} id="add" icon="plus-line"
|
|
264
297
|
?disabled="${(x) => x.disabled || x.readOnly}"
|
|
265
|
-
aria-label=${(x) => x.incrementButtonAriaLabel || x.locale.numberField.incrementButtonLabel(x.
|
|
298
|
+
aria-label=${(x) => x.incrementButtonAriaLabel || x.locale.numberField.incrementButtonLabel(x._numericStep)}
|
|
266
299
|
shape="${setControlButtonShape}"
|
|
267
300
|
type="button"
|
|
268
301
|
size="${(x) => x.scale === "condensed" ? "super-condensed" : "condensed"}"
|
|
@@ -274,7 +307,7 @@ function numberControlButtons(context) {
|
|
|
274
307
|
var NumberFieldTemplate = (context) => {
|
|
275
308
|
const visuallyHiddenTag = context.tagFor(require_definition$2.VisuallyHidden);
|
|
276
309
|
return _microsoft_fast_element.html`
|
|
277
|
-
<div class="base ${(x) => (0, _microsoft_fast_web_utilities.classNames)(`connotation-accent`, `appearance-${numberFieldAppearance.parse(x.appearance)}`, "with-idle", "with-hover", "with-disabled", "with-readonly", "with-error", "with-success", ["error", Boolean(x.errorValidationMessage)], ["disabled", x.disabled], ["has-value", Boolean(x.value)], ["readonly", x.readOnly], ["placeholder", Boolean(x.placeholder)], [`shape-${x.shape}`, Boolean(x.shape)], ["no-label", !x.label], ["success", !!x.successText], [`size-${x.scale}`, Boolean(x.scale)])}">
|
|
310
|
+
<div class="base ${(x) => (0, _microsoft_fast_web_utilities.classNames)(`connotation-accent`, `appearance-${numberFieldAppearance.parse(x.appearance)}`, "with-idle", "with-hover", "with-disabled", "with-readonly", "with-error", "with-success", ["error", Boolean(x.errorValidationMessage)], ["disabled", x.disabled], ["has-value", Boolean(x.value)], ["readonly", x.readOnly], ["placeholder", Boolean(x.placeholder)], [`shape-${x.shape}`, Boolean(x.shape)], ["no-label", !x.label], ["success", !!x.successText], [`size-${x.scale}`, Boolean(x.scale)], ["no-steppers", !x._hasSteppers])}">
|
|
278
311
|
<div class="label-wrapper" ?hidden=${(x) => !x.label && !x._hasContextualHelp}>
|
|
279
312
|
${(0, _microsoft_fast_element.when)((x) => x.label, renderLabel())}
|
|
280
313
|
<slot name="contextual-help" ${(0, _microsoft_fast_element.slotted)("_contextualHelpSlottedContent")}></slot>
|
|
@@ -21,7 +21,7 @@ import { t as dividerDefinition } from "./definition36.js";
|
|
|
21
21
|
import { Updates, attr, html, nullableNumberConverter, observable, ref, slotted, when } from "@microsoft/fast-element";
|
|
22
22
|
import { classNames, keyArrowDown, keyArrowUp } from "@microsoft/fast-web-utilities";
|
|
23
23
|
//#region src/lib/number-field/number-field.scss?inline
|
|
24
|
-
var number_field_default = ".label-wrapper{align-items:center;gap:var(--label-wrapper-gap,4px);flex-direction:row;display:flex}.label-wrapper[hidden]{display:none}.label:not(slot),.label::slotted(label){flex:0 auto}:host{display:inline-block}.base{--_text-field-gutter-start:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2.5);--_text-field-gutter-end:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2.5);--_text-field-icon-size:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2);--_text-field-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2)));--_text-field-border-radius:8px;--_text-field-pill-border-radius:24px;grid-template-columns:min-content 1fr max-content;align-items:center;gap:4px;width:100%;display:inline-grid}.base.size-condensed{--_text-field-gutter-start:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16)) / 2);--_text-field-gutter-end:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16)) / 2);--_text-field-icon-size:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8)) / 2);--_text-field-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));--_text-field-border-radius:4px}.base{user-select:none}.base:not(.disabled){--_low-ink-color:var(--vvd-color-neutral-600)}.base.disabled{--_low-ink-color:var(--_appearance-color-text)}.label:not(slot),.label::slotted(label){font:var(--vvd-typography-base);grid-area:1/1/auto/4;box-sizing:initial!important;padding:initial!important;margin:initial!important;color:var(--vvd-color-canvas-text)!important}.char-count+.label:not(slot),.char-count+.label::slotted(label){grid-column:1/3}.char-count{color:var(--_low-ink-color);font:var(--vvd-typography-base)}.label-wrapper{grid-area:1/1/auto/4}.char-count+.label-wrapper{grid-column:1/3}.fieldset{background-color:var(--_appearance-color-fill);font:var(--vvd-typography-base);grid-column:1/4;align-items:center;padding-block:0;transition:color .2s,background-color .2s;display:flex;position:relative}.fieldset:after{border-radius:inherit;block-size:100%;box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);content:\"\";pointer-events:none;inline-size:100%;transition:box-shadow .2s;display:block;position:absolute}.fieldset:focus-visible{outline:none}.base>.fieldset{block-size:var(--_text-field-block-size)}.base:not(.shape-pill) .fieldset{border-radius:var(--_text-field-border-radius)}.base.shape-pill .fieldset{border-radius:var(--_text-field-pill-border-radius)}.wrapper{border-radius:inherit;block-size:100%;inline-size:100%}.control{border-radius:inherit;text-align:start}.control:not(slot),.control::slotted(input){font:inherit;text-align:inherit;outline:#0000;box-sizing:border-box!important;border-radius:inherit!important;width:100%!important;margin:initial!important;appearance:none!important;block-size:100%!important;color:inherit!important;padding-block:0!important;padding-inline:var(--_text-field-gutter-start) var(--_text-field-gutter-end)!important;background-color:#0000!important;border:0!important}.control:not(slot,:focus),.control::slotted(input:not(:focus)){text-overflow:ellipsis!important}.control:not(slot):disabled,.control::slotted(input:disabled){cursor:not-allowed!important;opacity:1!important;-webkit-text-fill-color:var(--_appearance-color-text)!important}.control:not(slot)::placeholder{opacity:1!important;-webkit-text-fill-color:var(--_low-ink-color)!important}.control::slotted(input:-webkit-autofill),.control:not(slot):-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--_appearance-color-fill) inset;-webkit-text-fill-color:var(--_appearance-color-text)!important}.control::slotted(input:autofill),.control:not(slot):autofill{-webkit-box-shadow:0 0 0 1000px var(--_appearance-color-fill) inset;-webkit-text-fill-color:var(--_appearance-color-text)!important}.has-icon .control:not(slot),.has-icon .control::slotted(input){padding-inline-start:calc(var(--_text-field-icon-size) + var(--_text-field-gutter-start) * 2)!important}.icon{z-index:1;color:var(--_low-ink-color);font-size:var(--_text-field-icon-size);line-height:1;position:absolute;inset-block-start:50%;inset-inline-start:calc(100% + var(--_text-field-gutter-start));transform:translateY(-50%)}.leading-items-wrapper{position:relative}.base.no-leading .leading-items-wrapper{display:none}.action-items-wrapper{margin-inline-end:4px}.base:not(.action-items) .action-items-wrapper{display:none}@supports selector(:has(*)){.base:not(.has-activedescendant) .fieldset:has(.wrapper .control:focus-within):after{--focus-stroke-gap-color:transparent;box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}}@supports not selector(:has(*)){.base:not(.has-activedescendant) .wrapper:focus-within:after{box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px));--focus-stroke-gap-color:transparent;z-index:1;border-radius:inherit;content:\"\";pointer-events:none;display:block;position:absolute;inset:0}}:host([internal-part]) .fieldset{font:var(--vvd-typography-heading-4);background-color:#0000;line-height:1.1}:host([internal-part]) .fieldset:not(:focus-within):after{block-size:1px;inset-block-end:0}@supports selector(:has(*)){:host([internal-part]) .fieldset:has(.action-items-wrapper:focus-within):after{block-size:1px;inset-block-end:0}}:host([internal-part]) .control{text-align:center}slot[name=_mirrored-helper-text]{display:none}.base{--_text-field-gutter-end:70px}.control::-webkit-outer-spin-button,.control::-webkit-inner-spin-button{appearance:none}.control-buttons{z-index:1;display:flex;position:absolute;right:3px}.readonly .control-buttons,.disabled .control-buttons{pointer-events:none}.control-buttons .divider{margin-block:8px}.control-buttons>*{flex-shrink:0}";
|
|
24
|
+
var number_field_default = ".label-wrapper{align-items:center;gap:var(--label-wrapper-gap,4px);flex-direction:row;display:flex}.label-wrapper[hidden]{display:none}.label:not(slot),.label::slotted(label){flex:0 auto}:host{display:inline-block}.base{--_text-field-gutter-start:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2.5);--_text-field-gutter-end:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2.5);--_text-field-icon-size:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2);--_text-field-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2)));--_text-field-border-radius:8px;--_text-field-pill-border-radius:24px;grid-template-columns:min-content 1fr max-content;align-items:center;gap:4px;width:100%;display:inline-grid}.base.size-condensed{--_text-field-gutter-start:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16)) / 2);--_text-field-gutter-end:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16)) / 2);--_text-field-icon-size:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8)) / 2);--_text-field-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));--_text-field-border-radius:4px}.base{user-select:none}.base:not(.disabled){--_low-ink-color:var(--vvd-color-neutral-600)}.base.disabled{--_low-ink-color:var(--_appearance-color-text)}.label:not(slot),.label::slotted(label){font:var(--vvd-typography-base);grid-area:1/1/auto/4;box-sizing:initial!important;padding:initial!important;margin:initial!important;color:var(--vvd-color-canvas-text)!important}.char-count+.label:not(slot),.char-count+.label::slotted(label){grid-column:1/3}.char-count{color:var(--_low-ink-color);font:var(--vvd-typography-base)}.label-wrapper{grid-area:1/1/auto/4}.char-count+.label-wrapper{grid-column:1/3}.fieldset{background-color:var(--_appearance-color-fill);font:var(--vvd-typography-base);grid-column:1/4;align-items:center;padding-block:0;transition:color .2s,background-color .2s;display:flex;position:relative}.fieldset:after{border-radius:inherit;block-size:100%;box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);content:\"\";pointer-events:none;inline-size:100%;transition:box-shadow .2s;display:block;position:absolute}.fieldset:focus-visible{outline:none}.base>.fieldset{block-size:var(--_text-field-block-size)}.base:not(.shape-pill) .fieldset{border-radius:var(--_text-field-border-radius)}.base.shape-pill .fieldset{border-radius:var(--_text-field-pill-border-radius)}.wrapper{border-radius:inherit;block-size:100%;inline-size:100%}.control{border-radius:inherit;text-align:start}.control:not(slot),.control::slotted(input){font:inherit;text-align:inherit;outline:#0000;box-sizing:border-box!important;border-radius:inherit!important;width:100%!important;margin:initial!important;appearance:none!important;block-size:100%!important;color:inherit!important;padding-block:0!important;padding-inline:var(--_text-field-gutter-start) var(--_text-field-gutter-end)!important;background-color:#0000!important;border:0!important}.control:not(slot,:focus),.control::slotted(input:not(:focus)){text-overflow:ellipsis!important}.control:not(slot):disabled,.control::slotted(input:disabled){cursor:not-allowed!important;opacity:1!important;-webkit-text-fill-color:var(--_appearance-color-text)!important}.control:not(slot)::placeholder{opacity:1!important;-webkit-text-fill-color:var(--_low-ink-color)!important}.control::slotted(input:-webkit-autofill),.control:not(slot):-webkit-autofill{-webkit-box-shadow:0 0 0 1000px var(--_appearance-color-fill) inset;-webkit-text-fill-color:var(--_appearance-color-text)!important}.control::slotted(input:autofill),.control:not(slot):autofill{-webkit-box-shadow:0 0 0 1000px var(--_appearance-color-fill) inset;-webkit-text-fill-color:var(--_appearance-color-text)!important}.has-icon .control:not(slot),.has-icon .control::slotted(input){padding-inline-start:calc(var(--_text-field-icon-size) + var(--_text-field-gutter-start) * 2)!important}.icon{z-index:1;color:var(--_low-ink-color);font-size:var(--_text-field-icon-size);line-height:1;position:absolute;inset-block-start:50%;inset-inline-start:calc(100% + var(--_text-field-gutter-start));transform:translateY(-50%)}.leading-items-wrapper{position:relative}.base.no-leading .leading-items-wrapper{display:none}.action-items-wrapper{margin-inline-end:4px}.base:not(.action-items) .action-items-wrapper{display:none}@supports selector(:has(*)){.base:not(.has-activedescendant) .fieldset:has(.wrapper .control:focus-within):after{--focus-stroke-gap-color:transparent;box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}}@supports not selector(:has(*)){.base:not(.has-activedescendant) .wrapper:focus-within:after{box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px));--focus-stroke-gap-color:transparent;z-index:1;border-radius:inherit;content:\"\";pointer-events:none;display:block;position:absolute;inset:0}}:host([internal-part]) .fieldset{font:var(--vvd-typography-heading-4);background-color:#0000;line-height:1.1}:host([internal-part]) .fieldset:not(:focus-within):after{block-size:1px;inset-block-end:0}@supports selector(:has(*)){:host([internal-part]) .fieldset:has(.action-items-wrapper:focus-within):after{block-size:1px;inset-block-end:0}}:host([internal-part]) .control{text-align:center}slot[name=_mirrored-helper-text]{display:none}.base{--_text-field-gutter-end:70px}.base.no-steppers{--_text-field-gutter-end:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2))) / 2.5)}.base.no-steppers.size-condensed{--_text-field-gutter-end:calc(calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16)) / 2)}.control::-webkit-outer-spin-button,.control::-webkit-inner-spin-button{appearance:none}.control-buttons{z-index:1;display:flex;position:absolute;right:3px}.control-buttons[hidden]{display:none}.readonly .control-buttons,.disabled .control-buttons{pointer-events:none}.control-buttons .divider{margin-block:8px}.control-buttons>*{flex-shrink:0}";
|
|
25
25
|
//#endregion
|
|
26
26
|
//#region src/lib/number-field/number-field.ts
|
|
27
27
|
var numberFieldAppearance = componentEnum(["fieldset", "ghost"], "fieldset");
|
|
@@ -29,12 +29,26 @@ var STEP_DIRECTION = {
|
|
|
29
29
|
up: 1,
|
|
30
30
|
down: -1
|
|
31
31
|
};
|
|
32
|
+
/** The default step used for arrow key stepping when `step="any"` is set, matching native `<input type="number">` behavior. */
|
|
33
|
+
var ANY_STEP_FALLBACK = 1;
|
|
32
34
|
function makeStep(element, direction) {
|
|
35
|
+
const step = element._numericStep;
|
|
33
36
|
const value = parseFloat(element.value);
|
|
34
|
-
const stepUpValue = !isNaN(value) ? value + direction *
|
|
37
|
+
const stepUpValue = !isNaN(value) ? value + direction * step : element.min > 0 ? element.min : element.max < 0 ? element.max : !element.min ? direction * step : 0;
|
|
35
38
|
element.value = Number(stepUpValue.toFixed(12)).toString();
|
|
36
39
|
element._updatedValueAnnouncement = element.locale.numberField.updatedValueAnnouncement(element._presentationValue);
|
|
37
40
|
}
|
|
41
|
+
/** Allows `step` to be a finite number, or the string `"any"` which disables the native step constraint. */
|
|
42
|
+
var stepConverter = {
|
|
43
|
+
toView(value) {
|
|
44
|
+
if (value === "any") return "any";
|
|
45
|
+
return nullableNumberConverter.toView(value);
|
|
46
|
+
},
|
|
47
|
+
fromView(value) {
|
|
48
|
+
if (typeof value === "string" && value.trim().toLowerCase() === "any") return "any";
|
|
49
|
+
return nullableNumberConverter.fromView(value);
|
|
50
|
+
}
|
|
51
|
+
};
|
|
38
52
|
var buildNumberPatterns = (decimalSeparator) => {
|
|
39
53
|
const ds = decimalSeparator.source;
|
|
40
54
|
return {
|
|
@@ -71,6 +85,7 @@ var NumberField = class extends WithContextualHelp(WithFeedback(WithErrorText(Wi
|
|
|
71
85
|
this.readOnly = false;
|
|
72
86
|
this.autofocus = false;
|
|
73
87
|
this.step = 1;
|
|
88
|
+
this.noSteppers = false;
|
|
74
89
|
this.isUserInput = false;
|
|
75
90
|
this._presentationValue = "";
|
|
76
91
|
this._updatedValueAnnouncement = "";
|
|
@@ -79,7 +94,19 @@ var NumberField = class extends WithContextualHelp(WithFeedback(WithErrorText(Wi
|
|
|
79
94
|
}
|
|
80
95
|
/** @internal */
|
|
81
96
|
stepChanged(_, next) {
|
|
82
|
-
this.proxy.setAttribute("step", Number.isFinite(next) ? next.toString() : "");
|
|
97
|
+
this.proxy.setAttribute("step", next === "any" ? "any" : Number.isFinite(next) ? next.toString() : "");
|
|
98
|
+
this.validate();
|
|
99
|
+
}
|
|
100
|
+
/** @internal */
|
|
101
|
+
get _hasSteppers() {
|
|
102
|
+
return !this.noSteppers && this.step !== "any";
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* The step used by the stepper buttons and arrow keys. Falls back to `1` when `step` is `"any"`.
|
|
106
|
+
* @internal
|
|
107
|
+
*/
|
|
108
|
+
get _numericStep() {
|
|
109
|
+
return this.step === "any" ? ANY_STEP_FALLBACK : this.step;
|
|
83
110
|
}
|
|
84
111
|
/**
|
|
85
112
|
* Ensures that the max is greater than the min and that the value
|
|
@@ -221,7 +248,11 @@ __decorate([attr({ converter: nullableNumberConverter })], NumberField.prototype
|
|
|
221
248
|
__decorate([attr({ converter: nullableNumberConverter })], NumberField.prototype, "minlength", void 0);
|
|
222
249
|
__decorate([attr({ converter: nullableNumberConverter })], NumberField.prototype, "size", void 0);
|
|
223
250
|
__decorate([attr()], NumberField.prototype, "scale", void 0);
|
|
224
|
-
__decorate([attr({ converter:
|
|
251
|
+
__decorate([attr({ converter: stepConverter })], NumberField.prototype, "step", void 0);
|
|
252
|
+
__decorate([attr({
|
|
253
|
+
attribute: "no-steppers",
|
|
254
|
+
mode: "boolean"
|
|
255
|
+
})], NumberField.prototype, "noSteppers", void 0);
|
|
225
256
|
__decorate([attr({ converter: nullableNumberConverter })], NumberField.prototype, "max", void 0);
|
|
226
257
|
__decorate([attr({ converter: nullableNumberConverter })], NumberField.prototype, "min", void 0);
|
|
227
258
|
__decorate([observable], NumberField.prototype, "defaultSlottedNodes", void 0);
|
|
@@ -250,10 +281,12 @@ function numberControlButtons(context) {
|
|
|
250
281
|
const buttonTag = context.tagFor(Button);
|
|
251
282
|
const dividerTag = context.tagFor(Divider);
|
|
252
283
|
return html`
|
|
253
|
-
<div class="control-buttons"
|
|
284
|
+
<div class="control-buttons"
|
|
285
|
+
?hidden="${(x) => !x._hasSteppers}"
|
|
286
|
+
?inert="${(x) => x.disabled || x.readOnly}">
|
|
254
287
|
<${buttonTag} id="subtract" icon="minus-line"
|
|
255
288
|
?disabled="${(x) => x.disabled || x.readOnly}"
|
|
256
|
-
aria-label=${(x) => x.decrementButtonAriaLabel || x.locale.numberField.decrementButtonLabel(x.
|
|
289
|
+
aria-label=${(x) => x.decrementButtonAriaLabel || x.locale.numberField.decrementButtonLabel(x._numericStep)}
|
|
257
290
|
shape="${setControlButtonShape}"
|
|
258
291
|
type="button"
|
|
259
292
|
size="${(x) => x.scale === "condensed" ? "super-condensed" : "condensed"}"
|
|
@@ -262,7 +295,7 @@ function numberControlButtons(context) {
|
|
|
262
295
|
<${dividerTag} class="divider" orientation="vertical"></${dividerTag}>
|
|
263
296
|
<${buttonTag} id="add" icon="plus-line"
|
|
264
297
|
?disabled="${(x) => x.disabled || x.readOnly}"
|
|
265
|
-
aria-label=${(x) => x.incrementButtonAriaLabel || x.locale.numberField.incrementButtonLabel(x.
|
|
298
|
+
aria-label=${(x) => x.incrementButtonAriaLabel || x.locale.numberField.incrementButtonLabel(x._numericStep)}
|
|
266
299
|
shape="${setControlButtonShape}"
|
|
267
300
|
type="button"
|
|
268
301
|
size="${(x) => x.scale === "condensed" ? "super-condensed" : "condensed"}"
|
|
@@ -274,7 +307,7 @@ function numberControlButtons(context) {
|
|
|
274
307
|
var NumberFieldTemplate = (context) => {
|
|
275
308
|
const visuallyHiddenTag = context.tagFor(VisuallyHidden);
|
|
276
309
|
return html`
|
|
277
|
-
<div class="base ${(x) => classNames(`connotation-accent`, `appearance-${numberFieldAppearance.parse(x.appearance)}`, "with-idle", "with-hover", "with-disabled", "with-readonly", "with-error", "with-success", ["error", Boolean(x.errorValidationMessage)], ["disabled", x.disabled], ["has-value", Boolean(x.value)], ["readonly", x.readOnly], ["placeholder", Boolean(x.placeholder)], [`shape-${x.shape}`, Boolean(x.shape)], ["no-label", !x.label], ["success", !!x.successText], [`size-${x.scale}`, Boolean(x.scale)])}">
|
|
310
|
+
<div class="base ${(x) => classNames(`connotation-accent`, `appearance-${numberFieldAppearance.parse(x.appearance)}`, "with-idle", "with-hover", "with-disabled", "with-readonly", "with-error", "with-success", ["error", Boolean(x.errorValidationMessage)], ["disabled", x.disabled], ["has-value", Boolean(x.value)], ["readonly", x.readOnly], ["placeholder", Boolean(x.placeholder)], [`shape-${x.shape}`, Boolean(x.shape)], ["no-label", !x.label], ["success", !!x.successText], [`size-${x.scale}`, Boolean(x.scale)], ["no-steppers", !x._hasSteppers])}">
|
|
278
311
|
<div class="label-wrapper" ?hidden=${(x) => !x.label && !x._hasContextualHelp}>
|
|
279
312
|
${when((x) => x.label, renderLabel())}
|
|
280
313
|
<slot name="contextual-help" ${slotted("_contextualHelpSlottedContent")}></slot>
|
|
@@ -92,7 +92,7 @@ require_decorate.__decorate([(0, _microsoft_fast_element.attr)({
|
|
|
92
92
|
require_decorate.__decorate([_microsoft_fast_element.attr], Button.prototype, "label", void 0);
|
|
93
93
|
//#endregion
|
|
94
94
|
//#region src/lib/button/button.scss?inline
|
|
95
|
-
var button_default = ".chevron{font:var(--vvd-typography-base-extended);flex-shrink:0;display:flex;transform:rotate(0)}@media (prefers-reduced-motion:no-preference){.chevron{transition:transform .2s}}:host([data-expanded=true]) .chevron,:host([open]) .chevron{transform:rotate(180deg)}:host{--_vvd-button-accent-firm-wrapper:var(--vvd-button-accent-firm);--_vvd-button-cta-firm-wrapper:var(--vvd-button-cta-firm);--_vvd-button-success-firm-wrapper:var(--vvd-button-success-firm);--_vvd-button-alert-firm-wrapper:var(--vvd-button-alert-firm);--_vvd-button-announcement-firm-wrapper:var(--vvd-button-announcement-firm)}.control:not(.appearance-ghost-light,.appearance-filled,.appearance-outlined){--vvd-button-accent-firm:var(--_vvd-button-accent-firm-wrapper,var(--vvd-button-accent-primary));--vvd-button-cta-firm:var(--_vvd-button-cta-firm-wrapper,var(--vvd-button-cta-primary));--vvd-button-success-firm:var(--_vvd-button-success-firm-wrapper,var(--vvd-button-success-primary));--vvd-button-alert-firm:var(--_vvd-button-alert-firm-wrapper,var(--vvd-button-alert-primary));--vvd-button-announcement-firm:var(--_vvd-button-announcement-firm-wrapper,var(--vvd-button-announcement-primary))}:host{display:inline-block}.control{--focus-stroke-gap-color:transparent;box-sizing:border-box;border-radius:var(--_button-border-radius);background-color:var(--_appearance-color-fill);block-size:var(--_button-block-size);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);justify-content:space-between;align-items:center;gap:var(--_button-icon-gap);vertical-align:middle;border:0;margin:0;text-decoration:none;display:inline-flex}.control .text{-webkit-line-clamp:var(--button-line-clamp,1);text-align:start;-webkit-box-orient:vertical;max-inline-size:100%;display:-webkit-box;overflow:hidden}.control:not(.icon-only){inline-size:100%}.control:not(.disabled){cursor:var(--button-cursor,pointer)}.control.disabled{cursor:not-allowed}.control{user-select:none}.control:not(.stacked).size-super-condensed{--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16));font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:4px;--_button-chevron-size:10px}.control:not(.stacked).size-super-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked).size-super-condensed:not(.icon-only){padding-inline:8px}.control:not(.stacked).size-condensed{--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:8px;--_button-chevron-size:12px}.control:not(.stacked).size-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked).size-condensed:not(.icon-only){padding-inline:12px}.control:not(.stacked).size-expanded{--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) + 8));font:var(--vvd-typography-base-extended-bold);--_button-icon-gap:10px;--_button-chevron-size:16px}.control:not(.stacked).size-expanded.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked).size-expanded:not(.icon-only){padding-inline:20px}.control:not(.stacked):not(.size-condensed,.size-expanded,.size-super-condensed){--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2)));font:var(--vvd-typography-base-bold);--_button-icon-gap:8px;--_button-chevron-size:16px}.control:not(.stacked):not(.size-condensed,.size-expanded,.size-super-condensed).icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked):not(.size-condensed,.size-expanded,.size-super-condensed):not(.icon-only){padding-inline:16px}.control:not(.shape-pill){--_button-border-radius:8px}.control:not(.shape-pill).size-condensed:not(.stacked),.control:not(.shape-pill).size-super-condensed:not(.stacked){--_button-border-radius:4px}.control.shape-pill:not(.icon-only,.stacked.size-super-condensed,.stacked.size-condensed,.stacked.normal){--_button-border-radius:24px}.control.shape-pill.stacked.size-condensed,.control.shape-pill.stacked.size-super-condensed{--_button-border-radius:16px}.control.shape-pill.stacked.size-normal{--_button-border-radius:20px}.control.shape-pill.icon-only{--_button-border-radius:50%}.control.stacked.size-super-condensed{--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16));--_button-block-size:calc(var(--stacked-size) + 20px);font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:4px;--_button-chevron-size:10px}.control.stacked.size-super-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked.size-super-condensed:not(.icon-only){padding-inline:16px}.control.stacked.size-condensed{--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));--_button-block-size:calc(var(--stacked-size) + 24px);font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:6px;--_button-chevron-size:12px}.control.stacked.size-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked.size-condensed:not(.icon-only){padding-inline:12px}.control.stacked.size-expanded{--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) + 8));--_button-block-size:calc(var(--stacked-size) + 32px);font:var(--vvd-typography-base-extended-bold);--_button-icon-gap:10px;--_button-chevron-size:16px}.control.stacked.size-expanded.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked.size-expanded:not(.icon-only){padding-inline:20px}.control.stacked:not(.size-condensed,.size-expanded,.size-super-condensed){--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2)));--_button-block-size:calc(var(--stacked-size) + 28px);font:var(--vvd-typography-base-bold);--_button-icon-gap:8px;--_button-chevron-size:16px}.control.stacked:not(.size-condensed,.size-expanded,.size-super-condensed).icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked:not(.size-condensed,.size-expanded,.size-super-condensed):not(.icon-only){padding-inline:16px}.control.appearance-filled{--focus-stroke-gap-color:transparent}.control.appearance-filled:focus-visible{outline:none;position:relative}.control.appearance-filled:focus-visible:after{box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px));border-radius:var(--focus-border-radius,inherit);block-size:calc(100% + var(--focus-block-size-addition,4px));content:\"\";inline-size:calc(100% + var(--focus-block-size-addition,4px));display:block;position:absolute;inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.control:not(.appearance-filled):focus-visible{box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}slot[name=icon]{line-height:1}.icon-trailing slot[name=icon]{order:1;display:flex}.control.stacked slot[name=icon]{font-size:calc(var(--stacked-size) / 2)}.control:not(.stacked) slot[name=icon]{font-size:calc(var(--_button-block-size) / 2)}.chevron{font-size:var(--_button-chevron-size)}.content{justify-content:center;align-items:center;gap:var(--_button-icon-gap);flex:1;display:flex;overflow:hidden}.control.stacked .content{flex-direction:column}:host([dropdown-indicator]) .content{justify-content:var(--button-content-alignment,flex-start);text-align:start}:host([dropdown-indicator][stacked]) .content{align-items:var(--button-content-alignment,flex-start);justify-content:center}.pending-no-icon{position:absolute}.pending-no-icon+.text{visibility:hidden}:host([icon-trailing][pending]) .pending{order:1}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}";
|
|
95
|
+
var button_default = ".chevron{font:var(--vvd-typography-base-extended);flex-shrink:0;display:flex;transform:rotate(0)}@media (prefers-reduced-motion:no-preference){.chevron{transition:transform .2s}}:host([data-expanded=true]) .chevron,:host([open]) .chevron{transform:rotate(180deg)}:host{--_vvd-button-accent-firm-wrapper:var(--vvd-button-accent-firm);--_vvd-button-cta-firm-wrapper:var(--vvd-button-cta-firm);--_vvd-button-success-firm-wrapper:var(--vvd-button-success-firm);--_vvd-button-alert-firm-wrapper:var(--vvd-button-alert-firm);--_vvd-button-announcement-firm-wrapper:var(--vvd-button-announcement-firm)}.control:not(.appearance-ghost-light,.appearance-filled,.appearance-outlined){--vvd-button-accent-firm:var(--_vvd-button-accent-firm-wrapper,var(--vvd-button-accent-primary));--vvd-button-cta-firm:var(--_vvd-button-cta-firm-wrapper,var(--vvd-button-cta-primary));--vvd-button-success-firm:var(--_vvd-button-success-firm-wrapper,var(--vvd-button-success-primary));--vvd-button-alert-firm:var(--_vvd-button-alert-firm-wrapper,var(--vvd-button-alert-primary));--vvd-button-announcement-firm:var(--_vvd-button-announcement-firm-wrapper,var(--vvd-button-announcement-primary))}:host{display:inline-block}.control{--focus-stroke-gap-color:transparent;box-sizing:border-box;border-radius:var(--_button-border-radius);background-color:var(--_appearance-color-fill);block-size:var(--_button-block-size);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);justify-content:space-between;align-items:center;gap:var(--_button-icon-gap);vertical-align:middle;border:0;margin:0;text-decoration:none;display:inline-flex}.control .text{-webkit-line-clamp:var(--button-line-clamp,1);text-align:start;-webkit-box-orient:vertical;max-inline-size:100%;display:-webkit-box;overflow:hidden}.control:not(.icon-only){inline-size:100%}.control:not(.disabled){cursor:var(--button-cursor,pointer)}.control.disabled{cursor:not-allowed}.control.disabled.appearance-ghost{color:var(--_picker-field-disabled-icon-color,var(--_appearance-color-text))}.control{user-select:none}.control:not(.stacked).size-super-condensed{--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16));font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:4px;--_button-chevron-size:10px}.control:not(.stacked).size-super-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked).size-super-condensed:not(.icon-only){padding-inline:8px}.control:not(.stacked).size-condensed{--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:8px;--_button-chevron-size:12px}.control:not(.stacked).size-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked).size-condensed:not(.icon-only){padding-inline:12px}.control:not(.stacked).size-expanded{--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) + 8));font:var(--vvd-typography-base-extended-bold);--_button-icon-gap:10px;--_button-chevron-size:16px}.control:not(.stacked).size-expanded.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked).size-expanded:not(.icon-only){padding-inline:20px}.control:not(.stacked):not(.size-condensed,.size-expanded,.size-super-condensed){--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2)));font:var(--vvd-typography-base-bold);--_button-icon-gap:8px;--_button-chevron-size:16px}.control:not(.stacked):not(.size-condensed,.size-expanded,.size-super-condensed).icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked):not(.size-condensed,.size-expanded,.size-super-condensed):not(.icon-only){padding-inline:16px}.control:not(.shape-pill){--_button-border-radius:8px}.control:not(.shape-pill).size-condensed:not(.stacked),.control:not(.shape-pill).size-super-condensed:not(.stacked){--_button-border-radius:4px}.control.shape-pill:not(.icon-only,.stacked.size-super-condensed,.stacked.size-condensed,.stacked.normal){--_button-border-radius:24px}.control.shape-pill.stacked.size-condensed,.control.shape-pill.stacked.size-super-condensed{--_button-border-radius:16px}.control.shape-pill.stacked.size-normal{--_button-border-radius:20px}.control.shape-pill.icon-only{--_button-border-radius:50%}.control.stacked.size-super-condensed{--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16));--_button-block-size:calc(var(--stacked-size) + 20px);font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:4px;--_button-chevron-size:10px}.control.stacked.size-super-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked.size-super-condensed:not(.icon-only){padding-inline:16px}.control.stacked.size-condensed{--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));--_button-block-size:calc(var(--stacked-size) + 24px);font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:6px;--_button-chevron-size:12px}.control.stacked.size-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked.size-condensed:not(.icon-only){padding-inline:12px}.control.stacked.size-expanded{--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) + 8));--_button-block-size:calc(var(--stacked-size) + 32px);font:var(--vvd-typography-base-extended-bold);--_button-icon-gap:10px;--_button-chevron-size:16px}.control.stacked.size-expanded.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked.size-expanded:not(.icon-only){padding-inline:20px}.control.stacked:not(.size-condensed,.size-expanded,.size-super-condensed){--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2)));--_button-block-size:calc(var(--stacked-size) + 28px);font:var(--vvd-typography-base-bold);--_button-icon-gap:8px;--_button-chevron-size:16px}.control.stacked:not(.size-condensed,.size-expanded,.size-super-condensed).icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked:not(.size-condensed,.size-expanded,.size-super-condensed):not(.icon-only){padding-inline:16px}.control.appearance-filled{--focus-stroke-gap-color:transparent}.control.appearance-filled:focus-visible{outline:none;position:relative}.control.appearance-filled:focus-visible:after{box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px));border-radius:var(--focus-border-radius,inherit);block-size:calc(100% + var(--focus-block-size-addition,4px));content:\"\";inline-size:calc(100% + var(--focus-block-size-addition,4px));display:block;position:absolute;inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.control:not(.appearance-filled):focus-visible{box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}slot[name=icon]{line-height:1}.icon-trailing slot[name=icon]{order:1;display:flex}.control.stacked slot[name=icon]{font-size:calc(var(--stacked-size) / 2)}.control:not(.stacked) slot[name=icon]{font-size:calc(var(--_button-block-size) / 2)}.chevron{font-size:var(--_button-chevron-size)}.content{justify-content:center;align-items:center;gap:var(--_button-icon-gap);flex:1;display:flex;overflow:hidden}.control.stacked .content{flex-direction:column}:host([dropdown-indicator]) .content{justify-content:var(--button-content-alignment,flex-start);text-align:start}:host([dropdown-indicator][stacked]) .content{align-items:var(--button-content-alignment,flex-start);justify-content:center}.pending-no-icon{position:absolute}.pending-no-icon+.text{visibility:hidden}:host([icon-trailing][pending]) .pending{order:1}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}";
|
|
96
96
|
//#endregion
|
|
97
97
|
//#region src/shared/patterns/chevron.ts
|
|
98
98
|
var chevronTemplateFactory = (context) => {
|
package/unbundled/definition6.js
CHANGED
|
@@ -92,7 +92,7 @@ __decorate([attr({
|
|
|
92
92
|
__decorate([attr], Button.prototype, "label", void 0);
|
|
93
93
|
//#endregion
|
|
94
94
|
//#region src/lib/button/button.scss?inline
|
|
95
|
-
var button_default = ".chevron{font:var(--vvd-typography-base-extended);flex-shrink:0;display:flex;transform:rotate(0)}@media (prefers-reduced-motion:no-preference){.chevron{transition:transform .2s}}:host([data-expanded=true]) .chevron,:host([open]) .chevron{transform:rotate(180deg)}:host{--_vvd-button-accent-firm-wrapper:var(--vvd-button-accent-firm);--_vvd-button-cta-firm-wrapper:var(--vvd-button-cta-firm);--_vvd-button-success-firm-wrapper:var(--vvd-button-success-firm);--_vvd-button-alert-firm-wrapper:var(--vvd-button-alert-firm);--_vvd-button-announcement-firm-wrapper:var(--vvd-button-announcement-firm)}.control:not(.appearance-ghost-light,.appearance-filled,.appearance-outlined){--vvd-button-accent-firm:var(--_vvd-button-accent-firm-wrapper,var(--vvd-button-accent-primary));--vvd-button-cta-firm:var(--_vvd-button-cta-firm-wrapper,var(--vvd-button-cta-primary));--vvd-button-success-firm:var(--_vvd-button-success-firm-wrapper,var(--vvd-button-success-primary));--vvd-button-alert-firm:var(--_vvd-button-alert-firm-wrapper,var(--vvd-button-alert-primary));--vvd-button-announcement-firm:var(--_vvd-button-announcement-firm-wrapper,var(--vvd-button-announcement-primary))}:host{display:inline-block}.control{--focus-stroke-gap-color:transparent;box-sizing:border-box;border-radius:var(--_button-border-radius);background-color:var(--_appearance-color-fill);block-size:var(--_button-block-size);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);justify-content:space-between;align-items:center;gap:var(--_button-icon-gap);vertical-align:middle;border:0;margin:0;text-decoration:none;display:inline-flex}.control .text{-webkit-line-clamp:var(--button-line-clamp,1);text-align:start;-webkit-box-orient:vertical;max-inline-size:100%;display:-webkit-box;overflow:hidden}.control:not(.icon-only){inline-size:100%}.control:not(.disabled){cursor:var(--button-cursor,pointer)}.control.disabled{cursor:not-allowed}.control{user-select:none}.control:not(.stacked).size-super-condensed{--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16));font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:4px;--_button-chevron-size:10px}.control:not(.stacked).size-super-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked).size-super-condensed:not(.icon-only){padding-inline:8px}.control:not(.stacked).size-condensed{--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:8px;--_button-chevron-size:12px}.control:not(.stacked).size-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked).size-condensed:not(.icon-only){padding-inline:12px}.control:not(.stacked).size-expanded{--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) + 8));font:var(--vvd-typography-base-extended-bold);--_button-icon-gap:10px;--_button-chevron-size:16px}.control:not(.stacked).size-expanded.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked).size-expanded:not(.icon-only){padding-inline:20px}.control:not(.stacked):not(.size-condensed,.size-expanded,.size-super-condensed){--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2)));font:var(--vvd-typography-base-bold);--_button-icon-gap:8px;--_button-chevron-size:16px}.control:not(.stacked):not(.size-condensed,.size-expanded,.size-super-condensed).icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked):not(.size-condensed,.size-expanded,.size-super-condensed):not(.icon-only){padding-inline:16px}.control:not(.shape-pill){--_button-border-radius:8px}.control:not(.shape-pill).size-condensed:not(.stacked),.control:not(.shape-pill).size-super-condensed:not(.stacked){--_button-border-radius:4px}.control.shape-pill:not(.icon-only,.stacked.size-super-condensed,.stacked.size-condensed,.stacked.normal){--_button-border-radius:24px}.control.shape-pill.stacked.size-condensed,.control.shape-pill.stacked.size-super-condensed{--_button-border-radius:16px}.control.shape-pill.stacked.size-normal{--_button-border-radius:20px}.control.shape-pill.icon-only{--_button-border-radius:50%}.control.stacked.size-super-condensed{--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16));--_button-block-size:calc(var(--stacked-size) + 20px);font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:4px;--_button-chevron-size:10px}.control.stacked.size-super-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked.size-super-condensed:not(.icon-only){padding-inline:16px}.control.stacked.size-condensed{--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));--_button-block-size:calc(var(--stacked-size) + 24px);font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:6px;--_button-chevron-size:12px}.control.stacked.size-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked.size-condensed:not(.icon-only){padding-inline:12px}.control.stacked.size-expanded{--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) + 8));--_button-block-size:calc(var(--stacked-size) + 32px);font:var(--vvd-typography-base-extended-bold);--_button-icon-gap:10px;--_button-chevron-size:16px}.control.stacked.size-expanded.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked.size-expanded:not(.icon-only){padding-inline:20px}.control.stacked:not(.size-condensed,.size-expanded,.size-super-condensed){--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2)));--_button-block-size:calc(var(--stacked-size) + 28px);font:var(--vvd-typography-base-bold);--_button-icon-gap:8px;--_button-chevron-size:16px}.control.stacked:not(.size-condensed,.size-expanded,.size-super-condensed).icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked:not(.size-condensed,.size-expanded,.size-super-condensed):not(.icon-only){padding-inline:16px}.control.appearance-filled{--focus-stroke-gap-color:transparent}.control.appearance-filled:focus-visible{outline:none;position:relative}.control.appearance-filled:focus-visible:after{box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px));border-radius:var(--focus-border-radius,inherit);block-size:calc(100% + var(--focus-block-size-addition,4px));content:\"\";inline-size:calc(100% + var(--focus-block-size-addition,4px));display:block;position:absolute;inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.control:not(.appearance-filled):focus-visible{box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}slot[name=icon]{line-height:1}.icon-trailing slot[name=icon]{order:1;display:flex}.control.stacked slot[name=icon]{font-size:calc(var(--stacked-size) / 2)}.control:not(.stacked) slot[name=icon]{font-size:calc(var(--_button-block-size) / 2)}.chevron{font-size:var(--_button-chevron-size)}.content{justify-content:center;align-items:center;gap:var(--_button-icon-gap);flex:1;display:flex;overflow:hidden}.control.stacked .content{flex-direction:column}:host([dropdown-indicator]) .content{justify-content:var(--button-content-alignment,flex-start);text-align:start}:host([dropdown-indicator][stacked]) .content{align-items:var(--button-content-alignment,flex-start);justify-content:center}.pending-no-icon{position:absolute}.pending-no-icon+.text{visibility:hidden}:host([icon-trailing][pending]) .pending{order:1}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}";
|
|
95
|
+
var button_default = ".chevron{font:var(--vvd-typography-base-extended);flex-shrink:0;display:flex;transform:rotate(0)}@media (prefers-reduced-motion:no-preference){.chevron{transition:transform .2s}}:host([data-expanded=true]) .chevron,:host([open]) .chevron{transform:rotate(180deg)}:host{--_vvd-button-accent-firm-wrapper:var(--vvd-button-accent-firm);--_vvd-button-cta-firm-wrapper:var(--vvd-button-cta-firm);--_vvd-button-success-firm-wrapper:var(--vvd-button-success-firm);--_vvd-button-alert-firm-wrapper:var(--vvd-button-alert-firm);--_vvd-button-announcement-firm-wrapper:var(--vvd-button-announcement-firm)}.control:not(.appearance-ghost-light,.appearance-filled,.appearance-outlined){--vvd-button-accent-firm:var(--_vvd-button-accent-firm-wrapper,var(--vvd-button-accent-primary));--vvd-button-cta-firm:var(--_vvd-button-cta-firm-wrapper,var(--vvd-button-cta-primary));--vvd-button-success-firm:var(--_vvd-button-success-firm-wrapper,var(--vvd-button-success-primary));--vvd-button-alert-firm:var(--_vvd-button-alert-firm-wrapper,var(--vvd-button-alert-primary));--vvd-button-announcement-firm:var(--_vvd-button-announcement-firm-wrapper,var(--vvd-button-announcement-primary))}:host{display:inline-block}.control{--focus-stroke-gap-color:transparent;box-sizing:border-box;border-radius:var(--_button-border-radius);background-color:var(--_appearance-color-fill);block-size:var(--_button-block-size);box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);color:var(--_appearance-color-text);justify-content:space-between;align-items:center;gap:var(--_button-icon-gap);vertical-align:middle;border:0;margin:0;text-decoration:none;display:inline-flex}.control .text{-webkit-line-clamp:var(--button-line-clamp,1);text-align:start;-webkit-box-orient:vertical;max-inline-size:100%;display:-webkit-box;overflow:hidden}.control:not(.icon-only){inline-size:100%}.control:not(.disabled){cursor:var(--button-cursor,pointer)}.control.disabled{cursor:not-allowed}.control.disabled.appearance-ghost{color:var(--_picker-field-disabled-icon-color,var(--_appearance-color-text))}.control{user-select:none}.control:not(.stacked).size-super-condensed{--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16));font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:4px;--_button-chevron-size:10px}.control:not(.stacked).size-super-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked).size-super-condensed:not(.icon-only){padding-inline:8px}.control:not(.stacked).size-condensed{--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:8px;--_button-chevron-size:12px}.control:not(.stacked).size-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked).size-condensed:not(.icon-only){padding-inline:12px}.control:not(.stacked).size-expanded{--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) + 8));font:var(--vvd-typography-base-extended-bold);--_button-icon-gap:10px;--_button-chevron-size:16px}.control:not(.stacked).size-expanded.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked).size-expanded:not(.icon-only){padding-inline:20px}.control:not(.stacked):not(.size-condensed,.size-expanded,.size-super-condensed){--_button-block-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2)));font:var(--vvd-typography-base-bold);--_button-icon-gap:8px;--_button-chevron-size:16px}.control:not(.stacked):not(.size-condensed,.size-expanded,.size-super-condensed).icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control:not(.stacked):not(.size-condensed,.size-expanded,.size-super-condensed):not(.icon-only){padding-inline:16px}.control:not(.shape-pill){--_button-border-radius:8px}.control:not(.shape-pill).size-condensed:not(.stacked),.control:not(.shape-pill).size-super-condensed:not(.stacked){--_button-border-radius:4px}.control.shape-pill:not(.icon-only,.stacked.size-super-condensed,.stacked.size-condensed,.stacked.normal){--_button-border-radius:24px}.control.shape-pill.stacked.size-condensed,.control.shape-pill.stacked.size-super-condensed{--_button-border-radius:16px}.control.shape-pill.stacked.size-normal{--_button-border-radius:20px}.control.shape-pill.icon-only{--_button-border-radius:50%}.control.stacked.size-super-condensed{--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 16));--_button-block-size:calc(var(--stacked-size) + 20px);font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:4px;--_button-chevron-size:10px}.control.stacked.size-super-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked.size-super-condensed:not(.icon-only){padding-inline:16px}.control.stacked.size-condensed{--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) - 8));--_button-block-size:calc(var(--stacked-size) + 24px);font:var(--vvd-typography-base-condensed-bold);--_button-icon-gap:6px;--_button-chevron-size:12px}.control.stacked.size-condensed.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked.size-condensed:not(.icon-only){padding-inline:12px}.control.stacked.size-expanded{--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2) + 8));--_button-block-size:calc(var(--stacked-size) + 32px);font:var(--vvd-typography-base-extended-bold);--_button-icon-gap:10px;--_button-chevron-size:16px}.control.stacked.size-expanded.icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked.size-expanded:not(.icon-only){padding-inline:20px}.control.stacked:not(.size-condensed,.size-expanded,.size-super-condensed){--stacked-size:calc(1px * (40 + 4 * clamp(-1, var(--vvd-size-density,0), 2)));--_button-block-size:calc(var(--stacked-size) + 28px);font:var(--vvd-typography-base-bold);--_button-icon-gap:8px;--_button-chevron-size:16px}.control.stacked:not(.size-condensed,.size-expanded,.size-super-condensed).icon-only{padding-inline:calc(var(--_button-block-size) / 4)}.control.stacked:not(.size-condensed,.size-expanded,.size-super-condensed):not(.icon-only){padding-inline:16px}.control.appearance-filled{--focus-stroke-gap-color:transparent}.control.appearance-filled:focus-visible{outline:none;position:relative}.control.appearance-filled:focus-visible:after{box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px));border-radius:var(--focus-border-radius,inherit);block-size:calc(100% + var(--focus-block-size-addition,4px));content:\"\";inline-size:calc(100% + var(--focus-block-size-addition,4px));display:block;position:absolute;inset-block-start:50%;inset-inline-start:50%;transform:translate(-50%,-50%)}.control:not(.appearance-filled):focus-visible{box-shadow:0 0 0 4px color-mix(in sRGB, var(--focus-stroke-color,var(--vvd-color-cta-500)), transparent 85%), inset 0 0 0 3px var(--focus-stroke-gap-color,currentColor);outline:1px solid var(--focus-stroke-color,var(--vvd-color-cta-500));outline-offset:calc(-1px - var(--focus-inset,0px))}slot[name=icon]{line-height:1}.icon-trailing slot[name=icon]{order:1;display:flex}.control.stacked slot[name=icon]{font-size:calc(var(--stacked-size) / 2)}.control:not(.stacked) slot[name=icon]{font-size:calc(var(--_button-block-size) / 2)}.chevron{font-size:var(--_button-chevron-size)}.content{justify-content:center;align-items:center;gap:var(--_button-icon-gap);flex:1;display:flex;overflow:hidden}.control.stacked .content{flex-direction:column}:host([dropdown-indicator]) .content{justify-content:var(--button-content-alignment,flex-start);text-align:start}:host([dropdown-indicator][stacked]) .content{align-items:var(--button-content-alignment,flex-start);justify-content:center}.pending-no-icon{position:absolute}.pending-no-icon+.text{visibility:hidden}:host([icon-trailing][pending]) .pending{order:1}.sr-only{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}";
|
|
96
96
|
//#endregion
|
|
97
97
|
//#region src/shared/patterns/chevron.ts
|
|
98
98
|
var chevronTemplateFactory = (context) => {
|
|
@@ -14,9 +14,11 @@ const require_definition$5 = require("./definition26.cjs");
|
|
|
14
14
|
const require_definition$6 = require("./definition27.cjs");
|
|
15
15
|
const require_option = require("./option.cjs");
|
|
16
16
|
const require_definition$7 = require("./definition29.cjs");
|
|
17
|
-
const
|
|
17
|
+
const require_optgroup = require("./optgroup.cjs");
|
|
18
|
+
const require_definition$8 = require("./definition30.cjs");
|
|
19
|
+
const require_definition$9 = require("./definition36.cjs");
|
|
18
20
|
const require_slottable_request = require("./slottable-request.cjs");
|
|
19
|
-
const require_definition$
|
|
21
|
+
const require_definition$10 = require("./definition64.cjs");
|
|
20
22
|
let _microsoft_fast_element = require("@microsoft/fast-element");
|
|
21
23
|
let _microsoft_fast_web_utilities = require("@microsoft/fast-web-utilities");
|
|
22
24
|
let prosemirror_model = require("prosemirror-model");
|
|
@@ -629,7 +631,7 @@ var RteInstance = class {
|
|
|
629
631
|
const { state, tr, schema, dispatchTransaction } = this[require_slottable_request.impl];
|
|
630
632
|
tr.replaceSelection(new prosemirror_model.Slice(prosemirror_model.Fragment.fromJSON(schema, content), 0, 0));
|
|
631
633
|
tr.doc.check();
|
|
632
|
-
const $from = tr.doc.resolve(tr.mapping.map(state.selection.from));
|
|
634
|
+
const $from = tr.doc.resolve(tr.mapping.map(state.selection.from, -1));
|
|
633
635
|
const $to = tr.doc.resolve(tr.selection.to);
|
|
634
636
|
const [$head, $anchor] = options?.cursorPlacement === "start" ? [$from, $to] : [$to, $from];
|
|
635
637
|
if (options?.selectContent) tr.setSelection(state.selection instanceof prosemirror_state.AllSelection ? new prosemirror_state.AllSelection(tr.doc) : prosemirror_state.TextSelection.between($anchor, $head));
|
|
@@ -1095,7 +1097,7 @@ var createOption = (ctx, props) => {
|
|
|
1095
1097
|
};
|
|
1096
1098
|
var createSelect = (ctx, props) => {
|
|
1097
1099
|
const disabled = () => Boolean(ctx.evalProp(ctx.props.disabled));
|
|
1098
|
-
const select = ctx.rte.createComponent(require_definition$
|
|
1100
|
+
const select = ctx.rte.createComponent(require_definition$10.Select);
|
|
1099
1101
|
select.setAttribute("data-class", "ui-select");
|
|
1100
1102
|
ctx.bindToEl(select, {
|
|
1101
1103
|
placeholder: " ",
|
|
@@ -2434,6 +2436,7 @@ var RteAlignmentFeatureImpl = class extends require_slottable_request.RteFeature
|
|
|
2434
2436
|
textAlign: align
|
|
2435
2437
|
});
|
|
2436
2438
|
});
|
|
2439
|
+
if (state.storedMarks) tr.setStoredMarks(state.storedMarks);
|
|
2437
2440
|
dispatch?.(tr.scrollIntoView());
|
|
2438
2441
|
return true;
|
|
2439
2442
|
};
|
|
@@ -3381,6 +3384,7 @@ var RteKeyboardShortcutsFeature = require_slottable_request.featureFacade(RteKey
|
|
|
3381
3384
|
var suggest_style_default = ".suggest-popover{flex-direction:column;gap:2px;max-block-size:408px;min-inline-size:128px;max-inline-size:248px;padding:4px;display:flex}.suggest-loading-widget{vertical-align:middle;white-space:normal;align-items:center;margin-inline-start:2px;display:inline-flex}.suggest-empty-message{color:var(--vvd-color-neutral-300);font:var(--vvd-typography-base);text-align:center;justify-content:center;align-items:center;min-block-size:40px;display:flex}";
|
|
3382
3385
|
//#endregion
|
|
3383
3386
|
//#region src/lib/rich-text-editor/rte/features/suggest.ts
|
|
3387
|
+
var isSuggestionGroup = (entry) => "suggestions" in entry;
|
|
3384
3388
|
var isPopoverOpen = (state) => Boolean(state?.suggestions && !state.dismissed);
|
|
3385
3389
|
var popoverShowsResults = (state) => isPopoverOpen(state) && state.suggestions.items.length > 0;
|
|
3386
3390
|
function findMatch(state, regex) {
|
|
@@ -3419,7 +3423,7 @@ var RteSuggestFeatureImpl = class extends require_slottable_request.RteFeatureIm
|
|
|
3419
3423
|
dispatch({
|
|
3420
3424
|
type: "load",
|
|
3421
3425
|
generation: gen,
|
|
3422
|
-
suggestions
|
|
3426
|
+
entries: suggestions
|
|
3423
3427
|
});
|
|
3424
3428
|
}
|
|
3425
3429
|
constructor(featureId, options) {
|
|
@@ -3461,16 +3465,20 @@ var RteSuggestFeatureImpl = class extends require_slottable_request.RteFeatureIm
|
|
|
3461
3465
|
};
|
|
3462
3466
|
const action = tr.getMeta(this.pluginKey);
|
|
3463
3467
|
if (prevState && action) switch (action.type) {
|
|
3464
|
-
case "load":
|
|
3465
|
-
|
|
3466
|
-
|
|
3467
|
-
|
|
3468
|
-
|
|
3469
|
-
|
|
3470
|
-
|
|
3471
|
-
|
|
3472
|
-
|
|
3473
|
-
|
|
3468
|
+
case "load": {
|
|
3469
|
+
const entries = action.entries.filter((entry) => !isSuggestionGroup(entry) || entry.suggestions.length > 0);
|
|
3470
|
+
return {
|
|
3471
|
+
...prevState,
|
|
3472
|
+
suggestions: {
|
|
3473
|
+
generation: action.generation,
|
|
3474
|
+
entries,
|
|
3475
|
+
items: entries.flatMap((entry) => isSuggestionGroup(entry) ? entry.suggestions : [entry]),
|
|
3476
|
+
selectedIndex: 0,
|
|
3477
|
+
visibleFocus: false
|
|
3478
|
+
},
|
|
3479
|
+
loadingDecoration: loadingDecoration(false)
|
|
3480
|
+
};
|
|
3481
|
+
}
|
|
3474
3482
|
case "navigate": {
|
|
3475
3483
|
/* v8 ignore next 3 -- defensive: navigate is only dispatched after results are loaded @preserve */
|
|
3476
3484
|
if (!prevState.suggestions?.items.length) return prevState;
|
|
@@ -3559,15 +3567,17 @@ var RteSuggestFeatureImpl = class extends require_slottable_request.RteFeatureIm
|
|
|
3559
3567
|
}));
|
|
3560
3568
|
return;
|
|
3561
3569
|
}
|
|
3562
|
-
|
|
3570
|
+
const createOption = (suggestion, index, scrollTarget) => {
|
|
3563
3571
|
const item = rte.createComponent(require_option.ListboxOption);
|
|
3564
3572
|
item.text = suggestion.text;
|
|
3565
3573
|
item.textSecondary = suggestion.textSecondary;
|
|
3574
|
+
item.icon = suggestion.icon;
|
|
3566
3575
|
if (index === suggestions.selectedIndex) {
|
|
3567
3576
|
item.selected = true;
|
|
3568
3577
|
if (suggestions.visibleFocus) item._highlighted = true;
|
|
3578
|
+
const target = scrollTarget ?? item;
|
|
3569
3579
|
queueMicrotask(() => {
|
|
3570
|
-
|
|
3580
|
+
target.scrollIntoView({ block: "nearest" });
|
|
3571
3581
|
});
|
|
3572
3582
|
}
|
|
3573
3583
|
item.addEventListener("click", (e) => {
|
|
@@ -3575,7 +3585,21 @@ var RteSuggestFeatureImpl = class extends require_slottable_request.RteFeatureIm
|
|
|
3575
3585
|
e.stopPropagation();
|
|
3576
3586
|
this.selectSuggestion(view, suggestState, suggestion);
|
|
3577
3587
|
});
|
|
3578
|
-
|
|
3588
|
+
return item;
|
|
3589
|
+
};
|
|
3590
|
+
let index = 0;
|
|
3591
|
+
for (const entry of suggestions.entries) {
|
|
3592
|
+
if (!isSuggestionGroup(entry)) {
|
|
3593
|
+
content.appendChild(createOption(entry, index++));
|
|
3594
|
+
continue;
|
|
3595
|
+
}
|
|
3596
|
+
const group = rte.createComponent(require_optgroup.Optgroup);
|
|
3597
|
+
const label = document.createElement("span");
|
|
3598
|
+
label.slot = "label";
|
|
3599
|
+
label.textContent = entry.label;
|
|
3600
|
+
group.appendChild(label);
|
|
3601
|
+
for (const [i, suggestion] of entry.suggestions.entries()) group.appendChild(createOption(suggestion, index++, i === 0 ? group : void 0));
|
|
3602
|
+
content.appendChild(group);
|
|
3579
3603
|
}
|
|
3580
3604
|
};
|
|
3581
3605
|
return {
|
|
@@ -3670,9 +3694,10 @@ var RteCharacterCountFeature = require_slottable_request.featureFacade(RteCharac
|
|
|
3670
3694
|
//#endregion
|
|
3671
3695
|
//#region src/lib/rich-text-editor/definition.ts
|
|
3672
3696
|
var richTextEditorDefinition = require_vivid_element.defineVividComponent("rich-text-editor", RichTextEditor, RichTextEditorTemplate, [
|
|
3673
|
-
require_definition$
|
|
3674
|
-
require_definition$
|
|
3697
|
+
require_definition$9.dividerDefinition,
|
|
3698
|
+
require_definition$10.selectDefinition,
|
|
3675
3699
|
require_definition$7.listboxOptionDefinition,
|
|
3700
|
+
require_definition$8.optgroupDefinition,
|
|
3676
3701
|
require_definition$1.buttonDefinition,
|
|
3677
3702
|
require_definition$6.tooltipDefinition,
|
|
3678
3703
|
require_definition$4.menuDefinition,
|