@sapudex/web-components 2.22.0 → 2.24.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 (226) 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/Checkbox.js +4 -0
  8. package/dist/Checkbox.js.map +1 -1
  9. package/dist/CountrySelector.d.ts +25 -142
  10. package/dist/CountrySelector.js +91 -268
  11. package/dist/CountrySelector.js.map +1 -1
  12. package/dist/FilterMenu.d.ts +14 -2
  13. package/dist/FilterMenu.js +11 -1
  14. package/dist/FilterMenu.js.map +1 -1
  15. package/dist/Footer.js +2 -2
  16. package/dist/Footer.js.map +1 -1
  17. package/dist/FooterTemplate.js +1 -1
  18. package/dist/FooterTemplate.js.map +1 -1
  19. package/dist/List.js +2 -3
  20. package/dist/List.js.map +1 -1
  21. package/dist/ListGroupHeaderBase.d.ts +1 -0
  22. package/dist/ListGroupHeaderBase.js +3 -0
  23. package/dist/ListGroupHeaderBase.js.map +1 -1
  24. package/dist/ListItemBase.d.ts +12 -0
  25. package/dist/ListItemBase.js +17 -2
  26. package/dist/ListItemBase.js.map +1 -1
  27. package/dist/MediaPlayer.js +4 -0
  28. package/dist/MediaPlayer.js.map +1 -1
  29. package/dist/MediaPlayerTemplate.js +4 -4
  30. package/dist/MediaPlayerTemplate.js.map +1 -1
  31. package/dist/SearchableListBase.d.ts +23 -16
  32. package/dist/SearchableListBase.js +48 -72
  33. package/dist/SearchableListBase.js.map +1 -1
  34. package/dist/SelectBase.d.ts +193 -0
  35. package/dist/SelectBase.js +428 -0
  36. package/dist/SelectBase.js.map +1 -0
  37. package/dist/SelectBox.d.ts +30 -152
  38. package/dist/SelectBox.js +139 -348
  39. package/dist/SelectBox.js.map +1 -1
  40. package/dist/TagGroup.d.ts +23 -5
  41. package/dist/TagGroup.js +37 -16
  42. package/dist/TagGroup.js.map +1 -1
  43. package/dist/TagTemplate.js +4 -2
  44. package/dist/TagTemplate.js.map +1 -1
  45. package/dist/TextArea.d.ts +1 -1
  46. package/dist/TextArea.js +5 -5
  47. package/dist/TextArea.js.map +1 -1
  48. package/dist/TextAreaTemplate.d.ts +2 -0
  49. package/dist/TextAreaTemplate.js +13 -0
  50. package/dist/TextAreaTemplate.js.map +1 -0
  51. package/dist/TextField.d.ts +29 -4
  52. package/dist/TextField.js +32 -16
  53. package/dist/TextField.js.map +1 -1
  54. package/dist/TextFieldTemplate.d.ts +2 -0
  55. package/dist/TextFieldTemplate.js +14 -0
  56. package/dist/TextFieldTemplate.js.map +1 -0
  57. package/dist/assets/{InputSuggestions-By00xQan.js → InputSuggestions-63QG0i9j.js} +1 -1
  58. package/dist/assets/{ListItemStandardExpandableTextTemplate-BGtoxRbA.js → ListItemStandardExpandableTextTemplate-B1CpqSCb.js} +1 -1
  59. package/dist/assets/{bundle.esm-9yDdQqR5.js → bundle.esm-lUYJDofa.js} +218 -217
  60. package/dist/assets/fi-BGPAljj_.js +1 -0
  61. package/dist/assets/gl-DqaooM6m.js +1 -0
  62. package/dist/assets/{video.es-DIP_dh4I.js → video.es-BDeHzm02.js} +32 -32
  63. package/dist/css/themes/Checkbox.css +1 -1
  64. package/dist/css/themes/CountrySelector.css +1 -1
  65. package/dist/css/themes/EventRibbon.css +1 -1
  66. package/dist/css/themes/Footer.css +1 -1
  67. package/dist/css/themes/ImageGridTickerItem.css +1 -1
  68. package/dist/css/themes/InputGroup.css +1 -1
  69. package/dist/css/themes/Link.css +1 -1
  70. package/dist/css/themes/ListItem.css +1 -1
  71. package/dist/css/themes/MastheadItem.css +1 -1
  72. package/dist/css/themes/MastheadMobileMenu.css +1 -1
  73. package/dist/css/themes/RadioButton.css +1 -1
  74. package/dist/css/themes/RatingIndicator.css +1 -1
  75. package/dist/css/themes/Search.css +1 -1
  76. package/dist/css/themes/SelectBase.css +1 -0
  77. package/dist/css/themes/SelectBox.css +1 -1
  78. package/dist/css/themes/Slider.css +1 -1
  79. package/dist/css/themes/StatusMessage.css +1 -1
  80. package/dist/css/themes/TagGroup.css +1 -1
  81. package/dist/css/themes/TextField.css +1 -1
  82. package/dist/custom-elements-internal.json +1088 -1284
  83. package/dist/custom-elements.json +284 -934
  84. package/dist/generated/templates/CountrySelectorTemplate.lit.js +3 -3
  85. package/dist/generated/templates/CountrySelectorTemplate.lit.js.map +1 -1
  86. package/dist/generated/templates/ListItemTemplate.lit.js +1 -1
  87. package/dist/generated/templates/ListItemTemplate.lit.js.map +1 -1
  88. package/dist/generated/templates/SelectBoxTemplate.lit.js +10 -9
  89. package/dist/generated/templates/SelectBoxTemplate.lit.js.map +1 -1
  90. package/dist/generated/themes/Checkbox.css.d.ts +1 -1
  91. package/dist/generated/themes/Checkbox.css.js +1 -1
  92. package/dist/generated/themes/Checkbox.css.js.map +1 -1
  93. package/dist/generated/themes/CountrySelector.css.d.ts +1 -1
  94. package/dist/generated/themes/CountrySelector.css.js +1 -1
  95. package/dist/generated/themes/CountrySelector.css.js.map +1 -1
  96. package/dist/generated/themes/EventRibbon.css.d.ts +1 -1
  97. package/dist/generated/themes/EventRibbon.css.js +1 -1
  98. package/dist/generated/themes/EventRibbon.css.js.map +1 -1
  99. package/dist/generated/themes/Footer.css.d.ts +1 -1
  100. package/dist/generated/themes/Footer.css.js +1 -1
  101. package/dist/generated/themes/Footer.css.js.map +1 -1
  102. package/dist/generated/themes/ImageGridTickerItem.css.d.ts +1 -1
  103. package/dist/generated/themes/ImageGridTickerItem.css.js +1 -1
  104. package/dist/generated/themes/ImageGridTickerItem.css.js.map +1 -1
  105. package/dist/generated/themes/InputGroup.css.d.ts +1 -1
  106. package/dist/generated/themes/InputGroup.css.js +1 -1
  107. package/dist/generated/themes/InputGroup.css.js.map +1 -1
  108. package/dist/generated/themes/Link.css.d.ts +1 -1
  109. package/dist/generated/themes/Link.css.js +1 -1
  110. package/dist/generated/themes/Link.css.js.map +1 -1
  111. package/dist/generated/themes/ListItem.css.d.ts +1 -1
  112. package/dist/generated/themes/ListItem.css.js +1 -1
  113. package/dist/generated/themes/ListItem.css.js.map +1 -1
  114. package/dist/generated/themes/MastheadItem.css.d.ts +1 -1
  115. package/dist/generated/themes/MastheadItem.css.js +1 -1
  116. package/dist/generated/themes/MastheadItem.css.js.map +1 -1
  117. package/dist/generated/themes/MastheadMobileMenu.css.d.ts +1 -1
  118. package/dist/generated/themes/MastheadMobileMenu.css.js +1 -1
  119. package/dist/generated/themes/MastheadMobileMenu.css.js.map +1 -1
  120. package/dist/generated/themes/RadioButton.css.d.ts +1 -1
  121. package/dist/generated/themes/RadioButton.css.js +1 -1
  122. package/dist/generated/themes/RadioButton.css.js.map +1 -1
  123. package/dist/generated/themes/RatingIndicator.css.d.ts +1 -1
  124. package/dist/generated/themes/RatingIndicator.css.js +1 -1
  125. package/dist/generated/themes/RatingIndicator.css.js.map +1 -1
  126. package/dist/generated/themes/Search.css.d.ts +1 -1
  127. package/dist/generated/themes/Search.css.js +1 -1
  128. package/dist/generated/themes/Search.css.js.map +1 -1
  129. package/dist/generated/themes/SelectBase.css.d.ts +2 -0
  130. package/dist/generated/themes/SelectBase.css.js +8 -0
  131. package/dist/generated/themes/SelectBase.css.js.map +1 -0
  132. package/dist/generated/themes/SelectBox.css.d.ts +1 -1
  133. package/dist/generated/themes/SelectBox.css.js +1 -1
  134. package/dist/generated/themes/SelectBox.css.js.map +1 -1
  135. package/dist/generated/themes/Slider.css.d.ts +1 -1
  136. package/dist/generated/themes/Slider.css.js +1 -1
  137. package/dist/generated/themes/Slider.css.js.map +1 -1
  138. package/dist/generated/themes/StatusMessage.css.d.ts +1 -1
  139. package/dist/generated/themes/StatusMessage.css.js +1 -1
  140. package/dist/generated/themes/StatusMessage.css.js.map +1 -1
  141. package/dist/generated/themes/TagGroup.css.d.ts +1 -1
  142. package/dist/generated/themes/TagGroup.css.js +1 -1
  143. package/dist/generated/themes/TagGroup.css.js.map +1 -1
  144. package/dist/generated/themes/TextField.css.d.ts +1 -1
  145. package/dist/generated/themes/TextField.css.js +1 -1
  146. package/dist/generated/themes/TextField.css.js.map +1 -1
  147. package/dist/types/common.d.ts +1 -1
  148. package/dist/types/common.js +1 -1
  149. package/dist/types/common.js.map +1 -1
  150. package/dist/vscode.html-custom-data.json +23 -234
  151. package/dist/web-types.json +256 -811
  152. package/package.json +2 -2
  153. package/src/Checkbox.ts +4 -0
  154. package/src/CountrySelector.hbs +6 -61
  155. package/src/CountrySelector.ts +93 -375
  156. package/src/FilterMenu.ts +13 -3
  157. package/src/Footer.ts +2 -2
  158. package/src/FooterTemplate.tsx +5 -4
  159. package/src/List.ts +2 -3
  160. package/src/ListGroupHeaderBase.ts +4 -0
  161. package/src/ListItem.hbs +0 -1
  162. package/src/ListItemBase.ts +17 -3
  163. package/src/MediaPlayer.ts +4 -0
  164. package/src/MediaPlayerTemplate.tsx +0 -1
  165. package/src/SearchableListBase.ts +68 -83
  166. package/src/SelectBase.ts +580 -0
  167. package/src/SelectBox.hbs +118 -107
  168. package/src/SelectBox.ts +155 -445
  169. package/src/TagGroup.ts +53 -19
  170. package/src/TagTemplate.tsx +4 -2
  171. package/src/TextArea.ts +5 -5
  172. package/src/TextAreaTemplate.tsx +67 -0
  173. package/src/TextField.ts +57 -24
  174. package/src/TextFieldTemplate.tsx +90 -0
  175. package/src/generated/templates/CountrySelectorTemplate.lit.ts +2 -2
  176. package/src/generated/templates/ListItemTemplate.lit.ts +1 -1
  177. package/src/generated/templates/SelectBoxTemplate.lit.ts +10 -9
  178. package/src/generated/themes/Checkbox.css.ts +1 -1
  179. package/src/generated/themes/CountrySelector.css.ts +1 -1
  180. package/src/generated/themes/EventRibbon.css.ts +1 -1
  181. package/src/generated/themes/Footer.css.ts +1 -1
  182. package/src/generated/themes/ImageGridTickerItem.css.ts +1 -1
  183. package/src/generated/themes/InputGroup.css.ts +1 -1
  184. package/src/generated/themes/Link.css.ts +1 -1
  185. package/src/generated/themes/ListItem.css.ts +1 -1
  186. package/src/generated/themes/MastheadItem.css.ts +1 -1
  187. package/src/generated/themes/MastheadMobileMenu.css.ts +1 -1
  188. package/src/generated/themes/RadioButton.css.ts +1 -1
  189. package/src/generated/themes/RatingIndicator.css.ts +1 -1
  190. package/src/generated/themes/Search.css.ts +1 -1
  191. package/src/generated/themes/SelectBase.css.ts +9 -0
  192. package/src/generated/themes/SelectBox.css.ts +1 -1
  193. package/src/generated/themes/Slider.css.ts +1 -1
  194. package/src/generated/themes/StatusMessage.css.ts +1 -1
  195. package/src/generated/themes/TagGroup.css.ts +1 -1
  196. package/src/generated/themes/TextField.css.ts +1 -1
  197. package/src/themes/Checkbox.css +21 -15
  198. package/src/themes/CountrySelector.css +42 -115
  199. package/src/themes/EventRibbon.css +21 -13
  200. package/src/themes/Footer.css +3 -2
  201. package/src/themes/ImageGridTickerItem.css +1 -1
  202. package/src/themes/InputGroup.css +11 -6
  203. package/src/themes/Link.css +2 -0
  204. package/src/themes/ListItem.css +6 -0
  205. package/src/themes/MastheadItem.css +0 -2
  206. package/src/themes/MastheadMobileMenu.css +2 -0
  207. package/src/themes/RadioButton.css +29 -6
  208. package/src/themes/Search.css +0 -1
  209. package/src/themes/SelectBase.css +239 -0
  210. package/src/themes/SelectBox.css +13 -195
  211. package/src/themes/StatusMessage.css +1 -2
  212. package/src/themes/TagGroup.css +0 -1
  213. package/src/themes/TextField.css +7 -7
  214. package/src/types/common.ts +1 -1
  215. package/dist/assets/fi-hYXoEotT.js +0 -1
  216. package/dist/assets/gl-eZFVp-ap.js +0 -1
  217. package/dist/generated/templates/TextAreaTemplate.lit.d.ts +0 -3
  218. package/dist/generated/templates/TextAreaTemplate.lit.js +0 -13
  219. package/dist/generated/templates/TextAreaTemplate.lit.js.map +0 -1
  220. package/dist/generated/templates/TextFieldTemplate.lit.d.ts +0 -3
  221. package/dist/generated/templates/TextFieldTemplate.lit.js +0 -14
  222. package/dist/generated/templates/TextFieldTemplate.lit.js.map +0 -1
  223. package/src/TextArea.hbs +0 -54
  224. package/src/TextField.hbs +0 -78
  225. package/src/generated/templates/TextAreaTemplate.lit.ts +0 -17
  226. package/src/generated/templates/TextFieldTemplate.lit.ts +0 -18
