@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,6 +1,6 @@
1
1
  import { JSXInterface } from '../jsx';
2
2
  import { ControlElement, PropertyValues, TemplateResult } from '@refinitiv-ui/core';
3
- import '../icon';
3
+ import '../icon/index.js';
4
4
  /**
5
5
  * Use button for actions in forms, dialogs,
6
6
  * and more with support for different states and styles.
@@ -14,6 +14,7 @@ export declare class Button extends ControlElement {
14
14
  * @returns version number
15
15
  */
16
16
  static get version(): string;
17
+ protected readonly defaultRole = "button";
17
18
  /**
18
19
  * Customises text alignment when specified alongside `icon` property
19
20
  * Value can be `before` or `after`
@@ -51,6 +52,17 @@ export declare class Button extends ControlElement {
51
52
  * Get native label element from shadow roots
52
53
  */
53
54
  private labelElement;
55
+ /**
56
+ * Aria indicating state of toggle button
57
+ * @ignore
58
+ */
59
+ ariaPressed: string;
60
+ /**
61
+ * Updates the element
62
+ * @param changedProperties Properties that has changed
63
+ * @returns {void}
64
+ */
65
+ protected update(changedProperties: PropertyValues): void;
54
66
  /**
55
67
  * the lifecycle method called when properties changed first time
56
68
  * @param changedProperties properties it's the Map object which has the updated properties
@@ -62,18 +74,6 @@ export declare class Button extends ControlElement {
62
74
  * @returns {void}
63
75
  */
64
76
  private onDefaultSlotChangeHandler;
65
- /**
66
- * Handle keydown event
67
- * @param event the keyboard event
68
- * @returns {void}
69
- */
70
- private onKeyUpHandler;
71
- /**
72
- * Check key names
73
- * @param key the keyboard key
74
- * @returns true if space or enter pressed
75
- */
76
- private isReturnOrSpaceKey;
77
77
  /**
78
78
  * Handle active property, when toggles is true
79
79
  * @returns {void}
@@ -1,13 +1,21 @@
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;
1
+ import { __decorate } from "tslib";
2
+ import { ControlElement, html } from '@refinitiv-ui/core';
3
+ import { customElement } from '@refinitiv-ui/core/lib/decorators/custom-element.js';
4
+ import { query } from '@refinitiv-ui/core/lib/decorators/query.js';
5
+ import { property } from '@refinitiv-ui/core/lib/decorators/property.js';
6
+ import { VERSION } from '../version.js';
7
+ import { registerOverflowTooltip } from '../tooltip/index.js';
8
+ import '../icon/index.js';
9
+ /**
10
+ * Return the attribute that converted from the property
11
+ * Prevent empty string that reflected to attribute
12
+ * @private
13
+ * @param value value from the property
14
+ * @returns string converted to attribute
15
+ */
16
+ const emptyStringToNull = function (value) {
17
+ return value || null;
6
18
  };
7
- import { ControlElement, customElement, html, property, query } from '@refinitiv-ui/core';
8
- import { VERSION } from '..';
9
- import '../icon';
10
- import { registerOverflowTooltip } from '../tooltip';
11
19
  /**
12
20
  * Use button for actions in forms, dialogs,
13
21
  * and more with support for different states and styles.
@@ -18,6 +26,7 @@ import { registerOverflowTooltip } from '../tooltip';
18
26
  let Button = class Button extends ControlElement {
19
27
  constructor() {
20
28
  super(...arguments);
29
+ this.defaultRole = 'button';
21
30
  /**
22
31
  * Customises text alignment when specified alongside `icon` property
23
32
  * Value can be `before` or `after`
@@ -51,6 +60,11 @@ let Button = class Button extends ControlElement {
51
60
  * Use by theme to detect when no content inside button
52
61
  */
53
62
  this.empty = false;
63
+ /**
64
+ * Aria indicating state of toggle button
65
+ * @ignore
66
+ */
67
+ this.ariaPressed = '';
54
68
  }
