@refinitiv-ui/elements 5.5.0 → 5.8.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 (328) hide show
  1. package/CHANGELOG.md +65 -8
  2. package/lib/accordion/custom-elements.md +18 -0
  3. package/lib/accordion/index.d.ts +5 -5
  4. package/lib/accordion/index.js +8 -11
  5. package/lib/appstate-bar/custom-elements.md +22 -0
  6. package/lib/appstate-bar/index.d.ts +5 -5
  7. package/lib/appstate-bar/index.js +8 -11
  8. package/lib/autosuggest/custom-elements.json +24 -4
  9. package/lib/autosuggest/custom-elements.md +54 -0
  10. package/lib/autosuggest/helpers/types.d.ts +1 -1
  11. package/lib/autosuggest/helpers/utils.d.ts +2 -2
  12. package/lib/autosuggest/helpers/utils.js +1 -2
  13. package/lib/autosuggest/index.d.ts +13 -8
  14. package/lib/autosuggest/index.js +38 -31
  15. package/lib/button/custom-elements.json +2 -2
  16. package/lib/button/custom-elements.md +23 -0
  17. package/lib/button/index.d.ts +13 -13
  18. package/lib/button/index.js +41 -31
  19. package/lib/button-bar/custom-elements.md +9 -0
  20. package/lib/button-bar/index.d.ts +3 -3
  21. package/lib/button-bar/index.js +8 -10
  22. package/lib/calendar/constants.d.ts +22 -0
  23. package/lib/calendar/constants.js +23 -0
  24. package/lib/calendar/custom-elements.json +8 -6
  25. package/lib/calendar/custom-elements.md +35 -0
  26. package/lib/calendar/index.d.ts +9 -7
  27. package/lib/calendar/index.js +20 -38
  28. package/lib/calendar/locales.d.ts +1 -31
  29. package/lib/calendar/locales.js +0 -104
  30. package/lib/calendar/types.d.ts +1 -5
  31. package/lib/calendar/types.js +1 -6
  32. package/lib/calendar/utils.d.ts +31 -1
  33. package/lib/calendar/utils.js +104 -2
  34. package/lib/canvas/custom-elements.json +7 -5
  35. package/lib/canvas/custom-elements.md +27 -0
  36. package/lib/canvas/index.d.ts +4 -3
  37. package/lib/canvas/index.js +8 -10
  38. package/lib/card/custom-elements.json +3 -1
  39. package/lib/card/custom-elements.md +24 -0
  40. package/lib/card/helpers/types.d.ts +1 -1
  41. package/lib/card/index.d.ts +10 -8
  42. package/lib/card/index.js +14 -13
  43. package/lib/chart/custom-elements.json +1 -1
  44. package/lib/chart/custom-elements.md +16 -0
  45. package/lib/chart/helpers/index.d.ts +2 -2
  46. package/lib/chart/helpers/index.js +2 -2
  47. package/lib/chart/index.d.ts +6 -6
  48. package/lib/chart/index.js +12 -14
  49. package/lib/checkbox/custom-elements.json +4 -4
  50. package/lib/checkbox/custom-elements.md +18 -0
  51. package/lib/checkbox/index.d.ts +21 -13
  52. package/lib/checkbox/index.js +56 -31
  53. package/lib/clock/custom-elements.json +21 -4
  54. package/lib/clock/custom-elements.md +28 -0
  55. package/lib/clock/index.d.ts +17 -5
  56. package/lib/clock/index.js +37 -18
  57. package/lib/clock/themes/halo/dark/index.js +1 -1
  58. package/lib/clock/themes/halo/light/index.js +1 -1
  59. package/lib/clock/themes/solar/charcoal/index.js +1 -1
  60. package/lib/clock/themes/solar/pearl/index.js +1 -1
  61. package/lib/clock/utils/TickManager.js +2 -2
  62. package/lib/collapse/custom-elements.md +27 -0
  63. package/lib/collapse/index.d.ts +7 -7
  64. package/lib/collapse/index.js +11 -13
  65. package/lib/color-dialog/custom-elements.json +29 -16
  66. package/lib/color-dialog/custom-elements.md +39 -0
  67. package/lib/color-dialog/elements/color-palettes.d.ts +5 -5
  68. package/lib/color-dialog/elements/color-palettes.js +8 -12
  69. package/lib/color-dialog/elements/grayscale-palettes.d.ts +5 -5
  70. package/lib/color-dialog/elements/grayscale-palettes.js +9 -12
  71. package/lib/color-dialog/elements/palettes.d.ts +3 -3
  72. package/lib/color-dialog/elements/palettes.js +49 -47
  73. package/lib/color-dialog/helpers/value-model.js +2 -2
  74. package/lib/color-dialog/index.d.ts +19 -19
  75. package/lib/color-dialog/index.js +36 -35
  76. package/lib/combo-box/custom-elements.json +28 -16
  77. package/lib/combo-box/custom-elements.md +35 -0
  78. package/lib/combo-box/helpers/filter.d.ts +4 -4
  79. package/lib/combo-box/helpers/types.d.ts +2 -2
  80. package/lib/combo-box/index.d.ts +26 -18
  81. package/lib/combo-box/index.js +36 -27
  82. package/lib/combo-box/themes/halo/dark/index.js +1 -1
  83. package/lib/combo-box/themes/halo/light/index.js +1 -1
  84. package/lib/combo-box/themes/solar/charcoal/index.js +1 -1
  85. package/lib/combo-box/themes/solar/pearl/index.js +1 -1
  86. package/lib/counter/custom-elements.json +8 -4
  87. package/lib/counter/custom-elements.md +11 -0
  88. package/lib/counter/index.d.ts +5 -3
  89. package/lib/counter/index.js +11 -12
  90. package/lib/datetime-picker/custom-elements.json +52 -23
  91. package/lib/datetime-picker/custom-elements.md +57 -0
  92. package/lib/datetime-picker/index.d.ts +25 -14
  93. package/lib/datetime-picker/index.js +46 -35
  94. package/lib/datetime-picker/locales.d.ts +1 -1
  95. package/lib/datetime-picker/locales.js +12 -1
  96. package/lib/datetime-picker/types.d.ts +1 -1
  97. package/lib/datetime-picker/utils.js +1 -1
  98. package/lib/dialog/custom-elements.json +34 -12
  99. package/lib/dialog/custom-elements.md +47 -0
  100. package/lib/dialog/index.d.ts +17 -20
  101. package/lib/dialog/index.js +28 -31
  102. package/lib/email-field/custom-elements.json +81 -94
  103. package/lib/email-field/custom-elements.md +37 -0
  104. package/lib/email-field/index.d.ts +44 -116
  105. package/lib/email-field/index.js +48 -249
  106. package/lib/events.d.ts +2 -2
  107. package/lib/events.js +1 -2
  108. package/lib/flag/custom-elements.md +10 -0
  109. package/lib/flag/index.d.ts +6 -4
  110. package/lib/flag/index.js +12 -12
  111. package/lib/flag/utils/FlagLoader.d.ts +1 -1
  112. package/lib/flag/utils/FlagLoader.js +1 -1
  113. package/lib/header/custom-elements.md +18 -0
  114. package/lib/header/index.d.ts +2 -2
  115. package/lib/header/index.js +5 -8
  116. package/lib/heatmap/custom-elements.md +26 -0
  117. package/lib/heatmap/helpers/color.d.ts +1 -1
  118. package/lib/heatmap/helpers/color.js +1 -1
  119. package/lib/heatmap/helpers/text.d.ts +1 -1
  120. package/lib/heatmap/index.d.ts +7 -7
  121. package/lib/heatmap/index.js +15 -16
  122. package/lib/icon/custom-elements.json +6 -4
  123. package/lib/icon/custom-elements.md +8 -0
  124. package/lib/icon/index.d.ts +9 -6
  125. package/lib/icon/index.js +28 -18
  126. package/lib/icon/utils/IconLoader.d.ts +6 -1
  127. package/lib/icon/utils/IconLoader.js +24 -17
  128. package/lib/index.d.ts +2 -1
  129. package/lib/index.js +2 -1
  130. package/lib/interactive-chart/custom-elements.json +6 -10
  131. package/lib/interactive-chart/custom-elements.md +31 -0
  132. package/lib/interactive-chart/helpers/types.d.ts +2 -2
  133. package/lib/interactive-chart/index.d.ts +11 -8
  134. package/lib/interactive-chart/index.js +17 -17
  135. package/lib/item/custom-elements.json +4 -4
  136. package/lib/item/custom-elements.md +29 -0
  137. package/lib/item/helpers/types.d.ts +1 -1
  138. package/lib/item/index.d.ts +18 -8
  139. package/lib/item/index.js +36 -16
  140. package/lib/label/custom-elements.md +11 -0
  141. package/lib/label/index.d.ts +3 -3
  142. package/lib/label/index.js +12 -20
  143. package/lib/layout/custom-elements.md +26 -0
  144. package/lib/layout/index.d.ts +3 -3
  145. package/lib/layout/index.js +6 -9
  146. package/lib/led-gauge/custom-elements.json +4 -4
  147. package/lib/led-gauge/custom-elements.md +17 -0
  148. package/lib/led-gauge/index.d.ts +5 -4
  149. package/lib/led-gauge/index.js +9 -11
  150. package/lib/list/custom-elements.json +18 -5
  151. package/lib/list/custom-elements.md +32 -0
  152. package/lib/list/helpers/list-renderer.d.ts +2 -2
  153. package/lib/list/helpers/list-renderer.js +4 -2
  154. package/lib/list/helpers/types.d.ts +2 -2
  155. package/lib/list/index.d.ts +27 -10
  156. package/lib/list/index.js +54 -25
  157. package/lib/list/renderer.d.ts +2 -2
  158. package/lib/list/renderer.js +1 -1
  159. package/lib/loader/custom-elements.md +5 -0
  160. package/lib/loader/index.js +4 -8
  161. package/lib/multi-input/custom-elements.json +7 -6
  162. package/lib/multi-input/custom-elements.md +43 -0
  163. package/lib/multi-input/helpers/types.d.ts +1 -1
  164. package/lib/multi-input/index.d.ts +11 -7
  165. package/lib/multi-input/index.js +20 -17
  166. package/lib/notification/custom-elements.md +26 -0
  167. package/lib/notification/elements/notification-tray.d.ts +2 -2
  168. package/lib/notification/elements/notification-tray.js +6 -9
  169. package/lib/notification/elements/notification.d.ts +5 -5
  170. package/lib/notification/elements/notification.js +8 -11
  171. package/lib/notification/helpers/status.d.ts +1 -1
  172. package/lib/notification/helpers/status.js +1 -1
  173. package/lib/notification/helpers/types.d.ts +1 -1
  174. package/lib/notification/index.d.ts +2 -2
  175. package/lib/notification/index.js +2 -2
  176. package/lib/number-field/custom-elements.json +99 -54
  177. package/lib/number-field/custom-elements.md +42 -0
  178. package/lib/number-field/index.d.ts +96 -51
  179. package/lib/number-field/index.js +121 -89
  180. package/lib/overlay/custom-elements.json +26 -13
  181. package/lib/overlay/custom-elements.md +54 -0
  182. package/lib/overlay/elements/overlay-backdrop.d.ts +4 -4
  183. package/lib/overlay/elements/overlay-backdrop.js +6 -9
  184. package/lib/overlay/elements/overlay-viewport.d.ts +3 -3
  185. package/lib/overlay/elements/overlay-viewport.js +5 -9
  186. package/lib/overlay/elements/overlay.d.ts +10 -5
  187. package/lib/overlay/elements/overlay.js +18 -23
  188. package/lib/overlay/index.d.ts +2 -2
  189. package/lib/overlay/index.js +1 -1
  190. package/lib/overlay/managers/backdrop-manager.d.ts +1 -1
  191. package/lib/overlay/managers/backdrop-manager.js +2 -2
  192. package/lib/overlay/managers/close-manager.js +1 -1
  193. package/lib/overlay/managers/focus-manager.js +2 -2
  194. package/lib/overlay/managers/interaction-lock-manager.js +2 -2
  195. package/lib/overlay/managers/viewport-manager.d.ts +2 -2
  196. package/lib/overlay/managers/viewport-manager.js +6 -2
  197. package/lib/overlay/managers/zindex-manager.js +1 -1
  198. package/lib/overlay-menu/custom-elements.json +70 -20
  199. package/lib/overlay-menu/custom-elements.md +44 -0
  200. package/lib/overlay-menu/helpers/types.d.ts +3 -3
  201. package/lib/overlay-menu/index.d.ts +21 -19
  202. package/lib/overlay-menu/index.js +32 -31
  203. package/lib/overlay-menu/managers/menu-manager.d.ts +2 -2
  204. package/lib/overlay-menu/managers/menu-manager.js +3 -3
  205. package/lib/pagination/custom-elements.md +27 -0
  206. package/lib/pagination/index.d.ts +8 -8
  207. package/lib/pagination/index.js +13 -15
  208. package/lib/panel/custom-elements.md +11 -0
  209. package/lib/panel/index.d.ts +3 -3
  210. package/lib/panel/index.js +6 -9
  211. package/lib/password-field/custom-elements.json +62 -67
  212. package/lib/password-field/custom-elements.md +39 -0
  213. package/lib/password-field/index.d.ts +43 -94
  214. package/lib/password-field/index.js +52 -198
  215. package/lib/pill/custom-elements.json +8 -6
  216. package/lib/pill/custom-elements.md +22 -0
  217. package/lib/pill/index.d.ts +5 -5
  218. package/lib/pill/index.js +9 -11
  219. package/lib/progress-bar/custom-elements.md +18 -0
  220. package/lib/progress-bar/index.d.ts +3 -3
  221. package/lib/progress-bar/index.js +7 -9
  222. package/lib/radio-button/custom-elements.json +4 -4
  223. package/lib/radio-button/custom-elements.md +19 -0
  224. package/lib/radio-button/index.d.ts +25 -8
  225. package/lib/radio-button/index.js +84 -21
  226. package/lib/radio-button/radio-button-registry.d.ts +3 -2
  227. package/lib/radio-button/radio-button-registry.js +57 -4
  228. package/lib/rating/custom-elements.md +17 -0
  229. package/lib/rating/index.d.ts +3 -3
  230. package/lib/rating/index.js +9 -10
  231. package/lib/search-field/custom-elements.json +70 -74
  232. package/lib/search-field/custom-elements.md +41 -0
  233. package/lib/search-field/index.d.ts +44 -101
  234. package/lib/search-field/index.js +50 -220
  235. package/lib/select/custom-elements.json +5 -4
  236. package/lib/select/custom-elements.md +24 -0
  237. package/lib/select/helpers/types.d.ts +1 -1
  238. package/lib/select/index.d.ts +18 -10
  239. package/lib/select/index.js +84 -45
  240. package/lib/sidebar-layout/custom-elements.json +2 -6
  241. package/lib/sidebar-layout/custom-elements.md +21 -0
  242. package/lib/sidebar-layout/index.d.ts +7 -6
  243. package/lib/sidebar-layout/index.js +9 -10
  244. package/lib/slider/custom-elements.json +4 -4
  245. package/lib/slider/custom-elements.md +28 -0
  246. package/lib/slider/index.d.ts +4 -4
  247. package/lib/slider/index.js +9 -10
  248. package/lib/sparkline/custom-elements.json +4 -4
  249. package/lib/sparkline/custom-elements.md +16 -0
  250. package/lib/sparkline/index.d.ts +6 -4
  251. package/lib/sparkline/index.js +10 -10
  252. package/lib/swing-gauge/custom-elements.json +5 -3
  253. package/lib/swing-gauge/custom-elements.md +17 -0
  254. package/lib/swing-gauge/helpers.d.ts +1 -1
  255. package/lib/swing-gauge/helpers.js +1 -1
  256. package/lib/swing-gauge/index.d.ts +9 -7
  257. package/lib/swing-gauge/index.js +17 -15
  258. package/lib/tab/custom-elements.json +2 -2
  259. package/lib/tab/custom-elements.md +22 -0
  260. package/lib/tab/index.d.ts +5 -5
  261. package/lib/tab/index.js +9 -12
  262. package/lib/tab-bar/custom-elements.md +11 -0
  263. package/lib/tab-bar/index.d.ts +4 -4
  264. package/lib/tab-bar/index.js +9 -11
  265. package/lib/text-field/custom-elements.json +78 -89
  266. package/lib/text-field/custom-elements.md +35 -0
  267. package/lib/text-field/index.d.ts +59 -79
  268. package/lib/text-field/index.js +99 -158
  269. package/lib/time-picker/custom-elements.json +4 -4
  270. package/lib/time-picker/custom-elements.md +28 -0
  271. package/lib/time-picker/index.d.ts +7 -4
  272. package/lib/time-picker/index.js +15 -14
  273. package/lib/toggle/custom-elements.json +4 -4
  274. package/lib/toggle/custom-elements.md +19 -0
  275. package/lib/toggle/index.d.ts +14 -4
  276. package/lib/toggle/index.js +31 -12
  277. package/lib/tooltip/custom-elements.md +14 -0
  278. package/lib/tooltip/elements/title-tooltip.js +2 -2
  279. package/lib/tooltip/elements/tooltip-element.d.ts +1 -1
  280. package/lib/tooltip/helpers/overflow-tooltip.d.ts +1 -1
  281. package/lib/tooltip/helpers/overflow-tooltip.js +1 -1
  282. package/lib/tooltip/helpers/renderer.d.ts +1 -1
  283. package/lib/tooltip/helpers/types.d.ts +1 -1
  284. package/lib/tooltip/index.d.ts +9 -9
  285. package/lib/tooltip/index.js +18 -20
  286. package/lib/tooltip/managers/tooltip-manager.d.ts +2 -2
  287. package/lib/tooltip/managers/tooltip-manager.js +3 -7
  288. package/lib/tornado-chart/custom-elements.md +18 -0
  289. package/lib/tornado-chart/elements/tornado-chart.d.ts +4 -4
  290. package/lib/tornado-chart/elements/tornado-chart.js +8 -11
  291. package/lib/tornado-chart/elements/tornado-item.d.ts +5 -5
  292. package/lib/tornado-chart/elements/tornado-item.js +10 -12
  293. package/lib/tornado-chart/index.d.ts +2 -2
  294. package/lib/tornado-chart/index.js +2 -2
  295. package/lib/tree/custom-elements.json +4 -3
  296. package/lib/tree/custom-elements.md +32 -0
  297. package/lib/tree/elements/tree-item.d.ts +4 -4
  298. package/lib/tree/elements/tree-item.js +10 -13
  299. package/lib/tree/elements/tree.d.ts +6 -5
  300. package/lib/tree/elements/tree.js +9 -12
  301. package/lib/tree/helpers/filter.d.ts +2 -2
  302. package/lib/tree/helpers/renderer.d.ts +2 -2
  303. package/lib/tree/helpers/renderer.js +3 -3
  304. package/lib/tree/helpers/types.d.ts +1 -1
  305. package/lib/tree/index.d.ts +4 -4
  306. package/lib/tree/index.js +3 -3
  307. package/lib/tree/managers/tree-manager.d.ts +22 -10
  308. package/lib/tree/managers/tree-manager.js +56 -40
  309. package/lib/tree/themes/halo/dark/index.js +1 -1
  310. package/lib/tree/themes/halo/light/index.js +1 -1
  311. package/lib/tree/themes/solar/charcoal/index.js +1 -1
  312. package/lib/tree/themes/solar/pearl/index.js +1 -1
  313. package/lib/tree-select/custom-elements.json +10 -6
  314. package/lib/tree-select/custom-elements.md +26 -0
  315. package/lib/tree-select/helpers/types.d.ts +2 -2
  316. package/lib/tree-select/index.d.ts +28 -20
  317. package/lib/tree-select/index.js +44 -31
  318. package/lib/tree-select/themes/halo/dark/index.js +1 -1
  319. package/lib/tree-select/themes/halo/light/index.js +1 -1
  320. package/lib/tree-select/themes/solar/charcoal/index.js +1 -1
  321. package/lib/tree-select/themes/solar/pearl/index.js +1 -1
  322. package/lib/version.d.ts +1 -0
  323. package/lib/version.js +1 -0
  324. package/package.json +298 -15
  325. package/lib/autosuggest/helpers/const.d.ts +0 -2
  326. package/lib/autosuggest/helpers/const.js +0 -3
  327. package/lib/overlay-menu/helpers/uuid.d.ts +0 -7
  328. package/lib/overlay-menu/helpers/uuid.js +0 -13
