@sellmate/design-system 1.0.21 → 1.0.22

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 (161) hide show
  1. package/dist/cjs/{select-keyboard-navigation-CtstKOb3.js → base-dropdown-event-BTPlZ1KF.js} +0 -38
  2. package/dist/cjs/component.button-C6xBMwHf.js +115 -0
  3. package/dist/cjs/design-system.cjs.js +1 -1
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/sd-button-v2.cjs.entry.js +86 -0
  6. package/dist/cjs/sd-button-v2.config-BK45EPK_.js +203 -0
  7. package/dist/cjs/sd-button_21.cjs.entry.js +119 -65
  8. package/dist/cjs/sd-card.cjs.entry.js +1 -1
  9. package/dist/cjs/sd-date-picker.cjs.entry.js +1 -1
  10. package/dist/cjs/sd-dropdown-button.cjs.entry.js +274 -0
  11. package/dist/cjs/sd-file-picker.cjs.entry.js +3 -3
  12. package/dist/cjs/sd-guide.cjs.entry.js +2 -2
  13. package/dist/cjs/sd-popover.cjs.entry.js +2 -2
  14. package/dist/cjs/sd-progress.cjs.entry.js +2 -2
  15. package/dist/cjs/sd-select-multiple-group.cjs.entry.js +3 -2
  16. package/dist/cjs/sd-select-multiple.cjs.entry.js +4 -3
  17. package/dist/cjs/sd-select-option-group.cjs.entry.js +3 -3
  18. package/dist/cjs/sd-toggle-button.cjs.entry.js +1 -1
  19. package/dist/cjs/sd-toggle.cjs.entry.js +1 -1
  20. package/dist/cjs/select-keyboard-navigation-s2wP37xZ.js +40 -0
  21. package/dist/collection/collection-manifest.json +3 -1
  22. package/dist/collection/components/sd-button-v2/sd-button-v2.config.js +190 -0
  23. package/dist/collection/components/sd-button-v2/sd-button-v2.css +120 -0
  24. package/dist/collection/components/sd-button-v2/sd-button-v2.js +249 -0
  25. package/dist/collection/components/sd-card/sd-card.js +1 -1
  26. package/dist/collection/components/sd-date-picker/sd-date-picker.js +1 -1
  27. package/dist/collection/components/sd-date-range-picker/sd-date-range-picker.js +2 -2
  28. package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.config.js +62 -0
  29. package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.css +171 -0
  30. package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.js +384 -0
  31. package/dist/collection/components/sd-field/sd-field.js +3 -3
  32. package/dist/collection/components/sd-file-picker/sd-file-picker.js +3 -3
  33. package/dist/collection/components/sd-floating-portal/sd-floating-portal.js +1 -1
  34. package/dist/collection/components/sd-guide/sd-guide.js +2 -2
  35. package/dist/collection/components/sd-icon/sd-icon.js +1 -1
  36. package/dist/collection/components/sd-input/sd-input.js +1 -1
  37. package/dist/collection/components/sd-loading-spinner/sd-loading-spinner.js +1 -1
  38. package/dist/collection/components/sd-number-input/sd-number-input.js +4 -4
  39. package/dist/collection/components/sd-pagination/sd-pagination.js +2 -2
  40. package/dist/collection/components/sd-popover/sd-popover.js +2 -2
  41. package/dist/collection/components/sd-portal/sd-portal.js +89 -19
  42. package/dist/collection/components/sd-progress/sd-progress.js +2 -2
  43. package/dist/collection/components/sd-select/sd-select-dropdown/sd-select-dropdown.js +2 -2
  44. package/dist/collection/components/sd-select/sd-select-option/sd-select-option.js +1 -1
  45. package/dist/collection/components/sd-select/sd-select-search-input/sd-select-search-input.js +3 -3
  46. package/dist/collection/components/sd-select-multiple/sd-select-multiple.js +1 -1
  47. package/dist/collection/components/sd-select-multiple-group/sd-select-option-group/sd-select-option-group.js +3 -3
  48. package/dist/collection/components/sd-textarea/sd-textarea.js +2 -2
  49. package/dist/collection/components/sd-toggle/sd-toggle.js +1 -1
  50. package/dist/collection/components/sd-toggle-button/sd-toggle-button.js +1 -1
  51. package/dist/components/{p-D0U1cMbs.js → p-B4p2JGMI.js} +1 -1
  52. package/dist/components/p-Bd9o9P1x.js +1 -0
  53. package/dist/components/{p-rn5S2icF.js → p-BsQEKShq.js} +1 -1
  54. package/dist/components/{p-CbQobmaB.js → p-CAJmL8nc.js} +1 -1
  55. package/dist/components/p-CWlCxabU.js +1 -0
  56. package/dist/components/p-Cy6HMEsK.js +1 -0
  57. package/dist/components/{p-C1XPuuO-.js → p-CysnHGj4.js} +1 -1
  58. package/dist/components/{p-qSu-ayDy.js → p-D4kmO3k7.js} +1 -1
  59. package/dist/components/{p-DdOM8yc2.js → p-DB52ADSW.js} +1 -1
  60. package/dist/components/{p-J-Yn0oS3.js → p-DExqkuUY.js} +1 -1
  61. package/dist/components/{p-MmKik3mL.js → p-DF2wExtn.js} +1 -1
  62. package/dist/components/{p-D35gOcGh.js → p-DFgtwoFG.js} +1 -1
  63. package/dist/components/{p-BVFlD1Lp.js → p-DYsHXden.js} +1 -1
  64. package/dist/components/{p-CWg2auF3.js → p-DZqrfwuw.js} +1 -1
  65. package/dist/components/p-Dc4UTGgQ.js +1 -0
  66. package/dist/components/{p-CU5TiEeI.js → p-DyeU47vV.js} +1 -1
  67. package/dist/components/p-Hvt2oWRk.js +1 -0
  68. package/dist/components/{p-Cef06v8S.js → p-JyVgfdnC.js} +1 -1
  69. package/dist/components/p-VKF2AWs1.js +1 -0
  70. package/dist/components/sd-button-v2.d.ts +11 -0
  71. package/dist/components/sd-button-v2.js +1 -0
  72. package/dist/components/sd-button.js +1 -1
  73. package/dist/components/sd-card.js +1 -1
  74. package/dist/components/sd-checkbox.js +1 -1
  75. package/dist/components/sd-date-picker.js +1 -1
  76. package/dist/components/sd-date-range-picker.js +1 -1
  77. package/dist/components/sd-dropdown-button.d.ts +11 -0
  78. package/dist/components/sd-dropdown-button.js +1 -0
  79. package/dist/components/sd-field.js +1 -1
  80. package/dist/components/sd-file-picker.js +1 -1
  81. package/dist/components/sd-floating-portal.js +1 -1
  82. package/dist/components/sd-guide.js +1 -1
  83. package/dist/components/sd-icon.js +1 -1
  84. package/dist/components/sd-input.js +1 -1
  85. package/dist/components/sd-loading-spinner.js +1 -1
  86. package/dist/components/sd-modal-card.js +1 -1
  87. package/dist/components/sd-number-input.js +1 -1
  88. package/dist/components/sd-pagination.js +1 -1
  89. package/dist/components/sd-popover.js +1 -1
  90. package/dist/components/sd-portal.js +1 -1
  91. package/dist/components/sd-progress.js +1 -1
  92. package/dist/components/sd-select-dropdown.js +1 -1
  93. package/dist/components/sd-select-multiple-group.js +1 -1
  94. package/dist/components/sd-select-multiple.js +1 -1
  95. package/dist/components/sd-select-option-group.js +1 -1
  96. package/dist/components/sd-select-option.js +1 -1
  97. package/dist/components/sd-select-search-input.js +1 -1
  98. package/dist/components/sd-select.js +1 -1
  99. package/dist/components/sd-table.js +1 -1
  100. package/dist/components/sd-textarea.js +1 -1
  101. package/dist/components/sd-toast.js +1 -1
  102. package/dist/components/sd-toggle-button.js +1 -1
  103. package/dist/components/sd-toggle.js +1 -1
  104. package/dist/components/sd-tooltip.js +1 -1
  105. package/dist/design-system/design-system.esm.js +1 -1
  106. package/dist/design-system/p-2ca338f9.entry.js +1 -0
  107. package/dist/design-system/p-322dbf53.entry.js +1 -0
  108. package/dist/design-system/p-3885ca10.entry.js +1 -0
  109. package/dist/design-system/{p-d6b38732.entry.js → p-40da6e22.entry.js} +1 -1
  110. package/dist/design-system/{p-679e4367.entry.js → p-47d37199.entry.js} +1 -1
  111. package/dist/design-system/{p-3301c280.entry.js → p-6c34df5b.entry.js} +1 -1
  112. package/dist/design-system/p-7d35c7a7.entry.js +1 -0
  113. package/dist/design-system/{p-3d03b19e.entry.js → p-938940a7.entry.js} +1 -1
  114. package/dist/design-system/p-9650c304.entry.js +1 -0
  115. package/dist/design-system/{p-8f99cd66.entry.js → p-9ad83ffb.entry.js} +1 -1
  116. package/dist/design-system/p-CRdYeSBK.js +1 -0
  117. package/dist/design-system/p-Dc4UTGgQ.js +1 -0
  118. package/dist/design-system/p-VKF2AWs1.js +1 -0
  119. package/dist/design-system/{p-d344fa9d.entry.js → p-a547f366.entry.js} +1 -1
  120. package/dist/design-system/{p-3e07e92a.entry.js → p-b2ab1c50.entry.js} +1 -1
  121. package/dist/design-system/p-d38f59b3.entry.js +1 -0
  122. package/dist/design-system/{p-822233ee.entry.js → p-e5c3927f.entry.js} +1 -1
  123. package/dist/design-system/p-xxEHPVkL.js +1 -0
  124. package/dist/esm/{select-keyboard-navigation-D8-D-mJX.js → base-dropdown-event-CRdYeSBK.js} +1 -37
  125. package/dist/esm/component.button-Dc4UTGgQ.js +113 -0
  126. package/dist/esm/design-system.js +1 -1
  127. package/dist/esm/loader.js +1 -1
  128. package/dist/esm/sd-button-v2.config-BWmcscrt.js +193 -0
  129. package/dist/esm/sd-button-v2.entry.js +84 -0
  130. package/dist/esm/sd-button_21.entry.js +114 -60
  131. package/dist/esm/sd-card.entry.js +1 -1
  132. package/dist/esm/sd-date-picker.entry.js +1 -1
  133. package/dist/esm/sd-dropdown-button.entry.js +272 -0
  134. package/dist/esm/sd-file-picker.entry.js +3 -3
  135. package/dist/esm/sd-guide.entry.js +2 -2
  136. package/dist/esm/sd-popover.entry.js +2 -2
  137. package/dist/esm/sd-progress.entry.js +2 -2
  138. package/dist/esm/sd-select-multiple-group.entry.js +2 -1
  139. package/dist/esm/sd-select-multiple.entry.js +3 -2
  140. package/dist/esm/sd-select-option-group.entry.js +3 -3
  141. package/dist/esm/sd-toggle-button.entry.js +1 -1
  142. package/dist/esm/sd-toggle.entry.js +1 -1
  143. package/dist/esm/select-keyboard-navigation-xxEHPVkL.js +37 -0
  144. package/dist/types/components/sd-button-v2/sd-button-v2.config.d.ts +178 -0
  145. package/dist/types/components/sd-button-v2/sd-button-v2.d.ts +18 -0
  146. package/dist/types/components/sd-dropdown-button/sd-dropdown-button.config.d.ts +55 -0
  147. package/dist/types/components/sd-dropdown-button/sd-dropdown-button.d.ts +34 -0
  148. package/dist/types/components/sd-portal/sd-portal.d.ts +9 -0
  149. package/dist/types/components.d.ts +153 -0
  150. package/dist/types/index.d.ts +2 -0
  151. package/hydrate/index.js +881 -148
  152. package/hydrate/index.mjs +881 -148
  153. package/package.json +2 -2
  154. package/dist/components/p-B82gJZ4z.js +0 -1
  155. package/dist/components/p-C6J-ZZxF.js +0 -1
  156. package/dist/components/p-CHAh-_qx.js +0 -1
  157. package/dist/design-system/p-103de692.entry.js +0 -1
  158. package/dist/design-system/p-55c13597.entry.js +0 -1
  159. package/dist/design-system/p-D8-D-mJX.js +0 -1
  160. package/dist/design-system/p-de339565.entry.js +0 -1
  161. package/dist/design-system/p-fc0e636b.entry.js +0 -1
