@aurodesignsystem/auro-formkit 2.1.0 → 2.2.0-beta.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 (55) hide show
  1. package/CHANGELOG.md +18 -2
  2. package/components/bibtemplate/dist/index.js +2 -2
  3. package/components/bibtemplate/dist/registered.js +2 -2
  4. package/components/checkbox/README.md +1 -1
  5. package/components/checkbox/demo/readme.md +1 -1
  6. package/components/combobox/README.md +1 -1
  7. package/components/combobox/demo/api.md +122 -19
  8. package/components/combobox/demo/api.min.js +160 -24
  9. package/components/combobox/demo/index.min.js +160 -24
  10. package/components/combobox/demo/readme.md +1 -1
  11. package/components/combobox/dist/auro-combobox.d.ts +42 -0
  12. package/components/combobox/dist/index.js +160 -24
  13. package/components/combobox/dist/registered.js +160 -24
  14. package/components/counter/README.md +1 -1
  15. package/components/counter/demo/api.md +113 -10
  16. package/components/counter/demo/api.min.js +178 -47
  17. package/components/counter/demo/index.min.js +178 -47
  18. package/components/counter/demo/readme.md +1 -1
  19. package/components/counter/dist/auro-counter-group.d.ts +55 -17
  20. package/components/counter/dist/index.js +178 -47
  21. package/components/counter/dist/registered.js +178 -47
  22. package/components/datepicker/README.md +1 -1
  23. package/components/datepicker/demo/api.md +61 -0
  24. package/components/datepicker/demo/api.min.js +162 -25
  25. package/components/datepicker/demo/index.min.js +162 -25
  26. package/components/datepicker/demo/readme.md +1 -1
  27. package/components/datepicker/dist/auro-datepicker.d.ts +42 -0
  28. package/components/datepicker/dist/index.js +162 -25
  29. package/components/datepicker/dist/registered.js +162 -25
  30. package/components/dropdown/README.md +1 -1
  31. package/components/dropdown/demo/api.md +166 -19
  32. package/components/dropdown/demo/api.min.js +106 -22
  33. package/components/dropdown/demo/index.min.js +106 -22
  34. package/components/dropdown/demo/readme.md +1 -1
  35. package/components/dropdown/dist/auro-dropdown.d.ts +63 -7
  36. package/components/dropdown/dist/index.js +106 -22
  37. package/components/dropdown/dist/registered.js +106 -22
  38. package/components/form/README.md +1 -1
  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 +2 -1
  47. package/components/select/demo/api.md +142 -17
  48. package/components/select/demo/api.min.js +160 -24
  49. package/components/select/demo/index.md +14 -0
  50. package/components/select/demo/index.min.js +160 -24
  51. package/components/select/demo/readme.md +2 -1
  52. package/components/select/dist/auro-select.d.ts +42 -0
  53. package/components/select/dist/index.js +160 -24
  54. package/components/select/dist/registered.js +160 -24
  55. package/package.json +1 -1
@@ -11448,11 +11448,11 @@ class AuroBibtemplate extends r$3 {
11448
11448
  return {
11449
11449
  isFullscreen: {
11450
11450
  type: Boolean,
11451
- reflect: true,
11451
+ reflect: true
11452
11452
  },
11453
11453
  large: {
11454
11454
  type: Boolean,
11455
- reflect: true,
11455
+ reflect: true
11456
11456
  }
11457
11457
  };
11458
11458
  }