@@ -3,13 +3,8 @@
3
3
  "tags": [
4
4
  {
5
5
  "name": "ef-number-field",
6
- "description": "Form control element for numbers",
6
+ "description": "Form control element for numbers.",
7
7
  "attributes": [
8
- {
9
- "name": "placeholder",
10
- "description": "Set placeholder text",
11
- "type": "string | null"
12
- },
13
8
  {
14
9
  "name": "no-spinner",
15
10
  "description": "Set spinner's visibility",
@@ -32,26 +27,20 @@
32
27
  "type": "string | null"
33
28
  },
34
29
  {
35
- "name": "transparent",
36
- "description": "Set state to transparent",
30
+ "name": "disabled",
31
+ "description": "Set disabled state",
37
32
  "type": "boolean",
38
33
  "default": "false"
39
34
  },
40
35
  {
41
36
  "name": "error",
42
- "description": "Set state to error",
37
+ "description": "Set error state",
43
38
  "type": "boolean",
44
39
  "default": "false"
45
40
  },
46
41
  {
47
- "name": "warning",
48
- "description": "Set state to warning",
49
- "type": "boolean",
50
- "default": "false"
51
- },
52
- {
53
- "name": "value",
54
- "description": "The value of the number entered into the input.",
42
+ "name": "placeholder",
43
+ "description": "Set placeholder text",
55
44
  "type": "string",
56
45
  "default": "\"\""
57
46
  },
@@ -59,22 +48,28 @@
59
48
  "name": "readonly",
60
49
  "description": "Set readonly state",
61
50
  "type": "boolean",
62
- "default": "\"false\""
51
+ "default": "false"
63
52
  },
64
53
  {
65
- "name": "disabled",
66
- "description": "Set disabled state",
54
+ "name": "transparent",
55
+ "description": "Disables all other states and border/background styles.",
67
56
  "type": "boolean",
68
- "default": "\"false\""
57
+ "default": "false"
58
+ },
59
+ {
60
+ "name": "warning",
61
+ "description": "Set warning state",
62
+ "type": "boolean",
63
+ "default": "false"
64
+ },
65
+ {
66
+ "name": "value",
67
+ "description": "The value of the number entered into the input.",
68
+ "type": "string",
69
+ "default": "\"\""
69
70
  }
70
71
  ],
71
72
  "properties": [
72
- {
73
- "name": "placeholder",
74
- "attribute": "placeholder",
75
- "description": "Set placeholder text",
76
- "type": "string | null"
77
- },
78
73
  {
79
74
  "name": "noSpinner",
80
75
  "attribute": "no-spinner",
@@ -101,35 +96,40 @@
101
96
  "type": "string | null"
102
97
  },
103
98
  {
104
- "name": "transparent",
105
- "attribute": "transparent",
106
- "description": "Set state to transparent",
107
- "type": "boolean",
108
- "default": "false"
99
+ "name": "valueAsNumber (readonly)",
100
+ "description": "Returns the value of the element, interpreted as double number",
101
+ "type": "number"
109
102
  },
110
103
  {
111
- "name": "error",
112
- "attribute": "error",
113
- "description": "Set state to error",
114
- "type": "boolean",
115
- "default": "false"
104
+ "name": "selectionStart",
105
+ "type": "number | null"
116
106
  },
117
107
  {
118
- "name": "warning",
119
- "attribute": "warning",
120
- "description": "Set state to warning",
108
+ "name": "selectionEnd",
109
+ "type": "number | null"
110
+ },
111
+ {
112
+ "name": "selectionDirection",
113
+ "type": "\"forward\" | \"backward\" | \"none\" | null"
114
+ },
115
+ {
116
+ "name": "disabled",
117
+ "attribute": "disabled",
118
+ "description": "Set disabled state",
121
119
  "type": "boolean",
122
120
  "default": "false"
123
121
  },
124
122
  {
125
- "name": "valueAsNumber",
126
- "description": "Returns the value of the element, interpreted as double number",
127
- "type": "number"
123
+ "name": "error",
124
+ "attribute": "error",
125
+ "description": "Set error state",
126
+ "type": "boolean",
127
+ "default": "false"
128
128
  },
129
129
  {
130
- "name": "value",
131
- "attribute": "value",
132
- "description": "The value of the number entered into the input.",
130
+ "name": "placeholder",
131
+ "attribute": "placeholder",
132
+ "description": "Set placeholder text",
133
133
  "type": "string",
134
134
  "default": "\"\""
135
135
  },
@@ -138,14 +138,28 @@
138
138
  "attribute": "readonly",
139
139
  "description": "Set readonly state",
140
140
  "type": "boolean",
141
- "default": "\"false\""
141
+ "default": "false"
142
142
  },
143
143
  {
144
- "name": "disabled",
145
- "attribute": "disabled",
146
- "description": "Set disabled state",
144
+ "name": "transparent",
145
+ "attribute": "transparent",
146
+ "description": "Disables all other states and border/background styles.",
147
+ "type": "boolean",
148
+ "default": "false"
149
+ },
150
+ {
151
+ "name": "warning",
152
+ "attribute": "warning",
153
+ "description": "Set warning state",
147
154
  "type": "boolean",
148
- "default": "\"false\""
155
+ "default": "false"
156
+ },
157
+ {
158
+ "name": "value",
159
+ "attribute": "value",
160
+ "description": "The value of the number entered into the input.",
161
+ "type": "string",
162
+ "default": "\"\""
149
163
  }
150
164
  ],
