@vonage/vivid 4.24.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 +23176 -14463
- package/elevation/index.cjs +1 -1
- package/elevation/index.js +1 -1
- package/index.cjs +112 -150
- package/index.js +37 -35
- package/lib/accordion-item/accordion-item.d.ts +7 -1
- package/lib/action-group/action-group.d.ts +7 -1
- package/lib/alert/alert.d.ts +22 -2
- package/lib/audio-player/audio-player.d.ts +7 -1
- package/lib/badge/badge.d.ts +10 -2
- package/lib/banner/banner.d.ts +28 -3
- package/lib/breadcrumb/breadcrumb.d.ts +7 -1
- package/lib/breadcrumb-item/breadcrumb-item.d.ts +64 -8
- package/lib/button/button.d.ts +733 -8
- package/lib/button/locale.d.ts +3 -0
- package/lib/calendar/calendar.d.ts +2 -0
- package/lib/calendar-event/calendar-event.d.ts +7 -1
- package/lib/card/card.d.ts +394 -2
- package/lib/card/card.template.d.ts +2 -1
- package/lib/checkbox/checkbox.d.ts +1830 -13
- package/lib/combobox/combobox.d.ts +1827 -20
- package/lib/data-grid/data-grid-cell.d.ts +342 -2
- package/lib/data-grid/data-grid-row.d.ts +1 -0
- package/lib/data-grid/data-grid.d.ts +1 -1
- package/lib/data-grid/locale.d.ts +5 -0
- package/lib/date-picker/date-picker.d.ts +1676 -207
- package/lib/date-range-picker/date-range-picker.d.ts +840 -107
- package/lib/date-time-picker/date-time-picker.d.ts +1678 -209
- package/lib/dial-pad/dial-pad.d.ts +9 -1
- package/lib/dialog/dialog.d.ts +15 -2
- package/lib/divider/divider.d.ts +7 -1
- package/lib/fab/fab.d.ts +7 -1
- package/lib/file-picker/file-picker.d.ts +1509 -31
- package/lib/header/header.d.ts +7 -1
- package/lib/icon/icon.d.ts +1 -0
- package/lib/icon/icon.template.d.ts +2 -1
- package/lib/menu/menu.d.ts +17 -8
- package/lib/menu/name.d.ts +1 -0
- package/lib/menu-item/menu-item.d.ts +16 -4
- package/lib/nav/nav.d.ts +7 -1
- package/lib/nav-disclosure/nav-disclosure.d.ts +15 -2
- package/lib/nav-item/nav-item.d.ts +406 -4
- package/lib/note/note.d.ts +7 -1
- package/lib/number-field/locale.d.ts +3 -2
- package/lib/number-field/number-field.d.ts +1859 -38
- package/lib/option/option.d.ts +14 -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 +7 -1
- package/lib/progress-ring/progress-ring.d.ts +7 -1
- package/lib/radio/radio.d.ts +1137 -4
- package/lib/radio-group/radio-group.d.ts +21 -3
- package/lib/range-slider/range-slider.d.ts +765 -18
- package/lib/rich-text-editor/definition.d.ts +2 -2
- package/lib/rich-text-editor/facades/vivid-prose-mirror.facade.d.ts +3 -1
- package/lib/rich-text-editor/locale.d.ts +1 -0
- package/lib/rich-text-editor/menubar/menubar.d.ts +7 -1
- package/lib/rich-text-editor/rich-text-editor.d.ts +352 -2
- package/lib/searchable-select/option-tag.d.ts +7 -1
- package/lib/searchable-select/searchable-select.d.ts +1859 -38
- package/lib/select/select.d.ts +1844 -29
- package/lib/selectable-box/selectable-box.d.ts +7 -1
- package/lib/slider/slider.d.ts +386 -4
- package/lib/split-button/split-button.d.ts +21 -3
- package/lib/switch/switch.d.ts +387 -4
- package/lib/tab/tab.d.ts +21 -4
- package/lib/tab-panel/tab-panel.d.ts +7 -1
- package/lib/tag/tag.d.ts +14 -2
- package/lib/tag-group/tag-group.d.ts +7 -1
- package/lib/text-area/text-area.d.ts +2174 -19
- package/lib/text-field/text-field.d.ts +2197 -33
- package/lib/time-picker/time-picker.d.ts +839 -106
- package/lib/toggletip/toggletip.d.ts +10 -4
- package/lib/tooltip/tooltip.d.ts +10 -4
- package/lib/tree-item/tree-item.d.ts +14 -2
- package/lib/tree-view/tree-view.d.ts +7 -1
- package/lib/video-player/video-player.d.ts +7 -1
- package/lib/visually-hidden/definition.d.ts +4 -0
- package/lib/visually-hidden/visually-hidden.d.ts +3 -0
- package/lib/visually-hidden/visually-hidden.template.d.ts +3 -0
- package/locales/de-DE.cjs +54 -4
- package/locales/de-DE.js +54 -4
- package/locales/en-GB.cjs +54 -4
- package/locales/en-GB.js +54 -4
- package/locales/en-US.cjs +54 -4
- package/locales/en-US.js +54 -4
- package/locales/ja-JP.cjs +54 -4
- package/locales/ja-JP.js +54 -4
- package/locales/zh-CN.cjs +54 -4
- package/locales/zh-CN.js +54 -4
- package/menu/index.cjs +1 -1
- package/menu/index.js +1 -1
- package/nav/index.cjs +1 -1
- package/nav/index.js +1 -1
- package/nav-disclosure/index.cjs +1 -1
- package/nav-disclosure/index.js +1 -1
- package/nav-item/index.cjs +1 -1
- package/nav-item/index.js +1 -1
- package/note/index.cjs +1 -1
- package/note/index.js +1 -1
- package/number-field/index.cjs +1 -1
- package/number-field/index.js +1 -1
- package/option/index.cjs +1 -1
- package/option/index.js +1 -1
- package/package.json +1 -1
- package/pagination/index.cjs +1 -1
- package/pagination/index.js +1 -1
- package/popup/index.cjs +1 -1
- package/popup/index.js +1 -1
- package/progress/index.cjs +1 -1
- package/progress/index.js +1 -1
- package/progress-ring/index.cjs +1 -1
- package/progress-ring/index.js +1 -1
- package/radio/index.cjs +1 -1
- package/radio/index.js +1 -1
- package/radio-group/index.cjs +1 -1
- package/radio-group/index.js +1 -1
- package/range-slider/index.cjs +1 -1
- package/range-slider/index.js +1 -1
- package/rich-text-editor/index.cjs +1 -1
- package/rich-text-editor/index.js +1 -1
- package/searchable-select/index.cjs +1 -1
- package/searchable-select/index.js +1 -1
- package/select/index.cjs +1 -1
- package/select/index.js +1 -1
- package/selectable-box/index.cjs +1 -1
- package/selectable-box/index.js +1 -1
- package/shared/affix.cjs +13 -7
- package/shared/affix.js +13 -8
- package/shared/aria/delegates-aria.d.ts +7 -1
- package/shared/aria/host-semantics.d.ts +7 -1
- package/shared/breadcrumb-item.cjs +2 -5
- package/shared/breadcrumb-item.js +2 -5
- package/shared/button.cjs +13 -11
- package/shared/button.js +13 -11
- package/shared/calendar-picker.template.cjs +3 -3
- package/shared/calendar-picker.template.js +1 -1
- package/shared/char-count.cjs +92 -0
- package/shared/char-count.js +90 -0
- package/shared/definition.cjs +19 -3
- package/shared/definition.js +20 -4
- package/shared/definition10.js +1 -1
- package/shared/definition11.cjs +27 -44
- package/shared/definition11.js +28 -45
- package/shared/definition12.js +1 -1
- package/shared/definition13.cjs +25 -0
- package/shared/definition13.js +26 -1
- package/shared/definition14.cjs +53 -22
- package/shared/definition14.js +54 -23
- package/shared/definition15.cjs +32 -37
- package/shared/definition15.js +31 -37
- package/shared/definition16.cjs +44 -64
- package/shared/definition16.js +43 -64
- package/shared/definition17.cjs +608 -524
- package/shared/definition17.js +604 -520
- package/shared/definition18.cjs +10 -14
- package/shared/definition18.js +9 -14
- package/shared/definition19.cjs +85 -100
- package/shared/definition19.js +75 -91
- package/shared/definition2.js +1 -1
- package/shared/definition20.cjs +15 -20
- package/shared/definition20.js +14 -20
- package/shared/definition21.cjs +24 -5
- package/shared/definition21.js +25 -6
- package/shared/definition22.cjs +12 -6
- package/shared/definition22.js +13 -7
- package/shared/definition23.cjs +5 -38
- package/shared/definition23.js +5 -37
- package/shared/definition24.cjs +2 -7
- package/shared/definition24.js +3 -8
- package/shared/definition25.js +1 -1
- package/shared/definition26.cjs +157 -171
- package/shared/definition26.js +156 -171
- package/shared/definition27.cjs +1 -1
- package/shared/definition27.js +2 -2
- package/shared/definition28.cjs +33 -18
- package/shared/definition28.js +34 -19
- package/shared/definition29.js +1 -1
- package/shared/definition3.cjs +1 -1
- package/shared/definition3.js +2 -2
- package/shared/definition30.cjs +96 -482
- package/shared/definition30.js +99 -482
- package/shared/definition31.cjs +334 -57
- package/shared/definition31.js +333 -56
- package/shared/definition32.cjs +104 -19
- package/shared/definition32.js +105 -20
- package/shared/definition33.cjs +67 -15
- package/shared/definition33.js +66 -14
- package/shared/definition34.cjs +15 -50
- package/shared/definition34.js +14 -49
- package/shared/definition35.cjs +28 -397
- package/shared/definition35.js +27 -397
- package/shared/definition36.cjs +415 -54
- package/shared/definition36.js +415 -55
- package/shared/definition37.cjs +57 -234
- package/shared/definition37.js +57 -233
- package/shared/definition38.cjs +228 -66
- package/shared/definition38.js +227 -65
- package/shared/definition39.cjs +52 -44
- package/shared/definition39.js +51 -43
- package/shared/definition4.cjs +31 -24
- package/shared/definition4.js +33 -26
- package/shared/definition40.cjs +56 -266
- package/shared/definition40.js +55 -265
- package/shared/definition41.cjs +285 -142
- package/shared/definition41.js +285 -142
- package/shared/definition42.cjs +156 -564
- package/shared/definition42.js +156 -565
- package/shared/definition43.cjs +554 -14378
- package/shared/definition43.js +553 -14377
- package/shared/definition44.cjs +14418 -1155
- package/shared/definition44.js +14417 -1156
- package/shared/definition45.cjs +1049 -677
- package/shared/definition45.js +1050 -678
- package/shared/definition46.cjs +848 -113
- package/shared/definition46.js +847 -112
- package/shared/definition47.cjs +125 -90
- package/shared/definition47.js +124 -89
- package/shared/definition48.cjs +88 -455
- package/shared/definition48.js +87 -454
- package/shared/definition49.cjs +466 -109
- package/shared/definition49.js +466 -109
- package/shared/definition5.cjs +8 -7
- package/shared/definition5.js +6 -5
- package/shared/definition50.cjs +106 -106
- package/shared/definition50.js +105 -105
- package/shared/definition51.cjs +136 -15
- package/shared/definition51.js +135 -14
- package/shared/definition52.cjs +16 -115
- package/shared/definition52.js +15 -114
- package/shared/definition53.cjs +78 -412
- package/shared/definition53.js +77 -410
- package/shared/definition54.cjs +445 -23
- package/shared/definition54.js +443 -22
- package/shared/definition55.cjs +22 -136
- package/shared/definition55.js +21 -135
- package/shared/definition56.cjs +95 -291
- package/shared/definition56.js +95 -292
- package/shared/definition57.cjs +192 -480
- package/shared/definition57.js +190 -479
- package/shared/definition58.cjs +411 -24
- package/shared/definition58.js +410 -24
- package/shared/definition59.cjs +27 -144
- package/shared/definition59.js +27 -143
- package/shared/definition6.js +1 -1
- package/shared/definition60.cjs +83 -54
- package/shared/definition60.js +82 -53
- package/shared/definition61.cjs +78 -166
- package/shared/definition61.js +77 -164
- package/shared/definition62.cjs +143 -232
- package/shared/definition62.js +141 -231
- package/shared/definition63.cjs +234 -69417
- package/shared/definition63.js +233 -69416
- package/shared/definition64.cjs +69454 -28
- package/shared/definition64.js +69453 -27
- package/shared/definition65.cjs +28 -2168
- package/shared/definition65.js +27 -2166
- package/shared/definition66.cjs +27 -0
- package/shared/definition66.js +23 -0
- package/shared/definition67.cjs +2203 -0
- package/shared/definition67.js +2198 -0
- package/shared/definition7.cjs +11 -2
- package/shared/definition7.js +12 -3
- package/shared/definition8.cjs +24 -11
- package/shared/definition8.js +26 -13
- package/shared/definition9.cjs +1 -2
- package/shared/definition9.js +2 -3
- package/shared/delegates-aria.js +1 -1
- package/shared/deprecation/replaced-props.d.ts +20 -0
- package/shared/divider.cjs +41 -0
- package/shared/divider.js +38 -0
- package/shared/feedback/feedback-message.d.ts +345 -0
- package/shared/feedback/locale.d.ts +4 -0
- package/{lib/text-anchor/text-anchor.d.ts → shared/feedback/mixins.d.ts} +64 -41
- package/shared/form-associated.cjs +124 -100
- package/shared/form-associated.js +125 -101
- package/shared/form-element.cjs +84 -0
- package/shared/form-element.js +82 -0
- package/shared/foundation/button/button.d.ts +379 -3
- package/shared/foundation/form-associated/form-associated.d.ts +753 -49
- package/shared/foundation/listbox/listbox.d.ts +1 -1
- package/shared/foundation/vivid-element/vivid-element.d.ts +16 -0
- package/shared/host-semantics.js +1 -1
- package/shared/key-codes.js +1 -1
- package/shared/linkable.cjs +70 -0
- package/shared/linkable.js +68 -0
- package/shared/localization/Locale.d.ts +16 -0
- package/shared/mixins.cjs +309 -0
- package/shared/mixins.js +303 -0
- package/shared/patterns/affix.d.ts +18 -3
- package/shared/patterns/anchored.d.ts +20 -8
- package/shared/patterns/char-count/char-count.d.ts +351 -0
- package/shared/patterns/char-count/index.d.ts +1 -0
- package/shared/patterns/char-count/locale.d.ts +4 -0
- package/shared/patterns/form-elements/form-element.d.ts +744 -0
- package/shared/patterns/form-elements/index.d.ts +3 -1
- package/shared/patterns/form-elements/with-error-text.d.ts +1122 -0
- package/shared/patterns/form-elements/with-success-text.d.ts +341 -0
- package/shared/patterns/index.d.ts +2 -0
- package/shared/patterns/linkable.d.ts +394 -0
- package/shared/patterns/localized.d.ts +7 -1
- package/shared/patterns/trapped-focus.d.ts +7 -1
- package/shared/picker-field/mixins/calendar-picker.d.ts +420 -52
- package/shared/picker-field/mixins/calendar-picker.template.d.ts +420 -52
- package/shared/picker-field/mixins/inline-time-picker/inline-time-picker.d.ts +7 -1
- package/shared/picker-field/mixins/min-max-calendar-picker.d.ts +843 -107
- package/shared/picker-field/mixins/single-date-picker.d.ts +1259 -155
- package/shared/picker-field/mixins/single-value-picker.d.ts +417 -49
- package/shared/picker-field/mixins/time-selection-picker.d.ts +842 -106
- package/shared/picker-field/mixins/time-selection-picker.template.d.ts +839 -103
- package/shared/picker-field/picker-field.d.ts +1492 -16
- package/shared/picker-field.template.cjs +26 -35
- package/shared/picker-field.template.js +27 -36
- package/shared/repeat.js +1 -1
- package/shared/slider.template.cjs +1 -1
- package/shared/slider.template.js +1 -1
- package/shared/time-selection-picker.template.cjs +10 -15
- package/shared/time-selection-picker.template.js +10 -16
- package/shared/vivid-element.cjs +63 -4
- package/shared/vivid-element.js +63 -3
- package/shared/with-error-text.cjs +56 -0
- package/shared/with-error-text.js +54 -0
- package/shared/with-success-text.cjs +23 -0
- package/shared/with-success-text.js +21 -0
- package/side-drawer/index.cjs +1 -1
- package/side-drawer/index.js +1 -1
- package/slider/index.cjs +1 -1
- package/slider/index.js +1 -1
- package/split-button/index.cjs +1 -1
- package/split-button/index.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/switch/index.cjs +1 -1
- package/switch/index.js +1 -1
- package/tab/index.cjs +1 -1
- package/tab/index.js +1 -1
- package/tab-panel/index.cjs +1 -1
- package/tab-panel/index.js +1 -1
- package/tabs/index.cjs +1 -1
- package/tabs/index.js +1 -1
- package/tag/index.cjs +1 -1
- package/tag/index.js +1 -1
- package/tag-group/index.cjs +1 -1
- package/tag-group/index.js +1 -1
- package/text-area/index.cjs +1 -1
- package/text-area/index.js +1 -1
- package/text-field/index.cjs +1 -1
- package/text-field/index.js +1 -1
- package/time-picker/index.cjs +1 -1
- package/time-picker/index.js +1 -1
- package/toggletip/index.cjs +1 -1
- package/toggletip/index.js +1 -1
- package/tooltip/index.cjs +1 -1
- package/tooltip/index.js +1 -1
- package/tree-item/index.cjs +1 -1
- package/tree-item/index.js +1 -1
- package/tree-view/index.cjs +1 -1
- package/tree-view/index.js +1 -1
- package/video-player/index.cjs +1 -1
- package/video-player/index.js +1 -1
- package/visually-hidden/index.cjs +5 -0
- package/visually-hidden/index.js +3 -0
- package/vivid.api.json +845 -1503
- package/lib/checkbox/checkbox.form-associated.d.ts +0 -11
- package/lib/file-picker/file-picker.form-associated.d.ts +0 -11
- package/lib/number-field/number-field.form-associated.d.ts +0 -11
- package/lib/radio/radio.form-associated.d.ts +0 -13
- package/lib/range-slider/range-slider.form-associated.d.ts +0 -11
- package/lib/searchable-select/searchable-select.form-associated.d.ts +0 -11
- package/lib/select/select.form-associated.d.ts +0 -11
- package/lib/slider/slider.form-associated.d.ts +0 -11
- package/lib/switch/switch.form-associated.d.ts +0 -11
- package/lib/text-anchor/definition.d.ts +0 -2
- package/lib/text-anchor/text-anchor.template.d.ts +0 -3
- package/lib/text-area/text-area.form-associated.d.ts +0 -11
- package/lib/text-field/text-field.form-associated.d.ts +0 -11
- package/shared/anchor.cjs +0 -49
- package/shared/anchor.js +0 -47
- package/shared/apply-mixins.cjs +0 -23
- package/shared/apply-mixins.js +0 -21
- package/shared/applyMixinsWithObservables.cjs +0 -15
- package/shared/applyMixinsWithObservables.js +0 -13
- package/shared/direction.cjs +0 -17
- package/shared/direction.js +0 -15
- package/shared/form-elements.cjs +0 -209
- package/shared/form-elements.js +0 -202
- package/shared/foundation/anchor/anchor.d.ts +0 -11
- package/shared/foundation/utilities/apply-mixins.d.ts +0 -1
- package/shared/patterns/form-elements/form-elements.d.ts +0 -58
- package/shared/picker-field/picker-field.form-associated.d.ts +0 -11
- package/shared/text-anchor.cjs +0 -38
- package/shared/text-anchor.js +0 -36
- package/shared/text-anchor.template.cjs +0 -35
- package/shared/text-anchor.template.js +0 -33
- package/shared/utils/applyMixinsWithObservables.d.ts +0 -1
- package/text-anchor/index.cjs +0 -17
- package/text-anchor/index.js +0 -15
package/shared/definition16.cjs
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
const definition$2 = require('./definition28.cjs');
|
|
4
|
-
const definition = require('./
|
|
5
|
-
const definition$3 = require('./
|
|
4
|
+
const definition = require('./definition67.cjs');
|
|
5
|
+
const definition$3 = require('./definition37.cjs');
|
|
6
6
|
const textField = require('./text-field.cjs');
|
|
7
7
|
const vividElement = require('./vivid-element.cjs');
|
|
8
|
-
const
|
|
8
|
+
const mixins = require('./mixins.cjs');
|
|
9
9
|
const listbox = require('./listbox.cjs');
|
|
10
10
|
const formAssociated = require('./form-associated.cjs');
|
|
11
|
+
const withErrorText = require('./with-error-text.cjs');
|
|
12
|
+
const withSuccessText = require('./with-success-text.cjs');
|
|
13
|
+
const formElement = require('./form-element.cjs');
|
|
11
14
|
const affix = require('./affix.cjs');
|
|
12
15
|
const strings = require('./strings.cjs');
|
|
13
16
|
const numbers = require('./numbers.cjs');
|
|
14
|
-
const formElements = require('./form-elements.cjs');
|
|
15
17
|
const index = require('./index.cjs');
|
|
16
18
|
const definition$1 = require('./definition11.cjs');
|
|
17
19
|
const ref = require('./ref.cjs');
|
|
@@ -19,16 +21,7 @@ const slotted = require('./slotted.cjs');
|
|
|
19
21
|
const classNames = require('./class-names.cjs');
|
|
20
22
|
const when = require('./when.cjs');
|
|
21
23
|
|
|
22
|
-
const styles = ".chevron{display:flex;flex-shrink:0;font:var(--vvd-typography-base-extended);transform:rotate(0);transition:transform .2s}:host([
|
|
23
|
-
|
|
24
|
-
class _Combobox extends listbox.Listbox {
|
|
25
|
-
}
|
|
26
|
-
class FormAssociatedCombobox extends formAssociated.FormAssociated(_Combobox) {
|
|
27
|
-
constructor() {
|
|
28
|
-
super(...arguments);
|
|
29
|
-
this.proxy = document.createElement("input");
|
|
30
|
-
}
|
|
31
|
-
}
|
|
24
|
+
const styles = ".chevron{display:flex;flex-shrink:0;font:var(--vvd-typography-base-extended);transform:rotate(0);transition:transform .2s}:host([data-expanded=true]) .chevron,:host([open]) .chevron{transform:rotate(180deg)}:not(.disabled) .chevron{cursor:pointer}.disabled .chevron{color:var(--_low-ink-color);cursor:not-allowed}:host{position:relative;display:inline-flex;flex-direction:column;gap:4px;--_low-ink-color: var(--vvd-color-neutral-600)}:host([disabled]){--_low-ink-color: var(--vvd-color-neutral-400);cursor:not-allowed}.base{--_text-field-gutter-end: 8px}.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:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--vvd-color-neutral-700)}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)).appearance-ghost{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.base:where(.disabled,:disabled){--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: var(--vvd-color-neutral-300)}.base:where(.disabled,:disabled).appearance-ghost{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base:where(.readonly):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-neutral-200);--_appearance-color-outline: var(--vvd-color-neutral-400)}.base:where(.readonly):where(:not(.disabled,:disabled)).appearance-ghost{--_appearance-color-text: var(--vvd-color-neutral-600);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base:where(.error):where(:not(.disabled,:disabled)){--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-alert-50);--_appearance-color-outline: var(--vvd-color-alert-500)}.base:where(.error):where(:not(.disabled,:disabled)).appearance-ghost{--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-alert-50);--_appearance-color-outline: transparent}.base:where(.success):where(:not(.disabled,:disabled)){--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-success-50);--_appearance-color-outline: var(--vvd-color-success-500)}.base:where(.success):where(:not(.disabled,:disabled)).appearance-ghost{--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-success-50);--_appearance-color-outline: transparent}.base:not(.shape-pill) .base{border-radius:var(--_text-field-border-radius)}.base.shape-pill .base{border-radius:var(--_text-field-pill-border-radius)}.base slot[name=icon]{position:absolute;z-index:1;display:inline-block;color:var(--_low-ink-color);font-size:var(--_text-field-icon-size);inset-block-start:50%;inset-inline-start:var(--_text-field-gutter-start);line-height:1;pointer-events:none;transform:translateY(-50%)}.base.has-meta{padding-inline-end:16px}.control{text-overflow:ellipsis;white-space:nowrap}.fieldset .leading-items-wrapper{position:relative;display:flex;flex-shrink:0;align-items:center;gap:8px;padding-inline-end:16px}.listbox{display:flex;max-height:var(--combobox-height, 408px);flex-direction:column;padding:4px;border-radius:8px;contain:paint;gap:2px;overflow-y:auto}::part(popup-base){inline-size:max-content;min-inline-size:var(--_combobox-fixed-width, 100%)}@supports selector(:has(*)){.fieldset:has(.control:focus-within):after{--focus-stroke-gap-color: transparent;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))}}@supports not selector(:has(*)){.fieldset:focus-within:after{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;position:absolute;z-index:1;display:block;border-radius:inherit;content:\"\";inset:0;pointer-events:none}}";
|
|
32
25
|
|
|
33
26
|
const ComboboxAutocomplete = {
|
|
34
27
|
inline: "inline",
|
|
@@ -38,24 +31,21 @@ const ComboboxAutocomplete = {
|
|
|
38
31
|
};
|
|
39
32
|
|
|
40
33
|
var __defProp = Object.defineProperty;
|
|
41
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
42
34
|
var __decorateClass = (decorators, target, key, kind) => {
|
|
43
|
-
var result =
|
|
35
|
+
var result = void 0 ;
|
|
44
36
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
45
37
|
if (decorator = decorators[i])
|
|
46
|
-
result = (
|
|
47
|
-
if (
|
|
38
|
+
result = (decorator(target, key, result) ) || result;
|
|
39
|
+
if (result) __defProp(target, key, result);
|
|
48
40
|
return result;
|
|
49
41
|
};
|
|
50
|
-
|
|
42
|
+
class Combobox extends mixins.WithFeedback(
|
|
43
|
+
withErrorText.WithErrorText(
|
|
44
|
+
withSuccessText.WithSuccessText(formElement.FormElement(affix.AffixIcon(formAssociated.FormAssociated(listbox.Listbox))))
|
|
45
|
+
)
|
|
46
|
+
) {
|
|
51
47
|
constructor() {
|
|
52
48
|
super(...arguments);
|
|
53
|
-
/**
|
|
54
|
-
* The internal value property.
|
|
55
|
-
*
|
|
56
|
-
* @internal
|
|
57
|
-
*/
|
|
58
|
-
this._value = "";
|
|
59
49
|
/**
|
|
60
50
|
* The collection of currently filtered options.
|
|
61
51
|
*
|
|
@@ -77,6 +67,10 @@ exports.Combobox = class Combobox extends affix.AffixIcon(FormAssociatedCombobox
|
|
|
77
67
|
this.listboxId = strings.uniqueId("listbox-");
|
|
78
68
|
this.maxHeight = 0;
|
|
79
69
|
this.open = false;
|
|
70
|
+
/**
|
|
71
|
+
* @internal
|
|
72
|
+
*/
|
|
73
|
+
this.proxy = document.createElement("input");
|
|
80
74
|
}
|
|
81
75
|
/**
|
|
82
76
|
* Reset the element to its first selectable option when its parent form is reset.
|
|
@@ -141,16 +135,9 @@ exports.Combobox = class Combobox extends affix.AffixIcon(FormAssociatedCombobox
|
|
|
141
135
|
}
|
|
142
136
|
}
|
|
143
137
|
/**
|
|
144
|
-
*
|
|
145
|
-
*
|
|
146
|
-
* @public
|
|
138
|
+
* @internal
|
|
147
139
|
*/
|
|
148
|
-
|
|
149
|
-
vividElement.Observable.track(this, "value");
|
|
150
|
-
return this._value;
|
|
151
|
-
}
|
|
152
|
-
set value(next) {
|
|
153
|
-
const prev = `${this._value}`;
|
|
140
|
+
valueChanged(prev, next) {
|
|
154
141
|
if (this.$fastController.isConnected && this.options) {
|
|
155
142
|
const selectedIndex = this.options.findIndex(
|
|
156
143
|
(el) => el.text.toLowerCase() === next.toLowerCase()
|
|
@@ -158,13 +145,8 @@ exports.Combobox = class Combobox extends affix.AffixIcon(FormAssociatedCombobox
|
|
|
158
145
|
const prevSelectedValue = this.options[this.selectedIndex]?.text;
|
|
159
146
|
const nextSelectedValue = this.options[selectedIndex]?.text;
|
|
160
147
|
this.selectedIndex = prevSelectedValue !== nextSelectedValue ? selectedIndex : this.selectedIndex;
|
|
161
|
-
next = this.firstSelectedOption?.text || next;
|
|
162
|
-
}
|
|
163
|
-
if (prev !== next) {
|
|
164
|
-
this._value = next;
|
|
165
|
-
super.valueChanged(prev, next);
|
|
166
|
-
vividElement.Observable.notify(this, "value");
|
|
167
148
|
}
|
|
149
|
+
super.valueChanged(prev, next);
|
|
168
150
|
}
|
|
169
151
|
/**
|
|
170
152
|
* Handle opening and closing the listbox when the combobox is clicked.
|
|
@@ -178,7 +160,7 @@ exports.Combobox = class Combobox extends affix.AffixIcon(FormAssociatedCombobox
|
|
|
178
160
|
}
|
|
179
161
|
if (this.open) {
|
|
180
162
|
const capturedOption = e.target.closest(
|
|
181
|
-
`option,[role=option]`
|
|
163
|
+
`option,[role=option],[data-vvd-component=option]`
|
|
182
164
|
);
|
|
183
165
|
if (!capturedOption || capturedOption.disabled) {
|
|
184
166
|
return;
|
|
@@ -502,47 +484,38 @@ exports.Combobox = class Combobox extends affix.AffixIcon(FormAssociatedCombobox
|
|
|
502
484
|
const controlValueLength = this.control.value.length;
|
|
503
485
|
this.control.setSelectionRange(controlValueLength, controlValueLength);
|
|
504
486
|
}
|
|
505
|
-
}
|
|
487
|
+
}
|
|
506
488
|
__decorateClass([
|
|
507
489
|
vividElement.attr({ attribute: "autocomplete", mode: "fromView" })
|
|
508
|
-
],
|
|
490
|
+
], Combobox.prototype, "autocomplete");
|
|
509
491
|
__decorateClass([
|
|
510
492
|
vividElement.attr
|
|
511
|
-
],
|
|
493
|
+
], Combobox.prototype, "appearance");
|
|
512
494
|
__decorateClass([
|
|
513
495
|
vividElement.attr
|
|
514
|
-
],
|
|
496
|
+
], Combobox.prototype, "shape");
|
|
515
497
|
__decorateClass([
|
|
516
498
|
vividElement.attr()
|
|
517
|
-
],
|
|
499
|
+
], Combobox.prototype, "scale");
|
|
518
500
|
__decorateClass([
|
|
519
501
|
vividElement.attr
|
|
520
|
-
],
|
|
502
|
+
], Combobox.prototype, "placement");
|
|
521
503
|
__decorateClass([
|
|
522
504
|
vividElement.attr({ mode: "boolean", attribute: "fixed-dropdown" })
|
|
523
|
-
],
|
|
505
|
+
], Combobox.prototype, "fixedDropdown");
|
|
524
506
|
__decorateClass([
|
|
525
507
|
vividElement.observable
|
|
526
|
-
],
|
|
508
|
+
], Combobox.prototype, "metaSlottedContent");
|
|
527
509
|
__decorateClass([
|
|
528
510
|
vividElement.observable
|
|
529
|
-
],
|
|
511
|
+
], Combobox.prototype, "maxHeight");
|
|
530
512
|
__decorateClass([
|
|
531
513
|
vividElement.attr({ attribute: "open", mode: "boolean" })
|
|
532
|
-
],
|
|
514
|
+
], Combobox.prototype, "open");
|
|
533
515
|
// @ts-expect-error Type is incorrectly non-optional
|
|
534
516
|
__decorateClass([
|
|
535
517
|
vividElement.attr
|
|
536
|
-
],
|
|
537
|
-
exports.Combobox = __decorateClass([
|
|
538
|
-
formElements.errorText,
|
|
539
|
-
formElements.formElements
|
|
540
|
-
], exports.Combobox);
|
|
541
|
-
applyMixinsWithObservables.applyMixinsWithObservables(
|
|
542
|
-
exports.Combobox,
|
|
543
|
-
formElements.FormElementHelperText,
|
|
544
|
-
formElements.FormElementSuccessText
|
|
545
|
-
);
|
|
518
|
+
], Combobox.prototype, "placeholder");
|
|
546
519
|
|
|
547
520
|
const getStateClasses = ({
|
|
548
521
|
icon,
|
|
@@ -596,6 +569,7 @@ function renderInput(context) {
|
|
|
596
569
|
aria-controls="${(x) => x.listboxId}"
|
|
597
570
|
aria-expanded="${(x) => x.open}"
|
|
598
571
|
aria-haspopup="listbox"
|
|
572
|
+
aria-describedby="${(x) => x._feedbackDescribedBy}"
|
|
599
573
|
placeholder="${(x) => x.placeholder}"
|
|
600
574
|
role="combobox"
|
|
601
575
|
type="text"
|
|
@@ -651,7 +625,7 @@ const comboboxTemplate = (context) => {
|
|
|
651
625
|
</${popupTag}>
|
|
652
626
|
</div>
|
|
653
627
|
<div class="feedback-wrapper" @click="${(_, c) => c.event.stopPropagation()}">
|
|
654
|
-
${
|
|
628
|
+
${(x) => x._getFeedbackTemplate(context)}
|
|
655
629
|
</div>
|
|
656
630
|
</template>
|
|
657
631
|
`;
|
|
@@ -659,9 +633,14 @@ const comboboxTemplate = (context) => {
|
|
|
659
633
|
|
|
660
634
|
const comboboxDefinition = vividElement.defineVividComponent(
|
|
661
635
|
"combobox",
|
|
662
|
-
|
|
636
|
+
Combobox,
|
|
663
637
|
comboboxTemplate,
|
|
664
|
-
[
|
|
638
|
+
[
|
|
639
|
+
definition$2.iconDefinition,
|
|
640
|
+
definition.popupDefinition,
|
|
641
|
+
definition$3.listboxOptionDefinition,
|
|
642
|
+
mixins.feedbackMessageDefinition
|
|
643
|
+
],
|
|
665
644
|
{
|
|
666
645
|
styles: [textField.styles, styles],
|
|
667
646
|
shadowOptions: {
|
|
@@ -671,5 +650,6 @@ const comboboxDefinition = vividElement.defineVividComponent(
|
|
|
671
650
|
);
|
|
672
651
|
const registerCombobox = vividElement.createRegisterFunction(comboboxDefinition);
|
|
673
652
|
|
|
653
|
+
exports.Combobox = Combobox;
|
|
674
654
|
exports.comboboxDefinition = comboboxDefinition;
|
|
675
655
|
exports.registerCombobox = registerCombobox;
|
package/shared/definition16.js
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
import { i as iconDefinition } from './definition28.js';
|
|
2
|
-
import { P as Popup, p as popupDefinition } from './
|
|
3
|
-
import { l as listboxOptionDefinition } from './
|
|
2
|
+
import { P as Popup, p as popupDefinition } from './definition67.js';
|
|
3
|
+
import { l as listboxOptionDefinition } from './definition37.js';
|
|
4
4
|
import { s as styles$1 } from './text-field.js';
|
|
5
|
-
import { D as DOM, O as Observable, a as attr, o as observable, h as html,
|
|
6
|
-
import { a as
|
|
5
|
+
import { D as DOM, O as Observable, a as attr, o as observable, h as html, d as createRegisterFunction, f as defineVividComponent } from './vivid-element.js';
|
|
6
|
+
import { a as WithFeedback, f as feedbackMessageDefinition } from './mixins.js';
|
|
7
7
|
import { L as Listbox } from './listbox.js';
|
|
8
8
|
import { F as FormAssociated } from './form-associated.js';
|
|
9
|
+
import { W as WithErrorText } from './with-error-text.js';
|
|
10
|
+
import { W as WithSuccessText } from './with-success-text.js';
|
|
11
|
+
import { F as FormElement } from './form-element.js';
|
|
9
12
|
import { b as AffixIcon, a as affixIconTemplateFactory, I as IconWrapper } from './affix.js';
|
|
10
13
|
import { u as uniqueId } from './strings.js';
|
|
11
14
|
import { l as limit } from './numbers.js';
|
|
12
|
-
import { F as FormElementSuccessText, a as FormElementHelperText, e as errorText, f as formElements, g as getFeedbackTemplate } from './form-elements.js';
|
|
13
15
|
import { h as handleEscapeKeyAndStopPropogation } from './index.js';
|
|
14
16
|
import { c as chevronTemplateFactory } from './definition11.js';
|
|
15
17
|
import { r as ref } from './ref.js';
|
|
@@ -17,16 +19,7 @@ import { s as slotted } from './slotted.js';
|
|
|
17
19
|
import { c as classNames } from './class-names.js';
|
|
18
20
|
import { w as when } from './when.js';
|
|
19
21
|
|
|
20
|
-
const styles = ".chevron{display:flex;flex-shrink:0;font:var(--vvd-typography-base-extended);transform:rotate(0);transition:transform .2s}:host([
|
|
21
|
-
|
|
22
|
-
class _Combobox extends Listbox {
|
|
23
|
-
}
|
|
24
|
-
class FormAssociatedCombobox extends FormAssociated(_Combobox) {
|
|
25
|
-
constructor() {
|
|
26
|
-
super(...arguments);
|
|
27
|
-
this.proxy = document.createElement("input");
|
|
28
|
-
}
|
|
29
|
-
}
|
|
22
|
+
const styles = ".chevron{display:flex;flex-shrink:0;font:var(--vvd-typography-base-extended);transform:rotate(0);transition:transform .2s}:host([data-expanded=true]) .chevron,:host([open]) .chevron{transform:rotate(180deg)}:not(.disabled) .chevron{cursor:pointer}.disabled .chevron{color:var(--_low-ink-color);cursor:not-allowed}:host{position:relative;display:inline-flex;flex-direction:column;gap:4px;--_low-ink-color: var(--vvd-color-neutral-600)}:host([disabled]){--_low-ink-color: var(--vvd-color-neutral-400);cursor:not-allowed}.base{--_text-field-gutter-end: 8px}.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:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)){--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-canvas);--_appearance-color-outline: var(--vvd-color-neutral-700)}.base:where(.hover,:hover):where(:not(.disabled,:disabled,.readonly)).appearance-ghost{--_appearance-color-text: var(--_connotation-color-firm);--_appearance-color-fill: var(--_connotation-color-faint);--_appearance-color-outline: transparent}.base:where(.disabled,:disabled){--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: var(--vvd-color-neutral-100);--_appearance-color-outline: var(--vvd-color-neutral-300)}.base:where(.disabled,:disabled).appearance-ghost{--_appearance-color-text: var(--vvd-color-neutral-300);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base:where(.readonly):where(:not(.disabled,:disabled)){--_appearance-color-text: var(--vvd-color-canvas-text);--_appearance-color-fill: var(--vvd-color-neutral-200);--_appearance-color-outline: var(--vvd-color-neutral-400)}.base:where(.readonly):where(:not(.disabled,:disabled)).appearance-ghost{--_appearance-color-text: var(--vvd-color-neutral-600);--_appearance-color-fill: transparent;--_appearance-color-outline: transparent}.base:where(.error):where(:not(.disabled,:disabled)){--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-alert-50);--_appearance-color-outline: var(--vvd-color-alert-500)}.base:where(.error):where(:not(.disabled,:disabled)).appearance-ghost{--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-alert-50);--_appearance-color-outline: transparent}.base:where(.success):where(:not(.disabled,:disabled)){--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-success-50);--_appearance-color-outline: var(--vvd-color-success-500)}.base:where(.success):where(:not(.disabled,:disabled)).appearance-ghost{--_appearance-color-text: notSet;--_appearance-color-fill: var(--vvd-color-success-50);--_appearance-color-outline: transparent}.base:not(.shape-pill) .base{border-radius:var(--_text-field-border-radius)}.base.shape-pill .base{border-radius:var(--_text-field-pill-border-radius)}.base slot[name=icon]{position:absolute;z-index:1;display:inline-block;color:var(--_low-ink-color);font-size:var(--_text-field-icon-size);inset-block-start:50%;inset-inline-start:var(--_text-field-gutter-start);line-height:1;pointer-events:none;transform:translateY(-50%)}.base.has-meta{padding-inline-end:16px}.control{text-overflow:ellipsis;white-space:nowrap}.fieldset .leading-items-wrapper{position:relative;display:flex;flex-shrink:0;align-items:center;gap:8px;padding-inline-end:16px}.listbox{display:flex;max-height:var(--combobox-height, 408px);flex-direction:column;padding:4px;border-radius:8px;contain:paint;gap:2px;overflow-y:auto}::part(popup-base){inline-size:max-content;min-inline-size:var(--_combobox-fixed-width, 100%)}@supports selector(:has(*)){.fieldset:has(.control:focus-within):after{--focus-stroke-gap-color: transparent;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))}}@supports not selector(:has(*)){.fieldset:focus-within:after{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;position:absolute;z-index:1;display:block;border-radius:inherit;content:\"\";inset:0;pointer-events:none}}";
|
|
30
23
|
|
|
31
24
|
const ComboboxAutocomplete = {
|
|
32
25
|
inline: "inline",
|
|
@@ -36,24 +29,21 @@ const ComboboxAutocomplete = {
|
|
|
36
29
|
};
|
|
37
30
|
|
|
38
31
|
var __defProp = Object.defineProperty;
|
|
39
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
40
32
|
var __decorateClass = (decorators, target, key, kind) => {
|
|
41
|
-
var result =
|
|
33
|
+
var result = void 0 ;
|
|
42
34
|
for (var i = decorators.length - 1, decorator; i >= 0; i--)
|
|
43
35
|
if (decorator = decorators[i])
|
|
44
|
-
result = (
|
|
45
|
-
if (
|
|
36
|
+
result = (decorator(target, key, result) ) || result;
|
|
37
|
+
if (result) __defProp(target, key, result);
|
|
46
38
|
return result;
|
|
47
39
|
};
|
|
48
|
-
|
|
40
|
+
class Combobox extends WithFeedback(
|
|
41
|
+
WithErrorText(
|
|
42
|
+
WithSuccessText(FormElement(AffixIcon(FormAssociated(Listbox))))
|
|
43
|
+
)
|
|
44
|
+
) {
|
|
49
45
|
constructor() {
|
|
50
46
|
super(...arguments);
|
|
51
|
-
/**
|
|
52
|
-
* The internal value property.
|
|
53
|
-
*
|
|
54
|
-
* @internal
|
|
55
|
-
*/
|
|
56
|
-
this._value = "";
|
|
57
47
|
/**
|
|
58
48
|
* The collection of currently filtered options.
|
|
59
49
|
*
|
|
@@ -75,6 +65,10 @@ let Combobox = class extends AffixIcon(FormAssociatedCombobox) {
|
|
|
75
65
|
this.listboxId = uniqueId("listbox-");
|
|
76
66
|
this.maxHeight = 0;
|
|
77
67
|
this.open = false;
|
|
68
|
+
/**
|
|
69
|
+
* @internal
|
|
70
|
+
*/
|
|
71
|
+
this.proxy = document.createElement("input");
|
|
78
72
|
}
|
|
79
73
|
/**
|
|
80
74
|
* Reset the element to its first selectable option when its parent form is reset.
|
|
@@ -139,16 +133,9 @@ let Combobox = class extends AffixIcon(FormAssociatedCombobox) {
|
|
|
139
133
|
}
|
|
140
134
|
}
|
|
141
135
|
/**
|
|
142
|
-
*
|
|
143
|
-
*
|
|
144
|
-
* @public
|
|
136
|
+
* @internal
|
|
145
137
|
*/
|
|
146
|
-
|
|
147
|
-
Observable.track(this, "value");
|
|
148
|
-
return this._value;
|
|
149
|
-
}
|
|
150
|
-
set value(next) {
|
|
151
|
-
const prev = `${this._value}`;
|
|
138
|
+
valueChanged(prev, next) {
|
|
152
139
|
if (this.$fastController.isConnected && this.options) {
|
|
153
140
|
const selectedIndex = this.options.findIndex(
|
|
154
141
|
(el) => el.text.toLowerCase() === next.toLowerCase()
|
|
@@ -156,13 +143,8 @@ let Combobox = class extends AffixIcon(FormAssociatedCombobox) {
|
|
|
156
143
|
const prevSelectedValue = this.options[this.selectedIndex]?.text;
|
|
157
144
|
const nextSelectedValue = this.options[selectedIndex]?.text;
|
|
158
145
|
this.selectedIndex = prevSelectedValue !== nextSelectedValue ? selectedIndex : this.selectedIndex;
|
|
159
|
-
next = this.firstSelectedOption?.text || next;
|
|
160
|
-
}
|
|
161
|
-
if (prev !== next) {
|
|
162
|
-
this._value = next;
|
|
163
|
-
super.valueChanged(prev, next);
|
|
164
|
-
Observable.notify(this, "value");
|
|
165
146
|
}
|
|
147
|
+
super.valueChanged(prev, next);
|
|
166
148
|
}
|
|
167
149
|
/**
|
|
168
150
|
* Handle opening and closing the listbox when the combobox is clicked.
|
|
@@ -176,7 +158,7 @@ let Combobox = class extends AffixIcon(FormAssociatedCombobox) {
|
|
|
176
158
|
}
|
|
177
159
|
if (this.open) {
|
|
178
160
|
const capturedOption = e.target.closest(
|
|
179
|
-
`option,[role=option]`
|
|
161
|
+
`option,[role=option],[data-vvd-component=option]`
|
|
180
162
|
);
|
|
181
163
|
if (!capturedOption || capturedOption.disabled) {
|
|
182
164
|
return;
|
|
@@ -500,47 +482,38 @@ let Combobox = class extends AffixIcon(FormAssociatedCombobox) {
|
|
|
500
482
|
const controlValueLength = this.control.value.length;
|
|
501
483
|
this.control.setSelectionRange(controlValueLength, controlValueLength);
|
|
502
484
|
}
|
|
503
|
-
}
|
|
485
|
+
}
|
|
504
486
|
__decorateClass([
|
|
505
487
|
attr({ attribute: "autocomplete", mode: "fromView" })
|
|
506
|
-
], Combobox.prototype, "autocomplete"
|
|
488
|
+
], Combobox.prototype, "autocomplete");
|
|
507
489
|
__decorateClass([
|
|
508
490
|
attr
|
|
509
|
-
], Combobox.prototype, "appearance"
|
|
491
|
+
], Combobox.prototype, "appearance");
|
|
510
492
|
__decorateClass([
|
|
511
493
|
attr
|
|
512
|
-
], Combobox.prototype, "shape"
|
|
494
|
+
], Combobox.prototype, "shape");
|
|
513
495
|
__decorateClass([
|
|
514
496
|
attr()
|
|
515
|
-
], Combobox.prototype, "scale"
|
|
497
|
+
], Combobox.prototype, "scale");
|
|
516
498
|
__decorateClass([
|
|
517
499
|
attr
|
|
518
|
-
], Combobox.prototype, "placement"
|
|
500
|
+
], Combobox.prototype, "placement");
|
|
519
501
|
__decorateClass([
|
|
520
502
|
attr({ mode: "boolean", attribute: "fixed-dropdown" })
|
|
521
|
-
], Combobox.prototype, "fixedDropdown"
|
|
503
|
+
], Combobox.prototype, "fixedDropdown");
|
|
522
504
|
__decorateClass([
|
|
523
505
|
observable
|
|
524
|
-
], Combobox.prototype, "metaSlottedContent"
|
|
506
|
+
], Combobox.prototype, "metaSlottedContent");
|
|
525
507
|
__decorateClass([
|
|
526
508
|
observable
|
|
527
|
-
], Combobox.prototype, "maxHeight"
|
|
509
|
+
], Combobox.prototype, "maxHeight");
|
|
528
510
|
__decorateClass([
|
|
529
511
|
attr({ attribute: "open", mode: "boolean" })
|
|
530
|
-
], Combobox.prototype, "open"
|
|
512
|
+
], Combobox.prototype, "open");
|
|
531
513
|
// @ts-expect-error Type is incorrectly non-optional
|
|
532
514
|
__decorateClass([
|
|
533
515
|
attr
|
|
534
|
-
], Combobox.prototype, "placeholder"
|
|
535
|
-
Combobox = __decorateClass([
|
|
536
|
-
errorText,
|
|
537
|
-
formElements
|
|
538
|
-
], Combobox);
|
|
539
|
-
applyMixinsWithObservables(
|
|
540
|
-
Combobox,
|
|
541
|
-
FormElementHelperText,
|
|
542
|
-
FormElementSuccessText
|
|
543
|
-
);
|
|
516
|
+
], Combobox.prototype, "placeholder");
|
|
544
517
|
|
|
545
518
|
const getStateClasses = ({
|
|
546
519
|
icon,
|
|
@@ -594,6 +567,7 @@ function renderInput(context) {
|
|
|
594
567
|
aria-controls="${(x) => x.listboxId}"
|
|
595
568
|
aria-expanded="${(x) => x.open}"
|
|
596
569
|
aria-haspopup="listbox"
|
|
570
|
+
aria-describedby="${(x) => x._feedbackDescribedBy}"
|
|
597
571
|
placeholder="${(x) => x.placeholder}"
|
|
598
572
|
role="combobox"
|
|
599
573
|
type="text"
|
|
@@ -649,7 +623,7 @@ const comboboxTemplate = (context) => {
|
|
|
649
623
|
</${popupTag}>
|
|
650
624
|
</div>
|
|
651
625
|
<div class="feedback-wrapper" @click="${(_, c) => c.event.stopPropagation()}">
|
|
652
|
-
${
|
|
626
|
+
${(x) => x._getFeedbackTemplate(context)}
|
|
653
627
|
</div>
|
|
654
628
|
</template>
|
|
655
629
|
`;
|
|
@@ -659,7 +633,12 @@ const comboboxDefinition = defineVividComponent(
|
|
|
659
633
|
"combobox",
|
|
660
634
|
Combobox,
|
|
661
635
|
comboboxTemplate,
|
|
662
|
-
[
|
|
636
|
+
[
|
|
637
|
+
iconDefinition,
|
|
638
|
+
popupDefinition,
|
|
639
|
+
listboxOptionDefinition,
|
|
640
|
+
feedbackMessageDefinition
|
|
641
|
+
],
|
|
663
642
|
{
|
|
664
643
|
styles: [styles$1, styles],
|
|
665
644
|
shadowOptions: {
|