@sap-ux/ui-components 1.14.0 → 1.14.1

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 (253) hide show
  1. package/dist/components/Icons.d.ts +150 -150
  2. package/dist/components/Icons.js +628 -628
  3. package/dist/components/UIActionCallout/UIActionCallout.d.ts +64 -64
  4. package/dist/components/UIActionCallout/UIActionCallout.js +67 -67
  5. package/dist/components/UIActionCallout/index.d.ts +1 -1
  6. package/dist/components/UIActionCallout/index.js +17 -17
  7. package/dist/components/UIBreadcrumb/UIBreadcrumb.d.ts +23 -23
  8. package/dist/components/UIBreadcrumb/UIBreadcrumb.js +38 -38
  9. package/dist/components/UIBreadcrumb/index.d.ts +1 -1
  10. package/dist/components/UIBreadcrumb/index.js +17 -17
  11. package/dist/components/UIButton/UIActionButton.d.ts +23 -23
  12. package/dist/components/UIButton/UIActionButton.js +89 -89
  13. package/dist/components/UIButton/UIDefaultButton.d.ts +41 -23
  14. package/dist/components/UIButton/UIDefaultButton.d.ts.map +1 -1
  15. package/dist/components/UIButton/UIDefaultButton.js +255 -237
  16. package/dist/components/UIButton/UIDefaultButton.js.map +1 -1
  17. package/dist/components/UIButton/UIIconButton.d.ts +37 -37
  18. package/dist/components/UIButton/UIIconButton.js +106 -106
  19. package/dist/components/UIButton/UISmallButton.d.ts +34 -34
  20. package/dist/components/UIButton/UISmallButton.js +115 -115
  21. package/dist/components/UIButton/UISplitButton.d.ts +44 -44
  22. package/dist/components/UIButton/UISplitButton.js +86 -86
  23. package/dist/components/UIButton/index.d.ts +7 -7
  24. package/dist/components/UIButton/index.js +21 -21
  25. package/dist/components/UICallout/CalloutCollisionTransform.d.ts +54 -54
  26. package/dist/components/UICallout/CalloutCollisionTransform.js +160 -160
  27. package/dist/components/UICallout/UICallout.d.ts +48 -48
  28. package/dist/components/UICallout/UICallout.js +122 -122
  29. package/dist/components/UICallout/index.d.ts +2 -2
  30. package/dist/components/UICallout/index.js +18 -18
  31. package/dist/components/UICheckbox/UICheckbox.d.ts +34 -34
  32. package/dist/components/UICheckbox/UICheckbox.js +135 -135
  33. package/dist/components/UICheckbox/index.d.ts +1 -1
  34. package/dist/components/UICheckbox/index.js +17 -17
  35. package/dist/components/UIChoiceGroup/UIChoiceGroup.d.ts +28 -28
  36. package/dist/components/UIChoiceGroup/UIChoiceGroup.js +182 -182
  37. package/dist/components/UIChoiceGroup/index.d.ts +1 -1
  38. package/dist/components/UIChoiceGroup/index.js +17 -17
  39. package/dist/components/UIComboBox/UIComboBox.d.ts +208 -208
  40. package/dist/components/UIComboBox/UIComboBox.js +563 -563
  41. package/dist/components/UIComboBox/index.d.ts +1 -1
  42. package/dist/components/UIComboBox/index.js +17 -17
  43. package/dist/components/UIContextualMenu/UIContextualMenu.d.ts +31 -31
  44. package/dist/components/UIContextualMenu/UIContextualMenu.js +126 -126
  45. package/dist/components/UIContextualMenu/UIHighlightMenuOption.d.ts +19 -19
  46. package/dist/components/UIContextualMenu/UIHighlightMenuOption.js +50 -50
  47. package/dist/components/UIContextualMenu/index.d.ts +2 -2
  48. package/dist/components/UIContextualMenu/index.js +18 -18
  49. package/dist/components/UICreateSelect/UICreateSelect.d.ts +36 -36
  50. package/dist/components/UICreateSelect/UICreateSelect.js +172 -172
  51. package/dist/components/UICreateSelect/index.d.ts +1 -1
  52. package/dist/components/UICreateSelect/index.js +17 -17
  53. package/dist/components/UIDatePicker/UIDatePicker.d.ts +49 -49
  54. package/dist/components/UIDatePicker/UIDatePicker.js +72 -72
  55. package/dist/components/UIDatePicker/index.d.ts +1 -1
  56. package/dist/components/UIDatePicker/index.js +17 -17
  57. package/dist/components/UIDialog/UIDialog.d.ts +118 -118
  58. package/dist/components/UIDialog/UIDialog.js +281 -281
  59. package/dist/components/UIDialog/index.d.ts +1 -1
  60. package/dist/components/UIDialog/index.js +17 -17
  61. package/dist/components/UIDropdown/UIDropdown.d.ts +94 -94
  62. package/dist/components/UIDropdown/UIDropdown.js +224 -224
  63. package/dist/components/UIDropdown/index.d.ts +2 -2
  64. package/dist/components/UIDropdown/index.js +18 -18
  65. package/dist/components/UIDropdown/utils.d.ts +20 -20
  66. package/dist/components/UIDropdown/utils.js +43 -43
  67. package/dist/components/UIFlexibleTable/RowActions.d.ts +16 -16
  68. package/dist/components/UIFlexibleTable/RowActions.js +73 -73
  69. package/dist/components/UIFlexibleTable/RowData.d.ts +16 -16
  70. package/dist/components/UIFlexibleTable/RowData.js +111 -111
  71. package/dist/components/UIFlexibleTable/UIFlexibleTable.d.ts +11 -11
  72. package/dist/components/UIFlexibleTable/UIFlexibleTable.js +280 -280
  73. package/dist/components/UIFlexibleTable/UIFlexibleTableActionButton.d.ts +20 -20
  74. package/dist/components/UIFlexibleTable/UIFlexibleTableActionButton.js +20 -20
  75. package/dist/components/UIFlexibleTable/UIFlexibleTableRow.d.ts +26 -26
  76. package/dist/components/UIFlexibleTable/UIFlexibleTableRow.js +219 -219
  77. package/dist/components/UIFlexibleTable/UIFlexibleTableRowActionButton.d.ts +20 -20
  78. package/dist/components/UIFlexibleTable/UIFlexibleTableRowActionButton.js +19 -19
  79. package/dist/components/UIFlexibleTable/UIFlexibleTableRowNoData.d.ts +15 -15
  80. package/dist/components/UIFlexibleTable/UIFlexibleTableRowNoData.js +28 -28
  81. package/dist/components/UIFlexibleTable/index.d.ts +5 -5
  82. package/dist/components/UIFlexibleTable/index.js +21 -21
  83. package/dist/components/UIFlexibleTable/types.d.ts +143 -143
  84. package/dist/components/UIFlexibleTable/types.js +14 -14
  85. package/dist/components/UIFlexibleTable/utils.d.ts +25 -25
  86. package/dist/components/UIFlexibleTable/utils.js +49 -49
  87. package/dist/components/UIFocusZone/UIFocusTrapZone.d.ts +22 -22
  88. package/dist/components/UIFocusZone/UIFocusTrapZone.js +33 -33
  89. package/dist/components/UIFocusZone/UIFocusZone.d.ts +23 -23
  90. package/dist/components/UIFocusZone/UIFocusZone.js +35 -35
  91. package/dist/components/UIFocusZone/index.d.ts +2 -2
  92. package/dist/components/UIFocusZone/index.js +18 -18
  93. package/dist/components/UIIcon/UIIcon.d.ts +24 -24
  94. package/dist/components/UIIcon/UIIcon.js +37 -37
  95. package/dist/components/UIIcon/index.d.ts +1 -1
  96. package/dist/components/UIIcon/index.js +17 -17
  97. package/dist/components/UIInput/UITextInput.d.ts +51 -51
  98. package/dist/components/UIInput/UITextInput.js +244 -244
  99. package/dist/components/UIInput/index.d.ts +1 -1
  100. package/dist/components/UIInput/index.js +17 -17
  101. package/dist/components/UILabel/UILabel.d.ts +30 -30
  102. package/dist/components/UILabel/UILabel.js +64 -64
  103. package/dist/components/UILabel/index.d.ts +1 -1
  104. package/dist/components/UILabel/index.js +17 -17
  105. package/dist/components/UILink/UILink.d.ts +25 -25
  106. package/dist/components/UILink/UILink.js +71 -71
  107. package/dist/components/UILink/index.d.ts +1 -1
  108. package/dist/components/UILink/index.js +17 -17
  109. package/dist/components/UIList/UIList.d.ts +31 -31
  110. package/dist/components/UIList/UIList.js +120 -120
  111. package/dist/components/UIList/index.d.ts +1 -1
  112. package/dist/components/UIList/index.js +17 -17
  113. package/dist/components/UILoader/UILoader.d.ts +27 -27
  114. package/dist/components/UILoader/UILoader.js +78 -78
  115. package/dist/components/UILoader/index.d.ts +1 -1
  116. package/dist/components/UILoader/index.js +17 -17
  117. package/dist/components/UIMessageBar/UIMessageBar.d.ts +25 -25
  118. package/dist/components/UIMessageBar/UIMessageBar.js +56 -56
  119. package/dist/components/UIMessageBar/index.d.ts +1 -1
  120. package/dist/components/UIMessageBar/index.js +17 -17
  121. package/dist/components/UIModal/UIModal.d.ts +23 -23
  122. package/dist/components/UIModal/UIModal.js +43 -43
  123. package/dist/components/UIModal/index.d.ts +1 -1
  124. package/dist/components/UIModal/index.js +17 -17
  125. package/dist/components/UIOverlay/UIOverlay.d.ts +22 -22
  126. package/dist/components/UIOverlay/UIOverlay.js +38 -38
  127. package/dist/components/UIOverlay/index.d.ts +1 -1
  128. package/dist/components/UIOverlay/index.js +17 -17
  129. package/dist/components/UIPersona/UIPersona.d.ts +27 -27
  130. package/dist/components/UIPersona/UIPersona.js +48 -48
  131. package/dist/components/UIPersona/index.d.ts +1 -1
  132. package/dist/components/UIPersona/index.js +17 -17
  133. package/dist/components/UISearchBox/UISearchBox.d.ts +22 -22
  134. package/dist/components/UISearchBox/UISearchBox.js +155 -155
  135. package/dist/components/UISearchBox/index.d.ts +3 -3
  136. package/dist/components/UISearchBox/index.js +17 -17
  137. package/dist/components/UISection/UISection.d.ts +34 -34
  138. package/dist/components/UISection/UISection.js +44 -44
  139. package/dist/components/UISection/UISections.d.ts +249 -249
  140. package/dist/components/UISection/UISections.js +707 -707
  141. package/dist/components/UISection/UISplitter.d.ts +96 -96
  142. package/dist/components/UISection/UISplitter.js +220 -220
  143. package/dist/components/UISection/index.d.ts +3 -3
  144. package/dist/components/UISection/index.js +19 -19
  145. package/dist/components/UISeparator/UISeparator.d.ts +25 -25
  146. package/dist/components/UISeparator/UISeparator.js +65 -65
  147. package/dist/components/UISeparator/index.d.ts +1 -1
  148. package/dist/components/UISeparator/index.js +17 -17
  149. package/dist/components/UITable/UITable-helper.d.ts +88 -88
  150. package/dist/components/UITable/UITable-helper.js +263 -263
  151. package/dist/components/UITable/UITable.d.ts +213 -213
  152. package/dist/components/UITable/UITable.js +779 -779
  153. package/dist/components/UITable/index.d.ts +2 -2
  154. package/dist/components/UITable/index.js +18 -18
  155. package/dist/components/UITable/types.d.ts +77 -77
  156. package/dist/components/UITable/types.js +28 -28
  157. package/dist/components/UITabs/UITabs.d.ts +28 -28
  158. package/dist/components/UITabs/UITabs.js +70 -70
  159. package/dist/components/UITabs/index.d.ts +1 -1
  160. package/dist/components/UITabs/index.js +17 -17
  161. package/dist/components/UIToggle/UIToggle.d.ts +39 -39
  162. package/dist/components/UIToggle/UIToggle.js +181 -181
  163. package/dist/components/UIToggle/index.d.ts +1 -1
  164. package/dist/components/UIToggle/index.js +17 -17
  165. package/dist/components/UIToggleGroup/UIToggleGroup.d.ts +31 -31
  166. package/dist/components/UIToggleGroup/UIToggleGroup.js +139 -139
  167. package/dist/components/UIToggleGroup/UIToggleGroup.types.d.ts +22 -22
  168. package/dist/components/UIToggleGroup/UIToggleGroup.types.js +2 -2
  169. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.d.ts +25 -25
  170. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.js +77 -77
  171. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.types.d.ts +10 -10
  172. package/dist/components/UIToggleGroup/UIToggleGroupOption/UIToggleGroupOption.types.js +2 -2
  173. package/dist/components/UIToggleGroup/UIToggleGroupOption/index.d.ts +2 -2
  174. package/dist/components/UIToggleGroup/UIToggleGroupOption/index.js +18 -18
  175. package/dist/components/UIToggleGroup/index.d.ts +2 -2
  176. package/dist/components/UIToggleGroup/index.js +18 -18
  177. package/dist/components/UIToolbar/UIToolbar.d.ts +36 -36
  178. package/dist/components/UIToolbar/UIToolbar.js +104 -104
  179. package/dist/components/UIToolbar/UIToolbarColumn.d.ts +7 -7
  180. package/dist/components/UIToolbar/UIToolbarColumn.js +33 -33
  181. package/dist/components/UIToolbar/UIToolbarDivider.d.ts +27 -27
  182. package/dist/components/UIToolbar/UIToolbarDivider.js +52 -52
  183. package/dist/components/UIToolbar/index.d.ts +3 -3
  184. package/dist/components/UIToolbar/index.js +19 -19
  185. package/dist/components/UITooltip/UITooltip.d.ts +29 -29
  186. package/dist/components/UITooltip/UITooltip.js +77 -77
  187. package/dist/components/UITooltip/UITooltipUtils.d.ts +17 -17
  188. package/dist/components/UITooltip/UITooltipUtils.js +45 -45
  189. package/dist/components/UITooltip/index.d.ts +2 -2
  190. package/dist/components/UITooltip/index.js +18 -18
  191. package/dist/components/UITranslationInput/UIFormattedText.d.ts +46 -46
  192. package/dist/components/UITranslationInput/UIFormattedText.js +121 -121
  193. package/dist/components/UITranslationInput/UILoadButton.d.ts +52 -52
  194. package/dist/components/UITranslationInput/UILoadButton.js +109 -109
  195. package/dist/components/UITranslationInput/UITranslationButton.d.ts +14 -14
  196. package/dist/components/UITranslationInput/UITranslationButton.js +88 -88
  197. package/dist/components/UITranslationInput/UITranslationButton.types.d.ts +67 -67
  198. package/dist/components/UITranslationInput/UITranslationButton.types.js +21 -21
  199. package/dist/components/UITranslationInput/UITranslationInput.d.ts +25 -25
  200. package/dist/components/UITranslationInput/UITranslationInput.js +169 -169
  201. package/dist/components/UITranslationInput/UITranslationUtils.d.ts +64 -64
  202. package/dist/components/UITranslationInput/UITranslationUtils.js +168 -168
  203. package/dist/components/UITranslationInput/defaults.d.ts +2 -2
  204. package/dist/components/UITranslationInput/defaults.js +15 -15
  205. package/dist/components/UITranslationInput/index.d.ts +2 -2
  206. package/dist/components/UITranslationInput/index.js +18 -18
  207. package/dist/components/UITreeDropdown/UITreeDropdown.d.ts +265 -265
  208. package/dist/components/UITreeDropdown/UITreeDropdown.js +660 -660
  209. package/dist/components/UITreeDropdown/index.d.ts +1 -1
  210. package/dist/components/UITreeDropdown/index.js +17 -17
  211. package/dist/components/UIVerticalDivider/UIVerticalDivider.d.ts +23 -23
  212. package/dist/components/UIVerticalDivider/UIVerticalDivider.js +41 -41
  213. package/dist/components/UIVerticalDivider/index.d.ts +1 -1
  214. package/dist/components/UIVerticalDivider/index.js +17 -17
  215. package/dist/components/UIVirtualList/UIAutoSizer.d.ts +22 -22
  216. package/dist/components/UIVirtualList/UIAutoSizer.js +33 -33
  217. package/dist/components/UIVirtualList/UICellMeasurer.d.ts +23 -23
  218. package/dist/components/UIVirtualList/UICellMeasurer.js +33 -33
  219. package/dist/components/UIVirtualList/UIVirtualList.d.ts +43 -43
  220. package/dist/components/UIVirtualList/UIVirtualList.js +70 -70
  221. package/dist/components/UIVirtualList/index.d.ts +3 -3
  222. package/dist/components/UIVirtualList/index.js +19 -19
  223. package/dist/components/index.d.ts +38 -38
  224. package/dist/components/index.js +54 -54
  225. package/dist/helper/ValidationMessage/MessageWrapper.d.ts +17 -17
  226. package/dist/helper/ValidationMessage/MessageWrapper.js +34 -34
  227. package/dist/helper/ValidationMessage/index.d.ts +2 -2
  228. package/dist/helper/ValidationMessage/index.js +18 -18
  229. package/dist/helper/ValidationMessage/utils.d.ts +31 -31
  230. package/dist/helper/ValidationMessage/utils.js +121 -121
  231. package/dist/index.d.ts +2 -2
  232. package/dist/index.js +18 -18
  233. package/dist/utilities/DeepMerge.d.ts +10 -10
  234. package/dist/utilities/DeepMerge.js +48 -48
  235. package/dist/utilities/Dom.d.ts +14 -14
  236. package/dist/utilities/Dom.js +23 -23
  237. package/dist/utilities/Focus.d.ts +14 -14
  238. package/dist/utilities/Focus.js +34 -34
  239. package/dist/utilities/Id.d.ts +2 -2
  240. package/dist/utilities/Id.js +5 -5
  241. package/dist/utilities/Keys.d.ts +2 -2
  242. package/dist/utilities/Keys.js +5 -5
  243. package/dist/utilities/index.d.ts +4 -4
  244. package/dist/utilities/index.js +20 -20
  245. package/package.json +1 -1
  246. package/storybook/494.d8aaa4d7.iframe.bundle.js +1 -0
  247. package/storybook/{930.1b3c5615.iframe.bundle.js → 930.3177b0dc.iframe.bundle.js} +2 -2
  248. package/storybook/iframe.html +3 -3
  249. package/storybook/main.5f68bcca.iframe.bundle.js +1 -0
  250. package/storybook/project.json +1 -1
  251. package/storybook/{runtime~main.f52a1710.iframe.bundle.js → runtime~main.a213c0ae.iframe.bundle.js} +1 -1
  252. package/storybook/494.b98920dd.iframe.bundle.js +0 -1
  253. package/storybook/main.4ed99289.iframe.bundle.js +0 -1