151
165
  "events": [
@@ -159,6 +173,26 @@
159
173
  }
160
174
  ],
161
175
  "methods": [
176
+ {
177
+ "name": "onInputInput",
178
+ "description": "",
179
+ "params": [
180
+ {
181
+ "name": "event",
182
+ "type": "InputEvent"
183
+ }
184
+ ]
185
+ },
186
+ {
187
+ "name": "onInputChange",
188
+ "description": "",
189
+ "params": [
190
+ {
191
+ "name": "event",
192
+ "type": "InputEvent"
193
+ }
194
+ ]
195
+ },
162
196
  {
163
197
  "name": "stepUp",
164
198
  "description": "Increases the input value by amount of step",
@@ -190,9 +224,20 @@
190
224
  "params": []
191
225
  },
192
226
  {
193
- "name": "select",
194
- "description": "Select the contents of input",
195
- "params": []
227
+ "name": "setSelectionRange",
228
+ "description": "",
229
+ "params": [
230
+ {
231
+ "name": "startSelection"
232
+ },
233
+ {
234
+ "name": "endSelection"
235
+ },
236
+ {
237
+ "name": "selectionDirection",
238
+ "type": "SelectionDirection"
239
+ }
240
+ ]
196
241
  }
197
242
  ]
198
243
  }
