@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
@@ -1,146 +1,56 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { ControlElement, css, customElement, html, ifDefined, property, query } from '@refinitiv-ui/core';
8
- import { preload } from '../icon';
9
- import '../icon';
10
- import { VERSION } from '../';
11
- const hasChanged = (newVal, oldVal) => oldVal === undefined ? false : newVal !== oldVal;
12
- const isIE = (/Trident/g).test(navigator.userAgent);
1
+ import { __decorate } from "tslib";
2
+ import { html } from '@refinitiv-ui/core';
3
+ import { customElement } from '@refinitiv-ui/core/lib/decorators/custom-element.js';
4
+ import { state } from '@refinitiv-ui/core/lib/decorators/state.js';
5
+ import { preload } from '../icon/index.js';
6
+ import { TextField } from '../text-field/index.js';
7
+ import '../icon/index.js';
8
+ import '@refinitiv-ui/phrasebook/lib/locale/en/password-field.js';
9
+ import { translate } from '@refinitiv-ui/translate';
13
10
  let isEyeOffPreloadRequested = false;
14
11
  /**
15
- * A form control element for password
12
+ * A form control element for password.
16
13
  *
17
14
  * @fires value-changed - Dispatched when value changes
18
15
  * @fires error-changed - Dispatched when error state changes
16
+ * @fires icon-click - Dispatched when icon is clicked
19
17
  *
20
- * @attr {string} value - Input's value
21
- * @prop {string} [value=] - Input's value
18
+ * @attr {boolean} disabled - Set disabled state
19
+ * @prop {boolean} [disabled=false] - Set disabled state
20
+ *
21
+ * @attr {boolean} error - Set error state
22
+ * @prop {boolean} [error=false] - Set error state
23
+ *
24
+ * @attr {number} maxlength - Set character max limit
25
+ * @prop {number | null} [maxLength=null] - Set character max limit
26
+ *
27
+ * @attr {number} minlength - Set character min limit
28
+ * @prop {number | null} [minLength=null] - Set character min limit
29
+ *
30
+ * @prop {string} [pattern=""] - Set regular expression for input validation
31
+ *
32
+ * @attr {string} placeholder - Set placeholder text
33
+ * @prop {string} [placeholder=""] - Set placeholder text
22
34
  *
23
35
  * @attr {boolean} readonly - Set readonly state
24
36
  * @prop {boolean} [readonly=false] - Set readonly state
25
37
  *
26
- * @attr {boolean} disabled - Set disabled state
27
- * @prop {boolean} [disabled=false] - Set disabled state
38
+ * @attr {boolean} transparent - Disables all other states and border/background styles.
39
+ * @prop {boolean} [transparent=false] - Disables all other states and border/background styles.
40
+ *
41
+ * @attr {boolean} warning - Set warning state
42
+ * @prop {boolean} [warning=false] - Set warning state
43
+ *
44
+ * @attr {string} value - Input's value
45
+ * @prop {string} [value=""] - Input's value
28
46
  */