55
69
  /**
56
70
  * Element version number
@@ -59,6 +73,17 @@ let Button = class Button extends ControlElement {
59
73
  static get version() {
60
74
  return VERSION;
61
75
  }
76
+ /**
77
+ * Updates the element
78
+ * @param changedProperties Properties that has changed
79
+ * @returns {void}
80
+ */
81
+ update(changedProperties) {
82
+ if (changedProperties.has('active') && this.toggles || changedProperties.has('toggles') && this.toggles) {
83
+ this.ariaPressed = String(this.active);
84
+ }
85
+ super.update(changedProperties);
86
+ }
62
87
  /**
63
88
  * the lifecycle method called when properties changed first time
64
89
  * @param changedProperties properties it's the Map object which has the updated properties
@@ -69,7 +94,6 @@ let Button = class Button extends ControlElement {
69
94
  this.addEventListener('tap', this.toggleActive);
70
95
  this.addEventListener('tapstart', this.setPressed);
71
96
  this.addEventListener('tapend', this.unsetPressed);
72
- this.addEventListener('keyup', this.onKeyUpHandler);
73
97
  this.emptyComputed();
74
98
  registerOverflowTooltip(this.labelElement, () => this.textContent);
75
99
  }
@@ -80,27 +104,6 @@ let Button = class Button extends ControlElement {
80
104
  onDefaultSlotChangeHandler() {
81
105
  this.emptyComputed();
82
106
  }
83
- /**
84
- * Handle keydown event
85
- * @param event the keyboard event
86
- * @returns {void}
87
- */
88
- onKeyUpHandler(event) {
89
- if (this.isReturnOrSpaceKey(event.key)) {
90
- this.click();
91
- }
92
- }
93
- /**
94
- * Check key names
95
- * @param key the keyboard key
96
- * @returns true if space or enter pressed
97
- */
98
- isReturnOrSpaceKey(key) {
99
- return key === ' '
100
- || key === 'Spacebar'
101
- || key === 'Enter'
102
- || key === 'Return';
103
- }
104
107
  /**
105
108
  * Handle active property, when toggles is true
106
109
  * @returns {void}
@@ -205,6 +208,13 @@ __decorate([
205
208
  __decorate([
206
209
  query('[part="label"]')
207
210
  ], Button.prototype, "labelElement", void 0);
211
+ __decorate([
212
+ property({ type: String,
213
+ reflect: true,
214
+ attribute: 'aria-pressed',
215
+ converter: { toAttribute: emptyStringToNull } // TODO: Remove after typescript update to allow nullable for ARIAMixin
216
+ })
217
+ ], Button.prototype, "ariaPressed", void 0);
208
218
  Button = __decorate([
209
219
  customElement('ef-button', {
210
220
  alias: 'coral-button'
@@ -0,0 +1,9 @@
1
+ # ef-button-bar
2
+
3
+ Used to display multiple buttons to create a list of commands bar.
4
+
5
+ ## Properties
6
+
7
+ | Property | Attribute | Type | Default | Description |
8
+ |-----------|-----------|-----------|---------|--------------------------------------------------|
9
+ | `managed` | `managed` | `boolean` | false | Manages user interaction, only allowing one toggle button to be active at any one time. |
@@ -1,5 +1,5 @@
1
1
  import { JSXInterface } from '../jsx';
2
- import { BasicElement, TemplateResult, CSSResult, PropertyValues } from '@refinitiv-ui/core';
2
+ import { BasicElement, TemplateResult, CSSResultGroup, PropertyValues } from '@refinitiv-ui/core';
3
3
  /**
4
4
  * Used to display multiple buttons to create a list of commands bar.
5
5
  */
