@refinitiv-ui/elements 5.1.0 → 5.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (270) hide show
  1. package/CHANGELOG.md +71 -0
  2. package/lib/accordion/index.d.ts +1 -1
  3. package/lib/appstate-bar/index.d.ts +1 -1
  4. package/lib/autosuggest/helpers/const.d.ts +1 -0
  5. package/lib/autosuggest/helpers/types.d.ts +22 -0
  6. package/lib/autosuggest/helpers/utils.d.ts +1 -0
  7. package/lib/autosuggest/index.d.ts +1 -1
  8. package/lib/button/index.d.ts +1 -1
  9. package/lib/button/index.js +31 -31
  10. package/lib/button/index.js.map +1 -1
  11. package/lib/button-bar/index.d.ts +1 -1
  12. package/lib/calendar/index.d.ts +1 -1
  13. package/lib/calendar/index.js +1 -1
  14. package/lib/calendar/index.js.map +1 -1
  15. package/lib/calendar/locales.d.ts +1 -0
  16. package/lib/calendar/themes/halo/dark/index.js +1 -1
  17. package/lib/calendar/themes/halo/light/index.js +1 -1
  18. package/lib/calendar/types.d.ts +1 -0
  19. package/lib/calendar/utils.d.ts +1 -0
  20. package/lib/canvas/index.d.ts +1 -1
  21. package/lib/card/custom-elements.json +18 -8
  22. package/lib/card/helpers/types.d.ts +1 -0
  23. package/lib/card/index.d.ts +50 -12
  24. package/lib/card/index.js +112 -23
  25. package/lib/card/index.js.map +1 -1
  26. package/lib/card/themes/halo/dark/index.js +1 -1
  27. package/lib/card/themes/halo/light/index.js +1 -1
  28. package/lib/card/themes/solar/charcoal/index.js +1 -1
  29. package/lib/card/themes/solar/pearl/index.js +1 -1
  30. package/lib/chart/helpers/index.d.ts +1 -0
  31. package/lib/chart/helpers/legend.d.ts +1 -0
  32. package/lib/chart/helpers/merge.d.ts +1 -0
  33. package/lib/chart/helpers/types.d.ts +1 -0
  34. package/lib/chart/index.d.ts +8 -3
  35. package/lib/chart/index.js +20 -4
  36. package/lib/chart/index.js.map +1 -1
  37. package/lib/chart/plugins/doughnut-center-label.d.ts +1 -0
  38. package/lib/checkbox/index.d.ts +1 -1
  39. package/lib/clock/index.d.ts +1 -1
  40. package/lib/clock/utils/TickManager.d.ts +1 -0
  41. package/lib/clock/utils/timestamps.d.ts +1 -0
  42. package/lib/collapse/index.d.ts +1 -1
  43. package/lib/color-dialog/elements/color-palettes.d.ts +1 -1
  44. package/lib/color-dialog/elements/grayscale-palettes.d.ts +1 -1
  45. package/lib/color-dialog/elements/palettes.d.ts +1 -0
  46. package/lib/color-dialog/helpers/color-helpers.d.ts +1 -0
  47. package/lib/color-dialog/helpers/value-model.d.ts +1 -0
  48. package/lib/color-dialog/index.d.ts +1 -1
  49. package/lib/combo-box/helpers/filter.d.ts +1 -0
  50. package/lib/combo-box/helpers/keyboard-event.d.ts +1 -0
  51. package/lib/combo-box/helpers/types.d.ts +1 -0
  52. package/lib/combo-box/index.d.ts +1 -1
  53. package/lib/combo-box/themes/halo/dark/index.js +1 -1
  54. package/lib/combo-box/themes/halo/light/index.js +1 -1
  55. package/lib/counter/custom-elements.json +35 -0
  56. package/lib/counter/index.d.ts +89 -0
  57. package/lib/counter/index.js +156 -0
  58. package/lib/counter/index.js.map +1 -0
  59. package/lib/counter/themes/halo/dark/index.js +3 -0
  60. package/lib/counter/themes/halo/light/index.js +3 -0
  61. package/lib/counter/themes/solar/charcoal/index.js +3 -0
  62. package/lib/counter/themes/solar/pearl/index.js +3 -0
  63. package/lib/counter/utils.d.ts +14 -0
  64. package/lib/counter/utils.js +53 -0
  65. package/lib/counter/utils.js.map +1 -0
  66. package/lib/datetime-picker/custom-elements.json +1 -1
  67. package/lib/datetime-picker/index.d.ts +2 -2
  68. package/lib/datetime-picker/index.js +1 -1
  69. package/lib/datetime-picker/locales.d.ts +1 -0
  70. package/lib/datetime-picker/types.d.ts +1 -0
  71. package/lib/datetime-picker/utils.d.ts +1 -0
  72. package/lib/dialog/draggable-element.d.ts +1 -0
  73. package/lib/dialog/index.d.ts +1 -1
  74. package/lib/email-field/index.d.ts +1 -1
  75. package/lib/email-field/index.js +1 -0
  76. package/lib/email-field/index.js.map +1 -1
  77. package/lib/email-field/themes/halo/dark/index.js +1 -1
  78. package/lib/email-field/themes/halo/light/index.js +1 -1
  79. package/lib/email-field/themes/solar/charcoal/index.js +1 -1
  80. package/lib/email-field/themes/solar/pearl/index.js +1 -1
  81. package/lib/events.d.ts +1 -0
  82. package/lib/flag/index.d.ts +1 -1
  83. package/lib/flag/utils/FlagLoader.d.ts +1 -0
  84. package/lib/header/index.d.ts +1 -1
  85. package/lib/heatmap/custom-elements.json +13 -0
  86. package/lib/heatmap/helpers/color.d.ts +1 -0
  87. package/lib/heatmap/helpers/text.d.ts +1 -0
  88. package/lib/heatmap/helpers/track.d.ts +1 -0
  89. package/lib/heatmap/helpers/types.d.ts +1 -0
  90. package/lib/heatmap/index.d.ts +18 -6
  91. package/lib/heatmap/index.js +40 -20
  92. package/lib/heatmap/index.js.map +1 -1
  93. package/lib/icon/index.d.ts +1 -1
  94. package/lib/icon/utils/IconLoader.d.ts +1 -0
  95. package/lib/index.d.ts +1 -0
  96. package/lib/index.js +1 -1
  97. package/lib/interactive-chart/helpers/merge.d.ts +1 -0
  98. package/lib/interactive-chart/helpers/types.d.ts +4 -3
  99. package/lib/interactive-chart/index.d.ts +1 -1
  100. package/lib/interactive-chart/index.js +7 -7
  101. package/lib/interactive-chart/index.js.map +1 -1
  102. package/lib/item/helpers/types.d.ts +1 -0
  103. package/lib/item/index.d.ts +1 -1
  104. package/lib/label/custom-elements.json +7 -16
  105. package/lib/label/index.d.ts +32 -71
  106. package/lib/label/index.js +142 -179
  107. package/lib/label/index.js.map +1 -1
  108. package/lib/layout/index.d.ts +1 -1
  109. package/lib/led-gauge/index.d.ts +1 -1
  110. package/lib/list/extensible-function.d.ts +1 -0
  111. package/lib/list/helpers/list-renderer.d.ts +1 -0
  112. package/lib/list/helpers/types.d.ts +1 -0
  113. package/lib/list/index.d.ts +8 -2
  114. package/lib/list/index.js +26 -9
  115. package/lib/list/index.js.map +1 -1
  116. package/lib/list/renderer.d.ts +1 -0
  117. package/lib/loader/index.d.ts +1 -1
  118. package/lib/multi-input/helpers/types.d.ts +1 -0
  119. package/lib/multi-input/index.d.ts +1 -1
  120. package/lib/notification/elements/notification-tray.d.ts +1 -1
  121. package/lib/notification/elements/notification.d.ts +1 -1
  122. package/lib/notification/helpers/status.d.ts +1 -0
  123. package/lib/notification/helpers/types.d.ts +1 -0
  124. package/lib/notification/index.d.ts +1 -0
  125. package/lib/number-field/index.d.ts +1 -1
  126. package/lib/number-field/index.js +1 -0
  127. package/lib/number-field/index.js.map +1 -1
  128. package/lib/number-field/themes/halo/dark/index.js +1 -1
  129. package/lib/number-field/themes/halo/light/index.js +1 -1
  130. package/lib/number-field/themes/solar/charcoal/index.js +1 -1
  131. package/lib/number-field/themes/solar/pearl/index.js +1 -1
  132. package/lib/overlay/elements/overlay-backdrop.d.ts +1 -1
  133. package/lib/overlay/elements/overlay-viewport.d.ts +1 -1
  134. package/lib/overlay/elements/overlay.d.ts +1 -1
  135. package/lib/overlay/elements/overlay.js +1 -0
  136. package/lib/overlay/elements/overlay.js.map +1 -1
  137. package/lib/overlay/helpers/functions.d.ts +1 -0
  138. package/lib/overlay/helpers/types.d.ts +1 -0
  139. package/lib/overlay/index.d.ts +1 -0
  140. package/lib/overlay/managers/backdrop-manager.d.ts +2 -1
  141. package/lib/overlay/managers/close-manager.d.ts +2 -1
  142. package/lib/overlay/managers/focus-manager.d.ts +2 -1
  143. package/lib/overlay/managers/focus-manager.js +1 -2
  144. package/lib/overlay/managers/focus-manager.js.map +1 -1
  145. package/lib/overlay/managers/interaction-lock-manager.d.ts +1 -0
  146. package/lib/overlay/managers/viewport-manager.d.ts +2 -1
  147. package/lib/overlay/managers/zindex-manager.d.ts +2 -1
  148. package/lib/overlay/managers/zindex-manager.js +0 -2
  149. package/lib/overlay/managers/zindex-manager.js.map +1 -1
  150. package/lib/overlay-menu/custom-elements.json +64 -0
  151. package/lib/overlay-menu/helpers/types.d.ts +1 -0
  152. package/lib/overlay-menu/helpers/uuid.d.ts +1 -0
  153. package/lib/overlay-menu/index.d.ts +19 -1
  154. package/lib/overlay-menu/index.js +18 -0
  155. package/lib/overlay-menu/index.js.map +1 -1
  156. package/lib/overlay-menu/managers/menu-manager.d.ts +1 -0
  157. package/lib/pagination/helpers/types.d.ts +1 -0
  158. package/lib/pagination/index.d.ts +1 -1
  159. package/lib/panel/index.d.ts +1 -1
  160. package/lib/password-field/index.d.ts +1 -1
  161. package/lib/password-field/index.js +1 -0
  162. package/lib/password-field/index.js.map +1 -1
  163. package/lib/password-field/themes/halo/dark/index.js +1 -1
  164. package/lib/password-field/themes/halo/light/index.js +1 -1
  165. package/lib/password-field/themes/solar/charcoal/index.js +1 -1
  166. package/lib/password-field/themes/solar/pearl/index.js +1 -1
  167. package/lib/pill/index.d.ts +1 -1
  168. package/lib/progress-bar/index.d.ts +1 -1
  169. package/lib/radio-button/index.d.ts +1 -1
  170. package/lib/radio-button/radio-button-registry.d.ts +1 -0
  171. package/lib/rating/index.d.ts +1 -1
  172. package/lib/search-field/index.d.ts +1 -1
  173. package/lib/search-field/index.js +1 -0
  174. package/lib/search-field/index.js.map +1 -1
  175. package/lib/search-field/themes/halo/dark/index.js +1 -1
  176. package/lib/search-field/themes/halo/light/index.js +1 -1
  177. package/lib/search-field/themes/solar/charcoal/index.js +1 -1
  178. package/lib/search-field/themes/solar/pearl/index.js +1 -1
  179. package/lib/select/helpers/types.d.ts +1 -0
  180. package/lib/select/index.d.ts +1 -1
  181. package/lib/select/themes/halo/dark/index.js +1 -1
  182. package/lib/select/themes/halo/light/index.js +1 -1
  183. package/lib/sidebar-layout/index.d.ts +1 -1
  184. package/lib/slider/index.d.ts +7 -1
  185. package/lib/slider/index.js +48 -1
  186. package/lib/slider/index.js.map +1 -1
  187. package/lib/sparkline/index.d.ts +1 -1
  188. package/lib/swing-gauge/const.d.ts +23 -0
  189. package/lib/swing-gauge/const.js +27 -0
  190. package/lib/swing-gauge/const.js.map +1 -0
  191. package/lib/swing-gauge/custom-elements.json +47 -20
  192. package/lib/swing-gauge/helpers.d.ts +9 -0
  193. package/lib/swing-gauge/helpers.js +106 -0
  194. package/lib/swing-gauge/helpers.js.map +1 -0
  195. package/lib/swing-gauge/index.d.ts +207 -70
  196. package/lib/swing-gauge/index.js +651 -161
  197. package/lib/swing-gauge/index.js.map +1 -1
  198. package/lib/swing-gauge/themes/halo/dark/index.js +1 -1
  199. package/lib/swing-gauge/themes/halo/light/index.js +1 -1
  200. package/lib/swing-gauge/themes/solar/charcoal/index.js +1 -1
  201. package/lib/swing-gauge/themes/solar/pearl/index.js +1 -1
  202. package/lib/swing-gauge/types.d.ts +35 -0
  203. package/lib/swing-gauge/{helpers/types.js → types.js} +0 -0
  204. package/lib/swing-gauge/{helpers/types.js.map → types.js.map} +1 -1
  205. package/lib/tab/custom-elements.json +7 -18
  206. package/lib/tab/index.d.ts +5 -9
  207. package/lib/tab/index.js +11 -19
  208. package/lib/tab/index.js.map +1 -1
  209. package/lib/tab/themes/halo/dark/index.js +1 -1
  210. package/lib/tab/themes/halo/light/index.js +1 -1
  211. package/lib/tab/themes/solar/charcoal/index.js +1 -1
  212. package/lib/tab/themes/solar/pearl/index.js +1 -1
  213. package/lib/tab-bar/helpers/animate.d.ts +1 -0
  214. package/lib/tab-bar/index.d.ts +1 -1
  215. package/lib/text-field/index.d.ts +1 -1
  216. package/lib/text-field/index.js +1 -0
  217. package/lib/text-field/index.js.map +1 -1
  218. package/lib/text-field/themes/halo/dark/index.js +1 -1
  219. package/lib/text-field/themes/halo/light/index.js +1 -1
  220. package/lib/text-field/themes/solar/charcoal/index.js +1 -1
  221. package/lib/text-field/themes/solar/pearl/index.js +1 -1
  222. package/lib/time-picker/index.d.ts +1 -1
  223. package/lib/toggle/index.d.ts +1 -1
  224. package/lib/tooltip/elements/title-tooltip.d.ts +1 -0
  225. package/lib/tooltip/elements/tooltip-element.d.ts +2 -2
  226. package/lib/tooltip/elements/tooltip-element.js +0 -1
  227. package/lib/tooltip/elements/tooltip-element.js.map +1 -1
  228. package/lib/tooltip/helpers/overflow-tooltip.d.ts +1 -0
  229. package/lib/tooltip/helpers/renderer.d.ts +1 -0
  230. package/lib/tooltip/helpers/types.d.ts +1 -0
  231. package/lib/tooltip/index.d.ts +2 -2
  232. package/lib/tooltip/index.js +3 -4
  233. package/lib/tooltip/index.js.map +1 -1
  234. package/lib/tooltip/managers/tooltip-manager.d.ts +2 -1
  235. package/lib/tooltip/managers/tooltip-manager.js +20 -9
  236. package/lib/tooltip/managers/tooltip-manager.js.map +1 -1
  237. package/lib/tornado-chart/elements/tornado-chart.d.ts +1 -1
  238. package/lib/tornado-chart/elements/tornado-item.d.ts +1 -1
  239. package/lib/tornado-chart/index.d.ts +1 -0
  240. package/lib/tree/elements/tree-item.d.ts +9 -1
  241. package/lib/tree/elements/tree-item.js +17 -0
  242. package/lib/tree/elements/tree-item.js.map +1 -1
  243. package/lib/tree/elements/tree.d.ts +1 -1
  244. package/lib/tree/helpers/renderer.d.ts +1 -0
  245. package/lib/tree/helpers/renderer.js +1 -0
  246. package/lib/tree/helpers/renderer.js.map +1 -1
  247. package/lib/tree/helpers/types.d.ts +5 -0
  248. package/lib/tree/index.d.ts +1 -0
  249. package/lib/tree/managers/tree-manager.d.ts +1 -0
  250. package/lib/tree/themes/halo/dark/index.js +1 -1
  251. package/lib/tree/themes/halo/light/index.js +1 -1
  252. package/lib/tree/themes/solar/charcoal/index.js +1 -1
  253. package/lib/tree/themes/solar/pearl/index.js +1 -1
  254. package/lib/tree-select/custom-elements.json +5 -0
  255. package/lib/tree-select/helpers/types.d.ts +1 -0
  256. package/lib/tree-select/index.d.ts +17 -1
  257. package/lib/tree-select/index.js +49 -5
  258. package/lib/tree-select/index.js.map +1 -1
  259. package/lib/tree-select/themes/halo/dark/index.js +2 -1
  260. package/lib/tree-select/themes/halo/light/index.js +2 -1
  261. package/lib/tree-select/themes/solar/charcoal/index.js +2 -1
  262. package/lib/tree-select/themes/solar/pearl/index.js +2 -1
  263. package/package.json +10 -10
  264. package/lib/label/helpers/text.d.ts +0 -35
  265. package/lib/label/helpers/text.js +0 -57
  266. package/lib/label/helpers/text.js.map +0 -1
  267. package/lib/swing-gauge/helpers/canvas.d.ts +0 -8
  268. package/lib/swing-gauge/helpers/canvas.js +0 -115
  269. package/lib/swing-gauge/helpers/canvas.js.map +0 -1
  270. package/lib/swing-gauge/helpers/types.d.ts +0 -33