29
- let PasswordField = class PasswordField extends ControlElement {
47
+ let PasswordField = class PasswordField extends TextField {
30
48
  constructor() {
31
49
  super(...arguments);
32
- /**
33
- * Set regular expression for input validation
34
- */
35
- this.pattern = '';
36
- /**
37
- * Set placeholder text
38
- */
39
- this.placeholder = '';
40
- /**
41
- * Set state to error
42
- */
43
- this.error = false;
44
- /**
45
- * Set state to warning
46
- */
47
- this.warning = false;
48
- /**
49
- * Disables all other states and border/background styles.
50
- * Use with advanced composite elements requiring e.g. multi selection in
51
- * combo-box when parent container handles element states.
52
- */
53
- this.transparent = false;
54
- /**
55
- * Set character minimum limit
56
- */
57
- this.minLength = null;
58
- /**
59
- * Set character maximum limit
60
- */
61
- this.maxLength = null;
62
50
  /**
63
51
  * Defines whether password is visible or not
64
52
  */
65
53
  this.isPasswordVisible = false;
66
- /**
67
- * check if value is changed and fire event
68
- * @return {void}
69
- */
70
- this.onPossibleValueChange = () => {
71
- const value = this.inputElement.value;
72
- this.setValueAndNotify(value);
73
- };
74
- /**
75
- * validate input according `pattern`, `min` and `max` properties
76
- * change state of `error` property according pattern validation
77
- * @return void
78
- */
79
- this.validateInput = () => {
80
- let error = !this.inputElement.checkValidity();
81
- if (this.shouldValidateForMinLength(error)) {
82
- error = !!this.minLength && (this.minLength > this.value.length);
83
- }
84
- if (this.error !== error) {
85
- this.error = error;
86
- this.notifyPropertyChange('error', this.error);
87
- }
88
- };
89
- /**
90
- * Detect `enter` and `space` keydown and fire
91
- * @param event keydown event
92
- * @returns {void}
93
- */
94
- this.handleKeyDown = (event) => {
95
- if (event.key === 'Spacebar' || event.key === ' ' || event.key === 'Enter') {
96
- this.togglePasswordVisibility();
97
- }
98
- };
99
- }
100
- /**
101
- * Element version number
102
- * @returns version number
103
- */
104
- static get version() {
105
- return VERSION;
106
- }
107
- /**
108
- * @return A `CSSResult` that will be used to style the host,
109
- * slotted children and the internal template of the element.
110
- */
111
- static get styles() {
112
- return css `
113
- :host {
114
- display: inline-block;
115
- }
116
- :host(:focus), :host input:focus {
117
- outline: none;
118
- }
119
- [part=input] {
120
- font: inherit;
121
- background: none;
122
- color: currentColor;
123
- border: none;
124
- text-align: inherit;
125
- }
126
- :host [part=icon]{
127
- display: flex;
128
- outline: none;
129
- }
130
- :host([transparent]) {
131
- background: none !important;
132
- border: none !important;
133
- }
134
- `;
135
- }
136
- /**
137
- * Select the contents of input
138
- * @return void
139
- */
140
- select() {
141
- if (!this.disabled && !this.readonly) {
142
- this.inputElement.select();
143
- }
144
54
  }
145
55
  /**
146
56
  * Called when the element’s DOM has been updated and rendered for the first time
@@ -155,101 +65,45 @@ let PasswordField = class PasswordField extends ControlElement {
155
65
  }
156
66
  }
157
67
  /**
158
- * Called when the element’s DOM has been updated and rendered
159
- * @param changedProperties Properties that has changed
160
- * @return shouldUpdate
68
+ * Decorate `<input>` element with common properties extended from text-field:
69
+ * type="text|password" - text if password is visible
70
+ * @returns template map
161
71
  */
162
- updated(changedProperties) {
163
- super.updated(changedProperties);
164
- if (this.inputElement.value !== this.value) {
165
- this.inputElement.value = this.value;
166
- }
167
- if (this.shouldValidateInput(changedProperties)) {
168
- this.validateInput();
169
- }
72
+ get decorateInputMap() {
73
+ return Object.assign(Object.assign({}, super.decorateInputMap), { 'type': this.isPasswordVisible ? 'text' : 'password' });
170
74
  }
171
75
  /**
172
- * A `TemplateResult` that will be used
173
- * to render the updated internal template.
174
- * @return Render template
76
+ * Renders icon element
77
+ * @returns {void}
175
78
  */
176
- render() {
79
+ renderIcon() {
177
80
  return html `
178
- <input
179
- type=${this.isPasswordVisible ? 'text' : 'password'}
180
- part="input"
181
- ?readonly="${this.readonly}"
182
- ?disabled="${this.disabled}"
183
- placeholder="${ifDefined(this.placeholder || undefined)}"
184
- minlength="${ifDefined(this.minLength || undefined)}"
185
- maxlength="${ifDefined(this.maxLength || undefined)}"
186
- pattern="${ifDefined(this.pattern || undefined)}"
187
- @input="${this.onPossibleValueChange}"
188
- @change="${this.onPossibleValueChange}"
189
- autocomplete="off"
190
- />
191
81
  <ef-icon
82
+ part="icon"
83
+ role="button"
84
+ tabindex="0"
85
+ aria-label="${this.isPasswordVisible ? this.t('HIDE_PASSWORD') : this.t('SHOW_PASSWORD')}"
192
86
  icon=${this.isPasswordVisible ? 'eye-off' : 'eye'}
193
87
  ?readonly="${this.readonly}"
194
88
  ?disabled="${this.disabled}"
195
89
  @tap="${this.togglePasswordVisibility}"
196
- @keydown="${this.handleKeyDown}"
197
- part="icon"
198
- tabindex="0"
199
90
  ></ef-icon>
200
91
  `;
201
92
  }
202
- /**
203
- * Check if input should be re-validated
204
- * True if value changed and pattern or minlength is present
205
- * True if pattern or minlength changed
206
- * @param changedProperties Properties that has changed
207
- * @return True if input should be re-validated
208
- */
209
- shouldValidateInput(changedProperties) {
210
- return (changedProperties.has('pattern') || !!(this.pattern && changedProperties.has('value')))
211
- || (changedProperties.has('minLength') || !!(this.minLength && changedProperties.has('value')));
212
- }
213
- /**
214
- * @param error existing state of error
215
- * @returns true if there is no error and browser is IE11 and minLength more than 0 and value exists
216
- */
217
- shouldValidateForMinLength(error) {
218
- return !!(!error && isIE && this.minLength && !!this.value);
219
- }
220
93
  /**
221
94
  * Toggles password visibility state
222
95
  * @return void
223
96
  */
224
97
  togglePasswordVisibility() {
225
98
  this.isPasswordVisible = !this.isPasswordVisible;
226
- void this.requestUpdate();
227
99
  }
228
100
  };
229
101
  __decorate([
230
- property({ type: String, hasChanged })
231
- ], PasswordField.prototype, "pattern", void 0);
232
- __decorate([
233
- property({ type: String })
234
- ], PasswordField.prototype, "placeholder", void 0);
235
- __decorate([
236
- property({ type: Boolean, reflect: true })
237
- ], PasswordField.prototype, "error", void 0);
238
- __decorate([
239
- property({ type: Boolean, reflect: true })
240
- ], PasswordField.prototype, "warning", void 0);
241
- __decorate([
242
- property({ type: Boolean, reflect: true })
243
- ], PasswordField.prototype, "transparent", void 0);
244
- __decorate([
245
- property({ type: Number, attribute: 'minlength', reflect: true, hasChanged })
246
- ], PasswordField.prototype, "minLength", void 0);
247
- __decorate([
248
- property({ type: Number, attribute: 'maxlength', reflect: true })
249
- ], PasswordField.prototype, "maxLength", void 0);
102
+ translate({ scope: 'ef-password-field' })
103
+ ], PasswordField.prototype, "t", void 0);
250
104
  __decorate([
251
- query('[part="input"]')
252
- ], PasswordField.prototype, "inputElement", void 0);
105
+ state()
106
+ ], PasswordField.prototype, "isPasswordVisible", void 0);
253
107
  PasswordField = __decorate([
254
108
  customElement('ef-password-field', {
255
109
  alias: 'coral-password-field'
@@ -26,19 +26,20 @@
26
26
  {
27
27
  "name": "value",
28
28
  "description": "Value of pill",
29
- "type": "string"
29
+ "type": "string",
30
+ "default": "\"\""
30
31
  },
31
32
  {
32
33
  "name": "readonly",
33
34
  "description": "Set readonly state",
34
35
  "type": "boolean",
35
- "default": "\"false\""
36
+ "default": "false"
36
37
  },
37
38
  {
38
39
  "name": "disabled",
39
40
  "description": "Set disabled state",
40
41
  "type": "boolean",
41
- "default": "\"false\""
42
+ "default": "false"
42
43
  }
43
44
  ],
44
45
  "properties": [
@@ -67,21 +68,22 @@
67
68
  "name": "value",
68
69
  "attribute": "value",
69
70
  "description": "Value of pill",
70
- "type": "string"
71
+ "type": "string",
72
+ "default": "\"\""
71
73
  },
72
74
  {
73
75
  "name": "readonly",
74
76
  "attribute": "readonly",
75
77
  "description": "Set readonly state",
76
78
  "type": "boolean",
77
- "default": "\"false\""
79
+ "default": "false"
78
80
  },
79
81
  {
80
82
  "name": "disabled",
81
83
  "attribute": "disabled",
82
84
  "description": "Set disabled state",
83
85
  "type": "boolean",
84
- "default": "\"false\""
86
+ "default": "false"
85
87
  }
86
88
  ],
87
89
  "events": [
@@ -0,0 +1,22 @@
1
+ # ef-pill
2
+
3
+ A small button style component
4
+ which is used to show one or multiple selected item.
5
+ It is rarely used in the UI but inside other components to visualize multiple item selection item.
6
+
7
+ ## Properties
8
+
9
+ | Property | Attribute | Type | Default | Description |
10
+ |------------|------------|-----------|---------|------------------------------|
11
+ | `active` | `active` | `boolean` | false | Add to pill for active state |
12
+ | `clears` | `clears` | `boolean` | false | Set pill to clearable |
13
+ | `disabled` | `disabled` | `boolean` | false | Set disabled state |
14
+ | `readonly` | `readonly` | `boolean` | false | Set readonly state |
15
+ | `toggles` | `toggles` | `boolean` | false | Set pill to toggle mode |
16
+ | `value` | `value` | `string` | "" | Value of pill |
17
+
18
+ ## Events
19
+
20
+ | Event | Description |
21
+ |---------|----------------------------------------------|
22
+ | `clear` | Dispatched when click on cross button occurs |
@@ -1,12 +1,12 @@
1
1
  import { JSXInterface } from '../jsx';
2
- import { ControlElement, CSSResult, PropertyValues, TemplateResult } from '@refinitiv-ui/core';
3
- import '../icon';
2
+ import { ControlElement, CSSResultGroup, PropertyValues, TemplateResult } from '@refinitiv-ui/core';
3
+ import '../icon/index.js';
4
4
  /**
5
5
  * A small button style component
6
6
  * which is used to show one or multiple selected item.
7
7
  * It is rarely used in the UI but inside other components to visualize multiple item selection item.
8
8
  * @attr {string} value - Value of pill
9
- * @prop {string} value - Value of pill
9
+ * @prop {string} [value=""] - Value of pill
10
10
  *
11
11
  * @attr {boolean} readonly - Set readonly state
12
12
  * @prop {boolean} [readonly=false] - Set readonly state
@@ -23,12 +23,12 @@ export declare class Pill extends ControlElement {
23
23
  */
24
24
  static get version(): string;
25
25
  /**
26
- * A `CSSResult` that will be used
26
+ * A `CSSResultGroup` that will be used
27
27
  * to style the host, slotted children
28
28
  * and the internal template of the element.
29
29
  * @return CSS template
30
30
  */
31
- static get styles(): CSSResult;
31
+ static get styles(): CSSResultGroup;
32
32
  /**
33
33
  * Set pill to clearable
34
34
  */
package/lib/pill/index.js CHANGED
@@ -1,18 +1,16 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { ControlElement, css, customElement, html, property, query } from '@refinitiv-ui/core';
8
- import { VERSION } from '../';
9
- import '../icon';
1
+ import { __decorate } from "tslib";
2
+ import { ControlElement, css, html } from '@refinitiv-ui/core';
3
+ import { customElement } from '@refinitiv-ui/core/lib/decorators/custom-element.js';
4
+ import { property } from '@refinitiv-ui/core/lib/decorators/property.js';
5
+ import { query } from '@refinitiv-ui/core/lib/decorators/query.js';
6
+ import { VERSION } from '../version.js';
7
+ import '../icon/index.js';
10
8
  /**
11
9
  * A small button style component
12
10
  * which is used to show one or multiple selected item.
13
11
  * It is rarely used in the UI but inside other components to visualize multiple item selection item.
14
12
  * @attr {string} value - Value of pill
15
- * @prop {string} value - Value of pill
13
+ * @prop {string} [value=""] - Value of pill
16
14
  *
17
15
  * @attr {boolean} readonly - Set readonly state
18
16
  * @prop {boolean} [readonly=false] - Set readonly state
@@ -50,7 +48,7 @@ let Pill = class Pill extends ControlElement {
50
48
  return VERSION;
51
49
  }
52
50
  /**
53
- * A `CSSResult` that will be used
51
+ * A `CSSResultGroup` that will be used
54
52
  * to style the host, slotted children
55
53
  * and the internal template of the element.
56
54
  * @return CSS template
@@ -0,0 +1,18 @@
1
+ # ef-progress-bar
2
+
3
+ Data visualisation component,
4
+ showing a simple percentage bar.
5
+
6
+ ## Properties
7
+
8
+ | Property | Attribute | Type | Default | Description |
9
+ |-------------|-------------|----------|---------|--------------------------------------------------|
10
+ | `alignment` | `alignment` | `string` | "left" | The alignment of the bar.<br />The bar can either start from the `left` or `right`. |
11
+ | `label` | `label` | `string` | "" | The current label to be displayed next to the bar.<br />This is affixed to the end of the bar, so make sure to cater for this. |
12
+ | `value` | `value` | `string` | "100" | The current value of the bar.<br />This can range from `0-100` and<br />will be represented as a percentage bar |
13
+
14
+ ## Slots
15
+
16
+ | Name | Description |
17
+ |---------|--------------------------------------------------|
18
+ | `label` | Overrides the label property and places custom content. Useful for modifying the color, or, adding icons. |
@@ -1,5 +1,5 @@
1
1
  import { JSXInterface } from '../jsx';
2
- import { CSSResult, TemplateResult, BasicElement, PropertyValues } from '@refinitiv-ui/core';
2
+ import { CSSResultGroup, TemplateResult, BasicElement, PropertyValues } from '@refinitiv-ui/core';
3
3
  /**
4
4
  * Data visualisation component,
5
5
  * showing a simple percentage bar.
@@ -13,12 +13,12 @@ export declare class ProgressBar extends BasicElement {
13
13
  static get version(): string;
14
14
  private valuePrevious;
15
15
  /**
16
- * A `CSSResult` that will be used
16
+ * A `CSSResultGroup` that will be used
17
17
  * to style the host, slotted children
18
18
  * and the internal template of the element.
19
19
  * @return CSS template
20
20
  */
21
- static get styles(): CSSResult;
21
+ static get styles(): CSSResultGroup;
22
22
  /**
23
23
  * The current value of the bar.
24
24
  * This can range from `0-100` and
@@ -1,11 +1,9 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { css, html, property, customElement, styleMap, BasicElement } from '@refinitiv-ui/core';
8
- import { VERSION } from '../';
1
+ import { __decorate } from "tslib";
2
+ import { css, html, BasicElement } from '@refinitiv-ui/core';
3
+ import { customElement } from '@refinitiv-ui/core/lib/decorators/custom-element.js';
4
+ import { property } from '@refinitiv-ui/core/lib/decorators/property.js';
5
+ import { styleMap } from '@refinitiv-ui/core/lib/directives/style-map.js';
6
+ import { VERSION } from '../version.js';
9
7
  /**
10
8
  * Data visualisation component,
11
9
  * showing a simple percentage bar.
@@ -40,7 +38,7 @@ let ProgressBar = class ProgressBar extends BasicElement {
40
38
  return VERSION;
41
39
  }
42
40
  /**
43
- * A `CSSResult` that will be used
41
+ * A `CSSResultGroup` that will be used
44
42
  * to style the host, slotted children
45
43
  * and the internal template of the element.
46
44
  * @return CSS template
@@ -27,13 +27,13 @@
27
27
  "name": "readonly",
28
28
  "description": "Set readonly state",
29
29
  "type": "boolean",
30
- "default": "\"false\""
30
+ "default": "false"
31
31
  },
32
32
  {
33
33
  "name": "disabled",
34
34
  "description": "Set disabled state",
35
35
  "type": "boolean",
36
- "default": "\"false\""
36
+ "default": "false"
37
37
  }
38
38
  ],
39
39
  "properties": [
@@ -63,14 +63,14 @@
63
63
  "attribute": "readonly",
64
64
  "description": "Set readonly state",
65
65
  "type": "boolean",
66
- "default": "\"false\""
66
+ "default": "false"
67
67
  },
68
68
  {
69
69
  "name": "disabled",
70
70
  "attribute": "disabled",
71
71
  "description": "Set disabled state",
72
72
  "type": "boolean",
73
- "default": "\"false\""
73
+ "default": "false"
74
74
  }
75
75
  ],
76
76
  "events": [
@@ -0,0 +1,19 @@
1
+ # ef-radio-button
2
+
3
+ Basic radio button
4
+
5
+ ## Properties
6
+
7
+ | Property | Attribute | Type | Default | Description |
8
+ |------------|------------|-----------|---------|--------------------------------------------------|
9
+ | `checked` | `checked` | `boolean` | false | Radio button checked state |
10
+ | `disabled` | `disabled` | `boolean` | false | Set disabled state |
11
+ | `name` | `name` | `string` | "" | Group multiple radio buttons by assigning the same name |
12
+ | `readonly` | `readonly` | `boolean` | false | Set readonly state |
13
+ | `value` | `value` | `string` | "" | Value of the radio button |
14
+
15
+ ## Events
16
+
17
+ | Event | Description |
18
+ |-------------------|--------------------------------------------|
19
+ | `checked-changed` | Fired when the `checked` property changes. |
@@ -1,15 +1,15 @@
1
1
  import { JSXInterface } from '../jsx';
2
- import { CSSResult, ControlElement, TemplateResult, PropertyValues } from '@refinitiv-ui/core';
2
+ import { CSSResultGroup, ControlElement, TemplateResult, PropertyValues } from '@refinitiv-ui/core';
3
3
  /**
4
4
  * Basic radio button
5
5
  *
6
6
  * @fires checked-changed - Fired when the `checked` property changes.
7
7
  *
8
- * @attr {string} [value=] - Value of the radio button
9
- * @prop {string} [value=] - Value of the radio button
8
+ * @attr {string} value - Value of the radio button
9
+ * @prop {string} [value=""] - Value of the radio button
10
10
  *
11
- * @attr {string} [name=] - Group multiple radio buttons by assigning the same name
12
- * @prop {string} [name=] - Group multiple radio buttons by assigning the same name
11
+ * @attr {string} name - Group multiple radio buttons by assigning the same name
12
+ * @prop {string} [name=""] - Group multiple radio buttons by assigning the same name
13
13
  *
14
14
  * @attr {boolean} readonly - Set readonly state
15
15
  * @prop {boolean} [readonly=false] - Set readonly state
@@ -23,17 +23,28 @@ export declare class RadioButton extends ControlElement {
23
23
  * @returns version number
24
24
  */
25
25
  static get version(): string;
26
+ protected readonly defaultRole: string | null;
26
27
  /**
27
- * A `CSSResult` that will be used
28
+ * A `CSSResultGroup` that will be used
28
29
  * to style the host, slotted children
29
30
  * and the internal template of the element.
30
31
  * @return CSS template
31
32
  */
32
- static get styles(): CSSResult | CSSResult[];
33
+ static get styles(): CSSResultGroup;
34
+ private _checked;
33
35
  /**
34
36
  * Radio button checked state
37
+ * @param value checked state
38
+ * @default false
39
+ * @returns {void}
40
+ */
41
+ set checked(value: boolean);
42
+ get checked(): boolean;
43
+ /**
44
+ * Aria indicating checked state
45
+ * @ignore
35
46
  */
36
- checked: boolean;
47
+ ariaChecked: string;
37
48
  /**
38
49
  * Getter for label
39
50
  */
@@ -83,6 +94,12 @@ export declare class RadioButton extends ControlElement {
83
94
  * @return {void}
84
95
  */
85
96
  private handleChangeChecked;
97
+ /**
98
+ * Navigate to next or previous checkable sibling in the same group if present
99
+ * @param direction up/next; down/previous
100
+ * @returns {void}
101
+ */
102
+ private navigateToSibling;
86
103
  /**
87
104
  * A `TemplateResult` that will be used
88
105
  * to render the updated internal template.