@@ -10,12 +10,12 @@ export declare class ButtonBar extends BasicElement {
10
10
  */
11
11
  static get version(): string;
12
12
  /**
13
- * A `CSSResult` that will be used
13
+ * A `CSSResultGroup` that will be used
14
14
  * to style the host, slotted children
15
15
  * and the internal template of the element.
16
16
  * @return CSS template
17
17
  */
18
- static get styles(): CSSResult | CSSResult[];
18
+ static get styles(): CSSResultGroup;
19
19
  /**
20
20
  * Manages user interaction, only allowing one toggle button to be active at any one time.
21
21
  */
@@ -1,12 +1,10 @@
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 { BasicElement, html, css, customElement, property, query } from '@refinitiv-ui/core';
8
- import { VERSION } from '../';
9
- import { Button } from '../button';
1
+ import { __decorate } from "tslib";
2
+ import { BasicElement, html, css } from '@refinitiv-ui/core';
3
+ import { customElement } from '@refinitiv-ui/core/lib/decorators/custom-element.js';
4
+ import { query } from '@refinitiv-ui/core/lib/decorators/query.js';
5
+ import { property } from '@refinitiv-ui/core/lib/decorators/property.js';
6
+ import { VERSION } from '../version.js';
7
+ import { Button } from '../button/index.js';
10
8
  /**
11
9
  * Used to display multiple buttons to create a list of commands bar.
12
10
  */
@@ -26,7 +24,7 @@ let ButtonBar = class ButtonBar extends BasicElement {
26
24
  return VERSION;
27
25
  }
28
26
  /**
29
- * A `CSSResult` that will be used
27
+ * A `CSSResultGroup` that will be used
30
28
  * to style the host, slotted children
31
29
  * and the internal template of the element.
32
30
  * @return CSS template
@@ -0,0 +1,22 @@
1
+ export declare enum RenderView {
2
+ DAY = "day",
3
+ MONTH = "month",
4
+ YEAR = "year"
5
+ }
6
+ export declare const FIRST_DAY_OF_WEEK = 0;
7
+ export declare const YEARS_PER_YEAR_VIEW = 16;
8
+ export declare const DAY_VIEW: {
9
+ rowCount: number;
10
+ columnCount: number;
11
+ totalCount: number;
12
+ };
13
+ export declare const YEAR_VIEW: {
14
+ rowCount: number;
15
+ columnCount: number;
16
+ totalCount: number;
17
+ };
18
+ export declare const MONTH_VIEW: {
19
+ rowCount: number;
20
+ columnCount: number;
21
+ totalCount: number;
22
+ };
@@ -0,0 +1,23 @@
1
+ export var RenderView;
2
+ (function (RenderView) {
3
+ RenderView["DAY"] = "day";
4
+ RenderView["MONTH"] = "month";
5
+ RenderView["YEAR"] = "year";
6
+ })(RenderView || (RenderView = {}));
7
+ export const FIRST_DAY_OF_WEEK = 0; // 0 for Sunday
8
+ export const YEARS_PER_YEAR_VIEW = 16; /* must be a square number */
9
+ export const DAY_VIEW = {
10
+ rowCount: 6,
11
+ columnCount: 7,
12
+ totalCount: 6 * 7
13
+ };
14
+ export const YEAR_VIEW = {
15
+ rowCount: 4,
16
+ columnCount: 4,
17
+ totalCount: 4 * 4
18
+ };
19
+ export const MONTH_VIEW = {
20
+ rowCount: 4,
21
+ columnCount: 4,
22
+ totalCount: 4 * 4
23
+ };
@@ -61,7 +61,8 @@
61
61
  {
62
62
  "name": "values",
63
63
  "description": "Set multiple selected values",
64
- "type": "string[]"
64
+ "type": "string[]",
65
+ "default": "[]"
65
66
  },
66
67
  {
67
68
  "name": "fill-cells",
@@ -73,13 +74,13 @@
73
74
  "name": "readonly",
74
75
  "description": "Set readonly state",
75
76
  "type": "boolean",
76
- "default": "\"false\""
77
+ "default": "false"
77
78
  },
78
79
  {
79
80
  "name": "disabled",
80
81
  "description": "Set disabled state",
81
82
  "type": "boolean",
82
- "default": "\"false\""
83
+ "default": "false"
83
84
  }
84
85
  ],
