@aurodesignsystem/auro-formkit 2.0.0-beta.2 → 2.0.0-beta.3

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 (211) hide show
  1. package/.turbo/cache/013a48308b893dac-meta.json +1 -1
  2. package/.turbo/cache/02244170c798a2bd-meta.json +1 -0
  3. package/.turbo/cache/02244170c798a2bd.tar.zst +0 -0
  4. package/.turbo/cache/07ca42419b9f050c-meta.json +1 -1
  5. package/.turbo/cache/0cea4c1f34f3683b-meta.json +1 -1
  6. package/.turbo/cache/17259cf94d8f8925-meta.json +1 -1
  7. package/.turbo/cache/1ab37ce15d9be440-meta.json +1 -0
  8. package/.turbo/cache/1ab37ce15d9be440.tar.zst +0 -0
  9. package/.turbo/cache/1b9818717e4bdf9f-meta.json +1 -0
  10. package/.turbo/cache/1b9818717e4bdf9f.tar.zst +0 -0
  11. package/.turbo/cache/1c0f580d37370ba2-meta.json +1 -0
  12. package/.turbo/cache/1c0f580d37370ba2.tar.zst +0 -0
  13. package/.turbo/cache/1c99a949ec63ab35-meta.json +1 -1
  14. package/.turbo/cache/1de15d89eed2d760-meta.json +1 -1
  15. package/.turbo/cache/2110a4d14e0d11b2-meta.json +1 -0
  16. package/.turbo/cache/2110a4d14e0d11b2.tar.zst +0 -0
  17. package/.turbo/cache/257a7a26ea72dbc5-meta.json +1 -1
  18. package/.turbo/cache/2990aaa7ebc5b967-meta.json +1 -1
  19. package/.turbo/cache/2990aaa7ebc5b967.tar.zst +0 -0
  20. package/.turbo/cache/2fd056afdf4eb39d-meta.json +1 -0
  21. package/.turbo/cache/2fd056afdf4eb39d.tar.zst +0 -0
  22. package/.turbo/cache/3bf45120d0cc9bd8-meta.json +1 -1
  23. package/.turbo/cache/3e12285c614db539-meta.json +1 -0
  24. package/.turbo/cache/3e12285c614db539.tar.zst +0 -0
  25. package/.turbo/cache/45035bf5c4147ccd-meta.json +1 -1
  26. package/.turbo/cache/4f92cea2d8c63de2-meta.json +1 -1
  27. package/.turbo/cache/5bf2d3f7ba5891e0-meta.json +1 -0
  28. package/.turbo/cache/5bf2d3f7ba5891e0.tar.zst +0 -0
  29. package/.turbo/cache/5c16ce3cff5c9dff-meta.json +1 -1
  30. package/.turbo/cache/5f304c0f37ef25f3-meta.json +1 -1
  31. package/.turbo/cache/64de7a53e02db647-meta.json +1 -1
  32. package/.turbo/cache/691a74627ec57993-meta.json +1 -1
  33. package/.turbo/cache/69aae513b7ec6c7d-meta.json +1 -1
  34. package/.turbo/cache/6dd67d179191bda8-meta.json +1 -0
  35. package/.turbo/cache/6dd67d179191bda8.tar.zst +0 -0
  36. package/.turbo/cache/6dd7058e6703cb35-meta.json +1 -1
  37. package/.turbo/cache/73e9073a5274616d-meta.json +1 -1
  38. package/.turbo/cache/773edc0f83c8c5a5-meta.json +1 -1
  39. package/.turbo/cache/784c03fe9fd5ac05-meta.json +1 -1
  40. package/.turbo/cache/786a822763403879-meta.json +1 -1
  41. package/.turbo/cache/7e1043cffa69f327-meta.json +1 -0
  42. package/.turbo/cache/7e1043cffa69f327.tar.zst +0 -0
  43. package/.turbo/cache/80a13352066a9801-meta.json +1 -0
  44. package/.turbo/cache/80a13352066a9801.tar.zst +0 -0
  45. package/.turbo/cache/80b5d974184a01df-meta.json +1 -1
  46. package/.turbo/cache/87219c41a4ace9cd-meta.json +1 -1
  47. package/.turbo/cache/87219c41a4ace9cd.tar.zst +0 -0
  48. package/.turbo/cache/8954c6073396fadd-meta.json +1 -1
  49. package/.turbo/cache/8e79bd5c3a16a72e-meta.json +1 -0
  50. package/.turbo/cache/92daa6d7c389d548-meta.json +1 -1
  51. package/.turbo/cache/993dff2edb7b6766-meta.json +1 -1
  52. package/.turbo/cache/9a097d6576dadd64-meta.json +1 -1
  53. package/.turbo/cache/a63cbfecf0f78586-meta.json +1 -0
  54. package/.turbo/cache/{ce67b6522dd09e64.tar.zst → a63cbfecf0f78586.tar.zst} +0 -0
  55. package/.turbo/cache/a6a56bb802e1c20f-meta.json +1 -1
  56. package/.turbo/cache/a77bc920ea508bb8-meta.json +1 -1
  57. package/.turbo/cache/a77bc920ea508bb8.tar.zst +0 -0
  58. package/.turbo/cache/b2c66328fdd78093-meta.json +1 -0
  59. package/.turbo/cache/b2c66328fdd78093.tar.zst +0 -0
  60. package/.turbo/cache/b54fc4f664a7a5a0-meta.json +1 -1
  61. package/.turbo/cache/ba4418918621fbcd-meta.json +1 -1
  62. package/.turbo/cache/be7c23c37b8ec74b-meta.json +1 -1
  63. package/.turbo/cache/be7c23c37b8ec74b.tar.zst +0 -0
  64. package/.turbo/cache/bffc7582905c2a5e-meta.json +1 -0
  65. package/.turbo/cache/bffc7582905c2a5e.tar.zst +0 -0
  66. package/.turbo/cache/caa0b4ac8d2a04dd-meta.json +1 -1
  67. package/.turbo/cache/caa0b4ac8d2a04dd.tar.zst +0 -0
  68. package/.turbo/cache/cc81de9c0b452a7c-meta.json +1 -1
  69. package/.turbo/cache/d39e6ef95ebc4cc0-meta.json +1 -0
  70. package/.turbo/cache/d39e6ef95ebc4cc0.tar.zst +0 -0
  71. package/.turbo/cache/d572ebb3c833e8f4-meta.json +1 -0
  72. package/.turbo/cache/d572ebb3c833e8f4.tar.zst +0 -0
  73. package/.turbo/cache/d61543843c932504-meta.json +1 -0
  74. package/.turbo/cache/d61543843c932504.tar.zst +0 -0
  75. package/.turbo/cache/dad1301ac69bcb85-meta.json +1 -1
  76. package/.turbo/cache/dea5945f55c6aba5-meta.json +1 -0
  77. package/.turbo/cache/dea5945f55c6aba5.tar.zst +0 -0
  78. package/.turbo/cache/e992dab20aeefbaf-meta.json +1 -1
  79. package/.turbo/cache/e992dab20aeefbaf.tar.zst +0 -0
  80. package/.turbo/cache/f411e2deb0676959-meta.json +1 -0
  81. package/.turbo/cache/f411e2deb0676959.tar.zst +0 -0
  82. package/.turbo/cache/fa132b5b5f0e75f8-meta.json +1 -1
  83. package/.turbo/cache/fbbe2704bf9cb90b-meta.json +1 -1
  84. package/CHANGELOG.md +26 -0
  85. package/components/checkbox/.turbo/turbo-build.log +3 -3
  86. package/components/checkbox/.turbo/turbo-bundler.log +3 -3
  87. package/components/checkbox/demo/api.md +4 -2
  88. package/components/checkbox/demo/api.min.js +31 -36
  89. package/components/checkbox/demo/index.min.js +31 -36
  90. package/components/checkbox/dist/auro-checkbox-group.d.ts +1 -1
  91. package/components/checkbox/dist/index.js +31 -36
  92. package/components/checkbox/src/auro-checkbox-group.js +2 -2
  93. package/components/combobox/.turbo/turbo-build.log +3 -3
  94. package/components/combobox/demo/api.md +17 -15
  95. package/components/combobox/demo/api.min.js +104 -116
  96. package/components/combobox/demo/index.min.js +104 -116
  97. package/components/combobox/dist/auro-combobox.d.ts +11 -4
  98. package/components/combobox/dist/auro-combobox.d.ts.map +1 -1
  99. package/components/combobox/dist/index.js +103 -115
  100. package/components/combobox/src/auro-combobox.js +22 -20
  101. package/components/counter/.turbo/turbo-build.log +3 -3
  102. package/components/counter/.turbo/turbo-bundler.log +3 -3
  103. package/components/datepicker/.turbo/turbo-build.log +9 -8
  104. package/components/datepicker/demo/api.md +107 -87
  105. package/components/datepicker/demo/api.min.js +96 -130
  106. package/components/datepicker/demo/index.min.js +96 -130
  107. package/components/datepicker/dist/auro-datepicker.d.ts +6 -13
  108. package/components/datepicker/dist/auro-datepicker.d.ts.map +1 -1
  109. package/components/datepicker/dist/index.js +96 -130
  110. package/components/datepicker/src/auro-datepicker.js +15 -35
  111. package/components/dropdown/.turbo/turbo-build.log +3 -3
  112. package/components/dropdown/.turbo/turbo-bundler.log +2 -2
  113. package/components/form/.turbo/turbo-build.log +3 -3
  114. package/components/form/.turbo/turbo-bundler.log +3 -3
  115. package/components/input/.turbo/turbo-build$colon$sass.log +51 -1
  116. package/components/input/.turbo/turbo-build.log +56 -6
  117. package/components/input/.turbo/turbo-bundler.log +3 -3
  118. package/components/input/.turbo/turbo-sass$colon$render.log +6 -0
  119. package/components/input/demo/api.md +83 -83
  120. package/components/input/demo/api.min.js +52 -61
  121. package/components/input/demo/index.md +6 -6
  122. package/components/input/demo/index.min.js +52 -61
  123. package/components/input/dist/auro-input.d.ts.map +1 -1
  124. package/components/input/dist/base-input.d.ts +5 -12
  125. package/components/input/dist/base-input.d.ts.map +1 -1
  126. package/components/input/dist/index.js +52 -61
  127. package/components/input/dist/styles/mixins-css.d.ts +3 -0
  128. package/components/input/dist/styles/mixins-css.d.ts.map +1 -0
  129. package/components/input/src/auro-input.js +0 -1
  130. package/components/input/src/base-input.js +22 -25
  131. package/components/input/src/styles/borders.scss +3 -19
  132. package/components/input/src/styles/color.css +1 -2
  133. package/components/input/src/styles/color.scss +3 -10
  134. package/components/input/src/styles/input-css.js +1 -1
  135. package/components/input/src/styles/input.css +1 -1
  136. package/components/input/src/styles/input.scss +4 -1
  137. package/components/input/src/styles/label-css.js +1 -1
  138. package/components/input/src/styles/label.css +1 -1
  139. package/components/input/src/styles/label.scss +4 -7
  140. package/components/input/src/styles/mixins-css.js +2 -0
  141. package/components/input/src/styles/mixins.css +1 -0
  142. package/components/input/src/styles/mixins.scss +45 -0
  143. package/components/input/src/styles/notificationIcons-css.js +1 -1
  144. package/components/input/src/styles/notificationIcons.css +13 -12
  145. package/components/input/src/styles/notificationIcons.scss +17 -25
  146. package/components/input/src/styles/style-css.js +1 -1
  147. package/components/input/src/styles/style.css +15 -17
  148. package/components/input/src/styles/style.scss +0 -4
  149. package/components/menu/.turbo/turbo-build.log +3 -3
  150. package/components/menu/.turbo/turbo-bundler.log +3 -3
  151. package/components/menu/demo/api.min.js +1 -1
  152. package/components/menu/demo/index.min.js +1 -1
  153. package/components/menu/dist/auro-menu.d.ts +1 -1
  154. package/components/menu/dist/index.js +1 -1
  155. package/components/menu/src/auro-menu.js +1 -1
  156. package/components/radio/.turbo/turbo-build.log +3 -3
  157. package/components/radio/.turbo/turbo-bundler.log +3 -3
  158. package/components/radio/demo/api.md +3 -1
  159. package/components/radio/demo/api.min.js +30 -35
  160. package/components/radio/demo/index.min.js +30 -35
  161. package/components/radio/dist/index.js +30 -35
  162. package/components/radio/src/auro-radio-group.js +1 -1
  163. package/components/select/.turbo/turbo-build.log +3 -3
  164. package/components/select/demo/api.md +7 -11
  165. package/components/select/demo/api.min.js +33 -60
  166. package/components/select/demo/index.min.js +33 -56
  167. package/components/select/dist/auro-select.d.ts +2 -2
  168. package/components/select/dist/auro-select.d.ts.map +1 -1
  169. package/components/select/dist/index.js +32 -55
  170. package/components/select/src/auro-select.js +3 -21
  171. package/package.json +1 -1
  172. package/packages/form-validation/src/validation.js +29 -34
  173. package/.turbo/cache/0663fcbb1d711029-meta.json +0 -1
  174. package/.turbo/cache/0663fcbb1d711029.tar.zst +0 -0
  175. package/.turbo/cache/0a2b0a4df8a0443f-meta.json +0 -1
  176. package/.turbo/cache/120c8e207aa1ba35-meta.json +0 -1
  177. package/.turbo/cache/120c8e207aa1ba35.tar.zst +0 -0
  178. package/.turbo/cache/17dd4bdef6550a07-meta.json +0 -1
  179. package/.turbo/cache/17dd4bdef6550a07.tar.zst +0 -0
  180. package/.turbo/cache/32c0b9995fb5f8dd-meta.json +0 -1
  181. package/.turbo/cache/32c0b9995fb5f8dd.tar.zst +0 -0
  182. package/.turbo/cache/47ba2b5ebdb579e9-meta.json +0 -1
  183. package/.turbo/cache/47ba2b5ebdb579e9.tar.zst +0 -0
  184. package/.turbo/cache/56cb35d4c7473a23-meta.json +0 -1
  185. package/.turbo/cache/56cb35d4c7473a23.tar.zst +0 -0
  186. package/.turbo/cache/626afdc67e0cb540-meta.json +0 -1
  187. package/.turbo/cache/626afdc67e0cb540.tar.zst +0 -0
  188. package/.turbo/cache/6ef81cf9a66f982a-meta.json +0 -1
  189. package/.turbo/cache/6ef81cf9a66f982a.tar.zst +0 -0
  190. package/.turbo/cache/8b735250fa5a62bf-meta.json +0 -1
  191. package/.turbo/cache/8b735250fa5a62bf.tar.zst +0 -0
  192. package/.turbo/cache/9154e8fe6ab767ea-meta.json +0 -1
  193. package/.turbo/cache/9154e8fe6ab767ea.tar.zst +0 -0
  194. package/.turbo/cache/a49cc58242467fdc-meta.json +0 -1
  195. package/.turbo/cache/a49cc58242467fdc.tar.zst +0 -0
  196. package/.turbo/cache/af061e7a077a9ba5-meta.json +0 -1
  197. package/.turbo/cache/af061e7a077a9ba5.tar.zst +0 -0
  198. package/.turbo/cache/b50f1b283b4b81cd-meta.json +0 -1
  199. package/.turbo/cache/b50f1b283b4b81cd.tar.zst +0 -0
  200. package/.turbo/cache/bf85bc040b7e64db-meta.json +0 -1
  201. package/.turbo/cache/bf85bc040b7e64db.tar.zst +0 -0
  202. package/.turbo/cache/cd5f6987783fb56d-meta.json +0 -1
  203. package/.turbo/cache/cd5f6987783fb56d.tar.zst +0 -0
  204. package/.turbo/cache/ce67b6522dd09e64-meta.json +0 -1
  205. package/.turbo/cache/d716cb7a08152beb-meta.json +0 -1
  206. package/.turbo/cache/d716cb7a08152beb.tar.zst +0 -0
  207. package/.turbo/cache/d7a47b77deb3d9a4-meta.json +0 -1
  208. package/.turbo/cache/d7a47b77deb3d9a4.tar.zst +0 -0
  209. package/.turbo/cache/ff58f630c9d69af4-meta.json +0 -1
  210. package/.turbo/cache/ff58f630c9d69af4.tar.zst +0 -0
  211. /package/.turbo/cache/{0a2b0a4df8a0443f.tar.zst → 8e79bd5c3a16a72e.tar.zst} +0 -0
