@refinitiv-ui/elements 5.7.0 → 5.8.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 (161) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/lib/autosuggest/custom-elements.json +14 -4
  3. package/lib/autosuggest/custom-elements.md +21 -14
  4. package/lib/autosuggest/index.d.ts +4 -0
  5. package/lib/autosuggest/index.js +4 -0
  6. package/lib/calendar/custom-elements.json +4 -2
  7. package/lib/calendar/custom-elements.md +2 -2
  8. package/lib/calendar/index.d.ts +2 -0
  9. package/lib/calendar/index.js +2 -0
  10. package/lib/canvas/custom-elements.json +7 -5
  11. package/lib/canvas/custom-elements.md +8 -8
  12. package/lib/canvas/index.d.ts +1 -0
  13. package/lib/canvas/index.js +1 -0
  14. package/lib/card/custom-elements.json +3 -1
  15. package/lib/card/custom-elements.md +5 -5
  16. package/lib/card/index.d.ts +2 -0
  17. package/lib/card/index.js +2 -0
  18. package/lib/chart/custom-elements.json +1 -1
  19. package/lib/chart/custom-elements.md +4 -4
  20. package/lib/checkbox/custom-elements.json +8 -4
  21. package/lib/checkbox/custom-elements.md +2 -2
  22. package/lib/checkbox/index.d.ts +3 -1
  23. package/lib/checkbox/index.js +2 -0
  24. package/lib/clock/custom-elements.json +8 -4
  25. package/lib/clock/custom-elements.md +9 -9
  26. package/lib/clock/index.d.ts +2 -0
  27. package/lib/clock/index.js +2 -0
  28. package/lib/clock/themes/halo/dark/index.js +1 -1
  29. package/lib/clock/themes/halo/light/index.js +1 -1
  30. package/lib/clock/themes/solar/charcoal/index.js +1 -1
  31. package/lib/clock/themes/solar/pearl/index.js +1 -1
  32. package/lib/color-dialog/custom-elements.json +21 -8
  33. package/lib/color-dialog/custom-elements.md +22 -22
  34. package/lib/color-dialog/index.d.ts +8 -8
  35. package/lib/color-dialog/index.js +8 -8
  36. package/lib/combo-box/custom-elements.json +19 -10
  37. package/lib/combo-box/custom-elements.md +20 -20
  38. package/lib/combo-box/index.d.ts +10 -2
  39. package/lib/combo-box/index.js +10 -1
  40. package/lib/combo-box/themes/halo/dark/index.js +1 -1
  41. package/lib/combo-box/themes/halo/light/index.js +1 -1
  42. package/lib/combo-box/themes/solar/charcoal/index.js +1 -1
  43. package/lib/combo-box/themes/solar/pearl/index.js +1 -1
  44. package/lib/counter/custom-elements.json +8 -4
  45. package/lib/counter/custom-elements.md +4 -4
  46. package/lib/counter/index.d.ts +2 -0
  47. package/lib/counter/index.js +2 -0
  48. package/lib/datetime-picker/custom-elements.json +48 -19
  49. package/lib/datetime-picker/custom-elements.md +36 -28
  50. package/lib/datetime-picker/index.d.ts +15 -4
  51. package/lib/datetime-picker/index.js +15 -4
  52. package/lib/dialog/custom-elements.json +30 -8
  53. package/lib/dialog/custom-elements.md +16 -16
  54. package/lib/dialog/index.d.ts +7 -10
  55. package/lib/dialog/index.js +7 -10
  56. package/lib/email-field/custom-elements.json +80 -93
  57. package/lib/email-field/custom-elements.md +22 -20
  58. package/lib/email-field/index.d.ts +43 -115
  59. package/lib/email-field/index.js +44 -244
  60. package/lib/flag/custom-elements.md +4 -4
  61. package/lib/flag/index.d.ts +2 -0
  62. package/lib/flag/index.js +2 -0
  63. package/lib/icon/custom-elements.md +4 -4
  64. package/lib/icon/index.d.ts +2 -0
  65. package/lib/icon/index.js +2 -0
  66. package/lib/interactive-chart/custom-elements.json +6 -10
  67. package/lib/interactive-chart/custom-elements.md +6 -7
  68. package/lib/interactive-chart/index.d.ts +5 -2
  69. package/lib/interactive-chart/index.js +5 -2
  70. package/lib/item/custom-elements.json +8 -6
  71. package/lib/item/custom-elements.md +14 -14
  72. package/lib/item/index.d.ts +2 -1
  73. package/lib/item/index.js +2 -1
  74. package/lib/led-gauge/custom-elements.json +4 -4
  75. package/lib/led-gauge/custom-elements.md +2 -2
  76. package/lib/led-gauge/index.d.ts +1 -0
  77. package/lib/led-gauge/index.js +1 -0
  78. package/lib/list/custom-elements.json +18 -5
  79. package/lib/list/custom-elements.md +12 -10
  80. package/lib/list/helpers/list-renderer.js +2 -0
  81. package/lib/list/index.d.ts +19 -2
  82. package/lib/list/index.js +34 -1
  83. package/lib/multi-input/custom-elements.json +3 -2
  84. package/lib/multi-input/custom-elements.md +16 -16
  85. package/lib/multi-input/index.d.ts +4 -0
  86. package/lib/multi-input/index.js +4 -0
  87. package/lib/number-field/custom-elements.json +97 -52
  88. package/lib/number-field/custom-elements.md +27 -22
  89. package/lib/number-field/index.d.ts +92 -47
  90. package/lib/number-field/index.js +113 -80
  91. package/lib/overlay/custom-elements.json +23 -13
  92. package/lib/overlay/custom-elements.md +29 -29
  93. package/lib/overlay/elements/overlay.d.ts +5 -0
  94. package/lib/overlay-menu/custom-elements.json +66 -14
  95. package/lib/overlay-menu/custom-elements.md +19 -19
  96. package/lib/overlay-menu/index.d.ts +13 -11
  97. package/lib/overlay-menu/index.js +13 -11
  98. package/lib/password-field/custom-elements.json +62 -67
  99. package/lib/password-field/custom-elements.md +19 -11
  100. package/lib/password-field/index.d.ts +42 -94
  101. package/lib/password-field/index.js +48 -194
  102. package/lib/pill/custom-elements.json +4 -2
  103. package/lib/pill/custom-elements.md +1 -1
  104. package/lib/pill/index.d.ts +1 -1
  105. package/lib/pill/index.js +1 -1
  106. package/lib/radio-button/custom-elements.json +8 -6
  107. package/lib/radio-button/custom-elements.md +3 -3
  108. package/lib/radio-button/index.d.ts +6 -5
  109. package/lib/radio-button/index.js +5 -4
  110. package/lib/search-field/custom-elements.json +70 -74
  111. package/lib/search-field/custom-elements.md +24 -16
  112. package/lib/search-field/index.d.ts +43 -100
  113. package/lib/search-field/index.js +46 -215
  114. package/lib/select/custom-elements.json +3 -2
  115. package/lib/select/custom-elements.md +10 -10
  116. package/lib/select/index.d.ts +11 -3
  117. package/lib/select/index.js +65 -26
  118. package/lib/sidebar-layout/custom-elements.json +2 -6
  119. package/lib/sidebar-layout/custom-elements.md +5 -6
  120. package/lib/sidebar-layout/index.d.ts +2 -1
  121. package/lib/slider/custom-elements.json +2 -2
  122. package/lib/slider/custom-elements.md +1 -1
  123. package/lib/slider/index.d.ts +1 -1
  124. package/lib/slider/index.js +1 -1
  125. package/lib/sparkline/custom-elements.json +4 -4
  126. package/lib/sparkline/custom-elements.md +2 -2
  127. package/lib/sparkline/index.d.ts +3 -1
  128. package/lib/sparkline/index.js +2 -0
  129. package/lib/swing-gauge/custom-elements.json +5 -3
  130. package/lib/swing-gauge/custom-elements.md +11 -11
  131. package/lib/swing-gauge/index.d.ts +3 -1
  132. package/lib/swing-gauge/index.js +3 -1
  133. package/lib/text-field/custom-elements.json +76 -87
  134. package/lib/text-field/custom-elements.md +24 -26
  135. package/lib/text-field/index.d.ts +50 -92
  136. package/lib/text-field/index.js +81 -230
  137. package/lib/time-picker/custom-elements.md +3 -3
  138. package/lib/time-picker/index.d.ts +3 -0
  139. package/lib/time-picker/index.js +3 -0
  140. package/lib/toggle/custom-elements.json +4 -2
  141. package/lib/toggle/custom-elements.md +1 -1
  142. package/lib/toggle/index.d.ts +2 -1
  143. package/lib/toggle/index.js +1 -0
  144. package/lib/tree/custom-elements.json +2 -1
  145. package/lib/tree/custom-elements.md +1 -1
  146. package/lib/tree/elements/tree.d.ts +1 -0
  147. package/lib/tree/elements/tree.js +1 -0
  148. package/lib/tree/themes/halo/dark/index.js +1 -1
  149. package/lib/tree/themes/halo/light/index.js +1 -1
  150. package/lib/tree/themes/solar/charcoal/index.js +1 -1
  151. package/lib/tree/themes/solar/pearl/index.js +1 -1
  152. package/lib/tree-select/custom-elements.json +8 -4
  153. package/lib/tree-select/custom-elements.md +3 -3
  154. package/lib/tree-select/index.d.ts +5 -3
  155. package/lib/tree-select/index.js +3 -2
  156. package/lib/tree-select/themes/halo/dark/index.js +1 -1
  157. package/lib/tree-select/themes/halo/light/index.js +1 -1
  158. package/lib/tree-select/themes/solar/charcoal/index.js +1 -1
  159. package/lib/tree-select/themes/solar/pearl/index.js +1 -1
  160. package/lib/version.js +1 -1
  161. package/package.json +10 -10