@@ -0,0 +1,42 @@
1
+ # ef-number-field
2
+
3
+ Form control element for numbers.
4
+
5
+ ## Properties
6
+
7
+ | Property | Attribute | Type | Default | Description |
8
+ |----------------------------|---------------|---------------------------------------------|---------|--------------------------------------------------|
9
+ | `disabled` | `disabled` | `boolean` | false | Set disabled state |
10
+ | `error` | `error` | `boolean` | false | Set error state |
11
+ | `max` | `max` | `string \| null` | null | Set maximum value.<br />This value must be greater than or equal to the value of the `min` attribute |
12
+ | `min` | `min` | `string \| null` | null | Set minimum value.<br />This value must be less than or equal to the value of the `max` attribute |
13
+ | `noSpinner` | `no-spinner` | `boolean` | false | Set spinner's visibility |
14
+ | `placeholder` | `placeholder` | `string` | "" | Set placeholder text |
15
+ | `readonly` | `readonly` | `boolean` | false | Set readonly state |
16
+ | `selectionDirection` | | `"forward" \| "backward" \| "none" \| null` | | |
17
+ | `selectionEnd` | | `number \| null` | | |
18
+ | `selectionStart` | | `number \| null` | | |
19
+ | `step` | `step` | `string \| null` | null | Set step value |
20
+ | `transparent` | `transparent` | `boolean` | false | Disables all other states and border/background styles. |
21
+ | `value` | `value` | `string` | "" | The value of the number entered into the input. |
22
+ | `valueAsNumber (readonly)` | | `number` | | Returns the value of the element, interpreted as double number |
23
+ | `warning` | `warning` | `boolean` | false | Set warning state |
24
+
25
+ ## Methods
26
+
27
+ | Method | Type | Description |
28
+ |---------------------|--------------------------------------------------|--------------------------------------------------|
29
+ | `checkValidity` | `(): boolean` | Returns true if an input element contains valid data. |
30
+ | `onInputChange` | `(event: any): void` | |
31
+ | `onInputInput` | `(event: any): void` | |
32
+ | `reportValidity` | `(): boolean` | Validate input. Mark as error if input is invalid |
33
+ | `setSelectionRange` | `(startSelection: number \| null, endSelection: number \| null, selectionDirection?: "forward" \| "backward" \| "none" \| undefined): void` | |
34
+ | `stepDown` | `(stepIncrement?: number \| undefined): void` | Decreases the input value by amount of step<br /><br />**stepIncrement**: The stepIncrement parameter is a numeric value. If no parameter is passed, stepIncrement defaults to 1. |
35
+ | `stepUp` | `(stepIncrement?: number \| undefined): void` | Increases the input value by amount of step<br /><br />**stepIncrement**: The stepIncrement parameter is a numeric value. If no parameter is passed, stepIncrement defaults to 1. |
36
+
37
+ ## Events
38
+
39
+ | Event | Description |
40
+ |-----------------|-------------------------------------|
41
+ | `error-changed` | Dispatched when error state changes |
42
+ | `value-changed` | Dispatched when value changes |
@@ -1,38 +1,52 @@
1
1
  import { JSXInterface } from '../jsx';