@@ -208,20 +208,20 @@ let AuroFormValidation$1 = class AuroFormValidation {
208
208
  const pattern = new RegExp(`^${elem.pattern}$`, 'u');
209
209
 
210
210
  if (!pattern.test(elem.value)) {
211
- elem.validity = 'badInput';
212
- elem.setCustomValidity = elem.setCustomValidityBadInput || '';
211
+ elem.validity = 'patternMismatch';
212
+ elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || '';
213
213
  }
214
214
  }
215
215
 
216
216
  // Length > 0 is required to prevent the error message from showing when the input is empty
217
217
  if (elem.value?.length > 0 && elem.value?.length < elem.minLength) {
218
218
  elem.validity = 'tooShort';
219
- elem.setCustomValidity = elem.setCustomValidityTooShort || '';
219
+ elem.errorMessage = elem.setCustomValidityTooShort || elem.setCustomValidity || '';
220
220
  }
221
221
 
222
222
  if (elem.value?.length > elem.maxLength) {
223
223
  elem.validity = 'tooLong';
224
- elem.setCustomValidity = elem.setCustomValidityTooLong || '';
224
+ elem.errorMessage = elem.setCustomValidityTooLong || elem.setCustomValidity || '';
225
225
  }
226
226
  }
227
227
 
