@aurodesignsystem-dev/auro-formkit 0.0.0-pr740.9 → 0.0.0-pr750.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 (94) hide show
  1. package/components/bibtemplate/dist/auro-bibtemplate.d.ts +6 -0
  2. package/components/bibtemplate/dist/index.js +25 -1
  3. package/components/bibtemplate/dist/registered.js +25 -1
  4. package/components/checkbox/demo/api.html +16 -10
  5. package/components/checkbox/demo/api.min.js +23 -16
  6. package/components/checkbox/demo/index.html +16 -10
  7. package/components/checkbox/demo/index.min.js +23 -16
  8. package/components/checkbox/demo/readme.html +16 -9
  9. package/components/checkbox/dist/index.js +23 -16
  10. package/components/checkbox/dist/registered.js +23 -16
  11. package/components/combobox/demo/api.html +16 -10
  12. package/components/combobox/demo/api.md +12 -6
  13. package/components/combobox/demo/api.min.js +442 -148
  14. package/components/combobox/demo/index.html +16 -10
  15. package/components/combobox/demo/index.min.js +442 -148
  16. package/components/combobox/demo/readme.html +16 -9
  17. package/components/combobox/dist/index.js +405 -136
  18. package/components/combobox/dist/registered.js +405 -136
  19. package/components/counter/demo/api.html +17 -10
  20. package/components/counter/demo/api.md +140 -7
  21. package/components/counter/demo/api.min.js +1171 -1016
  22. package/components/counter/demo/index.html +17 -10
  23. package/components/counter/demo/index.md +86 -0
  24. package/components/counter/demo/index.min.js +1171 -1016
  25. package/components/counter/demo/readme.html +16 -9
  26. package/components/counter/dist/auro-counter-group.d.ts +64 -23
  27. package/components/counter/dist/auro-counter.d.ts +10 -0
  28. package/components/counter/dist/index.js +1171 -1016
  29. package/components/counter/dist/registered.js +1171 -1016
  30. package/components/datepicker/demo/api.html +16 -10
  31. package/components/datepicker/demo/api.min.js +403 -123
  32. package/components/datepicker/demo/index.html +16 -10
  33. package/components/datepicker/demo/index.min.js +403 -123
  34. package/components/datepicker/demo/readme.html +16 -9
  35. package/components/datepicker/dist/auro-datepicker.d.ts +6 -0
  36. package/components/datepicker/dist/index.js +403 -123
  37. package/components/datepicker/dist/registered.js +403 -123
  38. package/components/dropdown/demo/api.html +16 -10
  39. package/components/dropdown/demo/api.md +77 -269
  40. package/components/dropdown/demo/api.min.js +336 -96
  41. package/components/dropdown/demo/index.html +16 -10
  42. package/components/dropdown/demo/index.md +45 -363
  43. package/components/dropdown/demo/index.min.js +336 -96
  44. package/components/dropdown/demo/readme.html +16 -9
  45. package/components/dropdown/dist/auro-dropdown.d.ts +35 -67
  46. package/components/dropdown/dist/auro-dropdownBib.d.ts +0 -6
  47. package/components/dropdown/dist/index.js +336 -96
  48. package/components/dropdown/dist/registered.js +336 -96
  49. package/components/form/demo/api.html +16 -9
  50. package/components/form/demo/autocomplete.html +19 -3
  51. package/components/form/demo/index.html +16 -9
  52. package/components/form/demo/readme.html +16 -9
  53. package/components/form/demo/working.html +19 -13
  54. package/components/helptext/dist/index.js +1 -1
  55. package/components/helptext/dist/registered.js +1 -1
  56. package/components/input/demo/api.html +16 -10
  57. package/components/input/demo/api.md +1 -1
  58. package/components/input/demo/api.min.js +14 -14
  59. package/components/input/demo/index.html +16 -10
  60. package/components/input/demo/index.min.js +14 -14
  61. package/components/input/demo/readme.html +16 -9
  62. package/components/input/dist/base-input.d.ts +1 -1
  63. package/components/input/dist/index.js +14 -14
  64. package/components/input/dist/registered.js +14 -14
  65. package/components/menu/demo/api.html +16 -32
  66. package/components/menu/demo/api.md +1 -1
  67. package/components/menu/demo/api.min.js +37 -12
  68. package/components/menu/demo/index.html +16 -10
  69. package/components/menu/demo/index.min.js +37 -12
  70. package/components/menu/demo/readme.html +16 -9
  71. package/components/menu/dist/auro-menu.d.ts +13 -2
  72. package/components/menu/dist/index.js +37 -12
  73. package/components/menu/dist/registered.js +37 -12
  74. package/components/radio/demo/api.html +16 -10
  75. package/components/radio/demo/api.md +0 -1
  76. package/components/radio/demo/api.min.js +61 -76
  77. package/components/radio/demo/index.html +16 -10
  78. package/components/radio/demo/index.min.js +61 -76
  79. package/components/radio/demo/readme.html +16 -9
  80. package/components/radio/dist/auro-radio.d.ts +8 -11
  81. package/components/radio/dist/index.js +61 -76
  82. package/components/radio/dist/registered.js +61 -76
  83. package/components/select/demo/api.html +16 -10
  84. package/components/select/demo/api.js +0 -2
  85. package/components/select/demo/api.md +53 -51
  86. package/components/select/demo/api.min.js +520 -358
  87. package/components/select/demo/index.html +16 -11
  88. package/components/select/demo/index.md +6 -158
  89. package/components/select/demo/index.min.js +520 -346
  90. package/components/select/demo/readme.html +16 -9
  91. package/components/select/dist/auro-select.d.ts +33 -8
  92. package/components/select/dist/index.js +483 -334
  93. package/components/select/dist/registered.js +483 -334
  94. package/package.json +26 -25