@@ -1,26 +1,11 @@
1
1
  import { r as registerInstance, c as createEvent, a as getElement, h, F as Fragment, d as readTask } from './index-C_an1PQ3.js';
2
+ import { b as buttonTokens } from './component.button-Dc4UTGgQ.js';
2
3
  import { r as resolveColor } from './resolveColor-DUqcOPNn.js';
3
4
  import { u as useDatePicker, t as today } from './useDatePicker-DTrMR0rx.js';
4
- import { n as nanoid, B as BaseDropdownEvent, S as SelectKeyboardNavigation } from './select-keyboard-navigation-D8-D-mJX.js';
5
+ import { n as nanoid, S as SelectKeyboardNavigation } from './select-keyboard-navigation-xxEHPVkL.js';
6
+ import { B as BaseDropdownEvent } from './base-dropdown-event-CRdYeSBK.js';
5
7
  import { T as TooltipArrow } from './tooltipArrow-BTp0AVR2.js';
6
8
 
7
- const size = {
8
- xs: {
9
- icon: "12"
10
- },
11
- sm: {
12
- icon: "16"
13
- },
14
- md: {
15
- icon: "20"
16
- },
17
- lg: {
18
- icon: "24"
19
- }
20
- };
21
- var buttonTokens = {
22
- size: size};
23
-
24
9
  const sdButtonCss = () => `sd-button{display:inline-flex;width:fit-content;height:fit-content}.sd-button{--sd-button-height:34px;--sd-button-padding-x:20px;--sd-button-gap:8px;--sd-button-font-family:inherit;--sd-button-font-size:16px;--sd-button-font-weight:500;--sd-button-text-decoration:none;--sd-button-label-min-width:auto;--sd-button-icon-only-size:var(--sd-button-height);text-decoration:none;cursor:pointer;border-radius:var(--sd-button-radius-default, 4px);transition:all 0.2s ease-in-out;position:relative;overflow:hidden;white-space:nowrap;-webkit-user-select:none;user-select:none;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;border:none;padding:0 var(--sd-button-padding-x);min-width:var(--sd-button-min-width, auto);min-height:var(--sd-button-height);font-family:var(--sd-button-font-family);font-size:var(--sd-button-font-size);font-weight:var(--sd-button-font-weight);text-decoration:var(--sd-button-text-decoration)}.sd-button--xs{--sd-button-height:var(--sd-button-xs-height, 24px);--sd-button-padding-x:var(--sd-button-xs-padding-x, 8px);--sd-button-gap:var(--sd-button-xs-gap, 4px);--sd-button-font-family:var(--sd-button-xs-typography-font-family, inherit);--sd-button-font-size:var(--sd-button-xs-typography-font-size, 12px);--sd-button-font-weight:var(--sd-button-xs-typography-font-weight, 500);--sd-button-text-decoration:var(--sd-button-xs-typography-text-decoration, none);--sd-button-label-min-width:var(--sd-button-label-xs-min-width, auto);--sd-button-icon-only-size:var(--sd-button-icon-only-xs-width, var(--sd-button-height));line-height:20px}.sd-button--sm{--sd-button-height:var(--sd-button-sm-height, 28px);--sd-button-padding-x:var(--sd-button-sm-padding-x, 12px);--sd-button-gap:var(--sd-button-sm-gap, 6px);--sd-button-font-family:var(--sd-button-sm-typography-font-family, inherit);--sd-button-font-size:var(--sd-button-sm-typography-font-size, 12px);--sd-button-font-weight:var(--sd-button-sm-typography-font-weight, 500);--sd-button-text-decoration:var(--sd-button-sm-typography-text-decoration, none);--sd-button-label-min-width:var(--sd-button-label-sm-min-width, auto);--sd-button-icon-only-size:var(--sd-button-icon-only-sm-width, var(--sd-button-height));line-height:20px}.sd-button--md{--sd-button-height:var(--sd-button-md-height, 34px);--sd-button-padding-x:var(--sd-button-md-padding-x, 20px);--sd-button-gap:var(--sd-button-md-gap, 8px);--sd-button-font-family:var(--sd-button-md-typography-font-family, inherit);--sd-button-font-size:var(--sd-button-md-typography-font-size, 16px);--sd-button-font-weight:var(--sd-button-md-typography-font-weight, 500);--sd-button-text-decoration:var(--sd-button-md-typography-text-decoration, none);--sd-button-label-min-width:var(--sd-button-label-md-min-width, auto);--sd-button-icon-only-size:var(--sd-button-icon-only-md-width, var(--sd-button-height));line-height:26px}.sd-button--lg{--sd-button-height:var(--sd-button-lg-height, 62px);--sd-button-padding-x:var(--sd-button-lg-padding-x, 28px);--sd-button-gap:var(--sd-button-lg-gap, 12px);--sd-button-font-family:var(--sd-button-lg-typography-font-family, inherit);--sd-button-font-size:var(--sd-button-lg-typography-font-size, 18px);--sd-button-font-weight:var(--sd-button-lg-typography-font-weight, 500);--sd-button-text-decoration:var(--sd-button-lg-typography-text-decoration, none);--sd-button-label-min-width:var(--sd-button-label-lg-min-width, auto);--sd-button-icon-only-size:var(--sd-button-icon-only-lg-width, var(--sd-button-height));line-height:30px}.sd-button--has-label{--sd-button-min-width:var(--sd-button-label-min-width, auto)}.sd-button--primary{background-color:var(--button-color);color:white;transition:filter 0.2s ease}.sd-button--primary::before{content:"";position:absolute;inset:0;background:#000000;opacity:0;transition:opacity 0.2s ease;z-index:0}.sd-button--primary:hover:not(.sd-button--disabled):not(.sd-button--loading)::before{opacity:0.25}.sd-button--outline{background:white;border:var(--sd-button-border-width-default, 1px) solid var(--button-color);color:var(--button-color)}.sd-button--outline::before{content:"";position:absolute;inset:0;background:var(--button-color);opacity:0;transition:opacity 0.2s ease;z-index:0}.sd-button--outline:hover:not(.sd-button--disabled):not(.sd-button--loading)::before{opacity:0.15}.sd-button--outline .sd-button__content{position:relative;z-index:1}.sd-button--ghost{background-color:transparent;color:var(--button-color);border-color:transparent}.sd-button--ghost::before{content:"";position:absolute;inset:0;background:var(--button-color);opacity:0;transition:opacity 0.2s ease;z-index:0}.sd-button--ghost:hover:not(.sd-button--disabled):not(.sd-button--loading)::before{opacity:0.15}.sd-button--ghost .sd-button__content{position:relative;z-index:1}.sd-button--disabled{border:var(--sd-button-border-width-default, 1px) solid var(--sd-button-border-disabled, #CCCCCC);background:var(--sd-button-bg-disabled, #E1E1E1);color:var(--sd-button-content-disabled, #888888);cursor:not-allowed !important}.sd-button--icon-only{padding:0;width:var(--sd-button-icon-only-size, var(--sd-button-height));min-width:var(--sd-button-icon-only-size, var(--sd-button-height));height:var(--sd-button-icon-only-size, var(--sd-button-height))}.sd-button--no-hover:hover::before{opacity:0 !important}.sd-button .sd-button__content{display:inline-flex;align-items:center;justify-content:center;gap:var(--sd-button-gap);z-index:1;font-weight:inherit}`;
