@aurodesignsystem/auro-formkit 3.2.8 → 3.3.0-beta.2

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 (55) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/components/checkbox/README.md +1 -1
  3. package/components/checkbox/demo/readme.md +1 -1
  4. package/components/combobox/README.md +1 -1
  5. package/components/combobox/demo/api.md +1 -1
  6. package/components/combobox/demo/api.min.js +26 -5
  7. package/components/combobox/demo/index.min.js +26 -5
  8. package/components/combobox/demo/readme.md +1 -1
  9. package/components/combobox/dist/auro-combobox.d.ts +5 -2
  10. package/components/combobox/dist/index.js +26 -5
  11. package/components/combobox/dist/registered.js +26 -5
  12. package/components/counter/README.md +1 -1
  13. package/components/counter/demo/api.md +1 -1
  14. package/components/counter/demo/api.min.js +26 -5
  15. package/components/counter/demo/index.min.js +26 -5
  16. package/components/counter/demo/readme.md +1 -1
  17. package/components/counter/dist/auro-counter-group.d.ts +5 -2
  18. package/components/counter/dist/index.js +26 -5
  19. package/components/counter/dist/registered.js +26 -5
  20. package/components/datepicker/README.md +1 -1
  21. package/components/datepicker/demo/api.md +1 -0
  22. package/components/datepicker/demo/api.min.js +36 -4
  23. package/components/datepicker/demo/index.min.js +36 -4
  24. package/components/datepicker/demo/readme.md +1 -1
  25. package/components/datepicker/dist/auro-datepicker.d.ts +13 -0
  26. package/components/datepicker/dist/index.js +36 -4
  27. package/components/datepicker/dist/registered.js +36 -4
  28. package/components/dropdown/README.md +1 -1
  29. package/components/dropdown/demo/api.md +1 -1
  30. package/components/dropdown/demo/api.min.js +21 -3
  31. package/components/dropdown/demo/index.md +83 -0
  32. package/components/dropdown/demo/index.min.js +21 -3
  33. package/components/dropdown/demo/readme.md +1 -1
  34. package/components/dropdown/dist/auro-dropdown.d.ts +12 -1
  35. package/components/dropdown/dist/index.js +21 -3
  36. package/components/dropdown/dist/registered.js +21 -3
  37. package/components/form/README.md +1 -1
  38. package/components/form/demo/autocomplete.html +15 -0
  39. package/components/form/demo/readme.md +1 -1
  40. package/components/input/README.md +1 -1
  41. package/components/input/demo/readme.md +1 -1
  42. package/components/menu/README.md +1 -1
  43. package/components/menu/demo/readme.md +1 -1
  44. package/components/radio/README.md +1 -1
  45. package/components/radio/demo/readme.md +1 -1
  46. package/components/select/README.md +1 -1
  47. package/components/select/demo/api.md +1 -1
  48. package/components/select/demo/api.min.js +26 -5
  49. package/components/select/demo/index.md +46 -1
  50. package/components/select/demo/index.min.js +26 -5
  51. package/components/select/demo/readme.md +1 -1
  52. package/components/select/dist/auro-select.d.ts +5 -2
  53. package/components/select/dist/index.js +26 -5
  54. package/components/select/dist/registered.js +26 -5
  55. package/package.json +1 -1
