@vonage/vivid 4.27.0 → 4.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/custom-elements.json +357 -80
- package/lib/audio-player/audio-player.d.ts +4 -3
- package/lib/data-grid/data-grid.d.ts +2 -0
- package/lib/data-grid/locale.d.ts +1 -0
- package/lib/date-picker/date-picker.d.ts +4 -2
- package/lib/date-time-picker/date-time-picker.d.ts +6 -3
- package/lib/divider/definition.d.ts +1 -0
- package/lib/divider/divider.d.ts +5 -1
- package/lib/option/option.d.ts +4 -7
- package/lib/rich-text-editor/facades/prose-mirror-vivid.schema.d.ts +2 -1
- package/lib/rich-text-editor/facades/vivid-prose-mirror.facade.d.ts +2 -2
- package/lib/rich-text-editor/image-placeholder/definition.d.ts +2 -0
- package/lib/rich-text-editor/image-placeholder/image-placeholder.d.ts +7 -0
- package/lib/rich-text-editor/image-placeholder/image-placeholder.template.d.ts +4 -0
- package/lib/rich-text-editor/menubar/consts.d.ts +2 -2
- package/lib/rich-text-editor/menubar/definition.d.ts +2 -2
- package/lib/rich-text-editor/menubar/menubar.d.ts +2 -2
- package/lib/rich-text-editor/menubar/menubar.template.d.ts +2 -2
- package/lib/rich-text-editor/rich-text-editor.d.ts +1 -0
- package/lib/time-picker/time-picker.d.ts +4 -2
- package/locales/de-DE.cjs +2 -1
- package/locales/de-DE.js +2 -1
- package/locales/en-GB.cjs +2 -1
- package/locales/en-GB.js +2 -1
- package/locales/en-US.cjs +2 -1
- package/locales/en-US.js +2 -1
- package/locales/ja-JP.cjs +2 -1
- package/locales/ja-JP.js +2 -1
- package/locales/zh-CN.cjs +2 -1
- package/locales/zh-CN.js +2 -1
- package/package.json +2 -1
- package/shared/calendar-picker.template.cjs +8 -9
- package/shared/calendar-picker.template.js +8 -9
- package/shared/definition16.cjs +33 -30
- package/shared/definition16.js +33 -30
- package/shared/definition17.cjs +137 -1
- package/shared/definition17.js +138 -2
- package/shared/definition23.cjs +12 -7
- package/shared/definition23.js +12 -7
- package/shared/definition30.cjs +2 -1
- package/shared/definition30.js +2 -1
- package/shared/definition31.cjs +5 -1
- package/shared/definition31.js +5 -1
- package/shared/definition36.cjs +1 -1
- package/shared/definition36.js +1 -1
- package/shared/definition44.cjs +184 -55
- package/shared/definition44.js +184 -55
- package/shared/definition45.cjs +12 -5
- package/shared/definition45.js +12 -5
- package/shared/definition5.cjs +86 -30
- package/shared/definition5.js +86 -30
- package/shared/definition61.cjs +11 -0
- package/shared/definition61.js +11 -0
- package/shared/definition64.cjs +1 -1
- package/shared/definition64.js +1 -1
- package/shared/divider.cjs +7 -2
- package/shared/divider.js +7 -2
- package/shared/option.cjs +36 -38
- package/shared/option.js +37 -39
- package/shared/picker-field/mixins/inline-time-picker/inline-time-picker.d.ts +1 -0
- package/shared/picker-field/mixins/single-date-picker.d.ts +4 -2
- package/shared/picker-field/mixins/single-value-picker.d.ts +2 -1
- package/shared/picker-field/mixins/time-selection-picker.d.ts +4 -2
- package/shared/picker-field/mixins/time-selection-picker.template.d.ts +4 -2
- package/shared/single-value-picker.cjs +40 -6
- package/shared/single-value-picker.js +40 -6
- package/shared/text-field.cjs +1 -1
- package/shared/text-field.js +1 -1
- package/shared/time-selection-picker.template.cjs +71 -22
- package/shared/time-selection-picker.template.js +71 -22
- package/shared/vivid-element.cjs +1 -1
- package/shared/vivid-element.js +1 -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 +211 -126
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { Connotation } from '../enums';
|
|
2
|
-
import { MediaSkipBy } from '../enums';
|
|
3
1
|
import { VividElement } from '../../shared/foundation/vivid-element/vivid-element';
|
|
4
2
|
import type { ExtractFromEnum } from '../../shared/utils/enums';
|
|
3
|
+
import type { Connotation } from '../enums';
|
|
4
|
+
import { MediaSkipBy } from '../enums';
|
|
5
5
|
export type AudioPlayerConnotation = ExtractFromEnum<Connotation, Connotation.Accent | Connotation.CTA>;
|
|
6
6
|
export type AudioPlayerMediaSkipBy = ExtractFromEnum<MediaSkipBy, MediaSkipBy.Zero | MediaSkipBy.Five | MediaSkipBy.Ten | MediaSkipBy.Thirty>;
|
|
7
7
|
export declare const SKIP_DIRECTIONS: {
|
|
@@ -357,9 +357,9 @@ export declare class AudioPlayer extends AudioPlayer_base {
|
|
|
357
357
|
skipBackwardButtonAriaLabel: string | null;
|
|
358
358
|
connotation?: AudioPlayerConnotation;
|
|
359
359
|
src?: string;
|
|
360
|
+
srcChanged(): void;
|
|
360
361
|
get playbackRate(): number;
|
|
361
362
|
set playbackRate(value: number);
|
|
362
|
-
srcChanged(): void;
|
|
363
363
|
disabled: boolean;
|
|
364
364
|
notime: boolean;
|
|
365
365
|
skipBy?: AudioPlayerMediaSkipBy;
|
|
@@ -370,6 +370,7 @@ export declare class AudioPlayer extends AudioPlayer_base {
|
|
|
370
370
|
set duration(_: number);
|
|
371
371
|
get currentTime(): number;
|
|
372
372
|
set currentTime(value: number);
|
|
373
|
+
durationFallback: boolean;
|
|
373
374
|
constructor();
|
|
374
375
|
connectedCallback(): void;
|
|
375
376
|
disconnectedCallback(): void;
|
|
@@ -36,12 +36,14 @@ export declare class DataGrid extends VividElement {
|
|
|
36
36
|
headerCellItemTemplate?: ViewTemplate;
|
|
37
37
|
focusRowIndex: number;
|
|
38
38
|
focusColumnIndex: number;
|
|
39
|
+
fixedColumns?: number;
|
|
39
40
|
rowElementTag: string;
|
|
40
41
|
private rowsRepeatBehavior;
|
|
41
42
|
private rowsPlaceholder;
|
|
42
43
|
private generatedHeader;
|
|
43
44
|
private isUpdatingFocus;
|
|
44
45
|
private pendingFocusUpdate;
|
|
46
|
+
private resizeObserver?;
|
|
45
47
|
private observer;
|
|
46
48
|
private rowindexUpdateQueued;
|
|
47
49
|
private columnDefinitionsStale;
|
|
@@ -76,7 +76,7 @@ declare const DatePicker_base: (abstract new (...args: any[]) => {
|
|
|
76
76
|
_updatePresentationValue: (() => void) & (() => void);
|
|
77
77
|
readonly _textFieldPlaceholder: string;
|
|
78
78
|
_textFieldSize?: string | undefined;
|
|
79
|
-
_onTextFieldInput(event: Event): void;
|
|
79
|
+
_onTextFieldInput: ((event: Event) => void) & ((event: Event) => void);
|
|
80
80
|
_onTextFieldChange: (() => void) & (() => void);
|
|
81
81
|
readonly _pickerButtonLabel: string;
|
|
82
82
|
readonly _pickerButtonIcon: string;
|
|
@@ -811,16 +811,19 @@ declare const DatePicker_base: (abstract new (...args: any[]) => {
|
|
|
811
811
|
_isValidValue(value: string): boolean;
|
|
812
812
|
_toPresentationValue(value: string): string;
|
|
813
813
|
_parsePresentationValue(presentationValue: string): string;
|
|
814
|
+
_isInternalValueUpdate: boolean;
|
|
814
815
|
_updateValueDueToUserInteraction(newValue: string): void;
|
|
815
816
|
_isPresentationValueInvalid(): boolean;
|
|
816
817
|
}) & (abstract new (...args: any[]) => {
|
|
817
818
|
_isValidValue(value: string): boolean;
|
|
818
819
|
_toPresentationValue(value: string): string;
|
|
819
820
|
_parsePresentationValue(presentationValue: string): string;
|
|
821
|
+
_isInternalValueUpdate: boolean;
|
|
820
822
|
valueChanged(previous: string, next: string): void;
|
|
821
823
|
_updatePresentationValue(): void;
|
|
822
824
|
_updateValueDueToUserInteraction(newValue: string): void;
|
|
823
825
|
_onTextFieldChange(): void;
|
|
826
|
+
_onTextFieldInput(event: Event): void;
|
|
824
827
|
_isPresentationValueInvalid(): boolean;
|
|
825
828
|
_onClearClick(): void;
|
|
826
829
|
readOnly: boolean;
|
|
@@ -852,7 +855,6 @@ declare const DatePicker_base: (abstract new (...args: any[]) => {
|
|
|
852
855
|
_presentationValueChanged(): void;
|
|
853
856
|
readonly _textFieldPlaceholder: string;
|
|
854
857
|
_textFieldSize?: string | undefined;
|
|
855
|
-
_onTextFieldInput(event: Event): void;
|
|
856
858
|
readonly _pickerButtonLabel: string;
|
|
857
859
|
readonly _pickerButtonIcon: string;
|
|
858
860
|
_onPickerButtonClick(): void;
|
|
@@ -25,10 +25,12 @@ declare const DateTimePicker_base: (abstract new (...args: any[]) => {
|
|
|
25
25
|
_isValidValue(value: string): boolean;
|
|
26
26
|
_toPresentationValue(value: string): string;
|
|
27
27
|
_parsePresentationValue(presentationValue: string): string;
|
|
28
|
+
_isInternalValueUpdate: boolean;
|
|
28
29
|
valueChanged: ((previous: string, next: string) => void) & ((_previous: string, _next: string) => void) & ((_previous: string, _next: string) => void);
|
|
29
30
|
_updatePresentationValue: (() => void) & (() => void);
|
|
30
31
|
_updateValueDueToUserInteraction(newValue: string): void;
|
|
31
32
|
_onTextFieldChange: (() => void) & (() => void);
|
|
33
|
+
_onTextFieldInput: ((event: Event) => void) & ((event: Event) => void);
|
|
32
34
|
_isPresentationValueInvalid(): boolean;
|
|
33
35
|
_onClearClick: (() => void) & (() => void);
|
|
34
36
|
readOnly: boolean;
|
|
@@ -58,7 +60,6 @@ declare const DateTimePicker_base: (abstract new (...args: any[]) => {
|
|
|
58
60
|
_presentationValueChanged(): void;
|
|
59
61
|
readonly _textFieldPlaceholder: string;
|
|
60
62
|
_textFieldSize?: string | undefined;
|
|
61
|
-
_onTextFieldInput(event: Event): void;
|
|
62
63
|
readonly _pickerButtonLabel: string;
|
|
63
64
|
readonly _pickerButtonIcon: string;
|
|
64
65
|
_onOkClick(): void;
|
|
@@ -865,7 +866,7 @@ declare const DateTimePicker_base: (abstract new (...args: any[]) => {
|
|
|
865
866
|
_updatePresentationValue: (() => void) & (() => void);
|
|
866
867
|
readonly _textFieldPlaceholder: string;
|
|
867
868
|
_textFieldSize?: string | undefined;
|
|
868
|
-
_onTextFieldInput(event: Event): void;
|
|
869
|
+
_onTextFieldInput: ((event: Event) => void) & ((event: Event) => void);
|
|
869
870
|
_onTextFieldChange: (() => void) & (() => void);
|
|
870
871
|
readonly _pickerButtonLabel: string;
|
|
871
872
|
readonly _pickerButtonIcon: string;
|
|
@@ -1600,16 +1601,19 @@ declare const DateTimePicker_base: (abstract new (...args: any[]) => {
|
|
|
1600
1601
|
_isValidValue(value: string): boolean;
|
|
1601
1602
|
_toPresentationValue(value: string): string;
|
|
1602
1603
|
_parsePresentationValue(presentationValue: string): string;
|
|
1604
|
+
_isInternalValueUpdate: boolean;
|
|
1603
1605
|
_updateValueDueToUserInteraction(newValue: string): void;
|
|
1604
1606
|
_isPresentationValueInvalid(): boolean;
|
|
1605
1607
|
}) & (abstract new (...args: any[]) => {
|
|
1606
1608
|
_isValidValue(value: string): boolean;
|
|
1607
1609
|
_toPresentationValue(value: string): string;
|
|
1608
1610
|
_parsePresentationValue(presentationValue: string): string;
|
|
1611
|
+
_isInternalValueUpdate: boolean;
|
|
1609
1612
|
valueChanged(previous: string, next: string): void;
|
|
1610
1613
|
_updatePresentationValue(): void;
|
|
1611
1614
|
_updateValueDueToUserInteraction(newValue: string): void;
|
|
1612
1615
|
_onTextFieldChange(): void;
|
|
1616
|
+
_onTextFieldInput(event: Event): void;
|
|
1613
1617
|
_isPresentationValueInvalid(): boolean;
|
|
1614
1618
|
_onClearClick(): void;
|
|
1615
1619
|
readOnly: boolean;
|
|
@@ -1641,7 +1645,6 @@ declare const DateTimePicker_base: (abstract new (...args: any[]) => {
|
|
|
1641
1645
|
_presentationValueChanged(): void;
|
|
1642
1646
|
readonly _textFieldPlaceholder: string;
|
|
1643
1647
|
_textFieldSize?: string | undefined;
|
|
1644
|
-
_onTextFieldInput(event: Event): void;
|
|
1645
1648
|
readonly _pickerButtonLabel: string;
|
|
1646
1649
|
readonly _pickerButtonIcon: string;
|
|
1647
1650
|
_onPickerButtonClick(): void;
|
package/lib/divider/divider.d.ts
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { Orientation } from '@microsoft/fast-web-utilities';
|
|
2
|
+
import { Appearance } from '../enums.js';
|
|
2
3
|
import { VividElement } from '../../shared/foundation/vivid-element/vivid-element';
|
|
4
|
+
import type { ExtractFromEnum } from '../../shared/utils/enums';
|
|
5
|
+
export type DividerAppearance = ExtractFromEnum<Appearance, Appearance.Ghost | Appearance.Subtle>;
|
|
3
6
|
export declare const DividerRole: {
|
|
4
7
|
readonly separator: "separator";
|
|
5
8
|
readonly presentation: "presentation";
|
|
@@ -7,7 +10,7 @@ export declare const DividerRole: {
|
|
|
7
10
|
type DividerRole = typeof DividerRole[keyof typeof DividerRole];
|
|
8
11
|
declare const Divider_base: {
|
|
9
12
|
new (...args: any[]): {
|
|
10
|
-
_vividAriaBehaviour: "
|
|
13
|
+
_vividAriaBehaviour: "host";
|
|
11
14
|
connectedCallback(): void;
|
|
12
15
|
specialHandling: boolean;
|
|
13
16
|
readonly $fastController: import("@microsoft/fast-element").Controller;
|
|
@@ -345,5 +348,6 @@ declare const Divider_base: {
|
|
|
345
348
|
export declare class Divider extends Divider_base {
|
|
346
349
|
role: DividerRole;
|
|
347
350
|
orientation: Orientation;
|
|
351
|
+
appearance?: DividerAppearance;
|
|
348
352
|
}
|
|
349
353
|
export {};
|
package/lib/option/option.d.ts
CHANGED
|
@@ -683,21 +683,18 @@ export declare class ListboxOption extends ListboxOption_base {
|
|
|
683
683
|
protected defaultSelectedChanged(): void;
|
|
684
684
|
disabled: boolean;
|
|
685
685
|
protected disabledChanged(): void;
|
|
686
|
-
selectedAttribute: boolean;
|
|
687
|
-
|
|
686
|
+
get selectedAttribute(): boolean;
|
|
687
|
+
set selectedAttribute(value: boolean);
|
|
688
688
|
selected: boolean;
|
|
689
689
|
protected selectedChanged(): void;
|
|
690
|
-
|
|
691
|
-
protected
|
|
692
|
-
initialValueChanged(): void;
|
|
690
|
+
value: string;
|
|
691
|
+
protected valueChanged(): void;
|
|
693
692
|
_label?: string;
|
|
694
693
|
get label(): string;
|
|
695
694
|
set label(value: string);
|
|
696
695
|
_text?: string;
|
|
697
696
|
set text(value: string);
|
|
698
697
|
get text(): string;
|
|
699
|
-
set value(next: string);
|
|
700
|
-
get value(): string;
|
|
701
698
|
get form(): HTMLFormElement | null;
|
|
702
699
|
matchedText?: string;
|
|
703
700
|
get _hasMatchedText(): boolean;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { Schema } from 'prosemirror-model';
|
|
2
|
-
declare const
|
|
2
|
+
export declare const dynamicSchema: (prefix?: string) => Schema<"imageError", "s" | "u" | "tt" | "textSize">;
|
|
3
|
+
declare const extendedSchema: Schema<"imageError", "s" | "u" | "tt" | "textSize">;
|
|
3
4
|
export default extendedSchema;
|
|
@@ -4,7 +4,7 @@ export declare const placeholderPluginKey: PluginKey<any>;
|
|
|
4
4
|
export declare const createPlaceholderPlugin: (placeholder?: string) => Plugin<any>;
|
|
5
5
|
export declare class ProseMirrorFacade {
|
|
6
6
|
#private;
|
|
7
|
-
init(element: HTMLElement): void;
|
|
7
|
+
init(element: HTMLElement, vwcPrefix?: string): void;
|
|
8
8
|
updatePlaceholder(placeholderText?: string): void;
|
|
9
9
|
replaceContent(content: string): void;
|
|
10
10
|
selection(position?: RichTextEditorSelection): RichTextEditorSelection;
|
|
@@ -14,5 +14,5 @@ export declare class ProseMirrorFacade {
|
|
|
14
14
|
getSelectionStyles(): SelectionStyles;
|
|
15
15
|
setTextSize(size?: RICH_TEXT_EDITOR_MENUBAR_TEXT_SIZES): void;
|
|
16
16
|
getValue(): string;
|
|
17
|
-
addInlineImage({ file, position, alt, }: RichTextEditorInlineImageProps): Promise<void>;
|
|
17
|
+
addInlineImage({ file, position, alt, error, }: RichTextEditorInlineImageProps): Promise<void>;
|
|
18
18
|
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ViewTemplate } from '@microsoft/fast-element';
|
|
2
|
+
import type { VividElementDefinitionContext } from '../../../shared/design-system/defineVividComponent';
|
|
3
|
+
import { ImagePlaceholder } from './image-placeholder.js';
|
|
4
|
+
export declare const ImagePlaceholderTemplate: (context: VividElementDefinitionContext) => ViewTemplate<ImagePlaceholder>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { ViewTemplate } from '@microsoft/fast-element';
|
|
2
2
|
import type { VividElementDefinitionContext } from '../../../shared/design-system/defineVividComponent';
|
|
3
|
-
import type {
|
|
3
|
+
import type { Menubar } from './menubar.js';
|
|
4
4
|
export declare const TEXT_DECORATION_ITEMS: {
|
|
5
5
|
text: string;
|
|
6
6
|
icon: string;
|
|
@@ -12,7 +12,7 @@ export declare const TEXT_SIZES: {
|
|
|
12
12
|
}[];
|
|
13
13
|
export declare const MENU_BAR_ITEMS: {
|
|
14
14
|
[key: string]: {
|
|
15
|
-
registerStateProperty?: (
|
|
15
|
+
registerStateProperty?: (menubar: Menubar) => void;
|
|
16
16
|
render: (context: VividElementDefinitionContext) => ViewTemplate<any, any>;
|
|
17
17
|
};
|
|
18
18
|
};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const
|
|
2
|
-
export declare const
|
|
1
|
+
export declare const menubarDefinition: import("../../../shared/design-system/defineVividComponent").VividComponentDefinition;
|
|
2
|
+
export declare const registerMenubar: (prefix?: string) => void;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { VividElement } from '../../../shared/foundation/vivid-element/vivid-element';
|
|
2
|
-
declare const
|
|
2
|
+
declare const Menubar_base: {
|
|
3
3
|
new (...args: any[]): {
|
|
4
4
|
readonly locale: import("../../../shared/localization/Locale").Locale;
|
|
5
5
|
connectedCallback(): void;
|
|
@@ -337,7 +337,7 @@ declare const MenuBar_base: {
|
|
|
337
337
|
}): void;
|
|
338
338
|
};
|
|
339
339
|
} & typeof VividElement;
|
|
340
|
-
export declare class
|
|
340
|
+
export declare class Menubar extends Menubar_base {
|
|
341
341
|
#private;
|
|
342
342
|
menuItems?: string;
|
|
343
343
|
connectedCallback(): void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { ViewTemplate } from '@microsoft/fast-element';
|
|
2
2
|
import type { VividElementDefinitionContext } from '../../../shared/design-system/defineVividComponent';
|
|
3
|
-
import {
|
|
4
|
-
export declare const
|
|
3
|
+
import { Menubar } from './menubar.js';
|
|
4
|
+
export declare const MenubarTemplate: (context: VividElementDefinitionContext) => ViewTemplate<Menubar>;
|
|
@@ -27,10 +27,12 @@ declare const TimePicker_base: (abstract new (...args: any[]) => {
|
|
|
27
27
|
_isValidValue(value: string): boolean;
|
|
28
28
|
_toPresentationValue(value: string): string;
|
|
29
29
|
_parsePresentationValue(presentationValue: string): string;
|
|
30
|
+
_isInternalValueUpdate: boolean;
|
|
30
31
|
valueChanged: ((previous: string, next: string) => void) & ((_previous: string, _next: string) => void) & ((_previous: string, _next: string) => void);
|
|
31
32
|
_updatePresentationValue: (() => void) & (() => void);
|
|
32
33
|
_updateValueDueToUserInteraction(newValue: string): void;
|
|
33
34
|
_onTextFieldChange: (() => void) & (() => void);
|
|
35
|
+
_onTextFieldInput: ((event: Event) => void) & ((event: Event) => void);
|
|
34
36
|
_isPresentationValueInvalid(): boolean;
|
|
35
37
|
_onClearClick: (() => void) & (() => void);
|
|
36
38
|
readOnly: boolean;
|
|
@@ -60,7 +62,6 @@ declare const TimePicker_base: (abstract new (...args: any[]) => {
|
|
|
60
62
|
_presentationValueChanged(): void;
|
|
61
63
|
readonly _textFieldPlaceholder: string;
|
|
62
64
|
_textFieldSize?: string | undefined;
|
|
63
|
-
_onTextFieldInput(event: Event): void;
|
|
64
65
|
readonly _pickerButtonLabel: string;
|
|
65
66
|
readonly _pickerButtonIcon: string;
|
|
66
67
|
_onOkClick(): void;
|
|
@@ -794,10 +795,12 @@ declare const TimePicker_base: (abstract new (...args: any[]) => {
|
|
|
794
795
|
_isValidValue(value: string): boolean;
|
|
795
796
|
_toPresentationValue(value: string): string;
|
|
796
797
|
_parsePresentationValue(presentationValue: string): string;
|
|
798
|
+
_isInternalValueUpdate: boolean;
|
|
797
799
|
valueChanged(previous: string, next: string): void;
|
|
798
800
|
_updatePresentationValue(): void;
|
|
799
801
|
_updateValueDueToUserInteraction(newValue: string): void;
|
|
800
802
|
_onTextFieldChange(): void;
|
|
803
|
+
_onTextFieldInput(event: Event): void;
|
|
801
804
|
_isPresentationValueInvalid(): boolean;
|
|
802
805
|
_onClearClick(): void;
|
|
803
806
|
readOnly: boolean;
|
|
@@ -829,7 +832,6 @@ declare const TimePicker_base: (abstract new (...args: any[]) => {
|
|
|
829
832
|
_presentationValueChanged(): void;
|
|
830
833
|
readonly _textFieldPlaceholder: string;
|
|
831
834
|
_textFieldSize?: string | undefined;
|
|
832
|
-
_onTextFieldInput(event: Event): void;
|
|
833
835
|
readonly _pickerButtonLabel: string;
|
|
834
836
|
readonly _pickerButtonIcon: string;
|
|
835
837
|
_onPickerButtonClick(): void;
|
package/locales/de-DE.cjs
CHANGED
package/locales/de-DE.js
CHANGED
package/locales/en-GB.cjs
CHANGED
package/locales/en-GB.js
CHANGED
package/locales/en-US.cjs
CHANGED
package/locales/en-US.js
CHANGED
package/locales/ja-JP.cjs
CHANGED
package/locales/ja-JP.js
CHANGED
package/locales/zh-CN.cjs
CHANGED
package/locales/zh-CN.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vonage/vivid",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.29.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"module": "./index.js",
|
|
6
6
|
"main": "./index.cjs",
|
|
@@ -48,6 +48,7 @@
|
|
|
48
48
|
"stylelint": "stylelint 'src/**/*.{css,scss}'",
|
|
49
49
|
"stylelint:fix": "stylelint 'src/**/*.{css,scss}' --fix",
|
|
50
50
|
"test": "vitest run",
|
|
51
|
+
"test:watch": "vitest --watch",
|
|
51
52
|
"test:coverage": "vitest run --coverage",
|
|
52
53
|
"e2e": "playwright test",
|
|
53
54
|
"e2e:ui": "playwright test --ui",
|
|
@@ -8,7 +8,7 @@ const repeat = require('./repeat.cjs');
|
|
|
8
8
|
const when = require('./when.cjs');
|
|
9
9
|
const classNames = require('./class-names.cjs');
|
|
10
10
|
|
|
11
|
-
const calendarStyles = ".segments{display:inline-flex;gap:24px}.segment{display:flex;flex-direction:column;gap:12px}.segment .header{display:flex;align-items:center;padding-block:8px}.segment .title{display:flex;flex-grow:1;justify-content:center}.segment .title-action{border-radius:8px;block-size:24px;font:var(--vvd-typography-base-extended);padding-inline:8px}.calendar{display:flex;flex-direction:column;margin-top:8px;gap:4px}.calendar .calendar-separator{margin-inline:10px}.calendar .calendar-weekdays{display:flex;justify-content:center}.calendar .calendar-weekday{display:inline-flex;align-items:center;justify-content:center;block-size:16px;font:var(--vvd-typography-base-condensed);inline-size:40px}.calendar .calendar-week{display:flex;justify-content:center}.calendar .calendar-day{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;aspect-ratio:1/1;block-size:28px;font:var(--vvd-typography-base);margin-inline:6px}.calendar .calendar-day.start,.calendar .calendar-day.end{border:2px solid var(--vvd-color-cta-50);background-color:var(--vvd-color-cta-200)}.calendar:focus-visible .calendar .calendar-day.start,.calendar:focus-visible .calendar .calendar-day.end{border-width:3px}.calendar .calendar-day:before,.calendar .calendar-day:after{position:absolute;z-index:-1;display:block;width:20px;height:28px}.calendar .calendar-day:before{right:50%}.calendar .calendar-day:after{left:50%}.calendar .calendar-day.range:before,.calendar .calendar-day.range:after{background-color:var(--vvd-color-cta-50)}.calendar .calendar-day.range:not(.start):before,.calendar .calendar-day.range:not(.end):after{content:\"\"}.calendar .calendar-day.outside-month,.calendar .calendar-day:disabled{color:var(--vvd-color-neutral-400)}.months-separator{margin-inline:-12px}.month-grid{display:flex;flex-direction:column;gap:34px}.month-grid .months-row{display:flex;justify-content:center;gap:29px}.month-grid .month{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;aspect-ratio:1/1;block-size:48px;font:var(--vvd-typography-base-extended);text-transform:uppercase}.month-grid .month:disabled{color:var(--vvd-color-neutral-400)}.button{--_connotation-color-primary: var(--vvd-date-picker-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-firm: var(--vvd-date-picker-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-faint: var(--vvd-date-picker-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-soft: var(--vvd-date-picker-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-dim: var(--vvd-date-picker-accent-dim, var(--vvd-color-neutral-200));--_connotation-color-pale: var(--vvd-date-picker-accent-pale, var(--vvd-color-neutral-300))}.button{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.button:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.button:where(.active,:active):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.button:where(.selected):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.button:where(.selected):where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.button:where(.selected):where(.disabled,:disabled){--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-200);--_appearance-color-outline: transparent}.button{position:relative;padding:0;border:none;background-color:var(--_appearance-color-fill);color:var(--_appearance-color-text);cursor:pointer}.button:focus-visible{--focus-stroke-gap-color: transparent;color:var(--vvd-color-canvas-text);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))}.button:focus-visible.start,.button:focus-visible.end{border-width:3px}.button.current{border:1px solid var(--vvd-color-neutral-200)}.button
|
|
11
|
+
const calendarStyles = ".segments{display:inline-flex;gap:24px}.segment{display:flex;flex-direction:column;gap:12px}.segment .header{--focus-stroke-gap-color: transparent;display:flex;align-items:center;padding-block:8px}.segment .header: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))}.segment .title{display:flex;flex-grow:1;justify-content:center}.segment .title-action{border-radius:8px;block-size:24px;font:var(--vvd-typography-base-extended);padding-inline:8px}.calendar{display:flex;flex-direction:column;margin-top:8px;gap:4px}.calendar .calendar-separator{margin-inline:10px}.calendar .calendar-weekdays{display:flex;justify-content:center}.calendar .calendar-weekday{display:inline-flex;align-items:center;justify-content:center;block-size:16px;font:var(--vvd-typography-base-condensed);inline-size:40px}.calendar .calendar-week{display:flex;justify-content:center}.calendar .calendar-day{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;aspect-ratio:1/1;block-size:28px;font:var(--vvd-typography-base);margin-inline:6px}.calendar .calendar-day.start,.calendar .calendar-day.end{border:2px solid var(--vvd-color-cta-50);background-color:var(--vvd-color-cta-200)}.calendar:focus-visible .calendar .calendar-day.start,.calendar:focus-visible .calendar .calendar-day.end{border-width:3px}.calendar .calendar-day:before,.calendar .calendar-day:after{position:absolute;z-index:-1;display:block;width:20px;height:28px}.calendar .calendar-day:before{right:50%}.calendar .calendar-day:after{left:50%}.calendar .calendar-day.range:before,.calendar .calendar-day.range:after{background-color:var(--vvd-color-cta-50)}.calendar .calendar-day.range:not(.start):before,.calendar .calendar-day.range:not(.end):after{content:\"\"}.calendar .calendar-day.outside-month,.calendar .calendar-day:disabled{color:var(--vvd-color-neutral-400)}.months-separator{margin-inline:-12px}.month-grid{display:flex;flex-direction:column;gap:34px}.month-grid .months-row{display:flex;justify-content:center;gap:29px}.month-grid .month{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;aspect-ratio:1/1;block-size:48px;font:var(--vvd-typography-base-extended);text-transform:uppercase}.month-grid .month:disabled{color:var(--vvd-color-neutral-400)}.button{--_connotation-color-primary: var(--vvd-date-picker-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-firm: var(--vvd-date-picker-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-faint: var(--vvd-date-picker-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-soft: var(--vvd-date-picker-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-dim: var(--vvd-date-picker-accent-dim, var(--vvd-color-neutral-200));--_connotation-color-pale: var(--vvd-date-picker-accent-pale, var(--vvd-color-neutral-300))}.button{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.button:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.button:where(.active,:active):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.button:where(.selected):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.button:where(.selected):where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.button:where(.selected):where(.disabled,:disabled){--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-200);--_appearance-color-outline: transparent}.button{position:relative;padding:0;border:none;background-color:var(--_appearance-color-fill);color:var(--_appearance-color-text);cursor:pointer}.button:disabled{cursor:not-allowed}.button:focus:not(.title-action),.button.title-action:focus-visible{--focus-stroke-gap-color: transparent;color:var(--vvd-color-canvas-text);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))}.button:focus:not(.title-action).start,.button:focus:not(.title-action).end,.button.title-action:focus-visible.start,.button.title-action:focus-visible.end{border-width:3px}.button.current{border:1px solid var(--vvd-color-neutral-200)}.button.selected{border:1px solid var(--vvd-color-neutral-900)}";
|
|
12
12
|
|
|
13
13
|
/**
|
|
14
14
|
* @name toDate
|
|
@@ -5687,11 +5687,10 @@ const CalendarPicker = (Base) => {
|
|
|
5687
5687
|
super._onPickerButtonClick();
|
|
5688
5688
|
if (this._popupOpen) {
|
|
5689
5689
|
vividElement.DOM.processUpdates();
|
|
5690
|
-
const
|
|
5691
|
-
|
|
5692
|
-
|
|
5693
|
-
|
|
5694
|
-
).focus();
|
|
5690
|
+
const headerElement = this._dialogEl.querySelector(
|
|
5691
|
+
".header"
|
|
5692
|
+
);
|
|
5693
|
+
headerElement?.focus();
|
|
5695
5694
|
}
|
|
5696
5695
|
}
|
|
5697
5696
|
// --- Calendar header ---
|
|
@@ -6058,7 +6057,7 @@ const MinMaxCalendarPicker = (SuperClass) => {
|
|
|
6058
6057
|
|
|
6059
6058
|
function renderDialogHeader(context) {
|
|
6060
6059
|
const buttonTag = context.tagFor(definition.Button);
|
|
6061
|
-
return vividElement.html
|
|
6060
|
+
return vividElement.html`<div class="header" tabindex="-1">
|
|
6062
6061
|
${when.when(
|
|
6063
6062
|
(x) => x.prevYearButton,
|
|
6064
6063
|
vividElement.html`
|
|
@@ -6221,7 +6220,7 @@ function renderCalendarGrid(context) {
|
|
|
6221
6220
|
?disabled="${(x, c) => !c.parentContext.parentContext.parent._isDateInValidRange(
|
|
6222
6221
|
x.date
|
|
6223
6222
|
)}"
|
|
6224
|
-
tabindex="${(x, c) => x.date === c.parentContext.parentContext.parent._tabbableDate ?
|
|
6223
|
+
tabindex="${(x, c) => x.date === c.parentContext.parentContext.parent._tabbableDate ? 1 : -1}"
|
|
6225
6224
|
data-date="${(x) => x.date}"
|
|
6226
6225
|
@click="${(x, c) => c.parentContext.parentContext.parent._onDateClick(x.date)}"
|
|
6227
6226
|
@focus="${(x, c) => c.parentContext.parentContext.parent._onDateFocus(x.date)}"
|
|
@@ -6304,7 +6303,7 @@ function renderMonthPickerGrid(context) {
|
|
|
6304
6303
|
tabindex="${(x, c) => c.parentContext.parentContext.parent._tabbableMonth && areMonthsEqual(
|
|
6305
6304
|
x.month,
|
|
6306
6305
|
c.parentContext.parentContext.parent._tabbableMonth
|
|
6307
|
-
) ?
|
|
6306
|
+
) ? 1 : -1}"
|
|
6308
6307
|
aria-label="${(x) => x.monthName}"
|
|
6309
6308
|
data-month="${(x) => monthToStr(x.month)}"
|
|
6310
6309
|
?disabled="${(x, c) => !c.parentContext.parentContext.parent._isMonthInValidRange(
|
|
@@ -6,7 +6,7 @@ import { r as repeat } from './repeat.js';
|
|
|
6
6
|
import { w as when } from './when.js';
|
|
7
7
|
import { c as classNames } from './class-names.js';
|
|
8
8
|
|
|
9
|
-
const calendarStyles = ".segments{display:inline-flex;gap:24px}.segment{display:flex;flex-direction:column;gap:12px}.segment .header{display:flex;align-items:center;padding-block:8px}.segment .title{display:flex;flex-grow:1;justify-content:center}.segment .title-action{border-radius:8px;block-size:24px;font:var(--vvd-typography-base-extended);padding-inline:8px}.calendar{display:flex;flex-direction:column;margin-top:8px;gap:4px}.calendar .calendar-separator{margin-inline:10px}.calendar .calendar-weekdays{display:flex;justify-content:center}.calendar .calendar-weekday{display:inline-flex;align-items:center;justify-content:center;block-size:16px;font:var(--vvd-typography-base-condensed);inline-size:40px}.calendar .calendar-week{display:flex;justify-content:center}.calendar .calendar-day{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;aspect-ratio:1/1;block-size:28px;font:var(--vvd-typography-base);margin-inline:6px}.calendar .calendar-day.start,.calendar .calendar-day.end{border:2px solid var(--vvd-color-cta-50);background-color:var(--vvd-color-cta-200)}.calendar:focus-visible .calendar .calendar-day.start,.calendar:focus-visible .calendar .calendar-day.end{border-width:3px}.calendar .calendar-day:before,.calendar .calendar-day:after{position:absolute;z-index:-1;display:block;width:20px;height:28px}.calendar .calendar-day:before{right:50%}.calendar .calendar-day:after{left:50%}.calendar .calendar-day.range:before,.calendar .calendar-day.range:after{background-color:var(--vvd-color-cta-50)}.calendar .calendar-day.range:not(.start):before,.calendar .calendar-day.range:not(.end):after{content:\"\"}.calendar .calendar-day.outside-month,.calendar .calendar-day:disabled{color:var(--vvd-color-neutral-400)}.months-separator{margin-inline:-12px}.month-grid{display:flex;flex-direction:column;gap:34px}.month-grid .months-row{display:flex;justify-content:center;gap:29px}.month-grid .month{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;aspect-ratio:1/1;block-size:48px;font:var(--vvd-typography-base-extended);text-transform:uppercase}.month-grid .month:disabled{color:var(--vvd-color-neutral-400)}.button{--_connotation-color-primary: var(--vvd-date-picker-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-firm: var(--vvd-date-picker-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-faint: var(--vvd-date-picker-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-soft: var(--vvd-date-picker-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-dim: var(--vvd-date-picker-accent-dim, var(--vvd-color-neutral-200));--_connotation-color-pale: var(--vvd-date-picker-accent-pale, var(--vvd-color-neutral-300))}.button{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.button:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.button:where(.active,:active):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.button:where(.selected):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.button:where(.selected):where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.button:where(.selected):where(.disabled,:disabled){--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-200);--_appearance-color-outline: transparent}.button{position:relative;padding:0;border:none;background-color:var(--_appearance-color-fill);color:var(--_appearance-color-text);cursor:pointer}.button:focus-visible{--focus-stroke-gap-color: transparent;color:var(--vvd-color-canvas-text);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))}.button:focus-visible.start,.button:focus-visible.end{border-width:3px}.button.current{border:1px solid var(--vvd-color-neutral-200)}.button
|
|
9
|
+
const calendarStyles = ".segments{display:inline-flex;gap:24px}.segment{display:flex;flex-direction:column;gap:12px}.segment .header{--focus-stroke-gap-color: transparent;display:flex;align-items:center;padding-block:8px}.segment .header: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))}.segment .title{display:flex;flex-grow:1;justify-content:center}.segment .title-action{border-radius:8px;block-size:24px;font:var(--vvd-typography-base-extended);padding-inline:8px}.calendar{display:flex;flex-direction:column;margin-top:8px;gap:4px}.calendar .calendar-separator{margin-inline:10px}.calendar .calendar-weekdays{display:flex;justify-content:center}.calendar .calendar-weekday{display:inline-flex;align-items:center;justify-content:center;block-size:16px;font:var(--vvd-typography-base-condensed);inline-size:40px}.calendar .calendar-week{display:flex;justify-content:center}.calendar .calendar-day{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;aspect-ratio:1/1;block-size:28px;font:var(--vvd-typography-base);margin-inline:6px}.calendar .calendar-day.start,.calendar .calendar-day.end{border:2px solid var(--vvd-color-cta-50);background-color:var(--vvd-color-cta-200)}.calendar:focus-visible .calendar .calendar-day.start,.calendar:focus-visible .calendar .calendar-day.end{border-width:3px}.calendar .calendar-day:before,.calendar .calendar-day:after{position:absolute;z-index:-1;display:block;width:20px;height:28px}.calendar .calendar-day:before{right:50%}.calendar .calendar-day:after{left:50%}.calendar .calendar-day.range:before,.calendar .calendar-day.range:after{background-color:var(--vvd-color-cta-50)}.calendar .calendar-day.range:not(.start):before,.calendar .calendar-day.range:not(.end):after{content:\"\"}.calendar .calendar-day.outside-month,.calendar .calendar-day:disabled{color:var(--vvd-color-neutral-400)}.months-separator{margin-inline:-12px}.month-grid{display:flex;flex-direction:column;gap:34px}.month-grid .months-row{display:flex;justify-content:center;gap:29px}.month-grid .month{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;aspect-ratio:1/1;block-size:48px;font:var(--vvd-typography-base-extended);text-transform:uppercase}.month-grid .month:disabled{color:var(--vvd-color-neutral-400)}.button{--_connotation-color-primary: var(--vvd-date-picker-accent-primary, var(--vvd-color-canvas-text));--_connotation-color-firm: var(--vvd-date-picker-accent-firm, var(--vvd-color-canvas-text));--_connotation-color-faint: var(--vvd-date-picker-accent-faint, var(--vvd-color-neutral-50));--_connotation-color-soft: var(--vvd-date-picker-accent-soft, var(--vvd-color-neutral-100));--_connotation-color-dim: var(--vvd-date-picker-accent-dim, var(--vvd-color-neutral-200));--_connotation-color-pale: var(--vvd-date-picker-accent-pale, var(--vvd-color-neutral-300))}.button{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.button:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.button:where(.active,:active):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.button:where(.selected):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-soft);--_appearance-color-outline: transparent}.button:where(.selected):where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-dim);--_appearance-color-outline: transparent}.button:where(.selected):where(.disabled,:disabled){--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-200);--_appearance-color-outline: transparent}.button{position:relative;padding:0;border:none;background-color:var(--_appearance-color-fill);color:var(--_appearance-color-text);cursor:pointer}.button:disabled{cursor:not-allowed}.button:focus:not(.title-action),.button.title-action:focus-visible{--focus-stroke-gap-color: transparent;color:var(--vvd-color-canvas-text);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))}.button:focus:not(.title-action).start,.button:focus:not(.title-action).end,.button.title-action:focus-visible.start,.button.title-action:focus-visible.end{border-width:3px}.button.current{border:1px solid var(--vvd-color-neutral-200)}.button.selected{border:1px solid var(--vvd-color-neutral-900)}";
|
|
10
10
|
|
|
11
11
|
/**
|
|
12
12
|
* @name toDate
|
|
@@ -5685,11 +5685,10 @@ const CalendarPicker = (Base) => {
|
|
|
5685
5685
|
super._onPickerButtonClick();
|
|
5686
5686
|
if (this._popupOpen) {
|
|
5687
5687
|
DOM.processUpdates();
|
|
5688
|
-
const
|
|
5689
|
-
|
|
5690
|
-
|
|
5691
|
-
|
|
5692
|
-
).focus();
|
|
5688
|
+
const headerElement = this._dialogEl.querySelector(
|
|
5689
|
+
".header"
|
|
5690
|
+
);
|
|
5691
|
+
headerElement?.focus();
|
|
5693
5692
|
}
|
|
5694
5693
|
}
|
|
5695
5694
|
// --- Calendar header ---
|
|
@@ -6056,7 +6055,7 @@ const MinMaxCalendarPicker = (SuperClass) => {
|
|
|
6056
6055
|
|
|
6057
6056
|
function renderDialogHeader(context) {
|
|
6058
6057
|
const buttonTag = context.tagFor(Button);
|
|
6059
|
-
return html
|
|
6058
|
+
return html`<div class="header" tabindex="-1">
|
|
6060
6059
|
${when(
|
|
6061
6060
|
(x) => x.prevYearButton,
|
|
6062
6061
|
html`
|
|
@@ -6219,7 +6218,7 @@ function renderCalendarGrid(context) {
|
|
|
6219
6218
|
?disabled="${(x, c) => !c.parentContext.parentContext.parent._isDateInValidRange(
|
|
6220
6219
|
x.date
|
|
6221
6220
|
)}"
|
|
6222
|
-
tabindex="${(x, c) => x.date === c.parentContext.parentContext.parent._tabbableDate ?
|
|
6221
|
+
tabindex="${(x, c) => x.date === c.parentContext.parentContext.parent._tabbableDate ? 1 : -1}"
|
|
6223
6222
|
data-date="${(x) => x.date}"
|
|
6224
6223
|
@click="${(x, c) => c.parentContext.parentContext.parent._onDateClick(x.date)}"
|
|
6225
6224
|
@focus="${(x, c) => c.parentContext.parentContext.parent._onDateFocus(x.date)}"
|
|
@@ -6302,7 +6301,7 @@ function renderMonthPickerGrid(context) {
|
|
|
6302
6301
|
tabindex="${(x, c) => c.parentContext.parentContext.parent._tabbableMonth && areMonthsEqual(
|
|
6303
6302
|
x.month,
|
|
6304
6303
|
c.parentContext.parentContext.parent._tabbableMonth
|
|
6305
|
-
) ?
|
|
6304
|
+
) ? 1 : -1}"
|
|
6306
6305
|
aria-label="${(x) => x.monthName}"
|
|
6307
6306
|
data-month="${(x) => monthToStr(x.month)}"
|
|
6308
6307
|
?disabled="${(x, c) => !c.parentContext.parentContext.parent._isMonthInValidRange(
|