2
- import { ControlElement, CSSResult, TemplateResult, PropertyValues } from '@refinitiv-ui/core';
3
- import '../icon';
2
+ import { FormFieldElement, CSSResultGroup, TemplateResult, PropertyValues, TapEvent } from '@refinitiv-ui/core';
3
+ import { TemplateMap } from '@refinitiv-ui/core/lib/directives/template-map.js';
4
+ import '../icon/index.js';
5
+ declare type SelectionDirection = 'forward' | 'backward' | 'none';
6
+ declare enum Direction {
7
+ Up = 1,
8
+ Down = -1
9
+ }
4
10
  /**
5
- * Form control element for numbers
11
+ * Form control element for numbers.
6
12
  *
7
13
  * @fires value-changed - Dispatched when value changes
8
14
  * @fires error-changed - Dispatched when error state changes
9
15
  *
10
- * @attr {string} value - Input's default value
11
- * @prop {string} [value=] - Input's value
16
+ * @attr {boolean} disabled - Set disabled state
17
+ * @prop {boolean} [disabled=false] - Set disabled state
18
+ *
19
+ * @attr {boolean} error - Set error state
20
+ * @prop {boolean} [error=false] - Set error state
21
+ *
22
+ * @attr {string} placeholder - Set placeholder text
23
+ * @prop {string} [placeholder=""] - Set placeholder text
12
24
  *
13
25
  * @attr {boolean} readonly - Set readonly state
14
26
  * @prop {boolean} [readonly=false] - Set readonly state
15
27
  *
16
- * @attr {boolean} disabled - Set disabled state
17
- * @prop {boolean} [disabled=false] - Set disabled state
28
+ * @attr {boolean} transparent - Disables all other states and border/background styles.
29
+ * @prop {boolean} [transparent=false] - Disables all other states and border/background styles.
30
+ *
31
+ * @attr {boolean} warning - Set warning state
32
+ * @prop {boolean} [warning=false] - Set warning state
33
+ *
34
+ * @attr {string} value - Input's value
35
+ * @prop {string} [value=""] - Input's value
18
36
  */