@@ -111,7 +111,7 @@ The use of any Auro custom element has a dependency on the [Auro Design Tokens](
111
111
  In cases where the project is not able to process JS assets, there are pre-processed assets available for use. Legacy browsers such as IE11 are no longer supported.
112
112
 
113
113
  ```html
114
- <script type="module" src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@3.2.7/auro-select/+esm"></script>
114
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@3.2.8/auro-select/+esm"></script>
115
115
  ```
116
116
  <!-- AURO-GENERATED-CONTENT:END -->
117
117
 
@@ -20,7 +20,7 @@ The auro-select element is a wrapper for auro-dropdown and auro-menu to create a
20
20
  | [disabled](#disabled) | `disabled` | `boolean` | | When attribute is present, element shows disabled state. |
21
21
  | [error](#error) | `error` | `string` | | When defined, sets persistent validity to `customError` and sets `setCustomValidity` = attribute value. |
22
22
  | [flexMenuWidth](#flexMenuWidth) | `flexMenuWidth` | `boolean` | | If set, makes dropdown width match the size of the content, rather than the width of the trigger. |
23
- | [fullscreenBreakpoint](#fullscreenBreakpoint) | `fullscreenBreakpoint` | `string` | "sm" | Defines the screen size breakpoint (`lg`, `md`, `sm`, or `xs`) at which the dropdown switches to fullscreen mode on mobile.<br />When expanded, the dropdown will automatically display in fullscreen mode if the screen size is equal to or smaller than the selected breakpoint. |
23
+ | [fullscreenBreakpoint](#fullscreenBreakpoint) | `fullscreenBreakpoint` | `string` | "sm" | Defines the screen size breakpoint (`xs`, `sm`, `md`, `lg`, `xl`, `disabled`)<br />at which the dropdown switches to fullscreen mode on mobile. `disabled` indicates a dropdown should _never_ enter fullscreen.<br /><br />When expanded, the dropdown will automatically display in fullscreen mode<br />if the screen size is equal to or smaller than the selected breakpoint. |
24
24
  | [largeFullscreenHeadline](#largeFullscreenHeadline) | `largeFullscreenHeadline` | `boolean` | | If declared, make bib.fullscreen.headline in HeadingDisplay.<br />Otherwise, Heading 600 |
25
25
  | [multiSelect](#multiSelect) | `multiselect` | `boolean` | | Sets multi-select mode, allowing multiple options to be selected at once. |
26
26
  | [noCheckmark](#noCheckmark) | `noCheckmark` | `boolean` | | When true, checkmark on selected option will no longer be present. |
@@ -3586,6 +3586,7 @@ var tokensCss$1$1 = i$5`:host{--ds-auro-dropdown-label-text-color: var(--ds-basi
3586
3586
 
3587
3587
  const DESIGN_TOKEN_BREAKPOINT_PREFIX = '--ds-grid-breakpoint-';
3588
3588
  const DESIGN_TOKEN_BREAKPOINT_OPTIONS = [
3589
+ 'xl',
3589
3590
  'lg',
3590
3591
  'md',
3591
3592
  'sm',
@@ -3657,6 +3658,7 @@ class AuroDropdownBib extends i$2 {
3657
3658
 
3658
3659
  set mobileFullscreenBreakpoint(value) {
3659
3660
  // verify the defined breakpoint is valid and exit out if not
3661
+ // 'disabled' is a design token breakpoint so it acts as our "undefined" value
3660
3662
  const validatedValue = DESIGN_TOKEN_BREAKPOINT_OPTIONS.includes(value) ? value : undefined;
3661
3663
  if (!validatedValue) {
3662
3664
  this._mobileBreakpointValue = undefined;
@@ -4182,7 +4184,12 @@ class AuroDropdown extends i$2 {
4182
4184
  },
4183
4185
 
4184
4186
  /**
4185
- * 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.
4187
+ * Defines the screen size breakpoint (`xs`, `sm`, `md`, `lg`, `xl`, `disabled`)
4188
+ * at which the dropdown switches to fullscreen mode on mobile. `disabled` indicates a dropdown should _never_ enter fullscreen.
4189
+ *
4190
+ * When expanded, the dropdown will automatically display in fullscreen mode
4191
+ * if the screen size is equal to or smaller than the selected breakpoint.
4192
+ * @default sm
4186
4193
  */
4187
4194
  fullscreenBreakpoint: {
4188
4195
  type: String,
@@ -4322,6 +4329,15 @@ class AuroDropdown extends i$2 {
4322
4329
  AuroLibraryRuntimeUtils$1.prototype.registerComponent(name, AuroDropdown);
4323
4330
  }
4324
4331
 
4332
+ /**
4333
+ * Accessor for reusing the focusable entity query string.
4334
+ * @private
4335
+ * @returns {string}
4336
+ */
4337
+ get focusableEntityQuery () {
4338
+ return 'auro-input, [auro-input], auro-button, [auro-button], button, input';
4339
+ }
4340
+
4325
4341
  connectedCallback() {
4326
4342
  super.connectedCallback();
4327
4343
  }
@@ -4335,6 +4351,8 @@ class AuroDropdown extends i$2 {
4335
4351
  updated(changedProperties) {
4336
4352
  this.floater.handleUpdate(changedProperties);
4337
4353
 
4354
+ // Note: `disabled` is not a breakpoint (it is not a screen size),
4355
+ // so it looks like we never consume this - however, dropdownBib handles this in the setter as "undefined"
4338
4356
  if (changedProperties.has('fullscreenBreakpoint')) {
4339
4357
  this.bibContent.mobileFullscreenBreakpoint = this.fullscreenBreakpoint;
4340
4358
  }
@@ -4485,7 +4503,7 @@ class AuroDropdown extends i$2 {
4485
4503
 
4486
4504
  this.triggerContentSlot.forEach((node) => {
4487
4505
  if (node.querySelectorAll) {
4488
- const auroElements = node.querySelectorAll('auro-input, [auro-input], auro-button, [auro-button], button, input');
4506
+ const auroElements = node.querySelectorAll(this.focusableEntityQuery);
4489
4507
  auroElements.forEach((auroEl) => {
4490
4508
  auroEl.addEventListener('focus', this.bindFocusEventToTrigger);
4491
4509
  auroEl.addEventListener('blur', this.bindFocusEventToTrigger);
@@ -4506,7 +4524,7 @@ class AuroDropdown extends i$2 {
4506
4524
 
4507
4525
  this.triggerContentSlot.forEach((node) => {
4508
4526
  if (node.querySelectorAll) {
4509
- const auroElements = node.querySelectorAll('auro-input, [auro-input], auro-button, [auro-button], button, input');
4527
+ const auroElements = node.querySelectorAll(this.focusableEntityQuery);
4510
4528
  auroElements.forEach((auroEl) => {
4511
4529
  auroEl.removeEventListener('focus', this.bindFocusEventToTrigger);
4512
4530
  auroEl.removeEventListener('blur', this.bindFocusEventToTrigger);
@@ -5660,8 +5678,11 @@ class AuroSelect extends i$2 {
5660
5678
  },
5661
5679
 
5662
5680
  /**
5663
- * Defines the screen size breakpoint (`lg`, `md`, `sm`, or `xs`) at which the dropdown switches to fullscreen mode on mobile.
5664
- * When expanded, the dropdown will automatically display in fullscreen mode if the screen size is equal to or smaller than the selected breakpoint.
5681
+ * Defines the screen size breakpoint (`xs`, `sm`, `md`, `lg`, `xl`, `disabled`)
5682
+ * at which the dropdown switches to fullscreen mode on mobile. `disabled` indicates a dropdown should _never_ enter fullscreen.
5683
+ *
5684
+ * When expanded, the dropdown will automatically display in fullscreen mode
5685
+ * if the screen size is equal to or smaller than the selected breakpoint.
5665
5686
  * @default sm
5666
5687
  */
5667
5688
  fullscreenBreakpoint: {
@@ -379,7 +379,7 @@ Applying the `noCheckmark` attribute will prevent the checkmark icon from being
379
379
 
380
380
  ## Example with custom bib height
381
381
 
382
- This example shows how to set a custom height for the bib from `<auro-dropdown>`.
382
+ This example shows how to set a custom height for the bib from `<auro-dropdown>`.
383
383
 
384
384
  Custom height dimensions are set by using the `dropdownSize` CSS Part and then applying a `max-height` rule and value.
385
385
 
@@ -434,6 +434,51 @@ Custom height dimensions are set by using the `dropdownSize` CSS Part and then a
434
434
  <!-- AURO-GENERATED-CONTENT:END -->
435
435
  </auro-accordion>
436
436
 
437
+ ## Example with fullscreen dropdown breakpoint override
438
+
439
+ This example overrides the default dropdown behavior to force a non-fullscreen view on any screen size. `disabled`
440
+ ensures that the dropdown will never be fullscreen.
441
+ Please use `xl` if you want the opposite behavior, where a dropdown is always fullscreen.
442
+
443
+ <div class="exampleWrapper">
444
+ <!-- AURO-GENERATED-CONTENT:START (FILE:src=./../apiExamples/forcedFullscreenDisabled.html) -->
445
+ <!-- The below content is automatically added from ./../apiExamples/forcedFullscreenDisabled.html -->
446
+ <auro-select fullscreenBreakpoint="disabled">
447
+ <span slot="bib.fullscreen.headline">Bib Headline</span>
448
+ <span slot="label">Select Example</span>
449
+ <auro-menu>
450
+ <auro-menuoption value="stops">Stops</auro-menuoption>
451
+ <auro-menuoption value="price">Price</auro-menuoption>
452
+ <auro-menuoption value="duration">Duration</auro-menuoption>
453
+ <auro-menuoption value="departure">Departure</auro-menuoption>
454
+ <auro-menuoption value="arrival">Arrival</auro-menuoption>
455
+ <auro-menuoption value="prefer alaska">Prefer Alaska</auro-menuoption>
456
+ </auro-menu>
457
+ </auro-select>
458
+ <!-- AURO-GENERATED-CONTENT:END -->
459
+ </div>
460
+ <auro-accordion alignRight>
461
+ <span slot="trigger">See code</span>
462
+ <!-- AURO-GENERATED-CONTENT:START (CODE:src=./../apiExamples/forcedFullscreenDisabled.html) -->
463
+ <!-- The below code snippet is automatically added from ./../apiExamples/forcedFullscreenDisabled.html -->
464
+
465
+ ```html
466
+ <auro-select fullscreenBreakpoint="disabled">
467
+ <span slot="bib.fullscreen.headline">Bib Headline</span>
468
+ <span slot="label">Select Example</span>
469
+ <auro-menu>
470
+ <auro-menuoption value="stops">Stops</auro-menuoption>
471
+ <auro-menuoption value="price">Price</auro-menuoption>
472
+ <auro-menuoption value="duration">Duration</auro-menuoption>
473
+ <auro-menuoption value="departure">Departure</auro-menuoption>
474
+ <auro-menuoption value="arrival">Arrival</auro-menuoption>
475
+ <auro-menuoption value="prefer alaska">Prefer Alaska</auro-menuoption>
476
+ </auro-menu>
477
+ </auro-select>
478
+ ```
479
+ <!-- AURO-GENERATED-CONTENT:END -->
480
+ </auro-accordion>
481
+
437
482
  ## Error State
438
483
 
439
484
  Use the `error` boolean attribute to toggle the error UI.
@@ -3494,6 +3494,7 @@ var tokensCss$1$1 = i$5`:host{--ds-auro-dropdown-label-text-color: var(--ds-basi
3494
3494
 
3495
3495
  const DESIGN_TOKEN_BREAKPOINT_PREFIX = '--ds-grid-breakpoint-';
3496
3496
  const DESIGN_TOKEN_BREAKPOINT_OPTIONS = [
3497
+ 'xl',
3497
3498
  'lg',
3498
3499
  'md',
3499
3500
  'sm',
@@ -3565,6 +3566,7 @@ class AuroDropdownBib extends i$2 {
3565
3566
 
3566
3567
  set mobileFullscreenBreakpoint(value) {
3567
3568
  // verify the defined breakpoint is valid and exit out if not
3569
+ // 'disabled' is a design token breakpoint so it acts as our "undefined" value
3568
3570
  const validatedValue = DESIGN_TOKEN_BREAKPOINT_OPTIONS.includes(value) ? value : undefined;
3569
3571
  if (!validatedValue) {
3570
3572
  this._mobileBreakpointValue = undefined;
@@ -4090,7 +4092,12 @@ class AuroDropdown extends i$2 {
4090
4092
  },
4091
4093
 
4092
4094
  /**
4093
- * 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.
4095
+ * Defines the screen size breakpoint (`xs`, `sm`, `md`, `lg`, `xl`, `disabled`)
4096
+ * at which the dropdown switches to fullscreen mode on mobile. `disabled` indicates a dropdown should _never_ enter fullscreen.
4097
+ *
4098
+ * When expanded, the dropdown will automatically display in fullscreen mode
4099
+ * if the screen size is equal to or smaller than the selected breakpoint.
4100
+ * @default sm
4094
4101
  */
4095
4102
  fullscreenBreakpoint: {
4096
4103
  type: String,
@@ -4230,6 +4237,15 @@ class AuroDropdown extends i$2 {
4230
4237
  AuroLibraryRuntimeUtils$1.prototype.registerComponent(name, AuroDropdown);
4231
4238
  }
4232
4239
 
4240
+ /**
4241
+ * Accessor for reusing the focusable entity query string.
4242
+ * @private
4243
+ * @returns {string}
4244
+ */
4245
+ get focusableEntityQuery () {
4246
+ return 'auro-input, [auro-input], auro-button, [auro-button], button, input';
4247
+ }
4248
+
4233
4249
  connectedCallback() {
4234
4250
  super.connectedCallback();
4235
4251
  }
@@ -4243,6 +4259,8 @@ class AuroDropdown extends i$2 {
4243
4259
  updated(changedProperties) {
4244
4260
  this.floater.handleUpdate(changedProperties);
4245
4261
 
4262
+ // Note: `disabled` is not a breakpoint (it is not a screen size),
4263
+ // so it looks like we never consume this - however, dropdownBib handles this in the setter as "undefined"
4246
4264
  if (changedProperties.has('fullscreenBreakpoint')) {
4247
4265
  this.bibContent.mobileFullscreenBreakpoint = this.fullscreenBreakpoint;
4248
4266
  }
@@ -4393,7 +4411,7 @@ class AuroDropdown extends i$2 {
4393
4411
 
4394
4412
  this.triggerContentSlot.forEach((node) => {
4395
4413
  if (node.querySelectorAll) {
4396
- const auroElements = node.querySelectorAll('auro-input, [auro-input], auro-button, [auro-button], button, input');
4414
+ const auroElements = node.querySelectorAll(this.focusableEntityQuery);
4397
4415
  auroElements.forEach((auroEl) => {
4398
4416
  auroEl.addEventListener('focus', this.bindFocusEventToTrigger);
4399
4417
  auroEl.addEventListener('blur', this.bindFocusEventToTrigger);
@@ -4414,7 +4432,7 @@ class AuroDropdown extends i$2 {
4414
4432
 
4415
4433
  this.triggerContentSlot.forEach((node) => {
4416
4434
  if (node.querySelectorAll) {
4417
- const auroElements = node.querySelectorAll('auro-input, [auro-input], auro-button, [auro-button], button, input');
4435
+ const auroElements = node.querySelectorAll(this.focusableEntityQuery);
4418
4436
  auroElements.forEach((auroEl) => {
4419
4437
  auroEl.removeEventListener('focus', this.bindFocusEventToTrigger);
4420
4438
  auroEl.removeEventListener('blur', this.bindFocusEventToTrigger);
@@ -5568,8 +5586,11 @@ class AuroSelect extends i$2 {
5568
5586
  },
5569
5587
 
5570
5588
  /**
5571
- * Defines the screen size breakpoint (`lg`, `md`, `sm`, or `xs`) at which the dropdown switches to fullscreen mode on mobile.
5572
- * When expanded, the dropdown will automatically display in fullscreen mode if the screen size is equal to or smaller than the selected breakpoint.
5589
+ * Defines the screen size breakpoint (`xs`, `sm`, `md`, `lg`, `xl`, `disabled`)
5590
+ * at which the dropdown switches to fullscreen mode on mobile. `disabled` indicates a dropdown should _never_ enter fullscreen.
5591
+ *
5592
+ * When expanded, the dropdown will automatically display in fullscreen mode
5593
+ * if the screen size is equal to or smaller than the selected breakpoint.
5573
5594
  * @default sm
5574
5595
  */
5575
5596
  fullscreenBreakpoint: {
@@ -111,7 +111,7 @@ The use of any Auro custom element has a dependency on the [Auro Design Tokens](
111
111
  In cases where the project is not able to process JS assets, there are pre-processed assets available for use. Legacy browsers such as IE11 are no longer supported.
112
112
 
113
113
  ```html
114
- <script type="module" src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@3.2.7/auro-select/+esm"></script>
114
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@3.2.8/auro-select/+esm"></script>
115
115
  ```
116
116
  <!-- AURO-GENERATED-CONTENT:END -->
117
117
 
@@ -36,8 +36,11 @@ export class AuroSelect extends LitElement {
36
36
  reflect: boolean;
37
37
  };
38
38
  /**
39
- * Defines the screen size breakpoint (`lg`, `md`, `sm`, or `xs`) at which the dropdown switches to fullscreen mode on mobile.
40
- * When expanded, the dropdown will automatically display in fullscreen mode if the screen size is equal to or smaller than the selected breakpoint.
39
+ * Defines the screen size breakpoint (`xs`, `sm`, `md`, `lg`, `xl`, `disabled`)
40
+ * at which the dropdown switches to fullscreen mode on mobile. `disabled` indicates a dropdown should _never_ enter fullscreen.
41
+ *
42
+ * When expanded, the dropdown will automatically display in fullscreen mode
43
+ * if the screen size is equal to or smaller than the selected breakpoint.
41
44
  * @default sm
42
45
  */
43
46
  fullscreenBreakpoint: {
@@ -3447,6 +3447,7 @@ var tokensCss$1 = css`:host{--ds-auro-dropdown-label-text-color: var(--ds-basic-
3447
3447
 
3448
3448
  const DESIGN_TOKEN_BREAKPOINT_PREFIX = '--ds-grid-breakpoint-';
3449
3449
  const DESIGN_TOKEN_BREAKPOINT_OPTIONS = [
3450
+ 'xl',
3450
3451
  'lg',
3451
3452
  'md',
3452
3453
  'sm',
@@ -3518,6 +3519,7 @@ class AuroDropdownBib extends LitElement {
3518
3519
 
3519
3520
  set mobileFullscreenBreakpoint(value) {
3520
3521
  // verify the defined breakpoint is valid and exit out if not
3522
+ // 'disabled' is a design token breakpoint so it acts as our "undefined" value
3521
3523
  const validatedValue = DESIGN_TOKEN_BREAKPOINT_OPTIONS.includes(value) ? value : undefined;
3522
3524
  if (!validatedValue) {
3523
3525
  this._mobileBreakpointValue = undefined;
@@ -4043,7 +4045,12 @@ class AuroDropdown extends LitElement {
4043
4045
  },
4044
4046
 
4045
4047
  /**
4046
- * 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.
4048
+ * Defines the screen size breakpoint (`xs`, `sm`, `md`, `lg`, `xl`, `disabled`)
4049
+ * at which the dropdown switches to fullscreen mode on mobile. `disabled` indicates a dropdown should _never_ enter fullscreen.
4050
+ *
4051
+ * When expanded, the dropdown will automatically display in fullscreen mode
4052
+ * if the screen size is equal to or smaller than the selected breakpoint.
4053
+ * @default sm
4047
4054
  */
4048
4055
  fullscreenBreakpoint: {
4049
4056
  type: String,
@@ -4183,6 +4190,15 @@ class AuroDropdown extends LitElement {
4183
4190
  AuroLibraryRuntimeUtils$1.prototype.registerComponent(name, AuroDropdown);
4184
4191
  }
4185
4192
 
4193
+ /**
4194
+ * Accessor for reusing the focusable entity query string.
4195
+ * @private
4196
+ * @returns {string}
4197
+ */
4198
+ get focusableEntityQuery () {
4199
+ return 'auro-input, [auro-input], auro-button, [auro-button], button, input';
4200
+ }
4201
+
4186
4202
  connectedCallback() {
4187
4203
  super.connectedCallback();
4188
4204
  }
@@ -4196,6 +4212,8 @@ class AuroDropdown extends LitElement {
4196
4212
  updated(changedProperties) {
4197
4213
  this.floater.handleUpdate(changedProperties);
4198
4214
 
4215
+ // Note: `disabled` is not a breakpoint (it is not a screen size),
4216
+ // so it looks like we never consume this - however, dropdownBib handles this in the setter as "undefined"
4199
4217
  if (changedProperties.has('fullscreenBreakpoint')) {
4200
4218
  this.bibContent.mobileFullscreenBreakpoint = this.fullscreenBreakpoint;
4201
4219
  }
@@ -4346,7 +4364,7 @@ class AuroDropdown extends LitElement {
4346
4364
 
4347
4365
  this.triggerContentSlot.forEach((node) => {
4348
4366
  if (node.querySelectorAll) {
4349
- const auroElements = node.querySelectorAll('auro-input, [auro-input], auro-button, [auro-button], button, input');
4367
+ const auroElements = node.querySelectorAll(this.focusableEntityQuery);
4350
4368
  auroElements.forEach((auroEl) => {
4351
4369
  auroEl.addEventListener('focus', this.bindFocusEventToTrigger);
4352
4370
  auroEl.addEventListener('blur', this.bindFocusEventToTrigger);
@@ -4367,7 +4385,7 @@ class AuroDropdown extends LitElement {
4367
4385
 
4368
4386
  this.triggerContentSlot.forEach((node) => {
4369
4387
  if (node.querySelectorAll) {
4370
- const auroElements = node.querySelectorAll('auro-input, [auro-input], auro-button, [auro-button], button, input');
4388
+ const auroElements = node.querySelectorAll(this.focusableEntityQuery);
4371
4389
  auroElements.forEach((auroEl) => {
4372
4390
  auroEl.removeEventListener('focus', this.bindFocusEventToTrigger);
4373
4391
  auroEl.removeEventListener('blur', this.bindFocusEventToTrigger);
@@ -5521,8 +5539,11 @@ class AuroSelect extends LitElement {
5521
5539
  },
5522
5540
 
5523
5541
  /**
5524
- * Defines the screen size breakpoint (`lg`, `md`, `sm`, or `xs`) at which the dropdown switches to fullscreen mode on mobile.
5525
- * When expanded, the dropdown will automatically display in fullscreen mode if the screen size is equal to or smaller than the selected breakpoint.
5542
+ * Defines the screen size breakpoint (`xs`, `sm`, `md`, `lg`, `xl`, `disabled`)
5543
+ * at which the dropdown switches to fullscreen mode on mobile. `disabled` indicates a dropdown should _never_ enter fullscreen.
5544
+ *
5545
+ * When expanded, the dropdown will automatically display in fullscreen mode
5546
+ * if the screen size is equal to or smaller than the selected breakpoint.
5526
5547
  * @default sm
5527
5548
  */
5528
5549
  fullscreenBreakpoint: {
@@ -3447,6 +3447,7 @@ var tokensCss$1 = css`:host{--ds-auro-dropdown-label-text-color: var(--ds-basic-
3447
3447
 
3448
3448
  const DESIGN_TOKEN_BREAKPOINT_PREFIX = '--ds-grid-breakpoint-';
3449
3449
  const DESIGN_TOKEN_BREAKPOINT_OPTIONS = [
3450
+ 'xl',
3450
3451
  'lg',
3451
3452
  'md',
3452
3453
  'sm',
@@ -3518,6 +3519,7 @@ class AuroDropdownBib extends LitElement {
3518
3519
 
3519
3520
  set mobileFullscreenBreakpoint(value) {
3520
3521
  // verify the defined breakpoint is valid and exit out if not
3522
+ // 'disabled' is a design token breakpoint so it acts as our "undefined" value
3521
3523
  const validatedValue = DESIGN_TOKEN_BREAKPOINT_OPTIONS.includes(value) ? value : undefined;
3522
3524
  if (!validatedValue) {
3523
3525
  this._mobileBreakpointValue = undefined;
@@ -4043,7 +4045,12 @@ class AuroDropdown extends LitElement {
4043
4045
  },
4044
4046
 
4045
4047
  /**
4046
- * 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.
4048
+ * Defines the screen size breakpoint (`xs`, `sm`, `md`, `lg`, `xl`, `disabled`)
4049
+ * at which the dropdown switches to fullscreen mode on mobile. `disabled` indicates a dropdown should _never_ enter fullscreen.
4050
+ *
4051
+ * When expanded, the dropdown will automatically display in fullscreen mode
4052
+ * if the screen size is equal to or smaller than the selected breakpoint.
4053
+ * @default sm
4047
4054
  */
4048
4055
  fullscreenBreakpoint: {
4049
4056
  type: String,
@@ -4183,6 +4190,15 @@ class AuroDropdown extends LitElement {
4183
4190
  AuroLibraryRuntimeUtils$1.prototype.registerComponent(name, AuroDropdown);
4184
4191
  }
4185
4192
 
4193
+ /**
4194
+ * Accessor for reusing the focusable entity query string.
4195
+ * @private
4196
+ * @returns {string}
4197
+ */
4198
+ get focusableEntityQuery () {
4199
+ return 'auro-input, [auro-input], auro-button, [auro-button], button, input';
4200
+ }
4201
+
4186
4202
  connectedCallback() {
4187
4203
  super.connectedCallback();
4188
4204
  }
@@ -4196,6 +4212,8 @@ class AuroDropdown extends LitElement {
4196
4212
  updated(changedProperties) {
4197
4213
  this.floater.handleUpdate(changedProperties);
4198
4214
 
4215
+ // Note: `disabled` is not a breakpoint (it is not a screen size),
4216
+ // so it looks like we never consume this - however, dropdownBib handles this in the setter as "undefined"
4199
4217
  if (changedProperties.has('fullscreenBreakpoint')) {
4200
4218
  this.bibContent.mobileFullscreenBreakpoint = this.fullscreenBreakpoint;
4201
4219
  }
@@ -4346,7 +4364,7 @@ class AuroDropdown extends LitElement {
4346
4364
 
4347
4365
  this.triggerContentSlot.forEach((node) => {
4348
4366
  if (node.querySelectorAll) {
4349
- const auroElements = node.querySelectorAll('auro-input, [auro-input], auro-button, [auro-button], button, input');
4367
+ const auroElements = node.querySelectorAll(this.focusableEntityQuery);
4350
4368
  auroElements.forEach((auroEl) => {
4351
4369
  auroEl.addEventListener('focus', this.bindFocusEventToTrigger);
4352
4370
  auroEl.addEventListener('blur', this.bindFocusEventToTrigger);
@@ -4367,7 +4385,7 @@ class AuroDropdown extends LitElement {
4367
4385
 
4368
4386
  this.triggerContentSlot.forEach((node) => {
4369
4387
  if (node.querySelectorAll) {
4370
- const auroElements = node.querySelectorAll('auro-input, [auro-input], auro-button, [auro-button], button, input');
4388
+ const auroElements = node.querySelectorAll(this.focusableEntityQuery);
4371
4389
  auroElements.forEach((auroEl) => {
4372
4390
  auroEl.removeEventListener('focus', this.bindFocusEventToTrigger);
4373
4391
  auroEl.removeEventListener('blur', this.bindFocusEventToTrigger);
@@ -5521,8 +5539,11 @@ class AuroSelect extends LitElement {
5521
5539
  },
5522
5540
 
5523
5541
  /**
5524
- * Defines the screen size breakpoint (`lg`, `md`, `sm`, or `xs`) at which the dropdown switches to fullscreen mode on mobile.
5525
- * When expanded, the dropdown will automatically display in fullscreen mode if the screen size is equal to or smaller than the selected breakpoint.
5542
+ * Defines the screen size breakpoint (`xs`, `sm`, `md`, `lg`, `xl`, `disabled`)
5543
+ * at which the dropdown switches to fullscreen mode on mobile. `disabled` indicates a dropdown should _never_ enter fullscreen.
5544
+ *
5545
+ * When expanded, the dropdown will automatically display in fullscreen mode
5546
+ * if the screen size is equal to or smaller than the selected breakpoint.
5526
5547
  * @default sm
5527
5548
  */
5528
5549
  fullscreenBreakpoint: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aurodesignsystem/auro-formkit",
3
- "version": "3.2.8",
3
+ "version": "3.3.0-beta.2",
4
4
  "description": "A collection of web components used to build forms.",
5
5
  "homepage": "https://github.com/AlaskaAirlines/auro-formkit#readme",
6
6
  "bugs": {