25
10
 
26
11
  const ICON_SIZES = {
@@ -386,10 +371,10 @@ const SdDateRangePicker = class {
386
371
  this.setHoverDate(hoverDate);
387
372
  }
388
373
  render() {
389
- return (h("div", { key: '96cd4e99ae976517e7b24c5ff3046af976adc5cb', class: {
374
+ return (h("div", { key: 'e0eaf7463e91d3afed6ff977deb20d122e837fd4', class: {
390
375
  'sd-date-range-picker': true,
391
376
  'sd-date-range-picker--disabled': this.disabled,
392
- } }, h("sd-input", { key: 'a84838a1a84d990b289f0b753ccf3e2f45da4770', ref: el => (this.inputEl = el), value: !!this.dateRange[0] ? `${this.dateRange[0]} ~ ${this.dateRange[1]}` : '', label: this.label, "inside-label": true, readonly: true, disabled: this.disabled, placeholder: this.placeholder, inputClass: "sd-date-range-picker__input", onClick: () => this.openMenu() }, h("sd-icon", { key: 'd926c672dcf457a68ebe644b32c90a03ba29b175', slot: "prefix", name: "date", size: "16", color: this.disabled ? 'grey_65' : 'grey_70', class: "date-icon", onClick: () => this.openMenu() })), this.isOpen && (h("sd-portal", { key: '0af519c7ac2ade00972e23b9ecb0344989d87f51', open: this.isOpen, parentRef: this.inputEl, onSdClose: this.closeMenu }, h("div", { key: 'd9109e573215092c6b386ae27ac7377c4347df4c', class: "sd-date-range-picker__menu" }, h("div", { key: 'ca4743a26ed0571bc3b63218a32a113e50dbd81a', class: "sd-date-range-picker__header mb-16pxr flex flex-nowrap items-center justify-center" }, h("button", { key: '6f0fe1ede6d171e749a241fbeec32056250709b9', type: "button", name: "prev", title: "Previous", onClick: () => this.setPrevYear(this.prevYear - 1) }, h("sd-icon", { key: '821526a069a845f271b0e5db607f747efe4e610c', name: "arrowLeft", size: "12", color: "#CCCCCC" })), h("div", { key: 'e9402009c8b034953d7ff4be5a4eea64d7fed21d', class: "header-label" }, this.prevYear), h("button", { key: 'b752631ab64e32a4a39c13898cc3db5e25897c4b', type: "button", name: "next", title: "Next", onClick: () => this.setPrevYear(this.prevYear + 1) }, h("sd-icon", { key: '62c6e0004ff1a0d8f260e11b9d17ea7ccca942ee', name: "arrowRight", size: "12", color: "#CCCCCC" }))), h("div", { key: '3a05a7e02664be8d9dfb85d0bada03a2d352af12', class: "sd-date-range-picker__body" }, [this.prevCalendar, this.nextCalendar].map((calendar, index) => (h(Fragment, null, index === 1 && h("div", { class: "separator" }), h("div", { key: index, class: "calendar-container" }, h("div", { class: "calendar-header" }, h("button", { type: "button", name: "month", title: "Month", class: index === 0 ? 'header-button-prev' : 'header-button-next', onClick: () => this.updateYearMonth(index === 0 ? 'prev' : 'next') }, h("sd-icon", { name: index === 0 ? 'arrowLeft' : 'arrowRight', size: "12", color: "#CCCCCC" })), index === 0
377
+ } }, h("sd-input", { key: '301a5133f5a6bcb5bd66fed546528808a96b822a', ref: el => (this.inputEl = el), value: !!this.dateRange[0] ? `${this.dateRange[0]} ~ ${this.dateRange[1]}` : '', label: this.label, "inside-label": true, readonly: true, disabled: this.disabled, placeholder: this.placeholder, inputClass: "sd-date-range-picker__input", onClick: () => this.openMenu() }, h("sd-icon", { key: 'ef7e9e74957d994a2e7a374f849ef1a5f03fe501', slot: "prefix", name: "date", size: "16", color: this.disabled ? 'grey_65' : 'grey_70', class: "date-icon", onClick: () => this.openMenu() })), this.isOpen && (h("sd-portal", { key: '0eb793bbc67d0da80bfdbb9d5e8c89857a9bd13d', open: this.isOpen, parentRef: this.inputEl, onSdClose: this.closeMenu }, h("div", { key: '6e7f6d3c0ba5d60cec929ff87f2b16c6fd1123ae', class: "sd-date-range-picker__menu" }, h("div", { key: 'bbc3b2117e226e86ad18e90d9549dfa33b8faa18', class: "sd-date-range-picker__header mb-16pxr flex flex-nowrap items-center justify-center" }, h("button", { key: 'e5246cbd684096c113a9568d42a4a86555fd55b0', type: "button", name: "prev", title: "Previous", onClick: () => this.setPrevYear(this.prevYear - 1) }, h("sd-icon", { key: '84281ab72847d7fe9352be583465b810854f2cfb', name: "arrowLeft", size: "12", color: "#CCCCCC" })), h("div", { key: '9d9394eea9a82bdcdc7918af50e98909610ab5e2', class: "header-label" }, this.prevYear), h("button", { key: '6f05a7477293b129561b1bdaa5fca46224f41af9', type: "button", name: "next", title: "Next", onClick: () => this.setPrevYear(this.prevYear + 1) }, h("sd-icon", { key: '746bc40e5d0bb72e9aa712012d411f20b459b80a', name: "arrowRight", size: "12", color: "#CCCCCC" }))), h("div", { key: '96a2c1674152f5ee31b29734b1471940b4d0f4b4', class: "sd-date-range-picker__body" }, [this.prevCalendar, this.nextCalendar].map((calendar, index) => (h(Fragment, null, index === 1 && h("div", { class: "separator" }), h("div", { key: index, class: "calendar-container" }, h("div", { class: "calendar-header" }, h("button", { type: "button", name: "month", title: "Month", class: index === 0 ? 'header-button-prev' : 'header-button-next', onClick: () => this.updateYearMonth(index === 0 ? 'prev' : 'next') }, h("sd-icon", { name: index === 0 ? 'arrowLeft' : 'arrowRight', size: "12", color: "#CCCCCC" })), index === 0
393
378
  ? `${this.prevYear}.${String(this.prevMonth).padStart(2, '0')}`
394
379
  : `${this.nextYear}.${String(this.nextMonth).padStart(2, '0')}`), h("div", { class: "calendar-days" }, ['일', '월', '화', '수', '목', '금', '토'].map(day => (h("sd-date-box", { key: day, date: day, disabled: true, class: "day" })))), h("div", { class: "calendar-body mt-12pxr grid grid-cols-7 gap-y-8pxr" }, [...calendar.prevMonthDays, ...calendar.days, ...calendar.afterMonthDays].map((day, idx) => (h("sd-date-box", { key: `prev${day}_${idx}`, date: !day ? '' : Number(day), selected: this.dateRange.some(date => date === this.formatDate(index, Number(day))), type: this.getDateBoxType(this.formatDate(index, Number(day))), isToday: today === this.formatDate(index, Number(day)), disabled: !day ? true : this.isDisabledDate(this.formatDate(index, Number(day))), inRange: this.isDateInRange(this.formatDate(index, Number(day))), isStartDate: this.dateRange[0] === this.formatDate(index, Number(day)), isEndDate: this.dateRange[1] === this.formatDate(index, Number(day)), onSdClick: () => this.handleDateClick(index, Number(day)), onSdMouseOver: () => this.handleDateHover(index, Number(day)) }))))))))))))));
395
380
  }
@@ -521,15 +506,15 @@ const SdField = class {
521
506
  }
522
507
  }
523
508
  render() {
524
- return (h("div", { key: '3c69abe493110b5665795706a9ae0e525f213aca', class: {
509
+ return (h("div", { key: '83d20191373b759f18d25e25330ead65217dea4f', class: {
525
510
  'sd-field': true,
526
511
  'sd-field--has-label': !!this.label,
527
512
  'sd-field--has-label-inside': !!this.label && this.insideLabel,
528
513
  [this.fieldStatus]: !!this.fieldStatus,
529
- } }, h("div", { key: 'decc6821b7172f5ecc2343472014c08674725904', class: "sd-field__wrapper" }, this.renderLabel(this.label), h("div", { key: 'ca5e93f049db10ecaaaab091fdf394ac4b55e292', class: {
514
+ } }, h("div", { key: '2f04e19997c077c32843173c85dc04840f8fa0f6', class: "sd-field__wrapper" }, this.renderLabel(this.label), h("div", { key: 'c7fa5c334cd4dc0b99919850b3059a35a77ea5c6', class: {
530
515
  'sd-field__control': true,
531
516
  'sd-field__control--label-inside ': !!this.label && this.insideLabel,
532
- } }, h("slot", { key: '7ee38983d32985f4b4a035830bcdca0e14b2cf71' }))), this.errorMsg && h("div", { key: 'c2d6ef860ced48657b906806f2618594b094ea79', class: "sd-field__error-message" }, this.errorMsg)));
517
+ } }, h("slot", { key: '15f7bd40ca6ed1667f97f6362be914e203c491af' }))), this.errorMsg && h("div", { key: 'd940bca4d3074e8051bc5392aad36be4c58f88af', class: "sd-field__error-message" }, this.errorMsg)));
533
518
  }
534
519
  renderLabel(label) {
535
520
  if (!label)
@@ -690,7 +675,7 @@ const SdFloatingPopover = class {
690
675
  this.close.emit();
691
676
  }
692
677
  render() {
693
- return h("slot", { key: '2f33d335a7cf00ace576aed610a0e77d711a5b10' });
678
+ return h("slot", { key: 'd8bdd90d00b52153d1144bbea871ace4888e37e4' });
694
679
  }
695
680
  };
696
681
  SdFloatingPopover.style = sdFloatingPortalCss();
@@ -2704,7 +2689,7 @@ const SdIcon = class {
2704
2689
  }
2705
2690
  render() {
2706
2691
  const IconComponent = Icons[this.name]?.[this.size];
2707
- return (h("i", { key: '1d6a48769c99bbfe9576016e24766b8c82ab570e', class: this.getIconClasses(), style: this.iconStyle }, h(IconComponent, { key: '3fdb4195ef13656e79b402a4eae2fb0210fb3a97', color: this.resolvedColor })));
2692
+ return (h("i", { key: '2c1ef942e674d6dc85911f9a87c6859e0e86a706', class: this.getIconClasses(), style: this.iconStyle }, h(IconComponent, { key: 'fa1bc7cd1cf4dc5ec2565f5bbfe65e8137673204', color: this.resolvedColor })));
2708
2693
  }
2709
2694
  };
2710
2695
  SdIcon.style = sdIconCss();
@@ -2802,7 +2787,7 @@ const SdInput = class {
2802
2787
  }
2803
2788
  };
2804
2789
  render() {
2805
- return (h("sd-field", { key: '87f02ba890fd952f89eb86d200318038137ba1a4', name: this.name, label: this.label, insideLabel: this.insideLabel, rules: this.rules, error: this.error, disabled: this.disabled, focused: this.focused, hovered: this.hovered, status: this.status, useLabelRequired: this.useLabelRequired, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false) }, h("label", { key: '0bb5824067b33c178b1f60ececdccfe0a3d5f294', class: "sd-input__content", style: { width: '100%' } }, h("slot", { key: '6f67712b4ca708ba511c57379a6b5118732f146a', name: "prefix" }), h("input", { key: 'b337a1161dedb41ed29a690fa963c0ac60dd0c79', name: this.name, ref: el => (this.nativeEl = el), class: `sd-input__native ${this.inputClass}`, type: this.type, value: this.internalValue || '', placeholder: this.placeholder, disabled: this.disabled, readonly: this.readonly, autofocus: this.autoFocus, onInput: this.handleInput, onFocus: event => this.handleFocus('focus', event), onBlur: event => this.handleFocus('blur', event), style: this.inputStyle }), h("slot", { key: 'bf45d9fd71551dc6a3bb96cdc44512796beee923', name: "suffix" }), this.clearable && this.internalValue && (h("sd-icon", { key: 'aed0a5d9115ba8b7601dc62423349bee1a9978c7', name: "close", color: "grey_65", size: "16", class: "sd-input__clear-icon", onClick: async () => {
2790
+ return (h("sd-field", { key: '757bf7b330f93ec9cd344098bdf124b999e04bb5', name: this.name, label: this.label, insideLabel: this.insideLabel, rules: this.rules, error: this.error, disabled: this.disabled, focused: this.focused, hovered: this.hovered, status: this.status, useLabelRequired: this.useLabelRequired, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false) }, h("label", { key: '2dde85e905d77bb6337a2ad10a9f0f872fed5e8a', class: "sd-input__content", style: { width: '100%' } }, h("slot", { key: '20f47646ca476bf6ca6412ebb9e6aac0c72e7eab', name: "prefix" }), h("input", { key: 'a4f4f1594c80a8d834db7d6125110b4c65ad9906', name: this.name, ref: el => (this.nativeEl = el), class: `sd-input__native ${this.inputClass}`, type: this.type, value: this.internalValue || '', placeholder: this.placeholder, disabled: this.disabled, readonly: this.readonly, autofocus: this.autoFocus, onInput: this.handleInput, onFocus: event => this.handleFocus('focus', event), onBlur: event => this.handleFocus('blur', event), style: this.inputStyle }), h("slot", { key: '35c7c173d72cbc295ad8f6e12f94bfe96e9f98d1', name: "suffix" }), this.clearable && this.internalValue && (h("sd-icon", { key: '82bf96b1a01516e0a7ea0dd735509511aa8a0e05', name: "close", color: "grey_65", size: "16", class: "sd-input__clear-icon", onClick: async () => {
2806
2791
  this.internalValue = '';
2807
2792
  await this.formField?.sdValidate();
2808
2793
  } })))));
@@ -2829,7 +2814,7 @@ const SdLoadingSpinner = class {
2829
2814
  return resolveColor(this.color);
2830
2815
  }
2831
2816
  render() {
2832
- return (h(Fragment, { key: 'c3b3448fcc65334af3246f80157b195ec5595afe' }, h("svg", { key: '24701b65d17e56434cf46b72dbd5acec208b5dc8', class: "sd-loading-spinner", width: "72px", height: "72px", viewBox: "25 25 50 50", style: { color: this.resolvedColor } }, h("circle", { key: 'e19c68c082348d36eecd05fa561eee91182349f2', class: "path", cx: "50", cy: "50", r: "20", fill: "none", stroke: "currentColor", "stroke-width": "5", "stroke-miterlimit": "10" }))));
2817
+ return (h(Fragment, { key: '1a4edb8be9cc83ab900cd615ee30958d9822e98b' }, h("svg", { key: '634070026b58303bf3423b10f37ed6603179b9b1', class: "sd-loading-spinner", width: "72px", height: "72px", viewBox: "25 25 50 50", style: { color: this.resolvedColor } }, h("circle", { key: 'fda3f7e4f787176f6030e19a3f2c1dd59326d35a', class: "path", cx: "50", cy: "50", r: "20", fill: "none", stroke: "currentColor", "stroke-width": "5", "stroke-miterlimit": "10" }))));
2833
2818
  }
2834
2819
  };
2835
2820
  SdLoadingSpinner.style = sdLoadingSpinnerCss();
@@ -3124,17 +3109,17 @@ const SdNumberInput = class {
3124
3109
  const inputStyles = {
3125
3110
  textAlign: this.useButton ? 'center' : 'right',
3126
3111
  };
3127
- return (h("sd-field", { key: '7aa387eeb5850052e121931b3f8183373b4319aa', name: this.name, label: this.label, insideLabel: this.insideLabel, rules: this.rules, error: this.error, disabled: this.disabled, focused: this.focused, hovered: this.hovered, status: this.status, ref: el => (this.formField = el), style: inputWidth }, h("label", { key: 'f5bbb6c76e32de4aefe59c6958a38e1a560f05c9', class: {
3112
+ return (h("sd-field", { key: '837e3b5c34396eb83adcf52f3242d24ad122be0a', name: this.name, label: this.label, insideLabel: this.insideLabel, rules: this.rules, error: this.error, disabled: this.disabled, focused: this.focused, hovered: this.hovered, status: this.status, ref: el => (this.formField = el), style: inputWidth }, h("label", { key: '57000cb104bb65b1827e2cdb059bad004c236b2a', class: {
3128
3113
  'sd-number-input': true,
3129
3114
  [this.getInputStatus()]: true,
3130
3115
  'sd-number-input--with-buttons': this.useButton,
3131
- }, onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false), style: this.inputStyle }, h("input", { key: 'fc26b7cf0d121025c9a748b158640e03188d72d3', name: this.name, ref: el => (this.nativeEl = el), class: `sd-number-input__input ${this.inputClass}`, type: "text", inputMode: "numeric", value: this.displayValue, placeholder: this.placeholder, disabled: this.disabled, readonly: this.readonly, autofocus: this.autoFocus, onInput: this.handleInput, onKeyDown: this.handleKeyDown, style: inputStyles, onFocus: this.handleFocus, onBlur: this.handleBlur }), this.useButton && (h("div", { key: 'c9325ea7dd19c02fead55a0d63ac0b7b16143d08', class: "sd-number-input__buttons" }, h("button", { key: 'ec96811ce7046a3fe9506ca0635db97413d8283a', type: "button", class: {
3116
+ }, onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false), style: this.inputStyle }, h("input", { key: 'da7fe761d7e2528dd299d6ee5867bc7a5e0983ee', name: this.name, ref: el => (this.nativeEl = el), class: `sd-number-input__input ${this.inputClass}`, type: "text", inputMode: "numeric", value: this.displayValue, placeholder: this.placeholder, disabled: this.disabled, readonly: this.readonly, autofocus: this.autoFocus, onInput: this.handleInput, onKeyDown: this.handleKeyDown, style: inputStyles, onFocus: this.handleFocus, onBlur: this.handleBlur }), this.useButton && (h("div", { key: '3a58c1b9da818dbe0d4d29b79816bbc81288be49', class: "sd-number-input__buttons" }, h("button", { key: '507b418d1aea67247d10fcba514b51cc966b3ce9', type: "button", class: {
3132
3117
  'sd-number-input__button': true,
3133
3118
  'sd-number-input__button--decrement': true,
3134
- }, disabled: this.isDecrementDisabled(), onClick: this.handleDecrement, tabindex: -1 }, h("sd-icon", { key: '70311a7723356ecc88125042d366bf567b0b5a2a', name: "minus", size: 12, color: this.isDecrementDisabled() ? 'grey_45' : 'brilliantblue_70' })), h("button", { key: 'b7086218dc98fec4287e4becb0d834634fd52055', type: "button", class: {
3119
+ }, disabled: this.isDecrementDisabled(), onClick: this.handleDecrement, tabindex: -1 }, h("sd-icon", { key: 'e0b28e6cf9a5c9d578688e45f7db227516f6373f', name: "minus", size: 12, color: this.isDecrementDisabled() ? 'grey_45' : 'brilliantblue_70' })), h("button", { key: '813bf64d160888e610da067fef9dea11375dd51b', type: "button", class: {
3135
3120
  'sd-number-input__button': true,
3136
3121
  'sd-number-input__button--increment': true,
3137
- }, disabled: this.isIncrementDisabled(), onClick: this.handleIncrement, tabindex: -1 }, h("sd-icon", { key: 'b945a1561978dc4bba1868fa57652e94a6bcfc34', name: "add", size: 12, color: this.isIncrementDisabled() ? 'grey_45' : 'brilliantblue_70' })))))));
3122
+ }, disabled: this.isIncrementDisabled(), onClick: this.handleIncrement, tabindex: -1 }, h("sd-icon", { key: '6677d8b46b123e5534bfa8b2fcb45276d9b70782', name: "add", size: 12, color: this.isIncrementDisabled() ? 'grey_45' : 'brilliantblue_70' })))))));
3138
3123
  }
3139
3124
  static get watchers() { return {
3140
3125
  "value": [{
@@ -3222,12 +3207,12 @@ const SdPagination = class {
3222
3207
  }
3223
3208
  }
3224
3209
  render() {
3225
- return (h("div", { key: 'feed08139c382f91539bc316a967ed1738529688', class: this.paginationClasses }, h("div", { key: '42c908d7a685f2acab29a94d040e4f4c513fff38', class: "prepend-btns" }, this.renderPrevButtons()), this.simple ? (h("div", { class: "pagination-info" }, h("span", { class: "current-page" }, this.currentPage), h("span", null, "/"), h("span", { class: "last-page" }, this.lastPage))) : (this.pageNumbers.map(n => (h("button", { type: "button", "aria-current": this.currentPage === n ? 'page' : undefined, class: {
3210
+ return (h("div", { key: '1adbe18d363ff7946e900929d0dfaec1a1807d45', class: this.paginationClasses }, h("div", { key: '104eb4ac5fa9e8564c8730f34aefca4e0ac31cc6', class: "prepend-btns" }, this.renderPrevButtons()), this.simple ? (h("div", { class: "pagination-info" }, h("span", { class: "current-page" }, this.currentPage), h("span", null, "/"), h("span", { class: "last-page" }, this.lastPage))) : (this.pageNumbers.map(n => (h("button", { type: "button", "aria-current": this.currentPage === n ? 'page' : undefined, class: {
3226
3211
  'pagination-btn': true,
3227
3212
  'pagination-btn--selected': this.currentPage === n,
3228
3213
  }, disabled: this.currentPage === n, style: {
3229
3214
  '--pagination-btn-width': `${this.buttonWidth}px`,
3230
- }, onClick: () => this.handlePageChange(n) }, n)))), h("div", { key: '2be11ae773c0bce71ecaf53f99daff3f5b2d567d', class: "append-btns" }, this.renderNextButtons())));
3215
+ }, onClick: () => this.handlePageChange(n) }, n)))), h("div", { key: 'e596b6a182e22ae4a8e95d5babb548d3bfba373d', class: "append-btns" }, this.renderNextButtons())));
3231
3216
  }
3232
3217
  };
3233
3218
  SdPagination.style = sdPaginationCss();
@@ -3248,25 +3233,31 @@ const SdPortal = class {
3248
3233
  wrapper;
3249
3234
  rafId;
3250
3235
  isInsideClick = false;
3236
+ handleObservedScroll = () => this.updatePosition();
3251
3237
  resizeObserver;
3252
3238
  mutationObserver;
3239
+ scrollParents = [];
3240
+ isObserved = false;
3241
+ handleOpenChange() {
3242
+ this.syncPortalState();
3243
+ }
3253
3244
  componentDidLoad() {
3254
3245
  this.container = this.resolveContainer();
3255
- this.createWrapper();
3256
- this.moveSlotContent();
3257
- this.updatePosition();
3258
- this.observeParent();
3246
+ this.syncPortalState();
3259
3247
  }
3260
3248
  componentDidRender() {
3261
- if (!this.wrapper)
3262
- return;
3263
- this.wrapper.style.display = this.open ? 'block' : 'none';
3264
- if (this.open)
3265
- this.updatePosition();
3249
+ this.syncPortalState();
3266
3250
  }
3267
3251
  disconnectedCallback() {
3268
3252
  this.unobserveParent();
3269
- this.wrapper?.remove();
3253
+ if (this.wrapper?.parentNode) {
3254
+ try {
3255
+ this.wrapper.parentNode.removeChild(this.wrapper);
3256
+ }
3257
+ catch {
3258
+ // Stencil spec mock DOM can already detach the wrapper before this callback runs.
3259
+ }
3260
+ }
3270
3261
  }
3271
3262
  resolveContainer() {
3272
3263
  const el = typeof this.to === 'string' ? document.querySelector(this.to) : this.to;
@@ -3281,6 +3272,26 @@ const SdPortal = class {
3281
3272
  });
3282
3273
  this.container.appendChild(this.wrapper);
3283
3274
  }
3275
+ ensureWrapper() {
3276
+ if (this.wrapper)
3277
+ return;
3278
+ this.container ||= this.resolveContainer();
3279
+ this.createWrapper();
3280
+ this.moveSlotContent();
3281
+ }
3282
+ syncPortalState() {
3283
+ if (!this.open) {
3284
+ this.wrapper && (this.wrapper.style.display = 'none');
3285
+ this.unobserveParent();
3286
+ return;
3287
+ }
3288
+ this.ensureWrapper();
3289
+ if (!this.wrapper)
3290
+ return;
3291
+ this.wrapper.style.display = 'block';
3292
+ this.observeParent();
3293
+ this.updatePosition();
3294
+ }
3284
3295
  moveSlotContent() {
3285
3296
  if (!this.wrapper)
3286
3297
  return;
@@ -3322,19 +3333,57 @@ const SdPortal = class {
3322
3333
  }
3323
3334
  // parentRef의 이동 / 크기변경 감지
3324
3335
  observeParent() {
3325
- if (!this.parentRef)
3336
+ if (!this.parentRef || this.isObserved)
3326
3337
  return;
3327
- this.resizeObserver = new ResizeObserver(() => this.updatePosition());
3328
- this.resizeObserver.observe(this.parentRef);
3329
- this.mutationObserver = new MutationObserver(() => this.updatePosition());
3330
- this.mutationObserver.observe(document.body, {
3331
- childList: true,
3332
- subtree: true,
3333
- });
3338
+ this.observeScrollParents(this.parentRef);
3339
+ if (typeof ResizeObserver !== 'undefined') {
3340
+ this.resizeObserver = new ResizeObserver(() => this.updatePosition());
3341
+ this.resizeObserver.observe(this.parentRef);
3342
+ }
3343
+ if (typeof MutationObserver !== 'undefined') {
3344
+ this.mutationObserver = new MutationObserver(() => this.updatePosition());
3345
+ this.mutationObserver.observe(document.body, {
3346
+ childList: true,
3347
+ subtree: true,
3348
+ });
3349
+ }
3350
+ this.isObserved = true;
3334
3351
  }
3335
3352
  unobserveParent() {
3353
+ if (!this.isObserved)
3354
+ return;
3355
+ this.unobserveScrollParents();
3336
3356
  this.resizeObserver?.disconnect();
3357
+ this.resizeObserver = undefined;
3337
3358
  this.mutationObserver?.disconnect();
3359
+ this.mutationObserver = undefined;
3360
+ this.isObserved = false;
3361
+ }
3362
+ observeScrollParents(element) {
3363
+ const nextScrollParents = this.getScrollParents(element);
3364
+ nextScrollParents.forEach(parent => {
3365
+ parent.addEventListener('scroll', this.handleObservedScroll, { passive: true });
3366
+ });
3367
+ this.scrollParents = nextScrollParents;
3368
+ }
3369
+ unobserveScrollParents() {
3370
+ this.scrollParents.forEach(parent => {
3371
+ parent.removeEventListener('scroll', this.handleObservedScroll);
3372
+ });
3373
+ this.scrollParents = [];
3374
+ }
3375
+ getScrollParents(element) {
3376
+ const scrollParents = [];
3377
+ let currentElement = element.parentElement;
3378
+ while (currentElement) {
3379
+ const { overflow, overflowX, overflowY } = getComputedStyle(currentElement);
3380
+ const isScrollable = [overflow, overflowX, overflowY].some(value => /(auto|scroll|overlay)/.test(value));
3381
+ if (isScrollable) {
3382
+ scrollParents.push(currentElement);
3383
+ }
3384
+ currentElement = currentElement.parentElement;
3385
+ }
3386
+ return scrollParents;
3338
3387
  }
3339
3388
  // 외부 클릭 감지
3340
3389
  handleMouseDown(e) {
@@ -3350,8 +3399,13 @@ const SdPortal = class {
3350
3399
  this.close.emit();
3351
3400
  }
3352
3401
  render() {
3353
- return h("slot", { key: 'ba2bf5df16f9bef0acef1ac8a08b090a23d02bc7' });
3402
+ return h("slot", { key: 'be76727404b0172e1049ae572acf4eacd4ea4a25' });
3354
3403
  }
3404
+ static get watchers() { return {
3405
+ "open": [{
3406
+ "handleOpenChange": 0
3407
+ }]
3408
+ }; }
3355
3409
  };
3356
3410
 
3357
3411
  const sdRadioCss = () => `sd-radio{display:inline-flex;width:fit-content;height:fit-content}sd-radio .sd-radio{cursor:pointer}sd-radio .sd-radio label{display:inline-flex;width:fit-content;align-items:center;gap:8px;cursor:pointer}sd-radio .sd-radio label input{display:inline-block;position:relative;appearance:none;margin:0;width:16px;height:16px;border:1px solid #888888;border-radius:50%;accent-color:#0075FF;background-color:white;cursor:pointer}sd-radio .sd-radio label input:checked{border-color:#0075FF;background-color:white}sd-radio .sd-radio label input:checked::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:10px;height:10px;border-radius:50%;background-color:#0075FF}sd-radio .sd-radio label input:disabled{border-color:#CCCCCC;background-color:#EEEEEE}sd-radio .sd-radio label input:disabled:checked::before{background-color:#CCCCCC}sd-radio .sd-radio label input:not(:disabled):hover{border-color:#0075FF;background-color:#D9EAFF}sd-radio .sd-radio--disabled{cursor:not-allowed !important}sd-radio .sd-radio--disabled label{cursor:not-allowed !important}sd-radio .sd-radio--disabled label input{cursor:not-allowed !important}`;
@@ -3711,10 +3765,10 @@ const SdSelectDropdown = class {
3711
3765
  this.isScrolled = scrollTop > 0;
3712
3766
  };
3713
3767
  render() {
3714
- return (h("div", { key: 'ff55e2e133114accc2641a0025bdcf551eda3511', class: {
3768
+ return (h("div", { key: 'd69eabae6b1769212fb4755413de8e54ede8a213', class: {
3715
3769
  'sd-select-dropdown': true,
3716
3770
  'sd-select-dropdown--ready': this.isDropdownReady,
3717
- }, style: this.dropdownSize, onScroll: this.handleDropdownScroll, ref: el => (this.dropdownRef = el) }, this.searchable && (h("sd-select-search-input", { key: 'bfcee14aa06a9a259dd8e67013ed1074c1f9c318', ref: el => (this.searchRef = el), isScrolled: this.isScrolled, searchText: this.searchText, onSdSearchInput: (event) => (this.searchText = event.detail || ''), onSdSearchFocus: () => (this.itemIndex = -1) })), this.filteredOptions.length > 0 ? (this.filteredOptions.map((option, index) => (h("slot", { name: `option-${option.value}` }, h("sd-select-option", { option: option, index: index, isSelected: this.isOptionSelected(option.value), isFocused: index === this.itemIndex, onOptionClick: ({ detail }) => this.optionClick.emit(detail), useCheckbox: this.useCheckbox }))))) : (h("slot", { name: "option-placeholder" }, h("div", { class: 'sd-select-option-placeholder' }, this.optionPlaceholder)))));
3771
+ }, style: this.dropdownSize, onScroll: this.handleDropdownScroll, ref: el => (this.dropdownRef = el) }, this.searchable && (h("sd-select-search-input", { key: '7e9937e5b38a038b4b7bb0cd09ef4a69a336c673', ref: el => (this.searchRef = el), isScrolled: this.isScrolled, searchText: this.searchText, onSdSearchInput: (event) => (this.searchText = event.detail || ''), onSdSearchFocus: () => (this.itemIndex = -1) })), this.filteredOptions.length > 0 ? (this.filteredOptions.map((option, index) => (h("slot", { name: `option-${option.value}` }, h("sd-select-option", { option: option, index: index, isSelected: this.isOptionSelected(option.value), isFocused: index === this.itemIndex, onOptionClick: ({ detail }) => this.optionClick.emit(detail), useCheckbox: this.useCheckbox }))))) : (h("slot", { name: "option-placeholder" }, h("div", { class: 'sd-select-option-placeholder' }, this.optionPlaceholder)))));
3718
3772
  }
3719
3773
  static get watchers() { return {
3720
3774
  "filteredOptions": [{
@@ -3761,7 +3815,7 @@ const SdSelectOption = class {
3761
3815
  }
3762
3816
  };
3763
3817
  render() {
3764
- return (h("div", { key: 'a4fcca24b0bdde4f4665585c6cede84bd3b64d59', class: {
3818
+ return (h("div", { key: 'b9844296973b6e85d3c3e3652671e89f470ec7a9', class: {
3765
3819
  'sd-select__option': true,
3766
3820
  'sd-select__option--selected': this.isSelected,
3767
3821
  'sd-select__option--disabled': !!this.option.disabled,
@@ -3807,17 +3861,17 @@ const SdSelectSearchInput = class {
3807
3861
  input?.focus({ preventScroll: true });
3808
3862
  }
3809
3863
  render() {
3810
- return (h("div", { key: 'b19a029ef82d876c984c1f827d7a0f29bb823f5d', class: {
3864
+ return (h("div", { key: '2d211645dc4041411e187f248a260a23b7c544f6', class: {
3811
3865
  'sd-select-search-input': true,
3812
3866
  'sd-select-search-input--scrolled': !!this.isScrolled,
3813
- }, onClick: event => event.stopPropagation() }, h("sd-input", { key: '8e27f40e1b507f0c5cb2d4bde48750cd0089a9da', ref: el => (this.searchRef = el), value: this.searchText, placeholder: "\uAC80\uC0C9", clearable: true, inputStyle: { 'padding-left': '8px' }, autofocus: true, onSdUpdate: event => {
3867
+ }, onClick: event => event.stopPropagation() }, h("sd-input", { key: 'c609af0ab36359c8ccaea5827821dbc509d13eac', ref: el => (this.searchRef = el), value: this.searchText, placeholder: "\uAC80\uC0C9", clearable: true, inputStyle: { 'padding-left': '8px' }, autofocus: true, onSdUpdate: event => {
3814
3868
  this.searchInput.emit(String(event?.detail));
3815
3869
  }, onSdFocus: () => {
3816
3870
  this.searchFocus.emit();
3817
3871
  }, onKeyDown: event => {
3818
3872
  if (event.code === 'Enter')
3819
3873
  event.stopPropagation();
3820
- } }, h("sd-icon", { key: '2b38a07cbc0bb0d7dd020ece45f18bdff4c262e5', name: "search", size: 16, color: "#737373", style: { marginRight: '4px' }, slot: "prefix" }))));
3874
+ } }, h("sd-icon", { key: '96a511b1f8625c883ec50d5e2985ff396d7b57c7', name: "search", size: 16, color: "#737373", style: { marginRight: '4px' }, slot: "prefix" }))));
3821
3875
  }
3822
3876
  };
3823
3877
  SdSelectSearchInput.style = sdSelectSearchInputCss();
@@ -4717,10 +4771,10 @@ const SdTextarea = class {
4717
4771
  }
4718
4772
  render() {
4719
4773
  const maxLengthCounter = this.getMaxLengthCounter();
4720
- return (h("div", { key: '888d11be57629e83e1215daddab63351a323672f', class: {
4774
+ return (h("div", { key: 'd538d3ab99c174f1fedc92c547fcba61d1097608', class: {
4721
4775
  'sd-textarea': true,
4722
4776
  [this.getTextareaStatus()]: true,
4723
- }, onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false) }, h("div", { key: '1f91a1e435b2dba1817ce181f91bdf3829142682', class: "sd-textarea__content" }, h("textarea", { key: 'd883f4cdfd56220cf4382893f94a469f7afd7ff2', name: this.name, ref: el => (this.nativeEl = el), class: `sd-textarea__native ${this.textareaClass}`, value: this.internalValue || '', placeholder: this.placeholder, disabled: this.disabled, autofocus: this.autoFocus, maxLength: this.maxLength, onInput: this.handleInput.bind(this), onFocus: event => this.handleFocus('focus', event), onBlur: event => this.handleFocus('blur', event) })), this.hasFooter() && (h("div", { key: 'e9350d8e49eb87b2caddfc24079ece0d59c79739', class: "sd-textarea__footer" }, this.helpText !== undefined && h("span", { key: 'cda9e2b8b0c15fbc7356597d4363d438688c8e4e', class: "sd-textarea__help-text" }, this.helpText), maxLengthCounter !== null && h("span", { key: '491e990142e07837169e84a3fcc3e80c00bc7153', class: "sd-textarea__counter" }, maxLengthCounter)))));
4777
+ }, onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false) }, h("div", { key: '1f4b6059d56e673568e4662f423bf6c76b781ad7', class: "sd-textarea__content" }, h("textarea", { key: '812814fdfc3044ba796830be47d5e5f93a423734', name: this.name, ref: el => (this.nativeEl = el), class: `sd-textarea__native ${this.textareaClass}`, value: this.internalValue || '', placeholder: this.placeholder, disabled: this.disabled, autofocus: this.autoFocus, maxLength: this.maxLength, onInput: this.handleInput.bind(this), onFocus: event => this.handleFocus('focus', event), onBlur: event => this.handleFocus('blur', event) })), this.hasFooter() && (h("div", { key: '2ea2c482ea874607411d1f4ecaabb99d095122ad', class: "sd-textarea__footer" }, this.helpText !== undefined && h("span", { key: 'b14afd0acf981bbbd3cef6bd7490f3a3fe9b443a', class: "sd-textarea__help-text" }, this.helpText), maxLengthCounter !== null && h("span", { key: '2aa68acd081a61d22010c799621b06fa49e7b8a6', class: "sd-textarea__counter" }, maxLengthCounter)))));
4724
4778
  }
4725
4779
  static get watchers() { return {
4726
4780
  "value": [{
@@ -9,7 +9,7 @@ const SdCard = class {
9
9
  bordered = false;
10
10
  sdClass = '';
11
11
  render() {
12
- return (h(Fragment, { key: '155504b50cb1c21fc1f847af8a9e8b685f7881ef' }, h("div", { key: 'c461e3e40da44586da5e02ad508bf59942a9e82a', class: `sd-card ${this.bordered ? 'sd-card--bordered' : ''} ${this.sdClass}` }, h("slot", { key: '0c0ee023155c08c565c3496c44699a900666b084' }))));
12
+ return (h(Fragment, { key: 'a4f5635186614df68acf04c502f804c9f0c77df5' }, h("div", { key: '99af2c33f69d069e108f7f122a6e7762ea918276', class: `sd-card ${this.bordered ? 'sd-card--bordered' : ''} ${this.sdClass}` }, h("slot", { key: '287c27708b9b80a9f04bfff87abdb65022762a6d' }))));
13
13
  }
14
14
  };
15
15
  SdCard.style = sdCardCss();
@@ -82,7 +82,7 @@ const SdDatePicker = class {
82
82
  this.isOpen = false;
83
83
  };
84
84
  render() {
85
- return (h("div", { key: 'bb17d32f08d998e599c90cf1a7a35b17e19d3dc4', class: { 'sd-date-picker': true, 'sd-date-picker--disabled': this.disabled } }, h("sd-input", { key: 'ae028d5999a8df40a83b0d77d2dd5c2e0d0d8eb0', ref: el => (this.inputEl = el), value: this.value, label: this.label, "inside-label": true, readonly: true, disabled: this.disabled, placeholder: this.placeholder, inputClass: "sd-date-picker__input", onClick: () => this.openMenu() }, h("sd-icon", { key: 'fbb954703d19161ab4507696a21278d5b4962b25', slot: "prefix", name: "date", size: "16", color: this.disabled ? 'grey_65' : 'grey_70', class: "date-icon", onClick: () => this.openMenu() })), this.isOpen && (h("sd-portal", { key: 'a335d5d317718e30be14fdb4aa1a63cb1347b929', open: this.isOpen, parentRef: this.inputEl, onSdClose: this.handleClose }, h("div", { key: '38deef7127db10c91a51b8d6cb017d85fce25888', class: "sd-date-picker__menu" }, h("div", { key: 'f2ef8eb33086103df65b434360ecc1aac2949bf9', class: "sd-date-picker__header" }, h("div", { key: '8b949551a157de1e2ded7f1de621ccacd136126e', class: "year-nav" }, h("button", { key: 'b1bbd712094885223c21f030c32914d14f3904c2', type: "button", name: "prev-year", title: "Previous Year", onClick: () => this.setCurrentYear(this.currentYear - 1) }, h("sd-icon", { key: '7bb6f5f216d02cde59eff87fcaebc32eccbaac25', name: "arrowLeft", size: "12", color: "#CCCCCC" })), h("span", { key: '645c12556fe1b9f1d1c8f7c4cfe73c3b65ad7431', class: "year-nav__current" }, this.currentYear), h("button", { key: 'f6cb58c23effd1aa0566aaacf41170482f03df51', type: "button", name: "next-year", title: "Next Year", onClick: () => this.setCurrentYear(this.currentYear + 1) }, h("sd-icon", { key: 'e92ef17b8d50e5115a159d2dd984e738a920f065', name: "arrowRight", size: "12", color: "#CCCCCC" }))), h("div", { key: '73018a9ca04929f4be017631e8e49a73cef71855', class: "month-nav" }, h("button", { key: '0983ca35486b8ad29c09740848b4288b602d0cd9', type: "button", name: "prev-month", title: "Previous ", onClick: () => this.handleUpdateMonth('prev') }, h("sd-icon", { key: '2c9257564786287f825c83391f3e05745c23cf9a', name: "arrowLeft", size: "12", color: "#CCCCCC" })), h("span", { key: '0b9e048eeea62c452671b74db468aa5587e8ddbf', class: "month-nav__current" }, this.currentMonth, "\uC6D4"), h("button", { key: '3ead15a341d5e361e7fb9b1cb2842e5a38b0e03c', type: "button", name: "next-month", title: "Next Month", onClick: () => this.handleUpdateMonth('next') }, h("sd-icon", { key: 'a3dbd8606dd51f72f1c315f2eea7ff089a95e6fa', name: "arrowRight", size: "12", color: "#CCCCCC" })))), h("div", { key: '6bbadc79157ae64bf492a965b78d014dcd968ea6', class: "sd-date-picker__days" }, ['일', '월', '화', '수', '목', '금', '토'].map(day => (h("div", { key: day, class: "day" }, day)))), h("div", { key: '972c00769b40eff8015b68e0a9479a6c7c6009db', class: "sd-date-picker__body" }, [
85
+ return (h("div", { key: '97baf5202e2702032b5d9035c5b07b3dafa658fa', class: { 'sd-date-picker': true, 'sd-date-picker--disabled': this.disabled } }, h("sd-input", { key: 'bba605148eec6f88829bcfff21cb1ac6efae815d', ref: el => (this.inputEl = el), value: this.value, label: this.label, "inside-label": true, readonly: true, disabled: this.disabled, placeholder: this.placeholder, inputClass: "sd-date-picker__input", onClick: () => this.openMenu() }, h("sd-icon", { key: '4c927154407efd9319b56327d83ee2012206b216', slot: "prefix", name: "date", size: "16", color: this.disabled ? 'grey_65' : 'grey_70', class: "date-icon", onClick: () => this.openMenu() })), this.isOpen && (h("sd-portal", { key: 'edc06ceeead0cab9ee3b2394097838e03aeb8703', open: this.isOpen, parentRef: this.inputEl, onSdClose: this.handleClose }, h("div", { key: 'cb71ba6e5517afa0e1e0477599449101b21ece65', class: "sd-date-picker__menu" }, h("div", { key: 'bdace5b8e99cbd4271ba76dace05f2af4d059d37', class: "sd-date-picker__header" }, h("div", { key: '3fc557c6119af299b813610e9b6ef6cd9104a302', class: "year-nav" }, h("button", { key: '82b7928c460b6bb3a163cf576977d4694fa63fdc', type: "button", name: "prev-year", title: "Previous Year", onClick: () => this.setCurrentYear(this.currentYear - 1) }, h("sd-icon", { key: 'b0eda3985494f99de52c85714b13ef45b90ef9db', name: "arrowLeft", size: "12", color: "#CCCCCC" })), h("span", { key: '24245489b718b3fb15603e9da628651b1af8b752', class: "year-nav__current" }, this.currentYear), h("button", { key: '458570d7e08af35d2c467398b89a9cb9c200141f', type: "button", name: "next-year", title: "Next Year", onClick: () => this.setCurrentYear(this.currentYear + 1) }, h("sd-icon", { key: '5f01f94d7499b0c79f2936249a295b92dfa1476d', name: "arrowRight", size: "12", color: "#CCCCCC" }))), h("div", { key: '5d1551a4149998430fd5c0262000c21e8de76a9b', class: "month-nav" }, h("button", { key: '0690296a789d67e5dc1b1ce7b882a261f1724a46', type: "button", name: "prev-month", title: "Previous ", onClick: () => this.handleUpdateMonth('prev') }, h("sd-icon", { key: '3ed6809573e28c9a40a4f26331669ce66245c076', name: "arrowLeft", size: "12", color: "#CCCCCC" })), h("span", { key: '5ae4ed6249269ba5a1d24ab986ec7c371fa356f4', class: "month-nav__current" }, this.currentMonth, "\uC6D4"), h("button", { key: '7bada1fba8abf6e483969cc5388cd333b03e8e19', type: "button", name: "next-month", title: "Next Month", onClick: () => this.handleUpdateMonth('next') }, h("sd-icon", { key: '559eec3f67ff8b47f601928d5bb9ca2064cb1c6a', name: "arrowRight", size: "12", color: "#CCCCCC" })))), h("div", { key: '5191a48970a3e9f044eaf4851e2e5d507763fe71', class: "sd-date-picker__days" }, ['일', '월', '화', '수', '목', '금', '토'].map(day => (h("div", { key: day, class: "day" }, day)))), h("div", { key: 'c124a70d9e1c3dd73c63c8ef3fd513a9cb6c24c8', class: "sd-date-picker__body" }, [
86
86
  ...this.calendar.prevMonthDays,
87
87
  ...this.calendar.days,
88
88
  ...this.calendar.afterMonthDays,