@@ -15151,7 +15151,7 @@ class AuroDropdownBib extends r$3 {
15151
15151
 
15152
15152
  var dropdownVersion$1 = '3.0.0';
15153
15153
 
15154
- var styleCss$1$1 = i$6`:host{position:relative;display:inline-block;max-width:100%}:host([fluid]){display:block}#bibSizer{position:absolute;z-index:-1;opacity:0;pointer-events:none}.label{font-size:var(--ds-text-body-size-xs, 0.75rem);line-height:var(--ds-text-body-size-default, 1rem);transition:font-size .3s cubic-bezier(0.215, 0.61, 0.355, 1);white-space:normal}.label[hasTrigger=false]{font-size:var(--ds-text-body-size-default, 1rem)}.trigger{position:relative;display:flex;align-items:center}.trigger[showBorder]{border-width:1px;border-style:solid;cursor:pointer;outline-style:solid;outline-width:1px}@media(hover: hover){.trigger:hover{cursor:pointer}}.triggerContentWrapper{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}#showStateIcon{display:flex;overflow:hidden;height:100%;align-items:center;margin-left:var(--ds-size-100, 0.5rem)}#showStateIcon [auro-icon]{height:var(--ds-size-300, 1.5rem);line-height:var(--ds-size-300, 1.5rem)}#showStateIcon[data-expanded=true] [auro-icon]{transform:rotate(-180deg)}:host([matchwidth]) #bibSizer{width:100%}:host([disabled]){pointer-events:none}:host([inset]) .trigger{padding:var(--ds-size-150, 0.75rem) var(--ds-size-200, 1rem)}:host([common]) .trigger,:host([inset][bordered]) .trigger{padding:var(--ds-size-200, 1rem) var(--ds-size-150, 0.75rem)}:host([common]) .trigger,:host([rounded]) .trigger{border-radius:var(--ds-border-radius, 0.375rem)}`;
15154
+ var styleCss$1$1 = i$6`:host{position:relative;display:inline-block;max-width:100%}:host([fluid]){display:block}#bibSizer{position:absolute;z-index:-1;opacity:0;pointer-events:none}.label{font-size:var(--ds-text-body-size-xs, 0.75rem);line-height:var(--ds-text-body-size-default, 1rem);transition:font-size .3s cubic-bezier(0.215, 0.61, 0.355, 1);white-space:normal}.label[hasTrigger=false]{font-size:var(--ds-text-body-size-default, 1rem)}.trigger{position:relative;display:flex;align-items:center}.trigger[showBorder]{border-width:1px;border-style:solid;cursor:pointer;outline-style:solid;outline-width:1px}@media(hover: hover){.trigger:hover{cursor:pointer}}.triggerContentWrapper{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}#showStateIcon{display:flex;overflow:hidden;height:100%;align-items:center;margin-left:var(--ds-size-100, 0.5rem)}#showStateIcon [auro-icon]{height:var(--ds-size-300, 1.5rem);line-height:var(--ds-size-300, 1.5rem)}#showStateIcon[data-expanded=true] [auro-icon]{transform:rotate(-180deg)}:host([matchwidth]) #bibSizer{width:100%}:host([disabled]){pointer-events:none}:host([inset]) .trigger{padding:var(--ds-size-150, 0.75rem) var(--ds-size-200, 1rem)}:host([common]) .trigger,:host([inset][bordered]) .trigger{padding:var(--ds-size-200, 1rem) var(--ds-size-150, 0.75rem)}:host([inset][bordered][labeled]) .trigger{padding:var(--ds-size-100, 0.5rem) var(--ds-size-150, 0.75rem)}:host([common]) .trigger,:host([rounded]) .trigger{border-radius:var(--ds-border-radius, 0.375rem)}`;
15155
15155
 
15156
15156
  var colorCss$1$1 = i$6`.label{color:var(--ds-auro-dropdown-label-text-color)}.trigger{border-color:var(--ds-auro-dropdown-trigger-border-color);background-color:var(--ds-auro-dropdown-trigger-container-color);color:var(--ds-auro-dropdown-trigger-text-color);outline-color:var(--ds-auro-dropdown-trigger-outline-color)}.trigger:focus-within,.trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8);--ds-auro-dropdown-trigger-outline-color: var(--ds-color-border-active-default, #0074c8)}.trigger:focus-within:not(:active){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5);--ds-auro-dropdown-trigger-outline-color: var(--ds-color-border-ui-focus-default, #2c67b5)}.trigger:hover{--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-ui-secondary-hover-default, rgba(0, 0, 0, 0.03))}:host([disabled]){--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-ui-disabled-default, #adadad);--ds-auro-dropdown-label-text-color: var(--ds-color-text-ui-disabled-default, #adadad)}:host([common]),:host([bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-primary-default, #585e67)}:host([common]) .trigger:active,:host([common]) .trigger:focus-within,:host([bordered]) .trigger:active,:host([bordered]) .trigger:focus-within{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5)}:host([error]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-error-default, #cc1816)}:host([error]) .trigger{outline:solid 1px var(--ds-auro-dropdown-trigger-border-color)}:host([error]) .trigger:focus-within,:host([error]) .trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8)}:host([error]) .trigger:active{box-shadow:none;outline:none}:host([disabled][common]),:host([disabled][bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-disabled-default, #adadad)}`;
15157
15157
 
@@ -15411,10 +15411,16 @@ class AuroDropdown extends r$3 {
15411
15411
  this.disabled = false;
15412
15412
  this.error = false;
15413
15413
  this.inset = false;
15414
- this.placement = 'bottom-start';
15415
15414
  this.rounded = false;
15416
15415
  this.tabIndex = 0;
15417
15416
  this.noToggle = false;
15417
+ this.labeled = true;
15418
+
15419
+ // floaterConfig
15420
+ this.placement = 'bottom-start';
15421
+ this.offset = 0;
15422
+ this.noFlip = false;
15423
+ this.autoPlacement = false;
15418
15424
 
15419
15425
  /**
15420
15426
  * @private
@@ -15436,16 +15442,6 @@ class AuroDropdown extends r$3 {
15436
15442
  */
15437
15443
  this.floater = new AuroFloatingUI();
15438
15444
 
15439
- /**
15440
- * @private
15441
- */
15442
- this.floaterConfig = {
15443
- placement: 'bottom-start',
15444
- flip: true,
15445
- autoPlacement: false,
15446
- offset: 0,
15447
- };
15448
-
15449
15445
  /**
15450
15446
  * Generate unique names for dependency components.
15451
15447
  */
@@ -15467,6 +15463,18 @@ class AuroDropdown extends r$3 {
15467
15463
  this.helpTextTag = versioning.generateTag('auro-formkit-dropdown-helptext', helpTextVersion$1, AuroHelpText$1);
15468
15464
  }
15469
15465
 
15466
+ /**
15467
+ * @ignore
15468
+ */
15469
+ get floaterConfig() {
15470
+ return {
15471
+ placement: this.placement,
15472
+ flip: !this.noFlip,
15473
+ autoPlacement: this.autoPlacement,
15474
+ offset: this.offset,
15475
+ };
15476
+ }
15477
+
15470
15478
  /**
15471
15479
  * Public method to hide the dropdown.
15472
15480
  * @returns {void}
@@ -15487,6 +15495,15 @@ class AuroDropdown extends r$3 {
15487
15495
  static get properties() {
15488
15496
  return {
15489
15497
 
15498
+ /**
15499
+ * If declared, bib's position will be automatically calculated where to appear.
15500
+ * @default false
15501
+ */
15502
+ autoPlacement: {
15503
+ type: Boolean,
15504
+ reflect: true
15505
+ },
15506
+
15490
15507
  /**
15491
15508
  * If declared, applies a border around the trigger slot.
15492
15509
  */
@@ -15567,11 +15584,11 @@ class AuroDropdown extends r$3 {
15567
15584
  },
15568
15585
 
15569
15586
  /**
15570
- * If true, the dropdown bib is taking the fullscreen when it's open
15587
+ * If true, the dropdown bib is taking the fullscreen when it's open.
15571
15588
  */
15572
15589
  isBibFullscreen: {
15573
15590
  type: Boolean,
15574
- reflect: true,
15591
+ reflect: true
15575
15592
  },
15576
15593
 
15577
15594
  /**
@@ -15597,6 +15614,15 @@ class AuroDropdown extends r$3 {
15597
15614
  reflect: true
15598
15615
  },
15599
15616
 
15617
+ /**
15618
+ * Defines if there is a label preset.
15619
+ * @private
15620
+ */
15621
+ labeled: {
15622
+ type: Boolean,
15623
+ reflect: true
15624
+ },
15625
+
15600
15626
  /**
15601
15627
  * If declared, the popover and trigger will be set to the same width.
15602
15628
  */
@@ -15605,6 +15631,16 @@ class AuroDropdown extends r$3 {
15605
15631
  reflect: true
15606
15632
  },
15607
15633
 
15634
+ /**
15635
+ * If declared, the bib will NOT flip to an alternate position
15636
+ * when there isn't enough space in the specified `placement`.
15637
+ * @default false
15638
+ */
15639
+ noFlip: {
15640
+ type: Boolean,
15641
+ reflect: true
15642
+ },
15643
+
15608
15644
  /**
15609
15645
  * If declared, the dropdown will not hide when moving focus outside the element.
15610
15646
  */
@@ -15621,16 +15657,32 @@ class AuroDropdown extends r$3 {
15621
15657
  reflect: true
15622
15658
  },
15623
15659
 
15660
+ /**
15661
+ * Gap between the trigger element and bib.
15662
+ * @default 0
15663
+ */
15664
+ offset: {
15665
+ type: Number,
15666
+ reflect: true
15667
+ },
15668
+
15624
15669
  onSlotChange: {
15625
15670
  type: Function,
15626
15671
  reflect: false
15627
15672
  },
15628
15673
 
15629
15674
  /**
15630
- * @private
15675
+ * Position where the bib should appear relative to the trigger.
15676
+ * Accepted values:
15677
+ * "top" | "right" | "bottom" | "left" |
15678
+ * "bottom-start" | "top-start" | "top-end" |
15679
+ * "right-start" | "right-end" | "bottom-end" |
15680
+ * "left-start" | "left-end"
15681
+ * @default bottom-start
15631
15682
  */
15632
15683
  placement: {
15633
- type: String
15684
+ type: String,
15685
+ reflect: true
15634
15686
  },
15635
15687
 
15636
15688
  /**
@@ -15676,6 +15728,7 @@ class AuroDropdown extends r$3 {
15676
15728
 
15677
15729
  disconnectedCallback() {
15678
15730
  super.disconnectedCallback();
15731
+ this.floater.disconnect();
15679
15732
  }
15680
15733
 
15681
15734
  updated(changedProperties) {
@@ -15805,13 +15858,21 @@ class AuroDropdown extends r$3 {
15805
15858
  handleTriggerContentSlotChange(event) {
15806
15859
  this.floater.handleTriggerTabIndex();
15807
15860
 
15808
- const triggerContentNodes = this.shadowRoot.querySelector('.triggerContent slot').assignedNodes();
15861
+ const triggerSlot = this.shadowRoot.querySelector('.triggerContent slot');
15809
15862
 
15810
- triggerContentNodes.forEach((node) => {
15811
- if (!this.triggerContentFocusable) {
15812
- this.triggerContentFocusable = this.containsFocusableElement(node);
15863
+ if (triggerSlot) {
15864
+
15865
+ const triggerContentNodes = triggerSlot.assignedNodes();
15866
+
15867
+ if (triggerContentNodes) {
15868
+
15869
+ triggerContentNodes.forEach((node) => {
15870
+ if (!this.triggerContentFocusable) {
15871
+ this.triggerContentFocusable = this.containsFocusableElement(node);
15872
+ }
15873
+ });
15813
15874
  }
15814
- });
15875
+ }
15815
15876
 
15816
15877
  const trigger = this.shadowRoot.querySelector('#trigger');
15817
15878
 
@@ -15865,6 +15926,29 @@ class AuroDropdown extends r$3 {
15865
15926
  }
15866
15927
  }
15867
15928
 
15929
+ /**
15930
+ * @private
15931
+ * @method handleLabelSlotChange
15932
+ * @param {event} event - The event object representing the slot change.
15933
+ * @description Handles the slot change event for the label slot.
15934
+ */
15935
+ handleLabelSlotChange (event) {
15936
+
15937
+ // Get the nodes from the event
15938
+ const nodes = event.target.assignedNodes();
15939
+
15940
+ // Guard clause for no nodes
15941
+ if (!nodes) {
15942
+ return;
15943
+ }
15944
+
15945
+ // Convert the nodes to a measurable array so we can get the length
15946
+ const nodesArr = Array.from(nodes);
15947
+
15948
+ // If the nodes array has a length, the dropdown is labeled
15949
+ this.labeled = nodesArr.length > 0;
15950
+ }
15951
+
15868
15952
  // function that renders the HTML and CSS into the scope of the component
15869
15953
  render() {
15870
15954
  return u$2`
@@ -15879,7 +15963,7 @@ class AuroDropdown extends r$3 {
15879
15963
  >
15880
15964
  <div class="triggerContentWrapper">
15881
15965
  <label class="label" id="triggerLabel" hasTrigger=${this.hasTriggerContent}>
15882
- <slot name="label"></slot>
15966
+ <slot name="label" @slotchange="${this.handleLabelSlotChange}"></slot>
15883
15967
  </label>
15884
15968
  <div class="triggerContent">
15885
15969
  <slot
@@ -22849,6 +22933,12 @@ class AuroDatePicker extends r$3 {
22849
22933
 
22850
22934
  this.monthFirst = true;
22851
22935
 
22936
+ // floaterConfig
22937
+ this.placement = 'bottom-start';
22938
+ this.offset = 0;
22939
+ this.noFlip = false;
22940
+ this.autoPlacement = false;
22941
+
22852
22942
  /**
22853
22943
  * @private
22854
22944
  */
@@ -22896,6 +22986,16 @@ class AuroDatePicker extends r$3 {
22896
22986
  static get properties() {
22897
22987
  return {
22898
22988
  // ...super.properties,
22989
+
22990
+ /**
22991
+ * If declared, bib's position will be automatically calculated where to appear.
22992
+ * @default false
22993
+ */
22994
+ autoPlacement: {
22995
+ type: Boolean,
22996
+ reflect: true
22997
+ },
22998
+
22899
22999
  /**
22900
23000
  * The last date that may be displayed in the calendar.
22901
23001
  */
@@ -22990,6 +23090,16 @@ class AuroDatePicker extends r$3 {
22990
23090
  type: Boolean
22991
23091
  },
22992
23092
 
23093
+ /**
23094
+ * If declared, the bib will NOT flip to an alternate position
23095
+ * when there isn't enough space in the specified `placement`.
23096
+ * @default false
23097
+ */
23098
+ noFlip: {
23099
+ type: Boolean,
23100
+ reflect: true
23101
+ },
23102
+
22993
23103
  /**
22994
23104
  * If set, disables auto-validation on blur.
22995
23105
  */
@@ -22997,6 +23107,29 @@ class AuroDatePicker extends r$3 {
22997
23107
  type: Boolean
22998
23108
  },
22999
23109
 
23110
+ /**
23111
+ * Gap between the trigger element and bib.
23112
+ * @default 0
23113
+ */
23114
+ offset: {
23115
+ type: Number,
23116
+ reflect: true
23117
+ },
23118
+
23119
+ /**
23120
+ * Position where the bib should appear relative to the trigger.
23121
+ * Accepted values:
23122
+ * "top" | "right" | "bottom" | "left" |
23123
+ * "bottom-start" | "top-start" | "top-end" |
23124
+ * "right-start" | "right-end" | "bottom-end" |
23125
+ * "left-start" | "left-end"
23126
+ * @default bottom-start
23127
+ */
23128
+ placement: {
23129
+ type: String,
23130
+ reflect: true
23131
+ },
23132
+
23000
23133
  /**
23001
23134
  * If set, turns on date range functionality in auro-calendar.
23002
23135
  */
@@ -23053,7 +23186,7 @@ class AuroDatePicker extends r$3 {
23053
23186
  */
23054
23187
  stacked: {
23055
23188
  type: Boolean,
23056
- reflect: true,
23189
+ reflect: true
23057
23190
  },
23058
23191
 
23059
23192
  /**
@@ -23753,6 +23886,10 @@ class AuroDatePicker extends r$3 {
23753
23886
  disableEventShow
23754
23887
  noHideOnThisFocusLoss
23755
23888
  fullscreenBreakpoint="sm"
23889
+ .placement="${this.placement}"
23890
+ .offset="${this.offset}"
23891
+ ?autoPlacement="${this.autoPlacement}"
23892
+ ?noFlip="${this.noFlip}"
23756
23893
  part="dropdown">
23757
23894
  <div slot="trigger" class="dpTriggerContent" part="trigger">
23758
23895
  <${this.inputTag}
@@ -11189,11 +11189,11 @@ class AuroBibtemplate extends r$3 {
11189
11189
  return {
11190
11190
  isFullscreen: {
11191
11191
  type: Boolean,
11192
- reflect: true,
11192
+ reflect: true
11193
11193
  },
11194
11194
  large: {
11195
11195
  type: Boolean,
11196
- reflect: true,
11196
+ reflect: true
11197
11197
  }
11198
11198
  };
11199
11199
  }
@@ -14892,7 +14892,7 @@ class AuroDropdownBib extends r$3 {
14892
14892
 
14893
14893
  var dropdownVersion$1 = '3.0.0';
14894
14894
 
14895
- var styleCss$1$1 = i$6`:host{position:relative;display:inline-block;max-width:100%}:host([fluid]){display:block}#bibSizer{position:absolute;z-index:-1;opacity:0;pointer-events:none}.label{font-size:var(--ds-text-body-size-xs, 0.75rem);line-height:var(--ds-text-body-size-default, 1rem);transition:font-size .3s cubic-bezier(0.215, 0.61, 0.355, 1);white-space:normal}.label[hasTrigger=false]{font-size:var(--ds-text-body-size-default, 1rem)}.trigger{position:relative;display:flex;align-items:center}.trigger[showBorder]{border-width:1px;border-style:solid;cursor:pointer;outline-style:solid;outline-width:1px}@media(hover: hover){.trigger:hover{cursor:pointer}}.triggerContentWrapper{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}#showStateIcon{display:flex;overflow:hidden;height:100%;align-items:center;margin-left:var(--ds-size-100, 0.5rem)}#showStateIcon [auro-icon]{height:var(--ds-size-300, 1.5rem);line-height:var(--ds-size-300, 1.5rem)}#showStateIcon[data-expanded=true] [auro-icon]{transform:rotate(-180deg)}:host([matchwidth]) #bibSizer{width:100%}:host([disabled]){pointer-events:none}:host([inset]) .trigger{padding:var(--ds-size-150, 0.75rem) var(--ds-size-200, 1rem)}:host([common]) .trigger,:host([inset][bordered]) .trigger{padding:var(--ds-size-200, 1rem) var(--ds-size-150, 0.75rem)}:host([common]) .trigger,:host([rounded]) .trigger{border-radius:var(--ds-border-radius, 0.375rem)}`;
14895
+ var styleCss$1$1 = i$6`:host{position:relative;display:inline-block;max-width:100%}:host([fluid]){display:block}#bibSizer{position:absolute;z-index:-1;opacity:0;pointer-events:none}.label{font-size:var(--ds-text-body-size-xs, 0.75rem);line-height:var(--ds-text-body-size-default, 1rem);transition:font-size .3s cubic-bezier(0.215, 0.61, 0.355, 1);white-space:normal}.label[hasTrigger=false]{font-size:var(--ds-text-body-size-default, 1rem)}.trigger{position:relative;display:flex;align-items:center}.trigger[showBorder]{border-width:1px;border-style:solid;cursor:pointer;outline-style:solid;outline-width:1px}@media(hover: hover){.trigger:hover{cursor:pointer}}.triggerContentWrapper{overflow:hidden;flex:1;text-overflow:ellipsis;white-space:nowrap}#showStateIcon{display:flex;overflow:hidden;height:100%;align-items:center;margin-left:var(--ds-size-100, 0.5rem)}#showStateIcon [auro-icon]{height:var(--ds-size-300, 1.5rem);line-height:var(--ds-size-300, 1.5rem)}#showStateIcon[data-expanded=true] [auro-icon]{transform:rotate(-180deg)}:host([matchwidth]) #bibSizer{width:100%}:host([disabled]){pointer-events:none}:host([inset]) .trigger{padding:var(--ds-size-150, 0.75rem) var(--ds-size-200, 1rem)}:host([common]) .trigger,:host([inset][bordered]) .trigger{padding:var(--ds-size-200, 1rem) var(--ds-size-150, 0.75rem)}:host([inset][bordered][labeled]) .trigger{padding:var(--ds-size-100, 0.5rem) var(--ds-size-150, 0.75rem)}:host([common]) .trigger,:host([rounded]) .trigger{border-radius:var(--ds-border-radius, 0.375rem)}`;
14896
14896
 
14897
14897
  var colorCss$1$1 = i$6`.label{color:var(--ds-auro-dropdown-label-text-color)}.trigger{border-color:var(--ds-auro-dropdown-trigger-border-color);background-color:var(--ds-auro-dropdown-trigger-container-color);color:var(--ds-auro-dropdown-trigger-text-color);outline-color:var(--ds-auro-dropdown-trigger-outline-color)}.trigger:focus-within,.trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8);--ds-auro-dropdown-trigger-outline-color: var(--ds-color-border-active-default, #0074c8)}.trigger:focus-within:not(:active){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5);--ds-auro-dropdown-trigger-outline-color: var(--ds-color-border-ui-focus-default, #2c67b5)}.trigger:hover{--ds-auro-dropdown-trigger-container-color: var(--ds-color-container-ui-secondary-hover-default, rgba(0, 0, 0, 0.03))}:host([disabled]){--ds-auro-dropdown-trigger-text-color: var(--ds-color-text-ui-disabled-default, #adadad);--ds-auro-dropdown-label-text-color: var(--ds-color-text-ui-disabled-default, #adadad)}:host([common]),:host([bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-primary-default, #585e67)}:host([common]) .trigger:active,:host([common]) .trigger:focus-within,:host([bordered]) .trigger:active,:host([bordered]) .trigger:focus-within{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-focus-default, #2c67b5)}:host([error]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-error-default, #cc1816)}:host([error]) .trigger{outline:solid 1px var(--ds-auro-dropdown-trigger-border-color)}:host([error]) .trigger:focus-within,:host([error]) .trigger:active{--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-active-default, #0074c8)}:host([error]) .trigger:active{box-shadow:none;outline:none}:host([disabled][common]),:host([disabled][bordered]){--ds-auro-dropdown-trigger-border-color: var(--ds-color-border-ui-disabled-default, #adadad)}`;
14898
14898
 
@@ -15152,10 +15152,16 @@ class AuroDropdown extends r$3 {
15152
15152
  this.disabled = false;
15153
15153
  this.error = false;
15154
15154
  this.inset = false;
15155
- this.placement = 'bottom-start';
15156
15155
  this.rounded = false;
15157
15156
  this.tabIndex = 0;
15158
15157
  this.noToggle = false;
15158
+ this.labeled = true;
15159
+
15160
+ // floaterConfig
15161
+ this.placement = 'bottom-start';
15162
+ this.offset = 0;
15163
+ this.noFlip = false;
15164
+ this.autoPlacement = false;
15159
15165
 
15160
15166
  /**
15161
15167
  * @private
@@ -15177,16 +15183,6 @@ class AuroDropdown extends r$3 {
15177
15183
  */
15178
15184
  this.floater = new AuroFloatingUI();
15179
15185
 
15180
- /**
15181
- * @private
15182
- */
15183
- this.floaterConfig = {
15184
- placement: 'bottom-start',
15185
- flip: true,
15186
- autoPlacement: false,
15187
- offset: 0,
15188
- };
15189
-
15190
15186
  /**
15191
15187
  * Generate unique names for dependency components.
15192
15188
  */
@@ -15208,6 +15204,18 @@ class AuroDropdown extends r$3 {
15208
15204
  this.helpTextTag = versioning.generateTag('auro-formkit-dropdown-helptext', helpTextVersion$1, AuroHelpText$1);
15209
15205
  }
15210
15206
 
15207
+ /**
15208
+ * @ignore
15209
+ */
15210
+ get floaterConfig() {
15211
+ return {
15212
+ placement: this.placement,
15213
+ flip: !this.noFlip,
15214
+ autoPlacement: this.autoPlacement,
15215
+ offset: this.offset,
15216
+ };
15217
+ }
15218
+
15211
15219
  /**
15212
15220
  * Public method to hide the dropdown.
15213
15221
  * @returns {void}
@@ -15228,6 +15236,15 @@ class AuroDropdown extends r$3 {
15228
15236
  static get properties() {
15229
15237
  return {
15230
15238
 
15239
+ /**
15240
+ * If declared, bib's position will be automatically calculated where to appear.
15241
+ * @default false
15242
+ */
15243
+ autoPlacement: {
15244
+ type: Boolean,
15245
+ reflect: true
15246
+ },
15247
+
15231
15248
  /**
15232
15249
  * If declared, applies a border around the trigger slot.
15233
15250
  */
@@ -15308,11 +15325,11 @@ class AuroDropdown extends r$3 {
15308
15325
  },
15309
15326
 
15310
15327
  /**
15311
- * If true, the dropdown bib is taking the fullscreen when it's open
15328
+ * If true, the dropdown bib is taking the fullscreen when it's open.
15312
15329
  */
15313
15330
  isBibFullscreen: {
15314
15331
  type: Boolean,
15315
- reflect: true,
15332
+ reflect: true
15316
15333
  },
15317
15334
 
15318
15335
  /**
@@ -15338,6 +15355,15 @@ class AuroDropdown extends r$3 {
15338
15355
  reflect: true
15339
15356
  },
15340
15357
 
15358
+ /**
15359
+ * Defines if there is a label preset.
15360
+ * @private
15361
+ */
15362
+ labeled: {
15363
+ type: Boolean,
15364
+ reflect: true
15365
+ },
15366
+
15341
15367
  /**
15342
15368
  * If declared, the popover and trigger will be set to the same width.
15343
15369
  */
@@ -15346,6 +15372,16 @@ class AuroDropdown extends r$3 {
15346
15372
  reflect: true
15347
15373
  },
15348
15374
 
15375
+ /**
15376
+ * If declared, the bib will NOT flip to an alternate position
15377
+ * when there isn't enough space in the specified `placement`.
15378
+ * @default false
15379
+ */
15380
+ noFlip: {
15381
+ type: Boolean,
15382
+ reflect: true
15383
+ },
15384
+
15349
15385
  /**
15350
15386
  * If declared, the dropdown will not hide when moving focus outside the element.
15351
15387
  */
@@ -15362,16 +15398,32 @@ class AuroDropdown extends r$3 {
15362
15398
  reflect: true
15363
15399
  },
15364
15400
 
15401
+ /**
15402
+ * Gap between the trigger element and bib.
15403
+ * @default 0
15404
+ */
15405
+ offset: {
15406
+ type: Number,
15407
+ reflect: true
15408
+ },
15409
+
15365
15410
  onSlotChange: {
15366
15411
  type: Function,
15367
15412
  reflect: false
15368
15413
  },
15369
15414
 
15370
15415
  /**
15371
- * @private
15416
+ * Position where the bib should appear relative to the trigger.
15417
+ * Accepted values:
15418
+ * "top" | "right" | "bottom" | "left" |
15419
+ * "bottom-start" | "top-start" | "top-end" |
15420
+ * "right-start" | "right-end" | "bottom-end" |
15421
+ * "left-start" | "left-end"
15422
+ * @default bottom-start
15372
15423
  */
15373
15424
  placement: {
15374
- type: String
15425
+ type: String,
15426
+ reflect: true
15375
15427
  },
15376
15428
 
15377
15429
  /**
@@ -15417,6 +15469,7 @@ class AuroDropdown extends r$3 {
15417
15469
 
15418
15470
  disconnectedCallback() {
15419
15471
  super.disconnectedCallback();
15472
+ this.floater.disconnect();
15420
15473
  }
15421
15474
 
15422
15475
  updated(changedProperties) {
@@ -15546,13 +15599,21 @@ class AuroDropdown extends r$3 {
15546
15599
  handleTriggerContentSlotChange(event) {
15547
15600
  this.floater.handleTriggerTabIndex();
15548
15601
 
15549
- const triggerContentNodes = this.shadowRoot.querySelector('.triggerContent slot').assignedNodes();
15602
+ const triggerSlot = this.shadowRoot.querySelector('.triggerContent slot');
15550
15603
 
15551
- triggerContentNodes.forEach((node) => {
15552
- if (!this.triggerContentFocusable) {
15553
- this.triggerContentFocusable = this.containsFocusableElement(node);
15604
+ if (triggerSlot) {
15605
+
15606
+ const triggerContentNodes = triggerSlot.assignedNodes();
15607
+
15608
+ if (triggerContentNodes) {
15609
+
15610
+ triggerContentNodes.forEach((node) => {
15611
+ if (!this.triggerContentFocusable) {
15612
+ this.triggerContentFocusable = this.containsFocusableElement(node);
15613
+ }
15614
+ });
15554
15615
  }
15555
- });
15616
+ }
15556
15617
 
15557
15618
  const trigger = this.shadowRoot.querySelector('#trigger');
15558
15619
 
@@ -15606,6 +15667,29 @@ class AuroDropdown extends r$3 {
15606
15667
  }
15607
15668
  }
15608
15669
 
15670
+ /**
15671
+ * @private
15672
+ * @method handleLabelSlotChange
15673
+ * @param {event} event - The event object representing the slot change.
15674
+ * @description Handles the slot change event for the label slot.
15675
+ */
15676
+ handleLabelSlotChange (event) {
15677
+
15678
+ // Get the nodes from the event
15679
+ const nodes = event.target.assignedNodes();
15680
+
15681
+ // Guard clause for no nodes
15682
+ if (!nodes) {
15683
+ return;
15684
+ }
15685
+
15686
+ // Convert the nodes to a measurable array so we can get the length
15687
+ const nodesArr = Array.from(nodes);
15688
+
15689
+ // If the nodes array has a length, the dropdown is labeled
15690
+ this.labeled = nodesArr.length > 0;
15691
+ }
15692
+
15609
15693
  // function that renders the HTML and CSS into the scope of the component
15610
15694
  render() {
15611
15695
  return u$2`
@@ -15620,7 +15704,7 @@ class AuroDropdown extends r$3 {
15620
15704
  >
15621
15705
  <div class="triggerContentWrapper">
15622
15706
  <label class="label" id="triggerLabel" hasTrigger=${this.hasTriggerContent}>
15623
- <slot name="label"></slot>
15707
+ <slot name="label" @slotchange="${this.handleLabelSlotChange}"></slot>
15624
15708
  </label>
15625
15709
  <div class="triggerContent">
15626
15710
  <slot
@@ -22590,6 +22674,12 @@ class AuroDatePicker extends r$3 {
22590
22674
 
22591
22675
  this.monthFirst = true;
22592
22676
 
22677
+ // floaterConfig
22678
+ this.placement = 'bottom-start';
22679
+ this.offset = 0;
22680
+ this.noFlip = false;
22681
+ this.autoPlacement = false;
22682
+
22593
22683
  /**
22594
22684
  * @private
22595
22685
  */
@@ -22637,6 +22727,16 @@ class AuroDatePicker extends r$3 {
22637
22727
  static get properties() {
22638
22728
  return {
22639
22729
  // ...super.properties,
22730
+
22731
+ /**
22732
+ * If declared, bib's position will be automatically calculated where to appear.
22733
+ * @default false
22734
+ */
22735
+ autoPlacement: {
22736
+ type: Boolean,
22737
+ reflect: true
22738
+ },
22739
+
22640
22740
  /**
22641
22741
  * The last date that may be displayed in the calendar.
22642
22742
  */
@@ -22731,6 +22831,16 @@ class AuroDatePicker extends r$3 {
22731
22831
  type: Boolean
22732
22832
  },
22733
22833
 
22834
+ /**
22835
+ * If declared, the bib will NOT flip to an alternate position
22836
+ * when there isn't enough space in the specified `placement`.
22837
+ * @default false
22838
+ */
22839
+ noFlip: {
22840
+ type: Boolean,
22841
+ reflect: true
22842
+ },
22843
+
22734
22844
  /**
22735
22845
  * If set, disables auto-validation on blur.
22736
22846
  */
@@ -22738,6 +22848,29 @@ class AuroDatePicker extends r$3 {
22738
22848
  type: Boolean
22739
22849
  },
22740
22850
 
22851
+ /**
22852
+ * Gap between the trigger element and bib.
22853
+ * @default 0
22854
+ */
22855
+ offset: {
22856
+ type: Number,
22857
+ reflect: true
22858
+ },
22859
+
22860
+ /**
22861
+ * Position where the bib should appear relative to the trigger.
22862
+ * Accepted values:
22863
+ * "top" | "right" | "bottom" | "left" |
22864
+ * "bottom-start" | "top-start" | "top-end" |
22865
+ * "right-start" | "right-end" | "bottom-end" |
22866
+ * "left-start" | "left-end"
22867
+ * @default bottom-start
22868
+ */
22869
+ placement: {
22870
+ type: String,
22871
+ reflect: true
22872
+ },
22873
+
22741
22874
  /**
22742
22875
  * If set, turns on date range functionality in auro-calendar.
22743
22876
  */
@@ -22794,7 +22927,7 @@ class AuroDatePicker extends r$3 {
22794
22927
  */
22795
22928
  stacked: {
22796
22929
  type: Boolean,
22797
- reflect: true,
22930
+ reflect: true
22798
22931
  },
22799
22932
 
22800
22933
  /**
@@ -23494,6 +23627,10 @@ class AuroDatePicker extends r$3 {
23494
23627
  disableEventShow
23495
23628
  noHideOnThisFocusLoss
23496
23629
  fullscreenBreakpoint="sm"
23630
+ .placement="${this.placement}"
23631
+ .offset="${this.offset}"
23632
+ ?autoPlacement="${this.autoPlacement}"
23633
+ ?noFlip="${this.noFlip}"
23497
23634
  part="dropdown">
23498
23635
  <div slot="trigger" class="dpTriggerContent" part="trigger">
23499
23636
  <${this.inputTag}
@@ -104,7 +104,7 @@ The use of any Auro custom element has a dependency on the [Auro Design Tokens](
104
104
  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.
105
105
 
106
106
  ```html
107
- <script type="module "src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@2.1.0-beta.3/auro-datepicker/+esm"></script>
107
+ <script type="module" src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@2.1.0/auro-datepicker/+esm"></script>
108
108
  ```
109
109
  <!-- AURO-GENERATED-CONTENT:END -->
110
110