@@ -18,7 +18,7 @@
18
18
  {
19
19
  "name": "range",
20
20
  "description": "Value of range. eg [-20, 70]",
21
- "type": "object",
21
+ "type": "number[]",
22
22
  "default": "[]"
23
23
  },
24
24
  {
@@ -43,7 +43,7 @@
43
43
  "name": "neutral-color",
44
44
  "description": "Turn off background color and use grey",
45
45
  "type": "boolean",
46
- "default": "\"false\""
46
+ "default": "false"
47
47
  },
48
48
  {
49
49
  "name": "zero",
@@ -69,7 +69,7 @@
69
69
  "name": "range",
70
70
  "attribute": "range",
71
71
  "description": "Value of range. eg [-20, 70]",
72
- "type": "object",
72
+ "type": "number[]",
73
73
  "default": "[]"
74
74
  },
75
75
  {
@@ -98,7 +98,7 @@
98
98
  "attribute": "neutral-color",
99
99
  "description": "Turn off background color and use grey",
100
100
  "type": "boolean",
101
- "default": "\"false\""
101
+ "default": "false"
102
102
  },
103
103
  {
104
104
  "name": "zero",
@@ -9,8 +9,8 @@ horizontal bar visualization.
9
9
  |----------------|-----------------|------------------|----------|--------------------------------------------------|
10
10
  | `bottomLabel` | `bottom-label` | `string` | "" | Label to be displayed in the bottom legend |
11
11
  | `bottomValue` | `bottom-value` | `number \| null` | null | Value of bar for bottom legend position<br />Value can be -100 to 100 |
12
- | `neutralColor` | `neutral-color` | `boolean` | "false" | Turn off background color and use grey |
13
- | `range` | `range` | `object` | [] | Value of range. eg [-20, 70] |
12
+ | `neutralColor` | `neutral-color` | `boolean` | false | Turn off background color and use grey |
13
+ | `range` | `range` | `number[]` | [] | Value of range. eg [-20, 70] |
14
14
  | `rangeLabel` | `range-label` | `string` | "" | Label to be displayed in the bottom legend<br />when a range is displayed<br />and no bottom text is already set. |
15
15
  | `topLabel` | `top-label` | `string` | "" | Label to be displayed in the top legend |
16
16
  | `topValue` | `top-value` | `number \| null` | null | Value of bar for top legend position<br />Value can be -100 to 100 |
@@ -32,6 +32,7 @@ export declare class LedGauge extends BasicElement {
32
32
  bottomValue: number | null;
33
33
  /**
34
34
  * Value of range. eg [-20, 70]
35
+ * @type {number[]}
35
36
  */
36
37
  range: number[];
37
38
  /**
@@ -30,6 +30,7 @@ let LedGauge = class LedGauge extends BasicElement {
30
30
  this.bottomValue = null;
31
31
  /**
32
32
  * Value of range. eg [-20, 70]
33
+ * @type {number[]}
33
34
  */
34
35
  this.range = [];
35
36
  /**
@@ -20,12 +20,13 @@
20
20
  {
21
21
  "name": "value",
22
22
  "description": "Returns the first selected item value.\nUse `values` when multiple selection mode is enabled.",
23
- "type": "string"
23
+ "type": "string",
24
+ "default": "\"\""
24
25
  }
25
26
  ],
26
27
  "properties": [
27
28
  {
28
- "name": "delegatesFocus",
29
+ "name": "delegatesFocus (readonly)",
29
30
  "description": "Element focus delegation.\nSet to `false` and relies on native focusing.",
30
31
  "type": "false",
31
32
  "default": "false"
@@ -59,12 +60,14 @@
59
60
  "name": "value",
60
61
  "attribute": "value",
61
62
  "description": "Returns the first selected item value.\nUse `values` when multiple selection mode is enabled.",
62
- "type": "string"
63
+ "type": "string",
64
+ "default": "\"\""
63
65
  },
64
66
  {
65
67
  "name": "values",
66
68
  "description": "Returns a values collection of the currently\nselected item values",
67
- "type": "object"
69
+ "type": "string[]",
70
+ "default": "[]"
68
71
  }
69
72
  ],
70
73
  "events": [
@@ -91,7 +94,17 @@
91
94
  },
92
95
  {
93
96
  "name": "down",
94
- "description": "Navigate up through the list items",
97
+ "description": "Navigate down through the list items",
98
+ "params": []
99
+ },
100
+ {
101
+ "name": "first",
102
+ "description": "Navigate to first focusable item of the list",
103
+ "params": []
104
+ },
105
+ {
106
+ "name": "last",
107
+ "description": "Navigate to first focusable item of the list",
95
108
  "params": []
96
109
  },
97
110
  {
@@ -4,21 +4,23 @@ Provides listing and immutable selection
4
4
 
5
5
  ## Properties
6
6
 
7
- | Property | Attribute | Modifiers | Type | Default | Description |
8
- |------------------|-------------|-----------|----------------|--------------------------|--------------------------------------------------|
9
- | `data` | | | `ListData` | | The data object, used to render the list. |
10
- | `delegatesFocus` | | readonly | `false` | false | Element focus delegation.<br />Set to `false` and relies on native focusing. |
11
- | `multiple` | `multiple` | | `boolean` | false | Allow multiple selections |
12
- | `renderer` | | | `ListRenderer` | "new ListRenderer(this)" | Renderer used to render list item elements |
13
- | `stateless` | `stateless` | | `boolean` | false | Disable selections |
14
- | `value` | `value` | | `string` | | Returns the first selected item value.<br />Use `values` when multiple selection mode is enabled. |
15
- | `values` | | | `object` | | Returns a values collection of the currently<br />selected item values |
7
+ | Property | Attribute | Type | Default | Description |
8
+ |-----------------------------|-------------|----------------|--------------------------|--------------------------------------------------|
9
+ | `data` | | `ListData` | null | The data object, used to render the list. |
10
+ | `delegatesFocus (readonly)` | | `false` | false | Element focus delegation.<br />Set to `false` and relies on native focusing. |
11
+ | `multiple` | `multiple` | `boolean` | false | Allow multiple selections |
12
+ | `renderer` | | `ListRenderer` | "new ListRenderer(this)" | Renderer used to render list item elements |
13
+ | `stateless` | `stateless` | `boolean` | false | Disable selections |
14
+ | `value` | `value` | `string` | "" | Returns the first selected item value.<br />Use `values` when multiple selection mode is enabled. |
15
+ | `values` | | `string[]` | [] | Returns a values collection of the currently<br />selected item values |
16
16
 
17
17
  ## Methods
18
18
 
19
19
  | Method | Type | Description |
20
20
  |----------------|-------------------------|--------------------------------------------------|
21
- | `down` | `(): void` | Navigate up through the list items |
21
+ | `down` | `(): void` | Navigate down through the list items |
22
+ | `first` | `(): void` | Navigate to first focusable item of the list |
23
+ | `last` | `(): void` | Navigate to first focusable item of the list |
22
24
  | `scrollToItem` | `(item: T): void` | Scroll to list item element<br /><br />**item**: Data item to scroll to |
23
25
  | `selectItem` | `(item?: any): boolean` | Selects an item in the list<br /><br />**item**: Data Item or Item Element |
24
26
  | `up` | `(): void` | Navigate up through the list items |
@@ -28,6 +28,8 @@ export class ListRenderer extends Renderer {
28
28
  el.hidden = composer.getItemPropertyValue(item, 'hidden') === true;
29
29
  el.type = composer.getItemPropertyValue(item, 'type');
30
30
  el.multiple = !!context && context.multiple === true;
31
+ const itemRole = el.type === 'text' || !el.type ? 'option' : 'presentation';
32
+ el.setAttribute('role', itemRole);
31
33
  tooltip ? el.setAttribute('title', tooltip) : el.removeAttribute('title');
32
34
  return el;
33
35
  });
@@ -5,7 +5,8 @@ import type { ItemData } from '../item';
5
5
  import type { ListData } from './helpers/types';
6
6
  import { ListRenderer } from './helpers/list-renderer.js';
7
7
  import '../item/index.js';
8
- export { ListData, ListRenderer };
8
+ export type { ListData };
9
+ export { ListRenderer };
9
10
  /**
10
11
  * Key direction
11
12
  */
@@ -23,6 +24,7 @@ export declare class List<T extends DataItem = ItemData> extends ControlElement
23
24
  * @returns version number
24
25
  */
25
26
  static get version(): string;
27
+ protected readonly defaultRole: string | null;
26
28
  /**
27
29
  * Used to timestamp renders.
28
30
  * This enables diff checking against item updates,
@@ -71,6 +73,7 @@ export declare class List<T extends DataItem = ItemData> extends ControlElement
71
73
  /**
72
74
  * The data object, used to render the list.
73
75
  * @type {ListData}
76
+ * @default null
74
77
  */
75
78
  get data(): ListData<T>;
76
79
  set data(value: ListData<T>);
@@ -78,12 +81,15 @@ export declare class List<T extends DataItem = ItemData> extends ControlElement
78
81
  /**
79
82
  * Returns the first selected item value.
80
83
  * Use `values` when multiple selection mode is enabled.
84
+ * @default -
81
85
  */
82
86
  get value(): string;
83
87
  set value(value: string);
84
88
  /**
85
89
  * Returns a values collection of the currently
86
90
  * selected item values
91
+ * @type {string[]}
92
+ * @default []
87
93
  * @readonly
88
94
  */
89
95
  get values(): string[];
@@ -100,10 +106,20 @@ export declare class List<T extends DataItem = ItemData> extends ControlElement
100
106
  */
101
107
  up(): void;
102
108
  /**
103
- * Navigate up through the list items
109
+ * Navigate down through the list items
104
110
  * @returns {void}
105
111
  */
106
112
  down(): void;
113
+ /**
114
+ * Navigate to first focusable item of the list
115
+ * @returns {void}
116
+ */
117
+ first(): void;
118
+ /**
119
+ * Navigate to first focusable item of the list
120
+ * @returns {void}
121
+ */
122
+ last(): void;
107
123
  /**
108
124
  * Proxy for querying the composer
109
125
  * @param engine composer querying engine
@@ -262,6 +278,7 @@ export declare class List<T extends DataItem = ItemData> extends ControlElement
262
278
  protected renderLightDOM(): void;
263
279
  protected firstUpdated(changeProperties: PropertyValues): void;
264
280
  protected update(changeProperties: PropertyValues): void;
281
+ protected updated(changedProperties: PropertyValues): void;
265
282
  /**
266
283
  * A `CSSResultGroup` that will be used
267
284
  * to style the host, slotted children
package/lib/list/index.js CHANGED
@@ -23,6 +23,7 @@ const valueFormatWarning = new WarningNotice('The specified \'values\' format do
23
23
  let List = class List extends ControlElement {
24
24
  constructor() {
25
25
  super(...arguments);
26
+ this.defaultRole = 'listbox';
26
27
  /**
27
28
  * Used to timestamp renders.
28
29
  * This enables diff checking against item updates,
@@ -82,6 +83,7 @@ let List = class List extends ControlElement {
82
83
  /**
83
84
  * The data object, used to render the list.
84
85
  * @type {ListData}
86
+ * @default null
85
87
  */
86
88
  get data() {
87
89
  return this._data;
@@ -110,6 +112,7 @@ let List = class List extends ControlElement {
110
112
  /**
111
113
  * Returns the first selected item value.
112
114
  * Use `values` when multiple selection mode is enabled.
115
+ * @default -
113
116
  */
114
117
  get value() {
115
118
  return this.values[0] || '';
@@ -128,6 +131,8 @@ let List = class List extends ControlElement {
128
131
  /**
129
132
  * Returns a values collection of the currently
130
133
  * selected item values
134
+ * @type {string[]}
135
+ * @default []
131
136
  * @readonly
132
137
  */
133
138
  get values() {
@@ -189,12 +194,28 @@ let List = class List extends ControlElement {
189
194
  this.highlightItem(this.getNextHighlightItem(Direction.UP), true);
190
195
  }
191
196
  /**
192
- * Navigate up through the list items
197
+ * Navigate down through the list items
193
198
  * @returns {void}
194
199
  */
195
200
  down() {
196
201
  this.highlightItem(this.getNextHighlightItem(Direction.DOWN), true);
197
202
  }
203
+ /**
204
+ * Navigate to first focusable item of the list
205
+ * @returns {void}
206
+ */
207
+ first() {
208
+ const firstItem = this.itemMap.get(this.tabbableElements[0]);
209
+ this.highlightItem(firstItem, true);
210
+ }
211
+ /**
212
+ * Navigate to first focusable item of the list
213
+ * @returns {void}
214
+ */
215
+ last() {
216
+ const lastItem = this.itemMap.get(this.tabbableElements[this.tabbableElements.length - 1]);
217
+ this.highlightItem(lastItem, true);
218
+ }
198
219
  /**
199
220
  * Proxy for querying the composer
200
221
  * @param engine composer querying engine
@@ -352,6 +373,12 @@ let List = class List extends ControlElement {
352
373
  case 'ArrowDown':
353
374
  this.down();
354
375
  break;
376
+ case 'Home':
377
+ this.first();
378
+ break;
379
+ case 'End':
380
+ this.last();
381
+ break;
355
382
  default:
356
383
  return;
357
384
  }
@@ -548,6 +575,12 @@ let List = class List extends ControlElement {
548
575
  }
549
576
  return super.update(changeProperties);
550
577
  }
578
+ updated(changedProperties) {
579
+ super.updated(changedProperties);
580
+ if (changedProperties.has('multiple')) {
581
+ this.setAttribute('aria-multiselectable', this.multiple ? 'true' : 'false');
582
+ }
583
+ }
551
584
  /**
552
585
  * A `CSSResultGroup` that will be used
553
586
  * to style the host, slotted children
@@ -66,9 +66,10 @@
66
66
  ],
67
67
  "properties": [
68
68
  {
69
- "name": "values",
69
+ "name": "values (readonly)",
70
70
  "description": "Array of item's values ( readonly )",
71
- "type": "string[]"
71
+ "type": "string[]",
72
+ "default": "[]"
72
73
  },
73
74
  {
74
75
  "name": "pillsOnly",
@@ -4,22 +4,22 @@ An input control component to display a selection of pills
4
4
 
5
5
  ## Properties
6
6
 
7
- | Property | Attribute | Modifiers | Type | Default | Description |
8
- |------------------|---------------|-----------|--------------------------|---------|------------------------------------------------|
9
- | `data` | | | `MultiInputData \| null` | | The data object, used to render the list. |
10
- | `disabled` | `disabled` | | `boolean` | false | Set disabled state |
11
- | `error` | `error` | | `boolean` | false | Set state to error |
12
- | `icon` | `icon` | | `string` | "" | Specify icon to display inside input box |
13
- | `maxLength` | `maxlength` | | `number \| null` | null | Set character max limit |
14
- | `minLength` | `minlength` | | `number \| null` | null | Set character min limit |
15
- | `pillsOnly` | `pills-only` | | `boolean` | false | Hide text input box |
16
- | `placeholder` | `placeholder` | | `string` | "" | Placeholder text to display in input box |
17
- | `readonly` | `readonly` | | `boolean` | false | Hides text field and clear icon from all pills |
18
- | `selectionEnd` | | | `number \| null` | | Selection end index |
19
- | `selectionStart` | | | `number \| null` | | Selection start index |
20
- | `value` | `value` | | `string` | "" | Current value of text field |
21
- | `values` | | readonly | `string[]` | | Array of item's values ( readonly ) |
22
- | `warning` | `warning` | | `boolean` | false | Set state to warning |
7
+ | Property | Attribute | Type | Default | Description |
8
+ |---------------------|---------------|--------------------------|---------|------------------------------------------------|
9
+ | `data` | | `MultiInputData \| null` | null | The data object, used to render the list. |
10
+ | `disabled` | `disabled` | `boolean` | false | Set disabled state |
11
+ | `error` | `error` | `boolean` | false | Set state to error |
12
+ | `icon` | `icon` | `string` | "" | Specify icon to display inside input box |
13
+ | `maxLength` | `maxlength` | `number \| null` | null | Set character max limit |
14
+ | `minLength` | `minlength` | `number \| null` | null | Set character min limit |
15
+ | `pillsOnly` | `pills-only` | `boolean` | false | Hide text input box |
16
+ | `placeholder` | `placeholder` | `string` | "" | Placeholder text to display in input box |
17
+ | `readonly` | `readonly` | `boolean` | false | Hides text field and clear icon from all pills |
18
+ | `selectionEnd` | | `number \| null` | null | Selection end index |
19
+ | `selectionStart` | | `number \| null` | null | Selection start index |
20
+ | `value` | `value` | `string` | "" | Current value of text field |
21
+ | `values (readonly)` | | `string[]` | [] | Array of item's values ( readonly ) |
22
+ | `warning` | `warning` | `boolean` | false | Set state to warning |
23
23
 
24
24
  ## Methods
25
25
 
@@ -52,6 +52,7 @@ export declare class MultiInput extends ControlElement implements MultiValue {
52
52
  * Array of item's values ( readonly )
53
53
  * @readonly
54
54
  * @type {string[]}
55
+ * @default []
55
56
  */
56
57
  get values(): string[];
57
58
  /**
@@ -84,17 +85,20 @@ export declare class MultiInput extends ControlElement implements MultiValue {
84
85
  minLength: number | null;
85
86
  /**
86
87
  * Selection start index
88
+ * @default null
87
89
  */
88
90
  get selectionStart(): number | null;
89
91
  set selectionStart(index: SelectionIndex);
90
92
  /**
91
93
  * Selection end index
94
+ * @default null
92
95
  */
93
96
  get selectionEnd(): number | null;
94
97
  set selectionEnd(index: SelectionIndex);
95
98
  /**
96
99
  * The data object, used to render the list.
97
100
  * @type {MultiInputData | null}
101
+ * @default null
98
102
  */
99
103
  get data(): MultiInputData | null;
100
104
  set data(value: MultiInputData | null);
@@ -145,12 +145,14 @@ let MultiInput = class MultiInput extends ControlElement {
145
145
  * Array of item's values ( readonly )
146
146
  * @readonly
147
147
  * @type {string[]}
148
+ * @default []
148
149
  */
149
150
  get values() {
150
151
  return this.composer.queryItems(() => true).map(({ value }) => value);
151
152
  }
152
153
  /**
153
154
  * Selection start index
155
+ * @default null
154
156
  */
155
157
  get selectionStart() {
156
158
  if (this.search) {
@@ -165,6 +167,7 @@ let MultiInput = class MultiInput extends ControlElement {
165
167
  }
166
168
  /**
167
169
  * Selection end index
170
+ * @default null
168
171
  */
169
172
  get selectionEnd() {
170
173
  if (this.search) {
@@ -180,6 +183,7 @@ let MultiInput = class MultiInput extends ControlElement {
180
183
  /**
181
184
  * The data object, used to render the list.
182
185
  * @type {MultiInputData | null}
186
+ * @default null
183
187
  */
184
188
  get data() {
185
189
  return this._data;
@@ -3,13 +3,8 @@
3
3
  "tags": [
4
4
  {
5
5
  "name": "ef-number-field",
6
- "description": "Form control element for numbers",
6
+ "description": "Form control element for numbers.",
7
7
  "attributes": [
8
- {
9
- "name": "placeholder",
10
- "description": "Set placeholder text",
11
- "type": "string | null"
12
- },
13
8
  {
14
9
  "name": "no-spinner",
15
10
  "description": "Set spinner's visibility",
@@ -32,28 +27,22 @@
32
27
  "type": "string | null"
33
28
  },
34
29
  {
35
- "name": "transparent",
36
- "description": "Set state to transparent",
30
+ "name": "disabled",
31
+ "description": "Set disabled state",
37
32
  "type": "boolean",
38
33
  "default": "false"
39
34
  },
40
35
  {
41
36
  "name": "error",
42
- "description": "Set state to error",
43
- "type": "boolean",
44
- "default": "false"
45
- },
46
- {
47
- "name": "warning",
48
- "description": "Set state to warning",
37
+ "description": "Set error state",
49
38
  "type": "boolean",
50
39
  "default": "false"
51
40
  },
52
41
  {
53
- "name": "value",
54
- "description": "The value of the number entered into the input.",
42
+ "name": "placeholder",
43
+ "description": "Set placeholder text",
55
44
  "type": "string",
56
- "default": "0"
45
+ "default": "\"\""
57
46
  },
58
47
  {
59
48
  "name": "readonly",
@@ -62,19 +51,25 @@
62
51
  "default": "false"
63
52
  },
64
53
  {
65
- "name": "disabled",
66
- "description": "Set disabled state",
54
+ "name": "transparent",
55
+ "description": "Disables all other states and border/background styles.",
67
56
  "type": "boolean",
68
57
  "default": "false"
58
+ },
59
+ {
60
+ "name": "warning",
61
+ "description": "Set warning state",
62
+ "type": "boolean",
63
+ "default": "false"
64
+ },
65
+ {
66
+ "name": "value",
67
+ "description": "The value of the number entered into the input.",
68
+ "type": "string",
69
+ "default": "\"\""
69
70
  }
70
71
  ],
71
72
  "properties": [
72
- {
73
- "name": "placeholder",
74
- "attribute": "placeholder",
75
- "description": "Set placeholder text",
76
- "type": "string | null"
77
- },
78
73
  {
79
74
  "name": "noSpinner",
80
75
  "attribute": "no-spinner",
@@ -101,37 +96,42 @@
101
96
  "type": "string | null"
102
97
  },
103
98
  {
104
- "name": "transparent",
105
- "attribute": "transparent",
106
- "description": "Set state to transparent",
107
- "type": "boolean",
108
- "default": "false"
99
+ "name": "valueAsNumber (readonly)",
100
+ "description": "Returns the value of the element, interpreted as double number",
101
+ "type": "number"
109
102
  },
110
103
  {
111
- "name": "error",
112
- "attribute": "error",
113
- "description": "Set state to error",
114
- "type": "boolean",
115
- "default": "false"
104
+ "name": "selectionStart",
105
+ "type": "number | null"
116
106
  },
117
107
  {
118
- "name": "warning",
119
- "attribute": "warning",
120
- "description": "Set state to warning",
108
+ "name": "selectionEnd",
109
+ "type": "number | null"
110
+ },
111
+ {
112
+ "name": "selectionDirection",
113
+ "type": "\"forward\" | \"backward\" | \"none\" | null"
114
+ },
115
+ {
116
+ "name": "disabled",
117
+ "attribute": "disabled",
118
+ "description": "Set disabled state",
121
119
  "type": "boolean",
122
120
  "default": "false"
123
121
  },
124
122
  {
125
- "name": "valueAsNumber",
126
- "description": "Returns the value of the element, interpreted as double number",
127
- "type": "number"
123
+ "name": "error",
124
+ "attribute": "error",
125
+ "description": "Set error state",
126
+ "type": "boolean",
127
+ "default": "false"
128
128
  },
129
129
  {
130
- "name": "value",
131
- "attribute": "value",
132
- "description": "The value of the number entered into the input.",
130
+ "name": "placeholder",
131
+ "attribute": "placeholder",
132
+ "description": "Set placeholder text",
133
133
  "type": "string",
134
- "default": "0"
134
+ "default": "\"\""
135
135
  },
136
136
  {
137
137
  "name": "readonly",
@@ -141,11 +141,25 @@
141
141
  "default": "false"
142
142
  },
143
143
  {
144
- "name": "disabled",
145
- "attribute": "disabled",
146
- "description": "Set disabled state",
144
+ "name": "transparent",
145
+ "attribute": "transparent",
146
+ "description": "Disables all other states and border/background styles.",
147
+ "type": "boolean",
148
+ "default": "false"
149
+ },
150
+ {
151
+ "name": "warning",
152
+ "attribute": "warning",
153
+ "description": "Set warning state",
147
154
  "type": "boolean",
148
155
  "default": "false"
156
+ },
157
+ {
158
+ "name": "value",
159
+ "attribute": "value",
160
+ "description": "The value of the number entered into the input.",
161
+ "type": "string",
162
+ "default": "\"\""
149
163
  }
150
164
  ],
151
165
  "events": [
@@ -159,6 +173,26 @@
159
173
  }
160
174
  ],
161
175
  "methods": [
176
+ {
177
+ "name": "onInputInput",
178
+ "description": "",
179
+ "params": [
180
+ {
181
+ "name": "event",
182
+ "type": "InputEvent"
183
+ }
184
+ ]
185
+ },
186
+ {
187
+ "name": "onInputChange",
188
+ "description": "",
189
+ "params": [
190
+ {
191
+ "name": "event",
192
+ "type": "InputEvent"
193
+ }
194
+ ]
195
+ },
162
196
  {
163
197
  "name": "stepUp",
164
198
  "description": "Increases the input value by amount of step",
@@ -190,9 +224,20 @@
190
224
  "params": []
191
225
  },
192
226
  {
193
- "name": "select",
194
- "description": "Select the contents of input",
195
- "params": []
227
+ "name": "setSelectionRange",
228
+ "description": "",
229
+ "params": [
230
+ {
231
+ "name": "startSelection"
232
+ },
233
+ {
234
+ "name": "endSelection"
235
+ },
236
+ {
237
+ "name": "selectionDirection",
238
+ "type": "SelectionDirection"
239
+ }
240
+ ]
196
241
  }
197
242
  ]
198
243
  }