@aurodesignsystem-dev/auro-formkit 0.0.0-pr1594.2 → 0.0.0-pr1595.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/components/bibtemplate/dist/auro-bibtemplate.d.ts +11 -0
  2. package/components/bibtemplate/dist/index.js +13 -0
  3. package/components/bibtemplate/dist/registered.js +13 -0
  4. package/components/checkbox/demo/api.md +17 -11
  5. package/components/checkbox/demo/customize.min.js +23 -6
  6. package/components/checkbox/demo/getting-started.min.js +23 -6
  7. package/components/checkbox/demo/index.min.js +23 -6
  8. package/components/checkbox/dist/auro-checkbox-group.d.ts +8 -0
  9. package/components/checkbox/dist/auro-checkbox.d.ts +4 -0
  10. package/components/checkbox/dist/index.js +23 -6
  11. package/components/checkbox/dist/registered.js +23 -6
  12. package/components/combobox/demo/api.md +24 -16
  13. package/components/combobox/demo/customize.min.js +405 -121
  14. package/components/combobox/demo/getting-started.min.js +405 -121
  15. package/components/combobox/demo/index.min.js +405 -121
  16. package/components/combobox/dist/auro-combobox.d.ts +29 -0
  17. package/components/combobox/dist/index.js +320 -107
  18. package/components/combobox/dist/registered.js +320 -107
  19. package/components/counter/demo/api.md +33 -15
  20. package/components/counter/demo/customize.min.js +201 -64
  21. package/components/counter/demo/index.min.js +201 -64
  22. package/components/counter/dist/auro-counter-button.d.ts +4 -0
  23. package/components/counter/dist/auro-counter-group.d.ts +23 -0
  24. package/components/counter/dist/auro-counter.d.ts +7 -0
  25. package/components/counter/dist/index.js +201 -64
  26. package/components/counter/dist/registered.js +201 -64
  27. package/components/datepicker/demo/api.md +55 -49
  28. package/components/datepicker/demo/customize.min.js +483 -131
  29. package/components/datepicker/demo/index.min.js +483 -131
  30. package/components/datepicker/dist/auro-calendar-cell.d.ts +55 -0
  31. package/components/datepicker/dist/auro-calendar-month.d.ts +9 -1
  32. package/components/datepicker/dist/auro-calendar.d.ts +16 -0
  33. package/components/datepicker/dist/auro-datepicker.d.ts +63 -10
  34. package/components/datepicker/dist/index.js +483 -131
  35. package/components/datepicker/dist/registered.js +483 -131
  36. package/components/dropdown/demo/api.md +25 -22
  37. package/components/dropdown/demo/customize.min.js +106 -37
  38. package/components/dropdown/demo/getting-started.min.js +232 -79
  39. package/components/dropdown/demo/index.min.js +106 -37
  40. package/components/dropdown/dist/auro-dropdown.d.ts +33 -4
  41. package/components/dropdown/dist/auro-dropdownBib.d.ts +17 -5
  42. package/components/dropdown/dist/index.js +106 -37
  43. package/components/dropdown/dist/registered.js +106 -37
  44. package/components/form/demo/customize.min.js +1448 -455
  45. package/components/form/demo/getting-started.min.js +1448 -455
  46. package/components/form/demo/index.min.js +1448 -455
  47. package/components/form/demo/registerDemoDeps.min.js +1448 -455
  48. package/components/helptext/dist/auro-helptext.d.ts +8 -7
  49. package/components/helptext/dist/index.js +7 -2
  50. package/components/helptext/dist/registered.js +7 -2
  51. package/components/input/demo/api.md +30 -30
  52. package/components/input/demo/customize.min.js +126 -42
  53. package/components/input/demo/getting-started.min.js +126 -42
  54. package/components/input/demo/index.min.js +126 -42
  55. package/components/input/dist/base-input.d.ts +67 -22
  56. package/components/input/dist/index.js +126 -42
  57. package/components/input/dist/registered.js +126 -42
  58. package/components/layoutElement/dist/auroElement.d.ts +10 -17
  59. package/components/layoutElement/dist/index.js +20 -20
  60. package/components/layoutElement/dist/registered.js +20 -20
  61. package/components/menu/demo/api.md +30 -27
  62. package/components/menu/demo/index.min.js +105 -34
  63. package/components/menu/dist/auro-menu.d.ts +24 -13
  64. package/components/menu/dist/auro-menuoption.d.ts +26 -0
  65. package/components/menu/dist/index.js +105 -34
  66. package/components/menu/dist/registered.js +105 -34
  67. package/components/radio/demo/api.md +8 -7
  68. package/components/radio/demo/customize.min.js +20 -7
  69. package/components/radio/demo/getting-started.min.js +20 -7
  70. package/components/radio/demo/index.min.js +20 -7
  71. package/components/radio/dist/auro-radio-group.d.ts +7 -0
  72. package/components/radio/dist/auro-radio.d.ts +1 -0
  73. package/components/radio/dist/index.js +20 -7
  74. package/components/radio/dist/registered.js +20 -7
  75. package/components/select/demo/api.md +18 -15
  76. package/components/select/demo/customize.min.js +255 -78
  77. package/components/select/demo/getting-started.min.js +255 -78
  78. package/components/select/demo/index.min.js +255 -78
  79. package/components/select/dist/auro-select.d.ts +17 -0
  80. package/components/select/dist/index.js +170 -64
  81. package/components/select/dist/registered.js +170 -64
  82. package/custom-elements.json +2573 -2680
  83. package/package.json +1 -1
@@ -4388,8 +4388,11 @@ const DESIGN_TOKEN_BREAKPOINT_OPTIONS = [
4388
4388
  ];
4389
4389
 
4390
4390
  /**
4391
+ * The `auro-dropdownbib` element renders the dropdown's bib as a dialog/popover container and manages its fullscreen and modal display.
4391
4392
  * @prop { String } fullscreenBreakpoint - Defines the screen size breakpoint (`lg`, `md`, `sm`, or `xs`) at which the dropdown switches to fullscreen mode on mobile. When expanded, the dropdown will automatically display in fullscreen mode if the screen size is equal to or smaller than the selected breakpoint.
4392
4393
  * @csspart bibContainer - Apply css to the bib container.
4394
+ * @event auro-dropdownbib-connected - Notifies that the dropdown bib has connected to the DOM, passing a reference to the element in the event detail.
4395
+ * @event auro-bib-cancel - Notifies that the bib was cancelled (e.g. via the ESC key) so parent components can close it.
4393
4396
  */
4394
4397
 
