@aurodesignsystem-dev/auro-formkit 0.0.0-pr624.5 → 0.0.0-pr624.6

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 (59) hide show
  1. package/components/bibtemplate/dist/auro-bibtemplate.d.ts +1 -0
  2. package/components/bibtemplate/dist/index.js +88 -6
  3. package/components/bibtemplate/dist/registered.js +88 -6
  4. package/components/checkbox/demo/api.min.js +4 -3
  5. package/components/checkbox/demo/index.min.js +4 -3
  6. package/components/checkbox/dist/index.js +4 -3
  7. package/components/checkbox/dist/registered.js +4 -3
  8. package/components/combobox/demo/api.min.js +514 -172
  9. package/components/combobox/demo/index.min.js +514 -172
  10. package/components/combobox/dist/auro-combobox.d.ts +0 -8
  11. package/components/combobox/dist/index.js +425 -153
  12. package/components/combobox/dist/registered.js +425 -153
  13. package/components/counter/demo/api.min.js +404 -106
  14. package/components/counter/demo/index.min.js +404 -106
  15. package/components/counter/dist/index.js +404 -106
  16. package/components/counter/dist/registered.js +404 -106
  17. package/components/datepicker/demo/api.md +13 -5
  18. package/components/datepicker/demo/api.min.js +876 -383
  19. package/components/datepicker/demo/index.md +13 -0
  20. package/components/datepicker/demo/index.min.js +876 -383
  21. package/components/datepicker/dist/auro-datepicker.d.ts +21 -2
  22. package/components/datepicker/dist/index.js +679 -186
  23. package/components/datepicker/dist/registered.js +679 -186
  24. package/components/datepicker/dist/styles/emphasized/style-css.d.ts +2 -0
  25. package/components/datepicker/dist/styles/shapeSize-css.d.ts +2 -0
  26. package/components/dropdown/demo/api.md +1 -1
  27. package/components/dropdown/demo/api.min.js +226 -81
  28. package/components/dropdown/demo/index.min.js +226 -81
  29. package/components/dropdown/dist/auro-dropdown.d.ts +10 -0
  30. package/components/dropdown/dist/auro-dropdownBib.d.ts +8 -0
  31. package/components/dropdown/dist/index.js +226 -81
  32. package/components/dropdown/dist/registered.js +226 -81
  33. package/components/input/demo/api.md +46 -48
  34. package/components/input/demo/api.min.js +96 -15
  35. package/components/input/demo/index.min.js +96 -15
  36. package/components/input/dist/auro-input.d.ts +17 -15
  37. package/components/input/dist/index.js +96 -15
  38. package/components/input/dist/registered.js +96 -15
  39. package/components/menu/demo/api.min.js +76 -6
  40. package/components/menu/demo/index.min.js +76 -6
  41. package/components/menu/dist/index.js +76 -6
  42. package/components/menu/dist/registered.js +76 -6
  43. package/components/radio/demo/api.min.js +4 -3
  44. package/components/radio/demo/index.min.js +4 -3
  45. package/components/radio/dist/index.js +4 -3
  46. package/components/radio/dist/registered.js +4 -3
  47. package/components/select/demo/api.md +12 -4
  48. package/components/select/demo/api.min.js +1165 -203
  49. package/components/select/demo/index.html +1 -0
  50. package/components/select/demo/index.md +298 -777
  51. package/components/select/demo/index.min.js +1165 -203
  52. package/components/select/dist/auro-select.d.ts +88 -4
  53. package/components/select/dist/helptextVersion.d.ts +2 -0
  54. package/components/select/dist/index.js +1106 -214
  55. package/components/select/dist/registered.js +1106 -214
  56. package/components/select/dist/styles/shapeSize-css.d.ts +2 -0
  57. package/components/select/dist/styles/tokens-css.d.ts +2 -0
  58. package/package.json +3 -3
  59. /package/components/{dropdown/dist/styles/style-css.d.ts → datepicker/dist/styles/default/color-css.d.ts} +0 -0
@@ -147,6 +147,102 @@ const t={ATTRIBUTE:1},e$1=t=>(...e)=>({_$litDirective$:t,values:e});let i$1 = cl
147
147
  */
148
148
  const a=Symbol.for(""),o$1=t=>{if(t?.r===a)return t?._$litStatic$},s=t=>({_$litStatic$:t,r:a}),i=(t,...r)=>({_$litStatic$:r.reduce(((r,e,a)=>r+(t=>{if(void 0!==t._$litStatic$)return t._$litStatic$;throw Error(`Value passed to 'literal' function must be a 'literal' result: ${t}. Use 'unsafeStatic' to pass non-literal values, but\n take care to ensure page security.`)})(e)+t[a+1]),t[0]),r:a}),l=new Map,n=t=>(r,...e)=>{const a=e.length;let s,i;const n=[],u=[];let c,$=0,f=false;for(;$<a;){for(c=r[$];$<a&&void 0!==(i=e[$],s=o$1(i));)c+=s+r[++$],f=true;$!==a&&u.push(i),n.push(c),$++;}if($===a&&n.push(r[a]),f){const t=n.join("$$lit$$");void 0===(r=l.get(t))&&(n.raw=n,l.set(t,r=n)),e=u;}return t(r,...e)},u=n(x);
149
149
 