@@ -237,33 +237,32 @@ let AuroFormValidation$1 = class AuroFormValidation {
237
237
  const emailRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/; // eslint-disable-line require-unicode-regexp
238
238
 
239
239
  if (!elem.value.match(emailRegex)) {
240
- elem.validity = 'badInput';
241
- elem.setCustomValidity = elem.setCustomValidityForType || '';
240
+ elem.validity = 'patternMismatch';
241
+ elem.errorMessage = elem.setCustomValidityForType || elem.setCustomValidity || '';
242
242
  }
243
243
  } else if (elem.type === 'credit-card') {
244
244
  if (elem.value.length > 0 && elem.value.length < elem.validationCCLength) {
245
245
  elem.validity = 'tooShort';
246
- elem.setCustomValidity = elem.setCustomValidityForType || '';
246
+ elem.errorMessage = elem.setCustomValidityForType || elem.setCustomValidity || '';
247
247
  }
248
248
  } else if (elem.type === 'number') {
249
249
  if (elem.max !== undefined && Number(elem.max) < Number(elem.value)) {
250
250
  elem.validity = 'rangeOverflow';
251
- elem.setCustomValidity = elem.getAttribute('setCustomValidityRangeOverflow') || '';
251
+ elem.errorMessage = elem.setCustomValidityRangeOverflow || elem.setCustomValidity || '';
252
252
  }
253
253
 
254
- if (elem.min !== undefined && Number(elem.min) > Number(elem.value)) {
254
+ if (elem.min !== undefined && elem.value?.length > 0 && Number(elem.min) > Number(elem.value)) {
255
255
  elem.validity = 'rangeUnderflow';
256
- elem.setCustomValidity = elem.getAttribute('setCustomValidityRangeUnderflow') || '';
256
+ elem.errorMessage = elem.setCustomValidityRangeUnderflow || elem.setCustomValidity || '';
257
257
  }
258
-
259
258
  } else if (elem.type === 'month-day-year' ||
260
259
  elem.type === 'month-year' ||
261
260
  elem.type === 'month-fullYear' ||
262
261
  elem.type === 'year-month-day'
263
262
  ) {
264
- if (elem.value && elem.value.length > 0 && elem.value.length < elem.dateStrLength) {
263
+ if (elem.value?.length > 0 && elem.value.length < elem.dateStrLength) {
265
264
  elem.validity = 'tooShort';
266
- elem.setCustomValidity = elem.setCustomValidityForType || '';
265
+ elem.errorMessage = elem.setCustomValidityForType || elem.setCustomValidity || '';
267
266
  } else {
268
267
  const valueDate = new Date(elem.value);
269
268
 
@@ -273,7 +272,7 @@ let AuroFormValidation$1 = class AuroFormValidation {
273
272
 
274
273
  if (valueDate > maxDate) {
275
274
  elem.validity = 'rangeOverflow';
276
- elem.setCustomValidity = elem.getAttribute('setCustomValidityRangeOverflow') || '';
275
+ elem.errorMessage = elem.setCustomValidityRangeOverflow || elem.setCustomValidity || '';
277
276
  }
278
277
  }
279
278
 
@@ -283,7 +282,7 @@ let AuroFormValidation$1 = class AuroFormValidation {
283
282
 
284
283
  if (valueDate < minDate) {
285
284
  elem.validity = 'rangeUnderflow';
286
- elem.setCustomValidity = elem.getAttribute('setCustomValidityRangeUnderflow') || '';
285
+ elem.errorMessage = elem.setCustomValidityRangeUnderflow || elem.setCustomValidity || '';
287
286
  }
288
287
  }
289
288
  }
@@ -306,10 +305,10 @@ let AuroFormValidation$1 = class AuroFormValidation {
306
305
 
307
306
  if (elem.hasAttribute('error')) {
308
307
  elem.validity = 'customError';
309
- elem.setCustomValidity = elem.error;
308
+ elem.errorMessage = elem.setCustomValidityCustomError || elem.error || elem.setCustomValidity || '';
310
309
  } else if (validationShouldRun) {
311
310
  elem.validity = 'valid';
312
- elem.setCustomValidity = '';
311
+ elem.errorMessage = '';
313
312
 
314
313
  /**
315
314
  * Only validate once we interact with the datepicker
@@ -321,7 +320,7 @@ let AuroFormValidation$1 = class AuroFormValidation {
321
320
  let hasValue = elem.value && elem.value.length > 0;
322
321
 
323
322
  // If there is a second input in the elem and that value is undefined or an empty string set hasValue to false;
324
- if (this.auroInputElements && this.auroInputElements.length === 2) {
323
+ if (this.auroInputElements?.length === 2) {
325
324
  if (!this.auroInputElements[1].value || this.auroInputElements[1].length === 0) {
326
325
  hasValue = false;
327
326
  }
@@ -329,31 +328,27 @@ let AuroFormValidation$1 = class AuroFormValidation {
329
328
 
330
329
  if (!hasValue && elem.required) {
331
330
  elem.validity = 'valueMissing';
332
- elem.setCustomValidity = elem.setCustomValidityValueMissing || '';
331
+ elem.errorMessage = elem.setCustomValidityValueMissing || elem.setCustomValidity || '';
333
332
  } else if (this.runtimeUtils.elementMatch(elem, 'auro-input')) {
334
333
  this.validateType(elem);
335
334
  this.validateAttributes(elem);
336
335
  }
337
336
  }
338
337
 
339
- if (this.auroInputElements && this.auroInputElements.length > 0) {
338
+ if (this.auroInputElements?.length > 0) {
340
339
  elem.validity = this.auroInputElements[0].validity;
341
- elem.setCustomValidity = this.auroInputElements[0].setCustomValidity;
340
+ elem.errorMessage = this.auroInputElements[0].errorMessage;
342
341
 
343
- if (elem.validity === 'valid') {
344
- if (this.auroInputElements.length > 1) {
345
- elem.validity = this.auroInputElements[1].validity;
346
- elem.setCustomValidity = this.auroInputElements[1].setCustomValidity;
347
- }
342
+ if (elem.validity === 'valid' && this.auroInputElements.length > 1) {
343
+ elem.validity = this.auroInputElements[1].validity;
344
+ elem.errorMessage = this.auroInputElements[1].errorMessage;
348
345
  }
349
346
  }
350
347
 
351
348
  if (validationShouldRun || elem.hasAttribute('error')) {
352
- if (elem.validity && elem.validity !== 'valid') {
353
- // Use the validity message override if it is declared
354
- if (elem.ValidityMessageOverride) {
355
- elem.setCustomValidity = elem.ValidityMessageOverride;
356
- }
349
+ // Use the validity message override if it is declared
350
+ if (elem.validity && elem.validity !== 'valid' && elem.ValidityMessageOverride) {
351
+ elem.errorMessage = elem.ValidityMessageOverride;
357
352
  }
358
353
 
359
354
  this.getErrorMessage(elem);
@@ -399,18 +394,18 @@ let AuroFormValidation$1 = class AuroFormValidation {
399
394
  if (elem.validity !== 'valid') {
400
395
  if (elem.setCustomValidity) {
401
396
  elem.errorMessage = elem.setCustomValidity;
402
- } else if (this.runtimeUtils.elementMatch(elem, 'auro-input')) {
397
+ } else if (this.runtimeUtils.elementMatch(elem, 'auro-input') && elem.errorMessage === '') {
403
398
  const input = elem.renderRoot.querySelector('input');
404
399
 
405
400
  if (input.validationMessage.length > 0) {
406
401
  elem.errorMessage = input.validationMessage;
407
402
  }
408
- } else if (this.inputElements && this.inputElements.length > 0) {
403
+ } else if (this.inputElements?.length > 0 && elem.errorMessage === '') {
409
404
  const firstInput = this.inputElements[0];
410
405
 
411
406
  if (firstInput.validationMessage.length > 0) {
412
407
  elem.errorMessage = firstInput.validationMessage;
413
- } else if (this.inputElements.length === 2) {
408
+ } else if (this.inputElements?.length === 2) {
414
409
  const secondInput = this.inputElements[1];
415
410
 
416
411
  if (secondInput.validationMessage.length > 0) {
@@ -3435,7 +3430,7 @@ const t$4=globalThis,e$1$1=t$4.ShadowRoot&&(void 0===t$4.ShadyCSS||t$4.ShadyCSS.
3435
3430
  * SPDX-License-Identifier: BSD-3-Clause
3436
3431
  */class r extends b{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0;}createRenderRoot(){const t=super.createRenderRoot();return this.renderOptions.renderBefore??=t.firstChild,t}update(t){const s=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=B(s,this.renderRoot,this.renderOptions);}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0);}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1);}render(){return T}}r._$litElement$=!0,r["finalized"]=!0,globalThis.litElementHydrateSupport?.({LitElement:r});const i$6=globalThis.litElementPolyfillSupport;i$6?.({LitElement:r});(globalThis.litElementVersions??=[]).push("4.1.1");
