@sula-tech/webcomponents 0.12.0 → 0.14.0

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 (31) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/sula-avatar_21.cjs.entry.js +71 -25
  3. package/dist/cjs/sula-avatar_21.cjs.entry.js.map +1 -1
  4. package/dist/cjs/webcomponents.cjs.js +1 -1
  5. package/dist/collection/components/sula-dropdown/sula-dropdown.css +1 -1
  6. package/dist/collection/components/sula-dropdown/sula-dropdown.js +78 -9
  7. package/dist/collection/components/sula-dropdown/sula-dropdown.js.map +1 -1
  8. package/dist/collection/components/sula-dropdown/sula-dropdown.stories.js +130 -0
  9. package/dist/collection/components/sula-dropdown/sula-dropdown.stories.js.map +1 -1
  10. package/dist/collection/components/sula-textfield/sula-textfield.js +56 -21
  11. package/dist/collection/components/sula-textfield/sula-textfield.js.map +1 -1
  12. package/dist/collection/components/sula-textfield/sula-textfield.stories.js +69 -5
  13. package/dist/collection/components/sula-textfield/sula-textfield.stories.js.map +1 -1
  14. package/dist/components/sula-dropdown.js +23 -10
  15. package/dist/components/sula-dropdown.js.map +1 -1
  16. package/dist/components/sula-textfield.js +51 -15
  17. package/dist/components/sula-textfield.js.map +1 -1
  18. package/dist/esm/loader.js +1 -1
  19. package/dist/esm/sula-avatar_21.entry.js +71 -25
  20. package/dist/esm/sula-avatar_21.entry.js.map +1 -1
  21. package/dist/esm/webcomponents.js +1 -1
  22. package/dist/types/components/sula-dropdown/sula-dropdown.d.ts +12 -0
  23. package/dist/types/components/sula-dropdown/sula-dropdown.stories.d.ts +27 -0
  24. package/dist/types/components/sula-textfield/sula-textfield.d.ts +9 -2
  25. package/dist/types/components/sula-textfield/sula-textfield.stories.d.ts +1 -0
  26. package/dist/types/components.d.ts +32 -6
  27. package/dist/webcomponents/{p-3c319b71.entry.js → p-01cb6887.entry.js} +94 -43
  28. package/dist/webcomponents/p-01cb6887.entry.js.map +1 -0
  29. package/dist/webcomponents/webcomponents.esm.js +4 -1
  30. package/package.json +1 -1
  31. package/dist/webcomponents/p-3c319b71.entry.js.map +0 -1
