@aurodesignsystem/auro-formkit 2.1.0-beta.4 → 2.1.0-beta.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/CHANGELOG.md +18 -0
  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 +110 -16
  9. package/components/combobox/demo/index.min.js +110 -16
  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 +110 -16
  13. package/components/combobox/dist/registered.js +110 -16
  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 +128 -39
  17. package/components/counter/demo/index.min.js +128 -39
  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 +128 -39
  21. package/components/counter/dist/registered.js +128 -39
  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 +112 -17
  25. package/components/datepicker/demo/index.min.js +112 -17
  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 +112 -17
  29. package/components/datepicker/dist/registered.js +112 -17
  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 +56 -14
  33. package/components/dropdown/demo/index.min.js +56 -14
  34. package/components/dropdown/demo/readme.md +1 -1
  35. package/components/dropdown/dist/auro-dropdown.d.ts +46 -6
  36. package/components/dropdown/dist/index.js +56 -14
  37. package/components/dropdown/dist/registered.js +56 -14
  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 +1 -1
  47. package/components/select/demo/api.md +120 -17
  48. package/components/select/demo/api.min.js +110 -16
  49. package/components/select/demo/index.min.js +110 -16
  50. package/components/select/demo/readme.md +1 -1
  51. package/components/select/dist/auro-select.d.ts +42 -0
  52. package/components/select/dist/index.js +110 -16
  53. package/components/select/dist/registered.js +110 -16
  54. package/package.json +1 -1
@@ -11132,11 +11132,11 @@ class AuroBibtemplate extends LitElement {
11132
11132
  return {
11133
11133
  isFullscreen: {
11134
11134
  type: Boolean,
11135
- reflect: true,
11135
+ reflect: true
11136
11136
  },
11137
11137
  large: {
11138
11138
  type: Boolean,
11139
- reflect: true,
11139
+ reflect: true
11140
11140
  }
11141
11141
  };
11142
11142
  }