3437
3432
 
3438
- var styleCss$3$1 = i$2`*,*:before,*:after{box-sizing:border-box}@media(prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}}*:focus-visible{outline:0}*:focus-visible{outline:0}:focus:not(:focus-visible){outline:3px solid transparent}.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock,:host{display:block}.util_displayFlex{display:flex}.util_displayHidden,:host([hidden]:not(:focus):not(:active)){display:none}.util_displayHiddenVisually,:host([hiddenVisually]:not(:focus):not(:active)){position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}.typeIcon{display:flex;flex-direction:row;align-items:center}.typeIcon [auro-icon]{--ds-auro-icon-size: var(--ds-size-300, 1.5rem);height:var(--ds-size-300, 1.5rem);margin-right:var(--ds-size-100, 0.5rem)}.notificationIcons{display:flex;flex-direction:row;padding-right:var(--ds-size-100, 0.5rem)}:host([bordered]) .typeIcon{padding-left:var(--ds-size-100, 0.5rem)}:host([bordered]) .notificationIcons{align-items:center}.notification:not(:first-of-type){margin-left:var(--ds-size-100, 0.5rem)}.alertNotification{width:calc(var(--ds-size-300, 1.5rem) + var(--ds-size-25, 0.125rem));height:calc(var(--ds-size-300, 1.5rem) + var(--ds-size-25, 0.125rem))}.clearBtn{width:calc(var(--ds-size-200, 1rem) + var(--ds-size-25, 0.125rem));height:calc(var(--ds-size-200, 1rem) + var(--ds-size-25, 0.125rem));opacity:0;pointer-events:none}:host .wrapper:hover .clearBtn,:host .wrapper:focus-within .clearBtn{opacity:1;pointer-events:auto}.passwordBtn{width:calc(var(--ds-size-300, 1.5rem));height:calc(var(--ds-size-300, 1.5rem))}.notificationBtn{display:block;width:var(--ds-size-300, 1.5rem);height:var(--ds-size-300, 1.5rem);padding:0;border:0;background:unset;cursor:pointer}.notificationBtn [auro-icon]{display:block;height:var(--ds-size-300, 1.5rem);--ds-auro-icon-size: var(--ds-size-300, 1.5rem)}.notificationBtn [auro-icon][hidden]{display:none}:host(:not([bordered])) .typeIcon,:host(:not([bordered])) .notificationIcons{align-items:flex-end;padding-bottom:var(--ds-size-50, 0.25rem)}:host(:focus-within[type=password]) .notificationIcons[hasValue] .alertNotification{overflow:hidden;width:0;height:0;padding:0;margin:0;visibility:hidden}.inputElement-helpText{margin:var(--ds-size-50, 0.25rem) 0;font-size:var(--ds-text-body-size-xs, 0.75rem);line-height:var(--ds-size-200, 1rem)}input{border:unset}.wrapper{position:relative;overflow:hidden;border-style:solid}:host(:not([bordered],[borderless])) .wrapper{border-width:1px 0}:host([bordered]) .wrapper{border-width:1px;border-radius:var(--ds-border-radius, 0.375rem)}:host(:not([borderless])) .wrapper:focus-within:before{position:absolute;display:block;border-bottom-width:1px;border-bottom-style:solid;content:"";inset:0;pointer-events:none}:host([validity]:not([validity=valid])) .wrapper:before{border-bottom:0}label{position:absolute;overflow:hidden;pointer-events:none;text-overflow:ellipsis;transition:all .3s cubic-bezier(0.215, 0.61, 0.355, 1);white-space:nowrap}:host(:not([bordered])) label{top:calc(100% - var(--ds-size-25, 0.125rem));transform:translateY(-100%)}:host(:not([bordered])) label.withIcon{left:var(--ds-size-400, 2rem)}:host([bordered]) label{top:50%;transform:translateY(-50%)}:host([bordered]) label.withIcon{left:var(--ds-size-500, 2.5rem)}:host([bordered]) label:not(label.withIcon){left:var(--ds-size-100, 0.5rem)}:host .wrapper:focus-within label{top:var(--ds-size-100, 0.5rem);font-size:var(--ds-text-body-size-xs, 0.75rem);transform:unset}:host label.withValue{top:var(--ds-size-100, 0.5rem);font-size:var(--ds-text-body-size-xs, 0.75rem);transform:unset}:host([activeLabel]) .wrapper label{top:var(--ds-size-100, 0.5rem);font-size:var(--ds-text-body-size-xs, 0.75rem);transform:unset}:host{--size-lgsm: 1.875rem;--size-xlsm: 2.75rem;--size-mdxxs: 1.2rem;position:relative;display:block}.wrapper{display:flex;flex-direction:row}.main{display:flex;flex-direction:row;position:relative;flex:1}input{position:relative;overflow:hidden;min-height:calc(var(--ds-size-700, 3.5rem) + var(--ds-size-25, 0.125rem));max-height:calc(var(--ds-size-700, 3.5rem) + var(--ds-size-25, 0.125rem));flex:1;padding:var(--ds-size-400, 2rem) 0 var(--ds-size-50, 0.25rem);margin:0;font-family:var(--ds-font-family-default, "AS Circular", Helvetica Neue, Arial, sans-serif);font-size:var(--ds-size-200, 1rem);outline:none;text-overflow:ellipsis;transition:all .3s cubic-bezier(0.215, 0.61, 0.355, 1);white-space:nowrap}input::-ms-reveal,input::-ms-clear{display:none}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}input[type=number]{-moz-appearance:textfield;appearance:textfield}input:disabled{background:none;pointer-events:none}:host([bordered]) input{padding:var(--ds-size-400, 2rem) 0 var(--ds-size-100, 0.5rem)}`;
3433
+ var styleCss$3$1 = i$2`*,*:before,*:after{box-sizing:border-box}@media(prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}}*:focus-visible{outline:0}*:focus-visible{outline:0}:focus:not(:focus-visible){outline:3px solid transparent}.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock,:host{display:block}.util_displayFlex{display:flex}.util_displayHidden,:host([hidden]:not(:focus):not(:active)){display:none}.util_displayHiddenVisually,:host([hiddenVisually]:not(:focus):not(:active)){position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}.typeIcon{display:flex;flex-direction:row;align-items:center}.typeIcon [auro-icon]{--ds-auro-icon-size: var(--ds-size-300, 1.5rem);height:var(--ds-size-300, 1.5rem);margin-right:var(--ds-size-100, 0.5rem)}.notificationIcons{display:flex;flex-direction:row;padding-right:var(--ds-size-100, 0.5rem)}:host([bordered]) .typeIcon{padding-left:var(--ds-size-100, 0.5rem)}:host([bordered]) .notificationIcons{align-items:center}.notification:not(:first-of-type){margin-left:var(--ds-size-100, 0.5rem)}.alertNotification{width:calc(var(--ds-size-300, 1.5rem) + var(--ds-size-25, 0.125rem));height:calc(var(--ds-size-300, 1.5rem) + var(--ds-size-25, 0.125rem))}.passwordBtn{width:calc(var(--ds-size-300, 1.5rem));height:calc(var(--ds-size-300, 1.5rem))}.notificationBtn{display:block;width:var(--ds-size-300, 1.5rem);height:var(--ds-size-300, 1.5rem);padding:0;border:0;background:unset;cursor:pointer}.notificationBtn [auro-icon]{display:block;height:var(--ds-size-300, 1.5rem);--ds-auro-icon-size: var(--ds-size-300, 1.5rem)}.notificationBtn [auro-icon][hidden]{display:none}:host(:not([bordered])) .typeIcon,:host(:not([bordered])) .notificationIcons{align-items:flex-end;padding-bottom:var(--ds-size-50, 0.25rem)}.clearBtn{transition:all .3s cubic-bezier(0.215, 0.61, 0.355, 1);overflow:hidden;width:0;opacity:0}:host .wrapper:hover .clearBtn,:host .wrapper:focus-within .clearBtn{width:calc(var(--ds-size-200, 1rem) + var(--ds-size-25, 0.125rem));height:calc(var(--ds-size-200, 1rem) + var(--ds-size-25, 0.125rem));opacity:1}:host(:focus-within[type=password]) .notificationIcons[hasValue] .alertNotification{overflow:hidden;width:0;height:0;padding:0;margin:0;visibility:hidden}.inputElement-helpText{margin:var(--ds-size-50, 0.25rem) 0;font-size:var(--ds-text-body-size-xs, 0.75rem);line-height:var(--ds-size-200, 1rem)}input{border:unset}.wrapper{position:relative;overflow:hidden;border-style:solid}:host(:not([bordered],[borderless])) .wrapper{border-width:1px 0}:host([bordered]) .wrapper{border-width:1px;border-radius:var(--ds-border-radius, 0.375rem)}:host(:not([borderless])) .wrapper:focus-within:before{position:absolute;display:block;border-bottom-width:1px;border-bottom-style:solid;content:"";inset:0;pointer-events:none}:host([validity]:not([validity=valid])) .wrapper:before{border-bottom:0}label{transition:all .3s cubic-bezier(0.215, 0.61, 0.355, 1);position:absolute;overflow:hidden;pointer-events:none;text-overflow:ellipsis;white-space:nowrap}:host(:not([bordered])) label{top:calc(100% - var(--ds-size-25, 0.125rem));transform:translateY(-100%)}:host(:not([bordered])) label.withIcon{left:var(--ds-size-400, 2rem)}:host([bordered]) label{top:50%;transform:translateY(-50%)}:host([bordered]) label.withIcon{left:var(--ds-size-500, 2.5rem)}:host([bordered]) label:not(label.withIcon){left:var(--ds-size-100, 0.5rem)}:host .wrapper:focus-within label{top:var(--ds-size-100, 0.5rem);font-size:var(--ds-text-body-size-xs, 0.75rem);transform:unset}:host label.withValue{top:var(--ds-size-100, 0.5rem);font-size:var(--ds-text-body-size-xs, 0.75rem);transform:unset}:host([activeLabel]) .wrapper label{top:var(--ds-size-100, 0.5rem);font-size:var(--ds-text-body-size-xs, 0.75rem);transform:unset}:host{position:relative;display:block}.wrapper{display:flex;flex-direction:row}.main{display:flex;flex-direction:row;position:relative;flex:1}input{transition:all .3s cubic-bezier(0.215, 0.61, 0.355, 1);position:relative;overflow:hidden;min-height:calc(var(--ds-size-700, 3.5rem) + var(--ds-size-25, 0.125rem));max-height:calc(var(--ds-size-700, 3.5rem) + var(--ds-size-25, 0.125rem));flex:1;padding:var(--ds-size-400, 2rem) 0 var(--ds-size-50, 0.25rem);margin:0;font-family:var(--ds-font-family-default, "AS Circular", Helvetica Neue, Arial, sans-serif);font-size:var(--ds-size-200, 1rem);outline:none;text-overflow:ellipsis;white-space:nowrap}input::-ms-reveal,input::-ms-clear{display:none}input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none}input[type=number]{-moz-appearance:textfield;appearance:textfield}input:disabled{background:none;pointer-events:none}:host([bordered]) input{padding:var(--ds-size-400, 2rem) 0 var(--ds-size-100, 0.5rem)}`;
3439
3434
 