@@ -56,3 +56,4 @@ export declare class Palettes extends BasicElement {
56
56
  */
57
57
  protected updateValue(element: SVGAElement): void;
58
58
  }
59
+ //# sourceMappingURL=palettes.d.ts.map
@@ -60,3 +60,4 @@ export declare class ColorHelpers {
60
60
  static isValidDecimalForRGB(value: string): boolean;
61
61
  }
62
62
  export {};
63
+ //# sourceMappingURL=color-helpers.d.ts.map
@@ -73,3 +73,4 @@ declare class ValueModel {
73
73
  get value(): string;
74
74
  }
75
75
  export { ValueModel };
76
+ //# sourceMappingURL=value-model.d.ts.map
@@ -216,7 +216,7 @@ export declare class ColorDialog extends Dialog {
216
216
  */
217
217
  protected get footerRegion(): TemplateResult;
218
218
  }
219
-
219
+ //# sourceMappingURL=index.d.ts.map
220
220
  declare global {
221
221
  interface HTMLElementTagNameMap {
222
222
  'ef-color-dialog': ColorDialog;
@@ -8,3 +8,4 @@ import { ItemData } from '../../item';
8
8
  * @returns Filter accepting an item
9
9
  */
10
10
  export declare const defaultFilter: <T extends DataItem = ItemData>(el: ComboBox<T>) => ComboBoxFilter<T>;
11
+ //# sourceMappingURL=filter.d.ts.map
@@ -15,3 +15,4 @@ export declare class CustomKeyboardEvent extends Event {
15
15
  */
16
16
  constructor(type: string, eventInitDict?: KeyboardEventInit);
17
17
  }
18
+ //# sourceMappingURL=keyboard-event.d.ts.map
@@ -9,3 +9,4 @@ import { ItemData } from '../../item';
9
9
  */
10
10
  export declare type ComboBoxFilter<T extends DataItem = ItemData> = (item: T) => boolean;
11
11
  export declare type ComboBoxData<T extends DataItem = ItemData> = T[] | Promise<T[]>;
12
+ //# sourceMappingURL=types.d.ts.map
@@ -506,7 +506,7 @@ export declare class ComboBox<T extends DataItem = ItemData> extends ControlElem
506
506
  */
507
507
  protected render(): TemplateResult;
508
508
  }
509
-
509
+ //# sourceMappingURL=index.d.ts.map
510
510
  declare global {
511
511
  interface HTMLElementTagNameMap {
512
512
  'ef-combo-box': ComboBox;
@@ -5,4 +5,4 @@ import '@refinitiv-ui/elements/lib/text-field/themes/halo/dark';
5
5
  import '@refinitiv-ui/elements/lib/item/themes/halo/dark';
6
6
  import '@refinitiv-ui/elements/lib/icon/themes/halo/dark';
7
7
 
8
- elf.customStyles.define('ef-combo-box', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:12rem;font-weight:400;height:24px;width:152px;max-width:100%;margin:1px 0;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;border-radius:0;background-color:#0d0d0d;text-overflow:ellipsis;border:1px solid #404040;scrollbar-face-color:#595959;scrollbar-shadow-color:#595959;scrollbar-highlight-color:#595959;scrollbar-arrow-color:#595959;scrollbar-track-color:#1a1a1a;scrollbar-3dlight-color:#1a1a1a;scrollbar-darkshadow-color:#1a1a1a;scrollbar-color:#595959 #1a1a1a;scrollbar-width:thin;color:#ccc;cursor:pointer;scrollbar-face-color:#595959;scrollbar-shadow-color:#595959;scrollbar-highlight-color:#595959;scrollbar-arrow-color:#595959;scrollbar-track-color:#1a1a1a;scrollbar-3dlight-color:#1a1a1a;scrollbar-darkshadow-color:#1a1a1a;scrollbar-color:#595959 #1a1a1a;scrollbar-width:thin;padding:0}:host([type=number]){padding-right:0}:host([warning]){border:1px solid #ffc800}:host([warning][disabled]){color:rgba(204,204,204,.5);border:1px solid rgba(127,100,0,.5)}:host([error]),:host([error][warning]){border:1px solid #f5475b}:host([error][disabled]),:host([error][warning][disabled]){color:rgba(204,204,204,.5);border:1px solid rgba(160,28,43,.5)}:host ::-ms-clear{display:none}:host(:not([readonly])[focused]),:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#334bff}:host [part=input]{color:inherit;margin:0;flex:1 1 auto;min-width:0;height:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-overflow:ellipsis;touch-action:manipulation;width:100%;padding:0 8px}:host [part=input]::-webkit-clear-button,:host [part=input]::-webkit-inner-spin-button,:host [part=input]::-webkit-search-cancel-button,:host [part=input]::-webkit-search-decoration{-webkit-appearance:none}:host [part=input]:invalid{box-shadow:none}:host([readonly]){cursor:default}:host [part=placeholder]{opacity:.5;opacity:.7}:host [part=label],:host [part=placeholder]{margin-right:3px}:host [part~=icon]{color:#ccc;opacity:.7}:host(:not([readonly]):hover) [part~=icon],:host(:not([readonly])[focused]) [part~=icon]{opacity:1}:host(:not([readonly])[focused]) [part~=icon]{color:#334bff}:host([disabled]) [part~=icon]{color:rgba(64,64,64,.5)}:host [part=input-wrapper]{touch-action:manipulation;display:flex;align-items:center;width:100%;height:100%}:host [part~=button]{display:flex;justify-content:center;align-items:center;flex:none;height:100%;width:24px}:host [part=list]{max-width:var(--list-max-width,300px);max-height:var(--list-max-height);display:flex;flex-flow:column nowrap;color:#ccc;max-width:var(--list-max-width,300px);max-height:var(--list-max-height);border:1px solid #334bff;margin:2px 0;background-color:#262626}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){:host [part=list] ::slotted(ef-list){max-height:inherit}}:host [part=selection-badge]{min-width:21px;flex-shrink:0;height:17px;min-width:20px}:host ::-moz-selection{color:#fff;background-color:#334bff}:host ::selection{color:#fff;background-color:#334bff}:host [part=icon]{color:#ccc;min-width:1em;padding-left:2px;color:inherit}:host(:not([readonly]):not([error]):not([warning]):not([focused]):hover){border-color:grey;color:#fff}:host(:not([readonly]):not([error]):not([warning]):not([focused]):hover) [part=icon]{color:#6678ff}:host([warning]:hover:not([readonly]):not([focused])){color:#fff;border-color:#ffe999}:host([warning][disabled]),:host([warning][readonly]:not([focused])){border-color:rgba(255,233,153,.5)}:host([error]:hover:not([readonly]):not([focused])){color:#fff;border-color:#faa8b1}:host([error][disabled]),:host([error][readonly]:not([focused])),:host([error][warning][disabled]){border-color:rgba(250,168,177,.5)}:host([disabled]){border:1px solid rgba(64,64,64,.5);color:rgba(204,204,204,.5);background-color:rgba(13,13,13,.5)}:host([readonly]:not([focused])){border-color:rgba(64,64,64,.5);background-color:rgba(13,13,13,.5)}:host([readonly]:not([focused])) [part=icon]{color:rgba(204,204,204,.5)}:host(:not([readonly])[focused]),:host([focused]),:host([focused][error][warning]){border-color:#334bff;color:#fff}:host([focused]) [part=icon],:host([focused][error][warning]) [part=icon]{color:#6678ff}:host [part=list] ::slotted(ef-item:not(:first-child):not([type=divider])),:host [part=list] ef-item:not(:first-child):not([type=divider]){box-shadow:0 -1px 0 #404040}:host [part=list] ::slotted(:not(ef-item)){display:none}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#595959;border-radius:0;border:1px solid transparent}::-webkit-scrollbar-thumb:hover{background:#334bff}::-webkit-scrollbar-thumb:active{background:#0f1e8a}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb:horizontal{background-size:auto 6px;background-repeat:repeat-x;background-image:linear-gradient(to bottom,#595959,#595959);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:hover{background-image:linear-gradient(to bottom,#334bff,#334bff);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:active{background-image:linear-gradient(to bottom,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical{background-size:6px auto;background-repeat:repeat-y;background-image:linear-gradient(to right,#595959,#595959);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:hover{background-image:linear-gradient(to right,#334bff,#334bff);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:active{background-image:linear-gradient(to right,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-track:horizontal{border-top:1px solid #0d0d0d;border-bottom:1px solid #0d0d0d}::-webkit-scrollbar-track:vertical{border-left:1px solid #0d0d0d;border-right:1px solid #0d0d0d}::-webkit-scrollbar-button{background:0 0/1px 2px no-repeat #1a1a1a;height:16px;width:16px;display:none;border:1px solid #0d0d0d}::-webkit-scrollbar-button:end:decrement,::-webkit-scrollbar-button:start:increment{display:none}::-webkit-scrollbar-button:hover{background-color:#334bff;border:1px solid #334bff}::-webkit-scrollbar-button:active{background-color:#0f1e8a;border:1px solid #0d0d0d}::-webkit-scrollbar-button:horizontal{background-size:2px 1px}::-webkit-scrollbar-button:vertical:start:decrement{border-bottom-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px}::-webkit-scrollbar-button:vertical:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#334bff}::-webkit-scrollbar-button:vertical:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#0d0d0d}::-webkit-scrollbar-button:vertical:end:increment{border-top-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px}::-webkit-scrollbar-button:vertical:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#334bff}::-webkit-scrollbar-button:vertical:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#0d0d0d}::-webkit-scrollbar-button:horizontal:start:decrement{border-right-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px}::-webkit-scrollbar-button:horizontal:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#334bff}::-webkit-scrollbar-button:horizontal:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#0d0d0d}::-webkit-scrollbar-button:horizontal:end:increment{border-left-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px}::-webkit-scrollbar-button:horizontal:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#334bff}::-webkit-scrollbar-button:horizontal:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#0d0d0d}:host [part=input-wrapper]{border-left-color:inherit}:host [part~=button-toggle]{border-left:1px solid #404040;border-left-color:inherit}:host [part~=button-toggle]::before{content:\'\';display:block;position:absolute;top:-1px;right:-1px;bottom:-1px;width:24px;border:1px solid transparent}:host(:not([readonly])) [part~=button-clear]:hover{color:#334bff}:host(:not([readonly]):hover) [part~=button-toggle]{color:#334bff}:host(:not([readonly])[focused]) [part~=button-toggle]{border-left-color:#334bff;color:#334bff}:host(:not([readonly])) [part~=button-toggle]:hover{border-left-color:#334bff;color:#fff;background:#334bff}:host(:not([readonly])) [part~=button-toggle]:hover::after{content:\'\';display:block;position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid #334bff;pointer-events:none}:host(:not([readonly])) [part~=button-toggle]:active{background:#0f1e8a}:host(:not([readonly])) [part~=button]:active{color:#fff}:host(:not([readonly])) [part~=icon]{color:inherit!important}:host([disabled]) [part~=button-toggle],:host([readonly]) [part~=button-toggle]{border-left-color:rgba(64,64,64,.5)}:host([readonly]) [part~=button-toggle]{color:rgba(204,204,204,.5);cursor:default}:host([focused][readonly]) [part~=button-toggle]{border-left-color:#334bff}:host [part=list] ::slotted(ef-list){display:block}');
8
+ elf.customStyles.define('ef-combo-box', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:12rem;font-weight:400;height:24px;width:152px;max-width:100%;margin:1px 0;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;border-radius:0;background-color:#0d0d0d;text-overflow:ellipsis;border:1px solid #404040;scrollbar-face-color:#595959;scrollbar-shadow-color:#595959;scrollbar-highlight-color:#595959;scrollbar-arrow-color:#595959;scrollbar-track-color:#1a1a1a;scrollbar-3dlight-color:#1a1a1a;scrollbar-darkshadow-color:#1a1a1a;scrollbar-color:#595959 #1a1a1a;scrollbar-width:thin;color:#ccc;cursor:pointer;scrollbar-face-color:#595959;scrollbar-shadow-color:#595959;scrollbar-highlight-color:#595959;scrollbar-arrow-color:#595959;scrollbar-track-color:#1a1a1a;scrollbar-3dlight-color:#1a1a1a;scrollbar-darkshadow-color:#1a1a1a;scrollbar-color:#595959 #1a1a1a;scrollbar-width:thin;padding:0}:host([type=number]){padding-right:0}:host([warning]){border:1px solid #ffc800}:host([warning][disabled]){color:rgba(204,204,204,.5);border:1px solid rgba(127,100,0,.5)}:host([error]),:host([error][warning]){border:1px solid #f5475b}:host([error][disabled]),:host([error][warning][disabled]){color:rgba(204,204,204,.5);border:1px solid rgba(160,28,43,.5)}:host ::-ms-clear{display:none}:host(:not([readonly])[focused]),:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#334bff}:host [part=input]{color:inherit;margin:0;flex:1 1 auto;min-width:0;height:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-overflow:ellipsis;touch-action:manipulation;width:100%;padding:0 8px}:host [part=input]::-webkit-clear-button,:host [part=input]::-webkit-inner-spin-button,:host [part=input]::-webkit-search-cancel-button,:host [part=input]::-webkit-search-decoration{-webkit-appearance:none}:host [part=input]:invalid{box-shadow:none}:host([disabled]) [part=input]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host([readonly]){cursor:default}:host [part=placeholder]{opacity:.5;opacity:.7}:host [part=label],:host [part=placeholder]{margin-right:3px}:host [part~=icon]{color:#ccc;opacity:.7}:host(:not([readonly]):hover) [part~=icon],:host(:not([readonly])[focused]) [part~=icon]{opacity:1}:host(:not([readonly])[focused]) [part~=icon]{color:#334bff}:host([disabled]) [part~=icon]{color:rgba(64,64,64,.5)}:host [part=input-wrapper]{touch-action:manipulation;display:flex;align-items:center;width:100%;height:100%}:host [part~=button]{display:flex;justify-content:center;align-items:center;flex:none;height:100%;width:24px}:host [part=list]{max-width:var(--list-max-width,300px);max-height:var(--list-max-height);display:flex;flex-flow:column nowrap;color:#ccc;max-width:var(--list-max-width,300px);max-height:var(--list-max-height);border:1px solid #334bff;margin:2px 0;background-color:#262626}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){:host [part=list] ::slotted(ef-list){max-height:inherit}}:host [part=selection-badge]{min-width:21px;flex-shrink:0;height:17px;min-width:20px}:host ::-moz-selection{color:#fff;background-color:#334bff}:host ::selection{color:#fff;background-color:#334bff}:host [part=icon]{color:#ccc;min-width:1em;padding-left:2px;color:inherit}:host(:not([readonly]):not([error]):not([warning]):not([focused]):hover){border-color:grey;color:#fff}:host(:not([readonly]):not([error]):not([warning]):not([focused]):hover) [part=icon]{color:#6678ff}:host([warning]:hover:not([readonly]):not([focused])){color:#fff;border-color:#ffe999}:host([warning][disabled]),:host([warning][readonly]:not([focused])){border-color:rgba(255,233,153,.5)}:host([error]:hover:not([readonly]):not([focused])){color:#fff;border-color:#faa8b1}:host([error][disabled]),:host([error][readonly]:not([focused])),:host([error][warning][disabled]){border-color:rgba(250,168,177,.5)}:host([disabled]){border:1px solid rgba(64,64,64,.5);color:rgba(204,204,204,.5);background-color:rgba(13,13,13,.5)}:host([readonly]:not([focused])){border-color:rgba(64,64,64,.5);background-color:rgba(13,13,13,.5)}:host([readonly]:not([focused])) [part=icon]{color:rgba(204,204,204,.5)}:host(:not([readonly])[focused]),:host([focused]),:host([focused][error][warning]){border-color:#334bff;color:#fff}:host([focused]) [part=icon],:host([focused][error][warning]) [part=icon]{color:#6678ff}:host [part=list] ::slotted(ef-item:not(:first-child):not([type=divider])),:host [part=list] ef-item:not(:first-child):not([type=divider]){box-shadow:0 -1px 0 #404040}:host [part=list] ::slotted(:not(ef-item)){display:none}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#595959;border-radius:0;border:1px solid transparent}::-webkit-scrollbar-thumb:hover{background:#334bff}::-webkit-scrollbar-thumb:active{background:#0f1e8a}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb:horizontal{background-size:auto 6px;background-repeat:repeat-x;background-image:linear-gradient(to bottom,#595959,#595959);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:hover{background-image:linear-gradient(to bottom,#334bff,#334bff);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:active{background-image:linear-gradient(to bottom,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical{background-size:6px auto;background-repeat:repeat-y;background-image:linear-gradient(to right,#595959,#595959);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:hover{background-image:linear-gradient(to right,#334bff,#334bff);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:active{background-image:linear-gradient(to right,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-track:horizontal{border-top:1px solid #0d0d0d;border-bottom:1px solid #0d0d0d}::-webkit-scrollbar-track:vertical{border-left:1px solid #0d0d0d;border-right:1px solid #0d0d0d}::-webkit-scrollbar-button{background:0 0/1px 2px no-repeat #1a1a1a;height:16px;width:16px;display:none;border:1px solid #0d0d0d}::-webkit-scrollbar-button:end:decrement,::-webkit-scrollbar-button:start:increment{display:none}::-webkit-scrollbar-button:hover{background-color:#334bff;border:1px solid #334bff}::-webkit-scrollbar-button:active{background-color:#0f1e8a;border:1px solid #0d0d0d}::-webkit-scrollbar-button:horizontal{background-size:2px 1px}::-webkit-scrollbar-button:vertical:start:decrement{border-bottom-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px}::-webkit-scrollbar-button:vertical:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#334bff}::-webkit-scrollbar-button:vertical:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#0d0d0d}::-webkit-scrollbar-button:vertical:end:increment{border-top-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px}::-webkit-scrollbar-button:vertical:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#334bff}::-webkit-scrollbar-button:vertical:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#0d0d0d}::-webkit-scrollbar-button:horizontal:start:decrement{border-right-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px}::-webkit-scrollbar-button:horizontal:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#334bff}::-webkit-scrollbar-button:horizontal:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#0d0d0d}::-webkit-scrollbar-button:horizontal:end:increment{border-left-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px}::-webkit-scrollbar-button:horizontal:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#334bff}::-webkit-scrollbar-button:horizontal:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#0d0d0d}:host [part=input-wrapper]{border-left-color:inherit}:host [part~=button-toggle]{border-left:1px solid #404040;border-left-color:inherit}:host [part~=button-toggle]::before{content:\'\';display:block;position:absolute;top:-1px;right:-1px;bottom:-1px;width:24px;border:1px solid transparent}:host(:not([readonly])) [part~=button-clear]:hover{color:#334bff}:host(:not([readonly]):hover) [part~=button-toggle]{color:#334bff}:host(:not([readonly])[focused]) [part~=button-toggle]{border-left-color:#334bff;color:#334bff}:host(:not([readonly])) [part~=button-toggle]:hover{border-left-color:#334bff;color:#fff;background:#334bff}:host(:not([readonly])) [part~=button-toggle]:hover::after{content:\'\';display:block;position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid #334bff;pointer-events:none}:host(:not([readonly])) [part~=button-toggle]:active{background:#0f1e8a}:host(:not([readonly])) [part~=button]:active{color:#fff}:host(:not([readonly])) [part~=icon]{color:inherit!important}:host([disabled]) [part~=button-toggle],:host([readonly]) [part~=button-toggle]{border-left-color:rgba(64,64,64,.5)}:host([readonly]) [part~=button-toggle]{color:rgba(204,204,204,.5);cursor:default}:host([focused][readonly]) [part~=button-toggle]{border-left-color:#334bff}:host [part=list] ::slotted(ef-list){display:block}');
@@ -5,4 +5,4 @@ import '@refinitiv-ui/elements/lib/text-field/themes/halo/light';
5
5
  import '@refinitiv-ui/elements/lib/item/themes/halo/light';
6
6
  import '@refinitiv-ui/elements/lib/icon/themes/halo/light';
7
7
 
8
- elf.customStyles.define('ef-combo-box', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:12rem;font-weight:400;height:24px;width:152px;max-width:100%;margin:1px 0;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;border-radius:0;background-color:#fff;text-overflow:ellipsis;border:1px solid #595959;scrollbar-face-color:#999;scrollbar-shadow-color:#999;scrollbar-highlight-color:#999;scrollbar-arrow-color:#999;scrollbar-track-color:#f2f2f2;scrollbar-3dlight-color:#f2f2f2;scrollbar-darkshadow-color:#f2f2f2;scrollbar-color:#999 #f2f2f2;scrollbar-width:thin;color:#404040;cursor:pointer;scrollbar-face-color:#999;scrollbar-shadow-color:#999;scrollbar-highlight-color:#999;scrollbar-arrow-color:#999;scrollbar-track-color:#f2f2f2;scrollbar-3dlight-color:#f2f2f2;scrollbar-darkshadow-color:#f2f2f2;scrollbar-color:#999 #f2f2f2;scrollbar-width:thin;padding:0}:host([type=number]){padding-right:0}:host([warning]){border:1px solid #cca000}:host([warning][disabled]){color:rgba(64,64,64,.5);border:1px solid rgba(204,160,0,.5)}:host([error]),:host([error][warning]){border:1px solid #d94255}:host([error][disabled]),:host([error][warning][disabled]){color:rgba(64,64,64,.5);border:1px solid rgba(182,50,67,.5)}:host ::-ms-clear{display:none}:host(:not([readonly])[focused]),:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#334bff}:host [part=input]{color:inherit;margin:0;flex:1 1 auto;min-width:0;height:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-overflow:ellipsis;touch-action:manipulation;width:100%;padding:0 8px}:host [part=input]::-webkit-clear-button,:host [part=input]::-webkit-inner-spin-button,:host [part=input]::-webkit-search-cancel-button,:host [part=input]::-webkit-search-decoration{-webkit-appearance:none}:host [part=input]:invalid{box-shadow:none}:host([readonly]){cursor:default}:host [part=placeholder]{opacity:.5;opacity:.7}:host [part=label],:host [part=placeholder]{margin-right:3px}:host [part~=icon]{color:#404040;opacity:.7}:host(:not([readonly]):hover) [part~=icon],:host(:not([readonly])[focused]) [part~=icon]{opacity:1}:host(:not([readonly])[focused]) [part~=icon]{color:#334bff}:host([disabled]) [part~=icon]{color:rgba(89,89,89,.5)}:host [part=input-wrapper]{touch-action:manipulation;display:flex;align-items:center;width:100%;height:100%}:host [part~=button]{display:flex;justify-content:center;align-items:center;flex:none;height:100%;width:24px}:host [part=list]{max-width:var(--list-max-width,300px);max-height:var(--list-max-height);display:flex;flex-flow:column nowrap;color:#404040;max-width:var(--list-max-width,300px);max-height:var(--list-max-height);border:1px solid #334bff;margin:2px 0;background-color:#f2f2f2}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){:host [part=list] ::slotted(ef-list){max-height:inherit}}:host [part=selection-badge]{min-width:21px;flex-shrink:0;height:17px;min-width:20px}:host ::-moz-selection{color:#fff;background-color:#334bff}:host ::selection{color:#fff;background-color:#334bff}:host [part=icon]{min-width:1em;padding-left:2px;color:#595959}:host(:not([readonly]):not([error]):not([warning]):not([focused]):hover){border-color:#0d0d0d;color:#0d0d0d}:host(:not([readonly]):not([error]):not([warning]):not([focused]):hover) [part=icon]{color:#334bff}:host([warning]:hover:not([readonly]):not([focused])){color:#0d0d0d;border-color:#ffe999}:host([warning][disabled]),:host([warning][readonly]:not([focused])){border-color:rgba(255,233,153,.5)}:host([error]:hover:not([readonly]):not([focused])){color:#0d0d0d;border-color:#eeacb4}:host([error][disabled]),:host([error][readonly]:not([focused])),:host([error][warning][disabled]){border-color:rgba(238,172,180,.5)}:host([disabled]){border:1px solid rgba(89,89,89,.5);color:rgba(64,64,64,.5);background-color:rgba(255,255,255,.5)}:host([readonly]:not([focused])){border-color:rgba(89,89,89,.5);background-color:rgba(255,255,255,.5)}:host([readonly]:not([focused])) [part=icon]{color:rgba(64,64,64,.5)}:host(:not([readonly])[focused]),:host([focused]),:host([focused][error][warning]){border-color:#334bff;color:#0d0d0d}:host([focused]) [part=icon],:host([focused][error][warning]) [part=icon]{color:#334bff}:host([disabled]) [part=icon]{color:rgba(89,89,89,.5)}:host [part=list] ::slotted(ef-item:not(:first-child):not([type=divider])),:host [part=list] ef-item:not(:first-child):not([type=divider]){box-shadow:0 -1px 0 #d9d9d9}:host [part=list] ::slotted(:not(ef-item)){display:none}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#999;border-radius:0;border:1px solid transparent}::-webkit-scrollbar-thumb:hover{background:#334bff}::-webkit-scrollbar-thumb:active{background:#0f1e8a}::-webkit-scrollbar-track{background:#f2f2f2}::-webkit-scrollbar-thumb:horizontal{background-size:auto 6px;background-repeat:repeat-x;background-image:linear-gradient(to bottom,#999,#999);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:hover{background-image:linear-gradient(to bottom,#334bff,#334bff);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:active{background-image:linear-gradient(to bottom,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical{background-size:6px auto;background-repeat:repeat-y;background-image:linear-gradient(to right,#999,#999);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:hover{background-image:linear-gradient(to right,#334bff,#334bff);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:active{background-image:linear-gradient(to right,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-track:horizontal{border-top:1px solid #fff;border-bottom:1px solid #fff}::-webkit-scrollbar-track:vertical{border-left:1px solid #fff;border-right:1px solid #fff}::-webkit-scrollbar-button{background:0 0/1px 2px no-repeat #f2f2f2;height:16px;width:16px;display:none;border:1px solid #fff}::-webkit-scrollbar-button:end:decrement,::-webkit-scrollbar-button:start:increment{display:none}::-webkit-scrollbar-button:hover{background-color:#334bff;border:1px solid #334bff}::-webkit-scrollbar-button:active{background-color:#0f1e8a;border:1px solid #fff}::-webkit-scrollbar-button:horizontal{background-size:2px 1px}::-webkit-scrollbar-button:vertical:start:decrement{border-bottom-color:#fff;background-image:linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px}::-webkit-scrollbar-button:vertical:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#334bff}::-webkit-scrollbar-button:vertical:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#fff}::-webkit-scrollbar-button:vertical:end:increment{border-top-color:#fff;background-image:linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px}::-webkit-scrollbar-button:vertical:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#334bff}::-webkit-scrollbar-button:vertical:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#fff}::-webkit-scrollbar-button:horizontal:start:decrement{border-right-color:#fff;background-image:linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px}::-webkit-scrollbar-button:horizontal:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#334bff}::-webkit-scrollbar-button:horizontal:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#fff}::-webkit-scrollbar-button:horizontal:end:increment{border-left-color:#fff;background-image:linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px}::-webkit-scrollbar-button:horizontal:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#334bff}::-webkit-scrollbar-button:horizontal:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#fff}:host [part=input-wrapper]{border-left-color:inherit}:host [part~=button-toggle]{border-left:1px solid #595959;border-left-color:inherit}:host [part~=button-toggle]::before{content:\'\';display:block;position:absolute;top:-1px;right:-1px;bottom:-1px;width:24px;border:1px solid transparent}:host(:not([readonly])) [part~=button-clear]:hover{color:#334bff}:host(:not([readonly]):hover) [part~=button-toggle]{color:#334bff}:host(:not([readonly])[focused]) [part~=button-toggle]{border-left-color:#334bff;color:#334bff}:host(:not([readonly])) [part~=button-toggle]:hover{border-left-color:#334bff;color:#fff;background:#334bff}:host(:not([readonly])) [part~=button-toggle]:hover::after{content:\'\';display:block;position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid #334bff;pointer-events:none}:host(:not([readonly])) [part~=button-toggle]:active{background:#0f1e8a}:host(:not([readonly])) [part~=button]:active{color:#fff}:host(:not([readonly])) [part~=icon]{color:inherit!important}:host([disabled]) [part~=button-toggle],:host([readonly]) [part~=button-toggle]{border-left-color:rgba(89,89,89,.5)}:host([readonly]) [part~=button-toggle]{color:rgba(64,64,64,.5);cursor:default}:host([focused][readonly]) [part~=button-toggle]{border-left-color:#334bff}:host [part=list] ::slotted(ef-list){display:block}');
8
+ elf.customStyles.define('ef-combo-box', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:12rem;font-weight:400;height:24px;width:152px;max-width:100%;margin:1px 0;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;border-radius:0;background-color:#fff;text-overflow:ellipsis;border:1px solid #595959;scrollbar-face-color:#999;scrollbar-shadow-color:#999;scrollbar-highlight-color:#999;scrollbar-arrow-color:#999;scrollbar-track-color:#f2f2f2;scrollbar-3dlight-color:#f2f2f2;scrollbar-darkshadow-color:#f2f2f2;scrollbar-color:#999 #f2f2f2;scrollbar-width:thin;color:#404040;cursor:pointer;scrollbar-face-color:#999;scrollbar-shadow-color:#999;scrollbar-highlight-color:#999;scrollbar-arrow-color:#999;scrollbar-track-color:#f2f2f2;scrollbar-3dlight-color:#f2f2f2;scrollbar-darkshadow-color:#f2f2f2;scrollbar-color:#999 #f2f2f2;scrollbar-width:thin;padding:0}:host([type=number]){padding-right:0}:host([warning]){border:1px solid #cca000}:host([warning][disabled]){color:rgba(64,64,64,.5);border:1px solid rgba(204,160,0,.5)}:host([error]),:host([error][warning]){border:1px solid #d94255}:host([error][disabled]),:host([error][warning][disabled]){color:rgba(64,64,64,.5);border:1px solid rgba(182,50,67,.5)}:host ::-ms-clear{display:none}:host(:not([readonly])[focused]),:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#334bff}:host [part=input]{color:inherit;margin:0;flex:1 1 auto;min-width:0;height:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-overflow:ellipsis;touch-action:manipulation;width:100%;padding:0 8px}:host [part=input]::-webkit-clear-button,:host [part=input]::-webkit-inner-spin-button,:host [part=input]::-webkit-search-cancel-button,:host [part=input]::-webkit-search-decoration{-webkit-appearance:none}:host [part=input]:invalid{box-shadow:none}:host([disabled]) [part=input]{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host([readonly]){cursor:default}:host [part=placeholder]{opacity:.5;opacity:.7}:host [part=label],:host [part=placeholder]{margin-right:3px}:host [part~=icon]{color:#404040;opacity:.7}:host(:not([readonly]):hover) [part~=icon],:host(:not([readonly])[focused]) [part~=icon]{opacity:1}:host(:not([readonly])[focused]) [part~=icon]{color:#334bff}:host([disabled]) [part~=icon]{color:rgba(89,89,89,.5)}:host [part=input-wrapper]{touch-action:manipulation;display:flex;align-items:center;width:100%;height:100%}:host [part~=button]{display:flex;justify-content:center;align-items:center;flex:none;height:100%;width:24px}:host [part=list]{max-width:var(--list-max-width,300px);max-height:var(--list-max-height);display:flex;flex-flow:column nowrap;color:#404040;max-width:var(--list-max-width,300px);max-height:var(--list-max-height);border:1px solid #334bff;margin:2px 0;background-color:#f2f2f2}@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){:host [part=list] ::slotted(ef-list){max-height:inherit}}:host [part=selection-badge]{min-width:21px;flex-shrink:0;height:17px;min-width:20px}:host ::-moz-selection{color:#fff;background-color:#334bff}:host ::selection{color:#fff;background-color:#334bff}:host [part=icon]{min-width:1em;padding-left:2px;color:#595959}:host(:not([readonly]):not([error]):not([warning]):not([focused]):hover){border-color:#0d0d0d;color:#0d0d0d}:host(:not([readonly]):not([error]):not([warning]):not([focused]):hover) [part=icon]{color:#334bff}:host([warning]:hover:not([readonly]):not([focused])){color:#0d0d0d;border-color:#ffe999}:host([warning][disabled]),:host([warning][readonly]:not([focused])){border-color:rgba(255,233,153,.5)}:host([error]:hover:not([readonly]):not([focused])){color:#0d0d0d;border-color:#eeacb4}:host([error][disabled]),:host([error][readonly]:not([focused])),:host([error][warning][disabled]){border-color:rgba(238,172,180,.5)}:host([disabled]){border:1px solid rgba(89,89,89,.5);color:rgba(64,64,64,.5);background-color:rgba(255,255,255,.5)}:host([readonly]:not([focused])){border-color:rgba(89,89,89,.5);background-color:rgba(255,255,255,.5)}:host([readonly]:not([focused])) [part=icon]{color:rgba(64,64,64,.5)}:host(:not([readonly])[focused]),:host([focused]),:host([focused][error][warning]){border-color:#334bff;color:#0d0d0d}:host([focused]) [part=icon],:host([focused][error][warning]) [part=icon]{color:#334bff}:host([disabled]) [part=icon]{color:rgba(89,89,89,.5)}:host [part=list] ::slotted(ef-item:not(:first-child):not([type=divider])),:host [part=list] ef-item:not(:first-child):not([type=divider]){box-shadow:0 -1px 0 #d9d9d9}:host [part=list] ::slotted(:not(ef-item)){display:none}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#999;border-radius:0;border:1px solid transparent}::-webkit-scrollbar-thumb:hover{background:#334bff}::-webkit-scrollbar-thumb:active{background:#0f1e8a}::-webkit-scrollbar-track{background:#f2f2f2}::-webkit-scrollbar-thumb:horizontal{background-size:auto 6px;background-repeat:repeat-x;background-image:linear-gradient(to bottom,#999,#999);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:hover{background-image:linear-gradient(to bottom,#334bff,#334bff);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:active{background-image:linear-gradient(to bottom,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical{background-size:6px auto;background-repeat:repeat-y;background-image:linear-gradient(to right,#999,#999);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:hover{background-image:linear-gradient(to right,#334bff,#334bff);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:active{background-image:linear-gradient(to right,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-track:horizontal{border-top:1px solid #fff;border-bottom:1px solid #fff}::-webkit-scrollbar-track:vertical{border-left:1px solid #fff;border-right:1px solid #fff}::-webkit-scrollbar-button{background:0 0/1px 2px no-repeat #f2f2f2;height:16px;width:16px;display:none;border:1px solid #fff}::-webkit-scrollbar-button:end:decrement,::-webkit-scrollbar-button:start:increment{display:none}::-webkit-scrollbar-button:hover{background-color:#334bff;border:1px solid #334bff}::-webkit-scrollbar-button:active{background-color:#0f1e8a;border:1px solid #fff}::-webkit-scrollbar-button:horizontal{background-size:2px 1px}::-webkit-scrollbar-button:vertical:start:decrement{border-bottom-color:#fff;background-image:linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px}::-webkit-scrollbar-button:vertical:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#334bff}::-webkit-scrollbar-button:vertical:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#fff}::-webkit-scrollbar-button:vertical:end:increment{border-top-color:#fff;background-image:linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px}::-webkit-scrollbar-button:vertical:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#334bff}::-webkit-scrollbar-button:vertical:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#fff}::-webkit-scrollbar-button:horizontal:start:decrement{border-right-color:#fff;background-image:linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px}::-webkit-scrollbar-button:horizontal:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#334bff}::-webkit-scrollbar-button:horizontal:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#fff}::-webkit-scrollbar-button:horizontal:end:increment{border-left-color:#fff;background-image:linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px}::-webkit-scrollbar-button:horizontal:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#334bff}::-webkit-scrollbar-button:horizontal:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#fff}:host [part=input-wrapper]{border-left-color:inherit}:host [part~=button-toggle]{border-left:1px solid #595959;border-left-color:inherit}:host [part~=button-toggle]::before{content:\'\';display:block;position:absolute;top:-1px;right:-1px;bottom:-1px;width:24px;border:1px solid transparent}:host(:not([readonly])) [part~=button-clear]:hover{color:#334bff}:host(:not([readonly]):hover) [part~=button-toggle]{color:#334bff}:host(:not([readonly])[focused]) [part~=button-toggle]{border-left-color:#334bff;color:#334bff}:host(:not([readonly])) [part~=button-toggle]:hover{border-left-color:#334bff;color:#fff;background:#334bff}:host(:not([readonly])) [part~=button-toggle]:hover::after{content:\'\';display:block;position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid #334bff;pointer-events:none}:host(:not([readonly])) [part~=button-toggle]:active{background:#0f1e8a}:host(:not([readonly])) [part~=button]:active{color:#fff}:host(:not([readonly])) [part~=icon]{color:inherit!important}:host([disabled]) [part~=button-toggle],:host([readonly]) [part~=button-toggle]{border-left-color:rgba(89,89,89,.5)}:host([readonly]) [part~=button-toggle]{color:rgba(64,64,64,.5);cursor:default}:host([focused][readonly]) [part~=button-toggle]{border-left-color:#334bff}:host [part=list] ::slotted(ef-list){display:block}');
@@ -0,0 +1,35 @@
1
+ {
2
+ "version": "experimental",
3
+ "tags": [
4
+ {
5
+ "name": "ef-counter",
6
+ "description": "Counter is an item count badge,\nsupport maximun display number and notation of large numbers.",
7
+ "attributes": [
8
+ {
9
+ "name": "value",
10
+ "description": "The value of counter as string number",
11
+ "type": "string"
12
+ },
13
+ {
14
+ "name": "max",
15
+ "description": "Set maximum counter value.\nThis value will be displayed with suffix `+` if count value is larger than max.",
16
+ "type": "string"
17
+ }
18
+ ],
19
+ "properties": [
20
+ {
21
+ "name": "value",
22
+ "attribute": "value",
23
+ "description": "The value of counter as string number",
24
+ "type": "string"
25
+ },
26
+ {
27
+ "name": "max",
28
+ "attribute": "max",
29
+ "description": "Set maximum counter value.\nThis value will be displayed with suffix `+` if count value is larger than max.",
30
+ "type": "string"
31
+ }
32
+ ]
33
+ }
34
+ ]
35
+ }
@@ -0,0 +1,89 @@
1
+ import { JSXInterface } from '../jsx';
2
+ import { BasicElement, TemplateResult, CSSResult } from '@refinitiv-ui/core';
3
+ /**
4
+ * Counter is an item count badge,
5
+ * support maximun display number and notation of large numbers.
6
+ */
7
+ export declare class Counter extends BasicElement {
8
+ /**
9
+ * Element version number
10
+ * @returns version number
11
+ */
12
+ static get version(): string;
13
+ /**
14
+ * Internal value of the element.
15
+ */
16
+ private _value;
17
+ /**
18
+ * Internal max of the element.
19
+ */
20
+ private _max;
21
+ /**
22
+ * The value of counter as string number
23
+ * @param value counter value
24
+ */
25
+ set value(value: string);
26
+ /**
27
+ * The value of counter as string number
28
+ * @returns {string} counter value
29
+ */
30
+ get value(): string;
31
+ /**
32
+ * Set maximum counter value.
33
+ * This value will be displayed with suffix `+` if count value is larger than max.
34
+ * @param value counter value
35
+ */
36
+ set max(value: string);
37
+ /**
38
+ * Set maximum counter value.
39
+ * This value will be displayed with suffix `+` if count value is larger than max.
40
+ * @returns {string} max value
41
+ */
42
+ get max(): string;
43
+ /**
44
+ * Cast and validate value to string
45
+ * @param value Value that is not string which may be set by app developer, e.g. number or invalid string or null or undefined
46
+ * @param propName name of property that being validate
47
+ * @returns string representation of the value or return empty string if value is invalid string number
48
+ */
49
+ protected validateValue(value: unknown, propName?: string): string;
50
+ /**
51
+ * Check if passed value is a valid number
52
+ * @param value Value to check
53
+ * @returns {boolean} false if value is invalid
54
+ */
55
+ protected isValidNumber(value: string): boolean;
56
+ /**
57
+ * Format display counter value
58
+ * @param value value to format
59
+ * @returns {string} formatted value
60
+ */
61
+ protected formatValue(value: string): string;
62
+ /**
63
+ * A `CSSResult` that will be used
64
+ * to style the host, slotted children
65
+ * and the internal template of the element.
66
+ * @returns CSS template
67
+ */
68
+ static get styles(): CSSResult | CSSResult[];
69
+ /**
70
+ * A `TemplateResult` that will be used
71
+ * to render the updated internal template.
72
+ * @return Render template
73
+ */
74
+ protected render(): TemplateResult;
75
+ }
76
+ //# sourceMappingURL=index.d.ts.map
77
+ declare global {
78
+ interface HTMLElementTagNameMap {
79
+ 'ef-counter': Counter;
80
+ }
81
+
82
+ namespace JSX {
83
+ interface IntrinsicElements {
84
+ 'ef-counter': Partial<Counter> | JSXInterface.HTMLAttributes<Counter>;
85
+ }
86
+ }
87
+ }
88
+
89
+ export {};
@@ -0,0 +1,156 @@
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, WarningNotice } from '@refinitiv-ui/core';
8
+ import { VERSION } from '../';
9
+ import { truncateDecimal, convertToCompactNotation } from './utils';
10
+ /**
11
+ * Counter is an item count badge,
12
+ * support maximun display number and notation of large numbers.
13
+ */
14
+ let Counter = class Counter extends BasicElement {
15
+ constructor() {
16
+ super(...arguments);
17
+ /**
18
+ * Internal value of the element.
19
+ */
20
+ this._value = '';
21
+ /**
22
+ * Internal max of the element.
23
+ */
24
+ this._max = '';
25
+ }
26
+ /**
27
+ * Element version number
28
+ * @returns version number
29
+ */
30
+ static get version() {
31
+ return VERSION;
32
+ }
33
+ /**
34
+ * The value of counter as string number
35
+ * @param value counter value
36
+ */
37
+ set value(value) {
38
+ value = this.validateValue(value, 'value');
39
+ const oldValue = this._value;
40
+ if (oldValue !== value) {
41
+ this._value = value;
42
+ void this.requestUpdate('value', oldValue);
43
+ }
44
+ }
45
+ /**
46
+ * The value of counter as string number
47
+ * @returns {string} counter value
48
+ */
49
+ get value() {
50
+ return this._value;
51
+ }
52
+ /**
53
+ * Set maximum counter value.
54
+ * This value will be displayed with suffix `+` if count value is larger than max.
55
+ * @param value counter value
56
+ */
57
+ set max(value) {
58
+ value = this.validateValue(value, 'max');
59
+ const oldValue = this._max;
60
+ if (oldValue !== value) {
61
+ this._max = value;
62
+ void this.requestUpdate('max', oldValue);
63
+ }
64
+ }
65
+ /**
66
+ * Set maximum counter value.
67
+ * This value will be displayed with suffix `+` if count value is larger than max.
68
+ * @returns {string} max value
69
+ */
70
+ get max() {
71
+ return this._max;
72
+ }
73
+ /**
74
+ * Cast and validate value to string
75
+ * @param value Value that is not string which may be set by app developer, e.g. number or invalid string or null or undefined
76
+ * @param propName name of property that being validate
77
+ * @returns string representation of the value or return empty string if value is invalid string number
78
+ */
79
+ validateValue(value, propName = '') {
80
+ // Has a number been passed?
81
+ if (typeof value === 'number') {
82
+ value = value.toString(); // stringify the number
83
+ }
84
+ // Do we have a valid number string?
85
+ if (typeof value === 'string' && this.isValidNumber(value)) {
86
+ return value;
87
+ }
88
+ new WarningNotice(`${this.localName} : The specified value "${value}" of ${propName} property is not valid. Default value will be used instead.`).show();
89
+ return '';
90
+ }
91
+ /**
92
+ * Check if passed value is a valid number
93
+ * @param value Value to check
94
+ * @returns {boolean} false if value is invalid
95
+ */
96
+ isValidNumber(value) {
97
+ const number = Number(value);
98
+ return !isNaN(number) && isFinite(number) && number >= 0;
99
+ }
100
+ /**
101
+ * Format display counter value
102
+ * @param value value to format
103
+ * @returns {string} formatted value
104
+ */
105
+ formatValue(value) {
106
+ if (value === '') {
107
+ return '0';
108
+ }
109
+ // Truncate decimal to integer.
110
+ const countValue = truncateDecimal(value);
111
+ const maxValue = this.max ? truncateDecimal(this.max) : Infinity;
112
+ // Format value if value greater than max
113
+ // If max is null, it will show the value
114
+ return countValue > maxValue ? `${convertToCompactNotation(maxValue)}+` : convertToCompactNotation(countValue);
115
+ }
116
+ /**
117
+ * A `CSSResult` that will be used
118
+ * to style the host, slotted children
119
+ * and the internal template of the element.
120
+ * @returns CSS template
121
+ */
122
+ static get styles() {
123
+ return css `
124
+ :host {
125
+ display: inline-block;
126
+ position: relative;
127
+ }
128
+ [part="number"] {
129
+ text-overflow: ellipsis;
130
+ white-space: nowrap;
131
+ overflow: hidden;
132
+ }
133
+ `;
134
+ }
135
+ /**
136
+ * A `TemplateResult` that will be used
137
+ * to render the updated internal template.
138
+ * @return Render template
139
+ */
140
+ render() {
141
+ return html `<span part="number">${this.formatValue(this.value)}</span>`;
142
+ }
143
+ };
144
+ __decorate([
145
+ property({ type: String })
146
+ ], Counter.prototype, "value", null);
147
+ __decorate([
148
+ property({ type: String })
149
+ ], Counter.prototype, "max", null);
150
+ Counter = __decorate([
151
+ customElement('ef-counter', {
152
+ alias: 'coral-counter'
153
+ })
154
+ ], Counter);
155
+ export { Counter };
156
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/counter/index.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACL,YAAY,EACZ,IAAI,EACJ,GAAG,EACH,aAAa,EACb,QAAQ,EACR,aAAa,EAGd,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,KAAK,CAAC;AAE9B,OAAO,EACL,eAAe,EACf,wBAAwB,EACzB,MAAM,SAAS,CAAC;AAEjB;;;GAGG;AAIH,IAAa,OAAO,GAApB,MAAa,OAAQ,SAAQ,YAAY;IAAzC;;QASE;;WAEG;QACM,WAAM,GAAG,EAAE,CAAC;QAEpB;;UAEE;QACM,SAAI,GAAG,EAAE,CAAC;IA6HrB,CAAC;IA7IC;;;OAGG;IACH,MAAM,KAAK,OAAO;QAChB,OAAO,OAAO,CAAC;IACjB,CAAC;IAYA;;;MAGE;IAEF,IAAW,KAAK,CAAE,KAAa;QAC7B,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC;QAC7B,IAAI,QAAQ,KAAK,KAAK,EAAE;YACtB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,KAAK,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;SAC5C;IACH,CAAC;IACF;;;MAGE;IACF,IAAW,KAAK;QACd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;;OAIG;IAEH,IAAW,GAAG,CAAE,KAAa;QAC3B,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QAEzC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;QAC3B,IAAI,QAAQ,KAAK,KAAK,EAAE;YACtB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;YAClB,KAAK,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;SAC1C;IACH,CAAC;IACD;;;;OAIG;IACH,IAAW,GAAG;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED;;;;;OAKG;IACO,aAAa,CAAE,KAAc,EAAE,QAAQ,GAAG,EAAE;QACpD,4BAA4B;QAC5B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;YAC7B,KAAK,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,uBAAuB;SAClD;QACD,oCAAoC;QACpC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE;YAC1D,OAAO,KAAK,CAAC;SACd;QACD,IAAI,aAAa,CAAC,GAAG,IAAI,CAAC,SAAS,2BAA2B,KAAe,QAAQ,QAAQ,6DAA6D,CAAC,CAAC,IAAI,EAAE,CAAC;QACnK,OAAO,EAAE,CAAC;IAEZ,CAAC;IAED;;;;OAIG;IACO,aAAa,CAAE,KAAa;QACpC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7B,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC;IAC3D,CAAC;IAED;;;;OAIG;IACO,WAAW,CAAE,KAAa;QAClC,IAAI,KAAK,KAAK,EAAE,EAAE;YAChB,OAAO,GAAG,CAAC;SACZ;QAED,+BAA+B;QAC/B,MAAM,UAAU,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QAGjE,yCAAyC;QACzC,yCAAyC;QACzC,OAAO,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,wBAAwB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;IACjH,CAAC;IAED;;;;;OAKG;IACH,MAAM,KAAK,MAAM;QACf,OAAO,GAAG,CAAA;;;;;;;;;;KAUT,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACO,MAAM;QACd,OAAO,IAAI,CAAA,uBAAuB,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;IAC1E,CAAC;CACF,CAAA;AAtHE;IADA,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;oCAQzB;AAeF;IADC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;kCAS1B;AAtDU,OAAO;IAHnB,aAAa,CAAC,YAAY,EAAE;QAC3B,KAAK,EAAE,eAAe;KACvB,CAAC;GACW,OAAO,CA8InB;SA9IY,OAAO"}
@@ -0,0 +1,3 @@
1
+ import '@refinitiv-ui/elements/lib/icon/themes/halo/dark';
2
+
3
+ elf.customStyles.define('ef-counter', ':host{touch-action:manipulation;background:#404040;border-radius:10px;transition:120ms;margin:2px;font-family:inherit;font-size:12rem;font-weight:400;padding:0 5px;min-width:21px;max-width:180px;outline:0;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;vertical-align:middle;position:relative;overflow:hidden;max-width:120px;min-width:20px;height:20px;line-height:20px;color:#fff}');
@@ -0,0 +1,3 @@
1
+ import '@refinitiv-ui/elements/lib/icon/themes/halo/light';
2
+
3
+ elf.customStyles.define('ef-counter', ':host{touch-action:manipulation;background:#d9d9d9;border-radius:10px;transition:120ms;margin:2px;font-family:inherit;font-size:12rem;font-weight:400;padding:0 5px;min-width:21px;max-width:180px;outline:0;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;vertical-align:middle;position:relative;overflow:hidden;max-width:120px;min-width:20px;height:20px;line-height:20px;color:#0d0d0d}');
@@ -0,0 +1,3 @@
1
+ import '@refinitiv-ui/elements/lib/icon/themes/solar/charcoal';
2
+
3
+ elf.customStyles.define('ef-counter', ':host{touch-action:manipulation;background:#c2c2c2;border-radius:2px;transition:70ms;margin:3px 3px 0 0;font-family:inherit;font-size:13rem;font-weight:400;padding:0 4px;min-width:22px;max-width:180px;outline:0;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;vertical-align:middle;position:relative;overflow:hidden;color:#000;height:17px;max-width:120px}');
@@ -0,0 +1,3 @@
1
+ import '@refinitiv-ui/elements/lib/icon/themes/solar/pearl';
2
+
3
+ elf.customStyles.define('ef-counter', ':host{touch-action:manipulation;background:#a9afba;border-radius:2px;transition:70ms;margin:3px 3px 0 0;font-family:inherit;font-size:13rem;font-weight:400;padding:0 4px;min-width:22px;max-width:180px;outline:0;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;vertical-align:middle;position:relative;overflow:hidden;color:#fff;height:17px;max-width:120px}');
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Truncate decimal value
3
+ * @param value A decimal value, either string or number
4
+ * @returns {number} Integer value as number
5
+ */
6
+ declare const truncateDecimal: (value: string | number) => number;
7
+ /**
8
+ * Convert a large number to abbreviate numbers if value greater than 999
9
+ * @param value An integer or decimal value as number
10
+ * @returns {string} Formatted value if greater than 999, otherwise return string value
11
+ */
12
+ declare const convertToCompactNotation: (value: number) => string;
13
+ export { truncateDecimal, convertToCompactNotation };
14
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1,53 @@
1
+ const THOUSAND = { value: 1000, notation: 'K' };
2
+ const MILLION = { value: 1e6, notation: 'M' };
3
+ const BILLION = { value: 1e9, notation: 'B' };
4
+ const TRILLION = { value: 1e12, notation: 'T' };
5
+ /**
6
+ * Truncate decimal value
7
+ * @param value A decimal value, either string or number
8
+ * @returns {number} Integer value as number
9
+ */
10
+ const truncateDecimal = (value) => {
11
+ // stringify the number
12
+ value = typeof value === 'number' ? value.toString() : value;
13
+ // Truncate decimal e.g. '9.9' -> '9'
14
+ return parseInt(value, 10);
15
+ };
16
+ /**
17
+ * Compute a decimal place of number that will be prefix of the notation
18
+ * @param value A decimal value as number
19
+ * @returns {string} A computed string, either integer or decimal value
20
+ */
21
+ const computeDecimalPlace = (value) => {
22
+ // If value is less than 10 and the number after decimal is not 0 e.g. 1.45, return 1 decimal place
23
+ // Else, if the value is greater than 10 or value is less than 10 and the number after decimal is 0 e.g. 1.01, return integer
24
+ if (value < 10 && value % 1 >= 0.1) {
25
+ const splittedNumbers = value.toString().split('.');
26
+ return `${splittedNumbers[0]}.${splittedNumbers[1].substring(0, 1)}`;
27
+ }
28
+ else {
29
+ return truncateDecimal(value).toString();
30
+ }
31
+ };
32
+ /**
33
+ * Convert a large number to abbreviate numbers if value greater than 999
34
+ * @param value An integer or decimal value as number
35
+ * @returns {string} Formatted value if greater than 999, otherwise return string value
36
+ */
37
+ const convertToCompactNotation = (value) => {
38
+ if (value >= TRILLION.value) {
39
+ return `${computeDecimalPlace(value / TRILLION.value)}${TRILLION.notation}`;
40
+ }
41
+ if (value >= BILLION.value) {
42
+ return `${computeDecimalPlace(value / BILLION.value)}${BILLION.notation}`;
43
+ }
44
+ if (value >= MILLION.value) {
45
+ return `${computeDecimalPlace(value / MILLION.value)}${MILLION.notation}`;
46
+ }
47
+ if (value >= THOUSAND.value) {
48
+ return `${computeDecimalPlace(value / THOUSAND.value)}${THOUSAND.notation}`;
49
+ }
50
+ return value.toString();
51
+ };
52
+ export { truncateDecimal, convertToCompactNotation };
53
+ //# sourceMappingURL=utils.js.map