@@ -16,7 +16,7 @@ var patchBrowser = () => {
16
16
 
17
17
  patchBrowser().then(async (options) => {
18
18
  await globalScripts();
19
- return bootstrapLazy([["sula-avatar_21",[[1,"sula-modal",{"opened":[1028],"blockBodyScroll":[1028,"block-body-scroll"],"closeOnClickOutside":[1028,"close-on-click-outside"],"type":[1],"headerIcon":[1,"header-icon"],"modalTitle":[1,"modal-title"],"promoImage":[1,"promo-image"],"subTitle":[1,"sub-title"],"primaryButtonText":[1,"primary-button-text"],"secondaryButtonText":[1,"secondary-button-text"],"slotOverflow":[1,"slot-overflow"],"isAnimating":[32],"shouldRender":[32]},null,{"opened":["handleOpenedChange"]}],[1,"sula-chip",{"text":[1025],"appearance":[1025],"disabled":[1028],"items":[1040],"selected":[1028],"isFocused":[32],"showItems":[32]},[[4,"click","handleDocumentClick"]]],[1,"sula-dropdown",{"label":[1025],"disabled":[1028],"items":[1040],"value":[1040],"searchable":[516],"menuMaxHeight":[2,"menu-max-height"],"selectedItem":[32],"showItems":[32],"isFocused":[32],"searchTerm":[32],"filteredItems":[32],"openUpward":[32]},[[4,"click","handleDocumentClick"],[9,"resize","handleWindowResize"]],{"value":["handleValueChange"],"showItems":["handleShowItemsChange"]}],[1,"sula-avatar",{"size":[1],"imageUrl":[1,"image-url"],"text":[1],"icon":[1]}],[1,"sula-badge",{"status":[1025],"size":[1025],"type":[1025],"text":[1025],"icon":[1025],"hasSlotContent":[32]}],[1,"sula-breadcrumb",{"items":[1040]}],[1,"sula-checkbox",{"type":[1025],"label":[1025],"subTitle":[1025,"sub-title"],"disabled":[1028],"checked":[1028],"isFocus":[32]}],[1,"sula-progress-bar",{"appearance":[1025],"state":[1025],"topLabel":[1025,"top-label"],"bottomLabel":[1025,"bottom-label"],"progress":[1026],"showProgress":[1028,"show-progress"]},null,{"progress":["validateProgress"]}],[1,"sula-search-bar",{"value":[1025],"searchBarStyle":[1025,"search-bar-style"],"placeholder":[1025],"leftIcon":[1025,"left-icon"],"rightIcon":[1025,"right-icon"],"isFocused":[32],"textValue":[32]}],[1,"sula-segmented-control",{"items":[1040],"type":[1025],"size":[1025],"color":[1025]}],[1,"sula-tag",{"label":[1025],"icon":[1025],"iconStatus":[1025,"icon-status"],"size":[1025],"appearance":[1025],"fontWeight":[1025,"font-weight"]}],[1,"sula-textfield",{"value":[1025],"type":[1],"status":[1025],"label":[1],"placeholder":[1],"disabled":[1028],"helpText":[1,"help-text"],"maxLength":[2,"max-length"],"icon":[1],"maskPattern":[1,"mask-pattern"],"maskPatternSwitchMaxLength":[2,"mask-pattern-switch-max-length"],"inputIsOpen":[32],"textValue":[32],"showPassword":[32],"inputIsFocused":[32]},[[4,"click","handleClick"]],{"value":["watchValueHandler"],"maskPattern":["watchMaskPatternHandler"],"maskPatternSwitchMaxLength":["watchMaskPatternSwitchMaxLengthHandler"]}],[1,"sula-tiles",{"type":[1],"size":[1],"ellipsis":[4],"icon":[1],"text":[1],"subText":[1,"sub-text"],"disabled":[4]}],[1,"sula-timeline-list",{"sulaTimelineList":[1040,"sula-timeline-list"]}],[1,"sula-radio-button",{"checked":[1028],"label":[1025],"disabled":[1028],"radioIsFocus":[32]}],[1,"sula-switch",{"type":[1025],"active":[1028],"disabled":[1028],"label":[1025],"subTitle":[1025,"sub-title"],"responsive":[4],"isFocus":[32]}],[1,"sula-textarea",{"value":[1025],"status":[1025],"label":[1],"placeholder":[1],"disabled":[1028],"helpText":[1,"help-text"],"maxLength":[2,"max-length"],"rows":[2],"isActive":[32],"textValue":[32],"textareaIsFocused":[32],"labelPadding":[32]},[[4,"click","handleClick"]],{"value":["watchValueHandler"]}],[1,"sula-button",{"text":[1025],"icon":[1025],"leftIcon":[1025,"left-icon"],"rightIcon":[1025,"right-icon"],"appearance":[1025],"type":[1025],"size":[1025],"status":[1025],"loading":[1028],"buttonDisabled":[1028,"button-disabled"],"fullWidth":[1028,"full-width"]}],[1,"sula-loader",{"size":[1],"animationInstance":[32]}],[1,"sula-menu-select-list",{"items":[1040],"fullWidth":[4,"full-width"],"maxHeight":[2,"max-height"],"selectedValue":[16,"selected-value"]}],[0,"sula-icon",{"icon":[1],"customClass":[1,"custom-class"]}]]]], options);
19
+ return bootstrapLazy([["sula-avatar_21",[[1,"sula-modal",{"opened":[1028],"blockBodyScroll":[1028,"block-body-scroll"],"closeOnClickOutside":[1028,"close-on-click-outside"],"type":[1],"headerIcon":[1,"header-icon"],"modalTitle":[1,"modal-title"],"promoImage":[1,"promo-image"],"subTitle":[1,"sub-title"],"primaryButtonText":[1,"primary-button-text"],"secondaryButtonText":[1,"secondary-button-text"],"slotOverflow":[1,"slot-overflow"],"isAnimating":[32],"shouldRender":[32]},null,{"opened":["handleOpenedChange"]}],[1,"sula-chip",{"text":[1025],"appearance":[1025],"disabled":[1028],"items":[1040],"selected":[1028],"isFocused":[32],"showItems":[32]},[[4,"click","handleDocumentClick"]]],[1,"sula-dropdown",{"label":[1025],"disabled":[1028],"items":[1040],"value":[1040],"searchable":[516],"menuMaxHeight":[2,"menu-max-height"],"contentMaxHeight":[2,"content-max-height"],"customContent":[516,"custom-content"],"closeOnSelect":[4,"close-on-select"],"selectedItem":[32],"showItems":[32],"isFocused":[32],"searchTerm":[32],"filteredItems":[32],"openUpward":[32]},[[4,"click","handleDocumentClick"],[9,"resize","handleWindowResize"]],{"value":["handleValueChange"],"showItems":["handleShowItemsChange"]}],[1,"sula-avatar",{"size":[1],"imageUrl":[1,"image-url"],"text":[1],"icon":[1]}],[1,"sula-badge",{"status":[1025],"size":[1025],"type":[1025],"text":[1025],"icon":[1025],"hasSlotContent":[32]}],[1,"sula-breadcrumb",{"items":[1040]}],[1,"sula-checkbox",{"type":[1025],"label":[1025],"subTitle":[1025,"sub-title"],"disabled":[1028],"checked":[1028],"isFocus":[32]}],[1,"sula-progress-bar",{"appearance":[1025],"state":[1025],"topLabel":[1025,"top-label"],"bottomLabel":[1025,"bottom-label"],"progress":[1026],"showProgress":[1028,"show-progress"]},null,{"progress":["validateProgress"]}],[1,"sula-search-bar",{"value":[1025],"searchBarStyle":[1025,"search-bar-style"],"placeholder":[1025],"leftIcon":[1025,"left-icon"],"rightIcon":[1025,"right-icon"],"isFocused":[32],"textValue":[32]}],[1,"sula-segmented-control",{"items":[1040],"type":[1025],"size":[1025],"color":[1025]}],[1,"sula-tag",{"label":[1025],"icon":[1025],"iconStatus":[1025,"icon-status"],"size":[1025],"appearance":[1025],"fontWeight":[1025,"font-weight"]}],[1,"sula-textfield",{"value":[1025],"type":[1],"status":[1025],"label":[1],"placeholder":[1],"disabled":[1028],"helpText":[1,"help-text"],"maxLength":[2,"max-length"],"icon":[1],"maskPattern":[1,"mask-pattern"],"maskPatternSwitchMaxLength":[2,"mask-pattern-switch-max-length"],"inputIsOpen":[32],"textValue":[32],"showPassword":[32],"inputIsFocused":[32]},[[4,"click","handleClick"]],{"value":["watchValueHandler"],"maskPattern":["watchMaskPatternHandler"],"maskPatternSwitchMaxLength":["watchMaskPatternSwitchMaxLengthHandler"]}],[1,"sula-tiles",{"type":[1],"size":[1],"ellipsis":[4],"icon":[1],"text":[1],"subText":[1,"sub-text"],"disabled":[4]}],[1,"sula-timeline-list",{"sulaTimelineList":[1040,"sula-timeline-list"]}],[1,"sula-radio-button",{"checked":[1028],"label":[1025],"disabled":[1028],"radioIsFocus":[32]}],[1,"sula-switch",{"type":[1025],"active":[1028],"disabled":[1028],"label":[1025],"subTitle":[1025,"sub-title"],"responsive":[4],"isFocus":[32]}],[1,"sula-textarea",{"value":[1025],"status":[1025],"label":[1],"placeholder":[1],"disabled":[1028],"helpText":[1,"help-text"],"maxLength":[2,"max-length"],"rows":[2],"isActive":[32],"textValue":[32],"textareaIsFocused":[32],"labelPadding":[32]},[[4,"click","handleClick"]],{"value":["watchValueHandler"]}],[1,"sula-button",{"text":[1025],"icon":[1025],"leftIcon":[1025,"left-icon"],"rightIcon":[1025,"right-icon"],"appearance":[1025],"type":[1025],"size":[1025],"status":[1025],"loading":[1028],"buttonDisabled":[1028,"button-disabled"],"fullWidth":[1028,"full-width"]}],[1,"sula-loader",{"size":[1],"animationInstance":[32]}],[1,"sula-menu-select-list",{"items":[1040],"fullWidth":[4,"full-width"],"maxHeight":[2,"max-height"],"selectedValue":[16,"selected-value"]}],[0,"sula-icon",{"icon":[1],"customClass":[1,"custom-class"]}]]]], options);
20
20
  });
21
21
  //# sourceMappingURL=webcomponents.js.map
22
22
 
@@ -25,6 +25,18 @@ export declare class SulaDropdown {
25
25
  * Maximum height for dropdown menu in pixels
26
26
  */
27
27
  menuMaxHeight: number;
28
+ /**
29
+ * Maximum height for custom content area in pixels
30
+ */
31
+ contentMaxHeight: number;
32
+ /**
33
+ * Enable custom content via slot instead of items list
34
+ */
35
+ customContent?: boolean;
36
+ /**
37
+ * Close dropdown when an item is selected or content is clicked
38
+ */
39
+ closeOnSelect: boolean;
28
40
  /**
29
41
  * Event emitted when dropdown is clicked
30
42
  */
@@ -50,6 +50,30 @@ declare const _default: {
50
50
  required: boolean;
51
51
  };
52
52
  };
53
+ customContent: {
54
+ control: string;
55
+ defaultValue: boolean;
56
+ description: string;
57
+ type: {
58
+ required: boolean;
59
+ };
60
+ };
61
+ contentMaxHeight: {
62
+ control: string;
63
+ defaultValue: number;
64
+ description: string;
65
+ type: {
66
+ required: boolean;
67
+ };
68
+ };
69
+ closeOnSelect: {
70
+ control: string;
71
+ defaultValue: boolean;
72
+ description: string;
73
+ type: {
74
+ required: boolean;
75
+ };
76
+ };
53
77
  dropdownClicked: {
54
78
  action: string;
55
79
  description: string;
@@ -85,3 +109,6 @@ export declare const LongItemsList: any;
85
109
  export declare const Searchable: any;
86
110
  export declare const SearchableWithSelectedValue: any;
87
111
  export declare const AutoPositioning: any;
112
+ export declare const CustomContent: any;
113
+ export declare const CustomContentPersistent: any;
114
+ export declare const CustomContentWithCheckboxes: any;
@@ -52,9 +52,14 @@ export declare class SulaTextfield {
52
52
  */
53
53
  maskPattern?: string | string[];
54
54
  /**
55
- * Max input length used to switch between the first and second mask pattern.
55
+ * Optional manual switch lengths used to switch between mask patterns.
56
+ * If not provided, switch lengths are automatically inferred from `maskPattern`.
57
+ *
58
+ * - When number: switches between first and second pattern at this length
59
+ * - When array: defines multiple switch points for multiple patterns
60
+ * Example: [11, 14] means 0-11 uses first pattern, 12-14 uses second, 15+ uses third
56
61
  */
57
- maskPatternSwitchMaxLength: number;
62
+ maskPatternSwitchMaxLength?: number | number[];
58
63
  /**
59
64
  * Event emitted when input is focused.
60
65
  */
@@ -90,6 +95,8 @@ export declare class SulaTextfield {
90
95
  private hasMaskPatternConfigured;
91
96
  private getMaskPatterns;
92
97
  private getMaskPatternByValueLength;
98
+ private getMaskPatternByAutoInference;
99
+ private normalizeProvidedSwitchLengths;
93
100
  handlePasswordIconClicked(): void;
94
101
  getInputIcon(): string;
95
102
  render(): any;
@@ -126,6 +126,7 @@ export default _default;
126
126
  export declare const Default: any;
127
127
  export declare const WithMask: any;
128
128
  export declare const WithCpfCnpjMask: any;
129
+ export declare const WithMultipleMasks: any;
129
130
  export declare const WithValue: any;
130
131
  export declare const WithHelpText: any;
131
132
  export declare const WithMaxLength: any;
@@ -203,6 +203,20 @@ export namespace Components {
203
203
  "text": string;
204
204
  }
205
205
  interface SulaDropdown {
206
+ /**
207
+ * Close dropdown when an item is selected or content is clicked
208
+ * @default true
209
+ */
210
+ "closeOnSelect": boolean;
211
+ /**
212
+ * Maximum height for custom content area in pixels
213
+ * @default 260
214
+ */
215
+ "contentMaxHeight": number;
216
+ /**
217
+ * Enable custom content via slot instead of items list
218
+ */
219
+ "customContent"?: boolean;
206
220
  /**
207
221
  * Dropdown is disabled
208
222
  * @default false
@@ -538,10 +552,9 @@ export namespace Components {
538
552
  */
539
553
  "maskPattern"?: string | string[];
540
554
  /**
541
- * Max input length used to switch between the first and second mask pattern.
542
- * @default 14
555
+ * Optional manual switch lengths used to switch between mask patterns. If not provided, switch lengths are automatically inferred from `maskPattern`. - When number: switches between first and second pattern at this length - When array: defines multiple switch points for multiple patterns Example: [11, 14] means 0-11 uses first pattern, 12-14 uses second, 15+ uses third
543
556
  */
544
- "maskPatternSwitchMaxLength": number;
557
+ "maskPatternSwitchMaxLength"?: number | number[];
545
558
  /**
546
559
  * The textfield max length
547
560
  */
@@ -1197,6 +1210,20 @@ declare namespace LocalJSX {
1197
1210
  "text"?: string;
1198
1211
  }
1199
1212
  interface SulaDropdown {
1213
+ /**
1214
+ * Close dropdown when an item is selected or content is clicked
1215
+ * @default true
1216
+ */
1217
+ "closeOnSelect"?: boolean;
1218
+ /**
1219
+ * Maximum height for custom content area in pixels
1220
+ * @default 260
1221
+ */
1222
+ "contentMaxHeight"?: number;
1223
+ /**
1224
+ * Enable custom content via slot instead of items list
1225
+ */
1226
+ "customContent"?: boolean;
1200
1227
  /**
1201
1228
  * Dropdown is disabled
1202
1229
  * @default false
@@ -1628,10 +1655,9 @@ declare namespace LocalJSX {
1628
1655
  */
1629
1656
  "maskPattern"?: string | string[];
1630
1657
  /**
1631
- * Max input length used to switch between the first and second mask pattern.
1632
- * @default 14
1658
+ * Optional manual switch lengths used to switch between mask patterns. If not provided, switch lengths are automatically inferred from `maskPattern`. - When number: switches between first and second pattern at this length - When array: defines multiple switch points for multiple patterns Example: [11, 14] means 0-11 uses first pattern, 12-14 uses second, 15+ uses third
1633
1659
  */
1634
- "maskPatternSwitchMaxLength"?: number;
1660
+ "maskPatternSwitchMaxLength"?: number | number[];
1635
1661
  /**
1636
1662
  * The textfield max length
1637
1663
  */
@@ -710,7 +710,7 @@ const SulaChip = class {
710
710
 
711
711
  SulaChip.style = sulaChipCss;
712
712
 
713
- const sulaDropdownCss = '*,:after,:before{--tw-ring-color:rgba(59,130,246,.5);--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;border:0 solid #e5e7eb;box-sizing:border-box}::backdrop{--tw-ring-color:rgba(59,130,246,.5);--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.block{display:block}.outline{outline-style:solid}:host{display:block}.dropdown-focus{outline:2px solid var(--color-feedback-informational)!important;outline-offset:2px!important}:root{--color-green-50:#f1f9f4;--color-green-100:#e6f4ed;--color-green-200:#cae7d8;--color-green-300:#a0d4b8;--color-green-400:#68bb8e;--color-green-500:#04843f;--color-green-600:#037236;--color-green-700:#03632f;--color-green-800:#035428;--color-green-900:#024521;--color-green-950:#012b15;--color-red-50:#fef6f6;--color-red-100:#fde8e8;--color-red-200:#fad1d1;--color-red-300:#f7abab;--color-red-400:#f17474;--color-red-500:#c80505;--color-red-600:#b30404;--color-red-700:#9f0404;--color-red-800:#860303;--color-red-900:#6d0303;--color-red-950:#330d00;--color-yellow-50:#fdf4e7;--color-yellow-100:#fcedd9;--color-yellow-200:#fae0bd;--color-yellow-300:#f6c788;--color-yellow-400:#f3b159;--color-yellow-500:#ef9928;--color-yellow-600:#e49226;--color-yellow-700:#d17e10;--color-yellow-800:#b46d0e;--color-yellow-900:#93590b;--color-yellow-950:#402705;--color-orange-50:#fef4f1;--color-orange-100:#fde8e2;--color-orange-200:#fbd2c6;--color-orange-300:#f8b4a0;--color-orange-400:#f58e70;--color-orange-500:#f05223;--color-orange-600:#ea4210;--color-orange-700:#d23b0e;--color-orange-800:#b5330c;--color-orange-900:#942a0a;--color-orange-950:#401204;--color-blue-50:#ecf0f9;--color-blue-100:#dde3f4;--color-blue-200:#b2c2e5;--color-blue-300:#7994d2;--color-blue-400:#4066bf;--color-blue-500:#001e64;--color-blue-600:#001c5c;--color-blue-700:#00174c;--color-blue-800:#00123d;--color-blue-900:#000f33;--color-blue-950:#000d2b;--color-ambar-50:#fff6eb;--color-ambar-100:#ffefdc;--color-ambar-200:#fedfb9;--color-ambar-300:#fdca8b;--color-ambar-400:#fdb359;--color-ambar-500:#fc9c26;--color-ambar-600:#ec8403;--color-ambar-700:#d87803;--color-ambar-800:#ba6803;--color-ambar-900:#975402;--color-ambar-950:#402301;--color-gray-50:#fff;--color-gray-100:#f3f4f4;--color-gray-200:#e5e6e6;--color-gray-300:#bfc0c0;--color-gray-400:#acaeae;--color-gray-500:#949595;--color-gray-600:#737575;--color-gray-700:#6c6e6e;--color-gray-800:#313333;--color-gray-900:#272929;--color-gray-950:#191d1d;--color-white-opacity-50:#ffffff0d;--color-white-opacity-100:#ffffff1a;--color-white-opacity-200:#ffffff26;--color-white-opacity-300:#ffffff45;--color-white-opacity-400:#ffffff5c;--color-white-opacity-500:#ffffff80;--color-white-opacity-600:#ffffff8c;--color-white-opacity-700:#ffffffa3;--color-white-opacity-800:#ffffffba;--color-white-opacity-900:#fffc;--color-white-opacity-950:#ffffffe8;--color-ciano-50:#f1f6fe;--color-ciano-100:#dfeafc;--color-ciano-200:#c3d9f9;--color-ciano-300:#90b9f4;--color-ciano-400:#5d98ee;--color-ciano-500:#1769e0;--color-ciano-600:#155fcb;--color-ciano-700:#1355b4;--color-ciano-800:#104899;--color-ciano-900:#0d3b7d;--color-ciano-950:#071e40;--color-extra-color-blue-light:#e7f0f4;--color-extra-color-blue-dark:#162931;--color-black-opacity-50:rgba(25,29,29,.02);--color-black-opacity-100:rgba(25,29,29,.05);--color-black-opacity-200:rgba(25,29,29,.11);--color-black-opacity-300:rgba(25,29,29,.28);--color-black-opacity-400:rgba(25,29,29,.36);--color-black-opacity-500:rgba(25,29,29,.44);--color-black-opacity-600:rgba(25,29,29,.62);--color-black-opacity-700:rgba(25,29,29,.64);--color-black-opacity-800:rgba(25,29,29,.72);--color-black-opacity-900:rgba(25,29,29,.8);--color-black-opacity-950:rgba(25,29,29,.96);--color-shadow-opacity-50:rgba(0,0,0,.04);--color-shadow-opacity-100:rgba(0,0,0,.06);--color-shadow-opacity-200:rgba(0,0,0,.12);--color-shadow-opacity-300:rgba(0,0,0,.2);--color-shadow-opacity-400:rgba(0,0,0,.32);--color-shadow-opacity-500:rgba(0,0,0,.5);--color-shadow-opacity-600:rgba(0,0,0,.55);--color-shadow-opacity-700:rgba(0,0,0,.64);--color-shadow-opacity-800:rgba(0,0,0,.73);--color-shadow-opacity-900:rgba(0,0,0,.8);--color-shadow-opacity-950:rgba(0,0,0,.91);--color-feedback-success:#04843f;--color-feedback-error:#c80505;--color-feedback-informational:#1355b4;--color-feedback-alert:#ef9928;--color-brand-primary:#f05223;--color-brand-secondary:#001c5c;--color-brand-tertiary-1:#1769e0;--color-brand-tertiary-2:#fc9c26;--color-surface-body:#fff;--color-surface-on-body:#f3f4f4;--color-surface-on-body-blue:#e7f0f4;--color-surface-on-body-brand:#fff6eb;--color-surface-on-body-feedback-success:#e6f4ed;--color-surface-on-body-feedback-error:#fde8e8;--color-surface-on-body-feedback-alert:#fdf4e7;--color-surface-on-body-feedback-info:#dfeafc;--color-text-brand:#f05223;--color-text-primary:#313333;--color-text-secondary:#6c6e6e;--color-text-disabled:#949595;--color-text-link:#1355b4;--color-states-empty-bg-hover:rgba(25,29,29,.05);--color-states-empty-bg-pressed:rgba(25,29,29,.11);--color-states-bg-disabled:rgba(25,29,29,.02);--color-states-bg-focus:#1355b4;--color-states-primary-hover:#ea4210;--color-states-primary-pressed:#d23b0e;--color-states-danger-hover:#b30404;--color-states-danger-pressed:#9f0404;--color-states-negative-hover:#e5e6e6;--color-states-negative-pressed:#bfc0c0;--color-icon-primary:#6c6e6e;--color-icon-secondary:#fff;--color-icon-tertiary:#b30404;--color-icon-disabled:#acaeae;--color-neutral-neutral-1:#fff;--color-neutral-neutral-2:#f3f4f4;--color-neutral-neutral-3:#acaeae;--color-neutral-neutral-4:#949595;--color-neutral-neutral-5:#737575;--color-neutral-neutral-6:#6c6e6e;--color-neutral-neutral-7:#313333;--color-neutral-neutral-8:#272929;--color-negative-negative-1:#fff;--color-negative-negative-2:#313333;--color-opacity-body:#fffc;--color-opacity-on-body:rgba(25,29,29,.02);--color-opacity-overlay:rgba(25,29,29,.62);--color-opacity-on-overlay:#ffffff1a;--color-line-input:#949595;--color-line-general-strong:#bfc0c0;--color-line-general:#e5e6e6;--color-line-hair:rgba(25,29,29,.05);--color-box-shadow-body:#fff;--color-box-shadow-shadow-color-1:rgba(0,0,0,.04);--color-box-shadow-shadow-color-2:rgba(0,0,0,.06)}.static{position:static}.absolute{position:absolute}.relative{position:relative}.bottom-\\[72px\\]{bottom:72px}.left-0{left:0}.top-\\[72px\\]{top:72px}.z-50{z-index:50}.m-0{margin:0}.ml-8{margin-left:.5rem}.flex{display:flex}.h-\\[72px\\]{height:72px}.w-full{width:100%}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.rounded-sm,.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-none{border-style:none}.border-line-general{border-color:var(--color-line-general)}.border-line-input{border-color:var(--color-line-input)}.bg-states-bg-disabled{background-color:var(--color-states-bg-disabled)}.bg-surface-body{background-color:var(--color-surface-body)}.bg-transparent{background-color:transparent}.p-0{padding:0}.px-16{padding-left:1rem;padding-right:1rem}.px-24{padding-left:1.5rem;padding-right:1.5rem}.py-16{padding-bottom:1rem;padding-top:1rem}.pt-4{padding-top:.25rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-bold{font-weight:700}.leading-4{line-height:1rem}.leading-6{line-height:1.5rem}.text-icon-disabled{color:var(--color-icon-disabled)}.text-text-disabled{color:var(--color-text-disabled)}.text-text-primary{color:var(--color-text-primary)}.text-text-secondary{color:var(--color-text-secondary)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.placeholder\\:text-text-secondary::placeholder{color:var(--color-text-secondary)}.overflow-auto{overflow:auto}.rounded-sm{border-radius:.75rem}.py-12{padding-bottom:.75rem;padding-top:.75rem}.text-text-brand{color:var(--color-text-brand)}.hover\\:bg-states-empty-bg-hover:hover{background-color:var(--color-states-empty-bg-hover)}';
713
+ const sulaDropdownCss = '*,:after,:before{--tw-ring-color:rgba(59,130,246,.5);--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;border:0 solid #e5e7eb;box-sizing:border-box}::backdrop{--tw-ring-color:rgba(59,130,246,.5);--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(147,197,253,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,fieldset,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}.block{display:block}.outline{outline-style:solid}:host{display:block}.dropdown-focus{outline:2px solid var(--color-feedback-informational)!important;outline-offset:2px!important}:root{--color-green-50:#f1f9f4;--color-green-100:#e6f4ed;--color-green-200:#cae7d8;--color-green-300:#a0d4b8;--color-green-400:#68bb8e;--color-green-500:#04843f;--color-green-600:#037236;--color-green-700:#03632f;--color-green-800:#035428;--color-green-900:#024521;--color-green-950:#012b15;--color-red-50:#fef6f6;--color-red-100:#fde8e8;--color-red-200:#fad1d1;--color-red-300:#f7abab;--color-red-400:#f17474;--color-red-500:#c80505;--color-red-600:#b30404;--color-red-700:#9f0404;--color-red-800:#860303;--color-red-900:#6d0303;--color-red-950:#330d00;--color-yellow-50:#fdf4e7;--color-yellow-100:#fcedd9;--color-yellow-200:#fae0bd;--color-yellow-300:#f6c788;--color-yellow-400:#f3b159;--color-yellow-500:#ef9928;--color-yellow-600:#e49226;--color-yellow-700:#d17e10;--color-yellow-800:#b46d0e;--color-yellow-900:#93590b;--color-yellow-950:#402705;--color-orange-50:#fef4f1;--color-orange-100:#fde8e2;--color-orange-200:#fbd2c6;--color-orange-300:#f8b4a0;--color-orange-400:#f58e70;--color-orange-500:#f05223;--color-orange-600:#ea4210;--color-orange-700:#d23b0e;--color-orange-800:#b5330c;--color-orange-900:#942a0a;--color-orange-950:#401204;--color-blue-50:#ecf0f9;--color-blue-100:#dde3f4;--color-blue-200:#b2c2e5;--color-blue-300:#7994d2;--color-blue-400:#4066bf;--color-blue-500:#001e64;--color-blue-600:#001c5c;--color-blue-700:#00174c;--color-blue-800:#00123d;--color-blue-900:#000f33;--color-blue-950:#000d2b;--color-ambar-50:#fff6eb;--color-ambar-100:#ffefdc;--color-ambar-200:#fedfb9;--color-ambar-300:#fdca8b;--color-ambar-400:#fdb359;--color-ambar-500:#fc9c26;--color-ambar-600:#ec8403;--color-ambar-700:#d87803;--color-ambar-800:#ba6803;--color-ambar-900:#975402;--color-ambar-950:#402301;--color-gray-50:#fff;--color-gray-100:#f3f4f4;--color-gray-200:#e5e6e6;--color-gray-300:#bfc0c0;--color-gray-400:#acaeae;--color-gray-500:#949595;--color-gray-600:#737575;--color-gray-700:#6c6e6e;--color-gray-800:#313333;--color-gray-900:#272929;--color-gray-950:#191d1d;--color-white-opacity-50:#ffffff0d;--color-white-opacity-100:#ffffff1a;--color-white-opacity-200:#ffffff26;--color-white-opacity-300:#ffffff45;--color-white-opacity-400:#ffffff5c;--color-white-opacity-500:#ffffff80;--color-white-opacity-600:#ffffff8c;--color-white-opacity-700:#ffffffa3;--color-white-opacity-800:#ffffffba;--color-white-opacity-900:#fffc;--color-white-opacity-950:#ffffffe8;--color-ciano-50:#f1f6fe;--color-ciano-100:#dfeafc;--color-ciano-200:#c3d9f9;--color-ciano-300:#90b9f4;--color-ciano-400:#5d98ee;--color-ciano-500:#1769e0;--color-ciano-600:#155fcb;--color-ciano-700:#1355b4;--color-ciano-800:#104899;--color-ciano-900:#0d3b7d;--color-ciano-950:#071e40;--color-extra-color-blue-light:#e7f0f4;--color-extra-color-blue-dark:#162931;--color-black-opacity-50:rgba(25,29,29,.02);--color-black-opacity-100:rgba(25,29,29,.05);--color-black-opacity-200:rgba(25,29,29,.11);--color-black-opacity-300:rgba(25,29,29,.28);--color-black-opacity-400:rgba(25,29,29,.36);--color-black-opacity-500:rgba(25,29,29,.44);--color-black-opacity-600:rgba(25,29,29,.62);--color-black-opacity-700:rgba(25,29,29,.64);--color-black-opacity-800:rgba(25,29,29,.72);--color-black-opacity-900:rgba(25,29,29,.8);--color-black-opacity-950:rgba(25,29,29,.96);--color-shadow-opacity-50:rgba(0,0,0,.04);--color-shadow-opacity-100:rgba(0,0,0,.06);--color-shadow-opacity-200:rgba(0,0,0,.12);--color-shadow-opacity-300:rgba(0,0,0,.2);--color-shadow-opacity-400:rgba(0,0,0,.32);--color-shadow-opacity-500:rgba(0,0,0,.5);--color-shadow-opacity-600:rgba(0,0,0,.55);--color-shadow-opacity-700:rgba(0,0,0,.64);--color-shadow-opacity-800:rgba(0,0,0,.73);--color-shadow-opacity-900:rgba(0,0,0,.8);--color-shadow-opacity-950:rgba(0,0,0,.91);--color-feedback-success:#04843f;--color-feedback-error:#c80505;--color-feedback-informational:#1355b4;--color-feedback-alert:#ef9928;--color-brand-primary:#f05223;--color-brand-secondary:#001c5c;--color-brand-tertiary-1:#1769e0;--color-brand-tertiary-2:#fc9c26;--color-surface-body:#fff;--color-surface-on-body:#f3f4f4;--color-surface-on-body-blue:#e7f0f4;--color-surface-on-body-brand:#fff6eb;--color-surface-on-body-feedback-success:#e6f4ed;--color-surface-on-body-feedback-error:#fde8e8;--color-surface-on-body-feedback-alert:#fdf4e7;--color-surface-on-body-feedback-info:#dfeafc;--color-text-brand:#f05223;--color-text-primary:#313333;--color-text-secondary:#6c6e6e;--color-text-disabled:#949595;--color-text-link:#1355b4;--color-states-empty-bg-hover:rgba(25,29,29,.05);--color-states-empty-bg-pressed:rgba(25,29,29,.11);--color-states-bg-disabled:rgba(25,29,29,.02);--color-states-bg-focus:#1355b4;--color-states-primary-hover:#ea4210;--color-states-primary-pressed:#d23b0e;--color-states-danger-hover:#b30404;--color-states-danger-pressed:#9f0404;--color-states-negative-hover:#e5e6e6;--color-states-negative-pressed:#bfc0c0;--color-icon-primary:#6c6e6e;--color-icon-secondary:#fff;--color-icon-tertiary:#b30404;--color-icon-disabled:#acaeae;--color-neutral-neutral-1:#fff;--color-neutral-neutral-2:#f3f4f4;--color-neutral-neutral-3:#acaeae;--color-neutral-neutral-4:#949595;--color-neutral-neutral-5:#737575;--color-neutral-neutral-6:#6c6e6e;--color-neutral-neutral-7:#313333;--color-neutral-neutral-8:#272929;--color-negative-negative-1:#fff;--color-negative-negative-2:#313333;--color-opacity-body:#fffc;--color-opacity-on-body:rgba(25,29,29,.02);--color-opacity-overlay:rgba(25,29,29,.62);--color-opacity-on-overlay:#ffffff1a;--color-line-input:#949595;--color-line-general-strong:#bfc0c0;--color-line-general:#e5e6e6;--color-line-hair:rgba(25,29,29,.05);--color-box-shadow-body:#fff;--color-box-shadow-shadow-color-1:rgba(0,0,0,.04);--color-box-shadow-shadow-color-2:rgba(0,0,0,.06)}.static{position:static}.absolute{position:absolute}.relative{position:relative}.bottom-\\[72px\\]{bottom:72px}.left-0{left:0}.top-\\[72px\\]{top:72px}.z-50{z-index:50}.m-0{margin:0}.ml-8{margin-left:.5rem}.flex{display:flex}.h-\\[72px\\]{height:72px}.w-full{width:100%}.cursor-pointer{cursor:pointer}.resize{resize:both}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.overflow-auto{overflow:auto}.rounded-sm,.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-none{border-style:none}.border-line-general{border-color:var(--color-line-general)}.border-line-input{border-color:var(--color-line-input)}.bg-states-bg-disabled{background-color:var(--color-states-bg-disabled)}.bg-surface-body{background-color:var(--color-surface-body)}.bg-transparent{background-color:transparent}.p-0{padding:0}.px-16{padding-left:1rem;padding-right:1rem}.px-24{padding-left:1.5rem;padding-right:1.5rem}.py-16{padding-bottom:1rem;padding-top:1rem}.pt-4{padding-top:.25rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.font-bold{font-weight:700}.leading-4{line-height:1rem}.leading-6{line-height:1.5rem}.text-icon-disabled{color:var(--color-icon-disabled)}.text-text-disabled{color:var(--color-text-disabled)}.text-text-primary{color:var(--color-text-primary)}.text-text-secondary{color:var(--color-text-secondary)}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-duration:.15s;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.placeholder\\:text-text-secondary::placeholder{color:var(--color-text-secondary)}.rounded-sm{border-radius:.75rem}.py-12{padding-bottom:.75rem;padding-top:.75rem}.text-text-brand{color:var(--color-text-brand)}.hover\\:bg-states-empty-bg-hover:hover{background-color:var(--color-states-empty-bg-hover)}';
714
714
 
715
715
  const SulaDropdown = class {
716
716
  constructor(e) {
@@ -728,6 +728,12 @@ const SulaDropdown = class {
728
728
  /**
729
729
  * Maximum height for dropdown menu in pixels
730
730
  */ this.menuMaxHeight = 260;
731
+ /**
732
+ * Maximum height for custom content area in pixels
733
+ */ this.contentMaxHeight = 260;
734
+ /**
735
+ * Close dropdown when an item is selected or content is clicked
736
+ */ this.closeOnSelect = true;
731
737
  this.showItems = false;
732
738
  this.isFocused = false;
733
739
  this.searchTerm = "";
@@ -736,7 +742,7 @@ const SulaDropdown = class {
736
742
  this.handleClick = () => {
737
743
  if (this.disabled) return;
738
744
  this.dropdownClicked.emit();
739
- if (this.items.length > 0) {
745
+ if (this.customContent || this.items.length > 0) {
740
746
  this.showItems = !this.showItems;
741
747
  }
742
748
  if (this.searchable && this.showItems && this.searchInputRef) {
@@ -747,9 +753,11 @@ const SulaDropdown = class {
747
753
  this.selectedItem = e.detail;
748
754
  this.searchTerm = "";
749
755
  this.menuItemSelected.emit(e.detail);
750
- setTimeout((() => {
751
- this.showItems = false;
752
- }), 0);
756
+ if (this.closeOnSelect) {
757
+ setTimeout((() => {
758
+ this.showItems = false;
759
+ }), 0);
760
+ }
753
761
  };
754
762
  this.filterItems = () => {
755
763
  if (!this.searchTerm.trim()) {
@@ -805,7 +813,7 @@ const SulaDropdown = class {
805
813
  const o = t - e.bottom;
806
814
  const r = e.top;
807
815
  const n = 60;
808
- const a = this.menuMaxHeight + n;
816
+ const a = (this.customContent ? this.contentMaxHeight : this.menuMaxHeight) + n;
809
817
  this.openUpward = o < a && (r > a || r > o);
810
818
  }
811
819
  componentWillLoad() {
@@ -828,10 +836,10 @@ const SulaDropdown = class {
828
836
  render() {
829
837
  var e;
830
838
  return h$1(Host, {
831
- key: "146e6a1dc2c2639618a3ae0d046e14aaebb62801",
839
+ key: "bcb9fc6510f1f67d054824aeb6d50502e20ab8d0",
832
840
  ref: e => this.node = e
833
841
  }, h$1("div", {
834
- key: "978cf1c558165eaf6e37e90216c4bfaef2fa9b66",
842
+ key: "a46d801d67e501faee720916fff32f37791b0ee9",
835
843
  class: {
836
844
  "flex justify-between items-center border border-line-input h-[72px] px-16 rounded-xl relative": true,
837
845
  "bg-surface-body cursor-pointer": !this.disabled,
@@ -843,10 +851,10 @@ const SulaDropdown = class {
843
851
  onFocus: this.handleFocus,
844
852
  onBlur: this.handleBlur
845
853
  }, h$1("div", {
846
- key: "8bbbba5ab876307a16bccbc91de25769ef0e4221",
854
+ key: "ef745b49c183c29d86fd50d3fa9d2084e75d8156",
847
855
  class: "flex flex-col w-full"
848
856
  }, h$1("label", {
849
- key: "1964385da87ff7db0a36374c18e95fb569278dff",
857
+ key: "833a6a1866ebc31842d746fd1beef1af7d368fed",
850
858
  class: {
851
859
  "text-base leading-4": !this.selectedItem && !(this.searchable && this.showItems),
852
860
  "text-sm leading-4 font-bold": !!this.selectedItem || this.searchable && this.showItems,
@@ -867,20 +875,26 @@ const SulaDropdown = class {
867
875
  "text-text-disabled": this.disabled
868
876
  }
869
877
  }, this.selectedItem.title)), h$1("div", {
870
- key: "e1dddd3b7123149a0fb08309614affc77003d2d2",
878
+ key: "1b8a1970c4750c3f314aa7d8e5193e8d9cfa3483",
871
879
  class: "flex items-center justify-center ml-8 leading-6 text-2xl"
872
880
  }, h$1("sula-icon", {
873
- key: "e9d5bf513fe342629801c25b95bd9ef2ee7fac50",
881
+ key: "635d6d6df91f4ea2d8d051ca7443941a44a7c856",
874
882
  icon: `ph ph-caret-${this.showItems ? "up" : "down"}`,
875
883
  customClass: `${this.getIconClass()} text-2xl`
876
884
  })), this.showItems && h$1("div", {
877
- key: "0e79ca32925f98ace35f2c2d3892d2b8c46e5104",
885
+ key: "223e42138b156a98b1296e317599c2eb16e3a633",
878
886
  class: {
879
887
  "absolute z-50 left-0 w-full transition-all duration-200 ease-in-out": true,
880
888
  "bottom-[72px]": this.openUpward,
881
889
  "top-[72px]": !this.openUpward
890
+ },
891
+ onClick: !this.closeOnSelect ? e => e.stopPropagation() : undefined
892
+ }, this.customContent ? h$1("div", {
893
+ class: "bg-surface-body border border-line-general rounded-sm overflow-auto",
894
+ style: {
895
+ maxHeight: `${this.contentMaxHeight}px`
882
896
  }
883
- }, (() => {
897
+ }, h$1("slot", null)) : (() => {
884
898
  const e = this.searchable && this.searchTerm.trim() ? this.filteredItems : this.items;
885
899
  const t = this.searchable && this.searchTerm.trim() && e.length === 0;
886
900
  if (t) {
@@ -22500,9 +22514,6 @@ const SulaTextfield = class {
22500
22514
  /**
22501
22515
  * The textfield status
22502
22516
  */ this.status = SulaTextfieldStatus.Default;
22503
- /**
22504
- * Max input length used to switch between the first and second mask pattern.
22505
- */ this.maskPatternSwitchMaxLength = 14;
22506
22517
  this.inputIsOpen = false;
22507
22518
  this.textValue = "";
22508
22519
  this.showPassword = false;
@@ -22616,13 +22627,13 @@ const SulaTextfield = class {
22616
22627
  }
22617
22628
  }
22618
22629
  handleInputMask(e) {
22619
- var t;
22630
+ var t, o;
22620
22631
  if (!this.inputElement) return;
22621
- const o = this.getMaskPatternByValueLength(e);
22622
- if (!o) return;
22623
22632
  const r = ((t = e !== null && e !== void 0 ? e : this.inputElement.value) !== null && t !== void 0 ? t : "").replace(/[^a-zA-Z0-9]/g, "");
22633
+ const n = this.getMaskPatternByValueLength(r, (o = e !== null && e !== void 0 ? e : this.inputElement.value) !== null && o !== void 0 ? o : "");
22634
+ if (!n) return;
22624
22635
  VMasker(this.inputElement).unMask();
22625
- this.inputElement.value = VMasker.toPattern(r, o);
22636
+ this.inputElement.value = VMasker.toPattern(r, n);
22626
22637
  }
22627
22638
  syncMaskState() {
22628
22639
  if (!this.inputElement) return;
@@ -22646,15 +22657,55 @@ const SulaTextfield = class {
22646
22657
  }
22647
22658
  return [];
22648
22659
  }
22649
- getMaskPatternByValueLength(e) {
22650
- var t, o, r;
22651
- const n = this.getMaskPatterns();
22652
- if (n.length === 0) return undefined;
22653
- if (n.length === 1) return n[0];
22654
- const a = ((o = e !== null && e !== void 0 ? e : (t = this.inputElement) === null || t === void 0 ? void 0 : t.value) !== null && o !== void 0 ? o : "").length;
22655
- const i = (r = this.maskPatternSwitchMaxLength) !== null && r !== void 0 ? r : 14;
22656
- const c = a > i ? 1 : 0;
22657
- return n[Math.min(c, n.length - 1)];
22660
+ getMaskPatternByValueLength(e, t) {
22661
+ const o = this.getMaskPatterns();
22662
+ if (o.length === 0) return undefined;
22663
+ if (o.length === 1) return o[0];
22664
+ const r = (e !== null && e !== void 0 ? e : "").length;
22665
+ const n = this.normalizeProvidedSwitchLengths();
22666
+ if (n.length === 0) {
22667
+ return this.getMaskPatternByAutoInference(o, r, t);
22668
+ }
22669
+ for (let e = 0; e < n.length; e++) {
22670
+ if (r <= n[e]) {
22671
+ return o[Math.min(e, o.length - 1)];
22672
+ }
22673
+ }
22674
+ return o[o.length - 1];
22675
+ }
22676
+ getMaskPatternByAutoInference(e, t, o) {
22677
+ const r = e.map((e => (e.match(/[9AS]/g) || []).length));
22678
+ const n = r.filter((e => e >= t && e > 0));
22679
+ if (n.length === 0) {
22680
+ return e[e.length - 1];
22681
+ }
22682
+ const a = Math.min(...n);
22683
+ const i = r.map(((e, t) => ({
22684
+ capacity: e,
22685
+ index: t
22686
+ }))).filter((e => e.capacity === a)).map((e => e.index));
22687
+ if (i.length === 1) {
22688
+ return e[i[0]];
22689
+ }
22690
+ const c = (o !== null && o !== void 0 ? o : "").replace(/[a-zA-Z0-9]/g, "");
22691
+ if (c.length > 0) {
22692
+ for (const t of i) {
22693
+ const o = e[t].replace(/[9AS]/g, "");
22694
+ if (o === c) {
22695
+ return e[t];
22696
+ }
22697
+ }
22698
+ }
22699
+ return e[i[0]];
22700
+ }
22701
+ normalizeProvidedSwitchLengths() {
22702
+ if (Array.isArray(this.maskPatternSwitchMaxLength)) {
22703
+ return this.maskPatternSwitchMaxLength.filter((e => Number.isFinite(e) && e > 0)).sort(((e, t) => e - t));
22704
+ }
22705
+ if (typeof this.maskPatternSwitchMaxLength === "number" && Number.isFinite(this.maskPatternSwitchMaxLength) && this.maskPatternSwitchMaxLength > 0) {
22706
+ return [ this.maskPatternSwitchMaxLength ];
22707
+ }
22708
+ return [];
22658
22709
  }
22659
22710
  handlePasswordIconClicked() {
22660
22711
  const e = this.inputElement.selectionStart;
@@ -22675,12 +22726,12 @@ const SulaTextfield = class {
22675
22726
  }
22676
22727
  render() {
22677
22728
  return h$1(Host, {
22678
- key: "b857d08cc9d53c1cfaa87a573d52026b9b72d088",
22729
+ key: "0dbf51792e5bdc43328820106b083d194bbcae61",
22679
22730
  ref: e => this.node = e
22680
22731
  }, h$1("div", {
22681
- key: "d173e497fbe8c78b899a1e66784d411981008abb"
22732
+ key: "3659f51f5a9d0c75909e6a6939b8ff1b5c25e377"
22682
22733
  }, h$1("div", {
22683
- key: "bc1682f30d7ffb0eb890baba6d126d3cdbaf3a20",
22734
+ key: "320da879fdea605e95525f54607c9cb285446133",
22684
22735
  id: "button-container",
22685
22736
  class: {
22686
22737
  "flex items-center border rounded-sm px-16 outline-none h-[72px] caret-brand-primary": true,
@@ -22694,17 +22745,17 @@ const SulaTextfield = class {
22694
22745
  onFocus: this.handleFocus,
22695
22746
  onClick: this.handleInputClick
22696
22747
  }, !this.disabled && h$1("div", {
22697
- key: "7e78f2a5b2d0bd3111ddfec6a592d907ac1aa078",
22748
+ key: "44777180c60bb9a21ef64cffd98f465cf15af446",
22698
22749
  class: {
22699
22750
  "hidden flex-col w-full": true,
22700
22751
  "pr-12": !!this.icon
22701
22752
  },
22702
22753
  ref: e => this.inputContainer = e
22703
22754
  }, h$1("label", {
22704
- key: "d0419a71fb3372d34b07625acd95bae71b1133a0",
22755
+ key: "75bc3b05a66ed7c00915842b275faf657b1784b3",
22705
22756
  class: "font-bold text-sm text-text-primary from-down"
22706
22757
  }, this.label), h$1("input", {
22707
- key: "11926def24206e02e0fcd0e4ba7b94664f1ca21a",
22758
+ key: "4f6bde78c385dc3c158c08be70f2277e56f7ab95",
22708
22759
  type: this.type,
22709
22760
  ref: e => this.inputElement = e,
22710
22761
  placeholder: this.placeholder,
@@ -22713,7 +22764,7 @@ const SulaTextfield = class {
22713
22764
  onFocus: this.handleInputFocus,
22714
22765
  value: this.textValue
22715
22766
  })), h$1("div", {
22716
- key: "93118f3270d2f325dd474805ed6870cb1cddb2bd",
22767
+ key: "df7e84e77d3d05ba0328f736e6c03f45d32c9c76",
22717
22768
  id: "textfield-label",
22718
22769
  class: {
22719
22770
  "text-base flex items-center": true,
@@ -22722,25 +22773,25 @@ const SulaTextfield = class {
22722
22773
  },
22723
22774
  ref: e => this.labelElement = e
22724
22775
  }, this.label), (!!this.icon || this.type === SulaTextfieldType.Password) && h$1("div", {
22725
- key: "bc78873f12cd069f1987dddbfd9eea29f5c07c8e",
22776
+ key: "55dba31d1ca9d6b213900b9a2d3aa02044b246ef",
22726
22777
  class: "flex items-center justify-center",
22727
22778
  onClick: this.handleIconClick
22728
22779
  }, h$1("sula-icon", {
22729
- key: "f8a30c1ea8f73e748ce43b4f0029a83435e88d2b",
22780
+ key: "19712e5575abb7aaef17a098de13543ed550dc6c",
22730
22781
  icon: this.getInputIcon(),
22731
22782
  customClass: `text-2xl ${this.disabled ? "text-icon-disabled" : "text-icon-primary"}`
22732
22783
  }))), (this.helpText || this.maxLength) && !this.disabled && h$1("div", {
22733
- key: "e6cc2bed4087a75fe8ed2541af38e44778144485",
22784
+ key: "0c68e89181316ffed13f212a5c7f6ba78372e83c",
22734
22785
  class: "flex justify-between items-center px-16 mt-4 text-sm"
22735
22786
  }, this.helpText && h$1("div", {
22736
- key: "ed826977d2f85c23c4e41c51bab2a35a093d4207",
22787
+ key: "af970054750c28cb8a9901fcf850c7c02fd059b9",
22737
22788
  id: "textfield-help-text",
22738
22789
  class: {
22739
22790
  "text-text-primary": this.status === SulaTextfieldStatus.Default,
22740
22791
  "text-feedback-error": this.status === SulaTextfieldStatus.Error
22741
22792
  }
22742
22793
  }, this.helpText), this.maxLength && h$1("div", {
22743
- key: "595dd29e865d45bcc1df11dc024eb1c9db77e990",
22794
+ key: "e78a661c6c614d2d6787159137cce01bf129e2c2",
22744
22795
  id: "max-length-container",
22745
22796
  class: {
22746
22797
  "text-text-primary": this.status === SulaTextfieldStatus.Default,
@@ -23031,4 +23082,4 @@ SulaTimelineList.style = sulaTimelineListCss;
23031
23082
 
23032
23083
  export { SulaAvatar as sula_avatar, SulaBadge as sula_badge, SulaBreadcrumb as sula_breadcrumb, SulaButton as sula_button, SulaCheckbox as sula_checkbox, SulaChip as sula_chip, SulaDropdown as sula_dropdown, SulaIcon as sula_icon, SulaLoader as sula_loader, SulaMenuSelectList as sula_menu_select_list, SulaModal as sula_modal, SulaProgressBar as sula_progress_bar, SulaRadioButton as sula_radio_button, SulaSearchBar as sula_search_bar, SulaSegmentedControl as sula_segmented_control, SulaSwitch as sula_switch, SulaTag as sula_tag, SulaTextarea as sula_textarea, SulaTextfield as sula_textfield, SulaTiles as sula_tiles, SulaTimelineList as sula_timeline_list };
23033
23084
  //# sourceMappingURL=sula-avatar.sula-badge.sula-breadcrumb.sula-button.sula-checkbox.sula-chip.sula-dropdown.sula-icon.sula-loader.sula-menu-select-list.sula-modal.sula-progress-bar.sula-radio-button.sula-search-bar.sula-segmented-control.sula-switch.sula-tag.sula-textarea.sula-textfield.sula-tiles.sula-timeline-list.entry.esm.js.map
23034
- //# sourceMappingURL=p-3c319b71.entry.js.map
23085
+ //# sourceMappingURL=p-01cb6887.entry.js.map