3440
3435
  var colorCss$3 = i$2`.wrapper{border-color:transparent}.inputElement-helpText{color:var(--ds-auro-input-help-text-color)}input{background-color:transparent;caret-color:var(--ds-auro-input-caret-color);color:var(--ds-auro-input-text-color)}input::placeholder{color:transparent}input:focus::placeholder{color:var(--ds-auro-input-placeholder-text-color)}input:disabled{--ds-auro-input-input-text-color: var(--ds-color-text-ui-disabled-default, #adadad)}label{color:var(--ds-auro-input-label-text-color)}:host(:not([bordered],[borderless])) .wrapper{border-bottom-color:var(--ds-auro-input-border-color)}:host([bordered]) .wrapper{border-color:var(--ds-auro-input-border-color);background-color:var(--ds-auro-input-container-color)}:host([bordered]) .wrapper:focus-within{--ds-auro-input-border-color: var(--ds-color-border-ui-focus-default, #2c67b5);box-shadow:inset 0 0 0 1px var(--ds-auro-input-border-color)}:host(:not([borderless])) .wrapper:focus-within{--ds-auro-input-border-color: var(--ds-color-border-ui-focus-default, #2c67b5)}:host(:not([borderless])) .wrapper:focus-within:before{border-bottom-color:transparent}:host([validity]:not([validity=valid])){--ds-auro-input-border-color: var(--ds-color-border-error-default, #cc1816);--ds-auro-input-help-text-color: var(--ds-color-text-error-default, #cc1816)}:host([validity]:not([validity=valid])[bordered]) .wrapper{--ds-auro-input-border-color: var(--ds-color-border-error-default, #cc1816);box-shadow:inset 0 0 0 1px var(--ds-auro-input-border-color)}:host([disabled]){--ds-auro-input-border-color: var(--ds-color-border-ui-disabled-default, #adadad);--ds-auro-input-label-text-color: var(--ds-color-text-ui-disabled-default, #adadad)}`;
3441
3436
 