19
- export declare class NumberField extends ControlElement {
37
+ export declare class NumberField extends FormFieldElement {
20
38
  /**
21
39
  * Element version number
22
40
  * @returns version number
23
41
  */
24
42
  static get version(): string;
25
43
  /**
26
- * A `CSSResult` that will be used
44
+ * A `CSSResultGroup` that will be used
27
45
  * to style the host, slotted children
28
46
  * and the internal template of the element.
29
- * @return {CSSResult | CSSResult[]} CSS template
47
+ * @return CSS template
30
48
  */
31
- static get styles(): CSSResult | CSSResult[];
32
- /**
33
- * Set placeholder text
34
- */
35
- placeholder: string | null;
49
+ static get styles(): CSSResultGroup;
36
50
  /**
37
51
  * Set spinner's visibility
38
52
  */
@@ -51,22 +65,11 @@ export declare class NumberField extends ControlElement {
51
65
  * This value must be greater than or equal to the value of the `min` attribute
52
66
  */
53
67
  max: string | null;
54
- /**
55
- * Set state to transparent
56
- */
57
- transparent: boolean;
58
- /**
59
- * Set state to error
60
- */
61
- error: boolean;
62
- /**
63
- * Set state to warning
64
- */
65
- warning: boolean;
66
68
  private interimValueState;
67
69
  /**
68
70
  * The value of the number entered into the input.
69
71
  * @param value number-field value
72
+ * @default -
70
73
  */
71
74
  set value(value: string);
72
75
  get value(): string;
@@ -74,10 +77,6 @@ export declare class NumberField extends ControlElement {
74
77
  * Returns the value of the element, interpreted as double number
75
78
  */
76
79
  get valueAsNumber(): number;
77
- /**
78
- * Get native input element from shadow root
79
- */
80
- private inputEl;
81
80
  /**
82
81
  * Get spinner up element
83
82
  */
@@ -145,47 +144,49 @@ export declare class NumberField extends ControlElement {
145
144
  * @returns string of input value
146
145
  */
147
146
  private get internalValue();
148
- /**
149
- * Get native input value
150
- * @returns string of input value
151
- */
152
- private get inputValue();
153
- /**
154
- * Set native input value
155
- * @param value input's value
156
- */
157
- private set inputValue(value);
158
147
  /**
159
148
  * Handles key down input event
160
149
  * @param event Key down event object
161
150
  * @returns {void}
162
151
  */
163
- private onNativeInputKeyDown;
152
+ protected onInputKeyDown(event: KeyboardEvent): void;
164
153
  /**
165
154
  * Run when spinner has been tapped
166
155
  * @param event tap event
167
156
  * @returns {void}
168
157
  */
169
- private onSpinnerTap;
158
+ protected onSpinnerTap(event: TapEvent): void;
170
159
  /**
171
160
  * Step down or up and notify value change
172
161
  * @param direction Up or Down
173
162
  * @returns {void}
174
163
  */
175
- private onApplyStep;
164
+ protected onApplyStep(direction: Direction): void;
176
165
  /**
177
166
  * Run before input changes
178
167
  * Prevent invalid characters
179
168
  * @param event before input event
180
169
  * @returns {void}
181
170
  */
182
- private onNativeBeforeInputChange;
171
+ protected onBeforeInputChange(event: InputEvent): void;
172
+ /**
173
+ * Runs on input element `input` event
174
+ * @param event `input` event
175
+ * @returns {void}
176
+ */
177
+ protected onInputInput(event: InputEvent): void;
178
+ /**
179
+ * Runs on input element `change` event
180
+ * @param event `change` event
181
+ * @returns {void}
182
+ */
183
+ protected onInputChange(event: InputEvent): void;
183
184
  /**
184
185
  * Triggers when native input value change with input event or change event
185
186
  * @param event Input event
186
187
  * @returns {void}
187
188
  */
188
- private onNativeInputChange;
189
+ protected onNativeInputChange(event: InputEvent): void;
189
190
  /**
190
191
  * Stripe characters from input text based on previous input and data
191
192
  * @param input The new input to process
@@ -262,15 +263,58 @@ export declare class NumberField extends ControlElement {
262
263
  */
263
264
  reportValidity(): boolean;
264
265
  /**
265
- * Select the contents of input
266
- * @returns void
266
+ * @ignore
267
+ * @inheritDoc
268
+ */
269
+ get selectionStart(): number | null;
270
+ /**
271
+ * @ignore
272
+ * @inheritDoc
273
+ */
274
+ set selectionStart(index: number | null);
275
+ /**
276
+ * @ignore
277
+ * @inheritDoc
267
278
  */
268
- select(): void;
279
+ get selectionEnd(): number | null;
280
+ /**
281
+ * @ignore
282
+ * @inheritDoc
283
+ */
284
+ set selectionEnd(index: number | null);
285
+ /**
286
+ * @ignore
287
+ * @inheritDoc
288
+ */
289
+ get selectionDirection(): SelectionDirection | null;
290
+ /**
291
+ * @ignore
292
+ * @inheritDoc
293
+ */
294
+ set selectionDirection(direction: SelectionDirection | null);
295
+ /**
296
+ * @ignore
297
+ * @inheritDoc
298
+ */
299
+ setSelectionRange(startSelection: number | null, endSelection: number | null, selectionDirection?: SelectionDirection): void;
269
300
  /**
270
301
  * Renders spinner
271
302
  * @returns {TemplateResult} spinner part template
272
303
  */
273
- private renderSpinner;
304
+ protected renderSpinner(): TemplateResult;
305
+ /**
306
+ * Decorate `<input>` element with common properties extended from form field element:
307
+ * type="text" - always `text`
308
+ * part="input" - always "input", used for styling
309
+ * inputmode="decimal" - show decimals keyboard by default
310
+ * pattern="'^[-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?$'" - numbers only
311
+ * role="spinbutton" - number field is actually a spinner
312
+ * aria-valuenow - current value or 0
313
+ * @keydown - Listener for `keydown` event. Runs `this.onInputKeyDown`
314
+ * @beforeinput - Listener for `beforeinput` event. Runs `this.onBeforeInputChange`
315
+ * @returns template map
316
+ */
317
+ protected get decorateInputMap(): TemplateMap;
274
318
  /**
275
319
  * A `TemplateResult` that will be used
276
320
  * to render the updated internal template.
@@ -278,6 +322,7 @@ export declare class NumberField extends ControlElement {
278
322
  */
279
323
  protected render(): TemplateResult;
280
324
  }
325
+ export {};
281
326
 
282
327
  declare global {
283
328
  interface HTMLElementTagNameMap {
@@ -286,7 +331,7 @@ declare global {
286
331
 
287
332
  namespace JSX {
288
333
  interface IntrinsicElements {
289
- 'ef-number-field': Partial<NumberField> | JSXInterface.ControlHTMLAttributes<NumberField>;
334
+ 'ef-number-field': Partial<NumberField> | JSXInterface.HTMLAttributes<NumberField>;
290
335
  }
291
336
  }
292
337
  }