150
+ let AuroElement$3 = class AuroElement extends i$2 {
151
+ static get properties() {
152
+ return {
153
+
154
+ /**
155
+ * Defines the language of an element.
156
+ * @default {'default'}
157
+ */
158
+ layout: {
159
+ type: String,
160
+ attribute: "layout",
161
+ reflect: true
162
+ },
163
+
164
+ shape: {
165
+ type: String,
166
+ attribute: "shape",
167
+ reflect: true
168
+ },
169
+
170
+ size: {
171
+ type: String,
172
+ attribute: "size",
173
+ reflect: true
174
+ },
175
+
176
+ onDark: {
177
+ type: Boolean,
178
+ attribute: "ondark",
179
+ reflect: true
180
+ }
181
+ };
182
+ }
183
+
184
+ resetShapeClasses() {
185
+ if (this.shape && this.size) {
186
+ const wrapper = this.shadowRoot.querySelector('.wrapper');
187
+
188
+ if (wrapper) {
189
+ wrapper.classList.forEach((className) => {
190
+ if (className.startsWith('shape-')) {
191
+ wrapper.classList.remove(className);
192
+ }
193
+ });
194
+
195
+ wrapper.classList.add(`shape-${this.shape.toLowerCase()}-${this.size.toLowerCase()}`);
196
+ }
197
+ }
198
+ }
199
+
200
+ resetLayoutClasses() {
201
+ if (this.layout) {
202
+ const wrapper = this.shadowRoot.querySelector('.wrapper');
203
+
204
+ if (wrapper) {
205
+ wrapper.classList.forEach((className) => {
206
+ if (className.startsWith('layout-')) {
207
+ wrapper.classList.remove(className);
208
+ }
209
+ });
210
+
211
+ wrapper.classList.add(`layout-${this.layout.toLowerCase()}`);
212
+ }
213
+ }
214
+ }
215
+
216
+ updateComponentArchitecture() {
217
+ this.resetLayoutClasses();
218
+ this.resetShapeClasses();
219
+ }
220
+
221
+ updated(changedProperties) {
222
+ if (changedProperties.has('layout') || changedProperties.has('shape') || changedProperties.has('size')) {
223
+ this.updateComponentArchitecture();
224
+ }
225
+ }
226
+
227
+ // Try to render the defined `this.layout` layout. If that fails, fall back to the default layout.
228
+ // This will catch if an invalid layout value is passed in and render the default layout if so.
229
+ render() {
230
+ try {
231
+ return this.renderLayout();
232
+ } catch (error) {
233
+ // failed to get the defined layout
234
+ console.error('Failed to get the defined layout - using the default layout', error); // eslint-disable-line no-console
235
+
236
+ // fallback to the default layout
237
+ return this.getLayout('default');
238
+ }
239
+ }
240
+ };
241
+
242
+ var shapeSizeCss$1 = i$5`.wrapper{overflow:hidden}.shape-classic-xl,.shape-classic-lg,.shape-classic-md,.shape-classic-sm,.shape-classic-xs{min-height:58px;max-height:58px;border-style:solid;border-width:1px;border-radius:var(--ds-border-radius, 0.375rem)}.shape-classic-xl.simple,.shape-classic-lg.simple,.shape-classic-md.simple,.shape-classic-sm.simple,.shape-classic-xs.simple{border-width:0px;min-height:60px;max-height:60px;background-color:unset}.shape-classic-xl.thin,.shape-classic-lg.thin,.shape-classic-md.thin,.shape-classic-sm.thin,.shape-classic-xs.thin{border-width:1px;min-height:58px;max-height:58px;background-color:unset}.shape-classic-xl.parentBorder,.shape-classic-lg.parentBorder,.shape-classic-md.parentBorder,.shape-classic-sm.parentBorder,.shape-classic-xs.parentBorder{border:0;min-height:56px;max-height:56px}.shape-snowflake-xl,.shape-snowflake-lg,.shape-snowflake-md,.shape-snowflake-sm,.shape-snowflake-xs{min-height:56px;max-height:56px;border-style:solid;border-width:2px;border-color:transparent;border-radius:30px}.shape-snowflake-xl.simple,.shape-snowflake-lg.simple,.shape-snowflake-md.simple,.shape-snowflake-sm.simple,.shape-snowflake-xs.simple{border-width:0px;min-height:60px;max-height:60px;background-color:unset}.shape-snowflake-xl.thin,.shape-snowflake-lg.thin,.shape-snowflake-md.thin,.shape-snowflake-sm.thin,.shape-snowflake-xs.thin{border-width:1px;min-height:58px;max-height:58px;background-color:unset}.shape-snowflake-xl.parentBorder,.shape-snowflake-lg.parentBorder,.shape-snowflake-md.parentBorder,.shape-snowflake-sm.parentBorder,.shape-snowflake-xs.parentBorder{border:0;min-height:56px;max-height:56px}.shape-box-xl{min-height:68px;max-height:68px;border-style:solid;border-width:2px;border-color:transparent}.shape-box-xl.simple{border-width:0px;min-height:72px;max-height:72px;background-color:unset}.shape-box-xl.thin{border-width:1px;min-height:70px;max-height:70px;background-color:unset}.shape-box-xl.parentBorder{border:0;min-height:68px;max-height:68px}.shape-rounded-lg{min-height:56px;max-height:56px;border-style:solid;border-width:2px;border-color:transparent;border-radius:6px}.shape-rounded-lg.simple{border-width:0px;min-height:56px;max-height:56px;background-color:unset}.shape-rounded-lg.thin{border-width:1px;min-height:54px;max-height:54px;background-color:unset}.shape-rounded-lg.parentBorder{border:0;min-height:52px;max-height:52px}.shape-pill-xl{min-height:68px;max-height:68px;border-style:solid;border-width:2px;border-color:transparent;border-radius:36px}.shape-pill-xl.simple{border-width:0px;min-height:72px;max-height:72px;background-color:unset}.shape-pill-xl.thin{border-width:1px;min-height:70px;max-height:70px;background-color:unset}.shape-pill-xl.parentBorder{border:0;min-height:68px;max-height:68px}.shape-pill-left-xl{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:36px 0 0 36px}.shape-pill-left-xl.simple{border-width:0px;min-height:72px;max-height:72px;background-color:unset}.shape-pill-left-xl.thin{border-width:1px;min-height:70px;max-height:70px;background-color:unset}.shape-pill-left-xl.parentBorder{border:0;min-height:68px;max-height:68px}.shape-pill-right-xl{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:0 36px 36px 0}.shape-pill-right-xl.simple{border-width:0px;min-height:72px;max-height:72px;background-color:unset}.shape-pill-right-xl.thin{border-width:1px;min-height:70px;max-height:70px;background-color:unset}.shape-pill-right-xl.parentBorder{border:0;min-height:68px;max-height:68px}.shape-pill-md{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:36px}.shape-pill-md.simple{border-width:0px;min-height:48px;max-height:48px;background-color:unset}.shape-pill-md.thin{border-width:1px;min-height:46px;max-height:46px;background-color:unset}.shape-pill-md.parentBorder{border:0;min-height:44px;max-height:44px}.shape-pill-left-md{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:36px 0 0 36px}.shape-pill-left-md.simple{border-width:0px;min-height:48px;max-height:48px;background-color:unset}.shape-pill-left-md.thin{border-width:1px;min-height:46px;max-height:46px;background-color:unset}.shape-pill-left-md.parentBorder{border:0;min-height:44px;max-height:44px}.shape-pill-right-md{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:0 36px 36px 0}.shape-pill-right-md.simple{border-width:0px;min-height:48px;max-height:48px;background-color:unset}.shape-pill-right-md.thin{border-width:1px;min-height:46px;max-height:46px;background-color:unset}.shape-pill-right-md.parentBorder{border:0;min-height:44px;max-height:44px}`;
243
+
244
+ var tokensCss$5 = i$5`:host(:not([ondark])){--ds-auro-select-border-color: var(--ds-basic-color-border-bold, #585e67);--ds-auro-select-background-color: var(--ds-basic-color-surface-default, #ffffff);--ds-auro-select-label-text-color: var(--ds-basic-color-texticon-muted, #676767);--ds-auro-select-placeholder-text-color: var(--ds-basic-color-texticon-default, #2a2a2a);--ds-auro-select-text-color: var(--ds-basic-color-texticon-default, #2a2a2a);--ds-auro-select-error-icon-color: var(--ds-basic-color-status-error, #e31f26);--ds-auro-select-outline-color: transparent}:host([ondark]){--ds-auro-select-border-color: var(--ds-basic-color-border-inverse, #ffffff);--ds-auro-select-background-color: var(--ds-advanced-color-shared-background-inverse, rgba(255, 255, 255, 0.15));--ds-auro-select-label-text-color: var(--ds-basic-color-texticon-inverse, #ffffff);--ds-auro-select-placeholder-text-color: var(--ds-basic-color-texticon-inverse, #ffffff);--ds-auro-select-text-color: var(--ds-basic-color-texticon-inverse, #ffffff);--ds-auro-select-error-icon-color: var(--ds-advanced-color-state-error-inverse, #f9a4a8);--ds-auro-select-outline-color: transparent}`;
245
+
150
246
  class DateFormatter {
151
247
 
152
248
  constructor() {
@@ -203,9 +299,10 @@ class DateFormatter {
203
299
  /**
204
300
  * Convert a date object to string format.
205
301
  * @param {Object} date - Date to convert to string.
206
- * @returns {Object} Returns the date as a string.
302
+ * @param {String} locale - Optional locale to use for the date string. Defaults to user's locale.
303
+ * @returns {String} Returns the date as a string.
207
304
  */
208
- this.getDateAsString = (date) => date.toLocaleDateString(undefined, {
305
+ this.getDateAsString = (date, locale = undefined) => date.toLocaleDateString(locale, {
209
306
  year: "numeric",
210
307
  month: "2-digit",
211
308
  day: "2-digit",
@@ -397,7 +494,7 @@ class AuroDateUtilities extends AuroDateUtilitiesBase {
397
494
  const dateObj = new Date(this.getFourDigitYear(dateParts.year), dateParts.month - 1, dateParts.day || 1);
398
495
 
399
496
  // Get the date string of the date object we created from the string date
400
- const actualDateStr = dateFormatter.getDateAsString(dateObj);
497
+ const actualDateStr = dateFormatter.getDateAsString(dateObj, "en-US");
401
498
 
402
499
  // Guard Clause: Generated date matches date string input
403
500
  if (expectedDateStr !== actualDateStr) {
@@ -562,7 +659,7 @@ const {
562
659
 
563
660
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
564
661
 
565
- let AuroLibraryRuntimeUtils$3 = class AuroLibraryRuntimeUtils {
662
+ let AuroLibraryRuntimeUtils$4 = class AuroLibraryRuntimeUtils {
566
663
 
567
664
  /* eslint-disable jsdoc/require-param */
568
665
 
@@ -632,7 +729,7 @@ let AuroLibraryRuntimeUtils$3 = class AuroLibraryRuntimeUtils {
632
729
  class AuroFormValidation {
633
730
 
634
731
  constructor() {
635
- this.runtimeUtils = new AuroLibraryRuntimeUtils$3();
732
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$4();
636
733
  }
637
734
 
638
735
  /**
@@ -1044,7 +1141,7 @@ let AuroDependencyVersioning$2 = class AuroDependencyVersioning {
1044
1141
 
1045
1142
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
1046
1143
 
1047
- let AuroLibraryRuntimeUtils$1 = class AuroLibraryRuntimeUtils {
1144
+ let AuroLibraryRuntimeUtils$2$1 = class AuroLibraryRuntimeUtils {
1048
1145
 
1049
1146
  /* eslint-disable jsdoc/require-param */
1050
1147
 
@@ -1627,10 +1724,11 @@ const flip$1 = function (options) {
1627
1724
  const nextIndex = (((_middlewareData$flip2 = middlewareData.flip) == null ? void 0 : _middlewareData$flip2.index) || 0) + 1;
1628
1725
  const nextPlacement = placements[nextIndex];
1629
1726
  if (nextPlacement) {
1630
- var _overflowsData$;
1631
1727
  const ignoreCrossAxisOverflow = checkCrossAxis === 'alignment' ? initialSideAxis !== getSideAxis(nextPlacement) : false;
1632
- const hasInitialMainAxisOverflow = ((_overflowsData$ = overflowsData[0]) == null ? void 0 : _overflowsData$.overflows[0]) > 0;
1633
- if (!ignoreCrossAxisOverflow || hasInitialMainAxisOverflow) {
1728
+ if (!ignoreCrossAxisOverflow ||
1729
+ // We leave the current main axis only if every placement on that axis
1730
+ // overflows the main axis.
1731
+ overflowsData.every(d => d.overflows[0] > 0 && getSideAxis(d.placement) === initialSideAxis)) {
1634
1732
  // Try next placement and re-run the lifecycle.
1635
1733
  return {
1636
1734
  data: {
@@ -2651,8 +2749,28 @@ class AuroFloatingUI {
2651
2749
  if (!AuroFloatingUI.isMousePressHandlerInitialized && window && window.addEventListener) {
2652
2750
  AuroFloatingUI.isMousePressHandlerInitialized = true;
2653
2751
 
2752
+ // Track timeout for isMousePressed reset to avoid race conditions
2753
+ if (!AuroFloatingUI._mousePressedTimeout) {
2754
+ AuroFloatingUI._mousePressedTimeout = null;
2755
+ }
2654
2756
  const mouseEventGlobalHandler = (event) => {
2655
- AuroFloatingUI.isMousePressed = event.type === 'mousedown';
2757
+ const isPressed = event.type === 'mousedown';
2758
+ if (isPressed) {
2759
+ // Clear any pending timeout to prevent race condition
2760
+ if (AuroFloatingUI._mousePressedTimeout !== null) {
2761
+ clearTimeout(AuroFloatingUI._mousePressedTimeout);
2762
+ AuroFloatingUI._mousePressedTimeout = null;
2763
+ }
2764
+ if (!AuroFloatingUI.isMousePressed) {
2765
+ AuroFloatingUI.isMousePressed = true;
2766
+ }
2767
+ } else if (AuroFloatingUI.isMousePressed && !isPressed) {
2768
+ // Schedule reset and track timeout ID
2769
+ AuroFloatingUI._mousePressedTimeout = setTimeout(() => {
2770
+ AuroFloatingUI.isMousePressed = false;
2771
+ AuroFloatingUI._mousePressedTimeout = null;
2772
+ }, 0);
2773
+ }
2656
2774
  };
2657
2775
 
2658
2776
  window.addEventListener('mousedown', mouseEventGlobalHandler);
@@ -2779,6 +2897,7 @@ class AuroFloatingUI {
2779
2897
 
2780
2898
  // Compute the position of the bib
2781
2899
  computePosition(this.element.trigger, this.element.bib, {
2900
+ strategy: this.element.floaterConfig?.strategy || 'fixed',
2782
2901
  placement: this.element.floaterConfig?.placement,
2783
2902
  middleware: middleware || []
2784
2903
  }).then(({ x, y }) => { // eslint-disable-line id-length
@@ -2913,8 +3032,9 @@ class AuroFloatingUI {
2913
3032
  if (this.element.contains(activeElement) || this.element.bib?.contains(activeElement)) {
2914
3033
  return;
2915
3034
  }
2916
- // if fullscreen bib is still open and the focus is missing, do not close
2917
- if (this.element.bib.hasAttribute('isfullscreen') && activeElement === document.body) {
3035
+
3036
+ // if fullscreen bib is in fullscreen mode, do not close
3037
+ if (this.element.bib.hasAttribute('isfullscreen')) {
2918
3038
  return;
2919
3039
  }
2920
3040
 
@@ -3215,8 +3335,6 @@ class AuroFloatingUI {
3215
3335
  this.element.hoverToggle = this.element.floaterConfig.hoverToggle;
3216
3336
  }
3217
3337
 
3218
- document.body.append(this.element.bib);
3219
-
3220
3338
  this.regenerateBibId();
3221
3339
  this.handleTriggerTabIndex();
3222
3340
 
@@ -3447,6 +3565,76 @@ var tokensCss$2$1 = i$5`:host{--ds-auro-icon-color:var(--ds-basic-color-texticon
3447
3565
 
3448
3566
  var colorCss$3$1 = i$5`:host{color:var(--ds-auro-icon-color)}:host([customColor]){color:inherit}:host(:not([onDark])[variant=accent1]){--ds-auro-icon-color:var(--ds-basic-color-texticon-accent1, #265688)}:host(:not([onDark])[variant=disabled]){--ds-auro-icon-color:var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host(:not([onDark])[variant=muted]){--ds-auro-icon-color:var(--ds-basic-color-texticon-muted, #676767)}:host(:not([onDark])[variant=statusDefault]){--ds-auro-icon-color:var(--ds-basic-color-status-default, #afb9c6)}:host(:not([onDark])[variant=statusInfo]){--ds-auro-icon-color:var(--ds-basic-color-status-info, #01426a)}:host(:not([onDark])[variant=statusSuccess]){--ds-auro-icon-color:var(--ds-basic-color-status-success, #447a1f)}:host(:not([onDark])[variant=statusWarning]){--ds-auro-icon-color:var(--ds-basic-color-status-warning, #fac200)}:host(:not([onDark])[variant=statusError]){--ds-auro-icon-color:var(--ds-basic-color-status-error, #e31f26)}:host(:not([onDark])[variant=statusInfoSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-info-subtle, #ebf3f9)}:host(:not([onDark])[variant=statusSuccessSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-success-subtle, #d6eac7)}:host(:not([onDark])[variant=statusWarningSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-warning-subtle, #fff0b2)}:host(:not([onDark])[variant=statusErrorSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-error-subtle, #fbc6c6)}:host(:not([onDark])[variant=fareBasicEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-basiceconomy, #97eaf8)}:host(:not([onDark])[variant=fareBusiness]){--ds-auro-icon-color:var(--ds-basic-color-fare-business, #01426a)}:host(:not([onDark])[variant=fareEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-economy, #0074ca)}:host(:not([onDark])[variant=fareFirst]){--ds-auro-icon-color:var(--ds-basic-color-fare-first, #00274a)}:host(:not([onDark])[variant=farePremiumEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-premiumeconomy, #005154)}:host(:not([onDark])[variant=tierOneWorldEmerald]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-emerald, #139142)}:host(:not([onDark])[variant=tierOneWorldSapphire]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-sapphire, #015daa)}:host(:not([onDark])[variant=tierOneWorldRuby]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-ruby, #a41d4a)}:host([onDark]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse, #ffffff)}:host([onDark][variant=disabled]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse-disabled, #7e8894)}:host([onDark][variant=muted]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse-muted, #ccd2db)}:host([onDark][variant=statusError]){--ds-auro-icon-color:var(--ds-advanced-color-state-error-inverse, #f9a4a8)}`;
3449
3567
 
3568
+ // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
3569
+ // See LICENSE in the project root for license information.
3570
+
3571
+ // ---------------------------------------------------------------------
3572
+
3573
+ /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
3574
+
3575
+ let AuroLibraryRuntimeUtils$1$2 = class AuroLibraryRuntimeUtils {
3576
+
3577
+ /* eslint-disable jsdoc/require-param */
3578
+
3579
+ /**
3580
+ * This will register a new custom element with the browser.
3581
+ * @param {String} name - The name of the custom element.
3582
+ * @param {Object} componentClass - The class to register as a custom element.
3583
+ * @returns {void}
3584
+ */
3585
+ registerComponent(name, componentClass) {
3586
+ if (!customElements.get(name)) {
3587
+ customElements.define(name, class extends componentClass {});
3588
+ }
3589
+ }
3590
+
3591
+ /**
3592
+ * Finds and returns the closest HTML Element based on a selector.
3593
+ * @returns {void}
3594
+ */
3595
+ closestElement(
3596
+ selector, // selector like in .closest()
3597
+ base = this, // extra functionality to skip a parent
3598
+ __Closest = (el, found = el && el.closest(selector)) =>
3599
+ !el || el === document || el === window
3600
+ ? null // standard .closest() returns null for non-found selectors also
3601
+ : found
3602
+ ? found // found a selector INside this element
3603
+ : __Closest(el.getRootNode().host) // recursion!! break out to parent DOM
3604
+ ) {
3605
+ return __Closest(base);
3606
+ }
3607
+ /* eslint-enable jsdoc/require-param */
3608
+
3609
+ /**
3610
+ * If the element passed is registered with a different tag name than what is passed in, the tag name is added as an attribute to the element.
3611
+ * @param {Object} elem - The element to check.
3612
+ * @param {String} tagName - The name of the Auro component to check for or add as an attribute.
3613
+ * @returns {void}
3614
+ */
3615
+ handleComponentTagRename(elem, tagName) {
3616
+ const tag = tagName.toLowerCase();
3617
+ const elemTag = elem.tagName.toLowerCase();
3618
+
3619
+ if (elemTag !== tag) {
3620
+ elem.setAttribute(tag, true);
3621
+ }
3622
+ }
3623
+
3624
+ /**
3625
+ * Validates if an element is a specific Auro component.
3626
+ * @param {Object} elem - The element to validate.
3627
+ * @param {String} tagName - The name of the Auro component to check against.
3628
+ * @returns {Boolean} - Returns true if the element is the specified Auro component.
3629
+ */
3630
+ elementMatch(elem, tagName) {
3631
+ const tag = tagName.toLowerCase();
3632
+ const elemTag = elem.tagName.toLowerCase();
3633
+
3634
+ return elemTag === tag || elem.hasAttribute(tag);
3635
+ }
3636
+ };
3637
+
3450
3638
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
3451
3639
  // See LICENSE in the project root for license information.
3452
3640
 
@@ -3466,7 +3654,7 @@ let AuroIcon$2 = class AuroIcon extends BaseIcon$2 {
3466
3654
  */
3467
3655
  privateDefaults() {
3468
3656
  this.uri = 'https://cdn.jsdelivr.net/npm/@alaskaairux/icons@latest/dist';
3469
- this.runtimeUtils = new AuroLibraryRuntimeUtils$1();
3657
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$1$2();
3470
3658
  }
3471
3659
 
3472
3660
  // function to define props used within the scope of this component
@@ -3548,7 +3736,7 @@ let AuroIcon$2 = class AuroIcon extends BaseIcon$2 {
3548
3736
  *
3549
3737
  */
3550
3738
  static register(name = "auro-icon") {
3551
- AuroLibraryRuntimeUtils$1.prototype.registerComponent(name, AuroIcon);
3739
+ AuroLibraryRuntimeUtils$1$2.prototype.registerComponent(name, AuroIcon);
3552
3740
  }
3553
3741
 
3554
3742
  connectedCallback() {
@@ -3616,7 +3804,7 @@ let AuroIcon$2 = class AuroIcon extends BaseIcon$2 {
3616
3804
 
3617
3805
  var iconVersion$2 = '6.1.2';
3618
3806
 
3619
- var styleCss$1$2 = i$5`:host{position:absolute;z-index:var(--depth-tooltip, 400);display:none}.container{display:inline-block;overflow:auto;box-sizing:border-box;margin:var(--ds-size-50, 0.25rem) 0}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}`;
3807
+ var styleCss$1$2 = i$5`:host{position:fixed;z-index:var(--depth-tooltip, 400);display:none;isolation:isolate}.container{display:inline-block;overflow:auto;box-sizing:border-box;margin:var(--ds-size-50, 0.25rem) 0}:host([isfullscreen]){position:fixed;top:0;left:0}:host([isfullscreen]) .container{width:100dvw;max-width:none;height:100dvh;max-height:none;border-radius:unset;margin-top:0;box-shadow:unset;overscroll-behavior:contain}:host([data-show]){display:flex}:host([common]:not([isfullscreen])) .container,:host([rounded]:not([isfullscreen])) .container{border-radius:var(--ds-border-radius, 0.375rem)}:host([common][isfullscreen]) .container,:host([rounded][isfullscreen]) .container{border-radius:unset;box-shadow:unset}`;
3620
3808
 
3621
3809
  var colorCss$2$1 = i$5`.container{background-color:var(--ds-auro-dropdownbib-container-color);box-shadow:var(--ds-auro-dropdownbib-boxshadow-color);color:var(--ds-auro-dropdownbib-text-color)}`;
3622
3810
 
@@ -3626,7 +3814,6 @@ var tokensCss$1$1 = i$5`:host(:not([ondark])){--ds-auro-dropdown-label-text-colo
3626
3814
  // See LICENSE in the project root for license information.
3627
3815
 
3628
3816
 
3629
-
3630
3817
  const DESIGN_TOKEN_BREAKPOINT_PREFIX = '--ds-grid-breakpoint-';
3631
3818
  const DESIGN_TOKEN_BREAKPOINT_OPTIONS = [
3632
3819
  'xl',
@@ -3651,7 +3838,7 @@ class AuroDropdownBib extends i$2 {
3651
3838
  */
3652
3839
  this._mobileBreakpointValue = undefined;
3653
3840
 
3654
- AuroLibraryRuntimeUtils$1.prototype.handleComponentTagRename(this, 'auro-dropdownbib');
3841
+ AuroLibraryRuntimeUtils$2$1.prototype.handleComponentTagRename(this, 'auro-dropdownbib');
3655
3842
  }
3656
3843
 
3657
3844
  static get styles() {
@@ -3696,6 +3883,13 @@ class AuroDropdownBib extends i$2 {
3696
3883
  type: Boolean,
3697
3884
  reflect: true
3698
3885
  },
3886
+
3887
+ /**
3888
+ * A reference to the associated bib template element.
3889
+ */
3890
+ bibTemplate: {
3891
+ type: Object
3892
+ }
3699
3893
  };
3700
3894
  }
3701
3895
 
@@ -3728,9 +3922,50 @@ class AuroDropdownBib extends i$2 {
3728
3922
  }
3729
3923
  }
3730
3924
  });
3925
+
3926
+ if (this.bibTemplate) {
3927
+ // If the bib template is found, set the fullscreen attribute
3928
+ if (this.isFullscreen) {
3929
+ this.bibTemplate.setAttribute('isFullscreen', 'true');
3930
+ } else {
3931
+ this.bibTemplate.removeAttribute('isFullscreen');
3932
+ }
3933
+ }
3731
3934
  }
3732
3935
  }
3733
3936
 
3937
+ connectedCallback() {
3938
+ super.connectedCallback();
3939
+
3940
+ // Listen for the auro-bibtemplate-connected event to set the fullscreen attribute
3941
+ this.addEventListener('auro-bibtemplate-connected', (event) => {
3942
+ const bibTemplate = event.detail.element;
3943
+ this.bibTemplate = bibTemplate;
3944
+
3945
+ if (bibTemplate) {
3946
+ // If the bib template is found, set the fullscreen attribute
3947
+ if (this.isFullscreen) {
3948
+ bibTemplate.setAttribute('isFullscreen', 'true');
3949
+ } else {
3950
+ bibTemplate.removeAttribute('isFullscreen');
3951
+ }
3952
+ }
3953
+ });
3954
+ }
3955
+
3956
+ firstUpdated(changedProperties) {
3957
+ super.firstUpdated(changedProperties);
3958
+
3959
+ // Dispatch a custom event when the component is connected
3960
+ this.dispatchEvent(new CustomEvent('auro-dropdownbib-connected', {
3961
+ bubbles: true,
3962
+ composed: true,
3963
+ detail: {
3964
+ element: this
3965
+ }
3966
+ }));
3967
+ }
3968
+
3734
3969
  // function that renders the HTML and CSS into the scope of the component
3735
3970
  render() {
3736
3971
  return u`
@@ -3743,7 +3978,7 @@ class AuroDropdownBib extends i$2 {
3743
3978
 
3744
3979
  var dropdownVersion$1 = '3.0.0';
3745
3980
 
3746
- var shapeSizeCss = i$5`.shape-classic-xl,.shape-classic-lg,.shape-classic-md,.shape-classic-sm,.shape-classic-xs{min-height:58px;max-height:58px;border-style:solid;border-width:1px;border-radius:var(--ds-border-radius, 0.375rem)}.shape-classic-xl.simple,.shape-classic-lg.simple,.shape-classic-md.simple,.shape-classic-sm.simple,.shape-classic-xs.simple{border-width:0px;min-height:60px;max-height:60px;background-color:unset}.shape-classic-xl.thin,.shape-classic-lg.thin,.shape-classic-md.thin,.shape-classic-sm.thin,.shape-classic-xs.thin{border-width:1px;min-height:58px;max-height:58px;background-color:unset}.shape-snowflake-xl,.shape-snowflake-lg,.shape-snowflake-md,.shape-snowflake-sm,.shape-snowflake-xs{min-height:56px;max-height:56px;border-style:solid;border-width:2px;border-color:transparent;border-radius:30px}.shape-snowflake-xl.simple,.shape-snowflake-lg.simple,.shape-snowflake-md.simple,.shape-snowflake-sm.simple,.shape-snowflake-xs.simple{border-width:0px;min-height:60px;max-height:60px;background-color:unset}.shape-snowflake-xl.thin,.shape-snowflake-lg.thin,.shape-snowflake-md.thin,.shape-snowflake-sm.thin,.shape-snowflake-xs.thin{border-width:1px;min-height:58px;max-height:58px;background-color:unset}.shape-box-xl{min-height:68px;max-height:68px;border-style:solid;border-width:2px;border-color:transparent}.shape-box-xl.simple{border-width:0px;min-height:72px;max-height:72px;background-color:unset}.shape-box-xl.thin{border-width:1px;min-height:70px;max-height:70px;background-color:unset}.shape-rounded-lg{min-height:56px;max-height:56px;border-style:solid;border-width:2px;border-color:transparent;border-radius:6px}.shape-rounded-lg.simple{border-width:0px;min-height:56px;max-height:56px;background-color:unset}.shape-rounded-lg.thin{border-width:1px;min-height:54px;max-height:54px;background-color:unset}.shape-pill-xl{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:36px}.shape-pill-xl.simple{border-width:0px;min-height:72px;max-height:72px;background-color:unset}.shape-pill-xl.thin{border-width:1px;min-height:70px;max-height:70px;background-color:unset}.shape-pill-left-xl{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:36px 0 0 36px}.shape-pill-left-xl.simple{border-width:0px;min-height:72px;max-height:72px;background-color:unset}.shape-pill-left-xl.thin{border-width:1px;min-height:70px;max-height:70px;background-color:unset}.shape-pill-right-xl{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:0 36px 36px 0}.shape-pill-right-xl.simple{border-width:0px;min-height:72px;max-height:72px;background-color:unset}.shape-pill-right-xl.thin{border-width:1px;min-height:70px;max-height:70px;background-color:unset}.shape-pill-md{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:36px}.shape-pill-md.simple{border-width:0px;min-height:48px;max-height:48px;background-color:unset}.shape-pill-md.thin{border-width:1px;min-height:46px;max-height:46px;background-color:unset}.shape-pill-left-md{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:36px 0 0 36px}.shape-pill-left-md.simple{border-width:0px;min-height:48px;max-height:48px;background-color:unset}.shape-pill-left-md.thin{border-width:1px;min-height:46px;max-height:46px;background-color:unset}.shape-pill-right-md{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:0 36px 36px 0}.shape-pill-right-md.simple{border-width:0px;min-height:48px;max-height:48px;background-color:unset}.shape-pill-right-md.thin{border-width:1px;min-height:46px;max-height:46px;background-color:unset}`;
3981
+ var shapeSizeCss = i$5`.wrapper{overflow:hidden}.shape-classic-xl,.shape-classic-lg,.shape-classic-md,.shape-classic-sm,.shape-classic-xs{min-height:58px;max-height:58px;border-style:solid;border-width:1px;border-radius:var(--ds-border-radius, 0.375rem)}.shape-classic-xl.simple,.shape-classic-lg.simple,.shape-classic-md.simple,.shape-classic-sm.simple,.shape-classic-xs.simple{border-width:0px;min-height:60px;max-height:60px;background-color:unset}.shape-classic-xl.thin,.shape-classic-lg.thin,.shape-classic-md.thin,.shape-classic-sm.thin,.shape-classic-xs.thin{border-width:1px;min-height:58px;max-height:58px;background-color:unset}.shape-classic-xl.parentBorder,.shape-classic-lg.parentBorder,.shape-classic-md.parentBorder,.shape-classic-sm.parentBorder,.shape-classic-xs.parentBorder{border:0;min-height:56px;max-height:56px}.shape-snowflake-xl,.shape-snowflake-lg,.shape-snowflake-md,.shape-snowflake-sm,.shape-snowflake-xs{min-height:56px;max-height:56px;border-style:solid;border-width:2px;border-color:transparent;border-radius:30px}.shape-snowflake-xl.simple,.shape-snowflake-lg.simple,.shape-snowflake-md.simple,.shape-snowflake-sm.simple,.shape-snowflake-xs.simple{border-width:0px;min-height:60px;max-height:60px;background-color:unset}.shape-snowflake-xl.thin,.shape-snowflake-lg.thin,.shape-snowflake-md.thin,.shape-snowflake-sm.thin,.shape-snowflake-xs.thin{border-width:1px;min-height:58px;max-height:58px;background-color:unset}.shape-snowflake-xl.parentBorder,.shape-snowflake-lg.parentBorder,.shape-snowflake-md.parentBorder,.shape-snowflake-sm.parentBorder,.shape-snowflake-xs.parentBorder{border:0;min-height:56px;max-height:56px}.shape-box-xl{min-height:68px;max-height:68px;border-style:solid;border-width:2px;border-color:transparent}.shape-box-xl.simple{border-width:0px;min-height:72px;max-height:72px;background-color:unset}.shape-box-xl.thin{border-width:1px;min-height:70px;max-height:70px;background-color:unset}.shape-box-xl.parentBorder{border:0;min-height:68px;max-height:68px}.shape-rounded-lg{min-height:56px;max-height:56px;border-style:solid;border-width:2px;border-color:transparent;border-radius:6px}.shape-rounded-lg.simple{border-width:0px;min-height:56px;max-height:56px;background-color:unset}.shape-rounded-lg.thin{border-width:1px;min-height:54px;max-height:54px;background-color:unset}.shape-rounded-lg.parentBorder{border:0;min-height:52px;max-height:52px}.shape-pill-xl{min-height:68px;max-height:68px;border-style:solid;border-width:2px;border-color:transparent;border-radius:36px}.shape-pill-xl.simple{border-width:0px;min-height:72px;max-height:72px;background-color:unset}.shape-pill-xl.thin{border-width:1px;min-height:70px;max-height:70px;background-color:unset}.shape-pill-xl.parentBorder{border:0;min-height:68px;max-height:68px}.shape-pill-left-xl{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:36px 0 0 36px}.shape-pill-left-xl.simple{border-width:0px;min-height:72px;max-height:72px;background-color:unset}.shape-pill-left-xl.thin{border-width:1px;min-height:70px;max-height:70px;background-color:unset}.shape-pill-left-xl.parentBorder{border:0;min-height:68px;max-height:68px}.shape-pill-right-xl{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:0 36px 36px 0}.shape-pill-right-xl.simple{border-width:0px;min-height:72px;max-height:72px;background-color:unset}.shape-pill-right-xl.thin{border-width:1px;min-height:70px;max-height:70px;background-color:unset}.shape-pill-right-xl.parentBorder{border:0;min-height:68px;max-height:68px}.shape-pill-md{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:36px}.shape-pill-md.simple{border-width:0px;min-height:48px;max-height:48px;background-color:unset}.shape-pill-md.thin{border-width:1px;min-height:46px;max-height:46px;background-color:unset}.shape-pill-md.parentBorder{border:0;min-height:44px;max-height:44px}.shape-pill-left-md{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:36px 0 0 36px}.shape-pill-left-md.simple{border-width:0px;min-height:48px;max-height:48px;background-color:unset}.shape-pill-left-md.thin{border-width:1px;min-height:46px;max-height:46px;background-color:unset}.shape-pill-left-md.parentBorder{border:0;min-height:44px;max-height:44px}.shape-pill-right-md{min-height:72px;max-height:72px;border-style:solid;border-width:2px;border-color:transparent;border-radius:0 36px 36px 0}.shape-pill-right-md.simple{border-width:0px;min-height:48px;max-height:48px;background-color:unset}.shape-pill-right-md.thin{border-width:1px;min-height:46px;max-height:46px;background-color:unset}.shape-pill-right-md.parentBorder{border:0;min-height:44px;max-height:44px}`;
3747
3982
 
3748
3983
  var colorCss$1$2 = i$5`:host .wrapper{border-color:var(--ds-auro-dropdown-trigger-border-color);background-color:var(--ds-auro-dropdown-trigger-background-color);color:var(--ds-auro-dropdown-trigger-text-color)}:host(:not([ondark])) .wrapper:focus,:host(:not([ondark])) .wrapper:focus-within{--ds-auro-dropdown-trigger-border-color: var(--ds-basic-color-border-brand, #00274a)}:host([ondark]) .wrapper:focus,:host([ondark]) .wrapper:focus-within{--ds-auro-dropdown-trigger-border-color: var(--ds-basic-color-border-inverse, #ffffff)}:host([error]:not([ondark])){--ds-auro-dropdown-trigger-border-color: var(--ds-basic-color-status-error, #e31f26)}:host([error][ondark]){--ds-auro-dropdown-trigger-border-color: var(--ds-advanced-color-state-error-inverse, #f9a4a8)}.helpText{color:var(--ds-auro-dropdown-helptext-text-color)}`;
3749
3984
 
@@ -3751,15 +3986,15 @@ var classicColorCss = i$5`:host([layout*=classic]) .label{color:var(--ds-auro-dr
3751
3986
 
3752
3987
  var classicLayoutCss = i$5`:host([layout*=classic]){position:relative;max-width:100%}:host([layout*=classic]) #bibSizer{position:absolute;z-index:-1;opacity:0;pointer-events:none}:host([layout*=classic]) .label{font-size:var(--ds-text-body-size-xs, 0.75rem);line-height:var(--ds-text-body-size-default, 1rem);transition:font-size .3s cubic-bezier(0.215, 0.61, 0.355, 1);white-space:normal}:host([layout*=classic]) .label[hasTrigger=false]{font-size:var(--ds-text-body-size-default, 1rem)}:host([layout*=classic]) .trigger{display:flex;flex-direction:row}@media(hover: hover){:host([layout*=classic]) .trigger:hover{cursor:pointer}}:host([layout*=classic]) .triggerContentWrapper{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}:host([layout*=classic]) #showStateIcon{display:flex;overflow:hidden;height:100%;align-items:center;margin-left:var(--ds-size-100, 0.5rem)}:host([layout*=classic]) #showStateIcon [auro-icon]{height:var(--ds-size-300, 1.5rem);line-height:var(--ds-size-300, 1.5rem)}:host([layout*=classic]) #showStateIcon[data-expanded=true] [auro-icon]{transform:rotate(-180deg)}:host([layout*=classic][fluid]){display:block}:host([layout*=classic][matchwidth]) #bibSizer{width:100%}:host([layout*=classic][disabled]){pointer-events:none}:host([layout*=classic][inset]) .trigger{padding:var(--ds-size-150, 0.75rem) var(--ds-size-200, 1rem)}:host([layout*=classic][common]) .trigger,:host([layout*=classic][inset][bordered]) .trigger{padding:var(--ds-size-200, 1rem) var(--ds-size-150, 0.75rem)}:host([layout*=classic][inset][bordered][labeled]) .trigger{padding:var(--ds-size-100, 0.5rem) var(--ds-size-150, 0.75rem)}:host([layout*=classic][common]) .trigger,:host([layout*=classic][rounded]) .trigger{border-radius:var(--ds-border-radius, 0.375rem)}`;
3753
3988
 
3754
- var styleEmphasizedCss = i$5`:host{display:block}.wrapper{display:flex;flex-direction:column}.trigger{flex:1;display:flex;align-items:center;justify-content:center;outline:none}.triggerContentWrapper{flex:1;display:flex;align-items:center;justify-content:center;width:100%}.triggerContent{overflow:hidden;flex:1;display:flex;align-items:center;justify-content:center;text-overflow:ellipsis;white-space:nowrap;width:100%}:host([layout*=emphasized][shape*=pill]:not([layout*=right])) .leftIndent{margin-left:24px;width:calc(100% - 24px)}:host([layout*=emphasized][shape*=pill]:not([layout*=left])) .rightIndent{margin-right:24px;width:calc(100% - 24px)}:host([layout*=emphasized][shape*=pill]:not([layout*=left]):not([layout*=right])) .rightIndent{margin-right:24px;width:calc(100% - 48px)}`;
3989
+ var styleEmphasizedCss = i$5`:host{display:block}.layout-emphasized .chevron,.layout-emphasized-left .chevron,.layout-emphasized-right .chevron{margin-right:var(--ds-size-300, 1.5rem)}.wrapper{display:flex;flex-direction:row}.trigger{flex:1;display:flex;align-items:center;justify-content:center;outline:none}.triggerContentWrapper{flex:1;display:flex;align-items:center;justify-content:center;width:100%}.triggerContent{overflow:hidden;flex:1;display:flex;align-items:center;justify-content:center;text-overflow:ellipsis;white-space:nowrap;width:100%}:host([layout*=emphasized][shape*=pill]:not([layout*=right])) .leftIndent{margin-left:var(--ds-size-300, 1.5rem);width:calc(100% - var(--ds-size-300, 1.5rem))}:host([layout*=emphasized][shape*=pill]:not([layout*=left])) .rightIndent{margin-right:var(--ds-size-300, 1.5rem);width:calc(100% - var(--ds-size-300, 1.5rem))}:host([layout*=emphasized][shape*=pill]:not([layout*=left]):not([layout*=right])) .rightIndent{margin-right:var(--ds-size-300, 1.5rem);width:calc(100% - var(--ds-size-600, 3rem))}`;
3755
3990
 
3756
- var styleSnowflakeCss = i$5`:host{display:block}.wrapper{display:flex;flex-direction:column}.trigger{flex:1;display:flex;align-items:center;justify-content:center;outline:none}.triggerContentWrapper{flex:1;display:flex;align-items:center;justify-content:center;width:100%}.triggerContent{overflow:hidden;flex:1;display:flex;align-items:center;justify-content:center;text-overflow:ellipsis;white-space:nowrap;width:100%}:host([layout*=snowflake]) .leftIndent{margin-left:24px;width:calc(100% - 48px)}:host([layout*=snowflake]) .rightIndent{margin-right:24px;width:calc(100% - 48px)}`;
3991
+ var styleSnowflakeCss = i$5`:host{display:block}.wrapper{display:flex;flex-direction:wrapper}.trigger{flex:1;display:flex;align-items:center;justify-content:center;outline:none}.triggerContentWrapper{flex:1;display:flex;align-items:center;justify-content:center;width:100%}.triggerContent{overflow:hidden;flex:1;display:flex;align-items:center;justify-content:center;text-overflow:ellipsis;white-space:nowrap;width:100%}:host([layout*=snowflake]) .leftIndent{margin-left:var(--ds-size-300, 1.5rem);width:calc(100% - var(--ds-size-600, 3rem))}:host([layout*=snowflake]) .rightIndent{margin-right:var(--ds-size-300, 1.5rem);width:calc(100% - var(--ds-size-600, 3rem))}.layout-snowflake .chevron,.layout-snowflake-left .chevron,.layout-snowflake-right .chevron{margin-right:var(--ds-size-300, 1.5rem)}`;
3757
3992
 
3758
- var colorCss$4 = i$5`: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-advanced-color-state-error-inverse, #f9a4a8)}.helptext-wrapper{color:var(--ds-auro-helptext-color)}`;
3993
+ var colorCss$5 = i$5`: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-advanced-color-state-error-inverse, #f9a4a8)}.helptext-wrapper{color:var(--ds-auro-helptext-color)}`;
3759
3994
 
3760
- var styleCss$5 = i$5`.helptext-wrapper{display:none;font-size:var(--ds-basic-text-body-xs-font-size, 12px);font-weight:var(--ds-basic-text-body-xs-font-weight, 450);letter-spacing:var(--ds-basic-text-body-xs-letter-spacing, 0);line-height:var(--ds-basic-text-body-xs-line-height, 16px)}:host([large]) .helptext-wrapper{font-size:var(--ds-basic-text-body-default-font-size, 16px);font-weight:var(--ds-basic-text-body-default-font-weight, 450);letter-spacing:var(--ds-basic-text-body-default-letter-spacing, 0);line-height:var(--ds-basic-text-body-default-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}`;
3995
+ var styleCss$6 = i$5`.helptext-wrapper{display:none;font-size:var(--ds-basic-text-body-xs-font-size, 12px);font-weight:var(--ds-basic-text-body-xs-font-weight, 450);letter-spacing:var(--ds-basic-text-body-xs-letter-spacing, 0);line-height:var(--ds-basic-text-body-xs-line-height, 16px)}:host([large]) .helptext-wrapper{font-size:var(--ds-basic-text-body-default-font-size, 16px);font-weight:var(--ds-basic-text-body-default-font-weight, 450);letter-spacing:var(--ds-basic-text-body-default-letter-spacing, 0);line-height:var(--ds-basic-text-body-default-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}`;
3761
3996
 
3762
- var tokensCss$3 = i$5`:host{--ds-auro-helptext-color: var(--ds-basic-color-texticon-muted, #676767)}`;
3997
+ var tokensCss$4 = i$5`:host{--ds-auro-helptext-color: var(--ds-basic-color-texticon-muted, #676767)}`;
3763
3998
 
3764
3999
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
3765
4000
  // See LICENSE in the project root for license information.
@@ -3768,7 +4003,7 @@ var tokensCss$3 = i$5`:host{--ds-auro-helptext-color: var(--ds-basic-color-texti
3768
4003
 
3769
4004
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
3770
4005
 
3771
- let AuroLibraryRuntimeUtils$2 = class AuroLibraryRuntimeUtils {
4006
+ let AuroLibraryRuntimeUtils$3 = class AuroLibraryRuntimeUtils {
3772
4007
 
3773
4008
  /* eslint-disable jsdoc/require-param */
3774
4009
 
@@ -3840,7 +4075,7 @@ let AuroLibraryRuntimeUtils$2 = class AuroLibraryRuntimeUtils {
3840
4075
  *
3841
4076
  * @attr { Boolean } large - If declared, make font-size to 1rem(16px).
3842
4077
  */
3843
- class AuroHelpText extends i$2 {
4078
+ let AuroHelpText$1 = class AuroHelpText extends i$2 {
3844
4079
 
3845
4080
  constructor() {
3846
4081
  super();
@@ -3849,14 +4084,14 @@ class AuroHelpText extends i$2 {
3849
4084
  this.onDark = false;
3850
4085
  this.hasTextContent = false;
3851
4086
 
3852
- AuroLibraryRuntimeUtils$2.prototype.handleComponentTagRename(this, 'auro-helptext');
4087
+ AuroLibraryRuntimeUtils$3.prototype.handleComponentTagRename(this, 'auro-helptext');
3853
4088
  }
3854
4089
 
3855
4090
  static get styles() {
3856
4091
  return [
3857
- colorCss$4,
3858
- styleCss$5,
3859
- tokensCss$3
4092
+ colorCss$5,
4093
+ styleCss$6,
4094
+ tokensCss$4
3860
4095
  ];
3861
4096
  }
3862
4097
 
@@ -3905,7 +4140,7 @@ class AuroHelpText extends i$2 {
3905
4140
  *
3906
4141
  */
3907
4142
  static register(name = "auro-helptext") {
3908
- AuroLibraryRuntimeUtils$2.prototype.registerComponent(name, AuroHelpText);
4143
+ AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroHelpText);
3909
4144
  }
3910
4145
 
3911
4146
  updated() {
@@ -3959,9 +4194,9 @@ class AuroHelpText extends i$2 {
3959
4194
  </div>
3960
4195
  `;
3961
4196
  }
3962
- }
4197
+ };
3963
4198
 
3964
- var helpTextVersion = '1.0.0';
4199
+ var helpTextVersion$1 = '1.0.0';
3965
4200
 
3966
4201
  let AuroElement$2 = class AuroElement extends i$2 {
3967
4202
  static get properties() {
@@ -4087,6 +4322,7 @@ class AuroDropdown extends AuroElement$2 {
4087
4322
  this.layout = 'classic';
4088
4323
  this.shape = 'rounded';
4089
4324
  this.size = 'xl';
4325
+ this.parentBorder = false;
4090
4326
 
4091
4327
  this.privateDefaults();
4092
4328
  }
@@ -4102,7 +4338,8 @@ class AuroDropdown extends AuroElement$2 {
4102
4338
  'trigger': true,
4103
4339
  'wrapper': true,
4104
4340
  'hasFocus': this.hasFocus,
4105
- 'simple': this.simple
4341
+ 'simple': this.simple,
4342
+ 'parentBorder': this.parentBorder
4106
4343
  };
4107
4344
  }
4108
4345
 
@@ -4154,7 +4391,7 @@ class AuroDropdown extends AuroElement$2 {
4154
4391
  /**
4155
4392
  * @private
4156
4393
  */
4157
- this.runtimeUtils = new AuroLibraryRuntimeUtils$1();
4394
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$2$1();
4158
4395
 
4159
4396
  /**
4160
4397
  * @private
@@ -4179,7 +4416,7 @@ class AuroDropdown extends AuroElement$2 {
4179
4416
  /**
4180
4417
  * @private
4181
4418
  */
4182
- this.helpTextTag = versioning.generateTag('auro-formkit-dropdown-helptext', helpTextVersion, AuroHelpText);
4419
+ this.helpTextTag = versioning.generateTag('auro-formkit-dropdown-helptext', helpTextVersion$1, AuroHelpText$1);
4183
4420
 
4184
4421
  /**
4185
4422
  * @private
@@ -4369,6 +4606,15 @@ class AuroDropdown extends AuroElement$2 {
4369
4606
  reflect: true
4370
4607
  },
4371
4608
 
4609
+ /**
4610
+ * Defines if the trigger should size based on the parent element providing the border UI.
4611
+ * @private
4612
+ */
4613
+ parentBorder: {
4614
+ type: Boolean,
4615
+ reflect: true
4616
+ },
4617
+
4372
4618
  /**
4373
4619
  * If declared, the popover and trigger will be set to the same width.
4374
4620
  */
@@ -4496,7 +4742,7 @@ class AuroDropdown extends AuroElement$2 {
4496
4742
  *
4497
4743
  */
4498
4744
  static register(name = "auro-dropdown") {
4499
- AuroLibraryRuntimeUtils$1.prototype.registerComponent(name, AuroDropdown);
4745
+ AuroLibraryRuntimeUtils$2$1.prototype.registerComponent(name, AuroDropdown);
4500
4746
  }
4501
4747
 
4502
4748
  /**
@@ -4832,8 +5078,7 @@ class AuroDropdown extends AuroElement$2 {
4832
5078
  * @param {Event} event - The event object representing the slot change.
4833
5079
  * @fires Function#onSlotChange - Optional callback invoked when the slot content changes.
4834
5080
  */
4835
- handleDefaultSlot(event) {
4836
- [...event.target.assignedNodes()].forEach((node) => this.bibContent.append(node));
5081
+ handleDefaultSlot() {
4837
5082
 
4838
5083
  if (this.onSlotChange) {
4839
5084
  this.onSlotChange();
@@ -4895,6 +5140,7 @@ class AuroDropdown extends AuroElement$2 {
4895
5140
  ${this.chevron || this.common ? u`
4896
5141
  <div
4897
5142
  id="showStateIcon"
5143
+ class="chevron"
4898
5144
  part="chevron">
4899
5145
  <${this.iconTag}
4900
5146
  category="interface"
@@ -4909,9 +5155,6 @@ class AuroDropdown extends AuroElement$2 {
4909
5155
  <div class="${e(helpTextClasses)}">
4910
5156
  <slot name="helpText"></slot>
4911
5157
  </div>
4912
- <div class="slotContent">
4913
- <slot @slotchange="${this.handleDefaultSlot}"></slot>
4914
- </div>
4915
5158
  <div id="bibSizer" part="size"></div>
4916
5159
  <${this.dropdownBibTag}
4917
5160
  id="bib"
@@ -4920,6 +5163,9 @@ class AuroDropdown extends AuroElement$2 {
4920
5163
  ?common="${this.common}"
4921
5164
  ?rounded="${this.common || this.rounded}"
4922
5165
  ?inset="${this.common || this.inset}">
5166
+ <div class="slotContent">
5167
+ <slot @slotchange="${this.handleDefaultSlot}"></slot>
5168
+ </div>
4923
5169
  </${this.dropdownBibTag}>
4924
5170
  </div>
4925
5171
  `;
@@ -4931,108 +5177,104 @@ class AuroDropdown extends AuroElement$2 {
4931
5177
  * @returns {html} - Returns HTML for the classic layout.
4932
5178
  */
4933
5179
  renderLayoutClassic() {
4934
- const helpTextClasses = {
4935
- 'helpText': true,
4936
- 'leftIndent': false,
4937
- 'rightIndent': false
4938
- };
4939
-
4940
- return u`
4941
- ${this.renderBasicHtml(helpTextClasses)}
4942
- `;
4943
- // return html`
4944
- // <div>
4945
- // <div
4946
- // id="trigger"
4947
- // class="trigger"
4948
- // part="trigger"
4949
- // tabindex="${this.tabIndex}"
4950
- // ?showBorder="${this.showTriggerBorders}"
4951
- // role="${ifDefined(this.triggerContentFocusable ? undefined : this.a11yRole)}"
4952
- // aria-expanded="${ifDefined(this.triggerContentFocusable ? undefined : this.isPopoverVisible)}"
4953
- // aria-controls="${ifDefined(this.triggerContentFocusable ? undefined : this.dropdownId)}"
4954
- // aria-labelledby="${ifDefined(this.triggerContentFocusable ? undefined : 'triggerLabel')}"
4955
- // >
4956
- // <div class="triggerContentWrapper">
4957
- // <label class="label" id="triggerLabel" hasTrigger=${this.hasTriggerContent}>
4958
- // <slot name="label" @slotchange="${this.handleLabelSlotChange}"></slot>
4959
- // </label>
4960
- // <div class="triggerContent">
4961
- // <slot
4962
- // name="trigger"
4963
- // @slotchange="${this.handleTriggerContentSlotChange}"></slot>
4964
- // </div>
4965
- // </div>
4966
- // ${this.chevron || this.common ? html`
4967
- // <div
4968
- // id="showStateIcon"
4969
- // part="chevron">
4970
- // <${this.iconTag}
4971
- // category="interface"
4972
- // name="chevron-down"
4973
- // ?onDark="${this.onDark}"
4974
- // variant="${this.disabled ? 'disabled' : 'muted'}">
4975
- // >
4976
- // </${this.iconTag}>
4977
- // </div>
4978
- // ` : undefined }
4979
- // </div>
4980
- // <div class="slotContent">
4981
- // <slot @slotchange="${this.handleDefaultSlot}"></slot>
4982
- // </div>
4983
- // <div id="bibSizer" part="size"></div>
4984
- // <${this.dropdownBibTag}
4985
- // id="bib"
4986
- // ?data-show="${this.isPopoverVisible}"
4987
- // ?isfullscreen="${this.isBibFullscreen}"
4988
- // ?common="${this.common}"
4989
- // ?rounded="${this.common || this.rounded}"
4990
- // ?inset="${this.common || this.inset}"
4991
- // >
4992
- // </${this.dropdownBibTag}>
4993
- // </div>
4994
- // `;
4995
- }
4996
-
4997
- /**
4998
- * Returns HTML for the snowflake layout. Does not support type="*".
4999
- * @private
5000
- * @returns {html} - Returns HTML for the snowflake layout.
5001
- */
5002
- renderLayoutSnowflake() {
5003
- const helpTextClasses = {
5004
- 'helpText': true,
5005
- 'leftIndent': true,
5006
- 'rightIndent': true
5007
- };
5008
-
5009
- return u`
5010
- ${this.renderBasicHtml(helpTextClasses)}
5011
- `;
5012
- }
5013
-
5014
- /**
5015
- * Returns HTML for the emphasized layout. Does not support type="*".
5016
- * @private
5017
- * @returns {html} - Returns HTML for the emphasized layout.
5018
- */
5019
- renderLayoutEmphasized() {
5020
- const helpTextClasses = {
5021
- 'helpText': true,
5022
- 'leftIndent': this.shape.toLowerCase().includes('pill') && !this.shape.toLowerCase().includes('right'),
5023
- 'rightIndent': this.shape.toLowerCase().includes('pill') && !this.shape.toLowerCase().includes('left')
5024
- };
5025
5180
 
5026
5181
  return u`
5027
- ${this.renderBasicHtml(helpTextClasses)}
5028
- `;
5029
- }
5030
-
5031
- /**
5032
- * Logic to determine the layout of the component.
5033
- * @private
5034
- * @param {string} [ForcedLayout] - Used to force a specific layout, pass in the layout name to use.
5035
- * @returns {HTMLCollection} - Returns the HTML for the layout.
5182
+ <div>
5183
+ <div
5184
+ id="trigger"
5185
+ class="trigger"
5186
+ part="trigger"
5187
+ tabindex="${this.tabIndex}"
5188
+ ?showBorder="${this.showTriggerBorders}"
5189
+ role="${o(this.triggerContentFocusable ? undefined : this.a11yRole)}"
5190
+ aria-expanded="${o(this.triggerContentFocusable ? undefined : this.isPopoverVisible)}"
5191
+ aria-controls="${o(this.triggerContentFocusable ? undefined : this.dropdownId)}"
5192
+ aria-labelledby="${o(this.triggerContentFocusable ? undefined : 'triggerLabel')}"
5193
+ >
5194
+ <div class="triggerContentWrapper">
5195
+ <label class="label" id="triggerLabel" hasTrigger=${this.hasTriggerContent}>
5196
+ <slot name="label" @slotchange="${this.handleLabelSlotChange}"></slot>
5197
+ </label>
5198
+ <div class="triggerContent">
5199
+ <slot
5200
+ name="trigger"
5201
+ @slotchange="${this.handleTriggerContentSlotChange}"></slot>
5202
+ </div>
5203
+ </div>
5204
+ ${this.chevron || this.common ? u`
5205
+ <div
5206
+ id="showStateIcon"
5207
+ part="chevron">
5208
+ <${this.iconTag}
5209
+ category="interface"
5210
+ name="chevron-down"
5211
+ ?onDark="${this.onDark}"
5212
+ variant="${this.disabled ? 'disabled' : 'muted'}">
5213
+ >
5214
+ </${this.iconTag}>
5215
+ </div>
5216
+ ` : undefined }
5217
+ </div>
5218
+ <${this.helpTextTag} part="helpText" ?onDark=${this.onDark} ?error="${this.error}">
5219
+ <slot name="helpText"></slot>
5220
+ </${this.helpTextTag}>
5221
+
5222
+ <div id="bibSizer" part="size"></div>
5223
+ <${this.dropdownBibTag}
5224
+ id="bib"
5225
+ ?data-show="${this.isPopoverVisible}"
5226
+ ?isfullscreen="${this.isBibFullscreen}"
5227
+ ?common="${this.common}"
5228
+ ?rounded="${this.common || this.rounded}"
5229
+ ?inset="${this.common || this.inset}"
5230
+ >
5231
+ <div class="slotContent">
5232
+ <slot @slotchange="${this.handleDefaultSlot}"></slot>
5233
+ </div>
5234
+ </${this.dropdownBibTag}>
5235
+ </div>
5236
+ `;
5237
+ }
5238
+
5239
+ /**
5240
+ * Returns HTML for the snowflake layout. Does not support type="*".
5241
+ * @private
5242
+ * @returns {html} - Returns HTML for the snowflake layout.
5243
+ */
5244
+ renderLayoutSnowflake() {
5245
+ const helpTextClasses = {
5246
+ 'helpText': true,
5247
+ 'leftIndent': true,
5248
+ 'rightIndent': true
5249
+ };
5250
+
5251
+ return u`
5252
+ ${this.renderBasicHtml(helpTextClasses)}
5253
+ `;
5254
+ }
5255
+
5256
+ /**
5257
+ * Returns HTML for the emphasized layout. Does not support type="*".
5258
+ * @private
5259
+ * @returns {html} - Returns HTML for the emphasized layout.
5260
+ */
5261
+ renderLayoutEmphasized() {
5262
+ const helpTextClasses = {
5263
+ 'helpText': true,
5264
+ 'leftIndent': this.shape.toLowerCase().includes('pill') && !this.shape.toLowerCase().includes('right'),
5265
+ 'rightIndent': this.shape.toLowerCase().includes('pill') && !this.shape.toLowerCase().includes('left')
5266
+ };
5267
+
5268
+ return u`
5269
+ ${this.renderBasicHtml(helpTextClasses)}
5270
+ `;
5271
+ }
5272
+
5273
+ /**
5274
+ * Logic to determine the layout of the component.
5275
+ * @private
5276
+ * @param {string} [ForcedLayout] - Used to force a specific layout, pass in the layout name to use.
5277
+ * @returns {HTMLCollection} - Returns the HTML for the layout.
5036
5278
  */
5037
5279
  renderLayout(ForcedLayout) {
5038
5280
  const layout = ForcedLayout || this.layout;
@@ -5071,7 +5313,7 @@ var tokenCss = i$5`:host{--ds-auro-dropdownbib-header-boxshadow-color: var(--ds-
5071
5313
 
5072
5314
  /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
5073
5315
 
5074
- class AuroLibraryRuntimeUtils {
5316
+ let AuroLibraryRuntimeUtils$1$1 = class AuroLibraryRuntimeUtils {
5075
5317
 
5076
5318
  /* eslint-disable jsdoc/require-param */
5077
5319
 
@@ -5132,7 +5374,7 @@ class AuroLibraryRuntimeUtils {
5132
5374
 
5133
5375
  return elemTag === tag || elem.hasAttribute(tag);
5134
5376
  }
5135
- }
5377
+ };
5136
5378
 
5137
5379
  // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
5138
5380
  // See LICENSE in the project root for license information.
@@ -5324,9 +5566,79 @@ let BaseIcon$1 = class BaseIcon extends AuroElement$1 {
5324
5566
  }
5325
5567
  };
5326
5568
 
5327
- var tokensCss$2 = i$5`:host{--ds-auro-icon-color:var(--ds-basic-color-texticon-default, #2a2a2a);--ds-auro-alaska-color:#02426D;--ds-auro-icon-size:var(--ds-size-300, 1.5rem)}`;
5569
+ var tokensCss$3 = i$5`:host{--ds-auro-icon-color:var(--ds-basic-color-texticon-default, #2a2a2a);--ds-auro-alaska-color:#02426D;--ds-auro-icon-size:var(--ds-size-300, 1.5rem)}`;
5570
+
5571
+ var colorCss$4 = i$5`:host{color:var(--ds-auro-icon-color)}:host([customColor]){color:inherit}:host(:not([onDark])[variant=accent1]){--ds-auro-icon-color:var(--ds-basic-color-texticon-accent1, #265688)}:host(:not([onDark])[variant=disabled]){--ds-auro-icon-color:var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host(:not([onDark])[variant=muted]){--ds-auro-icon-color:var(--ds-basic-color-texticon-muted, #676767)}:host(:not([onDark])[variant=statusDefault]){--ds-auro-icon-color:var(--ds-basic-color-status-default, #afb9c6)}:host(:not([onDark])[variant=statusInfo]){--ds-auro-icon-color:var(--ds-basic-color-status-info, #01426a)}:host(:not([onDark])[variant=statusSuccess]){--ds-auro-icon-color:var(--ds-basic-color-status-success, #447a1f)}:host(:not([onDark])[variant=statusWarning]){--ds-auro-icon-color:var(--ds-basic-color-status-warning, #fac200)}:host(:not([onDark])[variant=statusError]){--ds-auro-icon-color:var(--ds-basic-color-status-error, #e31f26)}:host(:not([onDark])[variant=statusInfoSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-info-subtle, #ebf3f9)}:host(:not([onDark])[variant=statusSuccessSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-success-subtle, #d6eac7)}:host(:not([onDark])[variant=statusWarningSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-warning-subtle, #fff0b2)}:host(:not([onDark])[variant=statusErrorSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-error-subtle, #fbc6c6)}:host(:not([onDark])[variant=fareBasicEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-basiceconomy, #97eaf8)}:host(:not([onDark])[variant=fareBusiness]){--ds-auro-icon-color:var(--ds-basic-color-fare-business, #01426a)}:host(:not([onDark])[variant=fareEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-economy, #0074ca)}:host(:not([onDark])[variant=fareFirst]){--ds-auro-icon-color:var(--ds-basic-color-fare-first, #00274a)}:host(:not([onDark])[variant=farePremiumEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-premiumeconomy, #005154)}:host(:not([onDark])[variant=tierOneWorldEmerald]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-emerald, #139142)}:host(:not([onDark])[variant=tierOneWorldSapphire]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-sapphire, #015daa)}:host(:not([onDark])[variant=tierOneWorldRuby]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-ruby, #a41d4a)}:host([onDark]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse, #ffffff)}:host([onDark][variant=disabled]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse-disabled, #7e8894)}:host([onDark][variant=muted]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse-muted, #ccd2db)}:host([onDark][variant=statusError]){--ds-auro-icon-color:var(--ds-advanced-color-state-error-inverse, #f9a4a8)}`;
5572
+
5573
+ // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
5574
+ // See LICENSE in the project root for license information.
5575
+
5576
+ // ---------------------------------------------------------------------
5577
+
5578
+ /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
5328
5579
 
5329
- var colorCss$3 = i$5`:host{color:var(--ds-auro-icon-color)}:host([customColor]){color:inherit}:host(:not([onDark])[variant=accent1]){--ds-auro-icon-color:var(--ds-basic-color-texticon-accent1, #265688)}:host(:not([onDark])[variant=disabled]){--ds-auro-icon-color:var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host(:not([onDark])[variant=muted]){--ds-auro-icon-color:var(--ds-basic-color-texticon-muted, #676767)}:host(:not([onDark])[variant=statusDefault]){--ds-auro-icon-color:var(--ds-basic-color-status-default, #afb9c6)}:host(:not([onDark])[variant=statusInfo]){--ds-auro-icon-color:var(--ds-basic-color-status-info, #01426a)}:host(:not([onDark])[variant=statusSuccess]){--ds-auro-icon-color:var(--ds-basic-color-status-success, #447a1f)}:host(:not([onDark])[variant=statusWarning]){--ds-auro-icon-color:var(--ds-basic-color-status-warning, #fac200)}:host(:not([onDark])[variant=statusError]){--ds-auro-icon-color:var(--ds-basic-color-status-error, #e31f26)}:host(:not([onDark])[variant=statusInfoSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-info-subtle, #ebf3f9)}:host(:not([onDark])[variant=statusSuccessSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-success-subtle, #d6eac7)}:host(:not([onDark])[variant=statusWarningSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-warning-subtle, #fff0b2)}:host(:not([onDark])[variant=statusErrorSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-error-subtle, #fbc6c6)}:host(:not([onDark])[variant=fareBasicEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-basiceconomy, #97eaf8)}:host(:not([onDark])[variant=fareBusiness]){--ds-auro-icon-color:var(--ds-basic-color-fare-business, #01426a)}:host(:not([onDark])[variant=fareEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-economy, #0074ca)}:host(:not([onDark])[variant=fareFirst]){--ds-auro-icon-color:var(--ds-basic-color-fare-first, #00274a)}:host(:not([onDark])[variant=farePremiumEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-premiumeconomy, #005154)}:host(:not([onDark])[variant=tierOneWorldEmerald]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-emerald, #139142)}:host(:not([onDark])[variant=tierOneWorldSapphire]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-sapphire, #015daa)}:host(:not([onDark])[variant=tierOneWorldRuby]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-ruby, #a41d4a)}:host([onDark]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse, #ffffff)}:host([onDark][variant=disabled]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse-disabled, #7e8894)}:host([onDark][variant=muted]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse-muted, #ccd2db)}:host([onDark][variant=statusError]){--ds-auro-icon-color:var(--ds-advanced-color-state-error-inverse, #f9a4a8)}`;
5580
+ let AuroLibraryRuntimeUtils$2 = class AuroLibraryRuntimeUtils {
5581
+
5582
+ /* eslint-disable jsdoc/require-param */
5583
+
5584
+ /**
5585
+ * This will register a new custom element with the browser.
5586
+ * @param {String} name - The name of the custom element.
5587
+ * @param {Object} componentClass - The class to register as a custom element.
5588
+ * @returns {void}
5589
+ */
5590
+ registerComponent(name, componentClass) {
5591
+ if (!customElements.get(name)) {
5592
+ customElements.define(name, class extends componentClass {});
5593
+ }
5594
+ }
5595
+
5596
+ /**
5597
+ * Finds and returns the closest HTML Element based on a selector.
5598
+ * @returns {void}
5599
+ */
5600
+ closestElement(
5601
+ selector, // selector like in .closest()
5602
+ base = this, // extra functionality to skip a parent
5603
+ __Closest = (el, found = el && el.closest(selector)) =>
5604
+ !el || el === document || el === window
5605
+ ? null // standard .closest() returns null for non-found selectors also
5606
+ : found
5607
+ ? found // found a selector INside this element
5608
+ : __Closest(el.getRootNode().host) // recursion!! break out to parent DOM
5609
+ ) {
5610
+ return __Closest(base);
5611
+ }
5612
+ /* eslint-enable jsdoc/require-param */
5613
+
5614
+ /**
5615
+ * If the element passed is registered with a different tag name than what is passed in, the tag name is added as an attribute to the element.
5616
+ * @param {Object} elem - The element to check.
5617
+ * @param {String} tagName - The name of the Auro component to check for or add as an attribute.
5618
+ * @returns {void}
5619
+ */
5620
+ handleComponentTagRename(elem, tagName) {
5621
+ const tag = tagName.toLowerCase();
5622
+ const elemTag = elem.tagName.toLowerCase();
5623
+
5624
+ if (elemTag !== tag) {
5625
+ elem.setAttribute(tag, true);
5626
+ }
5627
+ }
5628
+
5629
+ /**
5630
+ * Validates if an element is a specific Auro component.
5631
+ * @param {Object} elem - The element to validate.
5632
+ * @param {String} tagName - The name of the Auro component to check against.
5633
+ * @returns {Boolean} - Returns true if the element is the specified Auro component.
5634
+ */
5635
+ elementMatch(elem, tagName) {
5636
+ const tag = tagName.toLowerCase();
5637
+ const elemTag = elem.tagName.toLowerCase();
5638
+
5639
+ return elemTag === tag || elem.hasAttribute(tag);
5640
+ }
5641
+ };
5330
5642
 
5331
5643
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
5332
5644
  // See LICENSE in the project root for license information.
@@ -5347,7 +5659,7 @@ let AuroIcon$1 = class AuroIcon extends BaseIcon$1 {
5347
5659
  */
5348
5660
  privateDefaults() {
5349
5661
  this.uri = 'https://cdn.jsdelivr.net/npm/@alaskaairux/icons@latest/dist';
5350
- this.runtimeUtils = new AuroLibraryRuntimeUtils();
5662
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$2();
5351
5663
  }
5352
5664
 
5353
5665
  // function to define props used within the scope of this component
@@ -5414,9 +5726,9 @@ let AuroIcon$1 = class AuroIcon extends BaseIcon$1 {
5414
5726
  static get styles() {
5415
5727
  return [
5416
5728
  super.styles,
5417
- i$5`${tokensCss$2}`,
5729
+ i$5`${tokensCss$3}`,
5418
5730
  i$5`${styleCss$1$1}`,
5419
- i$5`${colorCss$3}`
5731
+ i$5`${colorCss$4}`
5420
5732
  ];
5421
5733
  }
5422
5734
 
@@ -5429,7 +5741,7 @@ let AuroIcon$1 = class AuroIcon extends BaseIcon$1 {
5429
5741
  *
5430
5742
  */
5431
5743
  static register(name = "auro-icon") {
5432
- AuroLibraryRuntimeUtils.prototype.registerComponent(name, AuroIcon);
5744
+ AuroLibraryRuntimeUtils$2.prototype.registerComponent(name, AuroIcon);
5433
5745
  }
5434
5746
 
5435
5747
  connectedCallback() {
@@ -5497,7 +5809,7 @@ let AuroIcon$1 = class AuroIcon extends BaseIcon$1 {
5497
5809
 
5498
5810
  var iconVersion$1 = '8.0.3';
5499
5811
 
5500
- var styleCss$4 = i$5`.heading{margin:1.75rem 0;letter-spacing:var(--ds-text-heading-default-spacing, -0.2px);font-weight:var(--ds-text-heading-default-weight, 500)}.heading--display{margin-top:0;font-size:var(--ds-text-heading-display-size-breakpoint-sm, 2.75rem);font-weight:var(--ds-text-heading-display-weight, 100);line-height:var(--ds-text-heading-display-height-breakpoint-sm, 3.375rem)}@media screen and (min-width: 768px){.heading--display{font-size:var(--ds-text-heading-display-size-breakpoint-md, 3rem);line-height:var(--ds-text-heading-display-height-breakpoint-md, 3.75rem)}}@media screen and (min-width: 1024px){.heading--display{font-size:var(--ds-text-heading-display-size-breakpoint-lg, 3.5rem);line-height:var(--ds-text-heading-display-height-breakpoint-lg, 4.25rem)}}.heading--800{font-size:var(--ds-text-heading-800-size-breakpoint-sm, 2rem);font-weight:var(--ds-text-heading-800-weight, 500);line-height:var(--ds-text-heading-800-height-breakpoint-sm, 2.375rem)}@media screen and (min-width: 768px){.heading--800{font-size:var(--ds-text-heading-800-size-breakpoint-md, 2.25rem);line-height:var(--ds-text-heading-800-height-breakpoint-md, 2.625rem)}}@media screen and (min-width: 1024px){.heading--800{font-size:var(--ds-text-heading-800-size-breakpoint-lg, 2.5rem);line-height:var(--ds-text-heading-800-height-breakpoint-lg, 3rem)}}.heading--700{font-size:var(--ds-text-heading-700-size-breakpoint-sm, 1.75rem);font-weight:var(--ds-text-heading-700-weight, 500);line-height:var(--ds-text-heading-700-height-breakpoint-sm, 2.125rem)}@media screen and (min-width: 768px){.heading--700{font-size:var(--ds-text-heading-700-size-breakpoint-md, 2rem);line-height:var(--ds-text-heading-700-height-breakpoint-md, 2.375rem)}}@media screen and (min-width: 1024px){.heading--700{font-size:var(--ds-text-heading-700-size-breakpoint-lg, 2.25rem);line-height:var(--ds-text-heading-700-height-breakpoint-lg, 2.75rem)}}.heading--600{margin:1rem 0;font-size:var(--ds-text-heading-600-size-breakpoint-sm, 1.625rem);font-weight:var(--ds-text-heading-600-weight, 300);line-height:var(--ds-text-heading-600-height-breakpoint-sm, 1.875rem)}@media screen and (min-width: 768px){.heading--600{font-size:var(--ds-text-heading-600-size-breakpoint-md, 1.75rem);line-height:var(--ds-text-heading-600-height-breakpoint-md, 2.125rem)}}@media screen and (min-width: 1024px){.heading--600{font-size:var(--ds-text-heading-600-size-breakpoint-lg, 1.75rem);line-height:var(--ds-text-heading-600-height-breakpoint-lg, 2.25rem)}}.heading--500{margin:1rem 0;font-size:var(--ds-text-heading-500-size-breakpoint-sm, 1.375rem);font-weight:var(--ds-text-heading-500-weight, 300);line-height:var(--ds-text-heading-500-height-breakpoint-sm, 1.625rem)}@media screen and (min-width: 768px){.heading--500{font-size:var(--ds-text-heading-500-size-breakpoint-md, 1.5rem);line-height:var(--ds-text-heading-500-height-breakpoint-md, 1.875rem)}}@media screen and (min-width: 1024px){.heading--500{font-size:var(--ds-text-heading-500-size-breakpoint-lg, 1.5rem);line-height:var(--ds-text-heading-500-height-breakpoint-lg, 2rem)}}.heading--400{margin:.75rem 0;font-size:var(--ds-text-heading-400-size, 1.25rem);font-weight:var(--ds-text-heading-400-weight, 300);line-height:var(--ds-text-heading-400-height, 1.625rem)}.heading--300{margin:.75rem 0;font-size:var(--ds-text-heading-300-size, 1.125rem);font-weight:var(--ds-text-heading-300-weight, 300);line-height:var(--ds-text-heading-300-height, 1.625rem)}:host([no-margin-block]) .heading{margin-block:0}.util_stackMarginnone--bottom{margin-bottom:0}.util_stackMargin25--bottom{margin-bottom:var(--ds-size-25, 0.125rem)}.util_stackMargin50--bottom{margin-bottom:var(--ds-size-50, 0.25rem)}.util_stackMargin100--bottom{margin-bottom:var(--ds-size-100, 0.5rem)}.util_stackMargin150--bottom{margin-bottom:var(--ds-size-150, 0.75rem)}.util_stackMargin200--bottom{margin-bottom:var(--ds-size-200, 1rem)}.util_stackMargin300--bottom{margin-bottom:var(--ds-size-300, 1.5rem)}.util_stackMargin400--bottom{margin-bottom:var(--ds-size-400, 2rem)}.util_stackMargin600--bottom{margin-bottom:var(--ds-size-600, 3rem)}.util_stackMargin800--bottom{margin-bottom:var(--ds-size-800, 4rem)}.util_stackMarginnone--top{margin-top:0}.util_stackMargin25--top{margin-top:var(--ds-size-25, 0.125rem)}.util_stackMargin50--top{margin-top:var(--ds-size-50, 0.25rem)}.util_stackMargin100--top{margin-top:var(--ds-size-100, 0.5rem)}.util_stackMargin150--top{margin-top:var(--ds-size-150, 0.75rem)}.util_stackMargin200--top{margin-top:var(--ds-size-200, 1rem)}.util_stackMargin300--top{margin-top:var(--ds-size-300, 1.5rem)}.util_stackMargin400--top{margin-top:var(--ds-size-400, 2rem)}.util_stackMargin600--top{margin-top:var(--ds-size-600, 3rem)}.util_stackMargin800--top{margin-top:var(--ds-size-800, 4rem)}`;
5812
+ var styleCss$5 = i$5`.heading{margin:1.75rem 0;letter-spacing:var(--ds-text-heading-default-spacing, -0.2px);font-weight:var(--ds-text-heading-default-weight, 500)}.heading--display{margin-top:0;font-size:var(--ds-text-heading-display-size-breakpoint-sm, 2.75rem);font-weight:var(--ds-text-heading-display-weight, 100);line-height:var(--ds-text-heading-display-height-breakpoint-sm, 3.375rem)}@media screen and (min-width: 768px){.heading--display{font-size:var(--ds-text-heading-display-size-breakpoint-md, 3rem);line-height:var(--ds-text-heading-display-height-breakpoint-md, 3.75rem)}}@media screen and (min-width: 1024px){.heading--display{font-size:var(--ds-text-heading-display-size-breakpoint-lg, 3.5rem);line-height:var(--ds-text-heading-display-height-breakpoint-lg, 4.25rem)}}.heading--800{font-size:var(--ds-text-heading-800-size-breakpoint-sm, 2rem);font-weight:var(--ds-text-heading-800-weight, 500);line-height:var(--ds-text-heading-800-height-breakpoint-sm, 2.375rem)}@media screen and (min-width: 768px){.heading--800{font-size:var(--ds-text-heading-800-size-breakpoint-md, 2.25rem);line-height:var(--ds-text-heading-800-height-breakpoint-md, 2.625rem)}}@media screen and (min-width: 1024px){.heading--800{font-size:var(--ds-text-heading-800-size-breakpoint-lg, 2.5rem);line-height:var(--ds-text-heading-800-height-breakpoint-lg, 3rem)}}.heading--700{font-size:var(--ds-text-heading-700-size-breakpoint-sm, 1.75rem);font-weight:var(--ds-text-heading-700-weight, 500);line-height:var(--ds-text-heading-700-height-breakpoint-sm, 2.125rem)}@media screen and (min-width: 768px){.heading--700{font-size:var(--ds-text-heading-700-size-breakpoint-md, 2rem);line-height:var(--ds-text-heading-700-height-breakpoint-md, 2.375rem)}}@media screen and (min-width: 1024px){.heading--700{font-size:var(--ds-text-heading-700-size-breakpoint-lg, 2.25rem);line-height:var(--ds-text-heading-700-height-breakpoint-lg, 2.75rem)}}.heading--600{margin:1rem 0;font-size:var(--ds-text-heading-600-size-breakpoint-sm, 1.625rem);font-weight:var(--ds-text-heading-600-weight, 300);line-height:var(--ds-text-heading-600-height-breakpoint-sm, 1.875rem)}@media screen and (min-width: 768px){.heading--600{font-size:var(--ds-text-heading-600-size-breakpoint-md, 1.75rem);line-height:var(--ds-text-heading-600-height-breakpoint-md, 2.125rem)}}@media screen and (min-width: 1024px){.heading--600{font-size:var(--ds-text-heading-600-size-breakpoint-lg, 1.75rem);line-height:var(--ds-text-heading-600-height-breakpoint-lg, 2.25rem)}}.heading--500{margin:1rem 0;font-size:var(--ds-text-heading-500-size-breakpoint-sm, 1.375rem);font-weight:var(--ds-text-heading-500-weight, 300);line-height:var(--ds-text-heading-500-height-breakpoint-sm, 1.625rem)}@media screen and (min-width: 768px){.heading--500{font-size:var(--ds-text-heading-500-size-breakpoint-md, 1.5rem);line-height:var(--ds-text-heading-500-height-breakpoint-md, 1.875rem)}}@media screen and (min-width: 1024px){.heading--500{font-size:var(--ds-text-heading-500-size-breakpoint-lg, 1.5rem);line-height:var(--ds-text-heading-500-height-breakpoint-lg, 2rem)}}.heading--400{margin:.75rem 0;font-size:var(--ds-text-heading-400-size, 1.25rem);font-weight:var(--ds-text-heading-400-weight, 300);line-height:var(--ds-text-heading-400-height, 1.625rem)}.heading--300{margin:.75rem 0;font-size:var(--ds-text-heading-300-size, 1.125rem);font-weight:var(--ds-text-heading-300-weight, 300);line-height:var(--ds-text-heading-300-height, 1.625rem)}:host([no-margin-block]) .heading{margin-block:0}.util_stackMarginnone--bottom{margin-bottom:0}.util_stackMargin25--bottom{margin-bottom:var(--ds-size-25, 0.125rem)}.util_stackMargin50--bottom{margin-bottom:var(--ds-size-50, 0.25rem)}.util_stackMargin100--bottom{margin-bottom:var(--ds-size-100, 0.5rem)}.util_stackMargin150--bottom{margin-bottom:var(--ds-size-150, 0.75rem)}.util_stackMargin200--bottom{margin-bottom:var(--ds-size-200, 1rem)}.util_stackMargin300--bottom{margin-bottom:var(--ds-size-300, 1.5rem)}.util_stackMargin400--bottom{margin-bottom:var(--ds-size-400, 2rem)}.util_stackMargin600--bottom{margin-bottom:var(--ds-size-600, 3rem)}.util_stackMargin800--bottom{margin-bottom:var(--ds-size-800, 4rem)}.util_stackMarginnone--top{margin-top:0}.util_stackMargin25--top{margin-top:var(--ds-size-25, 0.125rem)}.util_stackMargin50--top{margin-top:var(--ds-size-50, 0.25rem)}.util_stackMargin100--top{margin-top:var(--ds-size-100, 0.5rem)}.util_stackMargin150--top{margin-top:var(--ds-size-150, 0.75rem)}.util_stackMargin200--top{margin-top:var(--ds-size-200, 1rem)}.util_stackMargin300--top{margin-top:var(--ds-size-300, 1.5rem)}.util_stackMargin400--top{margin-top:var(--ds-size-400, 2rem)}.util_stackMargin600--top{margin-top:var(--ds-size-600, 3rem)}.util_stackMargin800--top{margin-top:var(--ds-size-800, 4rem)}`;
5501
5813
 
5502
5814
  // Copyright (c) 2020 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
5503
5815
  // See LICENSE in the project root for license information.
@@ -5526,7 +5838,7 @@ class AuroHeader extends i$2 {
5526
5838
  /**
5527
5839
  * @private
5528
5840
  */
5529
- this.runtimeUtils = new AuroLibraryRuntimeUtils();
5841
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$1$1();
5530
5842
  }
5531
5843
 
5532
5844
  // function to define props used within the scope of this component
@@ -5544,7 +5856,7 @@ class AuroHeader extends i$2 {
5544
5856
  }
5545
5857
 
5546
5858
  static get styles() {
5547
- return [styleCss$4];
5859
+ return [styleCss$5];
5548
5860
  }
5549
5861
 
5550
5862
  /**
@@ -5556,7 +5868,7 @@ class AuroHeader extends i$2 {
5556
5868
  *
5557
5869
  */
5558
5870
  static register(name = "auro-header") {
5559
- AuroLibraryRuntimeUtils.prototype.registerComponent(name, AuroHeader);
5871
+ AuroLibraryRuntimeUtils$1$1.prototype.registerComponent(name, AuroHeader);
5560
5872
  }
5561
5873
 
5562
5874
  firstUpdated() {
@@ -5652,7 +5964,7 @@ class AuroBibtemplate extends i$2 {
5652
5964
 
5653
5965
  this.large = false;
5654
5966
 
5655
- AuroLibraryRuntimeUtils.prototype.handleComponentTagRename(this, 'auro-bibtemplate');
5967
+ AuroLibraryRuntimeUtils$1$1.prototype.handleComponentTagRename(this, 'auro-bibtemplate');
5656
5968
 
5657
5969
  const versioning = new AuroDependencyVersioning();
5658
5970
  this.iconTag = versioning.generateTag('auro-formkit-bibtemplate-icon', iconVersion$1, AuroIcon$1);
@@ -5691,7 +6003,7 @@ class AuroBibtemplate extends i$2 {
5691
6003
  *
5692
6004
  */
5693
6005
  static register(name = "auro-bibtemplate") {
5694
- AuroLibraryRuntimeUtils.prototype.registerComponent(name, AuroBibtemplate);
6006
+ AuroLibraryRuntimeUtils$1$1.prototype.registerComponent(name, AuroBibtemplate);
5695
6007
  }
5696
6008
 
5697
6009
  /**
@@ -5731,6 +6043,18 @@ class AuroBibtemplate extends i$2 {
5731
6043
  this.setAttribute('exportparts', 'bibtemplate:dropdownBibTemplate');
5732
6044
  }
5733
6045
 
6046
+ firstUpdated(changedProperties) {
6047
+ super.firstUpdated(changedProperties);
6048
+
6049
+ this.dispatchEvent(new CustomEvent("auro-bibtemplate-connected", {
6050
+ bubbles: true,
6051
+ composed: true,
6052
+ detail: {
6053
+ element: this
6054
+ }
6055
+ }));
6056
+ }
6057
+
5734
6058
  // function that renders the HTML and CSS into the scope of the component
5735
6059
  render() {
5736
6060
  return u`
@@ -5763,6 +6087,214 @@ class AuroBibtemplate extends i$2 {
5763
6087
 
5764
6088
  var bibTemplateVersion = '1.0.0';
5765
6089
 
6090
+ var colorCss$3 = i$5`: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-advanced-color-state-error-inverse, #f9a4a8)}.helptext-wrapper{color:var(--ds-auro-helptext-color)}`;
6091
+
6092
+ var styleCss$4 = i$5`.helptext-wrapper{display:none;font-size:var(--ds-basic-text-body-xs-font-size, 12px);font-weight:var(--ds-basic-text-body-xs-font-weight, 450);letter-spacing:var(--ds-basic-text-body-xs-letter-spacing, 0);line-height:var(--ds-basic-text-body-xs-line-height, 16px)}:host([large]) .helptext-wrapper{font-size:var(--ds-basic-text-body-default-font-size, 16px);font-weight:var(--ds-basic-text-body-default-font-weight, 450);letter-spacing:var(--ds-basic-text-body-default-letter-spacing, 0);line-height:var(--ds-basic-text-body-default-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}`;
6093
+
6094
+ var tokensCss$2 = i$5`:host{--ds-auro-helptext-color: var(--ds-basic-color-texticon-muted, #676767)}`;
6095
+
6096
+ // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
6097
+ // See LICENSE in the project root for license information.
6098
+
6099
+ // ---------------------------------------------------------------------
6100
+
6101
+ /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
6102
+
6103
+ let AuroLibraryRuntimeUtils$1 = class AuroLibraryRuntimeUtils {
6104
+
6105
+ /* eslint-disable jsdoc/require-param */
6106
+
6107
+ /**
6108
+ * This will register a new custom element with the browser.
6109
+ * @param {String} name - The name of the custom element.
6110
+ * @param {Object} componentClass - The class to register as a custom element.
6111
+ * @returns {void}
6112
+ */
6113
+ registerComponent(name, componentClass) {
6114
+ if (!customElements.get(name)) {
6115
+ customElements.define(name, class extends componentClass {});
6116
+ }
6117
+ }
6118
+
6119
+ /**
6120
+ * Finds and returns the closest HTML Element based on a selector.
6121
+ * @returns {void}
6122
+ */
6123
+ closestElement(
6124
+ selector, // selector like in .closest()
6125
+ base = this, // extra functionality to skip a parent
6126
+ __Closest = (el, found = el && el.closest(selector)) =>
6127
+ !el || el === document || el === window
6128
+ ? null // standard .closest() returns null for non-found selectors also
6129
+ : found
6130
+ ? found // found a selector INside this element
6131
+ : __Closest(el.getRootNode().host) // recursion!! break out to parent DOM
6132
+ ) {
6133
+ return __Closest(base);
6134
+ }
6135
+ /* eslint-enable jsdoc/require-param */
6136
+
6137
+ /**
6138
+ * If the element passed is registered with a different tag name than what is passed in, the tag name is added as an attribute to the element.
6139
+ * @param {Object} elem - The element to check.
6140
+ * @param {String} tagName - The name of the Auro component to check for or add as an attribute.
6141
+ * @returns {void}
6142
+ */
6143
+ handleComponentTagRename(elem, tagName) {
6144
+ const tag = tagName.toLowerCase();
6145
+ const elemTag = elem.tagName.toLowerCase();
6146
+
6147
+ if (elemTag !== tag) {
6148
+ elem.setAttribute(tag, true);
6149
+ }
6150
+ }
6151
+
6152
+ /**
6153
+ * Validates if an element is a specific Auro component.
6154
+ * @param {Object} elem - The element to validate.
6155
+ * @param {String} tagName - The name of the Auro component to check against.
6156
+ * @returns {Boolean} - Returns true if the element is the specified Auro component.
6157
+ */
6158
+ elementMatch(elem, tagName) {
6159
+ const tag = tagName.toLowerCase();
6160
+ const elemTag = elem.tagName.toLowerCase();
6161
+
6162
+ return elemTag === tag || elem.hasAttribute(tag);
6163
+ }
6164
+ };
6165
+
6166
+ // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
6167
+ // See LICENSE in the project root for license information.
6168
+
6169
+
6170
+ /**
6171
+ * Displays help text or error messages within form elements - Internal Use Only.
6172
+ *
6173
+ * @attr { Boolean } large - If declared, make font-size to 1rem(16px).
6174
+ */
6175
+ class AuroHelpText extends i$2 {
6176
+
6177
+ constructor() {
6178
+ super();
6179
+
6180
+ this.error = false;
6181
+ this.onDark = false;
6182
+ this.hasTextContent = false;
6183
+
6184
+ AuroLibraryRuntimeUtils$1.prototype.handleComponentTagRename(this, 'auro-helptext');
6185
+ }
6186
+
6187
+ static get styles() {
6188
+ return [
6189
+ colorCss$3,
6190
+ styleCss$4,
6191
+ tokensCss$2
6192
+ ];
6193
+ }
6194
+
6195
+ // function to define props used within the scope of this component
6196
+ static get properties() {
6197
+ return {
6198
+
6199
+ /**
6200
+ * @private
6201
+ */
6202
+ slotNodes: {
6203
+ type: Boolean,
6204
+ },
6205
+
6206
+ /**
6207
+ * @private
6208
+ */
6209
+ hasTextContent: {
6210
+ type: Boolean,
6211
+ },
6212
+
6213
+ /**
6214
+ * If declared, make font color red.
6215
+ */
6216
+ error: {
6217
+ type: Boolean,
6218
+ reflect: true,
6219
+ },
6220
+
6221
+ /**
6222
+ * If declared, will apply onDark styles.
6223
+ */
6224
+ onDark: {
6225
+ type: Boolean,
6226
+ reflect: true
6227
+ }
6228
+ };
6229
+ }
6230
+
6231
+ /**
6232
+ * This will register this element with the browser.
6233
+ * @param {string} [name="auro-helptext"] - The name of element that you want to register to.
6234
+ *
6235
+ * @example
6236
+ * AuroCheckbox.register("custom-helptext") // this will register this element to <custom-helptext/>
6237
+ *
6238
+ */
6239
+ static register(name = "auro-helptext") {
6240
+ AuroLibraryRuntimeUtils$1.prototype.registerComponent(name, AuroHelpText);
6241
+ }
6242
+
6243
+ updated() {
6244
+ this.handleSlotChange();
6245
+ }
6246
+
6247
+ handleSlotChange(event) {
6248
+ if (event) {
6249
+ this.slotNodes = event.target.assignedNodes();
6250
+ }
6251
+
6252
+ this.hasTextContent = this.checkSlotsForContent(this.slotNodes);
6253
+ }
6254
+
6255
+ /**
6256
+ * Checks if any of the provided nodes or their nested slot nodes contain non-empty text content.
6257
+ *
6258
+ * @param {NodeList|Array} nodes - The list of nodes to check for content.
6259
+ * @returns {boolean} - Returns true if any node or nested slot node contains non-empty text content, otherwise false.
6260
+ * @private
6261
+ */
6262
+ checkSlotsForContent(nodes) {
6263
+ if (!nodes) {
6264
+ return false;
6265
+ }
6266
+
6267
+ return nodes.some((node) => {
6268
+ if (node.textContent.trim()) {
6269
+ return true;
6270
+ }
6271
+
6272
+ if (!node.querySelector) {
6273
+ return false;
6274
+ }
6275
+
6276
+ const nestedSlot = node.tagName === 'SLOT' ? node : node.querySelector('slot');
6277
+ if (!nestedSlot) {
6278
+ return false;
6279
+ }
6280
+
6281
+ const nestedSlotNodes = nestedSlot.assignedNodes();
6282
+ return this.checkSlotsForContent(nestedSlotNodes);
6283
+ });
6284
+ }
6285
+
6286
+ // function that renders the HTML and CSS into the scope of the component
6287
+ render() {
6288
+ return x`
6289
+ <div class="helptext-wrapper" ?visible="${this.hasTextContent}">
6290
+ <slot @slotchange=${this.handleSlotChange}></slot>
6291
+ </div>
6292
+ `;
6293
+ }
6294
+ }
6295
+
6296
+ var helpTextVersion = '1.0.0';
6297
+
5766
6298
  i$5`:focus:not(:focus-visible){outline:3px solid transparent}:host{display:inline-block;width:100%;margin:0;padding:0;vertical-align:middle}:host ::slotted(auro-menuoption),:host ::slotted([auro-menuoption]),:host auro-menuoption[loadingplaceholder]{padding-left:calc(var(--ds-size-150, 0.75rem) + 24px + var(--ds-size-100, 0.5rem))}:host ::slotted([selected]){padding-left:0}:host ::slotted(hr){box-sizing:content-box !important;height:0 !important;overflow:visible !important;margin:var(--ds-size-100, 0.5rem) 0 !important;border-width:0 !important;border-top-width:1px !important;border-top-style:solid !important}:host([nocheckmark]) ::slotted(auro-menuoption),:host([nocheckmark]) auro-menuoption[loadingplaceholder]{padding-left:var(--ds-size-200, 1rem)}:host([root]){overflow-y:auto}[loadingplaceholder].empty{opacity:0;position:absolute}[loadingplaceholder] slot[name=loadingIcon]{vertical-align:middle;line-height:1;display:inline-block}[loadingplaceholder] slot[name=loadingIcon]::slotted(*){margin-right:var(--ds-size-150, 0.75rem)}`;
5767
6299
 
5768
6300
  i$5`:host ::slotted(hr){border-top-color:var(--ds-auro-menu-divider-color)}[loadingplaceholder] slot[name=loadingIcon]{color:var(--ds-auro-menu-loader-color)}[loadingplaceholder] slot[name=loadingText]{color:var(--ds-auro-menu-loader-text-color)}`;
@@ -5824,7 +6356,7 @@ i$5`:host{--ds-auro-icon-color:var(--ds-basic-color-texticon-default, #2a2a2a);-
5824
6356
 
5825
6357
  i$5`:host{color:var(--ds-auro-icon-color)}:host([customColor]){color:inherit}:host(:not([onDark])[variant=accent1]){--ds-auro-icon-color:var(--ds-basic-color-texticon-accent1, #265688)}:host(:not([onDark])[variant=disabled]){--ds-auro-icon-color:var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host(:not([onDark])[variant=muted]){--ds-auro-icon-color:var(--ds-basic-color-texticon-muted, #676767)}:host(:not([onDark])[variant=statusDefault]){--ds-auro-icon-color:var(--ds-basic-color-status-default, #afb9c6)}:host(:not([onDark])[variant=statusInfo]){--ds-auro-icon-color:var(--ds-basic-color-status-info, #01426a)}:host(:not([onDark])[variant=statusSuccess]){--ds-auro-icon-color:var(--ds-basic-color-status-success, #447a1f)}:host(:not([onDark])[variant=statusWarning]){--ds-auro-icon-color:var(--ds-basic-color-status-warning, #fac200)}:host(:not([onDark])[variant=statusError]){--ds-auro-icon-color:var(--ds-basic-color-status-error, #e31f26)}:host(:not([onDark])[variant=statusInfoSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-info-subtle, #ebf3f9)}:host(:not([onDark])[variant=statusSuccessSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-success-subtle, #d6eac7)}:host(:not([onDark])[variant=statusWarningSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-warning-subtle, #fff0b2)}:host(:not([onDark])[variant=statusErrorSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-error-subtle, #fbc6c6)}:host(:not([onDark])[variant=fareBasicEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-basiceconomy, #97eaf8)}:host(:not([onDark])[variant=fareBusiness]){--ds-auro-icon-color:var(--ds-basic-color-fare-business, #01426a)}:host(:not([onDark])[variant=fareEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-economy, #0074ca)}:host(:not([onDark])[variant=fareFirst]){--ds-auro-icon-color:var(--ds-basic-color-fare-first, #00274a)}:host(:not([onDark])[variant=farePremiumEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-premiumeconomy, #005154)}:host(:not([onDark])[variant=tierOneWorldEmerald]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-emerald, #139142)}:host(:not([onDark])[variant=tierOneWorldSapphire]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-sapphire, #015daa)}:host(:not([onDark])[variant=tierOneWorldRuby]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-ruby, #a41d4a)}:host([onDark]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse, #ffffff)}:host([onDark][variant=disabled]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse-disabled, #7e8894)}:host([onDark][variant=muted]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse-muted, #ccd2db)}:host([onDark][variant=statusError]){--ds-auro-icon-color:var(--ds-advanced-color-state-error-inverse, #f9a4a8)}`;
5826
6358
 
5827
- var styleCss$3 = i$5`:focus:not(:focus-visible){outline:3px solid transparent}.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}[slot=trigger]{width:100%;padding:0;border:0;cursor:pointer;font-family:inherit;font-size:inherit;text-align:left}[slot=trigger] .nestingSpacer{display:none}[slot=trigger] #placeholder.hidden{position:absolute;z-index:-1;opacity:0;pointer-events:none}:host .nativeSelectWrapper{position:absolute;overflow:hidden;width:1px;height:1px;padding:0;border:0;margin:-1px;clip:rect(0, 0, 0, 0);opacity:.01}:host [auro-dropdown]{position:relative}:host [auro-dropdown]::part(trigger){max-height:var(--ds-size-300, 1.5rem)}:host [auro-dropdown]::part(popover){max-width:-webkit-fill-available;overflow-y:scroll}:host([disabled]) *{user-select:none}.outerWrapper{position:relative}auro-menuoption{padding:0;pointer-events:none}.menuWrapper{padding:var(--ds-size-50, 0.25rem) 0}:host([multiselect]) [slot=trigger]{display:flex}:host([multiselect]) auro-menuoption:not(:first-child){margin-left:var(--ds-size-100)}#slotHolder{display:none}`;
6359
+ var styleCss$3 = i$5`.util_displayInline{display:inline}.util_displayInlineBlock{display:inline-block}.util_displayBlock{display:block}.util_displayFlex{display:flex}.util_displayHidden{display:none}.util_displayHiddenVisually{position:absolute;overflow:hidden;clip:rect(1px, 1px, 1px, 1px);width:1px;height:1px;padding:0;border:0}[auro-dropdown]{--ds-auro-dropdown-trigger-border-color: var(--ds-auro-select-border-color);--ds-auro-dropdown-trigger-background-color: var(--ds-auro-select-background-color);--ds-auro-dropdown-trigger-container-color: var(--ds-auro-select-background-color)}.mainContent{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;flex:1}.valueContainer [slot=displayValue]{display:none}.accents{display:flex;flex-direction:row;justify-content:center;align-items:center}::slotted([slot=typeIcon]){margin-right:8px}.displayValue{display:block}.displayValue:not(.force){display:none}.displayValue:not(.force).hasContent:is(.withValue):not(.hasFocus){display:block}.triggerContent{display:flex;align-items:center;justify-content:center;width:100%;padding:0 8px 0 24px}:host(:is([validity]:not([validity=valid]))) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-basic-color-status-error, #e31f26);--ds-auro-dropdown-helptext-text-color: var(--ds-basic-color-texticon-default, #2a2a2a)}:host([ondark]:is([validity]:not([validity=valid]))) [auro-dropdown]{--ds-auro-select-border-color: var(--ds-advanced-color-state-error-inverse, #f9a4a8);--ds-auro-dropdown-helptext-text-color: var(--ds-basic-color-texticon-inverse, #ffffff)}#slotHolder{display:none}:host([disabled]) *{user-select:none}`;
5828
6360
 
5829
6361
  // Copyright (c) 2021 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
5830
6362
  // See LICENSE in the project root for license information.
@@ -5847,7 +6379,7 @@ var styleCss$3 = i$5`:focus:not(:focus-visible){outline:3px solid transparent}.u
5847
6379
  */
5848
6380
 
5849
6381
  // build the component class
5850
- class AuroSelect extends i$2 {
6382
+ class AuroSelect extends AuroElement$3 {
5851
6383
  constructor() {
5852
6384
  super();
5853
6385
 
@@ -5857,12 +6389,21 @@ class AuroSelect extends i$2 {
5857
6389
  const idSubstrEnd = 8;
5858
6390
  const idSubstrStart = 2;
5859
6391
 
6392
+ this.matchWidth = true;
6393
+
6394
+ // Layout Config
6395
+ this.layout = 'classic';
6396
+ this.shape = 'classic';
6397
+ this.size = 'xl';
6398
+
5860
6399
  // floaterConfig
5861
6400
  this.placement = 'bottom-start';
5862
6401
  this.offset = 0;
5863
6402
  this.noFlip = false;
5864
6403
  this.autoPlacement = false;
5865
6404
 
6405
+ this.forceDisplayValue = false;
6406
+
5866
6407
  /**
5867
6408
  * @private
5868
6409
  */
@@ -5878,7 +6419,7 @@ class AuroSelect extends i$2 {
5878
6419
  /**
5879
6420
  * @private
5880
6421
  */
5881
- this.runtimeUtils = new AuroLibraryRuntimeUtils$3();
6422
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$4();
5882
6423
 
5883
6424
  /**
5884
6425
  * Generate unique names for dependency components.
@@ -5895,10 +6436,25 @@ class AuroSelect extends i$2 {
5895
6436
  */
5896
6437
  this.bibtemplateTag = versioning.generateTag('auro-formkit-select-bibtemplate', bibTemplateVersion, AuroBibtemplate);
5897
6438
 
6439
+ /**
6440
+ * @private
6441
+ */
6442
+ this.helpTextTag = versioning.generateTag('auro-formkit-input-helptext', helpTextVersion, AuroHelpText);
6443
+
5898
6444
  /**
5899
6445
  * @private
5900
6446
  */
5901
6447
  this.isHiddenWhileLoading = false;
6448
+
6449
+ /**
6450
+ * @private
6451
+ */
6452
+ this.hasFocus = false;
6453
+
6454
+ /**
6455
+ * @private
6456
+ */
6457
+ this.hasDisplayValueContent = false;
5902
6458
  }
5903
6459
 
5904
6460
  /**
@@ -5928,6 +6484,14 @@ class AuroSelect extends i$2 {
5928
6484
  reflect: true
5929
6485
  },
5930
6486
 
6487
+ /**
6488
+ * If declared, the label and value will be visually hidden and the displayValue will render 100% of the time.
6489
+ */
6490
+ forceDisplayValue: {
6491
+ type: Boolean,
6492
+ reflect: true
6493
+ },
6494
+
5931
6495
  /**
5932
6496
  * If declared, bib's position will be automatically calculated where to appear.
5933
6497
  * @default false
@@ -5945,6 +6509,14 @@ class AuroSelect extends i$2 {
5945
6509
  reflect: true
5946
6510
  },
5947
6511
 
6512
+ /**
6513
+ * If declared, the popover and trigger will be set to the same width.
6514
+ */
6515
+ matchWidth: {
6516
+ type: Boolean,
6517
+ reflect: true
6518
+ },
6519
+
5948
6520
  /**
5949
6521
  * The name for the select element.
5950
6522
  */
@@ -6118,28 +6690,61 @@ class AuroSelect extends i$2 {
6118
6690
  /**
6119
6691
  * Sets multi-select mode, allowing multiple options to be selected at once.
6120
6692
  */
6121
- multiSelect: {
6693
+ multiSelect: {
6694
+ type: Boolean,
6695
+ reflect: true,
6696
+ attribute: 'multiselect'
6697
+ },
6698
+
6699
+ /**
6700
+ * Indicates whether the input is in a dirty state (has been interacted with).
6701
+ * @type {boolean}
6702
+ * @default false
6703
+ * @private
6704
+ */
6705
+ touched: {
6706
+ type: Boolean,
6707
+ reflect: true,
6708
+ attribute: false
6709
+ },
6710
+
6711
+ /**
6712
+ * @private
6713
+ */
6714
+ hasFocus: {
6122
6715
  type: Boolean,
6123
- reflect: true,
6124
- attribute: 'multiselect'
6716
+ reflect: false,
6717
+ attribute: false
6125
6718
  },
6126
6719
 
6127
6720
  /**
6128
- * Indicates whether the input is in a dirty state (has been interacted with).
6129
- * @type {boolean}
6130
- * @default false
6131
6721
  * @private
6132
6722
  */
6133
- touched: {
6723
+ hasDisplayValueContent: {
6134
6724
  type: Boolean,
6135
- reflect: true,
6725
+ reflect: false,
6136
6726
  attribute: false
6137
- }
6727
+ },
6138
6728
  };
6139
6729
  }
6140
6730
 
6141
6731
  static get styles() {
6142
- return [styleCss$3];
6732
+ return [
6733
+ i$5`${shapeSizeCss$1}`,
6734
+ i$5`${tokensCss$5}`,
6735
+ i$5`${styleCss$3}`,
6736
+ ];
6737
+ }
6738
+
6739
+ /**
6740
+ * Returns classmap configuration for wrapper elements in each layout.
6741
+ * @private
6742
+ * @return {object} - Returns classmap.
6743
+ */
6744
+ get commonWrapperClasses() {
6745
+ return {
6746
+ 'wrapper': true
6747
+ };
6143
6748
  }
6144
6749
 
6145
6750
  /**
@@ -6149,11 +6754,9 @@ class AuroSelect extends i$2 {
6149
6754
  */
6150
6755
  configureDropdown() {
6151
6756
  this.dropdown = this.shadowRoot.querySelector(this.dropdownTag._$litStatic$);
6152
- this.menuWrapper = this.dropdown.querySelector('.menuWrapper');
6153
6757
 
6154
6758
  // setting up bibtemplate
6155
6759
  this.bibtemplate = this.dropdown.querySelector(this.bibtemplateTag._$litStatic$); // eslint-disable-line no-underscore-dangle
6156
- this.bibtemplate.append(this.menuWrapper);
6157
6760
 
6158
6761
  if (this.customBibWidth) {
6159
6762
  this.dropdown.dropdownWidth = this.customBibWidth;
@@ -6172,7 +6775,7 @@ class AuroSelect extends i$2 {
6172
6775
  *
6173
6776
  */
6174
6777
  static register(name = "auro-select") {
6175
- AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroSelect);
6778
+ AuroLibraryRuntimeUtils$4.prototype.registerComponent(name, AuroSelect);
6176
6779
  }
6177
6780
 
6178
6781
  /**
@@ -6183,21 +6786,31 @@ class AuroSelect extends i$2 {
6183
6786
  updateDisplayedValue() {
6184
6787
  const triggerContentEl = this.dropdown.querySelector('#triggerFocus');
6185
6788
 
6186
- const valueText = triggerContentEl.querySelector("#valueText");
6187
- valueText.textContent = '';
6789
+ // Clear out old value
6790
+ // const placeholder = triggerContentEl.querySelector('#placeholder');
6791
+ const valueElem = triggerContentEl.querySelector('#value');
6792
+ if (valueElem) {
6793
+ valueElem.innerHTML = '';
6794
+ // valueElem.innerHTML = ''.appendChild(value);
6795
+ }
6188
6796
 
6189
6797
  // Handle selected options
6190
6798
  if (this.optionSelected) {
6191
- let displayText = '';
6192
-
6193
6799
  if (this.multiSelect && this.optionSelected.length > 0) {
6194
- // Create display text from selected options
6195
- displayText = this.optionSelected.map((option) => option.textContent).join(', ');
6800
+ const displayText = this.optionSelected.map((option) => option.textContent).join(', ');
6801
+
6802
+ valueElem.textContent = displayText;
6196
6803
  } else {
6197
- displayText = this.optionSelected.textContent;
6198
- }
6804
+ valueElem.innerHTML = this.optionSelected.innerHTML;
6805
+ const displayValueEl = this.optionSelected.querySelector("[slot='displayValue']");
6806
+ if (displayValueEl) {
6807
+ const oldDisplayValueEl = this.querySelectorAll("[slot='displayValue']");
6808
+ oldDisplayValueEl.forEach((el) => el.remove());
6199
6809
 
6200
- valueText.textContent = displayText;
6810
+ this.appendChild(displayValueEl.cloneNode(true));
6811
+ }
6812
+ this.hasDisplayValueContent = displayValueEl !== null;
6813
+ }
6201
6814
  }
6202
6815
 
6203
6816
  this.dropdown.requestUpdate();
@@ -6276,8 +6889,6 @@ class AuroSelect extends i$2 {
6276
6889
  * @returns {void}
6277
6890
  */
6278
6891
  configureSelect() {
6279
- // inject menu into menuWrapper
6280
- this.menuWrapper.append(this.menu);
6281
6892
 
6282
6893
  this.addEventListener('keydown', (evt) => {
6283
6894
  if (evt.key === 'ArrowUp') {
@@ -6331,6 +6942,7 @@ class AuroSelect extends i$2 {
6331
6942
 
6332
6943
  this.addEventListener('blur', () => {
6333
6944
  this.validation.validate(this);
6945
+ this.hasFocus = false;
6334
6946
  });
6335
6947
  }
6336
6948
 
@@ -6406,6 +7018,7 @@ class AuroSelect extends i$2 {
6406
7018
  */
6407
7019
  handleFocusin() {
6408
7020
 
7021
+ this.hasFocus = true;
6409
7022
  this.touched = true;
6410
7023
  }
6411
7024
 
@@ -6614,11 +7227,288 @@ class AuroSelect extends i$2 {
6614
7227
  }
6615
7228
  }
6616
7229
 
7230
+ renderAriaHtml() {
7231
+ return u`
7232
+ <div aria-live="polite" class="util_displayHiddenVisually">
7233
+ ${this.optionActive && this.options.length > 0
7234
+ ? u`
7235
+ ${`${this.optionActive.innerText}, option ${this.options.indexOf(this.optionActive) + 1} of ${this.options.length}`}
7236
+ `
7237
+ : undefined
7238
+ };
7239
+
7240
+ ${this.optionSelected && this.options.length > 0
7241
+ ? u`
7242
+ ${`${this.optionSelected.innerText} selected`}
7243
+ `
7244
+ : undefined
7245
+ };
7246
+ </div>
7247
+ `;
7248
+ }
7249
+
7250
+ renderNativeSelect() {
7251
+ return u`
7252
+ <div class="nativeSelectWrapper">
7253
+ <select
7254
+ tabindex="-1"
7255
+ id="${`native-select-${this.id || this.uniqueId}`}"
7256
+ name="${this.name || ''}"
7257
+ ?disabled="${this.disabled}"
7258
+ ?required="${this.required}"
7259
+ aria-hidden="true"
7260
+ autocomplete="${o(this.autocomplete)}"
7261
+ @change="${this._handleNativeSelectChange}">
7262
+ <option value="" ?selected="${!this.value}"></option>
7263
+ ${this.options.map((option) => {
7264
+ const optionValue = option.value || option.textContent;
7265
+ return u`
7266
+ <option
7267
+ value="${optionValue}"
7268
+ ?selected="${this.value === optionValue}">
7269
+ ${option.textContent}
7270
+ </option>
7271
+ `;
7272
+ })}
7273
+ </select>
7274
+ </div>
7275
+ `;
7276
+ }
7277
+
7278
+ /**
7279
+ * Returns HTML for the help text and error message.
7280
+ * @private
7281
+ * @returns {html} - Returns HTML for the help text and error message.
7282
+ */
7283
+ renderHtmlHelpText() {
7284
+ return u`
7285
+ ${!this.validity || this.validity === undefined || this.validity === 'valid'
7286
+ ? u`
7287
+ <${this.helpTextTag} ?onDark="${this.onDark}">
7288
+ <p id="${this.uniqueId}" part="helpText">
7289
+ <slot name="helptext"></slot>
7290
+ </p>
7291
+ </${this.helpTextTag}>
7292
+ `
7293
+ : u`
7294
+ <${this.helpTextTag} error ?onDark="${this.onDark}">
7295
+ <p id="${this.uniqueId}" role="alert" aria-live="assertive" part="helpText">
7296
+ ERROR MESSAGE ${this.errorMessage}
7297
+ </p>
7298
+ </${this.helpTextTag}>
7299
+ `
7300
+ }
7301
+ `;
7302
+ }
7303
+
7304
+ /**
7305
+ * Returns HTML for the emphasized layout.
7306
+ * @private
7307
+ * @returns {import("lit").TemplateResult} - Returns HTML for the emphasized layout.
7308
+ */
7309
+ // TODO update to use util class
7310
+ renderLayoutEmphasized() {
7311
+ const placeholderClass = {
7312
+ hidden: this.value,
7313
+ };
7314
+
7315
+ const displayValueClasses = {
7316
+ 'displayValue': true,
7317
+ 'hasContent': this.hasDisplayValueContent,
7318
+ 'hasFocus': this.hasFocus,
7319
+ 'withValue': this.value && this.value.length > 0,
7320
+ 'force': this.forceDisplayValue,
7321
+ };
7322
+
7323
+ const valueContainerClasses = {
7324
+ 'valueContainer': true,
7325
+ 'util_displayHiddenVisually': true
7326
+ };
7327
+
7328
+ return u`
7329
+ <div
7330
+ class="${e(this.commonWrapperClasses)}"
7331
+ part="wrapper">
7332
+ <div id="slotHolder" aria-hidden="true">
7333
+ <slot name="bib.fullscreen.headline" @slotchange="${this.handleSlotChange}"></slot>
7334
+ </div>
7335
+ <${this.dropdownTag}
7336
+ ?autoPlacement="${this.autoPlacement}"
7337
+ ?error="${this.validity !== undefined && this.validity !== 'valid'}"
7338
+ ?matchWidth="${!this.flexMenuWidth}"
7339
+ ?noFlip="${this.noFlip}"
7340
+ ?onDark="${this.onDark}"
7341
+ .fullscreenBreakpoint="${this.fullscreenBreakpoint}"
7342
+ .offset="${this.offset}"
7343
+ .placement="${this.placement}"
7344
+ chevron
7345
+ fluid
7346
+ for="selectMenu"
7347
+ layout="${this.layout}"
7348
+ part="dropdown"
7349
+ shape="${this.shape}"
7350
+ size="${this.size}">
7351
+ <div slot="trigger" aria-haspopup="true" id="triggerFocus" class="triggerContent">
7352
+ <div class="accents left">
7353
+ <slot name="typeIcon"></slot>
7354
+ </div>
7355
+ <div class="mainContent">
7356
+ <div class="${e(valueContainerClasses)}">
7357
+ <label>
7358
+ <slot name="label"></slot>
7359
+ </label>
7360
+ <div class="value" id="value"></div>
7361
+ ${this.value ? undefined : u`
7362
+ <div id="placeholder" class="${e(placeholderClass)}">
7363
+ <slot name="placeholder"></slot>
7364
+ </div>
7365
+ `}
7366
+ </div>
7367
+ <div class="${e(displayValueClasses)}" aria-hidden="true" part="displayValue">
7368
+ <slot name="displayValue"></slot>
7369
+ </div>
7370
+ </div>
7371
+ <div class="accents right"></div>
7372
+ </div>
7373
+ <div class="menuWrapper"></div>
7374
+ <${this.bibtemplateTag} ?large="${this.largeFullscreenHeadline}" @close-click="${this.hideBib}">
7375
+ <slot></slot>
7376
+ </${this.bibtemplateTag}>
7377
+ <div slot="helpText">
7378
+ ${this.renderHtmlHelpText()}
7379
+ </div>
7380
+ </${this.dropdownTag}>
7381
+ </div>
7382
+ `;
7383
+ }
7384
+
7385
+ /**
7386
+ * Returns HTML for the snowflake layout.
7387
+ * @private
7388
+ * @returns {import("lit").TemplateResult} - Returns HTML for the snowflake layout.
7389
+ */
7390
+ renderLayoutSnowflake() {
7391
+ const placeholderClass = {
7392
+ hidden: this.value,
7393
+ };
7394
+
7395
+ const displayValueClasses = {
7396
+ 'displayValue': true,
7397
+ 'hasContent': this.hasDisplayValueContent,
7398
+ 'hasFocus': this.hasFocus,
7399
+ 'withValue': this.value && this.value.length > 0,
7400
+ 'force': this.forceDisplayValue,
7401
+ };
7402
+
7403
+ const valueContainerClasses = {
7404
+ 'valueContainer': true,
7405
+ 'util_displayHiddenVisually': (this.forceDisplayValue || !this.hasFocus) && this.hasDisplayValueContent
7406
+ };
7407
+
7408
+ return u`
7409
+ <div
7410
+ class="${e(this.commonWrapperClasses)}"
7411
+ part="wrapper">
7412
+ <div id="slotHolder" aria-hidden="true">
7413
+ <slot name="bib.fullscreen.headline" @slotchange="${this.handleSlotChange}"></slot>
7414
+ </div>
7415
+ <${this.dropdownTag}
7416
+ ?autoPlacement="${this.autoPlacement}"
7417
+ ?error="${this.validity !== undefined && this.validity !== 'valid'}"
7418
+ ?matchWidth="${!this.flexMenuWidth}"
7419
+ ?noFlip="${this.noFlip}"
7420
+ ?onDark="${this.onDark}"
7421
+ .fullscreenBreakpoint="${this.fullscreenBreakpoint}"
7422
+ .offset="${this.offset}"
7423
+ .placement="${this.placement}"
7424
+ chevron
7425
+ fluid
7426
+ for="selectMenu"
7427
+ layout="${this.layout}"
7428
+ part="dropdown"
7429
+ shape="${this.shape}"
7430
+ size="${this.size}">
7431
+ <div slot="trigger" aria-haspopup="true" id="triggerFocus" class="triggerContent">
7432
+ <div class="accents left">
7433
+ <slot name="typeIcon"></slot>
7434
+ </div>
7435
+ <div class="mainContent">
7436
+ <div class="${e(valueContainerClasses)}">
7437
+ <label>
7438
+ <slot name="label"></slot>
7439
+ </label>
7440
+ <div class="value" id="value"></div>
7441
+ ${this.value ? undefined : u`
7442
+ <div id="placeholder" class="${e(placeholderClass)}">
7443
+ <slot name="placeholder"></slot>
7444
+ </div>
7445
+ `}
7446
+ </div>
7447
+ <div class="${e(displayValueClasses)}" aria-hidden="true" part="displayValue">
7448
+ <slot name="displayValue"></slot>
7449
+ </div>
7450
+ </div>
7451
+ <div class="accents right"></div>
7452
+ </div>
7453
+ <div class="menuWrapper"></div>
7454
+ <${this.bibtemplateTag} ?large="${this.largeFullscreenHeadline}" @close-click="${this.hideBib}">
7455
+ <slot></slot>
7456
+ </${this.bibtemplateTag}>
7457
+ <div slot="helpText">
7458
+ ${this.renderHtmlHelpText()}
7459
+ </div>
7460
+ </${this.dropdownTag}>
7461
+ </div>
7462
+ `;
7463
+ }
7464
+
7465
+ /**
7466
+ * Returns HTML for the classic layout.
7467
+ * @private
7468
+ * @returns {import("lit").TemplateResult} - Returns HTML for the classic layout.
7469
+ */
7470
+ renderLayoutClassic() {
7471
+ return u`
7472
+ <div
7473
+ class="${e(this.commonWrapperClasses)} thin"
7474
+ part="wrapper">
7475
+ classic
7476
+ </div>
7477
+ `;
7478
+ }
7479
+
7480
+ /**
7481
+ * Logic to determine the layout of the component.
7482
+ * @private
7483
+ * @param {string} [ForcedLayout] - Used to force a specific layout, pass in the layout name to use.
7484
+ * @returns {void}
7485
+ */
7486
+ renderLayout(ForcedLayout) {
7487
+ const layout = ForcedLayout || this.layout;
7488
+
7489
+ switch (layout) {
7490
+ case 'emphasized':
7491
+ return this.renderLayoutEmphasized();
7492
+ case 'emphasized-left':
7493
+ return this.renderLayoutEmphasized();
7494
+ case 'emphasized-right':
7495
+ return this.renderLayoutEmphasized();
7496
+ case 'snowflake':
7497
+ return this.renderLayoutSnowflake();
7498
+ case 'snowflake-left':
7499
+ return this.renderLayoutSnowflake();
7500
+ case 'snowflake-right':
7501
+ return this.renderLayoutSnowflake();
7502
+ default:
7503
+ return this.renderLayoutClassic();
7504
+ }
7505
+ }
7506
+
6617
7507
  // When using auroElement, use the following attribute and function when hiding content from screen readers.
6618
7508
  // aria-hidden="${this.hideAudible(this.hiddenAudible)}"
6619
7509
 
6620
7510
  // function that renders the HTML and CSS into the scope of the component
6621
- render() {
7511
+ renderBACKUP() {
6622
7512
  const placeholderClass = {
6623
7513
  hidden: this.value,
6624
7514
  };
@@ -6644,19 +7534,22 @@ class AuroSelect extends i$2 {
6644
7534
  <slot name="bib.fullscreen.headline" @slotchange="${this.handleSlotChange}"></slot>
6645
7535
  </div>
6646
7536
  <${this.dropdownTag}
6647
- for="selectmenu"
7537
+ ?autoPlacement="${this.autoPlacement}"
7538
+ ?disabled="${this.disabled}"
6648
7539
  ?error="${this.validity !== undefined && this.validity !== 'valid'}"
7540
+ ?matchWidth="${!this.flexMenuWidth}"
7541
+ ?noFlip="${this.noFlip}"
6649
7542
  ?onDark="${this.onDark}"
6650
- common
6651
- fluid
6652
7543
  .fullscreenBreakpoint="${this.fullscreenBreakpoint}"
6653
- ?matchWidth="${!this.flexMenuWidth}"
6654
- chevron
6655
- .placement="${this.placement}"
6656
7544
  .offset="${this.offset}"
6657
- ?autoPlacement="${this.autoPlacement}"
6658
- ?noFlip="${this.noFlip}"
6659
- part="dropdown">
7545
+ .placement="${this.placement}"
7546
+ chevron
7547
+ fluid
7548
+ for="selectMenu"
7549
+ layout="${this.layout}"
7550
+ part="dropdown"
7551
+ shape="${this.shape}"
7552
+ size="${this.size}">
6660
7553
  <span slot="trigger" aria-haspopup="true" id="triggerFocus">
6661
7554
  <span id="placeholder"
6662
7555
  class="${e(placeholderClass)}"
@@ -6667,10 +7560,8 @@ class AuroSelect extends i$2 {
6667
7560
  <slot name="valueText" id="valueText"></slot>
6668
7561
  </span>
6669
7562
 
6670
- <div class="menuWrapper">
6671
- </div>
6672
-
6673
7563
  <${this.bibtemplateTag} ?large="${this.largeFullscreenHeadline}" @close-click="${this.hideBib}">
7564
+ <slot></slot>
6674
7565
  </${this.bibtemplateTag}>
6675
7566
  <slot name="label" slot="label"></slot>
6676
7567
  <p slot="helpText">
@@ -6710,6 +7601,7 @@ class AuroSelect extends i$2 {
6710
7601
  </select>
6711
7602
  </div>
6712
7603
  <!-- Help text and error message template -->
7604
+ ${this.renderHtmlHelpText()}
6713
7605
  </div>
6714
7606
  `;
6715
7607
  }
@@ -6905,7 +7797,7 @@ class AuroMenu extends i$2 {
6905
7797
  *
6906
7798
  */
6907
7799
  static register(name = "auro-menu") {
6908
- AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroMenu);
7800
+ AuroLibraryRuntimeUtils$4.prototype.registerComponent(name, AuroMenu);
6909
7801
  }
6910
7802
 
6911
7803
  // Lifecycle Methods
@@ -6929,7 +7821,7 @@ class AuroMenu extends i$2 {
6929
7821
  }
6930
7822
 
6931
7823
  firstUpdated() {
6932
- AuroLibraryRuntimeUtils$3.prototype.handleComponentTagRename(this, 'auro-menu');
7824
+ AuroLibraryRuntimeUtils$4.prototype.handleComponentTagRename(this, 'auro-menu');
6933
7825
 
6934
7826
  this.loadingSlots = this.querySelectorAll("[slot='loadingText'], [slot='loadingIcon']");
6935
7827
  this.initializeMenu();
@@ -7638,6 +8530,76 @@ var tokensCss = i$5`:host{--ds-auro-icon-color:var(--ds-basic-color-texticon-def
7638
8530
 
7639
8531
  var colorCss = i$5`:host{color:var(--ds-auro-icon-color)}:host([customColor]){color:inherit}:host(:not([onDark])[variant=accent1]){--ds-auro-icon-color:var(--ds-basic-color-texticon-accent1, #265688)}:host(:not([onDark])[variant=disabled]){--ds-auro-icon-color:var(--ds-basic-color-texticon-disabled, #d0d0d0)}:host(:not([onDark])[variant=muted]){--ds-auro-icon-color:var(--ds-basic-color-texticon-muted, #676767)}:host(:not([onDark])[variant=statusDefault]){--ds-auro-icon-color:var(--ds-basic-color-status-default, #afb9c6)}:host(:not([onDark])[variant=statusInfo]){--ds-auro-icon-color:var(--ds-basic-color-status-info, #01426a)}:host(:not([onDark])[variant=statusSuccess]){--ds-auro-icon-color:var(--ds-basic-color-status-success, #447a1f)}:host(:not([onDark])[variant=statusWarning]){--ds-auro-icon-color:var(--ds-basic-color-status-warning, #fac200)}:host(:not([onDark])[variant=statusError]){--ds-auro-icon-color:var(--ds-basic-color-status-error, #e31f26)}:host(:not([onDark])[variant=statusInfoSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-info-subtle, #ebf3f9)}:host(:not([onDark])[variant=statusSuccessSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-success-subtle, #d6eac7)}:host(:not([onDark])[variant=statusWarningSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-warning-subtle, #fff0b2)}:host(:not([onDark])[variant=statusErrorSubtle]){--ds-auro-icon-color:var(--ds-basic-color-status-error-subtle, #fbc6c6)}:host(:not([onDark])[variant=fareBasicEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-basiceconomy, #97eaf8)}:host(:not([onDark])[variant=fareBusiness]){--ds-auro-icon-color:var(--ds-basic-color-fare-business, #01426a)}:host(:not([onDark])[variant=fareEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-economy, #0074ca)}:host(:not([onDark])[variant=fareFirst]){--ds-auro-icon-color:var(--ds-basic-color-fare-first, #00274a)}:host(:not([onDark])[variant=farePremiumEconomy]){--ds-auro-icon-color:var(--ds-basic-color-fare-premiumeconomy, #005154)}:host(:not([onDark])[variant=tierOneWorldEmerald]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-emerald, #139142)}:host(:not([onDark])[variant=tierOneWorldSapphire]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-sapphire, #015daa)}:host(:not([onDark])[variant=tierOneWorldRuby]){--ds-auro-icon-color:var(--ds-basic-color-tier-program-oneworld-ruby, #a41d4a)}:host([onDark]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse, #ffffff)}:host([onDark][variant=disabled]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse-disabled, #7e8894)}:host([onDark][variant=muted]){--ds-auro-icon-color:var(--ds-basic-color-texticon-inverse-muted, #ccd2db)}:host([onDark][variant=statusError]){--ds-auro-icon-color:var(--ds-advanced-color-state-error-inverse, #f9a4a8)}`;
7640
8532
 
8533
+ // Copyright (c) Alaska Air. All right reserved. Licensed under the Apache-2.0 license
8534
+ // See LICENSE in the project root for license information.
8535
+
8536
+ // ---------------------------------------------------------------------
8537
+
8538
+ /* eslint-disable line-comment-position, no-inline-comments, no-confusing-arrow, no-nested-ternary, implicit-arrow-linebreak */
8539
+
8540
+ class AuroLibraryRuntimeUtils {
8541
+
8542
+ /* eslint-disable jsdoc/require-param */
8543
+
8544
+ /**
8545
+ * This will register a new custom element with the browser.
8546
+ * @param {String} name - The name of the custom element.
8547
+ * @param {Object} componentClass - The class to register as a custom element.
8548
+ * @returns {void}
8549
+ */
8550
+ registerComponent(name, componentClass) {
8551
+ if (!customElements.get(name)) {
8552
+ customElements.define(name, class extends componentClass {});
8553
+ }
8554
+ }
8555
+
8556
+ /**
8557
+ * Finds and returns the closest HTML Element based on a selector.
8558
+ * @returns {void}
8559
+ */
8560
+ closestElement(
8561
+ selector, // selector like in .closest()
8562
+ base = this, // extra functionality to skip a parent
8563
+ __Closest = (el, found = el && el.closest(selector)) =>
8564
+ !el || el === document || el === window
8565
+ ? null // standard .closest() returns null for non-found selectors also
8566
+ : found
8567
+ ? found // found a selector INside this element
8568
+ : __Closest(el.getRootNode().host) // recursion!! break out to parent DOM
8569
+ ) {
8570
+ return __Closest(base);
8571
+ }
8572
+ /* eslint-enable jsdoc/require-param */
8573
+
8574
+ /**
8575
+ * If the element passed is registered with a different tag name than what is passed in, the tag name is added as an attribute to the element.
8576
+ * @param {Object} elem - The element to check.
8577
+ * @param {String} tagName - The name of the Auro component to check for or add as an attribute.
8578
+ * @returns {void}
8579
+ */
8580
+ handleComponentTagRename(elem, tagName) {
8581
+ const tag = tagName.toLowerCase();
8582
+ const elemTag = elem.tagName.toLowerCase();
8583
+
8584
+ if (elemTag !== tag) {
8585
+ elem.setAttribute(tag, true);
8586
+ }
8587
+ }
8588
+
8589
+ /**
8590
+ * Validates if an element is a specific Auro component.
8591
+ * @param {Object} elem - The element to validate.
8592
+ * @param {String} tagName - The name of the Auro component to check against.
8593
+ * @returns {Boolean} - Returns true if the element is the specified Auro component.
8594
+ */
8595
+ elementMatch(elem, tagName) {
8596
+ const tag = tagName.toLowerCase();
8597
+ const elemTag = elem.tagName.toLowerCase();
8598
+
8599
+ return elemTag === tag || elem.hasAttribute(tag);
8600
+ }
8601
+ }
8602
+
7641
8603
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
7642
8604
  // See LICENSE in the project root for license information.
7643
8605
 
@@ -7657,7 +8619,7 @@ class AuroIcon extends BaseIcon {
7657
8619
  */
7658
8620
  privateDefaults() {
7659
8621
  this.uri = 'https://cdn.jsdelivr.net/npm/@alaskaairux/icons@latest/dist';
7660
- this.runtimeUtils = new AuroLibraryRuntimeUtils$3();
8622
+ this.runtimeUtils = new AuroLibraryRuntimeUtils();
7661
8623
  }
7662
8624
 
7663
8625
  // function to define props used within the scope of this component
@@ -7739,7 +8701,7 @@ class AuroIcon extends BaseIcon {
7739
8701
  *
7740
8702
  */
7741
8703
  static register(name = "auro-icon") {
7742
- AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroIcon);
8704
+ AuroLibraryRuntimeUtils.prototype.registerComponent(name, AuroIcon);
7743
8705
  }
7744
8706
 
7745
8707
  connectedCallback() {
@@ -7845,7 +8807,7 @@ class AuroMenuOption extends i$2 {
7845
8807
  /**
7846
8808
  * @private
7847
8809
  */
7848
- this.runtimeUtils = new AuroLibraryRuntimeUtils$3();
8810
+ this.runtimeUtils = new AuroLibraryRuntimeUtils$4();
7849
8811
  }
7850
8812
 
7851
8813
  static get properties() {
@@ -7889,7 +8851,7 @@ class AuroMenuOption extends i$2 {
7889
8851
  *
7890
8852
  */
7891
8853
  static register(name = "auro-menuoption") {
7892
- AuroLibraryRuntimeUtils$3.prototype.registerComponent(name, AuroMenuOption);
8854
+ AuroLibraryRuntimeUtils$4.prototype.registerComponent(name, AuroMenuOption);
7893
8855
  }
7894
8856
 
7895
8857
  firstUpdated() {