@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
@@ -4820,12 +4820,17 @@ class AuroDropdown extends LitElement {
4820
4820
  this.disabled = false;
4821
4821
  this.error = false;
4822
4822
  this.inset = false;
4823
- this.placement = 'bottom-start';
4824
4823
  this.rounded = false;
4825
4824
  this.tabIndex = 0;
4826
4825
  this.noToggle = false;
4827
4826
  this.labeled = true;
4828
4827
 
4828
+ // floaterConfig
4829
+ this.placement = 'bottom-start';
4830
+ this.offset = 0;
4831
+ this.noFlip = false;
4832
+ this.autoPlacement = false;
4833
+
4829
4834
  /**
4830
4835
  * @private
4831
4836
  */
@@ -4846,16 +4851,6 @@ class AuroDropdown extends LitElement {
4846
4851
  */
4847
4852
  this.floater = new AuroFloatingUI();
4848
4853
 
4849
- /**
4850
- * @private
4851
- */
4852
- this.floaterConfig = {
4853
- placement: 'bottom-start',
4854
- flip: true,
4855
- autoPlacement: false,
4856
- offset: 0,
4857
- };
4858
-
4859
4854
  /**
4860
4855
  * Generate unique names for dependency components.
4861
4856
  */
@@ -4877,6 +4872,18 @@ class AuroDropdown extends LitElement {
4877
4872
  this.helpTextTag = versioning.generateTag('auro-formkit-dropdown-helptext', helpTextVersion, AuroHelpText);
4878
4873
  }
4879
4874
 
4875
+ /**
4876
+ * @ignore
4877
+ */
4878
+ get floaterConfig() {
4879
+ return {
4880
+ placement: this.placement,
4881
+ flip: !this.noFlip,
4882
+ autoPlacement: this.autoPlacement,
4883
+ offset: this.offset,
4884
+ };
4885
+ }
4886
+
4880
4887
  /**
4881
4888
  * Public method to hide the dropdown.
4882
4889
  * @returns {void}
@@ -4897,6 +4904,15 @@ class AuroDropdown extends LitElement {
4897
4904
  static get properties() {
4898
4905
  return {
4899
4906
 
4907
+ /**
4908
+ * If declared, bib's position will be automatically calculated where to appear.
4909
+ * @default false
4910
+ */
4911
+ autoPlacement: {
4912
+ type: Boolean,
4913
+ reflect: true
4914
+ },
4915
+
4900
4916
  /**
4901
4917
  * If declared, applies a border around the trigger slot.
4902
4918
  */
@@ -4981,7 +4997,7 @@ class AuroDropdown extends LitElement {
4981
4997
  */
4982
4998
  isBibFullscreen: {
4983
4999
  type: Boolean,
4984
- reflect: true,
5000
+ reflect: true
4985
5001
  },
4986
5002
 
4987
5003
  /**
@@ -5024,6 +5040,16 @@ class AuroDropdown extends LitElement {
5024
5040
  reflect: true
5025
5041
  },
5026
5042
 
5043
+ /**
5044
+ * If declared, the bib will NOT flip to an alternate position
5045
+ * when there isn't enough space in the specified `placement`.
5046
+ * @default false
5047
+ */
5048
+ noFlip: {
5049
+ type: Boolean,
5050
+ reflect: true
5051
+ },
5052
+
5027
5053
  /**
5028
5054
  * If declared, the dropdown will not hide when moving focus outside the element.
5029
5055
  */
@@ -5040,16 +5066,32 @@ class AuroDropdown extends LitElement {
5040
5066
  reflect: true
5041
5067
  },
5042
5068
 
5069
+ /**
5070
+ * Gap between the trigger element and bib.
5071
+ * @default 0
5072
+ */
5073
+ offset: {
5074
+ type: Number,
5075
+ reflect: true
5076
+ },
5077
+
5043
5078
  onSlotChange: {
5044
5079
  type: Function,
5045
5080
  reflect: false
5046
5081
  },
5047
5082
 
5048
5083
  /**
5049
- * @private
5084
+ * Position where the bib should appear relative to the trigger.
5085
+ * Accepted values:
5086
+ * "top" | "right" | "bottom" | "left" |
5087
+ * "bottom-start" | "top-start" | "top-end" |
5088
+ * "right-start" | "right-end" | "bottom-end" |
5089
+ * "left-start" | "left-end"
5090
+ * @default bottom-start
5050
5091
  */
5051
5092
  placement: {
5052
- type: String
5093
+ type: String,
5094
+ reflect: true
5053
5095
  },
5054
5096
 
5055
5097
  /**
@@ -6216,11 +6258,11 @@ class AuroBibtemplate extends LitElement {
6216
6258
  return {
6217
6259
  isFullscreen: {
6218
6260
  type: Boolean,
6219
- reflect: true,
6261
+ reflect: true
6220
6262
  },
6221
6263
  large: {
6222
6264
  type: Boolean,
6223
- reflect: true,
6265
+ reflect: true
6224
6266
  }
6225
6267
  };
6226
6268
  }
@@ -6307,7 +6349,7 @@ class AuroBibtemplate extends LitElement {
6307
6349
 
6308
6350
  var bibTemplateVersion = '1.0.0';
6309
6351
 
6310
- var styleCss = css`:host{display:flex;flex-direction:column;gap:var(--ds-size-300, 1.5rem)}:host ::slotted(*:not(:first-child)){padding-top:var(--ds-size-300, 1.5rem);border-top-width:1px;border-top-style:solid}:host([isindropdown]){padding:var(--ds-size-300, 1.5rem)}`;
6352
+ var styleCss = css`.wrapper{display:flex;flex-direction:column;gap:var(--ds-size-300, 1.5rem)}.wrapper ::slotted(*:not(:first-child)){padding-top:var(--ds-size-300, 1.5rem);border-top-width:1px;border-top-style:solid}:host([isindropdown]) .wrapper{padding:var(--ds-size-300, 1.5rem)}`;
6311
6353
 
6312
6354
  var colorCss = css`:host ::slotted(*:not(:first-child)){border-color:var(--ds-color-border-divider-default, rgba(0, 0, 0, 0.12))}`;
6313
6355
 
@@ -6346,7 +6388,7 @@ class AuroCounterWrapper extends LitElement {
6346
6388
 
6347
6389
  // function that renders the HTML and CSS into the scope of the component
6348
6390
  render() {
6349
- return html$1`<slot></slot>`;
6391
+ return html$1`<div class="wrapper"><slot></slot></div>`;
6350
6392
  }
6351
6393
  }
6352
6394
 
@@ -6434,6 +6476,25 @@ class AuroCounterGroup extends LitElement {
6434
6476
  static get properties() {
6435
6477
  return {
6436
6478
 
6479
+ /**
6480
+ * If declared, bib's position will be automatically calculated where to appear.
6481
+ * @default false
6482
+ */
6483
+ autoPlacement: {
6484
+ type: Boolean,
6485
+ reflect: true
6486
+ },
6487
+
6488
+ /**
6489
+ * Defines the screen size breakpoint (`lg`, `md`, `sm`, or `xs`) at which the dropdown switches to fullscreen mode on mobile.
6490
+ * When expanded, the dropdown will automatically display in fullscreen mode if the screen size is equal to or smaller than the selected breakpoint.
6491
+ * @default sm
6492
+ */
6493
+ fullscreenBreakpoint: {
6494
+ type: String,
6495
+ reflect: true
6496
+ },
6497
+
6437
6498
  /**
6438
6499
  * Indicates if the counter group is displayed as a dropdown.
6439
6500
  */
@@ -6458,45 +6519,68 @@ class AuroCounterGroup extends LitElement {
6458
6519
  },
6459
6520
 
6460
6521
  /**
6461
- * Reflects the validity state.
6522
+ * If declared, make bib.fullscreen.headline in HeadingDisplay.
6523
+ * Otherwise, Heading 600
6462
6524
  */
6463
- validity: {
6464
- type: String,
6465
- reflect: true,
6525
+ largeFullscreenHeadline: {
6526
+ type: Boolean,
6527
+ reflect: true
6466
6528
  },
6467
6529
 
6468
6530
  /**
6469
- * The total value of the counters.
6531
+ * If declared, the bib will NOT flip to an alternate position
6532
+ * when there isn't enough space in the specified `placement`.
6533
+ * @default false
6470
6534
  */
6471
- total: {
6472
- type: Number,
6535
+ noFlip: {
6536
+ type: Boolean,
6537
+ reflect: true
6473
6538
  },
6474
6539
 
6475
6540
  /**
6476
- * The current individual values of the nested counters.
6541
+ * Gap between the trigger element and bib.
6542
+ * @default 0
6477
6543
  */
6478
- value: {
6479
- type: Object,
6544
+ offset: {
6545
+ type: Number,
6546
+ reflect: true
6480
6547
  },
6481
6548
 
6482
6549
  /**
6483
- * If declared, make bib.fullscreen.headline in HeadingDisplay.
6484
- * Otherwise, Heading 600
6550
+ * Position where the bib should appear relative to the trigger.
6551
+ * Accepted values:
6552
+ * "top" | "right" | "bottom" | "left" |
6553
+ * "bottom-start" | "top-start" | "top-end" |
6554
+ * "right-start" | "right-end" | "bottom-end" |
6555
+ * "left-start" | "left-end"
6556
+ * @default bottom-start
6485
6557
  */
6486
- largeFullscreenHeadline: {
6487
- type: Boolean,
6558
+ placement: {
6559
+ type: String,
6488
6560
  reflect: true
6489
6561
  },
6490
6562
 
6491
6563
  /**
6492
- * Defines the screen size breakpoint (`lg`, `md`, `sm`, or `xs`) at which the dropdown switches to fullscreen mode on mobile.
6493
- * When expanded, the dropdown will automatically display in fullscreen mode if the screen size is equal to or smaller than the selected breakpoint.
6494
- * @default sm
6564
+ * The total value of the counters.
6495
6565
  */
6496
- fullscreenBreakpoint: {
6566
+ total: {
6567
+ type: Number,
6568
+ },
6569
+
6570
+ /**
6571
+ * Reflects the validity state.
6572
+ */
6573
+ validity: {
6497
6574
  type: String,
6498
- reflect: true
6499
- }
6575
+ reflect: true,
6576
+ },
6577
+
6578
+ /**
6579
+ * The current individual values of the nested counters.
6580
+ */
6581
+ value: {
6582
+ type: Object,
6583
+ },
6500
6584
  };
6501
6585
  }
6502
6586
 
@@ -6739,7 +6823,12 @@ class AuroCounterGroup extends LitElement {
6739
6823
  render() {
6740
6824
  return html$1`
6741
6825
  ${this.isDropdown
6742
- ? html$1`<${this.dropdownTag} common chevron fullscreenBreakpoint="${this.fullscreenBreakpoint}">
6826
+ ? html$1`<${this.dropdownTag} common chevron
6827
+ .fullscreenBreakpoint="${this.fullscreenBreakpoint}"
6828
+ .placement="${this.placement}"
6829
+ .offset="${this.offset}"
6830
+ ?autoPlacement="${this.autoPlacement}"
6831
+ ?noFlip="${this.noFlip}">
6743
6832
  <div slot="trigger"><slot name="valueText">
6744
6833
  ${this.counters && Array.from(this.counters).map((counter, index) => `${counter.value} ${counter.defaultSlot}${index !== this.counters.length - 1 ? ', ' : ''}`)}
6745
6834
  </slot></div>
@@ -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-beta.5/auro-datepicker/+esm"></script>
108
108
  ```
109
109
  <!-- AURO-GENERATED-CONTENT:END -->
110
110
 
@@ -7,6 +7,7 @@
7
7
 
8
8
  | Property | Attribute | Modifiers | Type | Default | Description |
9
9
  |-----------------------------------|-----------------------------------|-----------|------------|--------------------------------------------------|--------------------------------------------------|
10
+ | [autoPlacement](#autoPlacement) | `autoPlacement` | | `boolean` | "false" | If declared, bib's position will be automatically calculated where to appear. |
10
11
  | [calendarEndDate](#calendarEndDate) | `calendarEndDate` | | `string` | "undefined" | The last date that may be displayed in the calendar. |
11
12
  | [calendarFocusDate](#calendarFocusDate) | `calendarFocusDate` | | `string` | "value" | The date that will first be visually rendered to the user in the calendar. |
12
13
  | [calendarStartDate](#calendarStartDate) | `calendarStartDate` | | `string` | "undefined" | The first date that may be displayed in the calendar. |
@@ -18,7 +19,10 @@
18
19
  | [maxDate](#maxDate) | `maxDate` | | `string` | | Maximum date. All dates after will be disabled. |
19
20
  | [minDate](#minDate) | `minDate` | | `string` | | Minimum date. All dates before will be disabled. |
20
21
  | [monthNames](#monthNames) | `monthNames` | | `array` | ["January","February","March","April","May","June","July","August","September","October","November","December"] | Names of all 12 months to render in the calendar, used for localization of date string in mobile layout. |
22
+ | [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`. |
21
23
  | [noValidate](#noValidate) | `noValidate` | | `boolean` | false | If set, disables auto-validation on blur. |
24
+ | [offset](#offset) | `offset` | | `number` | "0" | Gap between the trigger element and bib. |
25
+ | [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" |
22
26
  | [range](#range) | `range` | | `boolean` | false | If set, turns on date range functionality in auro-calendar. |
23
27
  | [required](#required) | `required` | | `boolean` | false | Populates the `required` attribute on the input. Used for client-side validation. |
24
28
  | [setCustomValidity](#setCustomValidity) | `setCustomValidity` | | `string` | | Sets a custom help text message to display for all validityStates. |
@@ -603,6 +607,63 @@ Set stacked attribute to make range datepicker stacked style.
603
607
  <!-- AURO-GENERATED-CONTENT:END -->
604
608
  </auro-accordion>
605
609
 
610
+ ### Customized bib position
611
+ The bib position can be customized with `placement`, `offset`, `flip`, `autoPlacement` attributes.
612
+
613
+ - `placement` specifies the preferred position where the bib should appear relative to the trigger.
614
+ - `offset` sets the distance between the trigger and the bib.
615
+ - 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`.
616
+ - Unless `noFlip` is enabled, if there isn't enough space for the preferred `placement`, the bib will automatically flip to an alternative position.
617
+
618
+ <div class="exampleWrapper">
619
+ <!-- AURO-GENERATED-CONTENT:START (FILE:src=./../apiExamples/floaterConfig.html) -->
620
+ <!-- The below content is automatically added from ./../apiExamples/floaterConfig.html -->
621
+ <div style="width: 400px">
622
+ <auro-datepicker offset="20" placement="bottom-start" noFlip>
623
+ <span slot="bib.fullscreen.headline">Datepicker Headline</span>
624
+ <span slot="fromLabel">bottom-start with 20px offset and noFlip</span>
625
+ <span slot="bib.fullscreen.dateLabel">Choose a date</span>
626
+ </auro-datepicker>
627
+ <auro-datepicker offset="20" placement="bottom-start">
628
+ <span slot="bib.fullscreen.headline">Datepicker Headline</span>
629
+ <span slot="fromLabel">bottom-start with 20px offset and flip</span>
630
+ <span slot="bib.fullscreen.dateLabel">Choose a date</span>
631
+ </auro-datepicker>
632
+ <auro-datepicker offset="20" placement="right" autoPlacement noFlip>
633
+ <span slot="bib.fullscreen.headline">Datepicker Headline</span>
634
+ <span slot="fromLabel">right with 20px offset, noFlip and autoPlacement</span>
635
+ <span slot="bib.fullscreen.dateLabel">Choose a date</span>
636
+ </auro-datepicker>
637
+ </div>
638
+ <!-- AURO-GENERATED-CONTENT:END -->
639
+ </div>
640
+ <auro-accordion alignRight>
641
+ <span slot="trigger">See code</span>
642
+ <!-- AURO-GENERATED-CONTENT:START (CODE:src=./../apiExamples/floaterConfig.html) -->
643
+ <!-- The below code snippet is automatically added from ./../apiExamples/floaterConfig.html -->
644
+
645
+ ```html
646
+ <div style="width: 400px">
647
+ <auro-datepicker offset="20" placement="bottom-start" noFlip>
648
+ <span slot="bib.fullscreen.headline">Datepicker Headline</span>
649
+ <span slot="fromLabel">bottom-start with 20px offset and noFlip</span>
650
+ <span slot="bib.fullscreen.dateLabel">Choose a date</span>
651
+ </auro-datepicker>
652
+ <auro-datepicker offset="20" placement="bottom-start">
653
+ <span slot="bib.fullscreen.headline">Datepicker Headline</span>
654
+ <span slot="fromLabel">bottom-start with 20px offset and flip</span>
655
+ <span slot="bib.fullscreen.dateLabel">Choose a date</span>
656
+ </auro-datepicker>
657
+ <auro-datepicker offset="20" placement="right" autoPlacement noFlip>
658
+ <span slot="bib.fullscreen.headline">Datepicker Headline</span>
659
+ <span slot="fromLabel">right with 20px offset, noFlip and autoPlacement</span>
660
+ <span slot="bib.fullscreen.dateLabel">Choose a date</span>
661
+ </auro-datepicker>
662
+ </div>
663
+ ```
664
+ <!-- AURO-GENERATED-CONTENT:END -->
665
+ </auro-accordion>
666
+
606
667
  #### validity
607
668
 
608
669
  Specifies the `validityState` the element is in. Upon first interaction, or presetting the `error` attribute, the component will validate on `focusout`. After validation, `validityState` can be queried from the component by using the following JavaScript.
@@ -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
  }
@@ -15411,12 +15411,17 @@ 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;
15418
15417
  this.labeled = true;
15419
15418
 
15419
+ // floaterConfig
15420
+ this.placement = 'bottom-start';
15421
+ this.offset = 0;
15422
+ this.noFlip = false;
15423
+ this.autoPlacement = false;
15424
+
15420
15425
  /**
15421
15426
  * @private
15422
15427
  */
@@ -15437,16 +15442,6 @@ class AuroDropdown extends r$3 {
15437
15442
  */
15438
15443
  this.floater = new AuroFloatingUI();
15439
15444
 
15440
- /**
15441
- * @private
15442
- */
15443
- this.floaterConfig = {
15444
- placement: 'bottom-start',
15445
- flip: true,
15446
- autoPlacement: false,
15447
- offset: 0,
15448
- };
15449
-
15450
15445
  /**
15451
15446
  * Generate unique names for dependency components.
15452
15447
  */
@@ -15468,6 +15463,18 @@ class AuroDropdown extends r$3 {
15468
15463
  this.helpTextTag = versioning.generateTag('auro-formkit-dropdown-helptext', helpTextVersion$1, AuroHelpText$1);
15469
15464
  }
15470
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
+
15471
15478
  /**
15472
15479
  * Public method to hide the dropdown.
15473
15480
  * @returns {void}
@@ -15488,6 +15495,15 @@ class AuroDropdown extends r$3 {
15488
15495
  static get properties() {
15489
15496
  return {
15490
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
+
15491
15507
  /**
15492
15508
  * If declared, applies a border around the trigger slot.
15493
15509
  */
@@ -15572,7 +15588,7 @@ class AuroDropdown extends r$3 {
15572
15588
  */
15573
15589
  isBibFullscreen: {
15574
15590
  type: Boolean,
15575
- reflect: true,
15591
+ reflect: true
15576
15592
  },
15577
15593
 
15578
15594
  /**
@@ -15615,6 +15631,16 @@ class AuroDropdown extends r$3 {
15615
15631
  reflect: true
15616
15632
  },
15617
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
+
15618
15644
  /**
15619
15645
  * If declared, the dropdown will not hide when moving focus outside the element.
15620
15646
  */
@@ -15631,16 +15657,32 @@ class AuroDropdown extends r$3 {
15631
15657
  reflect: true
15632
15658
  },
15633
15659
 
15660
+ /**
15661
+ * Gap between the trigger element and bib.
15662
+ * @default 0
15663
+ */
15664
+ offset: {
15665
+ type: Number,
15666
+ reflect: true
15667
+ },
15668
+
15634
15669
  onSlotChange: {
15635
15670
  type: Function,
15636
15671
  reflect: false
15637
15672
  },
15638
15673
 
15639
15674
  /**
15640
- * @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
15641
15682
  */
15642
15683
  placement: {
15643
- type: String
15684
+ type: String,
15685
+ reflect: true
15644
15686
  },
15645
15687
 
15646
15688
  /**
@@ -22891,6 +22933,12 @@ class AuroDatePicker extends r$3 {
22891
22933
 
22892
22934
  this.monthFirst = true;
22893
22935
 
22936
+ // floaterConfig
22937
+ this.placement = 'bottom-start';
22938
+ this.offset = 0;
22939
+ this.noFlip = false;
22940
+ this.autoPlacement = false;
22941
+
22894
22942
  /**
22895
22943
  * @private
22896
22944
  */
@@ -22938,6 +22986,16 @@ class AuroDatePicker extends r$3 {
22938
22986
  static get properties() {
22939
22987
  return {
22940
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
+
22941
22999
  /**
22942
23000
  * The last date that may be displayed in the calendar.
22943
23001
  */
@@ -23032,6 +23090,16 @@ class AuroDatePicker extends r$3 {
23032
23090
  type: Boolean
23033
23091
  },
23034
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
+
23035
23103
  /**
23036
23104
  * If set, disables auto-validation on blur.
23037
23105
  */
@@ -23039,6 +23107,29 @@ class AuroDatePicker extends r$3 {
23039
23107
  type: Boolean
23040
23108
  },
23041
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
+
23042
23133
  /**
23043
23134
  * If set, turns on date range functionality in auro-calendar.
23044
23135
  */
@@ -23095,7 +23186,7 @@ class AuroDatePicker extends r$3 {
23095
23186
  */
23096
23187
  stacked: {
23097
23188
  type: Boolean,
23098
- reflect: true,
23189
+ reflect: true
23099
23190
  },
23100
23191
 
23101
23192
  /**
@@ -23795,6 +23886,10 @@ class AuroDatePicker extends r$3 {
23795
23886
  disableEventShow
23796
23887
  noHideOnThisFocusLoss
23797
23888
  fullscreenBreakpoint="sm"
23889
+ .placement="${this.placement}"
23890
+ .offset="${this.offset}"
23891
+ ?autoPlacement="${this.autoPlacement}"
23892
+ ?noFlip="${this.noFlip}"
23798
23893
  part="dropdown">
23799
23894
  <div slot="trigger" class="dpTriggerContent" part="trigger">
23800
23895
  <${this.inputTag}