4395
4398
  class AuroDropdownBib extends i$3 {
@@ -4404,9 +4407,17 @@ class AuroDropdownBib extends i$3 {
4404
4407
 
4405
4408
  AuroLibraryRuntimeUtils$1$2.prototype.handleComponentTagRename(this, 'auro-dropdownbib');
4406
4409
 
4407
- this.shape = "rounded";
4408
4410
  this.matchWidth = false;
4409
4411
  this.hasActiveDescendant = false;
4412
+
4413
+ this.initializeArchitectureDefaults();
4414
+ }
4415
+
4416
+ // The `shape` default is set in a helper (not the constructor body) so the CEM
4417
+ // analyzer keeps its `@type` union instead of inferring `string` from a
4418
+ // constructor-literal assignment. See AlaskaAirlines/discussions#653.
4419
+ initializeArchitectureDefaults() {
4420
+ this.shape = "rounded";
4410
4421
  }
4411
4422
 
4412
4423
  static get styles() {
@@ -4425,6 +4436,7 @@ class AuroDropdownBib extends i$3 {
4425
4436
  */
4426
4437
  isFullscreen: {
4427
4438
  type: Boolean,
4439
+ attribute: 'isfullscreen',
4428
4440
  reflect: true
4429
4441
  },
4430
4442
 
@@ -4450,6 +4462,7 @@ class AuroDropdownBib extends i$3 {
4450
4462
  */
4451
4463
  matchWidth: {
4452
4464
  type: Boolean,
4465
+ attribute: 'matchwidth',
4453
4466
  reflect: true
4454
4467
  },
4455
4468
 
@@ -4465,11 +4478,18 @@ class AuroDropdownBib extends i$3 {
4465
4478
  * A reference to the associated bib template element.
4466
4479
  */
4467
4480
  bibTemplate: {
4468
- type: Object
4481
+ type: Object,
4482
+ attribute: 'bibtemplate'
4469
4483
  },
4470
4484
 
4485
+ /**
4486
+ * Sets the shape of the dropdown bib.
4487
+ * @type {'box' | 'classic' | 'pill' | 'rounded' | 'snowflake'}
4488
+ * @default 'rounded'
4489
+ */
4471
4490
  shape: {
4472
4491
  type: String,
4492
+ attribute: "shape",
4473
4493
  reflect: true
4474
4494
  },
4475
4495
 
@@ -4481,7 +4501,8 @@ class AuroDropdownBib extends i$3 {
4481
4501
  * @private
4482
4502
  */
4483
4503
  dialogLabel: {
4484
- type: String
4504
+ type: String,
4505
+ attribute: 'dialoglabel'
4485
4506
  },
4486
4507
 
4487
4508
  /**
@@ -4492,7 +4513,8 @@ class AuroDropdownBib extends i$3 {
4492
4513
  * @private
4493
4514
  */
4494
4515
  dialogRole: {
4495
- type: String
4516
+ type: String,
4517
+ attribute: 'dialogrole'
4496
4518
  },
4497
4519
 
4498
4520
  /**
@@ -4500,7 +4522,8 @@ class AuroDropdownBib extends i$3 {
4500
4522
  * @private
4501
4523
  */
4502
4524
  hasActiveDescendant: {
4503
- type: Boolean
4525
+ type: Boolean,
4526
+ attribute: 'hasactivedescendant'
4504
4527
  }
4505
4528
  };
4506
4529
  }
@@ -4851,6 +4874,8 @@ let AuroHelpText$2 = class AuroHelpText extends i$3 {
4851
4874
  super();
4852
4875
 
4853
4876
  this.error = false;
4877
+
4878
+ /** @type {'default' | 'inverse'} */
4854
4879
  this.appearance = "default";
4855
4880
  this.onDark = false;
4856
4881
  this.hasTextContent = false;
@@ -4871,8 +4896,8 @@ let AuroHelpText$2 = class AuroHelpText extends i$3 {
4871
4896
  return {
4872
4897
 
4873
4898
  /**
4874
- * Defines whether the component will be on lighter or darker backgrounds.
4875
- * @property {'default', 'inverse'} - The appearance of the help text, either default (for light backgrounds) or inverse (for dark backgrounds).
4899
+ * The appearance of the help text, either default (for light backgrounds) or inverse (for dark backgrounds).
4900
+ * @type {'default' | 'inverse'}
4876
4901
  * @default 'default'
4877
4902
  */
4878
4903
  appearance: {
@@ -4885,6 +4910,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$3 {
4885
4910
  */
4886
4911
  slotNodes: {
4887
4912
  type: Boolean,
4913
+ attribute: 'slotnodes',
4888
4914
  },
4889
4915
 
4890
4916
  /**
@@ -4892,6 +4918,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$3 {
4892
4918
  */
4893
4919
  hasTextContent: {
4894
4920
  type: Boolean,
4921
+ attribute: 'hastextcontent',
4895
4922
  },
4896
4923
 
4897
4924
  /**
@@ -4907,6 +4934,7 @@ let AuroHelpText$2 = class AuroHelpText extends i$3 {
4907
4934
  */
4908
4935
  onDark: {
4909
4936
  type: Boolean,
4937
+ attribute: 'ondark',
4910
4938
  reflect: true
4911
4939
  }
4912
4940
  };
@@ -4977,39 +5005,39 @@ let AuroHelpText$2 = class AuroHelpText extends i$3 {
4977
5005
  }
4978
5006
  };
4979
5007
 
4980
- var formkitVersion$2 = '202608261850';
5008
+ var formkitVersion$2 = '202608291822';
4981
5009
 
5010
+ /**
5011
+ * AuroElement is the shared base class for layout-aware Auro form components.
5012
+ *
5013
+ * It defines the common `layout`, `shape`, `size`, and `ondark` reactive
5014
+ * properties and the architecture helpers (`renderLayout`, `resetShapeClasses`,
5015
+ * `resetLayoutClasses`) that subclasses use to render a chosen layout and apply
5016
+ * the matching `shape-*` / `layout-*` wrapper classes. Subclasses supply their
5017
+ * own default and valid value set for `layout`, `shape`, and `size`.
5018
+ */
4982
5019
  let AuroElement$2 = class AuroElement extends i$3 {
4983
5020
  static get properties() {
4984
5021
  return {
4985
5022
 
4986
5023
  /**
4987
- * Defines the language of an element.
4988
- * @default {'default'}
5024
+ * When true, renders the component styled for use on a dark background.
4989
5025
  */
4990
- layout: {
4991
- type: String,
4992
- attribute: "layout",
4993
- reflect: true
4994
- },
4995
-
4996
- shape: {
4997
- type: String,
4998
- attribute: "shape",
4999
- reflect: true
5000
- },
5001
-
5002
- size: {
5003
- type: String,
5004
- attribute: "size",
5005
- reflect: true
5006
- },
5007
-
5008
5026
  onDark: {
5009
5027
  type: Boolean,
5010
5028
  attribute: "ondark",
5011
5029
  reflect: true
5012
5030
  }
5031
+
5032
+ // NOTE: `layout`, `shape`, and `size` are intentionally NOT declared here.
5033
+ // Their valid value sets differ per component, and the CEM analyzer roots
5034
+ // an inherited property's `type` in the class that declares it — a base
5035
+ // declaration would force every subclass's `@type` to be discarded and
5036
+ // emitted as plain `string`. Each subclass declares its own `layout` /
5037
+ // `shape` / `size` with an exact `@type` union instead. AuroElement still
5038
+ // consumes `this.layout` / `this.shape` / `this.size` in its render and
5039
+ // architecture helpers below (subclasses guarantee the reactive props).
5040
+ // See AlaskaAirlines/discussions#653.
5013
5041
  };
5014
5042
  }
5015
5043
 
@@ -5095,6 +5123,7 @@ let AuroElement$2 = class AuroElement extends i$3 {
5095
5123
  * @slot helpText - Defines the content of the helpText.
5096
5124
  * @slot trigger - Defines the content of the trigger.
5097
5125
  * @csspart trigger - The trigger content container.
5126
+ * @csspart wrapper - The trigger wrapper element surrounding the trigger content and chevron.
5098
5127
  * @csspart chevron - The collapsed/expanded state icon container.
5099
5128
  * @csspart size - The size of the dropdown bib. (height, width, maxHeight, maxWidth only)
5100
5129
  * @csspart helpText - The helpText content container.
@@ -5119,7 +5148,7 @@ class AuroDropdown extends AuroElement$2 {
5119
5148
 
5120
5149
  /**
5121
5150
  * When true, the dropdown skips its generic focus restoration on close.
5122
- * Set by consumers (e.g. combobox) that manage their own focus routing
5151
+ * Set by consumers (for example combobox) that manage their own focus routing
5123
5152
  * via setClearBtnFocus / setInputFocus / keyboard strategy.
5124
5153
  * Separate from noHideOnThisFocusLoss (which controls auto-close behavior).
5125
5154
  * @private
@@ -5288,7 +5317,7 @@ class AuroDropdown extends AuroElement$2 {
5288
5317
  /**
5289
5318
  * Focus the trigger content. When the trigger wrapper itself is focusable
5290
5319
  * (has tabindex), focus it directly. Otherwise, focus the first focusable
5291
- * element slotted into the trigger slot (e.g. the auro-input).
5320
+ * element slotted into the trigger slot (for example the auro-input).
5292
5321
  * @private
5293
5322
  */
5294
5323
  focusTrigger() {
@@ -5385,6 +5414,7 @@ class AuroDropdown extends AuroElement$2 {
5385
5414
  */
5386
5415
  autoPlacement: {
5387
5416
  type: Boolean,
5417
+ attribute: 'autoplacement',
5388
5418
  reflect: true
5389
5419
  },
5390
5420
 
@@ -5393,6 +5423,7 @@ class AuroDropdown extends AuroElement$2 {
5393
5423
  */
5394
5424
  desktopModal: {
5395
5425
  type: Boolean,
5426
+ attribute: 'desktopmodal',
5396
5427
  reflect: true
5397
5428
  },
5398
5429
 
@@ -5401,6 +5432,7 @@ class AuroDropdown extends AuroElement$2 {
5401
5432
  */
5402
5433
  disableEventShow: {
5403
5434
  type: Boolean,
5435
+ attribute: 'disableeventshow',
5404
5436
  reflect: true
5405
5437
  },
5406
5438
 
@@ -5434,14 +5466,16 @@ class AuroDropdown extends AuroElement$2 {
5434
5466
  */
5435
5467
  disableKeyboardHandling: {
5436
5468
  type: Boolean,
5469
+ attribute: 'disablekeyboardhandling',
5437
5470
  reflect: true
5438
5471
  },
5439
5472
 
5440
5473
  /**
5441
- * @private
5474
+ * Sets the width of the dropdown bib in pixels.
5442
5475
  */
5443
5476
  dropdownWidth: {
5444
- type: Number
5477
+ type: Number,
5478
+ attribute: 'dropdownwidth'
5445
5479
  },
5446
5480
 
5447
5481
  /**
@@ -5466,7 +5500,8 @@ class AuroDropdown extends AuroElement$2 {
5466
5500
  * Contains the help text message for the current validity error.
5467
5501
  */
5468
5502
  errorMessage: {
5469
- type: String
5503
+ type: String,
5504
+ attribute: 'errormessage'
5470
5505
  },
5471
5506
 
5472
5507
  /**
@@ -5474,6 +5509,7 @@ class AuroDropdown extends AuroElement$2 {
5474
5509
  */
5475
5510
  focusShow: {
5476
5511
  type: Boolean,
5512
+ attribute: 'focusshow',
5477
5513
  reflect: true
5478
5514
  },
5479
5515
 
@@ -5491,6 +5527,7 @@ class AuroDropdown extends AuroElement$2 {
5491
5527
  */
5492
5528
  isBibFullscreen: {
5493
5529
  type: Boolean,
5530
+ attribute: 'isbibfullscreen',
5494
5531
  reflect: true
5495
5532
  },
5496
5533
 
@@ -5499,6 +5536,7 @@ class AuroDropdown extends AuroElement$2 {
5499
5536
  */
5500
5537
  hoverToggle: {
5501
5538
  type: Boolean,
5539
+ attribute: 'hovertoggle',
5502
5540
  reflect: true
5503
5541
  },
5504
5542
 
@@ -5506,7 +5544,8 @@ class AuroDropdown extends AuroElement$2 {
5506
5544
  * @private
5507
5545
  */
5508
5546
  hasTriggerContent: {
5509
- type: Boolean
5547
+ type: Boolean,
5548
+ attribute: 'hastriggercontent'
5510
5549
  },
5511
5550
 
5512
5551
  /**
@@ -5519,6 +5558,7 @@ class AuroDropdown extends AuroElement$2 {
5519
5558
  */
5520
5559
  fullscreenBreakpoint: {
5521
5560
  type: String,
5561
+ attribute: "fullscreenbreakpoint",
5522
5562
  reflect: true
5523
5563
  },
5524
5564
 
@@ -5529,6 +5569,27 @@ class AuroDropdown extends AuroElement$2 {
5529
5569
  */
5530
5570
  layout: {
5531
5571
  type: String,
5572
+ attribute: "layout",
5573
+ reflect: true
5574
+ },
5575
+
5576
+ /**
5577
+ * Sets the shape of the dropdown.
5578
+ * @type {'box' | 'classic' | 'pill' | 'pill-left' | 'pill-right' | 'rounded' | 'snowflake'}
5579
+ */
5580
+ shape: {
5581
+ type: String,
5582
+ attribute: "shape",
5583
+ reflect: true
5584
+ },
5585
+
5586
+ /**
5587
+ * Sets the size of the dropdown.
5588
+ * @type {'xs' | 'sm' | 'md' | 'lg' | 'xl'}
5589
+ */
5590
+ size: {
5591
+ type: String,
5592
+ attribute: "size",
5532
5593
  reflect: true
5533
5594
  },
5534
5595
 
@@ -5538,6 +5599,7 @@ class AuroDropdown extends AuroElement$2 {
5538
5599
  */
5539
5600
  parentBorder: {
5540
5601
  type: Boolean,
5602
+ attribute: 'parentborder',
5541
5603
  reflect: true
5542
5604
  },
5543
5605
 
@@ -5546,6 +5608,7 @@ class AuroDropdown extends AuroElement$2 {
5546
5608
  */
5547
5609
  matchWidth: {
5548
5610
  type: Boolean,
5611
+ attribute: 'matchwidth',
5549
5612
  reflect: true
5550
5613
  },
5551
5614
 
@@ -5555,6 +5618,7 @@ class AuroDropdown extends AuroElement$2 {
5555
5618
  */
5556
5619
  noFlip: {
5557
5620
  type: Boolean,
5621
+ attribute: 'noflip',
5558
5622
  reflect: true
5559
5623
  },
5560
5624
 
@@ -5571,6 +5635,7 @@ class AuroDropdown extends AuroElement$2 {
5571
5635
  */
5572
5636
  noHideOnThisFocusLoss: {
5573
5637
  type: Boolean,
5638
+ attribute: 'nohideonthisfocusloss',
5574
5639
  reflect: true
5575
5640
  },
5576
5641
 
@@ -5579,6 +5644,7 @@ class AuroDropdown extends AuroElement$2 {
5579
5644
  */
5580
5645
  noToggle: {
5581
5646
  type: Boolean,
5647
+ attribute: 'notoggle',
5582
5648
  reflect: true
5583
5649
  },
5584
5650
 
@@ -5596,6 +5662,7 @@ class AuroDropdown extends AuroElement$2 {
5596
5662
  */
5597
5663
  onDark: {
5598
5664
  type: Boolean,
5665
+ attribute: 'ondark',
5599
5666
  reflect: true
5600
5667
  },
5601
5668
 
@@ -5604,6 +5671,7 @@ class AuroDropdown extends AuroElement$2 {
5604
5671
  */
5605
5672
  onSlotChange: {
5606
5673
  type: Function,
5674
+ attribute: 'onslotchange',
5607
5675
  reflect: false
5608
5676
  },
5609
5677
 
@@ -5618,10 +5686,11 @@ class AuroDropdown extends AuroElement$2 {
5618
5686
  },
5619
5687
 
5620
5688
  /**
5621
- * @private
5689
+ * Sets the tabindex applied to the dropdown trigger for keyboard focus order.
5622
5690
  */
5623
5691
  tabIndex: {
5624
- type: Number
5692
+ type: Number,
5693
+ attribute: 'tabindex'
5625
5694
  },
5626
5695
 
5627
5696
  /**
@@ -5845,7 +5914,7 @@ class AuroDropdown extends AuroElement$2 {
5845
5914
  /**
5846
5915
  * @description Let subscribers know that the dropdown ID ha been generated and added.
5847
5916
  * @event auroDropdown-idAdded
5848
- * @type {Object<key: 'id', value: string>} - The ID of the dropdown bib element.
5917
+ * @type {CustomEvent<{ id: string }>} - Detail carries the generated ID of the dropdown bib element.
5849
5918
  */
5850
5919
  this.dispatchEvent(new CustomEvent('auroDropdown-idAdded', {detail: {id: this.floater.element.id}}));
5851
5920
 
@@ -10994,37 +11063,37 @@ class AuroFormValidation {
10994
11063
  }
10995
11064
  }
10996
11065
 
11066
+ /**
11067
+ * AuroElement is the shared base class for layout-aware Auro form components.
11068
+ *
11069
+ * It defines the common `layout`, `shape`, `size`, and `ondark` reactive
11070
+ * properties and the architecture helpers (`renderLayout`, `resetShapeClasses`,
11071
+ * `resetLayoutClasses`) that subclasses use to render a chosen layout and apply
11072
+ * the matching `shape-*` / `layout-*` wrapper classes. Subclasses supply their
11073
+ * own default and valid value set for `layout`, `shape`, and `size`.
11074
+ */
10997
11075
  let AuroElement$1 = class AuroElement extends i$3 {
10998
11076
  static get properties() {
10999
11077
  return {
11000
11078
 
11001
11079
  /**
11002
- * Defines the language of an element.
11003
- * @default {'default'}
11080
+ * When true, renders the component styled for use on a dark background.
11004
11081
  */
11005
- layout: {
11006
- type: String,
11007
- attribute: "layout",
11008
- reflect: true
11009
- },
11010
-
11011
- shape: {
11012
- type: String,
11013
- attribute: "shape",
11014
- reflect: true
11015
- },
11016
-
11017
- size: {
11018
- type: String,
11019
- attribute: "size",
11020
- reflect: true
11021
- },
11022
-
11023
11082
  onDark: {
11024
11083
  type: Boolean,
11025
11084
  attribute: "ondark",
11026
11085
  reflect: true
11027
11086
  }
11087
+
11088
+ // NOTE: `layout`, `shape`, and `size` are intentionally NOT declared here.
11089
+ // Their valid value sets differ per component, and the CEM analyzer roots
11090
+ // an inherited property's `type` in the class that declares it — a base
11091
+ // declaration would force every subclass's `@type` to be discarded and
11092
+ // emitted as plain `string`. Each subclass declares its own `layout` /
11093
+ // `shape` / `size` with an exact `@type` union instead. AuroElement still
11094
+ // consumes `this.layout` / `this.shape` / `this.size` in its render and
11095
+ // architecture helpers below (subclasses guarantee the reactive props).
11096
+ // See AlaskaAirlines/discussions#653.
11028
11097
  };
11029
11098
  }
11030
11099
 
@@ -16991,6 +17060,7 @@ class DomHandler {
16991
17060
  * Base class for auro-input component that provides core input functionality.
16992
17061
  * @event input - Event fires when the value of an `auro-input` has been changed.
16993
17062
  * @event auroFormElement-validated - Notifies that the `validity` and `errorMessage` value has changed.
17063
+ * @event auroInput-validityChange - Notifies that the `validity` state of the input has changed.
16994
17064
  */
16995
17065
  class BaseInput extends AuroElement$1 {
16996
17066
 
@@ -17030,6 +17100,8 @@ class BaseInput extends AuroElement$1 {
17030
17100
  "credit-card",
17031
17101
  "tel"
17032
17102
  ];
17103
+
17104
+ /** @type {'default' | 'inverse'} */
17033
17105
  this.appearance = "default";
17034
17106
 
17035
17107
  /** @private */
@@ -17063,7 +17135,6 @@ class BaseInput extends AuroElement$1 {
17063
17135
 
17064
17136
  /** @private */
17065
17137
  this.label = 'Input label is undefined';
17066
- this.layout = 'classic';
17067
17138
  this.locale = 'en-US';
17068
17139
  this._format = undefined;
17069
17140
 
@@ -17085,11 +17156,9 @@ class BaseInput extends AuroElement$1 {
17085
17156
  "password",
17086
17157
  "email"
17087
17158
  ];
17088
- this.shape = 'classic';
17089
17159
 
17090
17160
  /** @private */
17091
17161
  this.showPassword = false;
17092
- this.size = 'lg';
17093
17162
  this.touched = false;
17094
17163
 
17095
17164
  /** @private */
@@ -17107,6 +17176,24 @@ class BaseInput extends AuroElement$1 {
17107
17176
  /** @private */
17108
17177
  this.validationCCLength = undefined;
17109
17178
  this.value = undefined;
17179
+
17180
+ this.initializeArchitectureDefaults();
17181
+ }
17182
+
17183
+ /**
17184
+ * Sets the default `layout`, `shape`, and `size` values.
17185
+ *
17186
+ * These are assigned in a helper method rather than the constructor body so
17187
+ * the CEM analyzer keeps their `@type` string-literal unions (a literal
17188
+ * assignment in the constructor would make the analyzer infer `string` and
17189
+ * override the union — see AlaskaAirlines/discussions#653, gotcha 1).
17190
+ * @private
17191
+ * @returns {void}
17192
+ */
17193
+ initializeArchitectureDefaults() {
17194
+ this.layout = 'classic';
17195
+ this.shape = 'classic';
17196
+ this.size = 'lg';
17110
17197
  }
17111
17198
 
17112
17199
  // function to define props used within the scope of this component
@@ -17114,11 +17201,45 @@ class BaseInput extends AuroElement$1 {
17114
17201
  return {
17115
17202
  ...super.properties,
17116
17203
 
17204
+ /**
17205
+ * Sets the layout variant of the input.
17206
+ * @type {'classic' | 'emphasized' | 'emphasized-left' | 'emphasized-right' | 'snowflake' | 'snowflake-left' | 'snowflake-right'}
17207
+ * @default 'classic'
17208
+ */
17209
+ layout: {
17210
+ type: String,
17211
+ attribute: "layout",
17212
+ reflect: true
17213
+ },
17214
+
17215
+ /**
17216
+ * Sets the shape of the input.
17217
+ * @type {'box' | 'classic' | 'pill' | 'pill-left' | 'pill-right' | 'rounded' | 'snowflake'}
17218
+ * @default 'classic'
17219
+ */
17220
+ shape: {
17221
+ type: String,
17222
+ attribute: "shape",
17223
+ reflect: true
17224
+ },
17225
+
17226
+ /**
17227
+ * Sets the size of the input.
17228
+ * @type {'xs' | 'sm' | 'md' | 'lg' | 'xl'}
17229
+ * @default 'lg'
17230
+ */
17231
+ size: {
17232
+ type: String,
17233
+ attribute: "size",
17234
+ reflect: true
17235
+ },
17236
+
17117
17237
  /**
17118
17238
  * The value for the role attribute.
17119
17239
  */
17120
17240
  a11yRole: {
17121
17241
  type: String,
17242
+ attribute: 'a11yrole',
17122
17243
  reflect: true
17123
17244
  },
17124
17245
 
@@ -17127,6 +17248,7 @@ class BaseInput extends AuroElement$1 {
17127
17248
  */
17128
17249
  a11yControls: {
17129
17250
  type: String,
17251
+ attribute: 'a11ycontrols',
17130
17252
  reflect: true
17131
17253
  },
17132
17254
 
@@ -17135,6 +17257,7 @@ class BaseInput extends AuroElement$1 {
17135
17257
  */
17136
17258
  a11yExpanded: {
17137
17259
  type: Boolean,
17260
+ attribute: 'a11yexpanded',
17138
17261
  reflect: true
17139
17262
  },
17140
17263
 
@@ -17144,6 +17267,7 @@ class BaseInput extends AuroElement$1 {
17144
17267
  */
17145
17268
  a11yActivedescendant: {
17146
17269
  type: String,
17270
+ attribute: 'a11yactivedescendant',
17147
17271
  reflect: true
17148
17272
  },
17149
17273
 
@@ -17154,6 +17278,7 @@ class BaseInput extends AuroElement$1 {
17154
17278
  */
17155
17279
  activeLabel: {
17156
17280
  type: Boolean,
17281
+ attribute: 'activelabel',
17157
17282
  reflect: true
17158
17283
  },
17159
17284
 
@@ -17168,7 +17293,8 @@ class BaseInput extends AuroElement$1 {
17168
17293
  },
17169
17294
 
17170
17295
  /**
17171
- * An enumerated attribute that controls whether and how text input is automatically capitalized as it is entered/edited by the user. [off/none, on/sentences, words, characters].
17296
+ * An enumerated attribute that controls whether and how text input is automatically capitalized as it is entered/edited by the user.
17297
+ * @type {'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters'}
17172
17298
  */
17173
17299
  autocapitalize: {
17174
17300
  type: String,
@@ -17185,6 +17311,7 @@ class BaseInput extends AuroElement$1 {
17185
17311
 
17186
17312
  /**
17187
17313
  * When set to `off`, stops iOS from auto-correcting words when typed into a text box.
17314
+ * @type {'on' | 'off'}
17188
17315
  */
17189
17316
  autocorrect: {
17190
17317
  type: String,
@@ -17195,7 +17322,8 @@ class BaseInput extends AuroElement$1 {
17195
17322
  * Custom help text message for email type validity.
17196
17323
  */
17197
17324
  customValidityTypeEmail: {
17198
- type: String
17325
+ type: String,
17326
+ attribute: 'customvaliditytypeemail'
17199
17327
  },
17200
17328
 
17201
17329
  /**
@@ -17211,6 +17339,7 @@ class BaseInput extends AuroElement$1 {
17211
17339
  */
17212
17340
  dvInputOnly: {
17213
17341
  type: Boolean,
17342
+ attribute: 'dvinputonly',
17214
17343
  reflect: true
17215
17344
  },
17216
17345
 
@@ -17226,7 +17355,8 @@ class BaseInput extends AuroElement$1 {
17226
17355
  * Contains the help text message for the current validity error.
17227
17356
  */
17228
17357
  errorMessage: {
17229
- type: String
17358
+ type: String,
17359
+ attribute: 'errormessage'
17230
17360
  },
17231
17361
 
17232
17362
  /**
@@ -17262,6 +17392,7 @@ class BaseInput extends AuroElement$1 {
17262
17392
  */
17263
17393
  hideLabelVisually: {
17264
17394
  type: Boolean,
17395
+ attribute: 'hidelabelvisually',
17265
17396
  reflect: true
17266
17397
  },
17267
17398
 
@@ -17328,6 +17459,7 @@ class BaseInput extends AuroElement$1 {
17328
17459
  */
17329
17460
  maxLength: {
17330
17461
  type: Number,
17462
+ attribute: 'maxlength',
17331
17463
  reflect: true
17332
17464
  },
17333
17465
 
@@ -17343,6 +17475,7 @@ class BaseInput extends AuroElement$1 {
17343
17475
  */
17344
17476
  minLength: {
17345
17477
  type: Number,
17478
+ attribute: 'minlength',
17346
17479
  reflect: true
17347
17480
  },
17348
17481
 
@@ -17368,6 +17501,7 @@ class BaseInput extends AuroElement$1 {
17368
17501
  */
17369
17502
  noValidate: {
17370
17503
  type: Boolean,
17504
+ attribute: 'novalidate',
17371
17505
  reflect: true
17372
17506
  },
17373
17507
 
@@ -17376,6 +17510,7 @@ class BaseInput extends AuroElement$1 {
17376
17510
  */
17377
17511
  onDark: {
17378
17512
  type: Boolean,
17513
+ attribute: 'ondark',
17379
17514
  reflect: true
17380
17515
  },
17381
17516
 
@@ -17415,77 +17550,88 @@ class BaseInput extends AuroElement$1 {
17415
17550
  * Sets a custom help text message to display for all validityStates.
17416
17551
  */
17417
17552
  setCustomValidity: {
17418
- type: String
17553
+ type: String,
17554
+ attribute: 'setcustomvalidity'
17419
17555
  },
17420
17556
 
17421
17557
  /**
17422
17558
  * Custom help text message to display when validity = `badInput`.
17423
17559
  */
17424
17560
  setCustomValidityBadInput: {
17425
- type: String
17561
+ type: String,
17562
+ attribute: 'setcustomvaliditybadinput'
17426
17563
  },
17427
17564
 
17428
17565
  /**
17429
17566
  * Custom help text message to display when validity = `customError`.
17430
17567
  */
17431
17568
  setCustomValidityCustomError: {
17432
- type: String
17569
+ type: String,
17570
+ attribute: 'setcustomvaliditycustomerror'
17433
17571
  },
17434
17572
 
17435
17573
  /**
17436
17574
  * Custom help text message to display for the declared element `type` and type validity fails.
17437
17575
  */
17438
17576
  setCustomValidityForType: {
17439
- type: String
17577
+ type: String,
17578
+ attribute: 'setcustomvalidityfortype'
17440
17579
  },
17441
17580
 
17442
17581
  /**
17443
17582
  * Custom help text message to display when validity = `patternMismatch`.
17444
17583
  */
17445
17584
  setCustomValidityPatternMismatch: {
17446
- type: String
17585
+ type: String,
17586
+ attribute: 'setcustomvaliditypatternmismatch'
17447
17587
  },
17448
17588
 
17449
17589
  /**
17450
17590
  * Custom help text message to display when validity = `rangeOverflow`.
17451
17591
  */
17452
17592
  setCustomValidityRangeOverflow: {
17453
- type: String
17593
+ type: String,
17594
+ attribute: 'setcustomvalidityrangeoverflow'
17454
17595
  },
17455
17596
 
17456
17597
  /**
17457
17598
  * Custom help text message to display when validity = `rangeUnderflow`.
17458
17599
  */
17459
17600
  setCustomValidityRangeUnderflow: {
17460
- type: String
17601
+ type: String,
17602
+ attribute: 'setcustomvalidityrangeunderflow'
17461
17603
  },
17462
17604
 
17463
17605
  /**
17464
17606
  * Custom help text message to display when validity = `tooLong`.
17465
17607
  */
17466
17608
  setCustomValidityTooLong: {
17467
- type: String
17609
+ type: String,
17610
+ attribute: 'setcustomvaliditytoolong'
17468
17611
  },
17469
17612
 
17470
17613
  /**
17471
17614
  * Custom help text message to display when validity = `tooShort`.
17472
17615
  */
17473
17616
  setCustomValidityTooShort: {
17474
- type: String
17617
+ type: String,
17618
+ attribute: 'setcustomvaliditytooshort'
17475
17619
  },
17476
17620
 
17477
17621
  /**
17478
17622
  * Custom help text message to display when validity = `valueMissing`.
17479
17623
  */
17480
17624
  setCustomValidityValueMissing: {
17481
- type: String
17625
+ type: String,
17626
+ attribute: 'setcustomvalidityvaluemissing'
17482
17627
  },
17483
17628
 
17484
17629
  /**
17485
17630
  * @ignore
17486
17631
  */
17487
17632
  showPassword: {
17488
- state: true
17633
+ state: true,
17634
+ attribute: false
17489
17635
  },
17490
17636
 
17491
17637
  /**
@@ -17497,7 +17643,8 @@ class BaseInput extends AuroElement$1 {
17497
17643
  },
17498
17644
 
17499
17645
  /**
17500
- * An enumerated attribute defines whether the element may be checked for spelling errors. [true, false]. When set to `false` the attribute `autocorrect` is set to `off` and `autocapitalize` is set to `none`.
17646
+ * An enumerated attribute defines whether the element may be checked for spelling errors. When set to `false` the attribute `autocorrect` is set to `off` and `autocapitalize` is set to `none`.
17647
+ * @type {'true' | 'false'}
17501
17648
  */
17502
17649
  spellcheck: {
17503
17650
  type: String,
@@ -17528,7 +17675,8 @@ class BaseInput extends AuroElement$1 {
17528
17675
  * Sets validation mode to re-eval with each input.
17529
17676
  */
17530
17677
  validateOnInput: {
17531
- type: Boolean
17678
+ type: Boolean,
17679
+ attribute: 'validateoninput'
17532
17680
  },
17533
17681
 
17534
17682
  /**
@@ -18582,6 +18730,8 @@ let AuroHelpText$1 = class AuroHelpText extends i$3 {
18582
18730
  super();
18583
18731
 
18584
18732
  this.error = false;
18733
+
18734
+ /** @type {'default' | 'inverse'} */
18585
18735
  this.appearance = "default";
18586
18736
  this.onDark = false;
18587
18737
  this.hasTextContent = false;
@@ -18602,8 +18752,8 @@ let AuroHelpText$1 = class AuroHelpText extends i$3 {
18602
18752
  return {
18603
18753
 
18604
18754
  /**
18605
- * Defines whether the component will be on lighter or darker backgrounds.
18606
- * @property {'default', 'inverse'} - The appearance of the help text, either default (for light backgrounds) or inverse (for dark backgrounds).
18755
+ * The appearance of the help text, either default (for light backgrounds) or inverse (for dark backgrounds).
18756
+ * @type {'default' | 'inverse'}
18607
18757
  * @default 'default'
18608
18758
  */
18609
18759
  appearance: {
@@ -18616,6 +18766,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$3 {
18616
18766
  */
18617
18767
  slotNodes: {
18618
18768
  type: Boolean,
18769
+ attribute: 'slotnodes',
18619
18770
  },
18620
18771
 
18621
18772
  /**
@@ -18623,6 +18774,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$3 {
18623
18774
  */
18624
18775
  hasTextContent: {
18625
18776
  type: Boolean,
18777
+ attribute: 'hastextcontent',
18626
18778
  },
18627
18779
 
18628
18780
  /**
@@ -18638,6 +18790,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$3 {
18638
18790
  */
18639
18791
  onDark: {
18640
18792
  type: Boolean,
18793
+ attribute: 'ondark',
18641
18794
  reflect: true
18642
18795
  }
18643
18796
  };
@@ -18708,7 +18861,7 @@ let AuroHelpText$1 = class AuroHelpText extends i$3 {
18708
18861
  }
18709
18862
  };
18710
18863
 
18711
- var formkitVersion$1 = '202608261850';
18864
+ var formkitVersion$1 = '202608291822';
18712
18865
 
18713
18866
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
18714
18867
  // See LICENSE in the project root for license information.
@@ -19722,6 +19875,9 @@ var headerVersion = '5.0.1';
19722
19875
  * @slot subheader - Slot for the subheader content.
19723
19876
  * @slot footer - Slot for the footer content.
19724
19877
  * @slot ariaLabel.close - Slot for the close button aria-label.
19878
+ * @csspart bibtemplate - The outermost bibtemplate container element.
19879
+ * @event close-click - Notifies when the close button is clicked.
19880
+ * @event auro-bibtemplate-connected - Notifies that the bibtemplate has connected to the DOM, passing a reference to the element in the event detail.
19725
19881
  */
19726
19882
  class AuroBibtemplate extends i$3 {
19727
19883
 
@@ -19761,10 +19917,19 @@ class AuroBibtemplate extends i$3 {
19761
19917
  // function to define props used within the scope of this component
19762
19918
  static get properties() {
19763
19919
  return {
19920
+
19921
+ /**
19922
+ * If declared, the bibtemplate renders in fullscreen mode, exposing the header, subheader, and footer regions.
19923
+ */
19764
19924
  isFullscreen: {
19765
19925
  type: Boolean,
19926
+ attribute: 'isfullscreen',
19766
19927
  reflect: true
19767
19928
  },
19929
+
19930
+ /**
19931
+ * If declared, the fullscreen headline renders using the larger display heading style.
19932
+ */
19768
19933
  large: {
19769
19934
  type: Boolean,
19770
19935
  reflect: true
@@ -19775,6 +19940,7 @@ class AuroBibtemplate extends i$3 {
19775
19940
  */
19776
19941
  showFooter: {
19777
19942
  type: Boolean,
19943
+ attribute: 'showfooter',
19778
19944
  reflect: true
19779
19945
  }
19780
19946
  };
@@ -19887,7 +20053,7 @@ class AuroBibtemplate extends i$3 {
19887
20053
  }
19888
20054
  }
19889
20055
 
19890
- var formkitVersion = '202608261850';
20056
+ var formkitVersion = '202608291822';
19891
20057
 
19892
20058
  var styleCss$3 = i$6`.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}:host{display:block;text-align:left}:host [auro-dropdown]{--ds-auro-dropdown-trigger-background-color: transparent}:host #inputInBib::part(wrapper){box-shadow:none}:host #inputInBib::part(accent-left){display:none}:host([layout*=classic]) [auro-input]{width:100%}:host([layout*=classic]) [auro-input]::part(helpText){display:none}:host([layout*=classic]) #slotHolder{display:none}`;
19893
20059
 
@@ -19895,37 +20061,37 @@ var styleEmphasizedCss = i$6`:host([layout*=emphasized][shape*=pill]) [auro-inpu
19895
20061
 
19896
20062
  var styleSnowflakeCss = i$6`:host([layout*=snowflake][shape*=snowflake]) [auro-input]{width:100%}:host([layout*=snowflake][shape*=snowflake]) [auro-input]::part(inputHelpText){display:none}:host([layout*=snowflake][shape*=snowflake])::part(helpText){text-align:center}`;
19897
20063
 
20064
+ /**
20065
+ * AuroElement is the shared base class for layout-aware Auro form components.
20066
+ *
20067
+ * It defines the common `layout`, `shape`, `size`, and `ondark` reactive
20068
+ * properties and the architecture helpers (`renderLayout`, `resetShapeClasses`,
20069
+ * `resetLayoutClasses`) that subclasses use to render a chosen layout and apply
20070
+ * the matching `shape-*` / `layout-*` wrapper classes. Subclasses supply their
20071
+ * own default and valid value set for `layout`, `shape`, and `size`.
20072
+ */
19898
20073
  class AuroElement extends i$3 {
19899
20074
  static get properties() {
19900
20075
  return {
19901
20076
 
19902
20077
  /**
19903
- * Defines the language of an element.
19904
- * @default {'default'}
20078
+ * When true, renders the component styled for use on a dark background.
19905
20079
  */
19906
- layout: {
19907
- type: String,
19908
- attribute: "layout",
19909
- reflect: true
19910
- },
19911
-
19912
- shape: {
19913
- type: String,
19914
- attribute: "shape",
19915
- reflect: true
19916
- },
19917
-
19918
- size: {
19919
- type: String,
19920
- attribute: "size",
19921
- reflect: true
19922
- },
19923
-
19924
20080
  onDark: {
19925
20081
  type: Boolean,
19926
20082
  attribute: "ondark",
19927
20083
  reflect: true
19928
20084
  }
20085
+
20086
+ // NOTE: `layout`, `shape`, and `size` are intentionally NOT declared here.
20087
+ // Their valid value sets differ per component, and the CEM analyzer roots
20088
+ // an inherited property's `type` in the class that declares it — a base
20089
+ // declaration would force every subclass's `@type` to be discarded and
20090
+ // emitted as plain `string`. Each subclass declares its own `layout` /
20091
+ // `shape` / `size` with an exact `@type` union instead. AuroElement still
20092
+ // consumes `this.layout` / `this.shape` / `this.size` in its render and
20093
+ // architecture helpers below (subclasses guarantee the reactive props).
20094
+ // See AlaskaAirlines/discussions#653.
19929
20095
  };
19930
20096
  }
19931
20097
 
@@ -20101,6 +20267,8 @@ class AuroHelpText extends i$3 {
20101
20267
  super();
20102
20268
 
20103
20269
  this.error = false;
20270
+
20271
+ /** @type {'default' | 'inverse'} */
20104
20272
  this.appearance = "default";
20105
20273
  this.onDark = false;
20106
20274
  this.hasTextContent = false;
@@ -20121,8 +20289,8 @@ class AuroHelpText extends i$3 {
20121
20289
  return {
20122
20290
 
20123
20291
  /**
20124
- * Defines whether the component will be on lighter or darker backgrounds.
20125
- * @property {'default', 'inverse'} - The appearance of the help text, either default (for light backgrounds) or inverse (for dark backgrounds).
20292
+ * The appearance of the help text, either default (for light backgrounds) or inverse (for dark backgrounds).
20293
+ * @type {'default' | 'inverse'}
20126
20294
  * @default 'default'
20127
20295
  */
20128
20296
  appearance: {
@@ -20135,6 +20303,7 @@ class AuroHelpText extends i$3 {
20135
20303
  */
20136
20304
  slotNodes: {
20137
20305
  type: Boolean,
20306
+ attribute: 'slotnodes',
20138
20307
  },
20139
20308
 
20140
20309
  /**
@@ -20142,6 +20311,7 @@ class AuroHelpText extends i$3 {
20142
20311
  */
20143
20312
  hasTextContent: {
20144
20313
  type: Boolean,
20314
+ attribute: 'hastextcontent',
20145
20315
  },
20146
20316
 
20147
20317
  /**
@@ -20157,6 +20327,7 @@ class AuroHelpText extends i$3 {
20157
20327
  */
20158
20328
  onDark: {
20159
20329
  type: Boolean,
20330
+ attribute: 'ondark',
20160
20331
  reflect: true
20161
20332
  }
20162
20333
  };
@@ -20287,6 +20458,7 @@ function getOptionLabel(option) {
20287
20458
  * @slot label - Defines the content of the label.
20288
20459
  * @slot helpText - Defines the content of the helpText.
20289
20460
  * @slot displayValue - Allows custom HTML content to display the selected value when the combobox is not focused. Only works with `snowflake` and `emphasized` layouts.
20461
+ * @csspart helpText - The help text and error message content container.
20290
20462
  * @event auroCombobox-valueSet - (Deprecated) Notifies that the component has a new value set.
20291
20463
  * @event input - Notifies that the component has a new value set.
20292
20464
  * @event inputValue - Notifies that the components internal HTML5 input value has changed.
@@ -20412,6 +20584,7 @@ class AuroCombobox extends AuroElement {
20412
20584
  */
20413
20585
  autoPlacement: {
20414
20586
  type: Boolean,
20587
+ attribute: 'autoplacement',
20415
20588
  reflect: true
20416
20589
  },
20417
20590
 
@@ -20422,6 +20595,7 @@ class AuroCombobox extends AuroElement {
20422
20595
  */
20423
20596
  availableOptions: {
20424
20597
  state: true,
20598
+ attribute: false,
20425
20599
  type: Array,
20426
20600
  reflect: false,
20427
20601
  hasChanged(newVal, oldVal) {
@@ -20491,6 +20665,7 @@ class AuroCombobox extends AuroElement {
20491
20665
  */
20492
20666
  dvInputOnly: {
20493
20667
  type: Boolean,
20668
+ attribute: 'dvinputonly',
20494
20669
  reflect: true
20495
20670
  },
20496
20671
 
@@ -20524,6 +20699,29 @@ class AuroCombobox extends AuroElement {
20524
20699
  */
20525
20700
  layout: {
20526
20701
  type: String,
20702
+ attribute: "layout",
20703
+ reflect: true
20704
+ },
20705
+
20706
+ /**
20707
+ * Sets the shape of the combobox.
20708
+ * @type {'box' | 'classic' | 'pill' | 'pill-left' | 'pill-right' | 'rounded' | 'snowflake'}
20709
+ * @default 'classic'
20710
+ */
20711
+ shape: {
20712
+ type: String,
20713
+ attribute: "shape",
20714
+ reflect: true
20715
+ },
20716
+
20717
+ /**
20718
+ * Sets the size of the combobox.
20719
+ * @type {'xs' | 'sm' | 'md' | 'lg' | 'xl'}
20720
+ * @default 'xl'
20721
+ */
20722
+ size: {
20723
+ type: String,
20724
+ attribute: "size",
20527
20725
  reflect: true
20528
20726
  },
20529
20727
 
@@ -20533,6 +20731,7 @@ class AuroCombobox extends AuroElement {
20533
20731
  */
20534
20732
  matchWidth: {
20535
20733
  type: Boolean,
20734
+ attribute: 'matchwidth',
20536
20735
  reflect: true
20537
20736
  },
20538
20737
 
@@ -20541,6 +20740,7 @@ class AuroCombobox extends AuroElement {
20541
20740
  */
20542
20741
  noFilter: {
20543
20742
  type: Boolean,
20743
+ attribute: 'nofilter',
20544
20744
  reflect: true
20545
20745
  },
20546
20746
 
@@ -20550,6 +20750,7 @@ class AuroCombobox extends AuroElement {
20550
20750
  */
20551
20751
  noFlip: {
20552
20752
  type: Boolean,
20753
+ attribute: 'noflip',
20553
20754
  reflect: true
20554
20755
  },
20555
20756
 
@@ -20566,6 +20767,7 @@ class AuroCombobox extends AuroElement {
20566
20767
  */
20567
20768
  noValidate: {
20568
20769
  type: Boolean,
20770
+ attribute: 'novalidate',
20569
20771
  reflect: true
20570
20772
  },
20571
20773
 
@@ -20583,6 +20785,7 @@ class AuroCombobox extends AuroElement {
20583
20785
  */
20584
20786
  onDark: {
20585
20787
  type: Boolean,
20788
+ attribute: 'ondark',
20586
20789
  reflect: true
20587
20790
  },
20588
20791
 
@@ -20591,7 +20794,8 @@ class AuroCombobox extends AuroElement {
20591
20794
  * @type {HTMLElement}
20592
20795
  */
20593
20796
  optionSelected: {
20594
- type: Object
20797
+ type: Object,
20798
+ attribute: 'optionselected'
20595
20799
  },
20596
20800
 
20597
20801
  /**
@@ -20601,6 +20805,7 @@ class AuroCombobox extends AuroElement {
20601
20805
  */
20602
20806
  persistInput: {
20603
20807
  type: Boolean,
20808
+ attribute: 'persistinput',
20604
20809
  reflect: true
20605
20810
  },
20606
20811
 
@@ -20634,28 +20839,32 @@ class AuroCombobox extends AuroElement {
20634
20839
  * Sets a custom help text message to display for all validityStates.
20635
20840
  */
20636
20841
  setCustomValidity: {
20637
- type: String
20842
+ type: String,
20843
+ attribute: 'setcustomvalidity'
20638
20844
  },
20639
20845
 
20640
20846
  /**
20641
20847
  * Custom help text message to display when validity = `customError`.
20642
20848
  */
20643
20849
  setCustomValidityCustomError: {
20644
- type: String
20850
+ type: String,
20851
+ attribute: 'setcustomvaliditycustomerror'
20645
20852
  },
20646
20853
 
20647
20854
  /**
20648
20855
  * Custom help text message to display when validity = `valueMissing`.
20649
20856
  */
20650
20857
  setCustomValidityValueMissing: {
20651
- type: String
20858
+ type: String,
20859
+ attribute: 'setcustomvalidityvaluemissing'
20652
20860
  },
20653
20861
 
20654
20862
  /**
20655
20863
  * Custom help text message to display when validity = `valueMissing` due to the user not choosing a menu option when behavior = "filter".
20656
20864
  */
20657
20865
  setCustomValidityValueMissingFilter: {
20658
- type: String
20866
+ type: String,
20867
+ attribute: 'setcustomvalidityvaluemissingfilter'
20659
20868
  },
20660
20869
 
20661
20870
  /**
@@ -20675,6 +20884,7 @@ class AuroCombobox extends AuroElement {
20675
20884
  */
20676
20885
  triggerIcon: {
20677
20886
  type: Boolean,
20887
+ attribute: 'triggericon',
20678
20888
  reflect: true
20679
20889
  },
20680
20890
 
@@ -20691,6 +20901,7 @@ class AuroCombobox extends AuroElement {
20691
20901
  */
20692
20902
  typedValue: {
20693
20903
  type: String,
20904
+ attribute: 'typedvalue',
20694
20905
  reflect: true
20695
20906
  },
20696
20907
 
@@ -20716,6 +20927,7 @@ class AuroCombobox extends AuroElement {
20716
20927
  */
20717
20928
  largeFullscreenHeadline: {
20718
20929
  type: Boolean,
20930
+ attribute: 'largefullscreenheadline',
20719
20931
  reflect: true
20720
20932
  },
20721
20933
  /* eslint-enable jsdoc/require-description-complete-sentence */
@@ -20730,6 +20942,7 @@ class AuroCombobox extends AuroElement {
20730
20942
  */
20731
20943
  fullscreenBreakpoint: {
20732
20944
  type: String,
20945
+ attribute: "fullscreenbreakpoint",
20733
20946
  reflect: true
20734
20947
  },
20735
20948
 
@@ -22506,6 +22719,7 @@ let menuInstanceIdCounter = 0;
22506
22719
  * @event {CustomEvent<Element>} auroMenu-activatedOption - Notifies that a menuoption has been made `active`.
22507
22720
  * @event {CustomEvent<any>} auroMenu-customEventFired - Notifies that a custom event has been fired.
22508
22721
  * @event {CustomEvent<{ loading: boolean; hasLoadingPlaceholder: boolean; }>} auroMenu-loadingChange - Notifies when the loading attribute is changed.
22722
+ * @event {CustomEvent<{ options: Array }>} auroMenu-optionsChange - Notifies that the set of available menu options has changed.
22509
22723
  * @event {CustomEvent<any>} auroMenu-selectValueFailure - Notifies that an attempt to select a menuoption by matching a value has failed.
22510
22724
  * @event {CustomEvent<any>} auroMenu-selectValueReset - Notifies that the component value has been reset.
22511
22725
  * @event {CustomEvent<any>} auroMenu-selectedOption - Notifies that a new menuoption selection has been made.
@@ -22520,15 +22734,7 @@ class AuroMenu extends AuroElement {
22520
22734
 
22521
22735
  // State properties (reactive)
22522
22736
 
22523
- /**
22524
- * @private
22525
- */
22526
- this.shape = "box";
22527
-
22528
- /**
22529
- * @private
22530
- */
22531
- this.size = "sm";
22737
+ this.initializeArchitectureDefaults();
22532
22738
 
22533
22739
  // Value of the selected options
22534
22740
  this.value = undefined;
@@ -22569,8 +22775,6 @@ class AuroMenu extends AuroElement {
22569
22775
 
22570
22776
  // Instance properties (non-reactive)
22571
22777
 
22572
- menuInstanceIdCounter += 1;
22573
-
22574
22778
  Object.assign(this, {
22575
22779
  // Root-level menu (true) or a nested submenu (false)
22576
22780
  rootMenu: true,
@@ -22582,7 +22786,7 @@ class AuroMenu extends AuroElement {
22582
22786
  loadingSlots: null,
22583
22787
  // Unique id for this menu instance; prefixes every auto-generated option
22584
22788
  // key so keys never collide across menus in the same document.
22585
- _menuInstanceId: `menu-${menuInstanceIdCounter}`,
22789
+ _menuInstanceId: `menu-${menuInstanceIdCounter += 1}`,
22586
22790
  // Monotonically increasing counter for option key generation. Never
22587
22791
  // resets, so a key is never reused within this instance's lifetime.
22588
22792
  _optionKeyCounter: 0,
@@ -22598,10 +22802,50 @@ class AuroMenu extends AuroElement {
22598
22802
  });
22599
22803
  }
22600
22804
 
22805
+ // Defaults for the layout/shape/size architecture props are set in a helper
22806
+ // (not the constructor body) so the CEM analyzer keeps their `@type` unions
22807
+ // instead of inferring `string` from a constructor-literal assignment.
22808
+ // See AlaskaAirlines/discussions#653.
22809
+ initializeArchitectureDefaults() {
22810
+ this.shape = "box";
22811
+ this.size = "sm";
22812
+ }
22813
+
22601
22814
  static get properties() {
22602
22815
  return {
22603
22816
  ...super.properties,
22604
22817
 
22818
+ /**
22819
+ * Applies a named layout variant to the menu. Free-form string consumed by the shared architecture helpers; menu defines no closed value set.
22820
+ */
22821
+ layout: {
22822
+ type: String,
22823
+ attribute: "layout",
22824
+ reflect: true
22825
+ },
22826
+
22827
+ /**
22828
+ * Sets the shape of the menu options.
22829
+ * @type {'box' | 'pill' | 'snowflake'}
22830
+ * @default 'box'
22831
+ */
22832
+ shape: {
22833
+ type: String,
22834
+ attribute: "shape",
22835
+ reflect: true
22836
+ },
22837
+
22838
+ /**
22839
+ * Sets the size of the menu options.
22840
+ * @type {'xs' | 'sm' | 'md' | 'lg' | 'xl'}
22841
+ * @default 'sm'
22842
+ */
22843
+ size: {
22844
+ type: String,
22845
+ attribute: "size",
22846
+ reflect: true
22847
+ },
22848
+
22605
22849
  /**
22606
22850
  * When true, the entire menu and all options are disabled.
22607
22851
  */
@@ -23883,9 +24127,36 @@ class AuroMenuOption extends AuroElement {
23883
24127
  static get properties() {
23884
24128
  return {
23885
24129
  ...super.properties,
24130
+
24131
+ /**
24132
+ * Sets the shape of the option. When unset, it inherits the shape of the parent `auro-menu`.
24133
+ * @type {'box' | 'pill' | 'snowflake'}
24134
+ * @default 'box'
24135
+ */
24136
+ shape: {
24137
+ type: String,
24138
+ attribute: "shape",
24139
+ reflect: true
24140
+ },
24141
+
24142
+ /**
24143
+ * Sets the size of the option. When unset, it inherits the size of the parent `auro-menu`.
24144
+ * @type {'xs' | 'sm' | 'md' | 'lg' | 'xl'}
24145
+ * @default 'sm'
24146
+ */
24147
+ size: {
24148
+ type: String,
24149
+ attribute: "size",
24150
+ reflect: true
24151
+ },
24152
+
24153
+ /**
24154
+ * When true, this option will not show the checkmark when selected.
24155
+ */
23886
24156
  noCheckmark: {
23887
24157
  type: Boolean,
23888
- reflect: true
24158
+ reflect: true,
24159
+ attribute: 'nocheckmark'
23889
24160
  },
23890
24161
 
23891
24162
  /**
@@ -23897,17 +24168,30 @@ class AuroMenuOption extends AuroElement {
23897
24168
  type: Boolean,
23898
24169
  reflect: true
23899
24170
  },
24171
+
24172
+ /**
24173
+ * When true, the option is disabled and cannot be selected.
24174
+ */
23900
24175
  disabled: {
23901
24176
  type: Boolean,
23902
24177
  reflect: true
23903
24178
  },
24179
+
24180
+ /**
24181
+ * The value associated with this menu option.
24182
+ */
23904
24183
  value: {
23905
24184
  type: String,
23906
24185
  reflect: true
23907
24186
  },
24187
+
24188
+ /**
24189
+ * Sets the tab order of the menu option.
24190
+ */
23908
24191
  tabIndex: {
23909
24192
  type: Number,
23910
- reflect: true
24193
+ reflect: true,
24194
+ attribute: 'tabindex'
23911
24195
  },
23912
24196
 
23913
24197
  /**