@@ -1,169 +1,169 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getTranslationByText = exports.getTranslationByKey = exports.applyI18nPattern = exports.generateI18nKey = exports.convertToPascalCase = exports.convertToCamelCase = exports.extractI18nKey = void 0;
4
- const UITranslationButton_types_1 = require("./UITranslationButton.types");
5
- /**
6
- * Method extracts i18n binding and returns key of i18n entry.
7
- *
8
- * @param value Binding value.
9
- * @param patterns Check if method should resolve syntax annotation based i18n binding.
10
- * @param prefixes Allowed prefixes for single bracket pattern.
11
- * @returns {string | undefined} I18n entry key or undefined if input does not matches i18n binding pattern.
12
- */
13
- const extractI18nKey = (value, patterns, prefixes) => {
14
- let key;
15
- for (const pattern of patterns) {
16
- if (pattern === UITranslationButton_types_1.TranslationTextPattern.SingleBracketBinding) {
17
- for (const prefix of prefixes) {
18
- const i18nMatch = value.toString().match(`^{${prefix}>([^\\{}:]+)}$`);
19
- if (i18nMatch?.[1]) {
20
- key = i18nMatch?.[1];
21
- }
22
- }
23
- }
24
- else if (pattern === UITranslationButton_types_1.TranslationTextPattern.DoubleBracketReplace && value.match(`^{{[^\\{}:]+}}$`)) {
25
- key = value.toString().substring(2, value.length - 2);
26
- }
27
- }
28
- return key;
29
- };
30
- exports.extractI18nKey = extractI18nKey;
31
- /**
32
- * Convert to camel case.
33
- * It gets input like 'product details info' and convert it to 'productDetailsInfo'.
34
- *
35
- * @param input Value to convert.
36
- * @param maxWord Maximal cxount of words to convert.
37
- * @returns Canverted value.
38
- */
39
- const convertToCamelCase = (input = '', maxWord = 4) => {
40
- let output = '';
41
- const parts = input
42
- .replace(/[^a-zA-Z0-9 ]/g, '')
43
- .trim()
44
- .split(' ');
45
- const len = parts.length >= maxWord ? maxWord : parts.length;
46
- for (let i = 0; len > i; i++) {
47
- const part = parts[i];
48
- if (i === 0) {
49
- output += part.toLowerCase();
50
- }
51
- else {
52
- const initial = part.charAt(0).toUpperCase();
53
- const rest = part.substring(1).toLowerCase();
54
- output += `${initial}${rest}`;
55
- }
56
- }
57
- return output;
58
- };
59
- exports.convertToCamelCase = convertToCamelCase;
60
- /**
61
- * Convert to pascal case.
62
- * It gets input like 'product details info' and convert it to 'ProductDetailsInfo'.
63
- *
64
- * @param input Value to convert.
65
- * @param maxWord Maximal cxount of words to convert.
66
- * @returns Canverted value.
67
- */
68
- const convertToPascalCase = (input, maxWord = 4) => {
69
- let output = '';
70
- const parts = input
71
- .replace(/[^a-zA-Z0-9 ]/g, '')
72
- .trim()
73
- .split(' ');
74
- const len = parts.length >= maxWord ? maxWord : parts.length;
75
- for (let i = 0; len > i; i++) {
76
- const part = parts[i];
77
- const initial = part.charAt(0).toUpperCase();
78
- const rest = part.substring(1).toLowerCase();
79
- output += `${initial}${rest}`;
80
- }
81
- return output;
82
- };
83
- exports.convertToPascalCase = convertToPascalCase;
84
- /**
85
- * Get unique key.
86
- * If the key is not unique, it increment key by one and recheck.
87
- *
88
- * @param key new key and it is incremented.
89
- * @param i18nData I18n entries.
90
- * @param originalKey original key without any index increment.
91
- * @param counter counter for increment.
92
- * @returns Generated i18n key.
93
- */
94
- const getI18nUniqueKey = (key, i18nData, originalKey = key, counter = 1) => {
95
- const uniqueKey = key;
96
- if (i18nData[key] !== undefined) {
97
- key = `${originalKey}${counter}`;
98
- counter++;
99
- return getI18nUniqueKey(key, i18nData, originalKey, counter);
100
- }
101
- return uniqueKey;
102
- };
103
- /**
104
- * Generates a unique i18n key for the text.
105
- * It considers currently active bundle and translation key generator.
106
- *
107
- * @param text
108
- * @param translationKeyGenerator
109
- * @param bundle
110
- * @returns Generated i18n key.
111
- */
112
- function generateI18nKey(text, translationKeyGenerator, bundle) {
113
- let key = translationKeyGenerator === UITranslationButton_types_1.TranslationKeyGenerator.CamelCase
114
- ? (0, exports.convertToCamelCase)(text)
115
- : (0, exports.convertToPascalCase)(text);
116
- if (key === '') {
117
- key = translationKeyGenerator === UITranslationButton_types_1.TranslationKeyGenerator.CamelCase ? 'key' : 'Key';
118
- }
119
- return getI18nUniqueKey(key, bundle);
120
- }
121
- exports.generateI18nKey = generateI18nKey;
122
- /**
123
- * Method to apply passed pattern for passed key.
124
- *
125
- * @param key I18n key.
126
- * @param pattern I18n pattern.
127
- * @param prefix Prefix for single bracket pattern.
128
- * @returns Generated i18n value for passed pattern.
129
- */
130
- const applyI18nPattern = (key, pattern, prefix) => {
131
- return pattern === UITranslationButton_types_1.TranslationTextPattern.DoubleBracketReplace ? `{{${key}}}` : `{${prefix}>${key}}`;
132
- };
133
- exports.applyI18nPattern = applyI18nPattern;
134
- /**
135
- * Method finds first existing i18n key searching by key.
136
- *
137
- * @param {I18nBundle} bundle Search for value.
138
- * @param {string} key Search for key.
139
- * @returns {TranslationEntry | undefined} Key if value is found.
140
- */
141
- const getTranslationByKey = (bundle, key) => {
142
- const entries = bundle[key];
143
- if (entries?.length > 0) {
144
- return entries[0];
145
- }
146
- return undefined;
147
- };
148
- exports.getTranslationByKey = getTranslationByKey;
149
- /**
150
- * Method finds existing i18n key searching by value.
151
- *
152
- * @param {I18nBundle} bundle Search for value.
153
- * @param {string} value Search for value.
154
- * @returns {TranslationEntry | undefined} Key if value is found.
155
- */
156
- const getTranslationByText = (bundle, value) => {
157
- for (const key in bundle) {
158
- const entries = bundle[key];
159
- if (entries.length) {
160
- const first = entries[0];
161
- if (first.value.value === value) {
162
- return first;
163
- }
164
- }
165
- }
166
- return undefined;
167
- };
168
- exports.getTranslationByText = getTranslationByText;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getTranslationByText = exports.getTranslationByKey = exports.applyI18nPattern = exports.generateI18nKey = exports.convertToPascalCase = exports.convertToCamelCase = exports.extractI18nKey = void 0;
4
+ const UITranslationButton_types_1 = require("./UITranslationButton.types");
5
+ /**
6
+ * Method extracts i18n binding and returns key of i18n entry.
7
+ *
8
+ * @param value Binding value.
9
+ * @param patterns Check if method should resolve syntax annotation based i18n binding.
10
+ * @param prefixes Allowed prefixes for single bracket pattern.
11
+ * @returns {string | undefined} I18n entry key or undefined if input does not matches i18n binding pattern.
12
+ */
13
+ const extractI18nKey = (value, patterns, prefixes) => {
14
+ let key;
15
+ for (const pattern of patterns) {
16
+ if (pattern === UITranslationButton_types_1.TranslationTextPattern.SingleBracketBinding) {
17
+ for (const prefix of prefixes) {
18
+ const i18nMatch = value.toString().match(`^{${prefix}>([^\\{}:]+)}$`);
19
+ if (i18nMatch?.[1]) {
20
+ key = i18nMatch?.[1];
21
+ }
22
+ }
23
+ }
24
+ else if (pattern === UITranslationButton_types_1.TranslationTextPattern.DoubleBracketReplace && value.match(`^{{[^\\{}:]+}}$`)) {
25
+ key = value.toString().substring(2, value.length - 2);
26
+ }
27
+ }
28
+ return key;
29
+ };
30
+ exports.extractI18nKey = extractI18nKey;
31
+ /**
32
+ * Convert to camel case.
33
+ * It gets input like 'product details info' and convert it to 'productDetailsInfo'.
34
+ *
35
+ * @param input Value to convert.
36
+ * @param maxWord Maximal cxount of words to convert.
37
+ * @returns Canverted value.
38
+ */
39
+ const convertToCamelCase = (input = '', maxWord = 4) => {
40
+ let output = '';
41
+ const parts = input
42
+ .replace(/[^a-zA-Z0-9 ]/g, '')
43
+ .trim()
44
+ .split(' ');
45
+ const len = parts.length >= maxWord ? maxWord : parts.length;
46
+ for (let i = 0; len > i; i++) {
47
+ const part = parts[i];
48
+ if (i === 0) {
49
+ output += part.toLowerCase();
50
+ }
51
+ else {
52
+ const initial = part.charAt(0).toUpperCase();
53
+ const rest = part.substring(1).toLowerCase();
54
+ output += `${initial}${rest}`;
55
+ }
56
+ }
57
+ return output;
58
+ };
59
+ exports.convertToCamelCase = convertToCamelCase;
60
+ /**
61
+ * Convert to pascal case.
62
+ * It gets input like 'product details info' and convert it to 'ProductDetailsInfo'.
63
+ *
64
+ * @param input Value to convert.
65
+ * @param maxWord Maximal cxount of words to convert.
66
+ * @returns Canverted value.
67
+ */
68
+ const convertToPascalCase = (input, maxWord = 4) => {
69
+ let output = '';
70
+ const parts = input
71
+ .replace(/[^a-zA-Z0-9 ]/g, '')
72
+ .trim()
73
+ .split(' ');
74
+ const len = parts.length >= maxWord ? maxWord : parts.length;
75
+ for (let i = 0; len > i; i++) {
76
+ const part = parts[i];
77
+ const initial = part.charAt(0).toUpperCase();
78
+ const rest = part.substring(1).toLowerCase();
79
+ output += `${initial}${rest}`;
80
+ }
81
+ return output;
82
+ };
83
+ exports.convertToPascalCase = convertToPascalCase;
84
+ /**
85
+ * Get unique key.
86
+ * If the key is not unique, it increment key by one and recheck.
87
+ *
88
+ * @param key new key and it is incremented.
89
+ * @param i18nData I18n entries.
90
+ * @param originalKey original key without any index increment.
91
+ * @param counter counter for increment.
92
+ * @returns Generated i18n key.
93
+ */
94
+ const getI18nUniqueKey = (key, i18nData, originalKey = key, counter = 1) => {
95
+ const uniqueKey = key;
96
+ if (i18nData[key] !== undefined) {
97
+ key = `${originalKey}${counter}`;
98
+ counter++;
99
+ return getI18nUniqueKey(key, i18nData, originalKey, counter);
100
+ }
101
+ return uniqueKey;
102
+ };
103
+ /**
104
+ * Generates a unique i18n key for the text.
105
+ * It considers currently active bundle and translation key generator.
106
+ *
107
+ * @param text
108
+ * @param translationKeyGenerator
109
+ * @param bundle
110
+ * @returns Generated i18n key.
111
+ */
112
+ function generateI18nKey(text, translationKeyGenerator, bundle) {
113
+ let key = translationKeyGenerator === UITranslationButton_types_1.TranslationKeyGenerator.CamelCase
114
+ ? (0, exports.convertToCamelCase)(text)
115
+ : (0, exports.convertToPascalCase)(text);
116
+ if (key === '') {
117
+ key = translationKeyGenerator === UITranslationButton_types_1.TranslationKeyGenerator.CamelCase ? 'key' : 'Key';
118
+ }
119
+ return getI18nUniqueKey(key, bundle);
120
+ }
121
+ exports.generateI18nKey = generateI18nKey;
122
+ /**
123
+ * Method to apply passed pattern for passed key.
124
+ *
125
+ * @param key I18n key.
126
+ * @param pattern I18n pattern.
127
+ * @param prefix Prefix for single bracket pattern.
128
+ * @returns Generated i18n value for passed pattern.
129
+ */
130
+ const applyI18nPattern = (key, pattern, prefix) => {
131
+ return pattern === UITranslationButton_types_1.TranslationTextPattern.DoubleBracketReplace ? `{{${key}}}` : `{${prefix}>${key}}`;
132
+ };
133
+ exports.applyI18nPattern = applyI18nPattern;
134
+ /**
135
+ * Method finds first existing i18n key searching by key.
136
+ *
137
+ * @param {I18nBundle} bundle Search for value.
138
+ * @param {string} key Search for key.
139
+ * @returns {TranslationEntry | undefined} Key if value is found.
140
+ */
141
+ const getTranslationByKey = (bundle, key) => {
142
+ const entries = bundle[key];
143
+ if (entries?.length > 0) {
144
+ return entries[0];
145
+ }
146
+ return undefined;
147
+ };
148
+ exports.getTranslationByKey = getTranslationByKey;
149
+ /**
150
+ * Method finds existing i18n key searching by value.
151
+ *
152
+ * @param {I18nBundle} bundle Search for value.
153
+ * @param {string} value Search for value.
154
+ * @returns {TranslationEntry | undefined} Key if value is found.
155
+ */
156
+ const getTranslationByText = (bundle, value) => {
157
+ for (const key in bundle) {
158
+ const entries = bundle[key];
159
+ if (entries.length) {
160
+ const first = entries[0];
161
+ if (first.value.value === value) {
162
+ return first;
163
+ }
164
+ }
165
+ }
166
+ return undefined;
167
+ };
168
+ exports.getTranslationByText = getTranslationByText;
169
169
  //# sourceMappingURL=UITranslationUtils.js.map
