@vonage/vivid 4.25.0 → 4.26.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/custom-elements.json +1496 -386
- package/lib/accordion-item/accordion-item.d.ts +1 -1
- package/lib/action-group/action-group.d.ts +1 -1
- package/lib/alert/alert.d.ts +2 -2
- package/lib/audio-player/audio-player.d.ts +1 -1
- package/lib/badge/badge.d.ts +1 -1
- package/lib/banner/banner.d.ts +3 -3
- package/lib/breadcrumb/breadcrumb.d.ts +1 -1
- package/lib/breadcrumb-item/breadcrumb-item.d.ts +1 -1
- package/lib/button/button.d.ts +3 -3
- package/lib/calendar/calendar.d.ts +2 -0
- package/lib/calendar-event/calendar-event.d.ts +1 -1
- package/lib/card/card.d.ts +1 -1
- package/lib/checkbox/checkbox.d.ts +3 -3
- package/lib/combobox/combobox.d.ts +3 -3
- package/lib/data-grid/data-grid-cell.d.ts +4 -2
- package/lib/data-grid/data-grid-row.d.ts +1 -0
- package/lib/data-grid/data-grid.d.ts +1 -1
- package/lib/date-picker/date-picker.d.ts +4 -4
- package/lib/date-range-picker/date-range-picker.d.ts +2 -2
- package/lib/date-time-picker/date-time-picker.d.ts +4 -4
- package/lib/dial-pad/dial-pad.d.ts +1 -1
- package/lib/dialog/dialog.d.ts +3 -2
- package/lib/divider/divider.d.ts +1 -1
- package/lib/fab/fab.d.ts +1 -1
- package/lib/file-picker/file-picker.d.ts +3 -3
- package/lib/header/header.d.ts +1 -1
- package/lib/menu/menu.d.ts +1 -1
- package/lib/menu-item/menu-item.d.ts +2 -2
- package/lib/nav/nav.d.ts +1 -1
- package/lib/nav-disclosure/nav-disclosure.d.ts +2 -2
- package/lib/nav-item/nav-item.d.ts +2 -2
- package/lib/note/note.d.ts +1 -1
- package/lib/number-field/locale.d.ts +3 -2
- package/lib/number-field/number-field.d.ts +5 -5
- package/lib/option/option.d.ts +2 -2
- package/lib/pagination/locale.d.ts +5 -0
- package/lib/pagination/pagination.d.ts +341 -2
- package/lib/popup/popup.d.ts +1 -0
- package/lib/progress/progress.d.ts +1 -1
- package/lib/progress-ring/progress-ring.d.ts +1 -1
- package/lib/radio-group/radio-group.d.ts +1 -1
- package/lib/range-slider/range-slider.d.ts +1 -1
- package/lib/rich-text-editor/menubar/menubar.d.ts +1 -1
- package/lib/rich-text-editor/rich-text-editor.d.ts +1 -1
- package/lib/searchable-select/option-tag.d.ts +1 -1
- package/lib/searchable-select/searchable-select.d.ts +5 -5
- package/lib/select/select.d.ts +4 -4
- package/lib/selectable-box/selectable-box.d.ts +1 -1
- package/lib/slider/slider.d.ts +2 -2
- package/lib/split-button/split-button.d.ts +3 -3
- package/lib/switch/switch.d.ts +1 -1
- package/lib/tab/tab.d.ts +3 -3
- package/lib/tab-panel/tab-panel.d.ts +1 -1
- package/lib/tag/tag.d.ts +2 -2
- package/lib/tag-group/tag-group.d.ts +1 -1
- package/lib/text-area/text-area.d.ts +4 -4
- package/lib/text-field/text-field.d.ts +5 -5
- package/lib/time-picker/time-picker.d.ts +2 -2
- package/lib/tree-item/tree-item.d.ts +2 -2
- package/lib/tree-view/tree-view.d.ts +1 -1
- package/lib/video-player/video-player.d.ts +1 -1
- package/locales/de-DE.cjs +21 -3
- package/locales/de-DE.js +21 -3
- package/locales/en-GB.cjs +21 -3
- package/locales/en-GB.js +21 -3
- package/locales/en-US.cjs +21 -3
- package/locales/en-US.js +21 -3
- package/locales/ja-JP.cjs +21 -3
- package/locales/ja-JP.js +21 -3
- package/locales/zh-CN.cjs +21 -3
- package/locales/zh-CN.js +21 -3
- package/package.json +1 -1
- package/shared/aria/delegates-aria.d.ts +1 -1
- package/shared/aria/host-semantics.d.ts +1 -1
- package/shared/definition.cjs +19 -3
- package/shared/definition.js +20 -4
- package/shared/definition11.cjs +1 -1
- package/shared/definition11.js +1 -1
- package/shared/definition13.cjs +25 -0
- package/shared/definition13.js +26 -1
- package/shared/definition15.cjs +1 -1
- package/shared/definition15.js +1 -1
- package/shared/definition16.cjs +1 -1
- package/shared/definition16.js +1 -1
- package/shared/definition17.cjs +601 -521
- package/shared/definition17.js +599 -519
- package/shared/definition21.cjs +2 -2
- package/shared/definition21.js +2 -2
- package/shared/definition22.cjs +9 -3
- package/shared/definition22.js +9 -3
- package/shared/definition28.cjs +1 -1
- package/shared/definition28.js +1 -1
- package/shared/definition3.cjs +1 -1
- package/shared/definition3.js +1 -1
- package/shared/definition31.cjs +1 -1
- package/shared/definition31.js +1 -1
- package/shared/definition32.cjs +1 -1
- package/shared/definition32.js +1 -1
- package/shared/definition36.cjs +40 -29
- package/shared/definition36.js +33 -22
- package/shared/definition38.cjs +30 -23
- package/shared/definition38.js +30 -23
- package/shared/definition42.cjs +2 -2
- package/shared/definition42.js +2 -2
- package/shared/definition45.cjs +2 -2
- package/shared/definition45.js +2 -2
- package/shared/definition46.cjs +1 -1
- package/shared/definition46.js +1 -1
- package/shared/definition49.cjs +2 -2
- package/shared/definition49.js +2 -2
- package/shared/definition63.cjs +2 -2
- package/shared/definition63.js +2 -2
- package/shared/definition67.cjs +9 -1
- package/shared/definition67.js +10 -2
- package/shared/feedback/feedback-message.d.ts +1 -1
- package/shared/feedback/mixins.d.ts +2 -2
- package/shared/foundation/button/button.d.ts +1 -1
- package/shared/foundation/vivid-element/vivid-element.d.ts +2 -0
- package/shared/key-codes.js +1 -1
- package/shared/localization/Locale.d.ts +2 -0
- package/shared/mixins.cjs +4 -1
- package/shared/mixins.js +4 -1
- package/shared/patterns/affix.d.ts +2 -2
- package/shared/patterns/char-count/char-count.d.ts +1 -1
- package/shared/patterns/form-elements/with-success-text.d.ts +1 -1
- package/shared/patterns/linkable.d.ts +1 -1
- package/shared/patterns/localized.d.ts +1 -1
- package/shared/patterns/trapped-focus.d.ts +1 -1
- package/shared/picker-field/mixins/calendar-picker.d.ts +1 -1
- package/shared/picker-field/mixins/calendar-picker.template.d.ts +1 -1
- package/shared/picker-field/mixins/inline-time-picker/inline-time-picker.d.ts +1 -1
- package/shared/picker-field/mixins/min-max-calendar-picker.d.ts +2 -2
- package/shared/picker-field/mixins/single-date-picker.d.ts +3 -3
- package/shared/picker-field/mixins/single-value-picker.d.ts +1 -1
- package/shared/picker-field/mixins/time-selection-picker.d.ts +2 -2
- package/shared/picker-field/mixins/time-selection-picker.template.d.ts +2 -2
- package/shared/picker-field/picker-field.d.ts +3 -3
- package/shared/picker-field.template.cjs +13 -13
- package/shared/picker-field.template.js +13 -13
- package/shared/vivid-element.cjs +11 -1
- package/shared/vivid-element.js +11 -1
- package/styles/core/all.css +1 -1
- package/styles/core/theme.css +1 -1
- package/styles/core/typography.css +1 -1
- package/styles/tokens/theme-dark.css +4 -4
- package/styles/tokens/theme-light.css +4 -4
- package/styles/tokens/vivid-2-compat.css +1 -1
- package/vivid.api.json +154 -66
package/shared/definition21.cjs
CHANGED
|
@@ -183,10 +183,10 @@ function renderTextField(textFieldTag, buttonTag) {
|
|
|
183
183
|
${when.when(
|
|
184
184
|
(x) => x.value && x.value.length && x.value.length > 0,
|
|
185
185
|
vividElement.html`<${buttonTag}
|
|
186
|
-
|
|
186
|
+
slot="action-items"
|
|
187
187
|
size='super-condensed'
|
|
188
188
|
icon="backspace-line"
|
|
189
|
-
aria-label="${(x) => x.deleteAriaLabel || x.locale.dialPad.
|
|
189
|
+
aria-label="${(x) => x.deleteAriaLabel || x.locale.dialPad.deleteButtonLabel}"
|
|
190
190
|
appearance='ghost'
|
|
191
191
|
?disabled="${(x) => x.disabled || x.callActive}"
|
|
192
192
|
@click="${(x) => deleteLastCharacter(x)}">
|
package/shared/definition21.js
CHANGED
|
@@ -181,10 +181,10 @@ function renderTextField(textFieldTag, buttonTag) {
|
|
|
181
181
|
${when(
|
|
182
182
|
(x) => x.value && x.value.length && x.value.length > 0,
|
|
183
183
|
html`<${buttonTag}
|
|
184
|
-
|
|
184
|
+
slot="action-items"
|
|
185
185
|
size='super-condensed'
|
|
186
186
|
icon="backspace-line"
|
|
187
|
-
aria-label="${(x) => x.deleteAriaLabel || x.locale.dialPad.
|
|
187
|
+
aria-label="${(x) => x.deleteAriaLabel || x.locale.dialPad.deleteButtonLabel}"
|
|
188
188
|
appearance='ghost'
|
|
189
189
|
?disabled="${(x) => x.disabled || x.callActive}"
|
|
190
190
|
@click="${(x) => deleteLastCharacter(x)}">
|
package/shared/definition22.cjs
CHANGED
|
@@ -11,7 +11,7 @@ const classNames = require('./class-names.cjs');
|
|
|
11
11
|
const when = require('./when.cjs');
|
|
12
12
|
const slotted = require('./slotted.cjs');
|
|
13
13
|
|
|
14
|
-
const styles = ".base{white-space:initial;box-sizing:border-box;padding:0;border:none;border-radius:8px;background-color:transparent;color:var(--vvd-color-canvas-text);max-
|
|
14
|
+
const styles = ".base{white-space:initial;box-sizing:border-box;padding:0;border:none;border-radius:8px;background-color:transparent;color:var(--vvd-color-canvas-text);max-inline-size:var(--dialog-max-inline-size, var(--_dialog-default-max-inline-size));min-inline-size:var(--dialog-min-inline-size, 280px)}@media not all and (width >= 600px){.base{--_dialog-default-max-inline-size: 90vw}}@media (width >= 600px){.base{--_dialog-default-max-inline-size: 560px}}.base:not(.scrollable-body){max-block-size:var(--dialog-max-block-size, calc(100vh - 64px) )}.base:not(.modal){z-index:var(--dialog-z-index, 1);inset-block:var(--dialog-inset-block, auto);inset-inline:var(--dialog-inset-inline, 0)}.base.modal{box-shadow:0 4px 20px #00000059}.base.modal::backdrop{background-color:var(--vvd-color-canvas-text, currentColor);opacity:.5}.base:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb,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))}.main-wrapper{display:flex;box-sizing:border-box;flex-direction:column;gap:24px;padding-block:24px}.main-wrapper>*{box-sizing:border-box}.header{display:grid;align-items:flex-start;justify-content:space-between;inline-size:100%;padding-inline:24px}.base:not(.icon-placement-side) .header{grid-template-columns:1fr auto;grid-template-rows:auto auto auto}.base:not(.icon-placement-side) .header .icon{font-size:calc(1px*(32 + 4*clamp(-1,var(--vvd-size-density, 0),2)));grid-column:1/2;grid-row:1/2;line-height:1;margin-block-end:calc(1px*(24 + 4*clamp(-1,var(--vvd-size-density, 0),2)))}.base.icon-placement-side .header{grid-template-columns:auto 1fr auto;grid-template-rows:auto auto}.base.icon-placement-side .header .icon{font-size:calc(1px*(28 + 4*clamp(-1,var(--vvd-size-density, 0),2)))}.base.icon-placement-side .header ::slotted(*),.base.icon-placement-side .header .icon{grid-column:1/2;grid-row:1/-1;margin-inline-end:calc(1px*(32 + 4*clamp(-1,var(--vvd-size-density, 0),2))/2)}.header.border{position:relative}.header.border:after{position:absolute;bottom:-24px;left:0;background-color:var(--vvd-color-neutral-200);block-size:1px;content:\"\";inline-size:100%}.base.hide-body .header.border:after{content:none}.body:not(.full-width){padding-inline:24px}.hide-body .body{display:none}.scrollable-body .body{overflow:hidden auto;max-block-size:var(--dialog-body-max-block-size, 300px);--scrollbar-track-color: transparent;--scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%)}.scrollable-body .body{scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.scrollable-body .body ::-webkit-scrollbar{width:4px}.scrollable-body .body ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.scrollable-body .body ::-webkit-scrollbar-thumb{border:0;border-radius:4px;background-color:var(--scrollbar-fallback-track-color, var(--scrollbar-thumb-color))}.footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-inline:24px}.hide-footer .footer{display:none}.footer .actions{display:flex;align-self:flex-end;gap:8px}.dismiss-button{flex-shrink:0;grid-column:-2/-1;grid-row:1/-1;margin-block-start:-8px;margin-inline:4px -8px}.headline{margin:0;font:var(--vvd-typography-heading-4)}.subtitle{margin:0;font:var(--vvd-typography-base)}slot[name=main]{--scrollbar-track-color: transparent;--scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%)}slot[name=main]{scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}slot[name=main] ::-webkit-scrollbar{width:4px}slot[name=main] ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}slot[name=main] ::-webkit-scrollbar-thumb{border:0;border-radius:4px;background-color:var(--scrollbar-fallback-track-color, var(--scrollbar-thumb-color))}slot[name=main]{display:block;overflow:hidden auto;max-width:inherit;max-height:inherit;border-radius:inherit}";
|
|
15
15
|
|
|
16
16
|
var __defProp = Object.defineProperty;
|
|
17
17
|
var __decorateClass = (decorators, target, key, kind) => {
|
|
@@ -33,6 +33,7 @@ class Dialog extends localized.Localized(delegatesAria.DelegatesAria(vividElemen
|
|
|
33
33
|
this.noDismissButton = false;
|
|
34
34
|
this.nonDismissible = false;
|
|
35
35
|
this.modal = false;
|
|
36
|
+
this.scrollableBody = false;
|
|
36
37
|
this._openedAsModal = false;
|
|
37
38
|
this.#handleScrimClick = (event) => {
|
|
38
39
|
if (event.target !== this.#dialog || !this.#isDismissibleVia("light-dismiss")) {
|
|
@@ -227,6 +228,9 @@ __decorateClass([
|
|
|
227
228
|
__decorateClass([
|
|
228
229
|
vividElement.attr({ mode: "boolean" })
|
|
229
230
|
], Dialog.prototype, "modal");
|
|
231
|
+
__decorateClass([
|
|
232
|
+
vividElement.attr({ mode: "boolean", attribute: "scrollable-body" })
|
|
233
|
+
], Dialog.prototype, "scrollableBody");
|
|
230
234
|
__decorateClass([
|
|
231
235
|
vividElement.observable
|
|
232
236
|
], Dialog.prototype, "_openedAsModal");
|
|
@@ -245,7 +249,8 @@ const getClasses = ({
|
|
|
245
249
|
bodySlottedContent,
|
|
246
250
|
footerSlottedContent,
|
|
247
251
|
actionItemsSlottedContent,
|
|
248
|
-
_openedAsModal
|
|
252
|
+
_openedAsModal,
|
|
253
|
+
scrollableBody
|
|
249
254
|
}) => classNames.classNames(
|
|
250
255
|
"base",
|
|
251
256
|
[`icon-placement-${iconPlacement}`, Boolean(iconPlacement)],
|
|
@@ -254,7 +259,8 @@ const getClasses = ({
|
|
|
254
259
|
"hide-footer",
|
|
255
260
|
!(footerSlottedContent?.length || actionItemsSlottedContent?.length)
|
|
256
261
|
],
|
|
257
|
-
["modal", _openedAsModal]
|
|
262
|
+
["modal", _openedAsModal],
|
|
263
|
+
["scrollable-body", Boolean(scrollableBody)]
|
|
258
264
|
);
|
|
259
265
|
function icon(iconTag) {
|
|
260
266
|
return vividElement.html`
|
package/shared/definition22.js
CHANGED
|
@@ -9,7 +9,7 @@ import { c as classNames } from './class-names.js';
|
|
|
9
9
|
import { w as when } from './when.js';
|
|
10
10
|
import { s as slotted } from './slotted.js';
|
|
11
11
|
|
|
12
|
-
const styles = ".base{white-space:initial;box-sizing:border-box;padding:0;border:none;border-radius:8px;background-color:transparent;color:var(--vvd-color-canvas-text);max-
|
|
12
|
+
const styles = ".base{white-space:initial;box-sizing:border-box;padding:0;border:none;border-radius:8px;background-color:transparent;color:var(--vvd-color-canvas-text);max-inline-size:var(--dialog-max-inline-size, var(--_dialog-default-max-inline-size));min-inline-size:var(--dialog-min-inline-size, 280px)}@media not all and (width >= 600px){.base{--_dialog-default-max-inline-size: 90vw}}@media (width >= 600px){.base{--_dialog-default-max-inline-size: 560px}}.base:not(.scrollable-body){max-block-size:var(--dialog-max-block-size, calc(100vh - 64px) )}.base:not(.modal){z-index:var(--dialog-z-index, 1);inset-block:var(--dialog-inset-block, auto);inset-inline:var(--dialog-inset-inline, 0)}.base.modal{box-shadow:0 4px 20px #00000059}.base.modal::backdrop{background-color:var(--vvd-color-canvas-text, currentColor);opacity:.5}.base:focus-visible{box-shadow:0 0 0 4px color-mix(in srgb,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))}.main-wrapper{display:flex;box-sizing:border-box;flex-direction:column;gap:24px;padding-block:24px}.main-wrapper>*{box-sizing:border-box}.header{display:grid;align-items:flex-start;justify-content:space-between;inline-size:100%;padding-inline:24px}.base:not(.icon-placement-side) .header{grid-template-columns:1fr auto;grid-template-rows:auto auto auto}.base:not(.icon-placement-side) .header .icon{font-size:calc(1px*(32 + 4*clamp(-1,var(--vvd-size-density, 0),2)));grid-column:1/2;grid-row:1/2;line-height:1;margin-block-end:calc(1px*(24 + 4*clamp(-1,var(--vvd-size-density, 0),2)))}.base.icon-placement-side .header{grid-template-columns:auto 1fr auto;grid-template-rows:auto auto}.base.icon-placement-side .header .icon{font-size:calc(1px*(28 + 4*clamp(-1,var(--vvd-size-density, 0),2)))}.base.icon-placement-side .header ::slotted(*),.base.icon-placement-side .header .icon{grid-column:1/2;grid-row:1/-1;margin-inline-end:calc(1px*(32 + 4*clamp(-1,var(--vvd-size-density, 0),2))/2)}.header.border{position:relative}.header.border:after{position:absolute;bottom:-24px;left:0;background-color:var(--vvd-color-neutral-200);block-size:1px;content:\"\";inline-size:100%}.base.hide-body .header.border:after{content:none}.body:not(.full-width){padding-inline:24px}.hide-body .body{display:none}.scrollable-body .body{overflow:hidden auto;max-block-size:var(--dialog-body-max-block-size, 300px);--scrollbar-track-color: transparent;--scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%)}.scrollable-body .body{scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}.scrollable-body .body ::-webkit-scrollbar{width:4px}.scrollable-body .body ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}.scrollable-body .body ::-webkit-scrollbar-thumb{border:0;border-radius:4px;background-color:var(--scrollbar-fallback-track-color, var(--scrollbar-thumb-color))}.footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-inline:24px}.hide-footer .footer{display:none}.footer .actions{display:flex;align-self:flex-end;gap:8px}.dismiss-button{flex-shrink:0;grid-column:-2/-1;grid-row:1/-1;margin-block-start:-8px;margin-inline:4px -8px}.headline{margin:0;font:var(--vvd-typography-heading-4)}.subtitle{margin:0;font:var(--vvd-typography-base)}slot[name=main]{--scrollbar-track-color: transparent;--scrollbar-thumb-color: color-mix(in srgb, var(--vvd-color-neutral-950), transparent 70%)}slot[name=main]{scrollbar-color:var(--scrollbar-thumb-color) var(--scrollbar-track-color);scrollbar-width:thin}slot[name=main] ::-webkit-scrollbar{width:4px}slot[name=main] ::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}slot[name=main] ::-webkit-scrollbar-thumb{border:0;border-radius:4px;background-color:var(--scrollbar-fallback-track-color, var(--scrollbar-thumb-color))}slot[name=main]{display:block;overflow:hidden auto;max-width:inherit;max-height:inherit;border-radius:inherit}";
|
|
13
13
|
|
|
14
14
|
var __defProp = Object.defineProperty;
|
|
15
15
|
var __decorateClass = (decorators, target, key, kind) => {
|
|
@@ -31,6 +31,7 @@ class Dialog extends Localized(DelegatesAria(VividElement)) {
|
|
|
31
31
|
this.noDismissButton = false;
|
|
32
32
|
this.nonDismissible = false;
|
|
33
33
|
this.modal = false;
|
|
34
|
+
this.scrollableBody = false;
|
|
34
35
|
this._openedAsModal = false;
|
|
35
36
|
this.#handleScrimClick = (event) => {
|
|
36
37
|
if (event.target !== this.#dialog || !this.#isDismissibleVia("light-dismiss")) {
|
|
@@ -225,6 +226,9 @@ __decorateClass([
|
|
|
225
226
|
__decorateClass([
|
|
226
227
|
attr({ mode: "boolean" })
|
|
227
228
|
], Dialog.prototype, "modal");
|
|
229
|
+
__decorateClass([
|
|
230
|
+
attr({ mode: "boolean", attribute: "scrollable-body" })
|
|
231
|
+
], Dialog.prototype, "scrollableBody");
|
|
228
232
|
__decorateClass([
|
|
229
233
|
observable
|
|
230
234
|
], Dialog.prototype, "_openedAsModal");
|
|
@@ -243,7 +247,8 @@ const getClasses = ({
|
|
|
243
247
|
bodySlottedContent,
|
|
244
248
|
footerSlottedContent,
|
|
245
249
|
actionItemsSlottedContent,
|
|
246
|
-
_openedAsModal
|
|
250
|
+
_openedAsModal,
|
|
251
|
+
scrollableBody
|
|
247
252
|
}) => classNames(
|
|
248
253
|
"base",
|
|
249
254
|
[`icon-placement-${iconPlacement}`, Boolean(iconPlacement)],
|
|
@@ -252,7 +257,8 @@ const getClasses = ({
|
|
|
252
257
|
"hide-footer",
|
|
253
258
|
!(footerSlottedContent?.length || actionItemsSlottedContent?.length)
|
|
254
259
|
],
|
|
255
|
-
["modal", _openedAsModal]
|
|
260
|
+
["modal", _openedAsModal],
|
|
261
|
+
["scrollable-body", Boolean(scrollableBody)]
|
|
256
262
|
);
|
|
257
263
|
function icon(iconTag) {
|
|
258
264
|
return html`
|
package/shared/definition28.cjs
CHANGED
|
@@ -135,7 +135,7 @@ var memoizeWith = /*#__PURE__*/_has._curry2(function memoizeWith(keyGen, fn) {
|
|
|
135
135
|
});
|
|
136
136
|
|
|
137
137
|
const ICONS_BASE_URL = "https://icon.resources.vonage.com";
|
|
138
|
-
const ICONS_VERSION = "4.6.
|
|
138
|
+
const ICONS_VERSION = "4.6.6";
|
|
139
139
|
|
|
140
140
|
const numberConverter = {
|
|
141
141
|
toView(value) {
|
package/shared/definition28.js
CHANGED
|
@@ -133,7 +133,7 @@ var memoizeWith = /*#__PURE__*/_curry2(function memoizeWith(keyGen, fn) {
|
|
|
133
133
|
});
|
|
134
134
|
|
|
135
135
|
const ICONS_BASE_URL = "https://icon.resources.vonage.com";
|
|
136
|
-
const ICONS_VERSION = "4.6.
|
|
136
|
+
const ICONS_VERSION = "4.6.6";
|
|
137
137
|
|
|
138
138
|
const numberConverter = {
|
|
139
139
|
toView(value) {
|
package/shared/definition3.cjs
CHANGED
|
@@ -4,7 +4,7 @@ const vividElement = require('./vivid-element.cjs');
|
|
|
4
4
|
const delegatesAria = require('./delegates-aria.cjs');
|
|
5
5
|
const classNames = require('./class-names.cjs');
|
|
6
6
|
|
|
7
|
-
const styles = ":host{display:inline-block}.base{--_connotation-color-primary: var(--vvd-action-group-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-intermediate: var(--vvd-action-group-accent-intermediate, var(--vvd-color-neutral-500));--_connotation-color-faint: var(--vvd-action-group-accent-faint, var(--vvd-color-neutral-50))}.base{--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--vvd-color-neutral-500)}.base.appearance-ghost{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base{position:relative;display:flex;box-sizing:border-box;align-items:center;background-color:var(--_appearance-color-fill);inline-size:inherit;vertical-align:middle}.base:before{position:absolute;z-index:1;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);content:\"\";inset:0;pointer-events:none}.base:not(.tight){padding:4px;column-gap:4px}.base:not(.shape-pill){border-radius:8px}.base.shape-pill{border-radius:24px}::slotted([
|
|
7
|
+
const styles = ":host{display:inline-block}.base{--_connotation-color-primary: var(--vvd-action-group-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-intermediate: var(--vvd-action-group-accent-intermediate, var(--vvd-color-neutral-500));--_connotation-color-faint: var(--vvd-action-group-accent-faint, var(--vvd-color-neutral-50))}.base{--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--vvd-color-neutral-500)}.base.appearance-ghost{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base{position:relative;display:flex;box-sizing:border-box;align-items:center;background-color:var(--_appearance-color-fill);inline-size:inherit;vertical-align:middle}.base:before{position:absolute;z-index:1;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);content:\"\";inset:0;pointer-events:none}.base:not(.tight){padding:4px;column-gap:4px}.base:not(.shape-pill){border-radius:8px}.base.shape-pill{border-radius:24px}::slotted([data-vvd-component=divider]){align-self:stretch;margin-block:4px}";
|
|
8
8
|
|
|
9
9
|
var __defProp = Object.defineProperty;
|
|
10
10
|
var __decorateClass = (decorators, target, key, kind) => {
|
package/shared/definition3.js
CHANGED
|
@@ -2,7 +2,7 @@ import { V as VividElement, a as attr, h as html, d as createRegisterFunction, f
|
|
|
2
2
|
import { D as DelegatesAria, d as delegateAria } from './delegates-aria.js';
|
|
3
3
|
import { c as classNames } from './class-names.js';
|
|
4
4
|
|
|
5
|
-
const styles = ":host{display:inline-block}.base{--_connotation-color-primary: var(--vvd-action-group-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-intermediate: var(--vvd-action-group-accent-intermediate, var(--vvd-color-neutral-500));--_connotation-color-faint: var(--vvd-action-group-accent-faint, var(--vvd-color-neutral-50))}.base{--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--vvd-color-neutral-500)}.base.appearance-ghost{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base{position:relative;display:flex;box-sizing:border-box;align-items:center;background-color:var(--_appearance-color-fill);inline-size:inherit;vertical-align:middle}.base:before{position:absolute;z-index:1;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);content:\"\";inset:0;pointer-events:none}.base:not(.tight){padding:4px;column-gap:4px}.base:not(.shape-pill){border-radius:8px}.base.shape-pill{border-radius:24px}::slotted([
|
|
5
|
+
const styles = ":host{display:inline-block}.base{--_connotation-color-primary: var(--vvd-action-group-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-intermediate: var(--vvd-action-group-accent-intermediate, var(--vvd-color-neutral-500));--_connotation-color-faint: var(--vvd-action-group-accent-faint, var(--vvd-color-neutral-50))}.base{--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--vvd-color-neutral-500)}.base.appearance-ghost{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base{position:relative;display:flex;box-sizing:border-box;align-items:center;background-color:var(--_appearance-color-fill);inline-size:inherit;vertical-align:middle}.base:before{position:absolute;z-index:1;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--_appearance-color-outline);content:\"\";inset:0;pointer-events:none}.base:not(.tight){padding:4px;column-gap:4px}.base:not(.shape-pill){border-radius:8px}.base.shape-pill{border-radius:24px}::slotted([data-vvd-component=divider]){align-self:stretch;margin-block:4px}";
|
|
6
6
|
|
|
7
7
|
var __defProp = Object.defineProperty;
|
|
8
8
|
var __decorateClass = (decorators, target, key, kind) => {
|
package/shared/definition31.cjs
CHANGED
|
@@ -12,7 +12,7 @@ const ref = require('./ref.cjs');
|
|
|
12
12
|
const classNames = require('./class-names.cjs');
|
|
13
13
|
const slotted = require('./slotted.cjs');
|
|
14
14
|
|
|
15
|
-
const styles = ":host{display:var(--_popup-display, inline)}:host([slotted-anchor]){--_popup-display: contents}.base{display:flex;overflow:hidden auto;box-sizing:border-box;flex-direction:column;gap:8px;inline-size:max-content;max-block-size:var(--menu-block-size, 408px);min-inline-size:var(--menu-min-inline-size);padding-block:8px}@media not all and (width >= 600px){.base{max-inline-size:var(--menu-max-inline-size, 300px)}}@media (width >= 600px){.base{max-inline-size:var(--menu-max-inline-size)}}::slotted(a){color:var(--vvd-color-canvas-text);text-decoration:none}::slotted(a[
|
|
15
|
+
const styles = ":host{display:var(--_popup-display, inline)}:host([slotted-anchor]){--_popup-display: contents}.base{display:flex;overflow:hidden auto;box-sizing:border-box;flex-direction:column;gap:8px;inline-size:max-content;max-block-size:var(--menu-block-size, 408px);min-inline-size:var(--menu-min-inline-size);padding-block:8px}@media not all and (width >= 600px){.base{max-inline-size:var(--menu-max-inline-size, 300px)}}@media (width >= 600px){.base{max-inline-size:var(--menu-max-inline-size)}}::slotted(a){color:var(--vvd-color-canvas-text);text-decoration:none}::slotted(a[data-vvd-component=menuitem]:focus-visible){box-shadow:0 0 0 4px color-mix(in srgb,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;display:block}.header{padding-block-start:4px;padding-inline:12px}.hide-header .header{display:none}.body{display:flex;flex-direction:column;row-gap:1px}.hide-body .body{display:none}.action-items{display:flex;justify-content:flex-end;gap:8px;padding-block-end:4px;padding-inline:12px}.hide-actions .action-items{display:none}";
|
|
16
16
|
|
|
17
17
|
var __defProp = Object.defineProperty;
|
|
18
18
|
var __decorateClass = (decorators, target, key, kind) => {
|
package/shared/definition31.js
CHANGED
|
@@ -10,7 +10,7 @@ import { r as ref } from './ref.js';
|
|
|
10
10
|
import { c as classNames } from './class-names.js';
|
|
11
11
|
import { s as slotted } from './slotted.js';
|
|
12
12
|
|
|
13
|
-
const styles = ":host{display:var(--_popup-display, inline)}:host([slotted-anchor]){--_popup-display: contents}.base{display:flex;overflow:hidden auto;box-sizing:border-box;flex-direction:column;gap:8px;inline-size:max-content;max-block-size:var(--menu-block-size, 408px);min-inline-size:var(--menu-min-inline-size);padding-block:8px}@media not all and (width >= 600px){.base{max-inline-size:var(--menu-max-inline-size, 300px)}}@media (width >= 600px){.base{max-inline-size:var(--menu-max-inline-size)}}::slotted(a){color:var(--vvd-color-canvas-text);text-decoration:none}::slotted(a[
|
|
13
|
+
const styles = ":host{display:var(--_popup-display, inline)}:host([slotted-anchor]){--_popup-display: contents}.base{display:flex;overflow:hidden auto;box-sizing:border-box;flex-direction:column;gap:8px;inline-size:max-content;max-block-size:var(--menu-block-size, 408px);min-inline-size:var(--menu-min-inline-size);padding-block:8px}@media not all and (width >= 600px){.base{max-inline-size:var(--menu-max-inline-size, 300px)}}@media (width >= 600px){.base{max-inline-size:var(--menu-max-inline-size)}}::slotted(a){color:var(--vvd-color-canvas-text);text-decoration:none}::slotted(a[data-vvd-component=menuitem]:focus-visible){box-shadow:0 0 0 4px color-mix(in srgb,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;display:block}.header{padding-block-start:4px;padding-inline:12px}.hide-header .header{display:none}.body{display:flex;flex-direction:column;row-gap:1px}.hide-body .body{display:none}.action-items{display:flex;justify-content:flex-end;gap:8px;padding-block-end:4px;padding-inline:12px}.hide-actions .action-items{display:none}";
|
|
14
14
|
|
|
15
15
|
var __defProp = Object.defineProperty;
|
|
16
16
|
var __decorateClass = (decorators, target, key, kind) => {
|
package/shared/definition32.cjs
CHANGED
|
@@ -92,7 +92,7 @@ const NavDisclosureTemplate = (context) => {
|
|
|
92
92
|
${(x) => affixIconTemplate(x.icon, affix.IconWrapper.Slot)}
|
|
93
93
|
${(x) => x.label}
|
|
94
94
|
<slot name="meta"></slot>
|
|
95
|
-
<${iconTag} class="toggleIcon" name=${(x) => x.open ? "chevron-up-
|
|
95
|
+
<${iconTag} class="toggleIcon" name=${(x) => x.open ? "chevron-up-line" : "chevron-down-line"}
|
|
96
96
|
aria-hidden="true"></${iconTag}>
|
|
97
97
|
</summary>
|
|
98
98
|
<div class="content" id="disclosure-content">
|
package/shared/definition32.js
CHANGED
|
@@ -90,7 +90,7 @@ const NavDisclosureTemplate = (context) => {
|
|
|
90
90
|
${(x) => affixIconTemplate(x.icon, IconWrapper.Slot)}
|
|
91
91
|
${(x) => x.label}
|
|
92
92
|
<slot name="meta"></slot>
|
|
93
|
-
<${iconTag} class="toggleIcon" name=${(x) => x.open ? "chevron-up-
|
|
93
|
+
<${iconTag} class="toggleIcon" name=${(x) => x.open ? "chevron-up-line" : "chevron-down-line"}
|
|
94
94
|
aria-hidden="true"></${iconTag}>
|
|
95
95
|
</summary>
|
|
96
96
|
<div class="content" id="disclosure-content">
|
package/shared/definition36.cjs
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
const definition = require('./definition11.cjs');
|
|
4
|
-
const definition$
|
|
5
|
-
const
|
|
6
|
-
const definition$
|
|
3
|
+
const definition$1 = require('./definition11.cjs');
|
|
4
|
+
const definition$2 = require('./definition23.cjs');
|
|
5
|
+
const definition = require('./definition66.cjs');
|
|
6
|
+
const definition$3 = require('./definition28.cjs');
|
|
7
7
|
const mixins = require('./mixins.cjs');
|
|
8
|
+
const vividElement = require('./vivid-element.cjs');
|
|
8
9
|
const delegatesAria = require('./delegates-aria.cjs');
|
|
9
10
|
const formAssociated = require('./form-associated.cjs');
|
|
10
11
|
const withErrorText = require('./with-error-text.cjs');
|
|
@@ -38,6 +39,9 @@ function makeStep(element, direction) {
|
|
|
38
39
|
const value = parseFloat(element.value);
|
|
39
40
|
const stepUpValue = !isNaN(value) ? value + direction * element.step : element.min > 0 ? element.min : element.max < 0 ? element.max : !element.min ? direction * element.step : 0;
|
|
40
41
|
element.value = Number(stepUpValue.toFixed(12)).toString();
|
|
42
|
+
element._updatedValueAnnouncement = element.locale.numberField.updatedValueAnnouncement(
|
|
43
|
+
element._presentationValue
|
|
44
|
+
);
|
|
41
45
|
}
|
|
42
46
|
const buildNumberPatterns = (decimalSeparator) => {
|
|
43
47
|
const ds = decimalSeparator.source;
|
|
@@ -76,6 +80,7 @@ class NumberField extends mixins.WithFeedback(
|
|
|
76
80
|
*/
|
|
77
81
|
this.isUserInput = false;
|
|
78
82
|
this._presentationValue = "";
|
|
83
|
+
this._updatedValueAnnouncement = "";
|
|
79
84
|
this.incrementButtonAriaLabel = null;
|
|
80
85
|
this.decrementButtonAriaLabel = null;
|
|
81
86
|
}
|
|
@@ -281,6 +286,9 @@ __decorateClass([
|
|
|
281
286
|
__decorateClass([
|
|
282
287
|
vividElement.observable
|
|
283
288
|
], NumberField.prototype, "_presentationValue");
|
|
289
|
+
__decorateClass([
|
|
290
|
+
vividElement.observable
|
|
291
|
+
], NumberField.prototype, "_updatedValueAnnouncement");
|
|
284
292
|
__decorateClass([
|
|
285
293
|
vividElement.attr({ attribute: "increment-button-aria-label" })
|
|
286
294
|
], NumberField.prototype, "incrementButtonAriaLabel");
|
|
@@ -332,32 +340,32 @@ function getTabIndex(numberField) {
|
|
|
332
340
|
return numberField.disabled || numberField.readOnly ? "-1" : null;
|
|
333
341
|
}
|
|
334
342
|
function numberControlButtons(context) {
|
|
335
|
-
const buttonTag = context.tagFor(definition.Button);
|
|
343
|
+
const buttonTag = context.tagFor(definition$1.Button);
|
|
336
344
|
const dividerTag = context.tagFor(divider.Divider);
|
|
337
345
|
return vividElement.html`
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
</div>
|
|
346
|
+
<div class="control-buttons" ?inert="${(x) => x.disabled || x.readOnly}">
|
|
347
|
+
<${buttonTag} id="subtract" icon="minus-line"
|
|
348
|
+
?disabled="${(x) => x.disabled || x.readOnly}"
|
|
349
|
+
aria-label=${(x) => x.decrementButtonAriaLabel || x.locale.numberField.decrementButtonLabel(x.step)}
|
|
350
|
+
shape="${setControlButtonShape}"
|
|
351
|
+
type="button"
|
|
352
|
+
size="${(x) => x.scale === "condensed" ? "super-condensed" : "condensed"}"
|
|
353
|
+
tabindex="${getTabIndex}"
|
|
354
|
+
@click="${(x) => x.stepDown()}"></${buttonTag}>
|
|
355
|
+
<${dividerTag} class="divider" orientation="vertical"></${dividerTag}>
|
|
356
|
+
<${buttonTag} id="add" icon="plus-line"
|
|
357
|
+
?disabled="${(x) => x.disabled || x.readOnly}"
|
|
358
|
+
aria-label=${(x) => x.incrementButtonAriaLabel || x.locale.numberField.incrementButtonLabel(x.step)}
|
|
359
|
+
shape="${setControlButtonShape}"
|
|
360
|
+
type="button"
|
|
361
|
+
size="${(x) => x.scale === "condensed" ? "super-condensed" : "condensed"}"
|
|
362
|
+
tabindex="${getTabIndex}"
|
|
363
|
+
@click="${(x) => x.stepUp()}"></${buttonTag}>
|
|
364
|
+
</div>
|
|
358
365
|
`;
|
|
359
366
|
}
|
|
360
367
|
const NumberFieldTemplate = (context) => {
|
|
368
|
+
const visuallyHiddenTag = context.tagFor(definition.VisuallyHidden);
|
|
361
369
|
return vividElement.html`
|
|
362
370
|
<div class="base ${getStateClasses}">
|
|
363
371
|
${when.when((x) => x.label, renderLabel())}
|
|
@@ -391,6 +399,8 @@ const NumberFieldTemplate = (context) => {
|
|
|
391
399
|
${() => numberControlButtons(context)}
|
|
392
400
|
</div>
|
|
393
401
|
${(x) => x._getFeedbackTemplate(context)}
|
|
402
|
+
<${visuallyHiddenTag} id="value-announcement" role="status" aria-atomic="true">
|
|
403
|
+
${(x) => x._updatedValueAnnouncement}</${visuallyHiddenTag}>
|
|
394
404
|
</div>
|
|
395
405
|
`;
|
|
396
406
|
};
|
|
@@ -400,10 +410,11 @@ const numberFieldDefinition = vividElement.defineVividComponent(
|
|
|
400
410
|
NumberField,
|
|
401
411
|
NumberFieldTemplate,
|
|
402
412
|
[
|
|
403
|
-
definition.buttonDefinition,
|
|
404
|
-
definition$
|
|
405
|
-
definition$
|
|
406
|
-
mixins.feedbackMessageDefinition
|
|
413
|
+
definition$1.buttonDefinition,
|
|
414
|
+
definition$2.dividerDefinition,
|
|
415
|
+
definition$3.iconDefinition,
|
|
416
|
+
mixins.feedbackMessageDefinition,
|
|
417
|
+
definition.visuallyHiddenDefinition
|
|
407
418
|
],
|
|
408
419
|
{
|
|
409
420
|
styles,
|
package/shared/definition36.js
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { B as Button, b as buttonDefinition } from './definition11.js';
|
|
2
2
|
import { d as dividerDefinition } from './definition23.js';
|
|
3
|
-
import {
|
|
3
|
+
import { V as VisuallyHidden, v as visuallyHiddenDefinition } from './definition66.js';
|
|
4
4
|
import { i as iconDefinition } from './definition28.js';
|
|
5
5
|
import { a as WithFeedback, f as feedbackMessageDefinition } from './mixins.js';
|
|
6
|
+
import { D as DOM, V as VividElement, a as attr, n as nullableNumberConverter, o as observable, h as html, d as createRegisterFunction, f as defineVividComponent } from './vivid-element.js';
|
|
6
7
|
import { D as DelegatesAria, d as delegateAria } from './delegates-aria.js';
|
|
7
8
|
import { F as FormAssociated } from './form-associated.js';
|
|
8
9
|
import { W as WithErrorText } from './with-error-text.js';
|
|
@@ -36,6 +37,9 @@ function makeStep(element, direction) {
|
|
|
36
37
|
const value = parseFloat(element.value);
|
|
37
38
|
const stepUpValue = !isNaN(value) ? value + direction * element.step : element.min > 0 ? element.min : element.max < 0 ? element.max : !element.min ? direction * element.step : 0;
|
|
38
39
|
element.value = Number(stepUpValue.toFixed(12)).toString();
|
|
40
|
+
element._updatedValueAnnouncement = element.locale.numberField.updatedValueAnnouncement(
|
|
41
|
+
element._presentationValue
|
|
42
|
+
);
|
|
39
43
|
}
|
|
40
44
|
const buildNumberPatterns = (decimalSeparator) => {
|
|
41
45
|
const ds = decimalSeparator.source;
|
|
@@ -74,6 +78,7 @@ class NumberField extends WithFeedback(
|
|
|
74
78
|
*/
|
|
75
79
|
this.isUserInput = false;
|
|
76
80
|
this._presentationValue = "";
|
|
81
|
+
this._updatedValueAnnouncement = "";
|
|
77
82
|
this.incrementButtonAriaLabel = null;
|
|
78
83
|
this.decrementButtonAriaLabel = null;
|
|
79
84
|
}
|
|
@@ -279,6 +284,9 @@ __decorateClass([
|
|
|
279
284
|
__decorateClass([
|
|
280
285
|
observable
|
|
281
286
|
], NumberField.prototype, "_presentationValue");
|
|
287
|
+
__decorateClass([
|
|
288
|
+
observable
|
|
289
|
+
], NumberField.prototype, "_updatedValueAnnouncement");
|
|
282
290
|
__decorateClass([
|
|
283
291
|
attr({ attribute: "increment-button-aria-label" })
|
|
284
292
|
], NumberField.prototype, "incrementButtonAriaLabel");
|
|
@@ -333,29 +341,29 @@ function numberControlButtons(context) {
|
|
|
333
341
|
const buttonTag = context.tagFor(Button);
|
|
334
342
|
const dividerTag = context.tagFor(Divider);
|
|
335
343
|
return html`
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
</div>
|
|
344
|
+
<div class="control-buttons" ?inert="${(x) => x.disabled || x.readOnly}">
|
|
345
|
+
<${buttonTag} id="subtract" icon="minus-line"
|
|
346
|
+
?disabled="${(x) => x.disabled || x.readOnly}"
|
|
347
|
+
aria-label=${(x) => x.decrementButtonAriaLabel || x.locale.numberField.decrementButtonLabel(x.step)}
|
|
348
|
+
shape="${setControlButtonShape}"
|
|
349
|
+
type="button"
|
|
350
|
+
size="${(x) => x.scale === "condensed" ? "super-condensed" : "condensed"}"
|
|
351
|
+
tabindex="${getTabIndex}"
|
|
352
|
+
@click="${(x) => x.stepDown()}"></${buttonTag}>
|
|
353
|
+
<${dividerTag} class="divider" orientation="vertical"></${dividerTag}>
|
|
354
|
+
<${buttonTag} id="add" icon="plus-line"
|
|
355
|
+
?disabled="${(x) => x.disabled || x.readOnly}"
|
|
356
|
+
aria-label=${(x) => x.incrementButtonAriaLabel || x.locale.numberField.incrementButtonLabel(x.step)}
|
|
357
|
+
shape="${setControlButtonShape}"
|
|
358
|
+
type="button"
|
|
359
|
+
size="${(x) => x.scale === "condensed" ? "super-condensed" : "condensed"}"
|
|
360
|
+
tabindex="${getTabIndex}"
|
|
361
|
+
@click="${(x) => x.stepUp()}"></${buttonTag}>
|
|
362
|
+
</div>
|
|
356
363
|
`;
|
|
357
364
|
}
|
|
358
365
|
const NumberFieldTemplate = (context) => {
|
|
366
|
+
const visuallyHiddenTag = context.tagFor(VisuallyHidden);
|
|
359
367
|
return html`
|
|
360
368
|
<div class="base ${getStateClasses}">
|
|
361
369
|
${when((x) => x.label, renderLabel())}
|
|
@@ -389,6 +397,8 @@ const NumberFieldTemplate = (context) => {
|
|
|
389
397
|
${() => numberControlButtons(context)}
|
|
390
398
|
</div>
|
|
391
399
|
${(x) => x._getFeedbackTemplate(context)}
|
|
400
|
+
<${visuallyHiddenTag} id="value-announcement" role="status" aria-atomic="true">
|
|
401
|
+
${(x) => x._updatedValueAnnouncement}</${visuallyHiddenTag}>
|
|
392
402
|
</div>
|
|
393
403
|
`;
|
|
394
404
|
};
|
|
@@ -401,7 +411,8 @@ const numberFieldDefinition = defineVividComponent(
|
|
|
401
411
|
buttonDefinition,
|
|
402
412
|
dividerDefinition,
|
|
403
413
|
iconDefinition,
|
|
404
|
-
feedbackMessageDefinition
|
|
414
|
+
feedbackMessageDefinition,
|
|
415
|
+
visuallyHiddenDefinition
|
|
405
416
|
],
|
|
406
417
|
{
|
|
407
418
|
styles,
|
package/shared/definition38.cjs
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
const definition = require('./definition11.cjs');
|
|
4
4
|
const vividElement = require('./vivid-element.cjs');
|
|
5
|
+
const localized = require('./localized.cjs');
|
|
5
6
|
const enums = require('./enums.cjs');
|
|
6
7
|
const slotted = require('./slotted.cjs');
|
|
7
8
|
const classNames = require('./class-names.cjs');
|
|
@@ -27,7 +28,7 @@ const totalConverter = {
|
|
|
27
28
|
fromView: (value) => parseInt(value, 10),
|
|
28
29
|
toView: (value) => value.toString()
|
|
29
30
|
};
|
|
30
|
-
class Pagination extends vividElement.VividElement {
|
|
31
|
+
class Pagination extends localized.Localized(vividElement.VividElement) {
|
|
31
32
|
constructor() {
|
|
32
33
|
super();
|
|
33
34
|
this.navIcons = false;
|
|
@@ -169,21 +170,25 @@ const paginationButtonRenderer = (buttonTag) => vividElement.html` ${when.when(
|
|
|
169
170
|
(value) => value !== "...",
|
|
170
171
|
vividElement.html`
|
|
171
172
|
<${buttonTag} class="vwc-pagination-button"
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
173
|
+
label="${(value) => value}"
|
|
174
|
+
appearance="${getButtonAppearance}"
|
|
175
|
+
size="${(_, { parent: x }) => getPaginationSize(x)}"
|
|
176
|
+
shape="${(_, { parent: x }) => getPaginationShape(x)}"
|
|
177
|
+
style="inline-size: ${(value) => getPaginationButtonWidth(value)};"
|
|
178
|
+
tabindex="0"
|
|
179
|
+
aria-label="${(value, { parent: x }) => x.locale.pagination.goToPageLabel(value)}"
|
|
180
|
+
aria-current="${(value, { parent }) => parent.selectedIndex === Number(value) - 1}"
|
|
181
|
+
@click="${handleSelection}"
|
|
182
|
+
@keydown="${handleKeyDown}">
|
|
181
183
|
</${buttonTag}>
|
|
182
184
|
`
|
|
183
185
|
)}
|
|
184
186
|
${when.when(
|
|
185
187
|
(value) => value === "...",
|
|
186
|
-
vividElement.html` <div
|
|
188
|
+
vividElement.html` <div
|
|
189
|
+
class="dots size-${(_, { parent: x }) => getPaginationSize(x)}"
|
|
190
|
+
aria-hidden="true"
|
|
191
|
+
>
|
|
187
192
|
...
|
|
188
193
|
</div>`
|
|
189
194
|
)}`;
|
|
@@ -208,12 +213,13 @@ const PaginationTemplate = (context) => {
|
|
|
208
213
|
return vividElement.html`
|
|
209
214
|
<div class="${getClasses}">
|
|
210
215
|
<${buttonTag} class="prev-button" ${ref.ref("prevButton")}
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
216
|
+
label="${(x) => !x.navIcons ? "Previous" : null}"
|
|
217
|
+
icon="${(x) => x.navIcons ? "chevron-left-line" : null}"
|
|
218
|
+
size="${getPaginationSize}"
|
|
219
|
+
shape="${getPaginationShape}"
|
|
220
|
+
?disabled="${(x) => x.total === 0 || x.selectedIndex === 0}"
|
|
221
|
+
@click="${(x) => x.selectedIndex !== void 0 && x.selectedIndex--}"
|
|
222
|
+
aria-label="${(x) => x.locale.pagination.previousPageLabel}"
|
|
217
223
|
></${buttonTag}>
|
|
218
224
|
<div id="buttons-wrapper" class="buttons-wrapper" ${children.children({
|
|
219
225
|
property: "paginationButtons",
|
|
@@ -222,12 +228,13 @@ const PaginationTemplate = (context) => {
|
|
|
222
228
|
${repeat.repeat((x) => x.pagesList, paginationButtonTemplate, { positioning: true })}
|
|
223
229
|
</div>
|
|
224
230
|
<${buttonTag} class="next-button" ${ref.ref("nextButton")}
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
+
label="${(x) => !x.navIcons ? "Next" : null}"
|
|
232
|
+
icon="${(x) => x.navIcons ? "chevron-right-line" : null}"
|
|
233
|
+
size="${getPaginationSize}"
|
|
234
|
+
shape="${getPaginationShape}"
|
|
235
|
+
?disabled="${(x) => x.total === 0 || x.selectedIndex === x.total - 1}"
|
|
236
|
+
@click="${(x) => x.selectedIndex !== void 0 && x.selectedIndex++}"
|
|
237
|
+
aria-label="${(x) => x.locale.pagination.nextPageLabel}"
|
|
231
238
|
></${buttonTag}>
|
|
232
239
|
</div>`;
|
|
233
240
|
};
|