@@ -1,6 +1,7 @@
1
1
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
2
2
  import type I18nBundle from "@ui5/webcomponents-base/dist/i18nBundle.js";
3
3
  import UDExValueState from "./types/common.js";
4
+ import type UDExControlButtonDesign from "./types/ControlButtonDesign.js";
4
5
  export type AccInfo = {
5
6
  ariaInvalid?: string;
6
7
  ariaDescribedBy?: string;
@@ -11,6 +12,12 @@ export type AccInfo = {
11
12
  type UDExTextFieldKeydownEventDetail = {
12
13
  keyboardEvent: KeyboardEvent;
13
14
  };
15
+ type UDExTextFieldChangeEventDetail = {
16
+ originalEvent: Event;
17
+ };
18
+ type UDExTextFieldBlurEventDetail = {
19
+ originalEvent: FocusEvent;
20
+ };
14
21
  /**
15
22
  * @class
16
23
  *
@@ -23,7 +30,8 @@ declare class UDExTextField extends UI5Element {
23
30
  eventDetails: {
24
31
  "keydown": UDExTextFieldKeydownEventDetail;
25
32
  "input": void;
26
- "change": void;
33
+ "change": UDExTextFieldChangeEventDetail;
34
+ "blur": UDExTextFieldBlurEventDetail;
27
35
  "click-icon": void;
28
36
  };
29
37
  _labelActiveClassName: string;
@@ -69,12 +77,28 @@ declare class UDExTextField extends UI5Element {
69
77
  * @public
70
78
  */
71
79
  accessibleName: string;
80
+ /**
81
+ * Defines the name of the input element.
82
+ *
83
+ * @default ""
84
+ * @public
85
+ */
86
+ name: string;
72
87
  /**
73
88
  * Receives id (or many ids) of the elements that label the component.
74
89
  * @default ""
75
90
  * @public
76
91
  */
77
92
  accessibleNameRef: string;
93
+ /**
94
+ * Defines the ref of the input element.
95
+ *
96
+ * @default undefined
97
+ * @public
98
+ */
99
+ fieldRef?: ((el: HTMLInputElement | null) => void) | {
100
+ current: HTMLInputElement | null;
101
+ };
78
102
  /**
79
103
  * Defines the accessible ARIA name of the component.
80
104
  *
@@ -234,11 +258,11 @@ declare class UDExTextField extends UI5Element {
234
258
  onBeforeRendering(): void;
235
259
  onAfterRendering(): void;
236
260
  handleKeydown(e: KeyboardEvent): void;
237
- handleChange: () => void;
261
+ handleChange: (e: Event) => void;
238
262
  handleInput: (inputEvent: InputEvent) => void;
239
263
  handleClick: () => void;
240
264
  handleFocus: () => void;
241
- handleBlur: () => void;
265
+ handleBlur: (e: FocusEvent) => void;
242
266
  handleIconClick(): void;
243
267
  get _inputHolder(): HTMLElement;
244
268
  get valueStateTypeMappings(): Record<string, string>;
@@ -255,6 +279,7 @@ declare class UDExTextField extends UI5Element {
255
279
  get readonlyNotDisabled(): boolean;
256
280
  get buttonAccessibleName(): string;
257
281
  get buttonAccessibleDescription(): string;
282
+ get controlButtonDesign(): UDExControlButtonDesign;
258
283
  }
259
284
  export default UDExTextField;
260
- export type { UDExTextFieldKeydownEventDetail };
285
+ export type { UDExTextFieldKeydownEventDetail, UDExTextFieldChangeEventDetail, UDExTextFieldBlurEventDetail };
package/dist/TextField.js CHANGED
@@ -8,7 +8,7 @@ var UDExTextField_1;
8
8
  import UI5Element from "@ui5/webcomponents-base/dist/UI5Element.js";
9
9
  import customElement from "@ui5/webcomponents-base/dist/decorators/customElement.js";
10
10
  import property from "@ui5/webcomponents-base/dist/decorators/property.js";
11
- import litRender from "@ui5/webcomponents-base/dist/renderer/LitRenderer.js";
11
+ import jsxRenderer from "@ui5/webcomponents-base/renderer/JsxRenderer.js";
12
12
  import event from "@ui5/webcomponents-base/dist/decorators/event-strict.js";
13
13
  import Icon from "@ui5/webcomponents/dist/Icon.js";
14
14
  import { isDesktop } from "@ui5/webcomponents-base/dist/Device.js";
@@ -16,10 +16,9 @@ import i18n from "@ui5/webcomponents-base/dist/decorators/i18n.js";
16
16
  import { getAllAccessibleNameRefTexts } from "@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js";
17
17
  import { VALUE_STATE_SUCCESS, VALUE_STATE_INFORMATION, VALUE_STATE_WARNING, VALUE_STATE_ERROR, READ_ONLY, } from "./generated/i18n/i18n-defaults.js";
18
18
  import UDExControlButton from "./ControlButton.js";
19
- import UDExValueState from "./types/common.js";
19
+ import UDExValueState, { valueStateToControlButtonDesign } from "./types/common.js";
20
20
  import UDExStatusMessage from "./StatusMessage.js";
21
- // Template
22
- import TextFieldTemplate from "./generated/templates/TextFieldTemplate.lit.js";
21
+ import TextFieldTemplate from "./TextFieldTemplate.js";
23
22
  // Styles
24
23
  import TextFieldCss from "./generated/themes/TextField.css.js";
25
24
  /**
@@ -101,8 +100,8 @@ let UDExTextField = UDExTextField_1 = class UDExTextField extends UI5Element {
101
100
  * @public
102
101
  */
103
102
  this.type = "Text";
104
- this.handleChange = () => {
105
- this.fireDecoratorEvent("change");
103
+ this.handleChange = (e) => {
104
+ this.fireDecoratorEvent("change", { originalEvent: e });
106
105
  };
107
106
  this.handleInput = (inputEvent) => {
108
107
  this.value = inputEvent.target?.value;
@@ -118,7 +117,8 @@ let UDExTextField = UDExTextField_1 = class UDExTextField extends UI5Element {
118
117
  this.active = true;
119
118
  }
120
119
  };
121
- this.handleBlur = () => {
120
+ this.handleBlur = (e) => {
121
+ this.fireDecoratorEvent("blur", { originalEvent: e });
122
122
  this.active = false;
123
123
  if (this.value) {
124
124
  this.labelActiveClass = this._labelActiveClassName;
@@ -213,6 +213,9 @@ let UDExTextField = UDExTextField_1 = class UDExTextField extends UI5Element {
213
213
  const label = this._isComboboxRole ? this.value : "";
214
214
  return `${label} ${this.supportingText || ""} ${this.valueStateText}`;
215
215
  }
216
+ get controlButtonDesign() {
217
+ return valueStateToControlButtonDesign[this.valueState];
218
+ }
216
219
  };
217
220
  __decorate([
218
221
  property({ type: Boolean })
@@ -229,9 +232,15 @@ __decorate([
229
232
  __decorate([
230
233
  property()
231
234
  ], UDExTextField.prototype, "accessibleName", void 0);
235
+ __decorate([
236
+ property()
237
+ ], UDExTextField.prototype, "name", void 0);
232
238
  __decorate([
233
239
  property()
234
240
  ], UDExTextField.prototype, "accessibleNameRef", void 0);
241
+ __decorate([
242
+ property()
243
+ ], UDExTextField.prototype, "fieldRef", void 0);
235
244
  __decorate([
236
245
  property()
237
246
  ], UDExTextField.prototype, "accessibleIconName", void 0);
@@ -307,25 +316,32 @@ __decorate([
307
316
  UDExTextField = UDExTextField_1 = __decorate([
308
317
  customElement({
309
318
  tag: "udex-text-field",
310
- renderer: litRender,
319
+ renderer: jsxRenderer,
311
320
  styles: TextFieldCss,
312
321
  template: TextFieldTemplate,
313
322
  dependencies: [UDExControlButton, Icon, UDExStatusMessage],
314
323
  })
315
324
  /**
316
- * Fired when the value of the component changes at each keystroke.
317
- *
318
- * @public
319
- */
325
+ * Fired when the value of the component changes at each keystroke.
326
+ *
327
+ * @public
328
+ */
320
329
  ,
321
330
  event("input", { bubbles: true })
322
331
  /**
323
- * Fired when the input operation has finished by pressing Enter or on focusout.
324
- *
325
- * @public
326
- */
332
+ * Fired when the input operation has finished by pressing Enter or on focusout.
333
+ *
334
+ * @public
335
+ */
327
336
  ,
328
337
  event("change", { bubbles: true })
338
+ /**
339
+ * Fired on input focusout.
340
+ *
341
+ * @public
342
+ */
343
+ ,
344
+ event("blur", { bubbles: true })
329
345
  /**
330
346
  * Fired event when the user clicks the icon.
331
347
  *
@@ -1 +1 @@
1
- {"version":3,"file":"TextField.js","sourceRoot":"","sources":["../src/TextField.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport litRender from \"@ui5/webcomponents-base/dist/renderer/LitRenderer.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getAllAccessibleNameRefTexts } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport {\n VALUE_STATE_SUCCESS,\n VALUE_STATE_INFORMATION,\n VALUE_STATE_WARNING,\n VALUE_STATE_ERROR,\n READ_ONLY,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport UDExControlButton from \"./ControlButton.js\";\nimport UDExValueState from \"./types/common.js\";\nimport UDExStatusMessage from \"./StatusMessage.js\";\n\n// Template\nimport TextFieldTemplate from \"./generated/templates/TextFieldTemplate.lit.js\";\n\n// Styles\nimport TextFieldCss from \"./generated/themes/TextField.css.js\";\n\nexport type AccInfo = {\n ariaInvalid?: string;\n ariaDescribedBy?: string;\n ariaLabelledBy?: string;\n ariaLabel?: string;\n ariaHasPopup?: string,\n}\n\ntype UDExTextFieldKeydownEventDetail = {\n keyboardEvent: KeyboardEvent;\n}\n\n/**\n * @class\n *\n * @constructor\n * @extends UI5Element\n * @tagname udex-text-field\n * @public\n */\n@customElement({\n tag: \"udex-text-field\",\n renderer: litRender,\n styles: TextFieldCss,\n template: TextFieldTemplate,\n dependencies: [UDExControlButton, Icon, UDExStatusMessage],\n})\n\n/**\n * Fired when the value of the component changes at each keystroke.\n *\n * @public\n */\n@event(\"input\", { bubbles: true })\n/**\n * Fired when the input operation has finished by pressing Enter or on focusout.\n *\n * @public\n */\n@event(\"change\", { bubbles: true })\n/**\n * Fired event when the user clicks the icon.\n *\n * @private\n */\n@event(\"click-icon\", { bubbles: true })\n\n/**\n * Fired event when the key is pressed in the input.\n *\n * @private\n * @param {KeyboardEvent} keyboardEvent The native keyboard event.\n */\n@event(\"keydown\", { bubbles: true })\nclass UDExTextField extends UI5Element {\n eventDetails!: {\n \"keydown\": UDExTextFieldKeydownEventDetail,\n \"input\": void,\n \"change\": void,\n \"click-icon\": void,\n };\n _labelActiveClassName = \"udex-text-field__label_active\";\n\n /**\n * Defines whether the component is in disabled state.\n * <br><br>\n * <b>Note:</b> A disabled component is completely noninteractive.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n disabled!: boolean;\n\n /**\n * Defines the value of the component.\n * <br><br>\n * <b>Note:</b> The property is updated upon typing.\n *\n * @default \"\"\n * @formEvents input\n * @formProperty\n * @public\n */\n @property({ type: String })\n value: string = \"\";\n\n /**\n * Sets the maximum number of characters available in the input field.\n * <br><br>\n * <b>Note:</b> This property is not compatible with the ui5-input type InputType.Number. If the ui5-input type is set to Number, the maxlength value is ignored.\n *\n * @public\n */\n @property({ type: Number })\n maxlength?: number;\n\n /**\n * Defines label text for the input field.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n label!: string;\n\n /**\n * Defines the accessible ARIA name of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n accessibleName!: string;\n\n /**\n * Receives id (or many ids) of the elements that label the component.\n * @default \"\"\n * @public\n */\n @property()\n accessibleNameRef: string = \"\";\n\n /**\n * Defines the accessible ARIA name of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n accessibleIconName: string = \"\";\n\n /**\n * Defines whether the component is read-only.\n * <br><br>\n * <b>Note:</b> A read-only component is not editable,\n * but still provides visual feedback upon user interaction.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n readonly!: boolean;\n\n /**\n * Defines whether the component is display-only.\n * <br><br>\n * <b>Note:</b> A display-only component is not editable,\n * but still provides visual feedback upon user interaction, input border is not visible.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n displayonly!: boolean;\n\n /**\n * Defines whether the component is required.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n required!: boolean;\n\n /**\n * Defines the value state of the component.\n *\n * @default \"Standard\"\n * @public\n */\n @property()\n valueState: `${UDExValueState}` = UDExValueState.Standard;\n\n /**\n * Defines supporting text under the input field.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n supportingText!: string;\n\n /**\n * Defines the icon name in the text-field.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n icon!: string;\n\n /**\n * Defines if the text-field is active\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n active!: boolean;\n\n /**\n * Defines if dropdown associated with text-field trigger has opened dropdown. It indicates active state of control button.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n iconActive!: boolean;\n\n /**\n * Defines the behaviour of autocomplete.\n * @default \"off\"\n * @public\n */\n @property({ type: String })\n autocomplete: string = \"off\";\n\n /**\n * Defines the inner stored show password button tooltip.\n *\n * @default \"\"\n * @private\n */\n\n @property({ type: String })\n showButtonTooltip: string = \"\";\n\n /**\n * Defines the inner stored class of the label.\n *\n * @default \"\"\n * @private\n */\n @property({ type: String, noAttribute: true })\n labelActiveClass: string = \"\";\n\n /**\n * Defines the inner stored value of the readonly attribute of the input.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean, noAttribute: true })\n isInputReadonly!: boolean;\n\n /**\n * Defines the inner stored value of the classes of the label.\n *\n * @default \"\"\n * @private\n */\n @property({ type: String, noAttribute: true })\n labelClasses: string = \"\";\n\n /**\n * Defines the type of inner input field.\n * Note: Only URL and Email types can be used within this property. For other types, user should use dedicated UDEx component.\n * There is no custom logic on UDEx component side. Property is used only to pass it directly to html input element.\n *\n * @default \"Text\"\n * @public\n */\n @property({ type: String })\n type: \"Text\" | \"Email\" | \"Number\" | \"Password\" | \"Tel\" | \"URL\" | \"Search\" = \"Text\";\n\n /**\n * Defines direction of the input.\n *\n * @public\n */\n @property({ type: String, noAttribute: true })\n direction?: string;\n\n /**\n * Defines the max value for the \"number\" type of the input.\n */\n @property({ type: Number })\n max?: number;\n\n /**\n * Defines the min value for the \"number\" type of the input.\n */\n @property({ type: Number })\n min?: number;\n\n /**\n * Defines the step for the \"number\" type of the input.\n * @default undefined\n */\n @property({ type: Number })\n step?: number;\n\n /**\n * Allows setting the aria-describedby property on the internal input node.\n *\n * @default \"\"\n * @public\n */\n @property()\n ariaDescribedBy?: string;\n\n /**\n * Defines the aria-has-popup attribute of the input.\n * @private\n */\n @property({ type: String })\n _ariaHasPopup?: string;\n\n /**\n * Defines is it the touch of the input field (only for mobile devices).\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _isTouched!: boolean;\n\n /**\n * Determines Combobox role for the button.\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _isComboboxRole?: boolean;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n onBeforeRendering(): void {\n if ((this.value || this.active) && this.labelActiveClass === \"\") {\n this.labelActiveClass = this._labelActiveClassName;\n } else if (!this.active && !this.value && this.labelActiveClass.length) {\n this.labelActiveClass = \"\";\n }\n\n this.isInputReadonly = this.readonly || this.displayonly;\n\n this.labelClasses = `udex-text-field__label ${this.labelActiveClass}`;\n }\n\n onAfterRendering(): void {\n const directionStyles: string = window\n .getComputedStyle(this)\n .getPropertyValue(\"direction\");\n\n if (!directionStyles) {\n this.direction = \"ltr\";\n } else {\n this.direction = directionStyles;\n }\n }\n\n handleKeydown(e: KeyboardEvent): void {\n e.stopPropagation();\n this.fireDecoratorEvent(\"keydown\", { keyboardEvent: e });\n }\n\n handleChange = (): void => {\n this.fireDecoratorEvent(\"change\");\n };\n\n handleInput = (inputEvent: InputEvent) => {\n this.value = (inputEvent.target as HTMLInputElement)?.value;\n };\n\n handleClick = (): void => {\n if (!isDesktop()) {\n this._isTouched = true;\n }\n };\n\n handleFocus = (): void => {\n if (!this.disabled && !this.readonly && !this.displayonly) {\n this.labelActiveClass = this._labelActiveClassName;\n this.active = true;\n }\n };\n\n handleBlur = (): void => {\n this.active = false;\n\n if (this.value) {\n this.labelActiveClass = this._labelActiveClassName;\n } else {\n this.labelActiveClass = \"\";\n }\n this._isTouched = false;\n };\n\n handleIconClick(): void {\n this.fireDecoratorEvent(\"click-icon\");\n }\n\n get _inputHolder(): HTMLElement {\n return this.shadowRoot!.querySelector<HTMLElement>(\".udex-text-field__wrap\")!;\n }\n\n get valueStateTypeMappings(): Record<string, string> {\n return {\n \"Success\": UDExTextField.i18nBundle.getText(VALUE_STATE_SUCCESS),\n \"Standard\": UDExTextField.i18nBundle.getText(VALUE_STATE_INFORMATION),\n \"Error\": UDExTextField.i18nBundle.getText(VALUE_STATE_ERROR),\n \"Warning\": UDExTextField.i18nBundle.getText(VALUE_STATE_WARNING),\n };\n }\n\n get hasValueState(): boolean {\n return this.valueState !== UDExValueState.Standard;\n }\n\n get valueStateText(): string {\n return this.valueState !== UDExValueState.Standard ? this.valueStateTypeMappings[this.valueState] : \"\";\n }\n\n get readOnlyStateText(): string {\n return UDExTextField.i18nBundle.getText(READ_ONLY);\n }\n\n get ariaDescribedById(): string {\n return `${this.supportingTextId} ${this.valueStateTextId} ${this.readOnlyStateTextId}`.trim();\n }\n\n get supportingTextId(): string {\n return this.supportingText ? `${this._id}-supportingTextDesc` : \"\";\n }\n\n get valueStateTextId(): string {\n return this.hasValueState ? `${this._id}-valueStateDesc` : \"\";\n }\n\n get readOnlyStateTextId(): string {\n return this.readonly ? `${this._id}-stateReadOnlyDesc` : \"\";\n }\n\n get accInfo(): AccInfo {\n return {\n \"ariaInvalid\": this.valueState === UDExValueState.Error ? \"true\" : undefined,\n \"ariaDescribedBy\": this.ariaDescribedBy ? this.ariaDescribedBy : this.ariaDescribedById || undefined,\n \"ariaLabel\": getAllAccessibleNameRefTexts(this) || this.accessibleName || undefined,\n \"ariaHasPopup\": this._ariaHasPopup || undefined,\n };\n }\n\n get inputRole(): string | undefined {\n return this.isAutoCompleteDisabled ? \"presentation\" : undefined;\n }\n\n get isAutoCompleteDisabled(): boolean {\n return this.autocomplete === \"off\" || this.autocomplete === \"new-password\";\n }\n\n get readonlyNotDisabled(): boolean {\n return this.isInputReadonly && !this.disabled;\n }\n\n get buttonAccessibleName(): string {\n return this._isComboboxRole ? this.label : this.accessibleIconName || this.icon;\n }\n\n get buttonAccessibleDescription(): string {\n const label = this._isComboboxRole ? this.value : \"\";\n return `${label} ${this.supportingText || \"\"} ${this.valueStateText}`;\n }\n}\n\nUDExTextField.define();\n\nexport default UDExTextField;\nexport type { UDExTextFieldKeydownEventDetail };\n"]}
1
+ {"version":3,"file":"TextField.js","sourceRoot":"","sources":["../src/TextField.ts"],"names":[],"mappings":"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","sourcesContent":["import UI5Element from \"@ui5/webcomponents-base/dist/UI5Element.js\";\nimport customElement from \"@ui5/webcomponents-base/dist/decorators/customElement.js\";\nimport property from \"@ui5/webcomponents-base/dist/decorators/property.js\";\nimport jsxRenderer from \"@ui5/webcomponents-base/renderer/JsxRenderer.js\";\nimport event from \"@ui5/webcomponents-base/dist/decorators/event-strict.js\";\nimport Icon from \"@ui5/webcomponents/dist/Icon.js\";\nimport { isDesktop } from \"@ui5/webcomponents-base/dist/Device.js\";\nimport i18n from \"@ui5/webcomponents-base/dist/decorators/i18n.js\";\nimport type I18nBundle from \"@ui5/webcomponents-base/dist/i18nBundle.js\";\nimport { getAllAccessibleNameRefTexts } from \"@ui5/webcomponents-base/dist/util/AccessibilityTextsHelper.js\";\nimport {\n VALUE_STATE_SUCCESS, VALUE_STATE_INFORMATION, VALUE_STATE_WARNING, VALUE_STATE_ERROR, READ_ONLY,\n} from \"./generated/i18n/i18n-defaults.js\";\nimport UDExControlButton from \"./ControlButton.js\";\nimport UDExValueState, { valueStateToControlButtonDesign } from \"./types/common.js\";\nimport type UDExControlButtonDesign from \"./types/ControlButtonDesign.js\";\nimport UDExStatusMessage from \"./StatusMessage.js\";\nimport TextFieldTemplate from \"./TextFieldTemplate.js\";\n\n// Styles\nimport TextFieldCss from \"./generated/themes/TextField.css.js\";\n\nexport type AccInfo = {\n ariaInvalid?: string;\n ariaDescribedBy?: string;\n ariaLabelledBy?: string;\n ariaLabel?: string;\n ariaHasPopup?: string,\n}\n\ntype UDExTextFieldKeydownEventDetail = {\n keyboardEvent: KeyboardEvent;\n}\n\ntype UDExTextFieldChangeEventDetail = {\n originalEvent: Event,\n}\n\ntype UDExTextFieldBlurEventDetail = {\n originalEvent: FocusEvent,\n}\n\n/**\n * @class\n *\n * @constructor\n * @extends UI5Element\n * @tagname udex-text-field\n * @public\n */\n@customElement({\n tag: \"udex-text-field\",\n renderer: jsxRenderer,\n styles: TextFieldCss,\n template: TextFieldTemplate,\n dependencies: [UDExControlButton, Icon, UDExStatusMessage],\n})\n\n/**\n * Fired when the value of the component changes at each keystroke.\n *\n * @public\n */\n@event(\"input\", { bubbles: true })\n/**\n * Fired when the input operation has finished by pressing Enter or on focusout.\n *\n * @public\n */\n@event(\"change\", { bubbles: true })\n/**\n * Fired on input focusout.\n *\n * @public\n */\n@event(\"blur\", { bubbles: true })\n/**\n * Fired event when the user clicks the icon.\n *\n * @private\n */\n@event(\"click-icon\", { bubbles: true })\n\n/**\n * Fired event when the key is pressed in the input.\n *\n * @private\n * @param {KeyboardEvent} keyboardEvent The native keyboard event.\n */\n@event(\"keydown\", { bubbles: true })\nclass UDExTextField extends UI5Element {\n eventDetails!: {\n \"keydown\": UDExTextFieldKeydownEventDetail,\n \"input\": void,\n \"change\": UDExTextFieldChangeEventDetail,\n \"blur\": UDExTextFieldBlurEventDetail,\n \"click-icon\": void,\n };\n _labelActiveClassName = \"udex-text-field__label_active\";\n\n /**\n * Defines whether the component is in disabled state.\n * <br><br>\n * <b>Note:</b> A disabled component is completely noninteractive.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n disabled!: boolean;\n\n /**\n * Defines the value of the component.\n * <br><br>\n * <b>Note:</b> The property is updated upon typing.\n *\n * @default \"\"\n * @formEvents input\n * @formProperty\n * @public\n */\n @property({ type: String })\n value: string = \"\";\n\n /**\n * Sets the maximum number of characters available in the input field.\n * <br><br>\n * <b>Note:</b> This property is not compatible with the ui5-input type InputType.Number. If the ui5-input type is set to Number, the maxlength value is ignored.\n *\n * @public\n */\n @property({ type: Number })\n maxlength?: number;\n\n /**\n * Defines label text for the input field.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n label!: string;\n\n /**\n * Defines the accessible ARIA name of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n accessibleName!: string;\n\n /**\n * Defines the name of the input element.\n *\n * @default \"\"\n * @public\n */\n @property()\n name!: string;\n\n /**\n * Receives id (or many ids) of the elements that label the component.\n * @default \"\"\n * @public\n */\n @property()\n accessibleNameRef: string = \"\";\n\n /**\n * Defines the ref of the input element.\n *\n * @default undefined\n * @public\n */\n @property()\n fieldRef?: ((el: HTMLInputElement | null) => void) | { current: HTMLInputElement | null };\n\n /**\n * Defines the accessible ARIA name of the component.\n *\n * @default \"\"\n * @public\n */\n @property()\n accessibleIconName: string = \"\";\n\n /**\n * Defines whether the component is read-only.\n * <br><br>\n * <b>Note:</b> A read-only component is not editable,\n * but still provides visual feedback upon user interaction.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n readonly!: boolean;\n\n /**\n * Defines whether the component is display-only.\n * <br><br>\n * <b>Note:</b> A display-only component is not editable,\n * but still provides visual feedback upon user interaction, input border is not visible.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n displayonly!: boolean;\n\n /**\n * Defines whether the component is required.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n required!: boolean;\n\n /**\n * Defines the value state of the component.\n *\n * @default \"Standard\"\n * @public\n */\n @property()\n valueState: `${UDExValueState}` = UDExValueState.Standard;\n\n /**\n * Defines supporting text under the input field.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n supportingText!: string;\n\n /**\n * Defines the icon name in the text-field.\n *\n * @default \"\"\n * @public\n */\n @property({ type: String })\n icon!: string;\n\n /**\n * Defines if the text-field is active\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n active!: boolean;\n\n /**\n * Defines if dropdown associated with text-field trigger has opened dropdown. It indicates active state of control button.\n *\n * @default false\n * @public\n */\n @property({ type: Boolean })\n iconActive!: boolean;\n\n /**\n * Defines the behaviour of autocomplete.\n * @default \"off\"\n * @public\n */\n @property({ type: String })\n autocomplete: string = \"off\";\n\n /**\n * Defines the inner stored show password button tooltip.\n *\n * @default \"\"\n * @private\n */\n\n @property({ type: String })\n showButtonTooltip: string = \"\";\n\n /**\n * Defines the inner stored class of the label.\n *\n * @default \"\"\n * @private\n */\n @property({ type: String, noAttribute: true })\n labelActiveClass: string = \"\";\n\n /**\n * Defines the inner stored value of the readonly attribute of the input.\n *\n * @default false\n * @private\n */\n @property({ type: Boolean, noAttribute: true })\n isInputReadonly!: boolean;\n\n /**\n * Defines the inner stored value of the classes of the label.\n *\n * @default \"\"\n * @private\n */\n @property({ type: String, noAttribute: true })\n labelClasses: string = \"\";\n\n /**\n * Defines the type of inner input field.\n * Note: Only URL and Email types can be used within this property. For other types, user should use dedicated UDEx component.\n * There is no custom logic on UDEx component side. Property is used only to pass it directly to html input element.\n *\n * @default \"Text\"\n * @public\n */\n @property({ type: String })\n type: \"Text\" | \"Email\" | \"Number\" | \"Password\" | \"Tel\" | \"URL\" | \"Search\" = \"Text\";\n\n /**\n * Defines direction of the input.\n *\n * @public\n */\n @property({ type: String, noAttribute: true })\n direction?: string;\n\n /**\n * Defines the max value for the \"number\" type of the input.\n */\n @property({ type: Number })\n max?: number;\n\n /**\n * Defines the min value for the \"number\" type of the input.\n */\n @property({ type: Number })\n min?: number;\n\n /**\n * Defines the step for the \"number\" type of the input.\n * @default undefined\n */\n @property({ type: Number })\n step?: number;\n\n /**\n * Allows setting the aria-describedby property on the internal input node.\n *\n * @default \"\"\n * @public\n */\n @property()\n ariaDescribedBy?: string;\n\n /**\n * Defines the aria-has-popup attribute of the input.\n * @private\n */\n @property({ type: String })\n _ariaHasPopup?: string;\n\n /**\n * Defines is it the touch of the input field (only for mobile devices).\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _isTouched!: boolean;\n\n /**\n * Determines Combobox role for the button.\n * @default false\n * @private\n */\n @property({ type: Boolean })\n _isComboboxRole?: boolean;\n\n @i18n(\"@sapudex/web-components\")\n static i18nBundle: I18nBundle;\n\n onBeforeRendering(): void {\n if ((this.value || this.active) && this.labelActiveClass === \"\") {\n this.labelActiveClass = this._labelActiveClassName;\n } else if (!this.active && !this.value && this.labelActiveClass.length) {\n this.labelActiveClass = \"\";\n }\n\n this.isInputReadonly = this.readonly || this.displayonly;\n\n this.labelClasses = `udex-text-field__label ${this.labelActiveClass}`;\n }\n\n onAfterRendering(): void {\n const directionStyles: string = window\n .getComputedStyle(this)\n .getPropertyValue(\"direction\");\n\n if (!directionStyles) {\n this.direction = \"ltr\";\n } else {\n this.direction = directionStyles;\n }\n }\n\n handleKeydown(e: KeyboardEvent): void {\n e.stopPropagation();\n this.fireDecoratorEvent(\"keydown\", { keyboardEvent: e });\n }\n\n handleChange = (e: Event): void => {\n this.fireDecoratorEvent(\"change\", { originalEvent: e });\n };\n\n handleInput = (inputEvent: InputEvent) => {\n this.value = (inputEvent.target as HTMLInputElement)?.value;\n };\n\n handleClick = (): void => {\n if (!isDesktop()) {\n this._isTouched = true;\n }\n };\n\n handleFocus = (): void => {\n if (!this.disabled && !this.readonly && !this.displayonly) {\n this.labelActiveClass = this._labelActiveClassName;\n this.active = true;\n }\n };\n\n handleBlur = (e: FocusEvent): void => {\n this.fireDecoratorEvent(\"blur\", { originalEvent: e });\n this.active = false;\n\n if (this.value) {\n this.labelActiveClass = this._labelActiveClassName;\n } else {\n this.labelActiveClass = \"\";\n }\n this._isTouched = false;\n };\n\n handleIconClick(): void {\n this.fireDecoratorEvent(\"click-icon\");\n }\n\n get _inputHolder(): HTMLElement {\n return this.shadowRoot!.querySelector<HTMLElement>(\".udex-text-field__wrap\")!;\n }\n\n get valueStateTypeMappings(): Record<string, string> {\n return {\n \"Success\": UDExTextField.i18nBundle.getText(VALUE_STATE_SUCCESS),\n \"Standard\": UDExTextField.i18nBundle.getText(VALUE_STATE_INFORMATION),\n \"Error\": UDExTextField.i18nBundle.getText(VALUE_STATE_ERROR),\n \"Warning\": UDExTextField.i18nBundle.getText(VALUE_STATE_WARNING),\n };\n }\n\n get hasValueState(): boolean {\n return this.valueState !== UDExValueState.Standard;\n }\n\n get valueStateText(): string {\n return this.valueState !== UDExValueState.Standard ? this.valueStateTypeMappings[this.valueState] : \"\";\n }\n\n get readOnlyStateText(): string {\n return UDExTextField.i18nBundle.getText(READ_ONLY);\n }\n\n get ariaDescribedById(): string {\n return `${this.supportingTextId} ${this.valueStateTextId} ${this.readOnlyStateTextId}`.trim();\n }\n\n get supportingTextId(): string {\n return this.supportingText ? `${this._id}-supportingTextDesc` : \"\";\n }\n\n get valueStateTextId(): string {\n return this.hasValueState ? `${this._id}-valueStateDesc` : \"\";\n }\n\n get readOnlyStateTextId(): string {\n return this.readonly ? `${this._id}-stateReadOnlyDesc` : \"\";\n }\n\n get accInfo(): AccInfo {\n return {\n \"ariaInvalid\": this.valueState === UDExValueState.Error ? \"true\" : undefined,\n \"ariaDescribedBy\": this.ariaDescribedBy ? this.ariaDescribedBy : this.ariaDescribedById || undefined,\n \"ariaLabel\": getAllAccessibleNameRefTexts(this) || this.accessibleName || undefined,\n \"ariaHasPopup\": this._ariaHasPopup || undefined,\n };\n }\n\n get inputRole(): string | undefined {\n return this.isAutoCompleteDisabled ? \"presentation\" : undefined;\n }\n\n get isAutoCompleteDisabled(): boolean {\n return this.autocomplete === \"off\" || this.autocomplete === \"new-password\";\n }\n\n get readonlyNotDisabled(): boolean {\n return this.isInputReadonly && !this.disabled;\n }\n\n get buttonAccessibleName(): string {\n return this._isComboboxRole ? this.label : this.accessibleIconName || this.icon;\n }\n\n get buttonAccessibleDescription(): string {\n const label = this._isComboboxRole ? this.value : \"\";\n return `${label} ${this.supportingText || \"\"} ${this.valueStateText}`;\n }\n\n get controlButtonDesign(): UDExControlButtonDesign {\n return valueStateToControlButtonDesign[this.valueState];\n }\n}\n\nUDExTextField.define();\n\nexport default UDExTextField;\nexport type { UDExTextFieldKeydownEventDetail, UDExTextFieldChangeEventDetail, UDExTextFieldBlurEventDetail };\n"]}
@@ -0,0 +1,2 @@
1
+ import type TextField from "./TextField.js";
2
+ export default function TextFieldTemplate(this: TextField): import("@ui5/webcomponents-base").JSX.Element;
@@ -0,0 +1,14 @@
1
+ import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "@ui5/webcomponents-base/jsx-runtime";
2
+ import UDExControlButton from "./ControlButton.js";
3
+ import UDExStatusMessage from "./StatusMessage.js";
4
+ export default function TextFieldTemplate() {
5
+ const rootClass = "udex-text-field";
6
+ const hiddenClass = "hidden-text";
7
+ return (_jsxs("div", { class: `${rootClass}__container`, children: [this.label &&
8
+ _jsxs("label", { for: `${this._id}-input`, class: this.labelClasses, part: "label", children: [this.label, this.required && " * "] }), _jsxs("div", { class: `${rootClass}__wrap`, children: [_jsx("input", { id: `${this._id}-input`, class: `${rootClass}__input`, type: this.type, value: this.value, maxlength: this.maxlength, disabled: this.disabled, readonly: this.isInputReadonly, required: this.required, "aria-required": this.required, "aria-readonly": this.isInputReadonly, autocomplete: this.autocomplete, role: this.inputRole, name: this.name, ref: this.fieldRef, "aria-disabled": this.readonlyNotDisabled, "aria-invalid": this.accInfo.ariaInvalid, "aria-describedby": this.accInfo.ariaDescribedBy, "aria-haspopup": this.accInfo.ariaHasPopup, "aria-label": this.accInfo.ariaLabel, part: "textfield-input", min: this.min, max: this.max, step: this.step, onChange: this.handleChange, onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur, onClick: this.handleClick, onKeyDown: this.handleKeydown }), this.icon &&
9
+ _jsx(UDExControlButton, { part: "textfield-control-btn", class: `${rootClass}__icon-container`, size: "Large", tooltip: this.showButtonTooltip, active: this.active, disabled: this.disabled, readonly: this.readonly, "non-interactive": this.readonly, design: this.controlButtonDesign, icon: this.icon, "_is-combobox-role": this._isComboboxRole, "accessible-name": this.buttonAccessibleName, "accessible-description": this.buttonAccessibleDescription, onClick: this.handleIconClick })] }), this.supportingText &&
10
+ _jsxs(_Fragment, { children: [_jsx(UDExStatusMessage, { "supporting-text": this.supportingText, "value-state": this.valueState, disabled: this.disabled ? "true" : undefined }), _jsx("span", { id: `${this._id}-supportingTextDesc`, class: hiddenClass, children: this.supportingText })] }), this.hasValueState &&
11
+ _jsx("span", { id: `${this._id}-valueStateDesc`, class: hiddenClass, children: this.valueStateText }), this.readonly &&
12
+ _jsx("span", { id: `${this._id}-stateReadOnlyDesc`, class: hiddenClass, children: this.readOnlyStateText })] }));
13
+ }
14
+ //# sourceMappingURL=TextFieldTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TextFieldTemplate.js","sourceRoot":"","sources":["../src/TextFieldTemplate.tsx"],"names":[],"mappings":"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","sourcesContent":["import type TextField from \"./TextField.js\";\nimport type { AriaRole } from \"@ui5/webcomponents-base/dist/types.js\";\nimport type { Booleanish } from \"@ui5/webcomponents-base/dist/thirdparty/preact/jsx.js\";\nimport UDExControlButton from \"./ControlButton.js\";\nimport UDExStatusMessage from \"./StatusMessage.js\";\n\nexport default function TextFieldTemplate(this: TextField) {\n const rootClass = \"udex-text-field\";\n const hiddenClass = \"hidden-text\";\n\n return (\n <div class={`${rootClass}__container`}>\n {this.label &&\n <label for={`${this._id}-input`} class={this.labelClasses} part=\"label\">\n {this.label}{this.required && \" * \"}\n </label>\n }\n <div class={`${rootClass}__wrap`}>\n <input id={`${this._id}-input`} class={`${rootClass}__input`}\n type={this.type}\n value={this.value}\n maxlength={this.maxlength}\n disabled={this.disabled}\n readonly={this.isInputReadonly}\n required={this.required}\n aria-required={this.required}\n aria-readonly={this.isInputReadonly}\n autocomplete={this.autocomplete}\n role={this.inputRole as AriaRole}\n name={this.name}\n ref={this.fieldRef}\n aria-disabled={this.readonlyNotDisabled}\n aria-invalid={this.accInfo.ariaInvalid as Booleanish}\n aria-describedby={this.accInfo.ariaDescribedBy}\n aria-haspopup={this.accInfo.ariaHasPopup as Booleanish}\n aria-label={this.accInfo.ariaLabel}\n part=\"textfield-input\"\n min={this.min}\n max={this.max}\n step={this.step}\n onChange={this.handleChange}\n onInput={this.handleInput}\n onFocus={this.handleFocus}\n onBlur={this.handleBlur}\n onClick={this.handleClick}\n onKeyDown={this.handleKeydown} />\n {this.icon &&\n <UDExControlButton\n part=\"textfield-control-btn\"\n class={`${rootClass}__icon-container`}\n size=\"Large\"\n tooltip={this.showButtonTooltip}\n active={this.active}\n disabled={this.disabled}\n readonly={this.readonly}\n non-interactive={this.readonly}\n design={this.controlButtonDesign}\n icon={this.icon}\n _is-combobox-role={this._isComboboxRole}\n accessible-name={this.buttonAccessibleName}\n accessible-description={this.buttonAccessibleDescription}\n onClick={this.handleIconClick}>\n </UDExControlButton>\n }\n </div>\n {this.supportingText &&\n <>\n <UDExStatusMessage\n supporting-text={this.supportingText}\n value-state={this.valueState}\n disabled={this.disabled ? \"true\" : undefined}>\n </UDExStatusMessage>\n <span id={`${this._id}-supportingTextDesc`} class={hiddenClass}>\n {this.supportingText}\n </span>\n </>\n }\n {this.hasValueState &&\n <span id={`${this._id}-valueStateDesc`} class={hiddenClass}>\n {this.valueStateText}\n </span>\n }\n {this.readonly &&\n <span id={`${this._id}-stateReadOnlyDesc`} class={hiddenClass}>\n {this.readOnlyStateText}\n </span>\n }\n </div>\n );\n}\n"]}
@@ -1,2 +1,2 @@
1
- import{r as w,j as l,a as c,p as x,d as P,b as R,s as p,m as v,u as S,v as y,w as O,x as L,D,c as A,z as G,I as b,A as I,F as H,B as f,R as E,C as V,G as $,H as B,J as N}from"./bundle.esm-9yDdQqR5.js";const F=n=>n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");function _(n,e,t,s){return n.replaceAll(new RegExp(F(e),`${s?"i":""}g`),t)}function M(n,e){if(!n||!e)return n;const t=r=>{const[a,d]=r.split("");for(;n.indexOf(r)>=0||e.indexOf(r)>=0;)r=`${a}${r}${d}`;return r},s=t("12"),i=t("34");let o=w(_(n,e,r=>`${s}${r}${i}`,!0));return[[s,"<b>"],[i,"</b>"]].forEach(([r,a])=>{o=_(o,r,a,!1)}),o}function z(n,e){const t=(n==null?void 0:n.listItemContent)||q;return l("li",{part:"native-li","data-sap-focus-ref":!0,tabindex:this._effectiveTabIndex,class:this.classes.main,draggable:this.movable,role:e==null?void 0:e.role,title:e==null?void 0:e.title,onFocusIn:this._onfocusin,onKeyUp:this._onkeyup,onKeyDown:this._onkeydown,onClick:this._onclick,children:t.call(this)})}function q(){return l("div",{part:"content",id:`${this._id}-content`,class:"ui5-li-content",children:l("div",{class:"ui5-li-text-wrapper",children:l("span",{part:"title",class:"ui5-li-title",children:l("slot",{})})})})}function U(){return[z.call(this,{listItemContent:K},{role:"option"})]}function K(){return l("div",{part:"content",id:"content",class:"ui5-li-content",children:c("div",{class:"ui5-li-text-wrapper",children:[l("span",{part:"title",className:"ui5-li-title",dangerouslySetInnerHTML:{__html:this.markupText}}),this.additionalText&&l("span",{part:"additional-text",class:"ui5-li-additional-text",children:this.additionalText})]})})}x("@ui5/webcomponents-theming","sap_horizon",async()=>P);x("@ui5/webcomponents","sap_horizon",async()=>R);const W=`:host([ui5-suggestion-item]){height:auto;min-height:var(--_ui5-v2-17-0_list_item_base_height)}:host([ui5-suggestion-item]) .ui5-li-root{min-height:var(--_ui5-v2-17-0_list_item_base_height)}:host([ui5-suggestion-item]) .ui5-li-content{padding-bottom:.5rem;padding-top:.5rem;box-sizing:border-box}
1
+ import{r as w,j as l,a as c,p as x,d as P,b as R,s as p,m as v,u as S,v as y,w as O,x as L,D,c as A,z as G,I as b,A as I,F as H,B as f,R as E,C as V,G as $,H as B,J as N}from"./bundle.esm-lUYJDofa.js";const F=n=>n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");function _(n,e,t,s){return n.replaceAll(new RegExp(F(e),`${s?"i":""}g`),t)}function M(n,e){if(!n||!e)return n;const t=r=>{const[a,d]=r.split("");for(;n.indexOf(r)>=0||e.indexOf(r)>=0;)r=`${a}${r}${d}`;return r},s=t("12"),i=t("34");let o=w(_(n,e,r=>`${s}${r}${i}`,!0));return[[s,"<b>"],[i,"</b>"]].forEach(([r,a])=>{o=_(o,r,a,!1)}),o}function z(n,e){const t=(n==null?void 0:n.listItemContent)||q;return l("li",{part:"native-li","data-sap-focus-ref":!0,tabindex:this._effectiveTabIndex,class:this.classes.main,draggable:this.movable,role:e==null?void 0:e.role,title:e==null?void 0:e.title,onFocusIn:this._onfocusin,onKeyUp:this._onkeyup,onKeyDown:this._onkeydown,onClick:this._onclick,children:t.call(this)})}function q(){return l("div",{part:"content",id:`${this._id}-content`,class:"ui5-li-content",children:l("div",{class:"ui5-li-text-wrapper",children:l("span",{part:"title",class:"ui5-li-title",children:l("slot",{})})})})}function U(){return[z.call(this,{listItemContent:K},{role:"option"})]}function K(){return l("div",{part:"content",id:"content",class:"ui5-li-content",children:c("div",{class:"ui5-li-text-wrapper",children:[l("span",{part:"title",className:"ui5-li-title",dangerouslySetInnerHTML:{__html:this.markupText}}),this.additionalText&&l("span",{part:"additional-text",class:"ui5-li-additional-text",children:this.additionalText})]})})}x("@ui5/webcomponents-theming","sap_horizon",async()=>P);x("@ui5/webcomponents","sap_horizon",async()=>R);const W=`:host([ui5-suggestion-item]){height:auto;min-height:var(--_ui5-v2-17-0_list_item_base_height)}:host([ui5-suggestion-item]) .ui5-li-root{min-height:var(--_ui5-v2-17-0_list_item_base_height)}:host([ui5-suggestion-item]) .ui5-li-content{padding-bottom:.5rem;padding-top:.5rem;box-sizing:border-box}
2
2
  `;var g=function(n,e,t,s){var i=arguments.length,o=i<3?e:s===null?s=Object.getOwnPropertyDescriptor(e,t):s,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(n,e,t,s);else for(var a=n.length-1;a>=0;a--)(r=n[a])&&(o=(i<3?r(o):i>3?r(e,t,o):r(e,t))||o);return i>3&&o&&Object.defineProperty(e,t,o),o};let h=class extends S{constructor(){super(...arguments),this.markupText=""}onEnterDOM(){y()&&this.setAttribute("desktop","")}get _effectiveTabIndex(){return-1}};g([p()],h.prototype,"text",void 0);g([p()],h.prototype,"additionalText",void 0);g([p()],h.prototype,"markupText",void 0);h=g([v({tag:"ui5-suggestion-item",template:U,styles:[S.styles,W]})],h);h.define();function J(n){const e=(n==null?void 0:n.items)||X;return c("ul",{role:"group",class:"ui5-group-li-root",onDragEnter:this._ondragenter,onDragOver:this._ondragover,onDrop:this._ondrop,onDragLeave:this._ondragleave,children:[this.hasHeader&&l(L,{focused:this.focused,part:"header",accessibleRole:O.Group,children:this.hasFormattedHeader?l("slot",{name:"header"}):this.headerText}),e.call(this),l(D,{orientation:"Horizontal",ownerReference:this})]})}function X(){return l("slot",{})}var T=function(n,e,t,s){var i=arguments.length,o=i<3?e:s===null?s=Object.getOwnPropertyDescriptor(e,t):s,r;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(n,e,t,s);else for(var a=n.length-1;a>=0;a--)(r=n[a])&&(o=(i<3?r(o):i>3?r(e,t,o):r(e,t))||o);return i>3&&o&&Object.defineProperty(e,t,o),o};let m=class extends G{};T([A({default:!0,invalidateOnChildChange:!0,type:HTMLElement})],m.prototype,"items",void 0);m=T([v({tag:"ui5-suggestion-item-group",template:J})],m);m.define();function j(n){const e=(n==null?void 0:n.suggestionsList)||Q,t=n==null?void 0:n.mobileHeader,s=n==null?void 0:n.valueStateMessage,i=n==null?void 0:n.valueStateMessageInputIcon;return c(E,{class:this.classes.popover,hideArrow:!0,preventFocusRestore:!0,preventInitialFocus:!0,placement:"Bottom",horizontalAlign:"Start",tabindex:-1,style:this.styles.suggestionsPopover,onOpen:this._afterOpenPicker,onClose:this._afterClosePicker,onScroll:this._scroll,open:this.open,opener:this,accessibleName:this._popupLabel,children:[this._isPhone&&l(H,{children:c("div",{slot:"header",class:"ui5-responsive-popover-header",children:[l("div",{class:"row",children:l("span",{children:this._headerTitleText})}),l("div",{class:"row",children:c("div",{class:"input-root-phone native-input-wrapper",children:[l(b,{class:"ui5-input-inner-phone",type:this.inputType,value:this.value,showClearIcon:this.showClearIcon,placeholder:this.placeholder,onInput:this._handleInput}),t==null?void 0:t.call(this)]})}),this.hasValueStateMessage&&c("div",{class:this.classes.popoverValueState,style:this.styles.suggestionPopoverHeader,children:[l(I,{class:"ui5-input-value-state-message-icon",name:i==null?void 0:i.call(this)}),this.open&&(s==null?void 0:s.call(this))]})]})}),!this._isPhone&&this.hasValueStateMessage&&c("div",{slot:"header",class:{"ui5-responsive-popover-header":!0,...this.classes.popoverValueState},style:this.styles.suggestionPopoverHeader,children:[l(I,{class:"ui5-input-value-state-message-icon",name:i==null?void 0:i.call(this)}),this.open&&(s==null?void 0:s.call(this))]}),this.showSuggestions&&e.call(this),this._isPhone&&c("div",{slot:"footer",class:"ui5-responsive-popover-footer",children:[l(f,{design:"Emphasized",onClick:this._confirmMobileValue,children:this._suggestionsOkButtonText}),l(f,{class:"ui5-responsive-popover-close-btn",design:"Transparent",onClick:this._cancelMobileValue,children:this._suggestionsCancelButtonText})]})]})}function Q(){return l($,{accessibleRole:V.ListBox,separators:this.suggestionSeparators,selectionMode:"Single",onMouseDown:this.onItemMouseDown,onItemClick:this._handleSuggestionItemPress,onSelectionChange:this._handleSelectionChange,children:l("slot",{})})}class u{get template(){return j}constructor(e,t,s,i){this.component=e,this.slotName=t,this.handleFocus=i,this.highlight=s,this.selectedItemIndex=-1}onUp(e,t){e.preventDefault();const s=!this.isOpened&&this._hasValueState&&t===-1?0:t;return this._handleItemNavigation(!1,s),!0}onDown(e,t){e.preventDefault();const s=!this.isOpened&&this._hasValueState&&t===-1?0:t;return this._handleItemNavigation(!0,s),!0}onSpace(e){return this._isItemOnTarget()?(e.preventDefault(),this.onItemSelected(this._selectedItem,!0),!0):!1}onEnter(e){return this._isGroupItem?(e.preventDefault(),!1):this._isItemOnTarget()?(this.onItemSelected(this._selectedItem,!0),!0):!1}onPageUp(e){e.preventDefault();const t=this.selectedItemIndex-10>-1;return this._moveItemSelection(this.selectedItemIndex,t?this.selectedItemIndex-=10:this.selectedItemIndex=0),!0}onPageDown(e){e.preventDefault();const t=this._getItems();if(!t)return!0;const s=t.length-1,i=this.selectedItemIndex+10<=s;return this._moveItemSelection(this.selectedItemIndex,i?this.selectedItemIndex+=10:this.selectedItemIndex=s),!0}onHome(e){return e.preventDefault(),this._moveItemSelection(this.selectedItemIndex,this.selectedItemIndex=0),!0}onEnd(e){e.preventDefault();const t=this._getItems().length-1;return t&&this._moveItemSelection(this.selectedItemIndex,this.selectedItemIndex=t),!0}onTab(){return this._isItemOnTarget()?(this.onItemSelected(this._selectedItem,!0),!0):!1}toggle(e,t){(e!==void 0?e:!this.isOpened())?this._getComponent().open=!0:this.close(t.preventFocusRestore)}get _selectedItem(){return this._getNonGroupItems().find(e=>e.selected)}_isScrollable(){const e=this._getScrollContainer();return e.offsetHeight<e.scrollHeight}close(e=!1){const t=this._getItems()&&this._getItems()[this.selectedItemIndex];this._getComponent().open=!1;const s=this._getPicker();s.preventFocusRestore=e,s.open=!1,t&&t.focused&&(t.focused=!1)}updateSelectedItemPosition(e){this.selectedItemIndex=e}onItemSelected(e,t){const s=e,i=this._getNonGroupItems();s&&(this.accInfo={isGroup:s.hasAttribute("ui5-suggestion-item-group"),currentPos:i.indexOf(s)+1,listSize:i.length,itemText:s.text||"",additionalText:s.additionalText},this._getComponent().onItemSelected(s,t),this._getComponent().open=!1)}onItemSelect(e){this._getComponent().onItemSelect(e)}onItemPress(e){let t;const s=e.type==="ui5-item-click";s&&!e.detail.item.selected||this._handledPress&&!s||(s&&e.detail.item.selected?(t=e.detail.item,this._handledPress=!0):t=e.detail.selectedItems[0],this.onItemSelected(t,!1))}_onClose(){this._handledPress=!1}_isItemOnTarget(){return this.isOpened()&&this.selectedItemIndex!==null&&this.selectedItemIndex!==-1&&!this._isGroupItem}get _isGroupItem(){const e=this._getItems();return!e||!e[this.selectedItemIndex]?!1:e[this.selectedItemIndex].hasAttribute("ui5-suggestion-item-group")}isOpened(){var e;return!!((e=this._getPicker())!=null&&e.open)}_handleItemNavigation(e,t){this.selectedItemIndex=t,this._getItems().length&&(e?this._selectNextItem():this._selectPreviousItem())}_selectNextItem(){const e=this._getItems().length,t=this.selectedItemIndex;t!==-1&&t+1>e-1||this._moveItemSelection(t,++this.selectedItemIndex)}_selectPreviousItem(){const e=this._getItems(),t=this.selectedItemIndex;if(!(t===-1||t===null)){if(t-1<0){(e[t].hasAttribute("ui5-suggestion-item")||e[t].hasAttribute("ui5-suggestion-item-custom"))&&(e[t].selected=!1),e[t].focused=!1,this.component.focused=!0,this.component.hasSuggestionItemSelected=!1,this.selectedItemIndex-=1;return}this._moveItemSelection(t,--this.selectedItemIndex)}}_moveItemSelection(e,t){const s=this._getItems(),i=s[t],o=s[e],r=this._getNonGroupItems(),a=i.hasAttribute("ui5-suggestion-item-group");if(!i)return;this.component.focused=!1;const d=this._getItems()[this.selectedItemIndex];if(this.accInfo={isGroup:a,currentPos:s.indexOf(i)+1,itemText:(a?d.headerText:d.text)||""},(i.hasAttribute("ui5-suggestion-item")||i.hasAttribute("ui5-suggestion-item-custom"))&&(this.accInfo.additionalText=i.additionalText||"",this.accInfo.currentPos=r.indexOf(i)+1,this.accInfo.listSize=r.length),o&&(o.focused=!1),(o!=null&&o.hasAttribute("ui5-suggestion-item")||o!=null&&o.hasAttribute("ui5-suggestion-item-custom"))&&(o.selected=!1),i&&(i.focused=!0,a||(i.selected=!0),this.handleFocus&&i.focus()),this.component.hasSuggestionItemSelected=!0,this.onItemSelect(i),!this._isItemIntoView(i)){const C=this._isGroupItem?i.shadowRoot.querySelector("[ui5-li-group-header]"):i;this._scrollItemIntoView(C)}}_deselectItems(){this._getItems().forEach(t=>{t.hasAttribute("ui5-suggestion-item")&&(t.selected=!1),t.focused=!1})}_clearItemFocus(){const e=this._getItems().find(t=>t.focused);e&&(e.focused=!1)}_isItemIntoView(e){const t=e.getDomRef().getBoundingClientRect(),s=this._getComponent().getDomRef().getBoundingClientRect(),i=window.innerHeight||document.documentElement.clientHeight;let o=0;return this._hasValueState&&(o=this._getPicker().querySelector("[slot=header]").getBoundingClientRect().height),t.top+u.SCROLL_STEP<=i&&t.top>=s.top+o}_scrollItemIntoView(e){e.scrollIntoView({behavior:"auto",block:"nearest",inline:"nearest"})}_getScrollContainer(){return this._scrollContainer||(this._scrollContainer=this._getPicker().shadowRoot.querySelector(".ui5-popup-content")),this._scrollContainer}_getItems(){return this._getComponent().getSlottedNodes("suggestionItems").flatMap(t=>t.hasAttribute("ui5-suggestion-item-group")?[t,...t.items]:[t])}_getNonGroupItems(){return this._getItems().filter(e=>!e.hasAttribute("ui5-suggestion-item-group"))}_getComponent(){return this.component}_getList(){return this._getPicker().querySelector("[ui5-list]")}_getListWidth(){var e;return(e=this._getList())==null?void 0:e.offsetWidth}_getPicker(){return this._getComponent().shadowRoot.querySelector("[ui5-responsive-popover]")}get itemSelectionAnnounce(){if(!this.accInfo)return"";if(this.accInfo.isGroup)return`${u.i18nBundle.getText(B)} ${this.accInfo.itemText}`;const e=u.i18nBundle.getText(N,this.accInfo.currentPos||0,this.accInfo.listSize||0);return`${this.accInfo.additionalText} ${e}`}hightlightInput(e,t){return M(e,t)}get _hasValueState(){return this.component.hasValueStateMessage}_clearSelectedSuggestionAndaccInfo(){this.accInfo=void 0,this.selectedItemIndex=0}}u.SCROLL_STEP=60;b.SuggestionsClass=u;export{u as default};
@@ -1,3 +1,3 @@
1
- import{j as o,a as _,F as y,p as m,d as b,b as E,s as x,c as C,i as P,m as O,y as B,e as w,f as I,t as A,E as L,g as R,L as S,R as M,B as N,h as F,k as D,l as X,n as j,o as z,q as k}from"./bundle.esm-9yDdQqR5.js";var T;(function(t){t.InPlace="InPlace",t.Popover="Popover"})(T||(T={}));const $=T;var g;(function(t){t.Off="Off",t.On="On"})(g||(g={}));const H=g;function W(){return o(y,{children:o("span",{children:this._renderEmptyIndicator?_(y,{children:[o("span",{className:"empty-indicator","aria-hidden":"true",children:this._emptyIndicatorSymbol}),o("span",{className:"empty-indicator-aria-label",children:this._emptyIndicatorAriaLabel})]}):o("slot",{})})})}m("@ui5/webcomponents-theming","sap_horizon",async()=>b);m("@ui5/webcomponents","sap_horizon",async()=>E);const q=`:host{max-width:100%;font-size:var(--sapFontSize);font-family:var(--sapFontFamily);color:var(--sapTextColor);line-height:normal;cursor:text;overflow:hidden}:host([max-lines="1"]){display:inline-block;text-overflow:ellipsis;white-space:nowrap}:host(:not([max-lines="1"])){display:-webkit-box;-webkit-line-clamp:var(--_ui5-v2-17-0_text_max_lines);line-clamp:var(--_ui5-v2-17-0_text_max_lines);-webkit-box-orient:vertical;white-space:normal;word-wrap:break-word}.empty-indicator-aria-label{position:absolute!important;clip:rect(1px,1px,1px,1px);user-select:none;left:0;top:0;font-size:0}
1
+ import{j as o,a as _,F as y,p as m,d as b,b as E,s as x,c as C,i as P,m as O,y as B,e as w,f as I,t as A,E as L,g as R,L as S,R as M,B as N,h as F,k as D,l as X,n as j,o as z,q as k}from"./bundle.esm-lUYJDofa.js";var T;(function(t){t.InPlace="InPlace",t.Popover="Popover"})(T||(T={}));const $=T;var g;(function(t){t.Off="Off",t.On="On"})(g||(g={}));const H=g;function W(){return o(y,{children:o("span",{children:this._renderEmptyIndicator?_(y,{children:[o("span",{className:"empty-indicator","aria-hidden":"true",children:this._emptyIndicatorSymbol}),o("span",{className:"empty-indicator-aria-label",children:this._emptyIndicatorAriaLabel})]}):o("slot",{})})})}m("@ui5/webcomponents-theming","sap_horizon",async()=>b);m("@ui5/webcomponents","sap_horizon",async()=>E);const q=`:host{max-width:100%;font-size:var(--sapFontSize);font-family:var(--sapFontFamily);color:var(--sapTextColor);line-height:normal;cursor:text;overflow:hidden}:host([max-lines="1"]){display:inline-block;text-overflow:ellipsis;white-space:nowrap}:host(:not([max-lines="1"])){display:-webkit-box;-webkit-line-clamp:var(--_ui5-v2-17-0_text_max_lines);line-clamp:var(--_ui5-v2-17-0_text_max_lines);-webkit-box-orient:vertical;white-space:normal;word-wrap:break-word}.empty-indicator-aria-label{position:absolute!important;clip:rect(1px,1px,1px,1px);user-select:none;left:0;top:0;font-size:0}
2
2
  `;var u=function(t,e,n,s){var a=arguments.length,i=a<3?e:s===null?s=Object.getOwnPropertyDescriptor(e,n):s,l;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,n,s);else for(var d=t.length-1;d>=0;d--)(l=t[d])&&(i=(a<3?l(i):a>3?l(e,n,i):l(e,n))||i);return a>3&&i&&Object.defineProperty(e,n,i),i},f;let p=f=class extends w{constructor(){super(...arguments),this.maxLines=1/0,this.emptyIndicatorMode="Off"}onBeforeRendering(){this.style.setProperty(I("--_ui5_text_max_lines"),`${this.maxLines}`)}get hasText(){return A(this.text)}get _renderEmptyIndicator(){return!this.hasText&&this.emptyIndicatorMode===H.On}get _emptyIndicatorAriaLabel(){return f.i18nBundle.getText(L)}get _emptyIndicatorSymbol(){return f.i18nBundle.getText(R)}};u([x({type:Number})],p.prototype,"maxLines",void 0);u([x()],p.prototype,"emptyIndicatorMode",void 0);u([C({type:Node,default:!0})],p.prototype,"text",void 0);u([P("@ui5/webcomponents")],p,"i18nBundle",void 0);p=f=u([O({tag:"ui5-text",renderer:B,template:W,styles:q})],p);p.define();const v=p;function Y(){return _("div",{children:[o(v,{class:"ui5-exp-text-text",emptyIndicatorMode:this.emptyIndicatorMode,children:this._displayedText}),this._maxCharactersExceeded&&_(y,{children:[o("span",{class:"ui5-exp-text-ellipsis",children:this._ellipsisText}),o(S,{id:"toggle",class:"ui5-exp-text-toggle",accessibleRole:"Button",accessibleName:this._accessibleNameForToggle,accessibilityAttributes:this._accessibilityAttributesForToggle,onClick:this._handleToggleClick,children:this._textForToggle}),this._usePopover&&_(M,{open:this._expanded,opener:"toggle",accessibleNameRef:"popover-text",contentOnlyOnDesktop:!0,_hideHeader:!0,class:"ui5-exp-text-popover",onClose:this._handlePopoverClose,children:[o(v,{id:"popover-text",children:this.text}),o("div",{slot:"footer",class:"ui5-exp-text-footer",children:o(N,{design:"Transparent",onClick:this._handleCloseButtonClick,children:this._closeButtonText})})]})]})]})}m("@ui5/webcomponents-theming","sap_horizon",async()=>b);m("@ui5/webcomponents","sap_horizon",async()=>E);const V=`:host{display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);color:var(--sapTextColor)}:host([hidden]){display:none}.ui5-exp-text-text{display:inline}.ui5-exp-text-text,.ui5-exp-text-toggle{font-family:inherit;font-size:inherit}.ui5-exp-text-text,.ui5-exp-text-ellipsis{color:inherit}.ui5-exp-text-popover::part(content){padding-inline:1rem}.ui5-exp-text-footer{width:100%;display:flex;align-items:center;justify-content:flex-end}
3
3
  `;var h=function(t,e,n,s){var a=arguments.length,i=a<3?e:s===null?s=Object.getOwnPropertyDescriptor(e,n):s,l;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(t,e,n,s);else for(var d=t.length-1;d>=0;d--)(l=t[d])&&(i=(a<3?l(i):a>3?l(e,n,i):l(e,n))||i);return a>3&&i&&Object.defineProperty(e,n,i),i},c;let r=c=class extends w{constructor(){super(...arguments),this.maxCharacters=100,this.overflowMode="InPlace",this.emptyIndicatorMode="Off",this._expanded=!1}getFocusDomRef(){var e,n;return this._usePopover?(e=this.shadowRoot)==null?void 0:e.querySelector("[ui5-responsive-popover]"):(n=this.shadowRoot)==null?void 0:n.querySelector("[ui5-link]")}get _displayedText(){var e;return this._expanded&&!this._usePopover?this.text:(e=this.text)==null?void 0:e.substring(0,this.maxCharacters)}get _maxCharactersExceeded(){var e;return(((e=this.text)==null?void 0:e.length)||0)>this.maxCharacters}get _usePopover(){return this.overflowMode===$.Popover}get _ellipsisText(){return this._expanded&&!this._usePopover?" ":"... "}get _textForToggle(){return this._expanded?c.i18nBundle.getText(F):c.i18nBundle.getText(D)}get _closeButtonText(){return c.i18nBundle.getText(X)}get _accessibilityAttributesForToggle(){return this._usePopover?{expanded:this._expanded,hasPopup:"dialog"}:{expanded:this._expanded}}get _accessibleNameForToggle(){if(this._usePopover)return this._expanded?c.i18nBundle.getText(j):c.i18nBundle.getText(z)}_handlePopoverClose(){k()||(this._expanded=!1)}_handleToggleClick(){this._expanded=!this._expanded}_handleCloseButtonClick(e){this._expanded=!1,e.stopPropagation()}};h([x()],r.prototype,"text",void 0);h([x({type:Number})],r.prototype,"maxCharacters",void 0);h([x()],r.prototype,"overflowMode",void 0);h([x()],r.prototype,"emptyIndicatorMode",void 0);h([x({type:Boolean})],r.prototype,"_expanded",void 0);h([P("@ui5/webcomponents")],r,"i18nBundle",void 0);r=c=h([O({tag:"ui5-expandable-text",renderer:B,styles:V,template:Y})],r);r.define();function Q(t){const{className:e,text:n,maxCharacters:s,part:a}=t;return o(r,{part:a,class:e,text:n,maxCharacters:s})}export{Q as default};