@@ -81,6 +81,7 @@ let AuroLibraryRuntimeUtils$1 = class AuroLibraryRuntimeUtils {
81
81
  }
82
82
  };
83
83
 
84
+ /* eslint-disable max-lines */
84
85
  // Copyright (c) 2020 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
85
86
  // See LICENSE in the project root for license information.
86
87
 
@@ -115,8 +116,8 @@ class AuroRadio extends LitElement {
115
116
  this.required = false;
116
117
  this.error = false;
117
118
  this.onDark = false;
118
- this.tabIndex = -1;
119
119
  this.touched = false;
120
+ this.role = 'radio';
120
121
 
121
122
  /**
122
123
  * @private
@@ -158,10 +159,6 @@ class AuroRadio extends LitElement {
158
159
  label: { type: String },
159
160
  name: { type: String },
160
161
  value: { type: String },
161
- tabIndex: {
162
- type: Number,
163
- reflect: true
164
- },
165
162
 
166
163
  /**
167
164
  * Whether or not the radio button has been touched by the user.
@@ -181,6 +178,15 @@ class AuroRadio extends LitElement {
181
178
  type: String,
182
179
  reflect: false,
183
180
  attribute: false
181
+ },
182
+
183
+ /**
184
+ * Do not add to api doc since changing of this can easily break a11y.
185
+ * @private
186
+ */
187
+ role: {
188
+ type: String,
189
+ reflect: true
184
190
  }
185
191
  };
186
192
  }