@@ -5112,20 +5107,20 @@ class AuroFormValidation {
5112
5107
  const pattern = new RegExp(`^${elem.pattern}$`, 'u');
5113
5108
 
5114
5109
  if (!pattern.test(elem.value)) {
5115
- elem.validity = 'badInput';
5116
- elem.setCustomValidity = elem.setCustomValidityBadInput || '';
5110
+ elem.validity = 'patternMismatch';
5111
+ elem.errorMessage = elem.setCustomValidityPatternMismatch || elem.setCustomValidity || '';
5117
5112
  }
5118
5113
  }
5119
5114
 
5120
5115
  // Length > 0 is required to prevent the error message from showing when the input is empty
5121
5116
  if (elem.value?.length > 0 && elem.value?.length < elem.minLength) {
5122
5117
  elem.validity = 'tooShort';
5123
- elem.setCustomValidity = elem.setCustomValidityTooShort || '';
5118
+ elem.errorMessage = elem.setCustomValidityTooShort || elem.setCustomValidity || '';
5124
5119
  }
5125
5120
 
5126
5121
  if (elem.value?.length > elem.maxLength) {
5127
5122
  elem.validity = 'tooLong';
5128
- elem.setCustomValidity = elem.setCustomValidityTooLong || '';
5123
+ elem.errorMessage = elem.setCustomValidityTooLong || elem.setCustomValidity || '';
5129
5124
  }
5130
5125
  }
5131
5126
 
@@ -5141,33 +5136,32 @@ class AuroFormValidation {
5141
5136
  const emailRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9-]+(?:\.[a-zA-Z0-9-]+)*$/; // eslint-disable-line require-unicode-regexp
5142
5137
 
5143
5138
  if (!elem.value.match(emailRegex)) {
5144
- elem.validity = 'badInput';
5145
- elem.setCustomValidity = elem.setCustomValidityForType || '';
5139
+ elem.validity = 'patternMismatch';
5140
+ elem.errorMessage = elem.setCustomValidityForType || elem.setCustomValidity || '';
5146
5141
  }
