@sapudex/web-components 2.22.0 → 2.23.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.
Files changed (170) hide show
  1. package/cypress/specs/CountrySelector.cy.tsx +158 -144
  2. package/cypress/specs/EventRibbon.cy.tsx +3 -1
  3. package/cypress/specs/SelectBox.cy.tsx +173 -206
  4. package/cypress/specs/Tag.cy.tsx +1 -1
  5. package/cypress/specs/TextField.cy.tsx +15 -0
  6. package/cypress/specs/Textarea.cy.tsx +15 -33
  7. package/dist/CountrySelector.d.ts +25 -142
  8. package/dist/CountrySelector.js +91 -268
  9. package/dist/CountrySelector.js.map +1 -1
  10. package/dist/FilterMenu.d.ts +14 -2
  11. package/dist/FilterMenu.js +11 -1
  12. package/dist/FilterMenu.js.map +1 -1
  13. package/dist/List.js +2 -3
  14. package/dist/List.js.map +1 -1
  15. package/dist/ListGroupHeaderBase.d.ts +1 -0
  16. package/dist/ListGroupHeaderBase.js +3 -0
  17. package/dist/ListGroupHeaderBase.js.map +1 -1
  18. package/dist/ListItemBase.d.ts +12 -0
  19. package/dist/ListItemBase.js +17 -2
  20. package/dist/ListItemBase.js.map +1 -1
  21. package/dist/MediaPlayer.js +2 -0
  22. package/dist/MediaPlayer.js.map +1 -1
  23. package/dist/MediaPlayerTemplate.js +4 -4
  24. package/dist/MediaPlayerTemplate.js.map +1 -1
  25. package/dist/SearchableListBase.d.ts +23 -16
  26. package/dist/SearchableListBase.js +48 -72
  27. package/dist/SearchableListBase.js.map +1 -1
  28. package/dist/SelectBase.d.ts +193 -0
  29. package/dist/SelectBase.js +428 -0
  30. package/dist/SelectBase.js.map +1 -0
  31. package/dist/SelectBox.d.ts +30 -152
  32. package/dist/SelectBox.js +139 -348
  33. package/dist/SelectBox.js.map +1 -1
  34. package/dist/TagGroup.d.ts +23 -5
  35. package/dist/TagGroup.js +37 -16
  36. package/dist/TagGroup.js.map +1 -1
  37. package/dist/TagTemplate.js +4 -2
  38. package/dist/TagTemplate.js.map +1 -1
  39. package/dist/TextArea.d.ts +1 -1
  40. package/dist/TextArea.js +5 -5
  41. package/dist/TextArea.js.map +1 -1
  42. package/dist/TextAreaTemplate.d.ts +2 -0
  43. package/dist/TextAreaTemplate.js +13 -0
  44. package/dist/TextAreaTemplate.js.map +1 -0
  45. package/dist/TextField.d.ts +29 -4
  46. package/dist/TextField.js +32 -16
  47. package/dist/TextField.js.map +1 -1
  48. package/dist/TextFieldTemplate.d.ts +2 -0
  49. package/dist/TextFieldTemplate.js +14 -0
  50. package/dist/TextFieldTemplate.js.map +1 -0
  51. package/dist/assets/{InputSuggestions-By00xQan.js → InputSuggestions-C8m6N2-d.js} +1 -1
  52. package/dist/assets/{ListItemStandardExpandableTextTemplate-BGtoxRbA.js → ListItemStandardExpandableTextTemplate-BwD5bYhw.js} +1 -1
  53. package/dist/assets/{bundle.esm-9yDdQqR5.js → bundle.esm-hGsUwmUy.js} +218 -217
  54. package/dist/css/themes/CountrySelector.css +1 -1
  55. package/dist/css/themes/EventRibbon.css +1 -1
  56. package/dist/css/themes/ListItem.css +1 -1
  57. package/dist/css/themes/MastheadItem.css +1 -1
  58. package/dist/css/themes/MastheadMobileMenu.css +1 -1
  59. package/dist/css/themes/RatingIndicator.css +1 -1
  60. package/dist/css/themes/Search.css +1 -1
  61. package/dist/css/themes/SelectBase.css +1 -0
  62. package/dist/css/themes/SelectBox.css +1 -1
  63. package/dist/css/themes/Slider.css +1 -1
  64. package/dist/css/themes/TagGroup.css +1 -1
  65. package/dist/css/themes/TextField.css +1 -1
  66. package/dist/custom-elements-internal.json +1088 -1284
  67. package/dist/custom-elements.json +284 -934
  68. package/dist/generated/templates/CountrySelectorTemplate.lit.js +3 -3
  69. package/dist/generated/templates/CountrySelectorTemplate.lit.js.map +1 -1
  70. package/dist/generated/templates/ListItemTemplate.lit.js +1 -1
  71. package/dist/generated/templates/ListItemTemplate.lit.js.map +1 -1
  72. package/dist/generated/templates/SelectBoxTemplate.lit.js +10 -9
  73. package/dist/generated/templates/SelectBoxTemplate.lit.js.map +1 -1
  74. package/dist/generated/themes/CountrySelector.css.d.ts +1 -1
  75. package/dist/generated/themes/CountrySelector.css.js +1 -1
  76. package/dist/generated/themes/CountrySelector.css.js.map +1 -1
  77. package/dist/generated/themes/EventRibbon.css.d.ts +1 -1
  78. package/dist/generated/themes/EventRibbon.css.js +1 -1
  79. package/dist/generated/themes/EventRibbon.css.js.map +1 -1
  80. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  81. package/dist/generated/themes/ListItem.css.js +1 -1
  82. package/dist/generated/themes/ListItem.css.js.map +1 -1
  83. package/dist/generated/themes/MastheadItem.css.d.ts +1 -1
  84. package/dist/generated/themes/MastheadItem.css.js +1 -1
  85. package/dist/generated/themes/MastheadItem.css.js.map +1 -1
  86. package/dist/generated/themes/MastheadMobileMenu.css.d.ts +1 -1
  87. package/dist/generated/themes/MastheadMobileMenu.css.js +1 -1
  88. package/dist/generated/themes/MastheadMobileMenu.css.js.map +1 -1
  89. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  90. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  91. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  92. package/dist/generated/themes/Search.css.d.ts +1 -1
  93. package/dist/generated/themes/Search.css.js +1 -1
  94. package/dist/generated/themes/Search.css.js.map +1 -1
  95. package/dist/generated/themes/SelectBase.css.d.ts +2 -0
  96. package/dist/generated/themes/SelectBase.css.js +8 -0
  97. package/dist/generated/themes/SelectBase.css.js.map +1 -0
  98. package/dist/generated/themes/SelectBox.css.d.ts +1 -1
  99. package/dist/generated/themes/SelectBox.css.js +1 -1
  100. package/dist/generated/themes/SelectBox.css.js.map +1 -1
  101. package/dist/generated/themes/Slider.css.d.ts +1 -1
  102. package/dist/generated/themes/Slider.css.js +1 -1
  103. package/dist/generated/themes/Slider.css.js.map +1 -1
  104. package/dist/generated/themes/TagGroup.css.d.ts +1 -1
  105. package/dist/generated/themes/TagGroup.css.js +1 -1
  106. package/dist/generated/themes/TagGroup.css.js.map +1 -1
  107. package/dist/generated/themes/TextField.css.d.ts +1 -1
  108. package/dist/generated/themes/TextField.css.js +1 -1
  109. package/dist/generated/themes/TextField.css.js.map +1 -1
  110. package/dist/types/common.d.ts +1 -1
  111. package/dist/types/common.js +1 -1
  112. package/dist/types/common.js.map +1 -1
  113. package/dist/vscode.html-custom-data.json +23 -234
  114. package/dist/web-types.json +256 -811
  115. package/package.json +1 -1
  116. package/src/CountrySelector.hbs +6 -61
  117. package/src/CountrySelector.ts +93 -375
  118. package/src/FilterMenu.ts +13 -3
  119. package/src/List.ts +2 -3
  120. package/src/ListGroupHeaderBase.ts +4 -0
  121. package/src/ListItem.hbs +0 -1
  122. package/src/ListItemBase.ts +17 -3
  123. package/src/MediaPlayer.ts +2 -0
  124. package/src/MediaPlayerTemplate.tsx +0 -1
  125. package/src/SearchableListBase.ts +68 -83
  126. package/src/SelectBase.ts +580 -0
  127. package/src/SelectBox.hbs +118 -107
  128. package/src/SelectBox.ts +155 -445
  129. package/src/TagGroup.ts +53 -19
  130. package/src/TagTemplate.tsx +4 -2
  131. package/src/TextArea.ts +5 -5
  132. package/src/TextAreaTemplate.tsx +67 -0
  133. package/src/TextField.ts +57 -24
  134. package/src/TextFieldTemplate.tsx +90 -0
  135. package/src/generated/templates/CountrySelectorTemplate.lit.ts +2 -2
  136. package/src/generated/templates/ListItemTemplate.lit.ts +1 -1
  137. package/src/generated/templates/SelectBoxTemplate.lit.ts +10 -9
  138. package/src/generated/themes/CountrySelector.css.ts +1 -1
  139. package/src/generated/themes/EventRibbon.css.ts +1 -1
  140. package/src/generated/themes/ListItem.css.ts +1 -1
  141. package/src/generated/themes/MastheadItem.css.ts +1 -1
  142. package/src/generated/themes/MastheadMobileMenu.css.ts +1 -1
  143. package/src/generated/themes/RatingIndicator.css.ts +1 -1
  144. package/src/generated/themes/Search.css.ts +1 -1
  145. package/src/generated/themes/SelectBase.css.ts +9 -0
  146. package/src/generated/themes/SelectBox.css.ts +1 -1
  147. package/src/generated/themes/Slider.css.ts +1 -1
  148. package/src/generated/themes/TagGroup.css.ts +1 -1
  149. package/src/generated/themes/TextField.css.ts +1 -1
  150. package/src/themes/CountrySelector.css +42 -115
  151. package/src/themes/EventRibbon.css +21 -13
  152. package/src/themes/ListItem.css +6 -0
  153. package/src/themes/MastheadItem.css +0 -2
  154. package/src/themes/MastheadMobileMenu.css +2 -0
  155. package/src/themes/Search.css +0 -1
  156. package/src/themes/SelectBase.css +239 -0
  157. package/src/themes/SelectBox.css +13 -195
  158. package/src/themes/TagGroup.css +0 -1
  159. package/src/themes/TextField.css +7 -7
  160. package/src/types/common.ts +1 -1
  161. package/dist/generated/templates/TextAreaTemplate.lit.d.ts +0 -3
  162. package/dist/generated/templates/TextAreaTemplate.lit.js +0 -13
  163. package/dist/generated/templates/TextAreaTemplate.lit.js.map +0 -1
  164. package/dist/generated/templates/TextFieldTemplate.lit.d.ts +0 -3
  165. package/dist/generated/templates/TextFieldTemplate.lit.js +0 -14
  166. package/dist/generated/templates/TextFieldTemplate.lit.js.map +0 -1
  167. package/src/TextArea.hbs +0 -54
  168. package/src/TextField.hbs +0 -78
  169. package/src/generated/templates/TextAreaTemplate.lit.ts +0 -17
  170. package/src/generated/templates/TextFieldTemplate.lit.ts +0 -18
