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

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 +26 -18
  13. package/components/combobox/demo/customize.min.js +426 -126
  14. package/components/combobox/demo/getting-started.min.js +426 -126
  15. package/components/combobox/demo/index.min.js +426 -126
  16. package/components/combobox/dist/auro-combobox.d.ts +38 -21
  17. package/components/combobox/dist/index.js +338 -111
  18. package/components/combobox/dist/registered.js +338 -111
  19. package/components/counter/demo/api.md +34 -16
  20. package/components/counter/demo/customize.min.js +204 -64
  21. package/components/counter/demo/index.min.js +204 -64
  22. package/components/counter/dist/auro-counter-button.d.ts +4 -0
  23. package/components/counter/dist/auro-counter-group.d.ts +27 -4
  24. package/components/counter/dist/auro-counter.d.ts +7 -0
  25. package/components/counter/dist/index.js +204 -64
  26. package/components/counter/dist/registered.js +204 -64
  27. package/components/datepicker/demo/api.md +55 -49
  28. package/components/datepicker/demo/customize.min.js +515 -134
  29. package/components/datepicker/demo/index.min.js +515 -134
  30. package/components/datepicker/dist/auro-calendar-cell.d.ts +58 -4
  31. package/components/datepicker/dist/auro-calendar-month.d.ts +10 -4
  32. package/components/datepicker/dist/auro-calendar.d.ts +25 -6
  33. package/components/datepicker/dist/auro-datepicker.d.ts +70 -22
  34. package/components/datepicker/dist/index.js +515 -134
  35. package/components/datepicker/dist/registered.js +515 -134
  36. package/components/dropdown/demo/api.md +25 -22
  37. package/components/dropdown/demo/customize.min.js +107 -37
  38. package/components/dropdown/demo/getting-started.min.js +245 -82
  39. package/components/dropdown/demo/index.min.js +107 -37
  40. package/components/dropdown/dist/auro-dropdown.d.ts +34 -8
  41. package/components/dropdown/dist/auro-dropdownBib.d.ts +17 -5
  42. package/components/dropdown/dist/index.js +107 -37
  43. package/components/dropdown/dist/registered.js +107 -37
  44. package/components/form/demo/customize.min.js +1518 -466
  45. package/components/form/demo/getting-started.min.js +1518 -466
  46. package/components/form/demo/index.min.js +1518 -466
  47. package/components/form/demo/registerDemoDeps.min.js +1518 -466
  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 +138 -45
  53. package/components/input/demo/getting-started.min.js +138 -45
  54. package/components/input/demo/index.min.js +138 -45
  55. package/components/input/dist/base-input.d.ts +79 -25
  56. package/components/input/dist/index.js +138 -45
  57. package/components/input/dist/registered.js +138 -45
  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 +31 -27
  62. package/components/menu/demo/index.min.js +108 -35
  63. package/components/menu/dist/auro-menu.d.ts +26 -21
  64. package/components/menu/dist/auro-menuoption.d.ts +27 -1
  65. package/components/menu/dist/index.js +108 -35
  66. package/components/menu/dist/registered.js +108 -35
  67. package/components/radio/demo/api.md +8 -7
  68. package/components/radio/demo/customize.min.js +21 -7
  69. package/components/radio/demo/getting-started.min.js +21 -7
  70. package/components/radio/demo/index.min.js +21 -7
  71. package/components/radio/dist/auro-radio-group.d.ts +8 -3
  72. package/components/radio/dist/auro-radio.d.ts +1 -0
  73. package/components/radio/dist/index.js +21 -7
  74. package/components/radio/dist/registered.js +21 -7
  75. package/components/select/demo/api.md +18 -15
  76. package/components/select/demo/customize.min.js +259 -79
  77. package/components/select/demo/getting-started.min.js +259 -79
  78. package/components/select/demo/index.min.js +259 -79
  79. package/components/select/dist/auro-select.d.ts +17 -0
  80. package/components/select/dist/index.js +171 -64
  81. package/components/select/dist/registered.js +171 -64
  82. package/custom-elements.json +1189 -1336
  83. package/package.json +1 -1
@@ -3191,8 +3191,11 @@ const DESIGN_TOKEN_BREAKPOINT_OPTIONS = [
3191
3191
  ];
3192
3192
 
3193
3193
  /**
3194
+ * The `auro-dropdownbib` element renders the dropdown's bib as a dialog/popover container and manages its fullscreen and modal display.
3194
3195
  * @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.
3195
3196
  * @csspart bibContainer - Apply css to the bib container.
3197
+ * @event auro-dropdownbib-connected - Notifies that the dropdown bib has connected to the DOM, passing a reference to the element in the event detail.
3198
+ * @event auro-bib-cancel - Notifies that the bib was cancelled (e.g. via the ESC key) so parent components can close it.
3196
3199
  */
3197
3200
 