@@ -1,3 +1,3 @@
1
- import type { TranslationInputStrings } from './UITranslationButton.types';
2
- export declare const defaultTranslationInputStrings: TranslationInputStrings;
1
+ import type { TranslationInputStrings } from './UITranslationButton.types';
2
+ export declare const defaultTranslationInputStrings: TranslationInputStrings;
3
3
  //# sourceMappingURL=defaults.d.ts.map
@@ -1,16 +1,16 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.defaultTranslationInputStrings = void 0;
4
- exports.defaultTranslationInputStrings = {
5
- acceptButtonLabel: 'Apply',
6
- cancelButtonLabel: 'Cancel',
7
- i18nKeyMissingTooltip: 'Text key or value is not available in i18n file.',
8
- i18nKeyMissingDescription: 'Generate a text key {{{key}}} with value {{{value}}} in i18n file.',
9
- i18nValueMissingTooltip: 'Text key or value for {{{value}}} is not available in i18n file.',
10
- i18nValueMissingDescription: 'Generate a text key {{{key}}} in i18n file and substitute {{{value}}} by {{{i18n}}}.',
11
- i18nReplaceWithExistingTooltip: 'Text key {{{key}}} for value {{{value}}} is available in i18n file. \nConsider substituting {{{value}}} by {{{i18n}}}.',
12
- i18nReplaceWithExistingDescription: 'Text key {{{key}}} for value {{{value}}} is available in i18n file.Substitute {{{value}}} by {{{i18n}}}.',
13
- i18nEntryExistsTooltip: 'Edit in source file',
14
- i18nEntryExistsInputTooltip: "Value: '{{{value}}}'.\nTranslation: '{{{translation}}}'."
15
- };
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defaultTranslationInputStrings = void 0;
4
+ exports.defaultTranslationInputStrings = {
5
+ acceptButtonLabel: 'Apply',
6
+ cancelButtonLabel: 'Cancel',
7
+ i18nKeyMissingTooltip: 'Text key or value is not available in i18n file.',
8
+ i18nKeyMissingDescription: 'Generate a text key {{{key}}} with value {{{value}}} in i18n file.',
9
+ i18nValueMissingTooltip: 'Text key or value for {{{value}}} is not available in i18n file.',
10
+ i18nValueMissingDescription: 'Generate a text key {{{key}}} in i18n file and substitute {{{value}}} by {{{i18n}}}.',
11
+ i18nReplaceWithExistingTooltip: 'Text key {{{key}}} for value {{{value}}} is available in i18n file. \nConsider substituting {{{value}}} by {{{i18n}}}.',
12
+ i18nReplaceWithExistingDescription: 'Text key {{{key}}} for value {{{value}}} is available in i18n file.Substitute {{{value}}} by {{{i18n}}}.',
13
+ i18nEntryExistsTooltip: 'Edit in source file',
14
+ i18nEntryExistsInputTooltip: "Value: '{{{value}}}'.\nTranslation: '{{{translation}}}'."
15
+ };
16
16
  //# sourceMappingURL=defaults.js.map
@@ -1,3 +1,3 @@
1
- export * from './UITranslationInput';
2
- export * from './UITranslationButton.types';
1
+ export * from './UITranslationInput';
2
+ export * from './UITranslationButton.types';
3
3
  //# sourceMappingURL=index.d.ts.map
@@ -1,19 +1,19 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
- };
16
- Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./UITranslationInput"), exports);
18
- __exportStar(require("./UITranslationButton.types"), exports);
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./UITranslationInput"), exports);
18
+ __exportStar(require("./UITranslationButton.types"), exports);
19
19
  //# sourceMappingURL=index.js.map