85
86
  "properties": [
@@ -154,7 +155,8 @@
154
155
  "name": "values",
155
156
  "attribute": "values",
156
157
  "description": "Set multiple selected values",
157
- "type": "string[]"
158
+ "type": "string[]",
159
+ "default": "[]"
158
160
  },
159
161
  {
160
162
  "name": "fillCells",
@@ -168,14 +170,14 @@
168
170
  "attribute": "readonly",
169
171
  "description": "Set readonly state",
170
172
  "type": "boolean",
171
- "default": "\"false\""
173
+ "default": "false"
172
174
  },
173
175
  {
174
176
  "name": "disabled",
175
177
  "attribute": "disabled",
176
178
  "description": "Set disabled state",
177
179
  "type": "boolean",
178
- "default": "\"false\""
180
+ "default": "false"
179
181
  }
180
182
  ],
181
183
  "events": [
@@ -0,0 +1,35 @@
1
+ # ef-calendar
2
+
3
+ Standard calendar element
4
+
5
+ ## Properties
6
+
7
+ | Property | Attribute | Type | Default | Description |
8
+ |------------------|---------------------|--------------------------|---------|--------------------------------------------------|
9
+ | `disabled` | `disabled` | `boolean` | false | Set disabled state |
10
+ | `fillCells` | `fill-cells` | `boolean` | false | Fill head and tail cell dates |
11
+ | `filter` | | `CalendarFilter \| null` | null | Custom filter, used for enabling/disabling certain dates |
12
+ | `firstDayOfWeek` | `first-day-of-week` | `number \| null` | null | Set the first day of the week.<br />0 - for Sunday, 6 - for Saturday |
13
+ | `max` | `max` | `string` | "" | Set maximum date |
14
+ | `min` | `min` | `string` | "" | Set minimum date |
15
+ | `multiple` | `multiple` | `boolean` | false | Set to switch to multiple select mode |
16
+ | `range` | `range` | `boolean` | false | Set to switch to range select mode |
17
+ | `readonly` | `readonly` | `boolean` | false | Set readonly state |
18
+ | `value` | `value` | `string` | "" | Current date time value |
19
+ | `values` | `values` | `string[]` | [] | Set multiple selected values |
20
+ | `view` | `view` | `string` | "" | Current calendar view date |
21
+ | `weekdaysOnly` | `weekdays-only` | `boolean` | false | Only enable weekdays |
22
+ | `weekendsOnly` | `weekends-only` | `boolean` | false | Only enable weekends |
23
+
24
+ ## Events
25
+
26
+ | Event | Description |
27
+ |-----------------|---------------------------------|
28
+ | `value-changed` | Fired when the `value` changes. |
29
+ | `view-changed` | Fired when the `view` changes. |
30
+
31
+ ## Slots
32
+
33
+ | Name | Description |
34
+ |----------|--------------------------------------------------|
35
+ | `footer` | Adds slotted content into the footer of the calendar control |
@@ -1,10 +1,10 @@
1
1
  import { JSXInterface } from '../jsx';
2
- import { ControlElement, TemplateResult, CSSResult, PropertyValues, MultiValue } from '@refinitiv-ui/core';
3
- import '../button';
4
- import './locales';
2
+ import { ControlElement, TemplateResult, CSSResultGroup, PropertyValues, MultiValue } from '@refinitiv-ui/core';
5
3
  import { TranslateDirective, TranslatePromise } from '@refinitiv-ui/translate';
6
- import { CalendarFilter } from './types';
7
- export { CalendarFilter };
4
+ import type { CalendarFilter } from './types';
5
+ import './locales.js';
6
+ import '../button/index.js';
7
+ export type { CalendarFilter };
8
8
  /**
9
9
  * Standard calendar element
10
10
  *
@@ -26,12 +26,12 @@ export declare class Calendar extends ControlElement implements MultiValue {
26
26
  */
27
27
  static get version(): string;
28
28
  /**
29
- * A `CSSResult` that will be used
29
+ * A `CSSResultGroup` that will be used
30
30
  * to style the host, slotted children
31
31
  * and the internal template of the element.
32
32
  * @return CSS template
33
33
  */
34
- static get styles(): CSSResult | CSSResult[];
34
+ static get styles(): CSSResultGroup;
35
35
  private _min;
36
36
  /**
37
37
  * Set minimum date
@@ -78,6 +78,7 @@ export declare class Calendar extends ControlElement implements MultiValue {
78
78
  * 0 - for Sunday, 6 - for Saturday
79
79
  * @param firstDayOfWeek The first day of the week
80
80
  * @type {number | null}
81
+ * @default null
81
82
  */
82
83
  set firstDayOfWeek(firstDayOfWeek: number);
83
84
  get firstDayOfWeek(): number;
@@ -101,6 +102,7 @@ export declare class Calendar extends ControlElement implements MultiValue {
101
102
  * Set multiple selected values
102
103
  * @param values Values to set
103
104
  * @type {string[]}
105
+ * @default []
104
106
  */
105
107
  set values(values: string[]);
106
108
  get values(): string[];
@@ -1,36 +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, html, css, customElement, property, ifDefined, WarningNotice } from '@refinitiv-ui/core';
8
- import '../button';
9
- import { DateFormat, format, utcFormat, utcParse, isValidDate, isWeekend, isAfter, isBefore, addMonths, subMonths, isToday, isThisMonth, isThisYear, isSameDay, isSameMonth, isSameYear, toDateSegment } from '@refinitiv-ui/utils';
10
- import { monthInfo } from './utils';
11
- import './locales';
12
- import { weekdaysNames, monthsNames, formatLocaleDate, ViewFormatTranslateParams } from './locales';
1
+ import { __decorate } from "tslib";
2
+ import { ControlElement, html, css, WarningNotice } 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 { ifDefined } from '@refinitiv-ui/core/lib/directives/if-defined.js';
6
+ import { VERSION } from '../version.js';
7
+ import { isIE } from '@refinitiv-ui/utils/lib/browser.js';
8
+ import { DateFormat, format, utcFormat, utcParse, isValidDate, isWeekend, isAfter, isBefore, addMonths, subMonths, isToday, isThisMonth, isThisYear, isSameDay, isSameMonth, isSameYear, toDateSegment } from '@refinitiv-ui/utils/lib/date.js';
9
+ import { monthInfo, weekdaysNames, monthsNames, formatLocaleDate, ViewFormatTranslateParams } from './utils.js';
13
10
  import { translate, getLocale, TranslatePropertyKey } from '@refinitiv-ui/translate';
14
- import { RenderView } from './types';
15
- import { VERSION } from '..';
16
- const isIE = (/Trident/g).test(navigator.userAgent) || (/MSIE/g).test(navigator.userAgent);
17
- const FIRST_DAY_OF_WEEK = 0; // 0 for Sunday
18
- const YEARS_PER_YEAR_VIEW = 16; /* must be a square number */
19
- const DAY_VIEW = {
20
- rowCount: 6,
21
- columnCount: 7,
22
- totalCount: 6 * 7
23
- };
24
- const YEAR_VIEW = {
25
- rowCount: 4,
26
- columnCount: 4,
27
- totalCount: 4 * 4
28
- };
29
- const MONTH_VIEW = {
30
- rowCount: 4,
31
- columnCount: 4,
32
- totalCount: 4 * 4
33
- };
11
+ import { RenderView, FIRST_DAY_OF_WEEK, YEARS_PER_YEAR_VIEW, DAY_VIEW, YEAR_VIEW, MONTH_VIEW } from './constants.js';
12
+ import './locales.js';
13
+ import '../button/index.js';
34
14
  /**
35
15
  * Standard calendar element
36
16
  *
@@ -93,7 +73,7 @@ let Calendar = class Calendar extends ControlElement {
93
73
  return VERSION;
94
74
  }
95
75
  /**
96
- * A `CSSResult` that will be used
76
+ * A `CSSResultGroup` that will be used
97
77
  * to style the host, slotted children
98
78
  * and the internal template of the element.
99
79
  * @return CSS template
@@ -169,7 +149,7 @@ let Calendar = class Calendar extends ControlElement {
169
149
  }
170
150
  if (oldMin !== min) {
171
151
  this._min = min;
172
- void this.requestUpdate('min', oldMin);
152
+ this.requestUpdate('min', oldMin);
173
153
  }
174
154
  }
175
155
  get min() {
@@ -188,7 +168,7 @@ let Calendar = class Calendar extends ControlElement {
188
168
  }
189
169
  if (oldMax !== max) {
190
170
  this._max = max;
191
- void this.requestUpdate('max', oldMax);
171
+ this.requestUpdate('max', oldMax);
192
172
  }
193
173
  }
194
174
  get max() {
@@ -207,7 +187,7 @@ let Calendar = class Calendar extends ControlElement {
207
187
  const oldView = this._view;
208
188
  if (oldView !== view) {
209
189
  this._view = view;
210
- void this.requestUpdate('view', oldView);
190
+ this.requestUpdate('view', oldView);
211
191
  }
212
192
  }
213
193
  get view() {
@@ -219,13 +199,14 @@ let Calendar = class Calendar extends ControlElement {
219
199
  * 0 - for Sunday, 6 - for Saturday
220
200
  * @param firstDayOfWeek The first day of the week
221
201
  * @type {number | null}
202
+ * @default null
222
203
  */
223
204
  set firstDayOfWeek(firstDayOfWeek) {
224
205
  firstDayOfWeek %= 7;
225
206
  const oldFirstDayOfWeek = this._firstDayOfWeek;
226
207
  if (oldFirstDayOfWeek !== firstDayOfWeek) {
227
208
  this._firstDayOfWeek = firstDayOfWeek;
228
- void this.requestUpdate('firstDayOfWeek', oldFirstDayOfWeek);
209
+ this.requestUpdate('firstDayOfWeek', oldFirstDayOfWeek);
229
210
  }
230
211
  }
231
212
  get firstDayOfWeek() {
@@ -246,13 +227,14 @@ let Calendar = class Calendar extends ControlElement {
246
227
  * Set multiple selected values
247
228
  * @param values Values to set
248
229
  * @type {string[]}
230
+ * @default []
249
231
  */
250
232
  set values(values) {
251
233
  const oldValues = this._values;
252
234
  const newValues = this.filterAndWarnInvalidValues(values);
253
235
  if (oldValues.toString() !== newValues.toString()) {
254
236
  this._values = newValues;
255
- void this.requestUpdate('values', oldValues);
237
+ this.requestUpdate('values', oldValues);
256
238
  }
257
239
  }
258
240
  get values() {
@@ -1,31 +1 @@
1
- import { TranslateParams } from '@refinitiv-ui/i18n';
2
- /**
3
- * Used to format views
4
- */
5
- declare const ViewFormatTranslateParams: TranslateParams;
6
- /**
7
- * Get a list of weekday abbreviations based on locale
8
- * @param locale Locale
9
- * @param [width='short'] Day width
10
- * @returns The list of weekdays starting from Sunday
11
- */
12
- declare const weekdaysNames: (locale: string, width?: Intl.DateTimeFormatOptions['weekday']) => string[];
13
- /**
14
- * Get a list of months based on locale
15
- * @param locale Locale
16
- * @param [width='short'] Month width
17
- * @returns The list of months starting from January
18
- */
19
- declare const monthsNames: (locale: string, width?: Intl.DateTimeFormatOptions['month']) => string[];
20
- /**
21
- * @deprecated
22
- * Some old browsers (as IE11) do not support formatting of old dates before BC
23
- * Instead simply convert the date manually to match Translate function
24
- * @param date Date
25
- * @param locale locale
26
- * @param [includeMonth=false] true to include month
27
- * @param [includeEra=false] tru to include era descriptor
28
- * @returns formatted dates
29
- */
30
- declare const formatLocaleDate: (date: Date, locale: string, includeMonth?: boolean, includeEra?: boolean) => string;
31
- export { weekdaysNames, monthsNames, formatLocaleDate, ViewFormatTranslateParams };
1
+ export {};