3198
3201
  class AuroDropdownBib extends i {
@@ -3207,9 +3210,17 @@ class AuroDropdownBib extends i {
3207
3210
 
3208
3211
  AuroLibraryRuntimeUtils$3.prototype.handleComponentTagRename(this, 'auro-dropdownbib');
3209
3212
 
3210
- this.shape = "rounded";
3211
3213
  this.matchWidth = false;
3212
3214
  this.hasActiveDescendant = false;
3215
+
3216
+ this.initializeArchitectureDefaults();
3217
+ }
3218
+
3219
+ // The `shape` default is set in a helper (not the constructor body) so the CEM
3220
+ // analyzer keeps its `@type` union instead of inferring `string` from a
3221
+ // constructor-literal assignment. See AlaskaAirlines/discussions#653.
3222
+ initializeArchitectureDefaults() {
3223
+ this.shape = "rounded";
3213
3224
  }
3214
3225
 
3215
3226
  static get styles() {
@@ -3228,6 +3239,7 @@ class AuroDropdownBib extends i {
3228
3239
  */
3229
3240
  isFullscreen: {
3230
3241
  type: Boolean,
3242
+ attribute: 'isfullscreen',
3231
3243
  reflect: true
3232
3244
  },
3233
3245
 
@@ -3253,6 +3265,7 @@ class AuroDropdownBib extends i {
3253
3265
  */
3254
3266
  matchWidth: {
3255
3267
  type: Boolean,
3268
+ attribute: 'matchwidth',
3256
3269
  reflect: true
3257
3270
  },
3258
3271
 
@@ -3268,11 +3281,18 @@ class AuroDropdownBib extends i {
3268
3281
  * A reference to the associated bib template element.
3269
3282
  */
3270
3283
  bibTemplate: {
3271
- type: Object
3284
+ type: Object,
3285
+ attribute: 'bibtemplate'
3272
3286
  },
3273
3287
 
3288
+ /**
3289
+ * Sets the shape of the dropdown bib.
3290
+ * @type {'box' | 'classic' | 'pill' | 'rounded' | 'snowflake'}
3291
+ * @default 'rounded'
3292
+ */
3274
3293
  shape: {
3275
3294
  type: String,
3295
+ attribute: "shape",
3276
3296
  reflect: true
3277
3297
  },
3278
3298
 
@@ -3284,7 +3304,8 @@ class AuroDropdownBib extends i {
3284
3304
  * @private
3285
3305
  */
3286
3306
  dialogLabel: {
3287
- type: String
3307
+ type: String,
3308
+ attribute: 'dialoglabel'
3288
3309
  },
3289
3310
 
3290
3311
  /**
@@ -3295,7 +3316,8 @@ class AuroDropdownBib extends i {
3295
3316
  * @private
3296
3317
  */
3297
3318
  dialogRole: {
3298
- type: String
3319
+ type: String,
3320
+ attribute: 'dialogrole'
3299
3321
  },
3300
3322
 
3301
3323
  /**
@@ -3303,7 +3325,8 @@ class AuroDropdownBib extends i {
3303
3325
  * @private
3304
3326
  */
3305
3327
  hasActiveDescendant: {
3306
- type: Boolean
3328
+ type: Boolean,
3329
+ attribute: 'hasactivedescendant'
3307
3330
  }
3308
3331
  };
3309
3332
  }
@@ -3654,6 +3677,8 @@ let AuroHelpText$1 = class AuroHelpText extends i {
3654
3677
  super();
3655
3678
 
3656
3679
  this.error = false;
3680
+
3681
+ /** @type {'default' | 'inverse'} */
3657
3682
  this.appearance = "default";
3658
3683
  this.onDark = false;
3659
3684
  this.hasTextContent = false;
@@ -3674,8 +3699,8 @@ let AuroHelpText$1 = class AuroHelpText extends i {
3674
3699
  return {
3675
3700
 
3676
3701
  /**
3677
- * Defines whether the component will be on lighter or darker backgrounds.
3678
- * @property {'default', 'inverse'} - The appearance of the help text, either default (for light backgrounds) or inverse (for dark backgrounds).
3702
+ * The appearance of the help text, either default (for light backgrounds) or inverse (for dark backgrounds).
3703
+ * @type {'default' | 'inverse'}
3679
3704
  * @default 'default'
3680
3705
  */
3681
3706
  appearance: {
@@ -3688,6 +3713,7 @@ let AuroHelpText$1 = class AuroHelpText extends i {
3688
3713
  */
3689
3714
  slotNodes: {
3690
3715
  type: Boolean,
3716
+ attribute: 'slotnodes',
3691
3717
  },
3692
3718
 
3693
3719
  /**
@@ -3695,6 +3721,7 @@ let AuroHelpText$1 = class AuroHelpText extends i {
3695
3721
  */
3696
3722
  hasTextContent: {
3697
3723
  type: Boolean,
3724
+ attribute: 'hastextcontent',
3698
3725
  },
3699
3726
 
3700
3727
  /**
@@ -3710,6 +3737,7 @@ let AuroHelpText$1 = class AuroHelpText extends i {
3710
3737
  */
3711
3738
  onDark: {
3712
3739
  type: Boolean,
3740
+ attribute: 'ondark',
3713
3741
  reflect: true
3714
3742
  }
3715
3743
  };
@@ -3780,39 +3808,39 @@ let AuroHelpText$1 = class AuroHelpText extends i {
3780
3808
  }
3781
3809
  };
3782
3810
 
3783
- var formkitVersion$1 = '202608261850';
3811
+ var formkitVersion$1 = '202608300032';
3784
3812
 
3813
+ /**
3814
+ * AuroElement is the shared base class for layout-aware Auro form components.
3815
+ *
3816
+ * It defines the common `layout`, `shape`, `size`, and `ondark` reactive
3817
+ * properties and the architecture helpers (`renderLayout`, `resetShapeClasses`,
3818
+ * `resetLayoutClasses`) that subclasses use to render a chosen layout and apply
3819
+ * the matching `shape-*` / `layout-*` wrapper classes. Subclasses supply their
3820
+ * own default and valid value set for `layout`, `shape`, and `size`.
3821
+ */
3785
3822
  let AuroElement$1 = class AuroElement extends i {
3786
3823
  static get properties() {
3787
3824
  return {
3788
3825
 
3789
3826
  /**
3790
- * Defines the language of an element.
3791
- * @default {'default'}
3827
+ * When true, renders the component styled for use on a dark background.
3792
3828
  */
3793
- layout: {
3794
- type: String,
3795
- attribute: "layout",
3796
- reflect: true
3797
- },
3798
-
3799
- shape: {
3800
- type: String,
3801
- attribute: "shape",
3802
- reflect: true
3803
- },
3804
-
3805
- size: {
3806
- type: String,
3807
- attribute: "size",
3808
- reflect: true
3809
- },
3810
-
3811
3829
  onDark: {
3812
3830
  type: Boolean,
3813
3831
  attribute: "ondark",
3814
3832
  reflect: true
3815
3833
  }
3834
+
3835
+ // NOTE: `layout`, `shape`, and `size` are intentionally NOT declared here.
3836
+ // Their valid value sets differ per component, and the CEM analyzer roots
3837
+ // an inherited property's `type` in the class that declares it — a base
3838
+ // declaration would force every subclass's `@type` to be discarded and
3839
+ // emitted as plain `string`. Each subclass declares its own `layout` /
3840
+ // `shape` / `size` with an exact `@type` union instead. AuroElement still
3841
+ // consumes `this.layout` / `this.shape` / `this.size` in its render and
3842
+ // architecture helpers below (subclasses guarantee the reactive props).
3843
+ // See AlaskaAirlines/discussions#653.
3816
3844
  };
3817
3845
  }
3818
3846
 
@@ -3898,6 +3926,7 @@ let AuroElement$1 = class AuroElement extends i {
3898
3926
  * @slot helpText - Defines the content of the helpText.
3899
3927
  * @slot trigger - Defines the content of the trigger.
3900
3928
  * @csspart trigger - The trigger content container.
3929
+ * @csspart wrapper - The trigger wrapper element surrounding the trigger content and chevron.
3901
3930
  * @csspart chevron - The collapsed/expanded state icon container.
3902
3931
  * @csspart size - The size of the dropdown bib. (height, width, maxHeight, maxWidth only)
3903
3932
  * @csspart helpText - The helpText content container.
@@ -3922,7 +3951,7 @@ class AuroDropdown extends AuroElement$1 {
3922
3951
 
3923
3952
  /**
3924
3953
  * When true, the dropdown skips its generic focus restoration on close.
3925
- * Set by consumers (e.g. combobox) that manage their own focus routing
3954
+ * Set by consumers (for example combobox) that manage their own focus routing
3926
3955
  * via setClearBtnFocus / setInputFocus / keyboard strategy.
3927
3956
  * Separate from noHideOnThisFocusLoss (which controls auto-close behavior).
3928
3957
  * @private
@@ -4091,7 +4120,7 @@ class AuroDropdown extends AuroElement$1 {
4091
4120
  /**
4092
4121
  * Focus the trigger content. When the trigger wrapper itself is focusable
4093
4122
  * (has tabindex), focus it directly. Otherwise, focus the first focusable
4094
- * element slotted into the trigger slot (e.g. the auro-input).
4123
+ * element slotted into the trigger slot (for example the auro-input).
4095
4124
  * @private
4096
4125
  */
4097
4126
  focusTrigger() {
@@ -4188,6 +4217,7 @@ class AuroDropdown extends AuroElement$1 {
4188
4217
  */
4189
4218
  autoPlacement: {
4190
4219
  type: Boolean,
4220
+ attribute: 'autoplacement',
4191
4221
  reflect: true
4192
4222
  },
4193
4223
 
@@ -4196,6 +4226,7 @@ class AuroDropdown extends AuroElement$1 {
4196
4226
  */
4197
4227
  desktopModal: {
4198
4228
  type: Boolean,
4229
+ attribute: 'desktopmodal',
4199
4230
  reflect: true
4200
4231
  },
4201
4232
 
@@ -4204,6 +4235,7 @@ class AuroDropdown extends AuroElement$1 {
4204
4235
  */
4205
4236
  disableEventShow: {
4206
4237
  type: Boolean,
4238
+ attribute: 'disableeventshow',
4207
4239
  reflect: true
4208
4240
  },
4209
4241
 
@@ -4237,14 +4269,16 @@ class AuroDropdown extends AuroElement$1 {
4237
4269
  */
4238
4270
  disableKeyboardHandling: {
4239
4271
  type: Boolean,
4272
+ attribute: 'disablekeyboardhandling',
4240
4273
  reflect: true
4241
4274
  },
4242
4275
 
4243
4276
  /**
4244
- * @private
4277
+ * Sets the width of the dropdown bib in pixels.
4245
4278
  */
4246
4279
  dropdownWidth: {
4247
- type: Number
4280
+ type: Number,
4281
+ attribute: 'dropdownwidth'
4248
4282
  },
4249
4283
 
4250
4284
  /**
@@ -4269,7 +4303,8 @@ class AuroDropdown extends AuroElement$1 {
4269
4303
  * Contains the help text message for the current validity error.
4270
4304
  */
4271
4305
  errorMessage: {
4272
- type: String
4306
+ type: String,
4307
+ attribute: 'errormessage'
4273
4308
  },
4274
4309
 
4275
4310
  /**
@@ -4277,6 +4312,7 @@ class AuroDropdown extends AuroElement$1 {
4277
4312
  */
4278
4313
  focusShow: {
4279
4314
  type: Boolean,
4315
+ attribute: 'focusshow',
4280
4316
  reflect: true
4281
4317
  },
4282
4318
 
@@ -4294,6 +4330,7 @@ class AuroDropdown extends AuroElement$1 {
4294
4330
  */
4295
4331
  isBibFullscreen: {
4296
4332
  type: Boolean,
4333
+ attribute: 'isbibfullscreen',
4297
4334
  reflect: true
4298
4335
  },
4299
4336
 
@@ -4302,6 +4339,7 @@ class AuroDropdown extends AuroElement$1 {
4302
4339
  */
4303
4340
  hoverToggle: {
4304
4341
  type: Boolean,
4342
+ attribute: 'hovertoggle',
4305
4343
  reflect: true
4306
4344
  },
4307
4345
 
@@ -4309,7 +4347,8 @@ class AuroDropdown extends AuroElement$1 {
4309
4347
  * @private
4310
4348
  */
4311
4349
  hasTriggerContent: {
4312
- type: Boolean
4350
+ type: Boolean,
4351
+ attribute: false
4313
4352
  },
4314
4353
 
4315
4354
  /**
@@ -4322,6 +4361,7 @@ class AuroDropdown extends AuroElement$1 {
4322
4361
  */
4323
4362
  fullscreenBreakpoint: {
4324
4363
  type: String,
4364
+ attribute: "fullscreenbreakpoint",
4325
4365
  reflect: true
4326
4366
  },
4327
4367
 
@@ -4332,6 +4372,27 @@ class AuroDropdown extends AuroElement$1 {
4332
4372
  */
4333
4373
  layout: {
4334
4374
  type: String,
4375
+ attribute: "layout",
4376
+ reflect: true
4377
+ },
4378
+
4379
+ /**
4380
+ * Sets the shape of the dropdown.
4381
+ * @type {'box' | 'classic' | 'pill' | 'pill-left' | 'pill-right' | 'rounded' | 'snowflake'}
4382
+ */
4383
+ shape: {
4384
+ type: String,
4385
+ attribute: "shape",
4386
+ reflect: true
4387
+ },
4388
+
4389
+ /**
4390
+ * Sets the size of the dropdown.
4391
+ * @type {'xs' | 'sm' | 'md' | 'lg' | 'xl'}
4392
+ */
4393
+ size: {
4394
+ type: String,
4395
+ attribute: "size",
4335
4396
  reflect: true
4336
4397
  },
4337
4398
 
@@ -4341,6 +4402,7 @@ class AuroDropdown extends AuroElement$1 {
4341
4402
  */
4342
4403
  parentBorder: {
4343
4404
  type: Boolean,
4405
+ attribute: 'parentborder',
4344
4406
  reflect: true
4345
4407
  },
4346
4408
 
@@ -4349,6 +4411,7 @@ class AuroDropdown extends AuroElement$1 {
4349
4411
  */
4350
4412
  matchWidth: {
4351
4413
  type: Boolean,
4414
+ attribute: 'matchwidth',
4352
4415
  reflect: true
4353
4416
  },
4354
4417
 
@@ -4358,6 +4421,7 @@ class AuroDropdown extends AuroElement$1 {
4358
4421
  */
4359
4422
  noFlip: {
4360
4423
  type: Boolean,
4424
+ attribute: 'noflip',
4361
4425
  reflect: true
4362
4426
  },
4363
4427
 
@@ -4374,6 +4438,7 @@ class AuroDropdown extends AuroElement$1 {
4374
4438
  */
4375
4439
  noHideOnThisFocusLoss: {
4376
4440
  type: Boolean,
4441
+ attribute: 'nohideonthisfocusloss',
4377
4442
  reflect: true
4378
4443
  },
4379
4444
 
@@ -4382,6 +4447,7 @@ class AuroDropdown extends AuroElement$1 {
4382
4447
  */
4383
4448
  noToggle: {
4384
4449
  type: Boolean,
4450
+ attribute: 'notoggle',
4385
4451
  reflect: true
4386
4452
  },
4387
4453
 
@@ -4399,14 +4465,17 @@ class AuroDropdown extends AuroElement$1 {
4399
4465
  */
4400
4466
  onDark: {
4401
4467
  type: Boolean,
4468
+ attribute: 'ondark',
4402
4469
  reflect: true
4403
4470
  },
4404
4471
 
4405
4472
  /**
4406
4473
  * If declared, and a function is set, that function will execute when the slot content is updated.
4474
+ * @type {() => void}
4407
4475
  */
4408
4476
  onSlotChange: {
4409
4477
  type: Function,
4478
+ attribute: 'onslotchange',
4410
4479
  reflect: false
4411
4480
  },
4412
4481
 
@@ -4421,10 +4490,11 @@ class AuroDropdown extends AuroElement$1 {
4421
4490
  },
4422
4491
 
4423
4492
  /**
4424
- * @private
4493
+ * Sets the tabindex applied to the dropdown trigger for keyboard focus order.
4425
4494
  */
4426
4495
  tabIndex: {
4427
- type: Number
4496
+ type: Number,
4497
+ attribute: 'tabindex'
4428
4498
  },
4429
4499
 
4430
4500
  /**
@@ -4648,7 +4718,7 @@ class AuroDropdown extends AuroElement$1 {
4648
4718
  /**
4649
4719
  * @description Let subscribers know that the dropdown ID ha been generated and added.
4650
4720
  * @event auroDropdown-idAdded
4651
- * @type {Object<key: 'id', value: string>} - The ID of the dropdown bib element.
4721
+ * @type {CustomEvent<{ id: string }>} - Detail carries the generated ID of the dropdown bib element.
4652
4722
  */
4653
4723
  this.dispatchEvent(new CustomEvent('auroDropdown-idAdded', {detail: {id: this.floater.element.id}}));
4654
4724
 
@@ -9797,37 +9867,37 @@ class AuroFormValidation {
9797
9867
  }
9798
9868
  }
9799
9869
 
9870
+ /**
9871
+ * AuroElement is the shared base class for layout-aware Auro form components.
9872
+ *
9873
+ * It defines the common `layout`, `shape`, `size`, and `ondark` reactive
9874
+ * properties and the architecture helpers (`renderLayout`, `resetShapeClasses`,
9875
+ * `resetLayoutClasses`) that subclasses use to render a chosen layout and apply
9876
+ * the matching `shape-*` / `layout-*` wrapper classes. Subclasses supply their
9877
+ * own default and valid value set for `layout`, `shape`, and `size`.
9878
+ */
9800
9879
  class AuroElement extends i {
9801
9880
  static get properties() {
9802
9881
  return {
9803
9882
 
9804
9883
  /**
9805
- * Defines the language of an element.
9806
- * @default {'default'}
9884
+ * When true, renders the component styled for use on a dark background.
9807
9885
  */
9808
- layout: {
9809
- type: String,
9810
- attribute: "layout",
9811
- reflect: true
9812
- },
9813
-
9814
- shape: {
9815
- type: String,
9816
- attribute: "shape",
9817
- reflect: true
9818
- },
9819
-
9820
- size: {
9821
- type: String,
9822
- attribute: "size",
9823
- reflect: true
9824
- },
9825
-
9826
9886
  onDark: {
9827
9887
  type: Boolean,
9828
9888
  attribute: "ondark",
9829
9889
  reflect: true
9830
9890
  }
9891
+
9892
+ // NOTE: `layout`, `shape`, and `size` are intentionally NOT declared here.
9893
+ // Their valid value sets differ per component, and the CEM analyzer roots
9894
+ // an inherited property's `type` in the class that declares it — a base
9895
+ // declaration would force every subclass's `@type` to be discarded and
9896
+ // emitted as plain `string`. Each subclass declares its own `layout` /
9897
+ // `shape` / `size` with an exact `@type` union instead. AuroElement still
9898
+ // consumes `this.layout` / `this.shape` / `this.size` in its render and
9899
+ // architecture helpers below (subclasses guarantee the reactive props).
9900
+ // See AlaskaAirlines/discussions#653.
9831
9901
  };
9832
9902
  }
9833
9903
 
@@ -15794,6 +15864,7 @@ class DomHandler {
15794
15864
  * Base class for auro-input component that provides core input functionality.
15795
15865
  * @event input - Event fires when the value of an `auro-input` has been changed.
15796
15866
  * @event auroFormElement-validated - Notifies that the `validity` and `errorMessage` value has changed.
15867
+ * @event auroInput-validityChange - Notifies that the `validity` state of the input has changed.
15797
15868
  */
15798
15869
  class BaseInput extends AuroElement {
15799
15870
 
@@ -15824,7 +15895,10 @@ class BaseInput extends AuroElement {
15824
15895
  // during its own update cycle sees a populated util instance.
15825
15896
  this.activeLabel = false;
15826
15897
 
15827
- /** @private */
15898
+ /**
15899
+ * @private
15900
+ * @type {string[]}
15901
+ */
15828
15902
  this.allowedInputTypes = [
15829
15903
  "text",
15830
15904
  "number",
@@ -15833,9 +15907,14 @@ class BaseInput extends AuroElement {
15833
15907
  "credit-card",
15834
15908
  "tel"
15835
15909
  ];
15910
+
15911
+ /** @type {'default' | 'inverse'} */
15836
15912
  this.appearance = "default";
15837
15913
 
15838
- /** @private */
15914
+ /**
15915
+ * @private
15916
+ * @type {Record<string, string>}
15917
+ */
15839
15918
  this.dateFormatMap = {
15840
15919
  'mm/dd/yyyy': 'dateMMDDYYYY',
15841
15920
  'dd/mm/yyyy': 'dateDDMMYYYY',
@@ -15866,7 +15945,6 @@ class BaseInput extends AuroElement {
15866
15945
 
15867
15946
  /** @private */
15868
15947
  this.label = 'Input label is undefined';
15869
- this.layout = 'classic';
15870
15948
  this.locale = 'en-US';
15871
15949
  this._format = undefined;
15872
15950
 
@@ -15882,17 +15960,18 @@ class BaseInput extends AuroElement {
15882
15960
  this.setCustomValidityForType = undefined;
15883
15961
  // Credit Card is intentionally excluded — its mask manages the cursor
15884
15962
  // itself, and listing it here caused cursor placement issues in Safari.
15885
- /** @private */
15963
+ /**
15964
+ * @private
15965
+ * @type {string[]}
15966
+ */
15886
15967
  this.setSelectionInputTypes = [
15887
15968
  "text",
15888
15969
  "password",
15889
15970
  "email"
15890
15971
  ];
15891
- this.shape = 'classic';
15892
15972
 
15893
15973
  /** @private */
15894
15974
  this.showPassword = false;
15895
- this.size = 'lg';
15896
15975
  this.touched = false;
15897
15976
 
15898
15977
  /** @private */
@@ -15910,6 +15989,24 @@ class BaseInput extends AuroElement {
15910
15989
  /** @private */
15911
15990
  this.validationCCLength = undefined;
15912
15991
  this.value = undefined;
15992
+
15993
+ this.initializeArchitectureDefaults();
15994
+ }
15995
+
15996
+ /**
15997
+ * Sets the default `layout`, `shape`, and `size` values.
15998
+ *
15999
+ * These are assigned in a helper method rather than the constructor body so
16000
+ * the CEM analyzer keeps their `@type` string-literal unions (a literal
16001
+ * assignment in the constructor would make the analyzer infer `string` and
16002
+ * override the union — see AlaskaAirlines/discussions#653, gotcha 1).
16003
+ * @private
16004
+ * @returns {void}
16005
+ */
16006
+ initializeArchitectureDefaults() {
16007
+ this.layout = 'classic';
16008
+ this.shape = 'classic';
16009
+ this.size = 'lg';
15913
16010
  }
15914
16011
 
15915
16012
  // function to define props used within the scope of this component
@@ -15917,11 +16014,45 @@ class BaseInput extends AuroElement {
15917
16014
  return {
15918
16015
  ...super.properties,
15919
16016
 
16017
+ /**
16018
+ * Sets the layout variant of the input.
16019
+ * @type {'classic' | 'emphasized' | 'emphasized-left' | 'emphasized-right' | 'snowflake' | 'snowflake-left' | 'snowflake-right'}
16020
+ * @default 'classic'
16021
+ */
16022
+ layout: {
16023
+ type: String,
16024
+ attribute: "layout",
16025
+ reflect: true
16026
+ },
16027
+
16028
+ /**
16029
+ * Sets the shape of the input.
16030
+ * @type {'box' | 'classic' | 'pill' | 'pill-left' | 'pill-right' | 'rounded' | 'snowflake'}
16031
+ * @default 'classic'
16032
+ */
16033
+ shape: {
16034
+ type: String,
16035
+ attribute: "shape",
16036
+ reflect: true
16037
+ },
16038
+
16039
+ /**
16040
+ * Sets the size of the input.
16041
+ * @type {'xs' | 'sm' | 'md' | 'lg' | 'xl'}
16042
+ * @default 'lg'
16043
+ */
16044
+ size: {
16045
+ type: String,
16046
+ attribute: "size",
16047
+ reflect: true
16048
+ },
16049
+
15920
16050
  /**
15921
16051
  * The value for the role attribute.
15922
16052
  */
15923
16053
  a11yRole: {
15924
16054
  type: String,
16055
+ attribute: 'a11yrole',
15925
16056
  reflect: true
15926
16057
  },
15927
16058
 
@@ -15930,6 +16061,7 @@ class BaseInput extends AuroElement {
15930
16061
  */
15931
16062
  a11yControls: {
15932
16063
  type: String,
16064
+ attribute: 'a11ycontrols',
15933
16065
  reflect: true
15934
16066
  },
15935
16067
 
@@ -15938,6 +16070,7 @@ class BaseInput extends AuroElement {
15938
16070
  */
15939
16071
  a11yExpanded: {
15940
16072
  type: Boolean,
16073
+ attribute: 'a11yexpanded',
15941
16074
  reflect: true
15942
16075
  },
15943
16076
 
@@ -15947,6 +16080,7 @@ class BaseInput extends AuroElement {
15947
16080
  */
15948
16081
  a11yActivedescendant: {
15949
16082
  type: String,
16083
+ attribute: 'a11yactivedescendant',
15950
16084
  reflect: true
15951
16085
  },
15952
16086
 
@@ -15957,6 +16091,7 @@ class BaseInput extends AuroElement {
15957
16091
  */
15958
16092
  activeLabel: {
15959
16093
  type: Boolean,
16094
+ attribute: 'activelabel',
15960
16095
  reflect: true
15961
16096
  },
15962
16097
 
@@ -15971,7 +16106,8 @@ class BaseInput extends AuroElement {
15971
16106
  },
15972
16107
 
15973
16108
  /**
15974
- * 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].
16109
+ * An enumerated attribute that controls whether and how text input is automatically capitalized as it is entered/edited by the user.
16110
+ * @type {'off' | 'none' | 'on' | 'sentences' | 'words' | 'characters'}
15975
16111
  */
15976
16112
  autocapitalize: {
15977
16113
  type: String,
@@ -15988,6 +16124,7 @@ class BaseInput extends AuroElement {
15988
16124
 
15989
16125
  /**
15990
16126
  * When set to `off`, stops iOS from auto-correcting words when typed into a text box.
16127
+ * @type {'on' | 'off'}
15991
16128
  */
15992
16129
  autocorrect: {
15993
16130
  type: String,
@@ -15998,7 +16135,8 @@ class BaseInput extends AuroElement {
15998
16135
  * Custom help text message for email type validity.
15999
16136
  */
16000
16137
  customValidityTypeEmail: {
16001
- type: String
16138
+ type: String,
16139
+ attribute: 'customvaliditytypeemail'
16002
16140
  },
16003
16141
 
16004
16142
  /**
@@ -16014,6 +16152,7 @@ class BaseInput extends AuroElement {
16014
16152
  */
16015
16153
  dvInputOnly: {
16016
16154
  type: Boolean,
16155
+ attribute: 'dvinputonly',
16017
16156
  reflect: true
16018
16157
  },
16019
16158
 
@@ -16029,7 +16168,8 @@ class BaseInput extends AuroElement {
16029
16168
  * Contains the help text message for the current validity error.
16030
16169
  */
16031
16170
  errorMessage: {
16032
- type: String
16171
+ type: String,
16172
+ attribute: 'errormessage'
16033
16173
  },
16034
16174
 
16035
16175
  /**
@@ -16065,6 +16205,7 @@ class BaseInput extends AuroElement {
16065
16205
  */
16066
16206
  hideLabelVisually: {
16067
16207
  type: Boolean,
16208
+ attribute: 'hidelabelvisually',
16068
16209
  reflect: true
16069
16210
  },
16070
16211
 
@@ -16131,6 +16272,7 @@ class BaseInput extends AuroElement {
16131
16272
  */
16132
16273
  maxLength: {
16133
16274
  type: Number,
16275
+ attribute: 'maxlength',
16134
16276
  reflect: true
16135
16277
  },
16136
16278
 
@@ -16146,6 +16288,7 @@ class BaseInput extends AuroElement {
16146
16288
  */
16147
16289
  minLength: {
16148
16290
  type: Number,
16291
+ attribute: 'minlength',
16149
16292
  reflect: true
16150
16293
  },
16151
16294
 
@@ -16171,6 +16314,7 @@ class BaseInput extends AuroElement {
16171
16314
  */
16172
16315
  noValidate: {
16173
16316
  type: Boolean,
16317
+ attribute: 'novalidate',
16174
16318
  reflect: true
16175
16319
  },
16176
16320
 
@@ -16179,6 +16323,7 @@ class BaseInput extends AuroElement {
16179
16323
  */
16180
16324
  onDark: {
16181
16325
  type: Boolean,
16326
+ attribute: 'ondark',
16182
16327
  reflect: true
16183
16328
  },
16184
16329
 
@@ -16218,77 +16363,88 @@ class BaseInput extends AuroElement {
16218
16363
  * Sets a custom help text message to display for all validityStates.
16219
16364
  */
16220
16365
  setCustomValidity: {
16221
- type: String
16366
+ type: String,
16367
+ attribute: 'setcustomvalidity'
16222
16368
  },
16223
16369
 
16224
16370
  /**
16225
16371
  * Custom help text message to display when validity = `badInput`.
16226
16372
  */
16227
16373
  setCustomValidityBadInput: {
16228
- type: String
16374
+ type: String,
16375
+ attribute: 'setcustomvaliditybadinput'
16229
16376
  },
16230
16377
 
16231
16378
  /**
16232
16379
  * Custom help text message to display when validity = `customError`.
16233
16380
  */
16234
16381
  setCustomValidityCustomError: {
16235
- type: String
16382
+ type: String,
16383
+ attribute: 'setcustomvaliditycustomerror'
16236
16384
  },
16237
16385
 
16238
16386
  /**
16239
16387
  * Custom help text message to display for the declared element `type` and type validity fails.
16240
16388
  */
16241
16389
  setCustomValidityForType: {
16242
- type: String
16390
+ type: String,
16391
+ attribute: 'setcustomvalidityfortype'
16243
16392
  },
16244
16393
 
16245
16394
  /**
16246
16395
  * Custom help text message to display when validity = `patternMismatch`.
16247
16396
  */
16248
16397
  setCustomValidityPatternMismatch: {
16249
- type: String
16398
+ type: String,
16399
+ attribute: 'setcustomvaliditypatternmismatch'
16250
16400
  },
16251
16401
 
16252
16402
  /**
16253
16403
  * Custom help text message to display when validity = `rangeOverflow`.
16254
16404
  */
16255
16405
  setCustomValidityRangeOverflow: {
16256
- type: String
16406
+ type: String,
16407
+ attribute: 'setcustomvalidityrangeoverflow'
16257
16408
  },
16258
16409
 
16259
16410
  /**
16260
16411
  * Custom help text message to display when validity = `rangeUnderflow`.
16261
16412
  */
16262
16413
  setCustomValidityRangeUnderflow: {
16263
- type: String
16414
+ type: String,
16415
+ attribute: 'setcustomvalidityrangeunderflow'
16264
16416
  },
16265
16417
 
16266
16418
  /**
16267
16419
  * Custom help text message to display when validity = `tooLong`.
16268
16420
  */
16269
16421
  setCustomValidityTooLong: {
16270
- type: String
16422
+ type: String,
16423
+ attribute: 'setcustomvaliditytoolong'
16271
16424
  },
16272
16425
 
16273
16426
  /**
16274
16427
  * Custom help text message to display when validity = `tooShort`.
16275
16428
  */
16276
16429
  setCustomValidityTooShort: {
16277
- type: String
16430
+ type: String,
16431
+ attribute: 'setcustomvaliditytooshort'
16278
16432
  },
16279
16433
 
16280
16434
  /**
16281
16435
  * Custom help text message to display when validity = `valueMissing`.
16282
16436
  */
16283
16437
  setCustomValidityValueMissing: {
16284
- type: String
16438
+ type: String,
16439
+ attribute: 'setcustomvalidityvaluemissing'
16285
16440
  },
16286
16441
 
16287
16442
  /**
16288
16443
  * @ignore
16289
16444
  */
16290
16445
  showPassword: {
16291
- state: true
16446
+ state: true,
16447
+ attribute: false
16292
16448
  },
16293
16449
 
16294
16450
  /**
@@ -16300,7 +16456,8 @@ class BaseInput extends AuroElement {
16300
16456
  },
16301
16457
 
16302
16458
  /**
16303
- * 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`.
16459
+ * 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`.
16460
+ * @type {'true' | 'false'}
16304
16461
  */
16305
16462
  spellcheck: {
16306
16463
  type: String,
@@ -16331,7 +16488,8 @@ class BaseInput extends AuroElement {
16331
16488
  * Sets validation mode to re-eval with each input.
16332
16489
  */
16333
16490
  validateOnInput: {
16334
- type: Boolean
16491
+ type: Boolean,
16492
+ attribute: 'validateoninput'
16335
16493
  },
16336
16494
 
16337
16495
  /**
@@ -17385,6 +17543,8 @@ class AuroHelpText extends i {
17385
17543
  super();
17386
17544
 
17387
17545
  this.error = false;
17546
+
17547
+ /** @type {'default' | 'inverse'} */
17388
17548
  this.appearance = "default";
17389
17549
  this.onDark = false;
17390
17550
  this.hasTextContent = false;
@@ -17405,8 +17565,8 @@ class AuroHelpText extends i {
17405
17565
  return {
17406
17566
 
17407
17567
  /**
17408
- * Defines whether the component will be on lighter or darker backgrounds.
17409
- * @property {'default', 'inverse'} - The appearance of the help text, either default (for light backgrounds) or inverse (for dark backgrounds).
17568
+ * The appearance of the help text, either default (for light backgrounds) or inverse (for dark backgrounds).
17569
+ * @type {'default' | 'inverse'}
17410
17570
  * @default 'default'
17411
17571
  */
17412
17572
  appearance: {
@@ -17419,6 +17579,7 @@ class AuroHelpText extends i {
17419
17579
  */
17420
17580
  slotNodes: {
17421
17581
  type: Boolean,
17582
+ attribute: 'slotnodes',
17422
17583
  },
17423
17584
 
17424
17585
  /**
@@ -17426,6 +17587,7 @@ class AuroHelpText extends i {
17426
17587
  */
17427
17588
  hasTextContent: {
17428
17589
  type: Boolean,
17590
+ attribute: 'hastextcontent',
17429
17591
  },
17430
17592
 
17431
17593
  /**
@@ -17441,6 +17603,7 @@ class AuroHelpText extends i {
17441
17603
  */
17442
17604
  onDark: {
17443
17605
  type: Boolean,
17606
+ attribute: 'ondark',
17444
17607
  reflect: true
17445
17608
  }
17446
17609
  };
@@ -17511,7 +17674,7 @@ class AuroHelpText extends i {
17511
17674
  }
17512
17675
  }
17513
17676
 
17514
- var formkitVersion = '202608261850';
17677
+ var formkitVersion = '202608300032';
17515
17678
 
17516
17679
  // Copyright (c) 2025 Alaska Airlines. All right reserved. Licensed under the Apache-2.0 license
17517
17680
  // See LICENSE in the project root for license information.