5147
5142
  } else if (elem.type === 'credit-card') {
5148
5143
  if (elem.value.length > 0 && elem.value.length < elem.validationCCLength) {
5149
5144
  elem.validity = 'tooShort';
5150
- elem.setCustomValidity = elem.setCustomValidityForType || '';
5145
+ elem.errorMessage = elem.setCustomValidityForType || elem.setCustomValidity || '';
5151
5146
  }
5152
5147
  } else if (elem.type === 'number') {
5153
5148
  if (elem.max !== undefined && Number(elem.max) < Number(elem.value)) {
5154
5149
  elem.validity = 'rangeOverflow';
5155
- elem.setCustomValidity = elem.getAttribute('setCustomValidityRangeOverflow') || '';
5150
+ elem.errorMessage = elem.setCustomValidityRangeOverflow || elem.setCustomValidity || '';
5156
5151
  }
5157
5152
 
5158
- if (elem.min !== undefined && Number(elem.min) > Number(elem.value)) {
5153
+ if (elem.min !== undefined && elem.value?.length > 0 && Number(elem.min) > Number(elem.value)) {
5159
5154
  elem.validity = 'rangeUnderflow';
5160
- elem.setCustomValidity = elem.getAttribute('setCustomValidityRangeUnderflow') || '';
5155
+ elem.errorMessage = elem.setCustomValidityRangeUnderflow || elem.setCustomValidity || '';
5161
5156
  }
5162
-
5163
5157
  } else if (elem.type === 'month-day-year' ||
5164
5158
  elem.type === 'month-year' ||
5165
5159
  elem.type === 'month-fullYear' ||
5166
5160
  elem.type === 'year-month-day'
5167
5161
  ) {
5168
- if (elem.value && elem.value.length > 0 && elem.value.length < elem.dateStrLength) {
5162
+ if (elem.value?.length > 0 && elem.value.length < elem.dateStrLength) {
5169
5163
  elem.validity = 'tooShort';
5170
- elem.setCustomValidity = elem.setCustomValidityForType || '';
5164
+ elem.errorMessage = elem.setCustomValidityForType || elem.setCustomValidity || '';
5171
5165
  } else {
5172
5166
  const valueDate = new Date(elem.value);
5173
5167
 
@@ -5177,7 +5171,7 @@ class AuroFormValidation {
5177
5171
 
5178
5172
  if (valueDate > maxDate) {
5179
5173
  elem.validity = 'rangeOverflow';
5180
- elem.setCustomValidity = elem.getAttribute('setCustomValidityRangeOverflow') || '';
5174
+ elem.errorMessage = elem.setCustomValidityRangeOverflow || elem.setCustomValidity || '';
5181
5175
  }
5182
5176
  }
5183
5177
 
@@ -5187,7 +5181,7 @@ class AuroFormValidation {
5187
5181
 
5188
5182
  if (valueDate < minDate) {
5189
5183
  elem.validity = 'rangeUnderflow';
5190
- elem.setCustomValidity = elem.getAttribute('setCustomValidityRangeUnderflow') || '';
5184
+ elem.errorMessage = elem.setCustomValidityRangeUnderflow || elem.setCustomValidity || '';
5191
5185
  }
5192
5186
  }
5193
5187
  }
@@ -5210,10 +5204,10 @@ class AuroFormValidation {
5210
5204
 
5211
5205
  if (elem.hasAttribute('error')) {
5212
5206
  elem.validity = 'customError';
5213
- elem.setCustomValidity = elem.error;
5207
+ elem.errorMessage = elem.setCustomValidityCustomError || elem.error || elem.setCustomValidity || '';
5214
5208
  } else if (validationShouldRun) {
5215
5209
  elem.validity = 'valid';
5216
- elem.setCustomValidity = '';
5210
+ elem.errorMessage = '';
5217
5211
 
5218
5212
  /**
5219
5213
  * Only validate once we interact with the datepicker
@@ -5225,7 +5219,7 @@ class AuroFormValidation {
5225
5219
  let hasValue = elem.value && elem.value.length > 0;
5226
5220
 
5227
5221
  // If there is a second input in the elem and that value is undefined or an empty string set hasValue to false;
5228
- if (this.auroInputElements && this.auroInputElements.length === 2) {
5222
+ if (this.auroInputElements?.length === 2) {
5229
5223
  if (!this.auroInputElements[1].value || this.auroInputElements[1].length === 0) {
5230
5224
  hasValue = false;
5231
5225
  }
@@ -5233,31 +5227,27 @@ class AuroFormValidation {
5233
5227
 
5234
5228
  if (!hasValue && elem.required) {
5235
5229
  elem.validity = 'valueMissing';
5236
- elem.setCustomValidity = elem.setCustomValidityValueMissing || '';
5230
+ elem.errorMessage = elem.setCustomValidityValueMissing || elem.setCustomValidity || '';
5237
5231
  } else if (this.runtimeUtils.elementMatch(elem, 'auro-input')) {
5238
5232
  this.validateType(elem);
5239
5233
  this.validateAttributes(elem);
5240
5234
  }
5241
5235
  }
5242
5236
 
5243
- if (this.auroInputElements && this.auroInputElements.length > 0) {
5237
+ if (this.auroInputElements?.length > 0) {
5244
5238
  elem.validity = this.auroInputElements[0].validity;
5245
- elem.setCustomValidity = this.auroInputElements[0].setCustomValidity;
5239
+ elem.errorMessage = this.auroInputElements[0].errorMessage;
5246
5240
 
5247
- if (elem.validity === 'valid') {
5248
- if (this.auroInputElements.length > 1) {
5249
- elem.validity = this.auroInputElements[1].validity;
5250
- elem.setCustomValidity = this.auroInputElements[1].setCustomValidity;
5251
- }
5241
+ if (elem.validity === 'valid' && this.auroInputElements.length > 1) {
5242
+ elem.validity = this.auroInputElements[1].validity;
5243
+ elem.errorMessage = this.auroInputElements[1].errorMessage;
5252
5244
  }
5253
5245
  }
5254
5246
 
5255
5247
  if (validationShouldRun || elem.hasAttribute('error')) {
5256
- if (elem.validity && elem.validity !== 'valid') {
5257
- // Use the validity message override if it is declared
5258
- if (elem.ValidityMessageOverride) {
5259
- elem.setCustomValidity = elem.ValidityMessageOverride;
5260
- }
5248
+ // Use the validity message override if it is declared
5249
+ if (elem.validity && elem.validity !== 'valid' && elem.ValidityMessageOverride) {
5250
+ elem.errorMessage = elem.ValidityMessageOverride;
5261
5251
  }
5262
5252
 
5263
5253
  this.getErrorMessage(elem);
@@ -5303,18 +5293,18 @@ class AuroFormValidation {
5303
5293
  if (elem.validity !== 'valid') {
5304
5294
  if (elem.setCustomValidity) {
5305
5295
  elem.errorMessage = elem.setCustomValidity;
5306
- } else if (this.runtimeUtils.elementMatch(elem, 'auro-input')) {
5296
+ } else if (this.runtimeUtils.elementMatch(elem, 'auro-input') && elem.errorMessage === '') {
5307
5297
  const input = elem.renderRoot.querySelector('input');
5308
5298
 
5309
5299
  if (input.validationMessage.length > 0) {
5310
5300
  elem.errorMessage = input.validationMessage;
5311
5301
  }
5312
- } else if (this.inputElements && this.inputElements.length > 0) {
5302
+ } else if (this.inputElements?.length > 0 && elem.errorMessage === '') {
5313
5303
  const firstInput = this.inputElements[0];
5314
5304
 
5315
5305
  if (firstInput.validationMessage.length > 0) {
5316
5306
  elem.errorMessage = firstInput.validationMessage;
5317
- } else if (this.inputElements.length === 2) {
5307
+ } else if (this.inputElements?.length === 2) {
5318
5308
  const secondInput = this.inputElements[1];
5319
5309
 
5320
5310
  if (secondInput.validationMessage.length > 0) {
@@ -5342,8 +5332,7 @@ class AuroFormValidation {
5342
5332
  * @attr {Boolean} bordered - Applies bordered UI variant.
5343
5333
  * @attr {Boolean} borderless - Applies borderless UI variant.
5344
5334
  * @attr {Boolean} disabled - If set, disables the input.
5345
- * @attr {String} error - When defined, sets persistent validity to `customError` and sets `setCustomValidity` = attribute value.
5346
- * @prop {String} errorMessage - Contains the help text message for the current validity error.
5335
+ * @attr {String} error - When defined, sets persistent validity to `customError` and sets the validation message to the attribute value.
5347
5336
  * @attr {Boolean} icon - If set, will render an icon inside the input to the left of the value. Support is limited to auro-input instances with credit card format.
5348
5337
  * @attr {String} id - Sets the unique ID of the element.
5349
5338
  * @attr {String} lang - defines the language of an element.
@@ -5357,10 +5346,10 @@ class AuroFormValidation {
5357
5346
  * @attr {Boolean} required - Populates the `required` attribute on the input. Used for client-side validation.
5358
5347
  * @attr {String} pattern - Specifies a regular expression the form control's value should match.
5359
5348
  * @attr {String} placeholder - Define custom placeholder text, only supported by date input formats.
5360
- * @attr {String} setCustomValidity - Sets a custom help text message to display for all validityStates.
5349
+ * @attr {String} setCustomValidity - Sets a custom help text message to display for all validity states.
5361
5350
  * @attr {String} setCustomValidityCustomError - Custom help text message to display when validity = `customError`.
5362
5351
  * @attr {String} setCustomValidityValueMissing - Custom help text message to display when validity = `valueMissing`.
5363
- * @attr {String} setCustomValidityBadInput - Custom help text message to display when validity = `badInput`.
5352
+ * @attr {String} setCustomValidityPatternMismatch - Custom help text message to display when validity = `patternMismatch`.
5364
5353
  * @attr {String} setCustomValidityTooShort - Custom help text message to display when validity = `tooShort`.
5365
5354
  * @attr {String} setCustomValidityTooLong - Custom help text message to display when validity = `tooLong`.
5366
5355
  * @attr {String} setCustomValidityForType - Custom help text message to display for the declared element `type` and type validity fails.
@@ -5506,20 +5495,18 @@ class BaseInput extends r {
5506
5495
  type: String,
5507
5496
  reflect: true
5508
5497
  },
5509
- errorMessage: { type: String },
5510
5498
  validity: {
5511
5499
  type: String,
5512
5500
  reflect: true
5513
5501
  },
5514
- setCustomValidity: { type: String },
5515
- setCustomValidityCustomError: { type: String },
5516
- setCustomValidityValueMissing: { type: String },
5517
- setCustomValidityBadInput: { type: String },
5518
- setCustomValidityTooShort: { type: String },
5519
- setCustomValidityTooLong: { type: String },
5520
- setCustomValidityRangeOverflow: { type: String},
5521
- setCustomValidityRangeUnderflow: { type: String},
5522
- customValidityTypeEmail: { type: String }
5502
+ setCustomValidity: { type: String },
5503
+ setCustomValidityCustomError: { type: String },
5504
+ setCustomValidityValueMissing: { type: String },
5505
+ setCustomValidityPatternMismatch: { type: String },
5506
+ setCustomValidityTooShort: { type: String },
5507
+ setCustomValidityTooLong: { type: String },
5508
+ setCustomValidityRangeOverflow: { type: String },
5509
+ setCustomValidityRangeUnderflow: { type: String }
5523
5510
  };
5524
5511
  }
5525
5512
 
@@ -6147,7 +6134,7 @@ class BaseInput extends r {
6147
6134
  this.maxLength = card.formatLength;
6148
6135
  this.minLength = card.formatMinLength;
6149
6136
 
6150
- this.setCustomValidity = card.setCustomValidity;
6137
+ this.errorMessage = card.errorMessage;
6151
6138
 
6152
6139
  if (this.icon) {
6153
6140
  this.inputIconName = card.cardIcon;
@@ -6167,63 +6154,63 @@ class BaseInput extends r {
6167
6154
  name: 'Airlines',
6168
6155
  regex: /^(?<num>1|2)\d{0}/u,
6169
6156
  formatMinLength: 17,
6170
- setCustomValidity: CreditCardValidationMessage,
6157
+ errorMessage: CreditCardValidationMessage,
6171
6158
  cardIcon: 'credit-card'
6172
6159
  },
6173
6160
  {
6174
6161
  name: 'Commercial',
6175
6162
  regex: /^(?<num>2)\d{0}/u,
6176
6163
  formatMinLength: 8,
6177
- setCustomValidity: CreditCardValidationMessage,
6164
+ errorMessage: CreditCardValidationMessage,
6178
6165
  cardIcon: 'credit-card'
6179
6166
  },
6180
6167
  {
6181
6168
  name: 'Alaska Commercial',
6182
6169
  regex: /^(?<num>27)\d{0}/u,
6183
6170
  formatMinLength: 8,
6184
- setCustomValidity: CreditCardValidationMessage,
6171
+ errorMessage: CreditCardValidationMessage,
6185
6172
  cardIcon: 'cc-alaska'
6186
6173
  },
6187
6174
  {
6188
6175
  name: 'American Express',
6189
6176
  regex: /^(?<num>34|37)\d{0}/u,
6190
6177
  formatLength: 17,
6191
- setCustomValidity: CreditCardValidationMessage,
6178
+ errorMessage: CreditCardValidationMessage,
6192
6179
  cardIcon: 'cc-amex'
6193
6180
  },
6194
6181
  {
6195
6182
  name: 'Diners club',
6196
6183
  regex: /^(?<num>36|38)\d{0}/u,
6197
6184
  formatLength: 16,
6198
- setCustomValidity: CreditCardValidationMessage,
6185
+ errorMessage: CreditCardValidationMessage,
6199
6186
  cardIcon: 'credit-card'
6200
6187
  },
6201
6188
  {
6202
6189
  name: 'Visa',
6203
6190
  regex: /^(?<num>4)\d{0}/u,
6204
6191
  formatLength: 19,
6205
- setCustomValidity: CreditCardValidationMessage,
6192
+ errorMessage: CreditCardValidationMessage,
6206
6193
  cardIcon: 'cc-visa'
6207
6194
  },
6208
6195
  {
6209
6196
  name: 'Alaska Airlines Visa',
6210
6197
  regex: /^(?<num>4147\s34|4888\s93|4800\s11|4313\s51|4313\s07)\d{0}/u,
6211
6198
  formatLength: 19,
6212
- setCustomValidity: CreditCardValidationMessage,
6199
+ errorMessage: CreditCardValidationMessage,
6213
6200
  cardIcon: 'cc-alaska'
6214
6201
  },
6215
6202
  {
6216
6203
  name: 'Master Card',
6217
6204
  regex: /^(?<num>5)\d{0}/u,
6218
6205
  formatLength: 19,
6219
- setCustomValidity: CreditCardValidationMessage,
6206
+ errorMessage: CreditCardValidationMessage,
6220
6207
  cardIcon: 'cc-mastercard'
6221
6208
  },
6222
6209
  {
6223
6210
  name: 'Discover Card',
6224
6211
  regex: /^(?<num>6)\d{0}/u,
6225
6212
  formatLength: 19,
6226
- setCustomValidity: CreditCardValidationMessage,
6213
+ errorMessage: CreditCardValidationMessage,
6227
6214
  cardIcon: 'cc-discover'
6228
6215
  }
6229
6216
  ];
@@ -6231,7 +6218,7 @@ class BaseInput extends r {
6231
6218
  let type = {
6232
6219
  name: 'Default Card',
6233
6220
  formatLength: 19,
6234
- setCustomValidity: CreditCardValidationMessage,
6221
+ errorMessage: CreditCardValidationMessage,
6235
6222
  cardIcon: 'credit-card'
6236
6223
  };
6237
6224
 
@@ -7256,7 +7243,6 @@ class AuroInput extends BaseInput {
7256
7243
  <p class="inputElement-helpText" id="${this.uniqueId}" role="alert" aria-live="assertive" part="helpText">
7257
7244
  ${this.errorMessage}
7258
7245
  </p>`
7259
-
7260
7246
  }
7261
7247
  `;
7262
7248
  }
@@ -7277,9 +7263,11 @@ var styleCss$3 = i$c`.util_displayInline{display:inline}.util_displayInlineBlock
7277
7263
  * @prop {Object} optionSelected - Specifies the current selected option.
7278
7264
  * @prop {String} value - Value selected for the dropdown menu.
7279
7265
  * @prop {Boolean} checkmark - When attribute is present auro-menu will apply checkmarks to selected options.
7280
- * @attr {Boolean} error - Sets a persistent error state (e.g. an error state returned from the server).
7266
+ * @attr {String} error - When defined, sets persistent validity to `customError` and sets the validation message to the attribute value.
7281
7267
  * @attr {String} validity - Specifies the `validityState` this element is in.
7282
7268
  * @attr {String} setCustomValidity - Sets a custom help text message to display for all validityStates.
7269
+ * @attr {String} setCustomValidityCustomError - Custom help text message to display when validity = `customError`.
7270
+ * @attr {String} setCustomValidityValueMissing - Custom help text message to display when validity = `valueMissing`.
7283
7271
  * @attr {Boolean} disabled - If set, disables the combobox.
7284
7272
  * @attr {Boolean} noFilter - If set, combobox will not filter menuoptions based in input.
7285
7273
  * @attr {Boolean} noValidate - If set, disables auto-validation on blur.
@@ -7345,12 +7333,17 @@ class AuroCombobox extends r$6 {
7345
7333
  return {
7346
7334
  // ...super.properties,
7347
7335
  error: {
7348
- type: Boolean,
7336
+ type: String,
7349
7337
  reflect: true
7350
7338
  },
7351
7339
  setCustomValidity: {
7352
- type: String,
7353
- reflect: true
7340
+ type: String
7341
+ },
7342
+ setCustomValidityCustomError: {
7343
+ type: String
7344
+ },
7345
+ setCustomValidityValueMissing: {
7346
+ type: String
7354
7347
  },
7355
7348
  validity: {
7356
7349
  type: String,
@@ -7634,9 +7627,7 @@ class AuroCombobox extends r$6 {
7634
7627
  });
7635
7628
 
7636
7629
  this.menu.addEventListener('auroMenu-selectValueReset', () => {
7637
- this.optionSelected = undefined;
7638
- this.value = undefined;
7639
- this.validation.validate(this);
7630
+ this.reset();
7640
7631
  });
7641
7632
  }
7642
7633
 
@@ -7714,7 +7705,7 @@ class AuroCombobox extends r$6 {
7714
7705
  });
7715
7706
 
7716
7707
  this.input.addEventListener('auroFormElement-validated', (evt) => {
7717
- this.auroInputHelpText = evt.detail.message;
7708
+ this.errorMessage = evt.detail.message;
7718
7709
  });
7719
7710
  }
7720
7711
 
@@ -7858,9 +7849,6 @@ class AuroCombobox extends r$6 {
7858
7849
  * @returns {void}
7859
7850
  */
7860
7851
  reset() {
7861
- // Resets the help text of the combobox
7862
- this.auroInputHelpText = undefined;
7863
-
7864
7852
  this.input.reset();
7865
7853
  this.validation.reset(this);
7866
7854
  }
@@ -7893,10 +7881,6 @@ class AuroCombobox extends r$6 {
7893
7881
  this.input.setAttribute('error', this.getAttribute('error'));
7894
7882
  this.validation.validate(this);
7895
7883
  }
7896
-
7897
- if (changedProperties.has('setCustomValidity')) {
7898
- this.input.setAttribute('setCustomValidity', this.setCustomValidity);
7899
- }
7900
7884
  }
7901
7885
 
7902
7886
  /**
@@ -7950,19 +7934,23 @@ class AuroCombobox extends r$6 {
7950
7934
  ?noValidate="${this.noValidate}"
7951
7935
  ?disabled="${this.disabled}"
7952
7936
  ?icon="${this.triggerIcon}"
7937
+ setCustomValidity="${this.setCustomValidity}"
7938
+ setCustomValidityValueMissing="${this.setCustomValidityValueMissing}"
7939
+ setCustomValidityCustomError="${this.setCustomValidityCustomError}"
7953
7940
  .type="${this.type}">
7954
7941
  <slot name="label" slot="label"></slot>
7955
7942
  </${this.inputTag}>
7956
7943
  <div class="menuWrapper">
7957
7944
  </div>
7958
7945
  <span slot="helpText">
7959
- ${this.auroInputHelpText
7946
+ <!-- Help text and error message template -->
7947
+ ${!this.validity || this.validity === undefined || this.validity === 'valid'
7960
7948
  ? u$6`
7961
- ${this.auroInputHelpText}
7962
- `
7963
- : u$6`
7964
7949
  <slot name="helpText"></slot>
7965
- `
7950
+ ` : u$6`
7951
+ <p role="alert" aria-live="assertive" part="helpText">
7952
+ ${this.errorMessage}
7953
+ </p>`
7966
7954
  }
7967
7955
  </span>
7968
7956
  </${this.dropdownTag}>
@@ -7994,8 +7982,8 @@ var tokensCss$1 = i$c`:host{--ds-auro-menu-divider-color: var(--ds-color-border-
7994
7982
  * @event auroMenu-selectedOption - Notifies that a new menuoption selection has been made.
7995
7983
  * @event auroMenu-activatedOption - Notifies that a menuoption has been made `active`.
7996
7984
  * @event auroMenu-selectValueFailure - Notifies that a an attempt to select a menuoption by matching a value has failed.
7997
- * @event auroMenu-customEventFired - Notifies that a custom event has been fired.
7998
7985
  * @event auroMenu-selectValueReset - Notifies that the component value has been reset.
7986
+ * @event auroMenu-customEventFired - Notifies that a custom event has been fired.
7999
7987
  * @event auroMenu-loadingChange - Notifies when the loading attribute is changed.
8000
7988
  * @slot loadingText - Text to show while loading attribute is set
8001
7989
  * @slot loadingIcon - Icon to show while loading attribute is set