package/src/SelectBox.hbs CHANGED
@@ -1,81 +1,123 @@
1
- <div class="udex-select-box__root">
1
+ <div
2
+ class="{{_rootClass}}">
2
3
  <div class="udex-text-field__container">
3
- <div class="udex-text-field__wrap">
4
- <div
5
- role="combobox"
6
- @click="{{getHandleSingleSelectOpen}}"
7
- class="udex-text-field__input"
8
- @ui5-tag-icon-click="{{handleRemoveTag}}"
9
- @keydown="{{handleKeyDownTrigger}}"
10
- ?open="{{_open}}"
11
- tabindex="{{effectiveTabIndex}}"
12
- @focusin="{{handleFocusIn}}"
13
- @focusout="{{handleFocusOut}}"
14
- ?disabled="{{disabled}}"
15
- ?displayonly="{{displayonly}}"
16
- ?readonly="{{readonly}}"
17
- aria-label="{{accInfo.ariaLabel}}"
18
- aria-readonly="{{isReadOrDisplayOnly}}"
19
- aria-disabled="{{disabled}}"
20
- aria-haspopup="{{listboxRole}}"
21
- aria-controls="{{popoverId}}"
22
- aria-expanded="{{tokenizerExpanded}}"
23
- aria-activedescendant>
24
- {{#if label}}
25
- <span class="{{labelClass}}">
26
- {{label}}
27
- {{#if required}}
28
- *
29
- {{/if}}
30
- </span>
31
- <span class="hidden" id="{{this._id}}-single-label">{{accInfo.ariaLabel}}</span>
32
- </span>
33
- {{/if}}
34
- {{#if showSingleSelectedOption}}
35
- <div class="udex-text-field__text-holder">
36
- <span class="udex-text-field__single-label" aria-hidden="true">
37
- {{{_singleSelectedOption}}}
38
- </span>
39
- </div>
40
- {{/if}}
41
- {{#if showMultiSelectedOptions}}
42
- <udex-tag-group
43
- class="udex-tag-group"
44
- ?displayonly="{{displayonly}}"
45
- ?readonly="{{readonly}}"
46
- ?disabled="{{disabled}}"
47
- tooltip-placement="{{tooltipPlacement}}"
48
- @ui5-tag-click="{{handleTagClick}}"
49
- @ui5-show-more-tags="{{getHandlerShowMoreItems}}"
50
- @ui5-tag-keydown="{{handleKeyDownTag}}"
51
- ?expanded="{{tokenizerExpanded}}">
52
- {{#each selectedItems}}
53
- {{#unless this.isGroup}}
54
- <udex-tag
55
- text="{{this.label}}"
56
- id="{{this._id}}"
57
- icon="decline">
58
- </udex-tag>
59
- {{/unless}}
60
- {{/each}}
61
- </udex-tag-group>
62
- {{/if}}
63
- {{#if showTrigger}}
64
- <button
65
- role="combobox"
66
- aria-labelledby="{{this._id}}-single-label"
67
- aria-expanded="{{accessibilityAttributes.expanded}}"
68
- aria-controls="{{accessibilityAttributes.controls}}"
69
- aria-haspopup="{{accessibilityAttributes.hasPopup}}"
4
+ <div class="udex-text-field__wrap" ?displayonly="{{displayonly}}">
5
+ {{#if showMultiSelectedOptions}}
6
+ <udex-tag-group
7
+ class="udex-tag-group"
8
+ ?displayonly="{{displayonly}}"
9
+ ?readonly="{{readonly}}"
10
+ ?disabled="{{disabled}}"
11
+ @focusout="{{resetTagsTabIndexes}}"
12
+ tooltip-placement="{{tooltipPlacement}}"
13
+ @ui5-tag-icon-click="{{handleRemoveTag}}"
14
+ @ui5-tag-click="{{handleTagClick}}"
15
+ @ui5-show-more-tags="{{handlerShowMoreItems}}"
16
+ @ui5-tag-keydown="{{handleKeyDownTag}}"
17
+ ?tokenizer-expanded="{{tokenizerExpanded}}"
18
+ _skip-more-button-focus>
19
+ {{#each selectedItems}}
20
+ {{#unless this.isGroup}}
21
+ <udex-tag
22
+ text="{{this.label}}"
23
+ id="{{this._id}}"
24
+ icon="decline">
25
+ </udex-tag>
26
+ {{/unless}}
27
+ {{/each}}
28
+ </udex-tag-group>
29
+ {{/if}}
30
+ <div
31
+ class="udex-text-field__input"
32
+ @focusin="{{handleInputFocusIn}}"
33
+ @focusout="{{handleInputFocusOut}}"
34
+ ?readonly="{{readonly}}"
35
+ ?disabled="{{isDisabled}}"
36
+ ?open="{{_open}}">
37
+ {{#if label}}
38
+ <label for="search-input" class="{{labelClass}}">
39
+ {{label}}
40
+ {{#if required}}*{{/if}}
41
+ </label>
42
+ <span class="hidden" id="{{this._id}}-aria-describedby">{{ariaDescribedbyText}}</span>
43
+ {{/if}}
44
+ {{#if showImageFlags}}
45
+ {{countryFlag}}
46
+ {{/if}}
47
+ <div class="udex-text-field__holder">
48
+ <input
49
+ role="combobox"
50
+ type="text"
51
+ id="search-input"
52
+ name="search"
53
+ class="udex-text-field__search"
54
+ .value="{{_inputValue}}"
55
+ @input="{{handleSearchChange}}"
56
+ @click="{{handleInputClick}}"
57
+ @keydown="{{handleKeyDownSearch}}"
58
+ ?disabled="{{isDisabled}}"
59
+ ?readonly="{{isReadOrDisplayOnly}}"
60
+ aria-label="{{accInfo.ariaLabel}}"
61
+ aria-readonly="{{isReadOrDisplayOnly}}"
62
+ aria-disabled="{{disabled}}"
63
+ aria-haspopup="{{listboxRole}}"
64
+ aria-controls="{{popoverId}}"
65
+ aria-expanded="{{this._open}}"
66
+ aria-autocomplete="{{_ariaAutoComplete}}"
67
+ aria-describedby="{{this._id}}-aria-describedby"
68
+ autocomplete="off"
69
+ />
70
+ {{#if _selectedOption}}
71
+ <div class="udex-text-field__text-holder">
72
+ <span class="udex-text-field__single-label" aria-hidden="true">
73
+ {{{_selectedOption}}}
74
+ </span>
75
+ </div>
76
+ {{/if}}
77
+ </div>
78
+ {{#unless displayonly}}
79
+ <button
80
+ @click="{{handleButtonClick}}"
81
+ ?disabled="{{isDisabled}}"
82
+ aria-label="{{accInfo.ariaLabel}}"
70
83
  class="udex-text-field__trigger"
71
- tabindex="{{triggerTabIndex}}"
72
- @keydown="{{handleKeyDownTrigger}}"
73
- @click="{{getHandleMultiSelectOpen}}">
74
- <ui5-icon name="navigation-down-arrow"></ui5-icon>
75
- <span class="hidden">{{accessibilityAttributes.ariaLabel}}</span>
76
- </button>
77
- {{/if}}
78
- </div>
84
+ tabindex="-1">
85
+ <ui5-icon mode="Decorative" name="navigation-down-arrow"></ui5-icon>
86
+ </button>
87
+ {{/unless}}
88
+ <ui5-popover
89
+ id="{{popoverId}}"
90
+ ?allow-target-overlap="{{allowTargetOverlap}}"
91
+ @keydown="{{handleKeyDownDropdown}}"
92
+ @ui5-select-all="{{handleSelectAll}}"
93
+ @ui5-item-press="{{handleItemPress}}"
94
+ @ui5-header-press="{{handleHeaderPress}}"
95
+ @ui5-before-open="{{handleDropdownBeforeOpen}}"
96
+ @ui5-open="{{fireEventDropdownOpen}}"
97
+ @ui5-before-close="{{handleDropdownBeforeClose}}"
98
+ @ui5-close="{{handleDropdownClose}}"
99
+ class="udex-select-box__dropdown"
100
+ horizontal-align="Start"
101
+ placement="Bottom"
102
+ prevent-focus-restore
103
+ prevent-initial-focus
104
+ hide-arrow>
105
+ {{#if _showTagsDropdownContent}}
106
+ <div class="udex-truncatable-tag-content">
107
+ <span class="udex-truncatable-tag-content__label">{{truncatableTagLabel}}</span>
108
+ <ui5-icon
109
+ @click="{{handleRemoveTruncatableTag}}"
110
+ class="udex-truncatable-tag-content__icon"
111
+ mode="Decorative"
112
+ name="decline">
113
+ </ui5-icon>
114
+ </div>
115
+ {{else}}
116
+ {{searchableList}}
117
+ {{/if}}
118
+ </ui5-popover>
119
+ <span aria-live="polite" aria-atomic="true" class="hidden">{{_accSearchResultInfo}}</span>
120
+ </div>
79
121
  </div>
80
122
  {{#if supportingText}}
81
123
  <udex-status-message
@@ -85,35 +127,4 @@
85
127
  </udex-status-message>
86
128
  {{/if}}
87
129
  </div>
88
- <ui5-popover
89
- hide-arrow
90
- id="{{popoverId}}"
91
- class="udex-select-box__dropdown"
92
- ?allow-target-overlap="{{allowTargetOverlap}}"
93
- @keydown="{{handleKeyDownDropdown}}"
94
- @ui5-select-all="{{handleSelectAll}}"
95
- @ui5-item-press="{{handleItemPress}}"
96
- @ui5-header-press="{{handleHeaderPress}}"
97
- @ui5-submit-search-value="{{handleSubmitSearch}}"
98
- @ui5-handle-value-search="{{handleValueSearch}}"
99
- @ui5-handle-value-reset="{{handleResetSearch}}"
100
- @ui5-before-open="{{handleDropdownBeforeOpen}}"
101
- @ui5-after-close="{{handleDropdownAfterClose}}"
102
- @search-keydown="{{handleKeyDownSearch}}"
103
- horizontal-align="Start"
104
- placement="Bottom">
105
- {{#if _showTagsDropdownContent}}
106
- <div class="udex-truncatable-tag-content">
107
- <span class="udex-truncatable-tag-content__label">{{truncatableTagLabel}}</span>
108
- <ui5-icon
109
- @click="{{handleRemoveTruncatableTag}}"
110
- class="udex-truncatable-tag-content__icon"
111
- mode="Decorative"
112
- name="decline">
113
- </ui5-icon>
114
- </div>
115
- {{else}}
116
- {{searchableList}}
117
- {{/if}}
118
- </ui5-popover>
119
130
  </div>