@@ -206,7 +212,6 @@ class AuroRadio extends LitElement {
206
212
  handleChange(event) {
207
213
  this.checked = event.target.checked;
208
214
  const customEvent = new CustomEvent(event.type, event);
209
-
210
215
  this.dispatchEvent(customEvent);
211
216
  }
212
217
 
@@ -265,7 +270,27 @@ class AuroRadio extends LitElement {
265
270
  }
266
271
 
267
272
  updated(changedProperties) {
273
+ if (changedProperties.has('error') || changedProperties.has('validity')) {
274
+ this.setAttribute('aria-invalid', this.error || this.validity !== 'valid' ? 'true' : 'false');
275
+ }
276
+
277
+ if (changedProperties.has('required')) {
278
+ this.setAttribute('aria-required', this.isRequired(this.required));
279
+ }
280
+
281
+ if (changedProperties.has('disabled')) {
282
+ if (this.disabled) {
283
+ this.setAttribute('aria-disabled', '');
284
+ } else {
285
+ this.removeAttribute('aria-disabled');
286
+ }
287
+ }
288
+
268
289
  if (changedProperties.has('checked')) {
290
+ this.setAttribute('aria-checked', this.checked ? 'true' : 'false');
291
+ // eslint-disable-next-line no-magic-numbers
292
+ this.setAttribute('tabindex', this.checked ? 0 : -1);
293
+
269
294
  this.dispatchEvent(new CustomEvent('resetRadio', {
270
295
  bubbles: true,
271
296
  composed: true
@@ -280,20 +305,6 @@ class AuroRadio extends LitElement {
280
305
  }
281
306
  }
282
307
 
283
- /**
284
- * Method for handling content when it is invalid accessibility wise.
285
- * @private
286
- * @param {Boolean} error - The element's error attribute.
287
- * @returns {void}
288
- */
289
- invalid(error) {
290
- if (error) {
291
- return 'true';
292
- }
293
-
294
- return 'false';
295
- }
296
-
297
308
  /**
298
309
  * Method for handling passing the required status to aria.
299
310
  * @private
@@ -312,6 +323,7 @@ class AuroRadio extends LitElement {
312
323
  // Add the tag name as an attribute if it is different than the component name
313
324
  this.runtimeUtils.handleComponentTagRename(this, 'auro-radio');
314
325
 
326
+ this.addEventListener('focus', this.handleFocus);
315
327
  this.addEventListener('blur', this.handleBlur);
316
328
 
317
329
  this.input = this.shadowRoot.querySelector('input');
@@ -336,27 +348,21 @@ class AuroRadio extends LitElement {
336
348
  return html`
337
349
  <div class="ods-inputGroup rdoGroup" part="radio">
338
350
  <input
339
- class="util_displayHiddenVisually ods-inputOption rdo--input"
351
+ class="util_displayHidden ods-inputOption rdo--input"
340
352
  part="radio-input"
341
- @focus="${this.handleFocus}"
342
353
  @input="${this.handleInput}"
343
354
  @change="${this.handleChange}"
344
355
  ?disabled="${this.disabled}"
345
- aria-invalid="${this.invalid(this.error)}"
346
- aria-required="${this.isRequired(this.required)}"
347
356
  .checked="${this.checked}"
348
357
  id="${this.inputId}"
349
358
  name="${ifDefined(this.name)}"
350
359
  type="radio"
351
360
  .value="${this.value}"
361
+ aria-hidden="true"
352
362
  tabindex="-1"
353
363
  />
354
364
 
355
- <label
356
- for="${this.inputId}"
357
- class="${classMap(labelClasses)}"
358
- part="radio-label"
359
- >
365
+ <label for="${this.inputId}" class="${classMap(labelClasses)}" part="radio-label">
360
366
  <slot>${this.label}</slot>
361
367
  </label>
362
368
  </div>
@@ -365,7 +371,7 @@ class AuroRadio extends LitElement {
365
371
  }
366
372
  }
367
373
 
368
- var styleCss$1 = css`:host{display:block;padding-bottom:var(--ds-size-150, 0.75rem)}fieldset{all:unset}.displayFlex legend+slot{display:flex;white-space:nowrap}legend{margin-bottom:var(--ds-size-150, 0.75rem)}`;
374
+ var styleCss$1 = css`:host{display:block;padding-bottom:var(--ds-size-150, 0.75rem)}fieldset{all:unset}.displayFlex legend+slot{display:flex;white-space:nowrap}legend{margin-bottom:var(--ds-size-150, 0.75rem)}[auro-helptext]{margin-top:var(--ds-size-150, 0.75rem)}`;
369
375
 
370
376
  var colorCss$1 = css`:host legend{color:var(--ds-auro-radio-group-label-color)}:host([disabled]){--ds-auro-radio-group-label-color: var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host([onDark]){--ds-auro-radio-group-label-color: var(--ds-basic-color-texticon-inverse, #ffffff)}:host([onDark][disabled]){--ds-auro-radio-group-label-color: var(--ds-basic-color-texticon-inverse-disabled, #7e8894)}`;
371
377
 
@@ -845,19 +851,19 @@ class AuroFormValidation {
845
851
  {
846
852
  check: (e) => e.value?.length > 0 && e.value?.length < e.minLength,
847
853
  validity: 'tooShort',
848
- message: e => e.setCustomValidityTooShort || e.setCustomValidity || ''
854
+ message: e => e.getAttribute('setCustomValidityTooShort') || e.setCustomValidity || ''
849
855
  },
850
856
  {
851
857
  check: (e) => e.value?.length > e.maxLength,
852
858
  validity: 'tooLong',
853
- message: e => e.setCustomValidityTooLong || e.setCustomValidity || ''
859
+ message: e => e.getAttribute('setCustomValidityTooLong') || e.setCustomValidity || ''
854
860
  }
855
861
  ],
856
862
  pattern: [
857
863
  {
858
864
  check: (e) => e.pattern && !new RegExp(`^${e.pattern}$`, 'u').test(e.value),
859
865
  validity: 'patternMismatch',
860
- message: e => e.setCustomValidityPatternMismatch || e.setCustomValidity || ''
866
+ message: e => e.getAttribute('setCustomValidityPatternMismatch') || e.setCustomValidity || ''
861
867
  }
862
868
  ]
863
869
  },
@@ -1052,10 +1058,10 @@ class AuroFormValidation {
1052
1058
  if (!hasValue && elem.required && elem.touched) {
1053
1059
  elem.validity = 'valueMissing';
1054
1060
  elem.errorMessage = elem.setCustomValidityValueMissing || elem.setCustomValidity || '';
1055
- } else if (this.runtimeUtils.elementMatch(elem, 'auro-input')) {
1061
+ } else if (hasValue && this.runtimeUtils.elementMatch(elem, 'auro-input')) {
1056
1062
  this.validateType(elem);
1057
1063
  this.validateElementAttributes(elem);
1058
- } else if (this.runtimeUtils.elementMatch(elem, 'auro-counter') || this.runtimeUtils.elementMatch(elem, 'auro-counter-group')) {
1064
+ } else if (hasValue && (this.runtimeUtils.elementMatch(elem, 'auro-counter') || this.runtimeUtils.elementMatch(elem, 'auro-counter-group'))) {
1059
1065
  this.validateElementAttributes(elem);
1060
1066
  }
1061
1067
  }
@@ -1188,7 +1194,7 @@ class AuroDependencyVersioning {
1188
1194
 
1189
1195
  var colorCss = css`:host([error]){--ds-auro-helptext-color: var(--ds-basic-color-status-error, #e31f26)}:host([onDark]){--ds-auro-helptext-color: var(--ds-basic-color-texticon-inverse-muted, #ccd2db)}:host([onDark][error]){--ds-auro-helptext-color: var(--ds-basic-color-status-error-subtle, #fbc6c6)}.helptext-wrapper{color:var(--ds-auro-helptext-color)}`;
1190
1196
 
1191
- var styleCss = css`.helptext-wrapper{display:none;font-size:12px;font-weight:450;letter-spacing:0;line-height:16px}:host([large]) .helptext-wrapper{font-size:16px;font-weight:450;letter-spacing:0;line-height:24px}.helptext-wrapper[visible]{display:block}::slotted(*:not(:empty)){margin-top:var(--ds-size-50, 0.25rem);margin-bottom:0}::slotted(p){margin-block:0}`;
1197
+ var styleCss = css`:host{position:relative;display:block}.helptext-wrapper{display:none;font-size:12px;font-weight:450;letter-spacing:0;line-height:16px}:host([large]) .helptext-wrapper{font-size:16px;font-weight:450;letter-spacing:0;line-height:24px}.helptext-wrapper[visible]{display:block}::slotted(*:not(:empty)){margin-top:var(--ds-size-50, 0.25rem);margin-bottom:0}::slotted(p){margin-block:0}`;
1192
1198
 
1193
1199
  var tokensCss = css`:host{--ds-auro-helptext-color: var(--ds-basic-color-texticon-muted, #676767)}`;
1194
1200
 
@@ -1669,15 +1675,6 @@ class AuroRadioGroup extends LitElement {
1669
1675
  if (this.items.length === 0) {
1670
1676
  this.handleItems();
1671
1677
  }
1672
-
1673
- // handle tab index
1674
- this.items.forEach((item) => {
1675
- item.tabIndex = -1;
1676
- });
1677
-
1678
- if (!this.disabled) {
1679
- this.items[this.index].tabIndex = 0;
1680
- }
1681
1678
  }
1682
1679
 
1683
1680
  /**
@@ -1721,10 +1718,7 @@ class AuroRadioGroup extends LitElement {
1721
1718
  const nextEnabledIndex = this.items.findIndex((item) => !item.hasAttribute('disabled'));
1722
1719
 
1723
1720
  this.index = index >= 0 ? index : nextEnabledIndex;
1724
-
1725
- if (this.index >= 0) {
1726
- this.items[this.index].tabIndex = 0;
1727
- }
1721
+ this.items[this.index].setAttribute('tabindex', 0);
1728
1722
  }
1729
1723
  }
1730
1724
 
@@ -1738,20 +1732,10 @@ class AuroRadioGroup extends LitElement {
1738
1732
  this.index = this.items.indexOf(event.target);
1739
1733
 
1740
1734
  this.items.forEach((item) => {
1741
- if (item === event.target) {
1742
- item.tabIndex = 0;
1743
- if (event.target.value) {
1744
- this.value = event.target.value;
1745
- }
1746
- } else {
1747
- const sdInput = item.shadowRoot.querySelector('input');
1748
-
1749
- sdInput.checked = false;
1750
- item.checked = false;
1751
- item.tabIndex = -1;
1752
- }
1735
+ item.checked = item === event.target;
1753
1736
  });
1754
1737
 
1738
+ this.value = event.target.value;
1755
1739
  this.optionSelected = event.target;
1756
1740
 
1757
1741
  this.validation.validate(this);
@@ -1764,7 +1748,7 @@ class AuroRadioGroup extends LitElement {
1764
1748
  * @returns {void}
1765
1749
  */
1766
1750
  selectItem(index) {
1767
- const sdItem = this.items[index].shadowRoot.querySelector('input');
1751
+ const sdItem = this.items[index];
1768
1752
 
1769
1753
  sdItem.click();
1770
1754
  sdItem.focus();
@@ -1783,17 +1767,18 @@ class AuroRadioGroup extends LitElement {
1783
1767
 
1784
1768
  for (currIndex; currIndex < this.items.length; moveDirection === "Down" ? currIndex += 1 : currIndex -= 1) {
1785
1769
  currIndex = currIndex === -1 ? this.items.length - 1 : currIndex;
1786
- const sdItem = this.items[currIndex].shadowRoot.querySelector('input');
1787
-
1788
- if (this.disabled || this.items.every((item) => item.disabled === true)) {
1789
- sdItem.focus();
1790
- break;
1791
- }
1792
- if (!sdItem.disabled) {
1793
- sdItem.click();
1794
- sdItem.focus();
1795
- this.index = currIndex;
1796
- break;
1770
+ const sdItem = this.items[currIndex];
1771
+ if (sdItem) {
1772
+ if (this.disabled || this.items.every((item) => item.disabled === true)) {
1773
+ sdItem.focus();
1774
+ break;
1775
+ }
1776
+ if (!sdItem.disabled) {
1777
+ sdItem.click();
1778
+ sdItem.focus();
1779
+ this.index = currIndex;
1780
+ break;
1781
+ }
1797
1782
  }
1798
1783
  }
1799
1784
  }
@@ -1836,7 +1821,7 @@ class AuroRadioGroup extends LitElement {
1836
1821
  };
1837
1822
 
1838
1823
  return html$1`
1839
- <fieldset class="${classMap(groupClasses)}" part="radio-group">
1824
+ <fieldset class="${classMap(groupClasses)}" part="radio-group" role="radiogroup">
1840
1825
  <legend>
1841
1826
  <slot name="legend"></slot>
1842
1827
  ${this.required ? undefined : html$1`<slot name="optionalLabel"> (optional)</slot>`}
@@ -1846,11 +1831,11 @@ class AuroRadioGroup extends LitElement {
1846
1831
 
1847
1832
  ${!this.validity || this.validity === undefined || this.validity === 'valid'
1848
1833
  ? html$1`
1849
- <${this.helpTextTag} large ?onDark="${this.onDark}" part="helpText">
1834
+ <${this.helpTextTag} ?onDark="${this.onDark}" part="helpText">
1850
1835
  <slot name="helpText"></slot>
1851
1836
  </${this.helpTextTag}>`
1852
1837
  : html$1`
1853
- <${this.helpTextTag} large ?onDark="${this.onDark}" role="alert" error aria-live="assertive" part="helpText">
1838
+ <${this.helpTextTag} ?onDark="${this.onDark}" role="alert" error aria-live="assertive" part="helpText">
1854
1839
  ${this.errorMessage}
1855
1840
  </${this.helpTextTag}>`
1856
1841
  }
@@ -16,18 +16,24 @@
16
16
  <head>
17
17
  <meta charset="UTF-8" />
18
18
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
19
- <title>Auro Web Component Generator | auro-select custom element</title>
20
- <link
21
- rel="stylesheet"
22
- type="text/css"
23
- href="https://cdn.jsdelivr.net/npm/prismjs@1.24.1/themes/prism.css"
24
- />
25
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/design-tokens@latest/dist/auro-classic/CSSCustomProperties.css">
26
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/design-tokens@latest/dist/alaska/CSSCustomProperties--alaska.css">
19
+ <title>Auro Web Component Demo | auro-select</title>
20
+
21
+ <!-- Prism.js Stylesheet -->
22
+ <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/prismjs@1.24.1/themes/prism.css"/>
23
+
24
+ <!-- Legacy reference is still needed to support auro-select's use of legacy token values at this time -->
25
+ <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/design-tokens@latest/dist/legacy/auro-classic/CSSCustomProperties.css"/>
26
+
27
+ <!-- Design Token Alaska Theme -->
28
+ <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/design-tokens@latest/dist/themes/alaska/CSSCustomProperties--alaska.min.css"/>
29
+
30
+ <!-- Webcore Stylesheet Alaska Theme -->
31
+ <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/webcorestylesheets@latest/dist/bundled/themes/alaska.global.min.css" />
32
+
33
+ <!-- Demo Specific Styles -->
27
34
  <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/webcorestylesheets@latest/dist/demoWrapper.css" />
28
35
  <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/webcorestylesheets@latest/dist/elementDemoStyles.css" />
29
- <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/@aurodesignsystem/webcorestylesheets@latest/dist/bundled/essentials-as.css" />
30
- </head>
36
+ </head>
31
37
  <body class="auro-markdown">
32
38
  <main></main>
33
39
 
@@ -5,7 +5,6 @@ import { valueAlertExample } from "../apiExamples/valueAlert.js";
5
5
  import { inDialogExample } from '../apiExamples/inDialog';
6
6
  import { resetStateExample } from "../apiExamples/resetState";
7
7
  import { auroMenuLoadingExample } from "../apiExamples/loading";
8
- import { valueTextExample } from '../apiExamples/valueText.js';
9
8
 
10
9
  /* eslint-disable jsdoc/require-jsdoc, no-magic-numbers, no-param-reassign */
11
10
  import { AuroSelect } from '../src/auro-select.js';
@@ -25,7 +24,6 @@ export function initExamples(initCount) {
25
24
  inDialogExample();
26
25
  resetStateExample();
27
26
  auroMenuLoadingExample();
28
- valueTextExample();
29
27
  } catch (err) {
30
28
  if (initCount <= 20) {
31
29
  // setTimeout handles issue where content is sometimes loaded after the functions get called
@@ -33,6 +33,7 @@ The auro-select element is a wrapper for auro-dropdown and auro-menu to create a
33
33
  | [offset](#offset) | `offset` | `number` | "0" | Gap between the trigger element and bib. |
34
34
  | [onDark](#onDark) | `onDark` | `boolean` | | If declared, onDark styles will be applied to the trigger. |
35
35
  | [optionSelected](#optionSelected) | `optionSelected` | `HTMLElement\|Array<HTMLElement>` | | Specifies the current selected menuOption. Default type is `HTMLElement`, changing to `Array<HTMLElement>` when `multiSelect` is true. |
36
+ | [placeholder](#placeholder) | `placeholder` | `string` | | Define custom placeholder text. |
36
37
  | [placement](#placement) | `placement` | `string` | "bottom-start" | Position where the bib should appear relative to the trigger.<br />Accepted values:<br />"top" \| "right" \| "bottom" \| "left" \|<br />"bottom-start" \| "top-start" \| "top-end" \|<br />"right-start" \| "right-end" \| "bottom-end" \|<br />"left-start" \| "left-end". |
37
38
  | [required](#required) | `required` | `boolean` | | Populates the `required` attribute on the element. Used for client-side validation. |
38
39
  | [setCustomValidity](#setCustomValidity) | `setCustomValidity` | `string` | | Sets a custom help text message to display for all validityStates. |
@@ -41,17 +42,14 @@ The auro-select element is a wrapper for auro-dropdown and auro-menu to create a
41
42
  | [shape](#shape) | | `string` | "snowflake" | |
42
43
  | [size](#size) | | `string` | "xl" | |
43
44
  | [validity](#validity) | `validity` | `string` | | Specifies the `validityState` this element is in. |
44
- | [value](#value) | `value` | `String\|Array<String>` | | Value selected for the component. Default type is `String`, changing to `Array<String>` when `multiSelect` is true. |
45
+ | [value](#value) | `value` | `string` | | Value selected for the component. |
45
46
 
46
47
  ## Methods
47
48
 
48
- | Method | Type | Description |
49
- |----------------------|----------------------------------------|--------------------------------------------------|
50
- | [renderAriaHtml](#renderAriaHtml) | `(): TemplateResult` | |
51
- | [renderBACKUP](#renderBACKUP) | `(): TemplateResult` | |
52
- | [renderNativeSelect](#renderNativeSelect) | `(): TemplateResult` | |
53
- | [reset](#reset) | `(): void` | Resets component to initial state. |
54
- | [validate](#validate) | `(force?: boolean \| undefined): void` | Validates value.<br /><br />**force**: Whether to force validation. |
49
+ | Method | Type | Description |
50
+ |------------|----------------------------------------|--------------------------------------------------|
51
+ | [reset](#reset) | `(): void` | Resets component to initial state. |
52
+ | [validate](#validate) | `(force?: boolean \| undefined): void` | Validates value.<br /><br />**force**: Whether to force validation. |
55
53
 
56
54
  ## Events
57
55
 
@@ -59,7 +57,7 @@ The auro-select element is a wrapper for auro-dropdown and auro-menu to create a
59
57
  |-----------------------------|--------------------------------------------------|--------------------------------------------------|
60
58
  | `auroFormElement-validated` | | Notifies that the `validity` and `errorMessage` values have changed. |
61
59
  | `auroSelect-valueSet` | `CustomEvent<any>` | Notifies that the component has a new value set. |
62
- | [input](#input) | `CustomEvent<{ optionSelected: any; value: any; }>` | Notifies every time the value prop of the element is changed. The updated `value` and `optionSelected` will be delivered in `detail` object. |
60
+ | [input](#input) | `CustomEvent<{ optionSelected: any; value: string \| string[]; }>` | Notifies every time the value prop of the element is changed. The updated `value` and `optionSelected` will be delivered in `detail` object. |
63
61
 
64
62
  ## Slots
65
63
 
@@ -71,7 +69,6 @@ The auro-select element is a wrapper for auro-dropdown and auro-menu to create a
71
69
  | [helpText](#helpText) | Defines the content of the helpText. |
72
70
  | [label](#label) | Defines the content of the label. |
73
71
  | [optionalLabel](#optionalLabel) | Allows overriding the optional display text "(optional)", which appears next to the label. |
74
- | [placeholder](#placeholder) | Defines the content of the placeholder to be shown when there is no value |
75
72
  | [valueText](#valueText) | Dropdown value text display. |
76
73
 
77
74
  ## CSS Shadow Parts
@@ -1087,57 +1084,56 @@ export function auroMenuLoadingExample() {
1087
1084
  <!-- AURO-GENERATED-CONTENT:END -->
1088
1085
  </auro-accordion>
1089
1086
 
1090
- ### valueText <a name="valueText"></a>
1091
- The label for selected option can be customized using `valueText` slot.
1092
- This slot can be manipulated on the `input` event which delivers the new value and selected `auro-menuoption` element in the `detail` object.
1087
+ ### displayValue <a name="displayValue"></a>
1088
+ The label for selected option can be customized using `displayValue` slot under `<menuoption>.
1093
1089
 
1094
1090
  <div class="exampleWrapper">
1095
- <!-- AURO-GENERATED-CONTENT:START (FILE:src=./../apiExamples/valueText.html) -->
1096
- <!-- The below content is automatically added from ./../apiExamples/valueText.html -->
1097
- <auro-select id="valueTextExample" autocomplete="address-level1">
1091
+ <!-- AURO-GENERATED-CONTENT:START (FILE:src=./../apiExamples/displayValue.html) -->
1092
+ <!-- The below content is automatically added from ./../apiExamples/displayValue.html -->
1093
+ <auro-select id="displayValueExample" autocomplete="address-level1">
1098
1094
  <span slot="bib.fullscreen.headline">Select Your Gender</span>
1099
1095
  <span slot="label">Gender</span>
1100
- <span slot="valueText"></span>
1096
+ <span slot="displayValue"></span>
1101
1097
  <auro-menu>
1102
- <auro-menuoption value="m" data-display="Male">M - Male</auro-menuoption>
1103
- <auro-menuoption value="f" data-display="Female">F - Female</auro-menuoption>
1104
- <auro-menuoption value="x" data-display="Unspecified">X - Unspecified</auro-menuoption>
1105
- <auro-menuoption value="u" data-display="Undisclosed">U - Undisclosed</auro-menuoption>
1098
+ <auro-menuoption value="m" data-display="Male">M - Male
1099
+ <span slot="displayValue">Male</span>
1100
+ </auro-menuoption>
1101
+ <auro-menuoption value="f" data-display="Female">F - Female
1102
+ <span slot="displayValue">Female</span>
1103
+ </auro-menuoption>
1104
+ <auro-menuoption value="x" data-display="Unspecified">X - Unspecified
1105
+ <span slot="displayValue">Unspecified</span>
1106
+ </auro-menuoption>
1107
+ <auro-menuoption value="u" data-display="Undisclosed">U - Undisclosed
1108
+ <span slot="displayValue">Undisclosed</span>
1109
+ </auro-menuoption>
1106
1110
  </auro-menu>
1107
1111
  </auro-select>
1108
1112
  <!-- AURO-GENERATED-CONTENT:END -->
1109
1113
  </div>
1110
1114
  <auro-accordion alignRight>
1111
1115
  <span slot="trigger">See code</span>
1112
- <!-- AURO-GENERATED-CONTENT:START (CODE:src=./../apiExamples/valueText.js) -->
1113
- <!-- The below code snippet is automatically added from ./../apiExamples/valueText.js -->
1114
-
1115
- ```js
1116
- export function valueTextExample() {
1117
- const onValueTextSelectInput = (e) => {
1118
- const valueText = e.target.querySelector("[slot=valueText]");
1119
-
1120
- valueText.textContent = e.detail.optionSelected.dataset.display;
1121
- };
1122
-
1123
- const select = document.querySelector("#valueTextExample");
1124
- select.addEventListener('input', onValueTextSelectInput);
1125
- }
1126
- ```
1127
- <!-- AURO-GENERATED-CONTENT:END -->
1128
- <!-- AURO-GENERATED-CONTENT:START (CODE:src=./../apiExamples/valueText.html) -->
1129
- <!-- The below code snippet is automatically added from ./../apiExamples/valueText.html -->
1116
+ <!-- AURO-GENERATED-CONTENT:START (CODE:src=./../apiExamples/displayValue.html) -->
1117
+ <!-- The below code snippet is automatically added from ./../apiExamples/displayValue.html -->
1130
1118
 
1131
1119
  ```html
1132
- <auro-select id="valueTextExample" autocomplete="address-level1">
1120
+ <auro-select id="displayValueExample" autocomplete="address-level1">
1133
1121
  <span slot="bib.fullscreen.headline">Select Your Gender</span>
1134
1122
  <span slot="label">Gender</span>
1135
- <span slot="valueText"></span>
1123
+ <span slot="displayValue"></span>
1136
1124
  <auro-menu>
1137
- <auro-menuoption value="m" data-display="Male">M - Male</auro-menuoption>
1138
- <auro-menuoption value="f" data-display="Female">F - Female</auro-menuoption>
1139
- <auro-menuoption value="x" data-display="Unspecified">X - Unspecified</auro-menuoption>
1140
- <auro-menuoption value="u" data-display="Undisclosed">U - Undisclosed</auro-menuoption>
1125
+ <auro-menuoption value="m" data-display="Male">M - Male
1126
+ <span slot="displayValue">Male</span>
1127
+ </auro-menuoption>
1128
+ <auro-menuoption value="f" data-display="Female">F - Female
1129
+ <span slot="displayValue">Female</span>
1130
+ </auro-menuoption>
1131
+ <auro-menuoption value="x" data-display="Unspecified">X - Unspecified
1132
+ <span slot="displayValue">Unspecified</span>
1133
+ </auro-menuoption>
1134
+ <auro-menuoption value="u" data-display="Undisclosed">U - Undisclosed
1135
+ <span slot="displayValue">Undisclosed</span>
1136
+ </auro-menuoption>
1141
1137
  </auro-menu>
1142
1138
  </auro-select>
1143
1139
  ```
@@ -1158,7 +1154,8 @@ The bib position can be customized with `placement`, `offset`, `flip`, `autoPlac
1158
1154
  <div style="width: 350px">
1159
1155
  <auro-select offset="20" noFlip placement="bottom-end">
1160
1156
  <span slot="bib.fullscreen.headline">Bib Headline</span>
1161
- <span slot="label">bottom-end bib with 20px offset and noFlip</span>
1157
+ <span slot="label">Label</span>
1158
+ <span slot="helpText">bottom-end bib with 20px offset and noFlip</span>
1162
1159
  <auro-menu>
1163
1160
  <auro-menuoption value="stops">Stops</auro-menuoption>
1164
1161
  <auro-menuoption value="price">Price</auro-menuoption>
@@ -1170,7 +1167,8 @@ The bib position can be customized with `placement`, `offset`, `flip`, `autoPlac
1170
1167
  </auro-select>
1171
1168
  <auro-select offset="20" placement="bottom-end">
1172
1169
  <span slot="bib.fullscreen.headline">Bib Headline</span>
1173
- <span slot="label">bottom-end bib with 20px offset and flip</span>
1170
+ <span slot="label">Label</span>
1171
+ <span slot="helpText">bottom-end bib with 20px offset and flip</span>
1174
1172
  <auro-menu>
1175
1173
  <auro-menuoption value="stops">Stops</auro-menuoption>
1176
1174
  <auro-menuoption value="price">Price</auro-menuoption>
@@ -1182,7 +1180,8 @@ The bib position can be customized with `placement`, `offset`, `flip`, `autoPlac
1182
1180
  </auro-select>
1183
1181
  <auro-select offset="20" noFlip placement="right" autoPlacement noFlip >
1184
1182
  <span slot="bib.fullscreen.headline">Bib Headline</span>
1185
- <span slot="label">right bib with 20px offset, noFlip and autoPlacement</span>
1183
+ <span slot="label">Label</span>
1184
+ <span slot="helpText">right bib with 20px offset, noFlip and autoPlacement</span>
1186
1185
  <auro-menu>
1187
1186
  <auro-menuoption value="stops">Stops</auro-menuoption>
1188
1187
  <auro-menuoption value="price">Price</auro-menuoption>
@@ -1204,7 +1203,8 @@ The bib position can be customized with `placement`, `offset`, `flip`, `autoPlac
1204
1203
  <div style="width: 350px">
1205
1204
  <auro-select offset="20" noFlip placement="bottom-end">
1206
1205
  <span slot="bib.fullscreen.headline">Bib Headline</span>
1207
- <span slot="label">bottom-end bib with 20px offset and noFlip</span>
1206
+ <span slot="label">Label</span>
1207
+ <span slot="helpText">bottom-end bib with 20px offset and noFlip</span>
1208
1208
  <auro-menu>
1209
1209
  <auro-menuoption value="stops">Stops</auro-menuoption>
1210
1210
  <auro-menuoption value="price">Price</auro-menuoption>
@@ -1216,7 +1216,8 @@ The bib position can be customized with `placement`, `offset`, `flip`, `autoPlac
1216
1216
  </auro-select>
1217
1217
  <auro-select offset="20" placement="bottom-end">
1218
1218
  <span slot="bib.fullscreen.headline">Bib Headline</span>
1219
- <span slot="label">bottom-end bib with 20px offset and flip</span>
1219
+ <span slot="label">Label</span>
1220
+ <span slot="helpText">bottom-end bib with 20px offset and flip</span>
1220
1221
  <auro-menu>
1221
1222
  <auro-menuoption value="stops">Stops</auro-menuoption>
1222
1223
  <auro-menuoption value="price">Price</auro-menuoption>
@@ -1228,7 +1229,8 @@ The bib position can be customized with `placement`, `offset`, `flip`, `autoPlac
1228
1229
  </auro-select>
1229
1230
  <auro-select offset="20" noFlip placement="right" autoPlacement noFlip >
1230
1231
  <span slot="bib.fullscreen.headline">Bib Headline</span>
1231
- <span slot="label">right bib with 20px offset, noFlip and autoPlacement</span>
1232
+ <span slot="label">Label</span>
1233
+ <span slot="helpText">right bib with 20px offset, noFlip and autoPlacement</span>
1232
1234
  <auro-menu>
1233
1235
  <auro-menuoption value="stops">Stops</auro-menuoption>
1234
1236
  <auro-menuoption value="price">Price</auro-menuoption>