@@ -15095,12 +15095,17 @@ class AuroDropdown extends LitElement {
15095
15095
  this.disabled = false;
15096
15096
  this.error = false;
15097
15097
  this.inset = false;
15098
- this.placement = 'bottom-start';
15099
15098
  this.rounded = false;
15100
15099
  this.tabIndex = 0;
15101
15100
  this.noToggle = false;
15102
15101
  this.labeled = true;
15103
15102
 
15103
+ // floaterConfig
15104
+ this.placement = 'bottom-start';
15105
+ this.offset = 0;
15106
+ this.noFlip = false;
15107
+ this.autoPlacement = false;
15108
+
15104
15109
  /**
15105
15110
  * @private
15106
15111
  */
@@ -15121,16 +15126,6 @@ class AuroDropdown extends LitElement {
15121
15126
  */
15122
15127
  this.floater = new AuroFloatingUI();
15123
15128
 
15124
- /**
15125
- * @private
15126
- */
15127
- this.floaterConfig = {
15128
- placement: 'bottom-start',
15129
- flip: true,
15130
- autoPlacement: false,
15131
- offset: 0,
15132
- };
15133
-
15134
15129
  /**
15135
15130
  * Generate unique names for dependency components.
15136
15131
  */
@@ -15152,6 +15147,18 @@ class AuroDropdown extends LitElement {
15152
15147
  this.helpTextTag = versioning.generateTag('auro-formkit-dropdown-helptext', helpTextVersion$1, AuroHelpText$1);
15153
15148
  }
15154
15149
 
15150
+ /**
15151
+ * @ignore
15152
+ */
15153
+ get floaterConfig() {
15154
+ return {
15155
+ placement: this.placement,
15156
+ flip: !this.noFlip,
15157
+ autoPlacement: this.autoPlacement,
15158
+ offset: this.offset,
15159
+ };
15160
+ }
15161
+
15155
15162
  /**
15156
15163
  * Public method to hide the dropdown.
15157
15164
  * @returns {void}
@@ -15172,6 +15179,15 @@ class AuroDropdown extends LitElement {
15172
15179
  static get properties() {
15173
15180
  return {
15174
15181
 
15182
+ /**
15183
+ * If declared, bib's position will be automatically calculated where to appear.
15184
+ * @default false
15185
+ */
15186
+ autoPlacement: {
15187
+ type: Boolean,
15188
+ reflect: true
15189
+ },
15190
+
15175
15191
  /**
15176
15192
  * If declared, applies a border around the trigger slot.
15177
15193
  */
@@ -15256,7 +15272,7 @@ class AuroDropdown extends LitElement {
15256
15272
  */
15257
15273
  isBibFullscreen: {
15258
15274
  type: Boolean,
15259
- reflect: true,
15275
+ reflect: true
15260
15276
  },
15261
15277
 
15262
15278
  /**
@@ -15299,6 +15315,16 @@ class AuroDropdown extends LitElement {
15299
15315
  reflect: true
15300
15316
  },
15301
15317
 
15318
+ /**
15319
+ * If declared, the bib will NOT flip to an alternate position
15320
+ * when there isn't enough space in the specified `placement`.
15321
+ * @default false
15322
+ */
15323
+ noFlip: {
15324
+ type: Boolean,
15325
+ reflect: true
15326
+ },
15327
+
15302
15328
  /**
15303
15329
  * If declared, the dropdown will not hide when moving focus outside the element.
15304
15330
  */
@@ -15315,16 +15341,32 @@ class AuroDropdown extends LitElement {
15315
15341
  reflect: true
15316
15342
  },
15317
15343
 
15344
+ /**
15345
+ * Gap between the trigger element and bib.
15346
+ * @default 0
15347
+ */
15348
+ offset: {
15349
+ type: Number,
15350
+ reflect: true
15351
+ },
15352
+
15318
15353
  onSlotChange: {
15319
15354
  type: Function,
15320
15355
  reflect: false
15321
15356
  },
15322
15357
 
15323
15358
  /**
15324
- * @private
15359
+ * Position where the bib should appear relative to the trigger.
15360
+ * Accepted values:
15361
+ * "top" | "right" | "bottom" | "left" |
15362
+ * "bottom-start" | "top-start" | "top-end" |
15363
+ * "right-start" | "right-end" | "bottom-end" |
15364
+ * "left-start" | "left-end"
15365
+ * @default bottom-start
15325
15366
  */
15326
15367
  placement: {
15327
- type: String
15368
+ type: String,
15369
+ reflect: true
15328
15370
  },
15329
15371
 
15330
15372
  /**
@@ -22562,6 +22604,12 @@ class AuroDatePicker extends LitElement {
22562
22604
 
22563
22605
  this.monthFirst = true;
22564
22606
 
22607
+ // floaterConfig
22608
+ this.placement = 'bottom-start';
22609
+ this.offset = 0;
22610
+ this.noFlip = false;
22611
+ this.autoPlacement = false;
22612
+
22565
22613
  /**
22566
22614
  * @private
22567
22615
  */
@@ -22609,6 +22657,16 @@ class AuroDatePicker extends LitElement {
22609
22657
  static get properties() {
22610
22658
  return {
22611
22659
  // ...super.properties,
22660
+
22661
+ /**
22662
+ * If declared, bib's position will be automatically calculated where to appear.
22663
+ * @default false
22664
+ */
22665
+ autoPlacement: {
22666
+ type: Boolean,
22667
+ reflect: true
22668
+ },
22669
+
22612
22670
  /**
22613
22671
  * The last date that may be displayed in the calendar.
22614
22672
  */
@@ -22703,6 +22761,16 @@ class AuroDatePicker extends LitElement {
22703
22761
  type: Boolean
22704
22762
  },
22705
22763
 
22764
+ /**
22765
+ * If declared, the bib will NOT flip to an alternate position
22766
+ * when there isn't enough space in the specified `placement`.
22767
+ * @default false
22768
+ */
22769
+ noFlip: {
22770
+ type: Boolean,
22771
+ reflect: true
22772
+ },
22773
+
22706
22774
  /**
22707
22775
  * If set, disables auto-validation on blur.
22708
22776
  */
@@ -22710,6 +22778,29 @@ class AuroDatePicker extends LitElement {
22710
22778
  type: Boolean
22711
22779
  },
22712
22780
 
22781
+ /**
22782
+ * Gap between the trigger element and bib.
22783
+ * @default 0
22784
+ */
22785
+ offset: {
22786
+ type: Number,
22787
+ reflect: true
22788
+ },
22789
+
22790
+ /**
22791
+ * Position where the bib should appear relative to the trigger.
22792
+ * Accepted values:
22793
+ * "top" | "right" | "bottom" | "left" |
22794
+ * "bottom-start" | "top-start" | "top-end" |
22795
+ * "right-start" | "right-end" | "bottom-end" |
22796
+ * "left-start" | "left-end"
22797
+ * @default bottom-start
22798
+ */
22799
+ placement: {
22800
+ type: String,
22801
+ reflect: true
22802
+ },
22803
+
22713
22804
  /**
22714
22805
  * If set, turns on date range functionality in auro-calendar.
22715
22806
  */
@@ -22766,7 +22857,7 @@ class AuroDatePicker extends LitElement {
22766
22857
  */
22767
22858
  stacked: {
22768
22859
  type: Boolean,
22769
- reflect: true,
22860
+ reflect: true
22770
22861
  },
22771
22862
 
22772
22863
  /**
@@ -23466,6 +23557,10 @@ class AuroDatePicker extends LitElement {
23466
23557
  disableEventShow
23467
23558
  noHideOnThisFocusLoss
23468
23559
  fullscreenBreakpoint="sm"
23560
+ .placement="${this.placement}"
23561
+ .offset="${this.offset}"
23562
+ ?autoPlacement="${this.autoPlacement}"
23563
+ ?noFlip="${this.noFlip}"
23469
23564
  part="dropdown">
23470
23565
  <div slot="trigger" class="dpTriggerContent" part="trigger">
23471
23566
  <${this.inputTag}
@@ -107,7 +107,7 @@ The use of any Auro custom element has a dependency on the [Auro Design Tokens](
107
107
  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.
108
108
 
109
109
  ```html
110
- <script type="module "src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@2.1.0-beta.3/auro-dropdown/+esm"></script>
110
+ <script type="module "src="https://cdn.jsdelivr.net/npm/@aurodesignsystem/auro-formkit@2.1.0-beta.5/auro-dropdown/+esm"></script>
111
111
  ```
112
112
  <!-- AURO-GENERATED-CONTENT:END -->
113
113
 
@@ -11,25 +11,29 @@
11
11
 
12
12
  ## Properties
13
13
 
14
- | Property | Attribute | Type | Default | Description |
15
- |-------------------------|-------------------------|-------------|---------|--------------------------------------------------|
16
- | [bordered](#bordered) | `bordered` | ` Boolean ` | | If declared, applies a border around the trigger slot. |
17
- | [chevron](#chevron) | `chevron` | ` Boolean ` | | If declared, the dropdown displays a chevron on the right. |
18
- | [common](#common) | `common` | ` Boolean ` | | If declared, the dropdown will be styled with the common theme. |
19
- | [disabled](#disabled) | `disabled` | ` Boolean ` | | If declared, the dropdown is not interactive. |
20
- | [error](#error) | `error` | ` Boolean ` | | If declared in combination with `bordered` property or `helpText` slot content, will apply red color to both. |
21
- | [fluid](#fluid) | `fluid` | `Boolean` | | Makes the trigger to be full width of its parent container. |
22
- | [focusShow](#focusShow) | `focusShow` | ` Boolean ` | | If declared, the bib will display when focus is applied to the trigger. |
23
- | [fullscreenBreakpoint](#fullscreenBreakpoint) | `fullscreenBreakpoint` | ` String ` | | 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. |
24
- | [hoverToggle](#hoverToggle) | `hoverToggle` | ` Boolean ` | | If declared, the trigger will toggle the dropdown on mouseover/mouseout. |
25
- | [inset](#inset) | `inset` | ` Boolean ` | | If declared, will apply padding around trigger slot content. |
26
- | [isBibFullscreen](#isBibFullscreen) | `isBibFullscreen` | `boolean` | false | If true, the dropdown bib is taking the fullscreen when it's open. |
27
- | [isPopoverVisible](#isPopoverVisible) | `isPopoverVisible` | ` Boolean ` | false | If true, the dropdown bib is displayed. |
28
- | [matchWidth](#matchWidth) | `matchWidth` | ` Boolean ` | false | If declared, the popover and trigger will be set to the same width. |
29
- | [noHideOnThisFocusLoss](#noHideOnThisFocusLoss) | `noHideOnThisFocusLoss` | ` Boolean ` | false | If declared, the dropdown will not hide when moving focus outside the element. |
30
- | [noToggle](#noToggle) | `noToggle` | ` Boolean ` | | If declared, the trigger will only show the dropdown bib. |
31
- | [onSlotChange](#onSlotChange) | `onSlotChange` | | | |
32
- | [rounded](#rounded) | `rounded` | ` Boolean ` | | If declared, will apply border-radius to trigger and default slots. |
14
+ | Property | Attribute | Type | Default | Description |
15
+ |-------------------------|-------------------------|-------------|----------------|--------------------------------------------------|
16
+ | [autoPlacement](#autoPlacement) | `autoPlacement` | `boolean` | "false" | If declared, bib's position will be automatically calculated where to appear. |
17
+ | [bordered](#bordered) | `bordered` | ` Boolean ` | | If declared, applies a border around the trigger slot. |
18
+ | [chevron](#chevron) | `chevron` | ` Boolean ` | | If declared, the dropdown displays a chevron on the right. |
19
+ | [common](#common) | `common` | ` Boolean ` | | If declared, the dropdown will be styled with the common theme. |
20
+ | [disabled](#disabled) | `disabled` | ` Boolean ` | | If declared, the dropdown is not interactive. |
21
+ | [error](#error) | `error` | ` Boolean ` | | If declared in combination with `bordered` property or `helpText` slot content, will apply red color to both. |
22
+ | [fluid](#fluid) | `fluid` | `Boolean` | | Makes the trigger to be full width of its parent container. |
23
+ | [focusShow](#focusShow) | `focusShow` | ` Boolean ` | | If declared, the bib will display when focus is applied to the trigger. |
24
+ | [fullscreenBreakpoint](#fullscreenBreakpoint) | `fullscreenBreakpoint` | ` String ` | | 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. |
25
+ | [hoverToggle](#hoverToggle) | `hoverToggle` | ` Boolean ` | | If declared, the trigger will toggle the dropdown on mouseover/mouseout. |
26
+ | [inset](#inset) | `inset` | ` Boolean ` | | If declared, will apply padding around trigger slot content. |
27
+ | [isBibFullscreen](#isBibFullscreen) | `isBibFullscreen` | `boolean` | false | If true, the dropdown bib is taking the fullscreen when it's open. |
28
+ | [isPopoverVisible](#isPopoverVisible) | `isPopoverVisible` | ` Boolean ` | false | If true, the dropdown bib is displayed. |
29
+ | [matchWidth](#matchWidth) | `matchWidth` | ` Boolean ` | false | If declared, the popover and trigger will be set to the same width. |
30
+ | [noFlip](#noFlip) | `noFlip` | `boolean` | "false" | If declared, the bib will NOT flip to an alternate position<br />when there isn't enough space in the specified `placement`. |
31
+ | [noHideOnThisFocusLoss](#noHideOnThisFocusLoss) | `noHideOnThisFocusLoss` | ` Boolean ` | false | If declared, the dropdown will not hide when moving focus outside the element. |
32
+ | [noToggle](#noToggle) | `noToggle` | ` Boolean ` | | If declared, the trigger will only show the dropdown bib. |
33
+ | [offset](#offset) | `offset` | `number` | "0" | Gap between the trigger element and bib. |
34
+ | [onSlotChange](#onSlotChange) | `onSlotChange` | | | |
35
+ | [placement](#placement) | `placement` | `string` | "bottom-start" | Position where the bib should appear relative to the trigger.<br />Accepted values:<br />"top" \| "right" \| "bottom" \| "left" \|<br />"bottom-start" \| "top-start" \| "top-end" \|<br />"right-start" \| "right-end" \| "bottom-end" \|<br />"left-start" \| "left-end" |
36
+ | [rounded](#rounded) | `rounded` | ` Boolean ` | | If declared, will apply border-radius to trigger and default slots. |
33
37
 
34
38
  ## Methods
35
39
 
@@ -709,6 +713,149 @@ On mobile view, adding the `fullscreenBreakpoint="{breakpoint-token}"` will swit
709
713
  <!-- AURO-GENERATED-CONTENT:END -->
710
714
  </auro-accordion>
711
715
 
716
+ ### Customized bib position
717
+ The bib position can be customized with `placement`, `offset`, `flip`, `autoPlacement` attributes.
718
+
719
+ - `placement` specifies the preferred position where the bib should appear relative to the trigger.
720
+ - `offset` sets the distance between the trigger and the bib.
721
+ - When `autoPlacement` is enabled, smart positioning logic is applied to determine the best placement for the bib. If all sides have sufficient space, the bib will appear in the position specified by `placement`.
722
+ - Unless `noFlip` is enabled, if there isn't enough space for the preferred `placement`, the bib will automatically flip to an alternative position.
723
+
724
+ <div class="exampleWrapper">
725
+ <!-- AURO-GENERATED-CONTENT:START (FILE:src=./../apiExamples/floaterConfig.html) -->
726
+ <!-- The below content is automatically added from ./../apiExamples/floaterConfig.html -->
727
+ <style>
728
+ .floaterConfigDropdown::part(size) {
729
+ width: 300px;
730
+ max-height: 200px;
731
+ }
732
+ </style>
733
+ <div aria-label="custom label">
734
+ <auro-dropdown class="floaterConfigDropdown" inset bordered rounded chevron placement="bottom-end" offset="20" noFlip>
735
+ <div>
736
+ <p>
737
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
738
+ </p>
739
+ <p>
740
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
741
+ </p>
742
+ <p>
743
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
744
+ </p>
745
+ </div>
746
+ <div slot="trigger">
747
+ Trigger for bottom-end bib with 20px offset and noFlip
748
+ </div>
749
+ </auro-dropdown>
750
+ </div>
751
+ <div aria-label="custom label">
752
+ <auro-dropdown class="floaterConfigDropdown" inset bordered rounded chevron placement="bottom-end" offset="20">
753
+ <div>
754
+ <p>
755
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
756
+ </p>
757
+ <p>
758
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
759
+ </p>
760
+ <p>
761
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
762
+ </p>
763
+ </div>
764
+ <div slot="trigger">
765
+ Trigger for bottom-end bib with 20px offset and flip
766
+ </div>
767
+ </auro-dropdown>
768
+ </div>
769
+ <div aria-label="custom label">
770
+ <auro-dropdown class="floaterConfigDropdown" inset bordered rounded chevron autoPlacement noFlip placement="right" offset="20">
771
+ <div>
772
+ <p>
773
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
774
+ </p>
775
+ <p>
776
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
777
+ </p>
778
+ <p>
779
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
780
+ </p>
781
+ </div>
782
+ <div slot="trigger">
783
+ Trigger for right bib with 20px offset, autoPlacement and noFlip
784
+ </div>
785
+ </auro-dropdown>
786
+ </div>
787
+ <!-- AURO-GENERATED-CONTENT:END -->
788
+ </div>
789
+ <auro-accordion alignRight>
790
+ <span slot="trigger">See code</span>
791
+ <!-- AURO-GENERATED-CONTENT:START (CODE:src=./../apiExamples/floaterConfig.html) -->
792
+ <!-- The below code snippet is automatically added from ./../apiExamples/floaterConfig.html -->
793
+
794
+ ```html
795
+ <style>
796
+ .floaterConfigDropdown::part(size) {
797
+ width: 300px;
798
+ max-height: 200px;
799
+ }
800
+ </style>
801
+ <div aria-label="custom label">
802
+ <auro-dropdown class="floaterConfigDropdown" inset bordered rounded chevron placement="bottom-end" offset="20" noFlip>
803
+ <div>
804
+ <p>
805
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
806
+ </p>
807
+ <p>
808
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
809
+ </p>
810
+ <p>
811
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
812
+ </p>
813
+ </div>
814
+ <div slot="trigger">
815
+ Trigger for bottom-end bib with 20px offset and noFlip
816
+ </div>
817
+ </auro-dropdown>
818
+ </div>
819
+ <div aria-label="custom label">
820
+ <auro-dropdown class="floaterConfigDropdown" inset bordered rounded chevron placement="bottom-end" offset="20">
821
+ <div>
822
+ <p>
823
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
824
+ </p>
825
+ <p>
826
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
827
+ </p>
828
+ <p>
829
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
830
+ </p>
831
+ </div>
832
+ <div slot="trigger">
833
+ Trigger for bottom-end bib with 20px offset and flip
834
+ </div>
835
+ </auro-dropdown>
836
+ </div>
837
+ <div aria-label="custom label">
838
+ <auro-dropdown class="floaterConfigDropdown" inset bordered rounded chevron autoPlacement noFlip placement="right" offset="20">
839
+ <div>
840
+ <p>
841
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
842
+ </p>
843
+ <p>
844
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
845
+ </p>
846
+ <p>
847
+ Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
848
+ </p>
849
+ </div>
850
+ <div slot="trigger">
851
+ Trigger for right bib with 20px offset, autoPlacement and noFlip
852
+ </div>
853
+ </auro-dropdown>
854
+ </div>
855
+ ```
856
+ <!-- AURO-GENERATED-CONTENT:END -->
857
+ </auro-accordion>
858
+
712
859
  ### Slot Examples
713
860
 
714
861
  #### default
@@ -2991,12 +2991,17 @@ class AuroDropdown extends r {
2991
2991
  this.disabled = false;
2992
2992
  this.error = false;
2993
2993
  this.inset = false;
2994
- this.placement = 'bottom-start';
2995
2994
  this.rounded = false;
2996
2995
  this.tabIndex = 0;
2997
2996
  this.noToggle = false;
2998
2997
  this.labeled = true;
2999
2998
 
2999
+ // floaterConfig
3000
+ this.placement = 'bottom-start';
3001
+ this.offset = 0;
3002
+ this.noFlip = false;
3003
+ this.autoPlacement = false;
3004
+
3000
3005
  /**
3001
3006
  * @private
3002
3007
  */
@@ -3017,16 +3022,6 @@ class AuroDropdown extends r {
3017
3022
  */
3018
3023
  this.floater = new AuroFloatingUI();
3019
3024
 
3020
- /**
3021
- * @private
3022
- */
3023
- this.floaterConfig = {
3024
- placement: 'bottom-start',
3025
- flip: true,
3026
- autoPlacement: false,
3027
- offset: 0,
3028
- };
3029
-
3030
3025
  /**
3031
3026
  * Generate unique names for dependency components.
3032
3027
  */
@@ -3048,6 +3043,18 @@ class AuroDropdown extends r {
3048
3043
  this.helpTextTag = versioning.generateTag('auro-formkit-dropdown-helptext', helpTextVersion, AuroHelpText);
3049
3044
  }
3050
3045
 
3046
+ /**
3047
+ * @ignore
3048
+ */
3049
+ get floaterConfig() {
3050
+ return {
3051
+ placement: this.placement,
3052
+ flip: !this.noFlip,
3053
+ autoPlacement: this.autoPlacement,
3054
+ offset: this.offset,
3055
+ };
3056
+ }
3057
+
3051
3058
  /**
3052
3059
  * Public method to hide the dropdown.
3053
3060
  * @returns {void}
@@ -3068,6 +3075,15 @@ class AuroDropdown extends r {
3068
3075
  static get properties() {
3069
3076
  return {
3070
3077
 
3078
+ /**
3079
+ * If declared, bib's position will be automatically calculated where to appear.
3080
+ * @default false
3081
+ */
3082
+ autoPlacement: {
3083
+ type: Boolean,
3084
+ reflect: true
3085
+ },
3086
+
3071
3087
  /**
3072
3088
  * If declared, applies a border around the trigger slot.
3073
3089
  */
@@ -3152,7 +3168,7 @@ class AuroDropdown extends r {
3152
3168
  */
3153
3169
  isBibFullscreen: {
3154
3170
  type: Boolean,
3155
- reflect: true,
3171
+ reflect: true
3156
3172
  },
3157
3173
 
3158
3174
  /**
@@ -3195,6 +3211,16 @@ class AuroDropdown extends r {
3195
3211
  reflect: true
3196
3212
  },
3197
3213
 
3214
+ /**
3215
+ * If declared, the bib will NOT flip to an alternate position
3216
+ * when there isn't enough space in the specified `placement`.
3217
+ * @default false
3218
+ */
3219
+ noFlip: {
3220
+ type: Boolean,
3221
+ reflect: true
3222
+ },
3223
+
3198
3224
  /**
3199
3225
  * If declared, the dropdown will not hide when moving focus outside the element.
3200
3226
  */
@@ -3211,16 +3237,32 @@ class AuroDropdown extends r {
3211
3237
  reflect: true
3212
3238
  },
3213
3239
 
3240
+ /**
3241
+ * Gap between the trigger element and bib.
3242
+ * @default 0
3243
+ */
3244
+ offset: {
3245
+ type: Number,
3246
+ reflect: true
3247
+ },
3248
+
3214
3249
  onSlotChange: {
3215
3250
  type: Function,
3216
3251
  reflect: false
3217
3252
  },
3218
3253
 
3219
3254
  /**
3220
- * @private
3255
+ * Position where the bib should appear relative to the trigger.
3256
+ * Accepted values:
3257
+ * "top" | "right" | "bottom" | "left" |
3258
+ * "bottom-start" | "top-start" | "top-end" |
3259
+ * "right-start" | "right-end" | "bottom-end" |
3260
+ * "left-start" | "left-end"
3261
+ * @default bottom-start
3221
3262
  */
3222
3263
  placement: {
3223
- type: String
3264
+ type: String,
3265
+ reflect: true
3224
3266
  },
3225
3267
 
3226
3268
  /**