@sellmate/design-system 1.16.0 → 1.18.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 (298) hide show
  1. package/dist/cjs/component.listItem-Bnh0r_CA.js +53 -0
  2. package/dist/cjs/design-system.cjs.js +1 -1
  3. package/dist/cjs/index.cjs.js +11 -0
  4. package/dist/cjs/loader.cjs.js +1 -1
  5. package/dist/cjs/sd-button_2.cjs.entry.js +54 -0
  6. package/dist/cjs/sd-calendar_2.cjs.entry.js +2 -2
  7. package/dist/cjs/sd-chip-input.cjs.entry.js +236 -18
  8. package/dist/cjs/sd-circle-progress.cjs.entry.js +2 -2
  9. package/dist/cjs/sd-confirm-modal_2.cjs.entry.js +3 -3
  10. package/dist/cjs/sd-date-picker_7.cjs.entry.js +9 -9
  11. package/dist/cjs/sd-date-range-picker-calendar.cjs.entry.js +1 -1
  12. package/dist/cjs/sd-divider.cjs.entry.js +2 -2
  13. package/dist/cjs/sd-dropdown-button.cjs.entry.js +17 -7
  14. package/dist/cjs/sd-field_3.cjs.entry.js +8 -8
  15. package/dist/cjs/sd-ghost-button_2.cjs.entry.js +2 -2
  16. package/dist/cjs/sd-guide.cjs.entry.js +1 -1
  17. package/dist/cjs/sd-key-value-table.cjs.entry.js +45 -9
  18. package/dist/cjs/sd-linear-progress.cjs.entry.js +2 -2
  19. package/dist/cjs/sd-loading-container.cjs.entry.js +2 -2
  20. package/dist/cjs/sd-modal-container.cjs.entry.js +8 -1
  21. package/dist/cjs/sd-pagination_4.cjs.entry.js +10 -10
  22. package/dist/cjs/sd-popup.cjs.entry.js +2 -2
  23. package/dist/cjs/sd-portal.cjs.entry.js +16 -12
  24. package/dist/cjs/sd-select-list-item_2.cjs.entry.js +8 -7
  25. package/dist/cjs/{sd-select.config-DrJ4LNVz.js → sd-select.config-C9Ohe1QA.js} +25 -71
  26. package/dist/cjs/sd-select_3.cjs.entry.js +12 -11
  27. package/dist/cjs/sd-switch.cjs.entry.js +1 -1
  28. package/dist/cjs/sd-table.cjs.entry.js +8 -8
  29. package/dist/cjs/{sd-table.config-BjJW74Zx.js → sd-table.config-B7MuRLoR.js} +1 -1
  30. package/dist/cjs/sd-tabs.cjs.entry.js +1 -1
  31. package/dist/cjs/sd-td.cjs.entry.js +1 -1
  32. package/dist/cjs/sd-text-link.cjs.entry.js +4 -4
  33. package/dist/cjs/sd-toast-container.cjs.entry.js +1 -1
  34. package/dist/cjs/sd-toast.cjs.entry.js +2 -2
  35. package/dist/cjs/sd-toggle.cjs.entry.js +1 -1
  36. package/dist/cjs/{system-CdAyz3ej.js → system-MjrAugX-.js} +7 -0
  37. package/dist/collection/collection-manifest.json +1 -1
  38. package/dist/collection/components/assets/Bill.js +5 -0
  39. package/dist/collection/components/assets/Coupon.js +5 -0
  40. package/dist/collection/components/assets/Delete.js +5 -0
  41. package/dist/collection/components/assets/Dot.js +5 -0
  42. package/dist/collection/components/assets/Launcher.js +5 -0
  43. package/dist/collection/components/assets/Monitor.js +5 -0
  44. package/dist/collection/components/assets/Shield.js +5 -0
  45. package/dist/collection/components/assets/Sidebar.js +5 -0
  46. package/dist/collection/components/assets/Store.js +5 -0
  47. package/dist/collection/components/assets/index.js +18 -0
  48. package/dist/collection/components/sd-button/sd-button.js +2 -2
  49. package/dist/collection/components/sd-chip-input/sd-chip-input.config.js +29 -0
  50. package/dist/collection/components/sd-chip-input/sd-chip-input.css +50 -0
  51. package/dist/collection/components/sd-chip-input/sd-chip-input.js +321 -19
  52. package/dist/collection/components/sd-circle-progress/sd-circle-progress.js +1 -1
  53. package/dist/collection/components/sd-confirm-modal/sd-confirm-modal.js +2 -2
  54. package/dist/collection/components/sd-date-picker/sd-date-picker-trigger/sd-date-picker-trigger.js +2 -2
  55. package/dist/collection/components/sd-date-picker/sd-date-picker.js +2 -2
  56. package/dist/collection/components/sd-date-range-picker/sd-date-range-picker-calendar/sd-date-range-picker-calendar.js +1 -1
  57. package/dist/collection/components/sd-divider/sd-divider.js +1 -1
  58. package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.config.js +7 -0
  59. package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.js +10 -7
  60. package/dist/collection/components/sd-field/sd-field.js +5 -5
  61. package/dist/collection/components/sd-floating-portal/sd-floating-portal.js +1 -1
  62. package/dist/collection/components/sd-ghost-button/sd-ghost-button.js +1 -1
  63. package/dist/collection/components/sd-icon/sd-icon.js +1 -1
  64. package/dist/collection/components/sd-input/sd-input.js +2 -2
  65. package/dist/collection/components/sd-key-value-table/sd-key-value-table.config.js +2 -3
  66. package/dist/collection/components/sd-key-value-table/sd-key-value-table.css +2 -2
  67. package/dist/collection/components/sd-key-value-table/sd-key-value-table.js +41 -4
  68. package/dist/collection/components/sd-linear-progress/sd-linear-progress.js +1 -1
  69. package/dist/collection/components/sd-loading-container/sd-loading-container.js +2 -2
  70. package/dist/collection/components/sd-loading-modal/sd-loading-modal.js +1 -1
  71. package/dist/collection/components/sd-modal-container/sd-modal-container.js +8 -1
  72. package/dist/collection/components/sd-number-input/sd-number-input.js +4 -4
  73. package/dist/collection/components/sd-pagination/sd-pagination.js +3 -3
  74. package/dist/collection/components/sd-popover/sd-popover.js +2 -2
  75. package/dist/collection/components/sd-popup/sd-popup.js +1 -1
  76. package/dist/collection/components/sd-portal/sd-portal.js +16 -12
  77. package/dist/collection/components/sd-select/sd-select-list-item/sd-select-list-item.js +2 -2
  78. package/dist/collection/components/sd-select/sd-select-list-item-search/sd-select-list-item-search.js +4 -4
  79. package/dist/collection/components/sd-select/sd-select-listbox/sd-select-listbox.js +4 -4
  80. package/dist/collection/components/sd-select/sd-select-trigger/sd-select-trigger.js +2 -2
  81. package/dist/collection/components/sd-select/sd-select.config.js +2 -2
  82. package/dist/collection/components/sd-select/sd-select.js +4 -4
  83. package/dist/collection/components/sd-switch/sd-switch.js +1 -1
  84. package/dist/collection/components/sd-table/sd-table.js +6 -6
  85. package/dist/collection/components/sd-table/sd-tbody/sd-tbody.js +2 -2
  86. package/dist/collection/components/sd-table/sd-td/sd-td.js +1 -1
  87. package/dist/collection/components/sd-table/sd-thead/sd-thead.js +3 -3
  88. package/dist/collection/components/sd-tabs/sd-tabs.js +1 -1
  89. package/dist/collection/components/sd-tag/sd-tag.js +3 -3
  90. package/dist/collection/components/sd-text-link/sd-text-link.js +4 -4
  91. package/dist/collection/components/sd-textarea/sd-textarea.js +1 -1
  92. package/dist/collection/components/sd-toast/sd-toast.js +3 -3
  93. package/dist/collection/components/sd-toast-container/sd-toast-container.js +1 -1
  94. package/dist/collection/components/sd-toggle/sd-toggle.js +1 -1
  95. package/dist/collection/components/sd-tooltip/sd-tooltip.js +4 -4
  96. package/dist/collection/utils/modal.js +11 -0
  97. package/dist/components/index.js +1 -1
  98. package/dist/components/{p-DfZ8X4ly.js → p-4HPAPKne.js} +1 -1
  99. package/dist/components/{p-B57sOZvR.js → p-79DExV92.js} +1 -1
  100. package/dist/components/{p-RE577yb-.js → p-AI4YlQmL.js} +1 -1
  101. package/dist/components/{p-B4pLCd0_.js → p-B-4ulKJj.js} +1 -1
  102. package/dist/components/{p-G_N9xEDL.js → p-B3SKaQId.js} +1 -1
  103. package/dist/components/p-BD8OoYud.js +1 -0
  104. package/dist/components/p-BJfiMC9H.js +1 -0
  105. package/dist/components/{p-DknZgTo9.js → p-BLNc_TL-.js} +1 -1
  106. package/dist/components/{p-CLEAGFjW.js → p-BMIgVp9-.js} +1 -1
  107. package/dist/components/{p-vS0t7bWk.js → p-BX5uKVOt.js} +1 -1
  108. package/dist/components/p-BYTrIk62.js +1 -0
  109. package/dist/components/{p-_P21dOPl.js → p-B_5uwji5.js} +1 -1
  110. package/dist/components/{p-DUwrMHYa.js → p-Bzo51vnP.js} +1 -1
  111. package/dist/components/{p-DtG23tkr.js → p-C0tkFuhj.js} +1 -1
  112. package/dist/components/{p-YlaidN9T.js → p-C3wv8gVC.js} +1 -1
  113. package/dist/components/{p-YKESuy-p.js → p-CH6cVc2a.js} +1 -1
  114. package/dist/components/{p-Bfrg9lvO.js → p-CQWZv8vY.js} +1 -1
  115. package/dist/components/{p-BsQf9d7Q.js → p-CXRFEcE_.js} +1 -1
  116. package/dist/components/{p-B-61rIur.js → p-C_r3z9VA.js} +1 -1
  117. package/dist/components/{p-BvAJ_toQ.js → p-Cl5io5TH.js} +1 -1
  118. package/dist/components/p-ClKABgST.js +1 -0
  119. package/dist/components/{p-DGyTYauz.js → p-Cmg10jpN.js} +1 -1
  120. package/dist/components/{p-DeXO3mpJ.js → p-CtWfOIxb.js} +1 -1
  121. package/dist/components/{p-CIZpVJBx.js → p-CzCu_NDl.js} +1 -1
  122. package/dist/components/{p-FGvi8J2D.js → p-DAOeioSV.js} +1 -1
  123. package/dist/components/{p-iGvyLmbb.js → p-DDR0VcRU.js} +1 -1
  124. package/dist/components/{p-CnfnK5aj.js → p-DMS9mQsg.js} +1 -1
  125. package/dist/components/{p-B73U-Zw2.js → p-DTFXzlvq.js} +1 -1
  126. package/dist/components/{p-CHjF0mwj.js → p-DbLQoVx6.js} +1 -1
  127. package/dist/components/p-Dr5Q2ZKB.js +1 -0
  128. package/dist/components/{p-B4UxhQes.js → p-DrSHJYop.js} +1 -1
  129. package/dist/components/p-DvvGi4J_.js +1 -0
  130. package/dist/components/{p-BrzBnO1L.js → p-DyVh4pNL.js} +1 -1
  131. package/dist/components/{p-C_6HUUGg.js → p-Ng3JMPxb.js} +1 -1
  132. package/dist/components/p-U8VaRj9c.js +1 -0
  133. package/dist/components/{p-BY1ItC8N.js → p-hzCGj0On.js} +1 -1
  134. package/dist/components/{p-BMVHvEDw.js → p-qJeUUOyB.js} +1 -1
  135. package/dist/components/sd-action-modal.js +1 -1
  136. package/dist/components/sd-barcode-input.js +1 -1
  137. package/dist/components/sd-button.js +1 -1
  138. package/dist/components/sd-calendar.js +1 -1
  139. package/dist/components/sd-callout.js +1 -1
  140. package/dist/components/sd-checkbox.js +1 -1
  141. package/dist/components/sd-chip-input.js +1 -1
  142. package/dist/components/sd-chip.js +1 -1
  143. package/dist/components/sd-circle-progress.js +1 -1
  144. package/dist/components/sd-confirm-modal.js +1 -1
  145. package/dist/components/sd-date-picker-trigger.js +1 -1
  146. package/dist/components/sd-date-picker.js +1 -1
  147. package/dist/components/sd-date-range-picker-calendar.js +1 -1
  148. package/dist/components/sd-date-range-picker.js +1 -1
  149. package/dist/components/sd-divider.js +1 -1
  150. package/dist/components/sd-dropdown-button.js +1 -1
  151. package/dist/components/sd-field.js +1 -1
  152. package/dist/components/sd-file-picker.js +1 -1
  153. package/dist/components/sd-floating-portal.js +1 -1
  154. package/dist/components/sd-ghost-button.js +1 -1
  155. package/dist/components/sd-guide.js +1 -1
  156. package/dist/components/sd-icon.js +1 -1
  157. package/dist/components/sd-input.js +1 -1
  158. package/dist/components/sd-key-value-table.js +1 -1
  159. package/dist/components/sd-linear-progress.js +1 -1
  160. package/dist/components/sd-loading-container.js +1 -1
  161. package/dist/components/sd-loading-modal.js +1 -1
  162. package/dist/components/sd-modal-container.js +1 -1
  163. package/dist/components/sd-number-input.js +1 -1
  164. package/dist/components/sd-pagination.js +1 -1
  165. package/dist/components/sd-popover.js +1 -1
  166. package/dist/components/sd-popup.js +1 -1
  167. package/dist/components/sd-portal.js +1 -1
  168. package/dist/components/sd-select-list-item-search.js +1 -1
  169. package/dist/components/sd-select-list-item.js +1 -1
  170. package/dist/components/sd-select-listbox.js +1 -1
  171. package/dist/components/sd-select-trigger.js +1 -1
  172. package/dist/components/sd-select.js +1 -1
  173. package/dist/components/sd-switch.js +1 -1
  174. package/dist/components/sd-table.js +1 -1
  175. package/dist/components/sd-tabs.js +1 -1
  176. package/dist/components/sd-tag.js +1 -1
  177. package/dist/components/sd-tbody.js +1 -1
  178. package/dist/components/sd-td.js +1 -1
  179. package/dist/components/sd-text-link.js +1 -1
  180. package/dist/components/sd-textarea.js +1 -1
  181. package/dist/components/sd-thead.js +1 -1
  182. package/dist/components/sd-toast-container.js +1 -1
  183. package/dist/components/sd-toast.js +1 -1
  184. package/dist/components/sd-toggle.js +1 -1
  185. package/dist/components/sd-tooltip.js +1 -1
  186. package/dist/components/sd-tr.js +1 -1
  187. package/dist/design-system/design-system.esm.js +1 -1
  188. package/dist/design-system/index.esm.js +1 -1
  189. package/dist/design-system/{p-13b0db59.entry.js → p-0a772d43.entry.js} +1 -1
  190. package/dist/design-system/p-12306783.entry.js +1 -0
  191. package/dist/design-system/{p-b457611c.entry.js → p-1602a5fa.entry.js} +1 -1
  192. package/dist/design-system/p-1f3c1cca.entry.js +1 -0
  193. package/dist/design-system/{p-3045ffe1.entry.js → p-22484d65.entry.js} +1 -1
  194. package/dist/design-system/p-3caf2c5b.entry.js +1 -0
  195. package/dist/design-system/p-3f7349ae.entry.js +1 -0
  196. package/dist/design-system/{p-b8ea656d.entry.js → p-43529bba.entry.js} +1 -1
  197. package/dist/design-system/p-46da89f2.entry.js +1 -0
  198. package/dist/design-system/{p-a1f756ab.entry.js → p-4e1d76b8.entry.js} +1 -1
  199. package/dist/design-system/{p-03bcd782.entry.js → p-683c3b91.entry.js} +1 -1
  200. package/dist/design-system/{p-99ffe505.entry.js → p-6ce68bf2.entry.js} +1 -1
  201. package/dist/design-system/{p-a5131a43.entry.js → p-80bde621.entry.js} +1 -1
  202. package/dist/design-system/{p-22883fe1.entry.js → p-81aa23d1.entry.js} +1 -1
  203. package/dist/design-system/{p-c78b8822.entry.js → p-827f067b.entry.js} +1 -1
  204. package/dist/design-system/p-8a025f91.entry.js +1 -0
  205. package/dist/design-system/{p-3e62a3ea.entry.js → p-8a84a4fe.entry.js} +1 -1
  206. package/dist/design-system/{p-d2833150.entry.js → p-8f90620b.entry.js} +1 -1
  207. package/dist/design-system/{p-a0775a0c.entry.js → p-9124a1af.entry.js} +1 -1
  208. package/dist/design-system/p-BJfiMC9H.js +1 -0
  209. package/dist/design-system/p-CAFz8W8_.js +1 -0
  210. package/dist/design-system/{p-DGyTYauz.js → p-Cmg10jpN.js} +1 -1
  211. package/dist/design-system/p-U8VaRj9c.js +1 -0
  212. package/dist/design-system/{p-c6307ba4.entry.js → p-a263af1b.entry.js} +1 -1
  213. package/dist/design-system/p-aa312937.entry.js +1 -0
  214. package/dist/design-system/p-b4b20a86.entry.js +1 -0
  215. package/dist/design-system/{p-7eb31041.entry.js → p-bbbc4b27.entry.js} +1 -1
  216. package/dist/design-system/p-bcd7d358.entry.js +1 -0
  217. package/dist/design-system/{p-14340e46.entry.js → p-cc5f5bff.entry.js} +1 -1
  218. package/dist/design-system/{p-8140a225.entry.js → p-d5032f31.entry.js} +1 -1
  219. package/dist/design-system/{p-6d765b25.entry.js → p-e93dda25.entry.js} +1 -1
  220. package/dist/design-system/{p-c4e1641b.entry.js → p-f5190934.entry.js} +1 -1
  221. package/dist/design-system/p-ff939fbd.entry.js +1 -0
  222. package/dist/esm/component.listItem-U8VaRj9c.js +50 -0
  223. package/dist/esm/design-system.js +1 -1
  224. package/dist/esm/index.js +11 -0
  225. package/dist/esm/loader.js +1 -1
  226. package/dist/esm/sd-button_2.entry.js +54 -0
  227. package/dist/esm/sd-calendar_2.entry.js +2 -2
  228. package/dist/esm/sd-chip-input.entry.js +236 -18
  229. package/dist/esm/sd-circle-progress.entry.js +2 -2
  230. package/dist/esm/sd-confirm-modal_2.entry.js +3 -3
  231. package/dist/esm/sd-date-picker_7.entry.js +9 -9
  232. package/dist/esm/sd-date-range-picker-calendar.entry.js +1 -1
  233. package/dist/esm/sd-divider.entry.js +2 -2
  234. package/dist/esm/sd-dropdown-button.entry.js +17 -7
  235. package/dist/esm/sd-field_3.entry.js +8 -8
  236. package/dist/esm/sd-ghost-button_2.entry.js +2 -2
  237. package/dist/esm/sd-guide.entry.js +1 -1
  238. package/dist/esm/sd-key-value-table.entry.js +45 -9
  239. package/dist/esm/sd-linear-progress.entry.js +2 -2
  240. package/dist/esm/sd-loading-container.entry.js +2 -2
  241. package/dist/esm/sd-modal-container.entry.js +8 -1
  242. package/dist/esm/sd-pagination_4.entry.js +10 -10
  243. package/dist/esm/sd-popup.entry.js +2 -2
  244. package/dist/esm/sd-portal.entry.js +16 -12
  245. package/dist/esm/sd-select-list-item_2.entry.js +8 -7
  246. package/dist/esm/{sd-select.config-DtrsLG0Z.js → sd-select.config-D6ktrl7E.js} +4 -50
  247. package/dist/esm/sd-select_3.entry.js +12 -11
  248. package/dist/esm/sd-switch.entry.js +1 -1
  249. package/dist/esm/{sd-table.config-D9meRqTx.js → sd-table.config-B3wuA5wX.js} +1 -1
  250. package/dist/esm/sd-table.entry.js +8 -8
  251. package/dist/esm/sd-tabs.entry.js +1 -1
  252. package/dist/esm/sd-td.entry.js +1 -1
  253. package/dist/esm/sd-text-link.entry.js +4 -4
  254. package/dist/esm/sd-toast-container.entry.js +1 -1
  255. package/dist/esm/sd-toast.entry.js +2 -2
  256. package/dist/esm/sd-toggle.entry.js +1 -1
  257. package/dist/esm/{system-j2khhcHY.js → system-BJfiMC9H.js} +7 -0
  258. package/dist/types/components/assets/Bill.d.ts +1 -0
  259. package/dist/types/components/assets/Coupon.d.ts +1 -0
  260. package/dist/types/components/assets/Delete.d.ts +1 -0
  261. package/dist/types/components/assets/Dot.d.ts +1 -0
  262. package/dist/types/components/assets/Launcher.d.ts +1 -0
  263. package/dist/types/components/assets/Monitor.d.ts +1 -0
  264. package/dist/types/components/assets/Shield.d.ts +1 -0
  265. package/dist/types/components/assets/Sidebar.d.ts +1 -0
  266. package/dist/types/components/assets/Store.d.ts +1 -0
  267. package/dist/types/components/assets/index.d.ts +9 -0
  268. package/dist/types/components/sd-chip-input/sd-chip-input.config.d.ts +24 -0
  269. package/dist/types/components/sd-chip-input/sd-chip-input.d.ts +15 -0
  270. package/dist/types/components/sd-dropdown-button/sd-dropdown-button.config.d.ts +4 -0
  271. package/dist/types/components/sd-dropdown-button/sd-dropdown-button.d.ts +1 -0
  272. package/dist/types/components/sd-key-value-table/sd-key-value-table.config.d.ts +3 -2
  273. package/dist/types/components/sd-key-value-table/sd-key-value-table.d.ts +5 -0
  274. package/dist/types/components/sd-modal-container/sd-modal-container.config.d.ts +2 -0
  275. package/dist/types/components/sd-portal/sd-portal.d.ts +1 -0
  276. package/dist/types/components.d.ts +39 -0
  277. package/dist/types/utils/modal.d.ts +6 -0
  278. package/hydrate/index.js +547 -204
  279. package/hydrate/index.mjs +547 -204
  280. package/package.json +1 -1
  281. package/dist/components/p-6oSCGUOo.js +0 -1
  282. package/dist/components/p-BWoC-hMr.js +0 -1
  283. package/dist/components/p-C5wgHjtx.js +0 -1
  284. package/dist/components/p-Cftyepf_.js +0 -1
  285. package/dist/components/p-IgBxAXyL.js +0 -1
  286. package/dist/components/p-j2khhcHY.js +0 -1
  287. package/dist/design-system/p-0c5192b8.entry.js +0 -1
  288. package/dist/design-system/p-1652ae55.entry.js +0 -1
  289. package/dist/design-system/p-21fa7f85.entry.js +0 -1
  290. package/dist/design-system/p-2753c6c9.entry.js +0 -1
  291. package/dist/design-system/p-5c6dd20b.entry.js +0 -1
  292. package/dist/design-system/p-71739336.entry.js +0 -1
  293. package/dist/design-system/p-DtrsLG0Z.js +0 -1
  294. package/dist/design-system/p-b22cb811.entry.js +0 -1
  295. package/dist/design-system/p-b576bc21.entry.js +0 -1
  296. package/dist/design-system/p-c1f71355.entry.js +0 -1
  297. package/dist/design-system/p-da90b448.entry.js +0 -1
  298. package/dist/design-system/p-j2khhcHY.js +0 -1
package/hydrate/index.mjs CHANGED
@@ -5711,6 +5711,11 @@ const Bell = (props) => {
5711
5711
  return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M14.8 18.8086C14.9105 18.8086 15.0008 18.8985 14.9944 19.0088C14.8972 20.6781 13.5938 22 12.0002 22C10.4066 22 9.10324 20.6781 9.00609 19.0088C8.99968 18.8985 9.08997 18.8086 9.20043 18.8086H14.8Z", fill: "currentColor" }), hAsync("path", { d: "M12.0002 2C12.5525 2.00002 13.0002 2.44772 13.0002 3V4.20898C15.9941 4.69573 18.2815 7.3314 18.2815 10.5107V14.1582C18.2815 15.0811 19.1207 15.8005 19.7629 16.4531C20.4046 17.1057 19.6388 17.957 18.7307 17.957H5.26976C4.36161 17.957 3.59581 17.1057 4.23754 16.4531C4.87979 15.8005 5.71898 15.0811 5.71898 14.1582V10.5107C5.71898 7.33139 8.00632 4.69572 11.0002 4.20898V3C11.0002 2.44772 11.4479 2 12.0002 2Z", fill: "currentColor" })));
5712
5712
  };
5713
5713
 
5714
+ const Bill = (props) => {
5715
+ const { size = 24, ...rest } = props;
5716
+ return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M16.2891 8.7998C16.4208 8.40733 16.8457 8.19563 17.2383 8.32715C17.6309 8.45871 17.8423 8.88369 17.7109 9.27637L16.8818 11.75H18C18.4142 11.75 18.75 12.0858 18.75 12.5C18.75 12.9142 18.4142 13.25 18 13.25H16.3799L15.6035 15.5664C15.2492 16.6239 13.7487 16.6085 13.416 15.5439L12.6992 13.25H11.3008L10.584 15.5439C10.2513 16.6085 8.7508 16.6239 8.39648 15.5664L7.62012 13.25H6C5.58579 13.25 5.25 12.9142 5.25 12.5C5.25 12.0858 5.58579 11.75 6 11.75H7.11816L6.28906 9.27637C6.15765 8.88369 6.36905 8.45871 6.76172 8.32715C7.15433 8.19563 7.57919 8.40733 7.71094 8.7998L8.69922 11.75H10.1982L10.9023 9.49805L10.9375 9.40039C11.3201 8.45471 12.6799 8.45472 13.0625 9.40039L13.0977 9.49805L13.8018 11.75H15.3008L16.2891 8.7998ZM9.47461 14.0645L9.72949 13.25H9.20215L9.47461 14.0645ZM14.5244 14.0645L14.7979 13.25H14.2705L14.5244 14.0645ZM11.7695 11.75H12.2305L12 11.0137L11.7695 11.75Z", fill: "currentColor" }), hAsync("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M19.5 4.25C20.7426 4.25 21.75 5.25736 21.75 6.5V17.5C21.75 18.7426 20.7426 19.75 19.5 19.75H4.5C3.25736 19.75 2.25 18.7426 2.25 17.5L2.25 6.5C2.25 5.25736 3.25736 4.25 4.5 4.25H19.5ZM4.5 5.75C4.08579 5.75 3.75 6.08579 3.75 6.5V17.5C3.75 17.9142 4.08579 18.25 4.5 18.25H19.5C19.9142 18.25 20.25 17.9142 20.25 17.5V6.5C20.25 6.08579 19.9142 5.75 19.5 5.75H4.5Z", fill: "currentColor" })));
5717
+ };
5718
+
5714
5719
  const Board = (props) => {
5715
5720
  const { size = 24, ...rest } = props;
5716
5721
  return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M15 14.25C15.4142 14.25 15.75 14.5858 15.75 15C15.75 15.4142 15.4142 15.75 15 15.75H9C8.58579 15.75 8.25 15.4142 8.25 15C8.25 14.5858 8.58579 14.25 9 14.25H15Z", fill: "currentColor" }), hAsync("path", { d: "M15 10.25C15.4142 10.25 15.75 10.5858 15.75 11C15.75 11.4142 15.4142 11.75 15 11.75H9C8.58579 11.75 8.25 11.4142 8.25 11C8.25 10.5858 8.58579 10.25 9 10.25H15Z", fill: "currentColor" }), hAsync("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M13.75 2.0498C14.5699 2.0498 15.2733 2.54394 15.582 3.25H18.2002C19.1665 3.25021 19.9502 4.03363 19.9502 5V20.2002C19.9501 21.1665 19.1664 21.95 18.2002 21.9502H5.7998C4.83346 21.9501 4.04991 21.1665 4.0498 20.2002V5C4.0498 4.03356 4.83339 3.2501 5.7998 3.25H8.41797C8.72672 2.54394 9.43009 2.0498 10.25 2.0498H13.75ZM5.7998 4.75C5.66182 4.7501 5.5498 4.86199 5.5498 5V20.2002C5.54991 20.3381 5.66188 20.4501 5.7998 20.4502H18.2002C18.338 20.45 18.4501 20.338 18.4502 20.2002V5C18.4502 4.86206 18.3381 4.75021 18.2002 4.75H15.6211C15.3371 5.50881 14.6079 6.0498 13.75 6.0498H10.25C9.39207 6.0498 8.66292 5.50881 8.37891 4.75H5.7998ZM10.25 3.5498C9.97392 3.5498 9.7501 3.77375 9.75 4.0498C9.75 4.32595 9.97386 4.5498 10.25 4.5498H13.75C14.0261 4.5498 14.25 4.32595 14.25 4.0498C14.2499 3.77375 14.0261 3.5498 13.75 3.5498H10.25Z", fill: "currentColor" })));
@@ -5831,6 +5836,11 @@ const Copy = (props) => {
5831
5836
  return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M20 7.54395C20.9664 7.54404 21.7499 8.32759 21.75 9.29395V20C21.7499 20.9664 20.9664 21.7499 20 21.75H9.29395C8.32756 21.7499 7.54404 20.9664 7.54395 20V9.29395C7.54404 8.32757 8.32757 7.54401 9.29395 7.54395H20ZM9.29395 9.04395C9.15599 9.04401 9.04404 9.156 9.04395 9.29395V20C9.04404 20.138 9.15599 20.2499 9.29395 20.25H20C20.1379 20.2499 20.2499 20.1379 20.25 20V9.29395C20.2499 9.15602 20.1379 9.04404 20 9.04395H9.29395Z", fill: "currentColor" }), hAsync("path", { d: "M14.7061 2.25C15.6725 2.25009 16.4561 3.03356 16.4561 4V6C16.4561 6.41416 16.1202 6.74991 15.7061 6.75C15.2918 6.75 14.9561 6.41421 14.9561 6V4C14.9561 3.86199 14.844 3.75009 14.7061 3.75H4C3.86193 3.75 3.75 3.86193 3.75 4V14.7061C3.75009 14.844 3.86199 14.9561 4 14.9561H6C6.41421 14.9561 6.75 15.2918 6.75 15.7061C6.74991 16.1202 6.41416 16.4561 6 16.4561H4C3.03356 16.4561 2.25009 15.6725 2.25 14.7061V4C2.25 3.0335 3.0335 2.25 4 2.25H14.7061Z", fill: "currentColor" })));
5832
5837
  };
5833
5838
 
5839
+ const Coupon = (props) => {
5840
+ const { size = 24, ...rest } = props;
5841
+ return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M15 13.5C15.8284 13.5 16.5 14.1716 16.5 15C16.5 15.8284 15.8284 16.5 15 16.5C14.1716 16.5 13.5 15.8284 13.5 15C13.5 14.1716 14.1716 13.5 15 13.5Z", fill: "currentColor" }), hAsync("path", { d: "M14.9092 7.96973C15.2021 7.67705 15.6769 7.67691 15.9697 7.96973C16.2625 8.26255 16.2624 8.73738 15.9697 9.03027L9.03027 15.9697C8.73739 16.2625 8.26261 16.2625 7.96973 15.9697C7.67685 15.6769 7.67689 15.2021 7.96973 14.9092L14.9092 7.96973Z", fill: "currentColor" }), hAsync("path", { d: "M9 7.5C9.82843 7.5 10.5 8.17157 10.5 9C10.5 9.82843 9.82843 10.5 9 10.5C8.17157 10.5 7.5 9.82843 7.5 9C7.5 8.17157 8.17157 7.5 9 7.5Z", fill: "currentColor" }), hAsync("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M19.5 4.25C20.7426 4.25 21.75 5.25736 21.75 6.5V9C21.75 9.5042 21.5307 9.91547 21.2715 10.2178C21.0155 10.5162 20.6946 10.7418 20.4014 10.9023C20.0117 11.1156 19.75 11.5278 19.75 12C19.75 12.4722 20.0117 12.8844 20.4014 13.0977C20.6946 13.2582 21.0155 13.4838 21.2715 13.7822C21.5307 14.0845 21.75 14.4958 21.75 15V17.5C21.75 18.7426 20.7426 19.75 19.5 19.75H4.5C3.25736 19.75 2.25 18.7426 2.25 17.5V15C2.25 14.4958 2.46932 14.0845 2.72852 13.7822C2.98448 13.4838 3.30543 13.2582 3.59863 13.0977C3.98828 12.8844 4.25 12.4722 4.25 12C4.25 11.5278 3.98828 11.1156 3.59863 10.9023C3.30543 10.7418 2.98448 10.5162 2.72852 10.2178C2.46932 9.91547 2.25 9.5042 2.25 9L2.25 6.5C2.25 5.25736 3.25736 4.25 4.5 4.25H19.5ZM4.5 5.75C4.08579 5.75 3.75 6.08579 3.75 6.5V9C3.75 9.04794 3.76826 9.12579 3.86719 9.24121C3.96955 9.36057 4.12814 9.48225 4.31934 9.58691C5.17022 10.0528 5.75 10.9581 5.75 12C5.75 13.0419 5.17022 13.9472 4.31934 14.4131C4.12814 14.5178 3.96955 14.6394 3.86719 14.7588C3.76826 14.8742 3.75 14.9521 3.75 15V17.5C3.75 17.9142 4.08579 18.25 4.5 18.25H19.5C19.9142 18.25 20.25 17.9142 20.25 17.5V15C20.25 14.9521 20.2317 14.8742 20.1328 14.7588C20.0304 14.6394 19.8719 14.5178 19.6807 14.4131C18.8298 13.9472 18.25 13.0419 18.25 12C18.25 10.9581 18.8298 10.0528 19.6807 9.58691C19.8719 9.48225 20.0304 9.36057 20.1328 9.24121C20.2317 9.12579 20.25 9.04794 20.25 9V6.5C20.25 6.08579 19.9142 5.75 19.5 5.75H4.5Z", fill: "currentColor" })));
5842
+ };
5843
+
5834
5844
  const Dashboard = (props) => {
5835
5845
  const { size = 24, ...rest } = props;
5836
5846
  return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M11 13.25C11 13.5261 10.7761 13.75 10.5 13.75L6.5 13.75C6.22386 13.75 6 13.5261 6 13.25L6 7.25C6 6.97386 6.22386 6.75 6.5 6.75L10.5 6.75C10.7761 6.75 11 6.97386 11 7.25L11 13.25Z", fill: "currentColor" }), hAsync("path", { d: "M18 9.25C18 9.52614 17.7761 9.75 17.5 9.75L13.5 9.75C13.2239 9.75 13 9.52614 13 9.25L13 7.25C13 6.97386 13.2239 6.75 13.5 6.75L17.5 6.75C17.7761 6.75 18 6.97386 18 7.25L18 9.25Z", fill: "currentColor" }), hAsync("path", { d: "M18 13.25C18 13.5261 17.7761 13.75 17.5 13.75L13.5 13.75C13.2239 13.75 13 13.5261 13 13.25L13 11.25C13 10.9739 13.2239 10.75 13.5 10.75L17.5 10.75C17.7761 10.75 18 10.9739 18 11.25L18 13.25Z", fill: "currentColor" }), hAsync("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M21.9502 14.75C21.9502 15.9925 20.9427 16.9998 19.7002 17L12.75 17L12.75 19L15 19C15.4142 19 15.75 19.3358 15.75 19.75C15.75 20.1642 15.4142 20.5 15 20.5L9 20.5C8.58579 20.5 8.25 20.1642 8.25 19.75C8.25 19.3358 8.58579 19 9 19L11.25 19L11.25 17L4.29981 17C3.05725 16.9999 2.04981 15.9926 2.04981 14.75L2.04981 5.75C2.04981 4.50742 3.05725 3.5001 4.29981 3.5L19.7002 3.5C20.9427 3.50021 21.9502 4.50749 21.9502 5.75L21.9502 14.75ZM20.4502 5.75C20.4502 5.33592 20.1142 5.00021 19.7002 5L4.29981 5C3.88568 5.0001 3.54981 5.33585 3.54981 5.75L3.54981 14.75C3.54981 15.1642 3.88568 15.4999 4.29981 15.5L19.7002 15.5C20.1142 15.4998 20.4502 15.1641 20.4502 14.75L20.4502 5.75Z", fill: "currentColor" })));
@@ -5841,6 +5851,16 @@ const DateIcon = (props) => {
5841
5851
  return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M18 14C18.5522 14.0001 19 14.4478 19 15V18C18.9999 18.5521 18.5521 18.9999 18 19H15C14.4478 19 14.0001 18.5522 14 18V15C14 14.4477 14.4477 14 15 14H18Z", fill: "currentColor" }), hAsync("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M17 2.0498C17.4141 2.0499 17.75 2.38565 17.75 2.7998V4.25H20.2002C21.1665 4.25021 21.9502 5.03363 21.9502 6V20.2002C21.95 21.1664 21.1664 21.95 20.2002 21.9502H3.7998C2.83344 21.9502 2.05002 21.1665 2.0498 20.2002V6C2.0498 5.0335 2.83331 4.25 3.7998 4.25H6.25V2.7998C6.25 2.38559 6.58579 2.0498 7 2.0498C7.41413 2.0499 7.75 2.38565 7.75 2.7998V4.25H16.25V2.7998C16.25 2.38559 16.5858 2.0498 17 2.0498ZM3.5498 20.2002C3.55002 20.3381 3.66187 20.4502 3.7998 20.4502H20.2002C20.338 20.45 20.45 20.338 20.4502 20.2002V9H3.5498V20.2002Z", fill: "currentColor" })));
5842
5852
  };
5843
5853
 
5854
+ const Delete = (props) => {
5855
+ const { size = 24, ...rest } = props;
5856
+ return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M8.35254 10.7646C8.75858 10.6834 9.15395 10.9466 9.23535 11.3525L10.2354 16.3525C10.3166 16.7586 10.0534 17.1539 9.64746 17.2354C9.24142 17.3166 8.84605 17.0534 8.76465 16.6475L7.76465 11.6475C7.68344 11.2414 7.94658 10.8461 8.35254 10.7646Z", fill: "currentColor" }), hAsync("path", { d: "M12 10.75C12.4142 10.75 12.75 11.0858 12.75 11.5V16.5C12.75 16.9142 12.4142 17.25 12 17.25C11.5858 17.25 11.25 16.9142 11.25 16.5V11.5C11.25 11.0858 11.5858 10.75 12 10.75Z", fill: "currentColor" }), hAsync("path", { d: "M14.7646 11.3525C14.8461 10.9466 15.2414 10.6834 15.6475 10.7646C16.0534 10.8461 16.3166 11.2414 16.2354 11.6475L15.2354 16.6475C15.1539 17.0534 14.7586 17.3166 14.3525 17.2354C13.9466 17.1539 13.6834 16.7586 13.7646 16.3525L14.7646 11.3525Z", fill: "currentColor" }), hAsync("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M13 2.0498C13.9664 2.0498 14.7499 2.8334 14.75 3.7998V4.25H20C20.4142 4.25 20.75 4.58579 20.75 5V8C20.75 8.41421 20.4142 8.75 20 8.75H19.6445L17.999 19.6123C17.7952 20.9565 16.6398 21.9502 15.2803 21.9502H8.71973C7.36018 21.9502 6.20481 20.9565 6.00098 19.6123L4.35547 8.75H4C3.58579 8.75 3.25 8.41421 3.25 8V5C3.25 4.58579 3.58579 4.25 4 4.25H8.75V3.7998C8.75011 2.8334 9.53357 2.0498 10.5 2.0498H13ZM7.48438 19.3877C7.57717 19.9985 8.10188 20.4502 8.71973 20.4502H15.2803C15.8981 20.4502 16.4228 19.9985 16.5156 19.3877L18.1279 8.75H5.87207L7.48438 19.3877ZM4.75 7.25H19.25V5.75H4.75V7.25ZM10.5 3.5498C10.362 3.5498 10.2501 3.66182 10.25 3.7998V4.25H13.25V3.7998C13.2499 3.66182 13.138 3.5498 13 3.5498H10.5Z", fill: "currentColor" })));
5857
+ };
5858
+
5859
+ const Dot = (props) => {
5860
+ const { size = 24, ...rest } = props;
5861
+ return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("circle", { cx: "12", cy: "12", r: "6", fill: "currentColor" })));
5862
+ };
5863
+
5844
5864
  const Download = (props) => {
5845
5865
  const { size = 24, ...rest } = props;
5846
5866
  return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M21.2002 19.3501C21.6142 19.3503 21.9502 19.686 21.9502 20.1001C21.9502 20.5142 21.6142 20.8499 21.2002 20.8501H2.7998C2.38568 20.85 2.0498 20.5142 2.0498 20.1001C2.0498 19.6859 2.38568 19.3502 2.7998 19.3501H21.2002Z", fill: "currentColor" }), hAsync("path", { d: "M12 3.1499C12.4142 3.1499 12.7499 3.48577 12.75 3.8999V15.0581L17.4639 10.2329C17.7533 9.93678 18.2281 9.93094 18.5244 10.2202C18.8205 10.5096 18.8254 10.9845 18.5361 11.2808L12.5361 17.4243C12.395 17.5686 12.2018 17.6499 12 17.6499C11.7982 17.6499 11.605 17.5686 11.4639 17.4243L5.46387 11.2808C5.17461 10.9845 5.17951 10.5096 5.47559 10.2202C5.77186 9.93094 6.24673 9.93678 6.53613 10.2329L11.25 15.0581V3.8999C11.2501 3.48577 11.5858 3.1499 12 3.1499Z", fill: "currentColor" })));
@@ -5901,6 +5921,11 @@ const Inline = (props) => {
5901
5921
  return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M11.0801 2.0498C11.4941 2.04995 11.83 2.38577 11.8301 2.7998C11.8301 3.21393 11.4942 3.54966 11.0801 3.5498H3.7998C3.66191 3.54994 3.5499 3.6619 3.5498 3.7998V20.2002C3.55001 20.338 3.66197 20.4501 3.7998 20.4502H20.2002C20.338 20.45 20.45 20.338 20.4502 20.2002V12.9199C20.4503 12.5059 20.7862 12.1701 21.2002 12.1699C21.6142 12.1701 21.9501 12.5059 21.9502 12.9199V20.2002C21.95 21.1664 21.1664 21.95 20.2002 21.9502H3.7998C2.83355 21.9501 2.05001 21.1664 2.0498 20.2002V3.7998C2.0499 2.83347 2.83348 2.04994 3.7998 2.0498H11.0801Z", fill: "currentColor" }), hAsync("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M19.3252 4.66699C19.5765 4.21659 20.0655 4.07962 20.4551 4.17578C20.858 4.27538 21.248 4.65457 21.2051 5.21094L21.1475 5.79199C20.9808 7.18748 20.5611 8.83543 19.5479 10.2197C18.424 11.755 16.6276 12.8864 13.8779 13.0596V15.8457C13.8779 16.7061 12.8828 17.1403 12.2539 16.6279L12.1328 16.5127L7.59082 11.4375C7.25096 11.0578 7.25096 10.4832 7.59082 10.1035L12.1328 5.0293C12.7449 4.34543 13.8779 4.77847 13.8779 5.69629V8.55957C15.0735 8.59246 17.4617 8.00699 19.3252 4.66699ZM9.00684 10.7715L12.3779 14.5381V12.583C12.3781 12.0114 12.8468 11.5923 13.3662 11.5811C15.9616 11.5247 17.4486 10.5489 18.3379 9.33398C18.787 8.72044 19.0992 8.02407 19.3135 7.31152C17.0812 9.91545 14.4914 10.247 13.166 9.9873C12.6634 9.8888 12.3779 9.44604 12.3779 9.01953V7.00488L9.00684 10.7715Z", fill: "currentColor" })));
5902
5922
  };
5903
5923
 
5924
+ const Launcher = (props) => {
5925
+ const { size = 24, ...rest } = props;
5926
+ return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M5 18C5.55228 18 6 18.4477 6 19V21C6 21.5523 5.55228 22 5 22H3C2.44772 22 2 21.5523 2 21V19C2 18.4477 2.44772 18 3 18H5Z", fill: "currentColor" }), hAsync("path", { d: "M13 18C13.5523 18 14 18.4477 14 19V21C14 21.5523 13.5523 22 13 22H11C10.4477 22 10 21.5523 10 21V19C10 18.4477 10.4477 18 11 18H13Z", fill: "currentColor" }), hAsync("path", { d: "M21 18C21.5523 18 22 18.4477 22 19V21C22 21.5523 21.5523 22 21 22H19C18.4477 22 18 21.5523 18 21V19C18 18.4477 18.4477 18 19 18H21Z", fill: "currentColor" }), hAsync("path", { d: "M5 10C5.55228 10 6 10.4477 6 11V13C6 13.5523 5.55228 14 5 14H3C2.44772 14 2 13.5523 2 13V11C2 10.4477 2.44772 10 3 10H5Z", fill: "currentColor" }), hAsync("path", { d: "M13 10C13.5523 10 14 10.4477 14 11V13C14 13.5523 13.5523 14 13 14H11C10.4477 14 10 13.5523 10 13V11C10 10.4477 10.4477 10 11 10H13Z", fill: "currentColor" }), hAsync("path", { d: "M21 10C21.5523 10 22 10.4477 22 11V13C22 13.5523 21.5523 14 21 14H19C18.4477 14 18 13.5523 18 13V11C18 10.4477 18.4477 10 19 10H21Z", fill: "currentColor" }), hAsync("path", { d: "M5 2C5.55228 2 6 2.44772 6 3V5C6 5.55228 5.55228 6 5 6H3C2.44772 6 2 5.55228 2 5V3C2 2.44772 2.44772 2 3 2H5Z", fill: "currentColor" }), hAsync("path", { d: "M13 2C13.5523 2 14 2.44772 14 3V5C14 5.55228 13.5523 6 13 6H11C10.4477 6 10 5.55228 10 5V3C10 2.44772 10.4477 2 11 2H13Z", fill: "currentColor" }), hAsync("path", { d: "M21 2C21.5523 2 22 2.44772 22 3V5C22 5.55228 21.5523 6 21 6H19C18.4477 6 18 5.55228 18 5V3C18 2.44772 18.4477 2 19 2H21Z", fill: "currentColor" })));
5927
+ };
5928
+
5904
5929
  const Line = (props) => {
5905
5930
  const { size = 24, ...rest } = props;
5906
5931
  return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M4.25 13C4.66421 13 5 13.3358 5 13.75V21.25C5 21.6642 4.66421 22 4.25 22H2.75C2.33579 22 2 21.6642 2 21.25V13.75C2 13.3358 2.33579 13 2.75 13H4.25Z", fill: "currentColor" }), hAsync("path", { d: "M12.75 13C13.1642 13 13.5 13.3358 13.5 13.75V21.25C13.5 21.6642 13.1642 22 12.75 22H11.25C10.8358 22 10.5 21.6642 10.5 21.25V13.75C10.5 13.3358 10.8358 13 11.25 13H12.75Z", fill: "currentColor" }), hAsync("path", { d: "M4.25 2C4.66421 2 5 2.33579 5 2.75V10.25C5 10.6642 4.66421 11 4.25 11H2.75C2.33579 11 2 10.6642 2 10.25V2.75C2 2.33579 2.33579 2 2.75 2H4.25Z", fill: "currentColor" }), hAsync("path", { d: "M12.75 2C13.1642 2 13.5 2.33579 13.5 2.75V10.25C13.5 10.6642 13.1642 11 12.75 11H11.25C10.8358 11 10.5 10.6642 10.5 10.25V2.75C10.5 2.33579 10.8358 2 11.25 2H12.75Z", fill: "currentColor" }), hAsync("path", { d: "M21.25 2C21.6642 2 22 2.33579 22 2.75V10.25C22 10.6642 21.6642 11 21.25 11H19.75C19.3358 11 19 10.6642 19 10.25V2.75C19 2.33579 19.3358 2 19.75 2H21.25Z", fill: "currentColor" })));
@@ -5921,6 +5946,11 @@ const Minus = (props) => {
5921
5946
  return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M20 11.25C20.4142 11.25 20.75 11.5858 20.75 12C20.75 12.4142 20.4142 12.75 20 12.75H4C3.58579 12.75 3.25 12.4142 3.25 12C3.25 11.5858 3.58579 11.25 4 11.25H20Z", fill: "currentColor" })));
5922
5947
  };
5923
5948
 
5949
+ const Monitor = (props) => {
5950
+ const { size = 24, ...rest } = props;
5951
+ return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M21.9502 14.75C21.9502 15.9925 20.9426 16.9998 19.7002 17L12.75 17L12.75 19H15C15.4142 19 15.75 19.3358 15.75 19.75C15.75 20.1642 15.4142 20.5 15 20.5L8.99997 20.5C8.58576 20.5 8.24997 20.1642 8.24997 19.75C8.24997 19.3358 8.58576 19 8.99997 19H11.25L11.25 17H4.29977C3.05722 16.9999 2.04977 15.9926 2.04977 14.75L2.04977 5.75C2.04978 4.50742 3.05722 3.5001 4.29977 3.5L19.7002 3.5C20.9426 3.50021 21.9502 4.50749 21.9502 5.75L21.9502 14.75ZM20.4502 5.75C20.4502 5.33592 20.1142 5.00021 19.7002 5L4.29977 5C3.88565 5.0001 3.54978 5.33585 3.54977 5.75L3.54977 14.75C3.54977 15.1642 3.88565 15.4999 4.29977 15.5L19.7002 15.5C20.1142 15.4998 20.4502 15.1641 20.4502 14.75L20.4502 5.75Z", fill: "currentColor" })));
5952
+ };
5953
+
5924
5954
  const New = (props) => {
5925
5955
  const { size = 24, ...rest } = props;
5926
5956
  return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M20 2C21.1046 2 22 2.89543 22 4V20C22 21.1046 21.1046 22 20 22H4C2.89543 22 2 21.1046 2 20V4C2 2.89543 2.89543 2 4 2H20ZM7.5 6.75V17.25H9.99902V11.082H10.0713L14.374 17.25H16.5V6.75H14.0059V12.9072H13.918L9.66211 6.75H7.5Z", fill: "currentColor" })));
@@ -6001,11 +6031,26 @@ const Setting = (props) => {
6001
6031
  return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M13.1858 1C13.5092 1 13.7985 1.2013 13.9074 1.5027L14.6839 3.65537C14.9622 3.72467 15.2009 3.79397 15.4033 3.86657C15.6244 3.94577 15.9093 4.06567 16.2613 4.22956L18.0696 3.27257C18.2172 3.19437 18.3862 3.16614 18.5512 3.19213C18.7162 3.21811 18.8683 3.2969 18.9848 3.41667L20.5753 5.06115C20.7865 5.28005 20.8459 5.60015 20.7271 5.87954L19.8791 7.86722C20.0198 8.12572 20.132 8.34681 20.2178 8.53161C20.3102 8.73291 20.4246 9.01011 20.561 9.3676L22.5377 10.2146C22.8346 10.3411 23.0183 10.6381 22.9985 10.956L22.8533 13.2385C22.8434 13.3867 22.7902 13.5288 22.7002 13.6471C22.6103 13.7654 22.4876 13.8547 22.3474 13.9039L20.4752 14.5694C20.4213 14.8279 20.3652 15.049 20.3058 15.236C20.21 15.5248 20.1006 15.8089 19.978 16.0874L20.9185 18.1664C20.9849 18.3125 21.0028 18.476 20.9695 18.6329C20.9363 18.7899 20.8536 18.9321 20.7337 19.0387L18.9452 20.6359C18.8274 20.7406 18.6804 20.8069 18.5239 20.8257C18.3674 20.8446 18.2089 20.8152 18.0696 20.7415L16.2261 19.7647C15.9377 19.9174 15.6401 20.0522 15.3351 20.1684L14.5299 20.4698L13.815 22.4497C13.762 22.5947 13.6664 22.7203 13.5408 22.81C13.4151 22.8998 13.2653 22.9494 13.111 22.9524L11.0211 22.9997C10.8626 23.0039 10.7068 22.9588 10.575 22.8708C10.4432 22.7827 10.342 22.656 10.2852 22.508L9.44261 20.2784C9.15513 20.1801 8.8705 20.0737 8.58904 19.9594C8.35884 19.8597 8.13211 19.7522 7.90927 19.6371L5.81934 20.5303C5.68163 20.589 5.52981 20.6065 5.38237 20.5805C5.23492 20.5545 5.09821 20.4862 4.98887 20.384L3.44232 18.9331C3.32718 18.8255 3.24876 18.6845 3.21817 18.5299C3.18757 18.3754 3.20634 18.2151 3.27183 18.0718L4.17049 16.1138C4.05098 15.8819 3.94017 15.6456 3.83831 15.4054C3.7194 15.1114 3.60936 14.8139 3.50832 14.5133L1.53939 13.9138C1.37934 13.8655 1.23975 13.7656 1.14229 13.6298C1.04483 13.4939 0.99495 13.3297 1.0004 13.1626L1.0774 11.0495C1.08288 10.9116 1.12595 10.7779 1.20195 10.6627C1.27795 10.5475 1.38398 10.4553 1.50859 10.3961L3.57431 9.4039C3.67001 9.053 3.75361 8.78021 3.82731 8.58111C3.93108 8.31518 4.04632 8.05387 4.17269 7.79792L3.27733 5.90594C3.20938 5.76227 3.18874 5.60074 3.21839 5.44459C3.24804 5.28845 3.32644 5.14573 3.44232 5.03695L4.98667 3.57837C5.09493 3.47626 5.23038 3.40761 5.37674 3.38068C5.5231 3.35375 5.67412 3.36969 5.81164 3.42657L7.89937 4.28896C8.13036 4.13496 8.33935 4.01067 8.52854 3.91057C8.75404 3.79067 9.05543 3.66527 9.43491 3.52997L10.1609 1.5049C10.2146 1.35669 10.3127 1.22867 10.4418 1.1383C10.571 1.04794 10.7248 0.999641 10.8825 1H13.1858ZM12.0264 8.72081C10.1928 8.72081 8.70674 10.1893 8.70674 12.0021C8.70674 13.8148 10.1928 15.2844 12.0264 15.2844C13.859 15.2844 15.345 13.8148 15.345 12.0021C15.345 10.1893 13.8601 8.72081 12.0264 8.72081Z", fill: "currentColor" })));
6002
6032
  };
6003
6033
 
6034
+ const Shield = (props) => {
6035
+ const { size = 24, ...rest } = props;
6036
+ return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M16.2549 9.3486C16.5477 9.05582 17.0225 9.05602 17.3154 9.3486C17.6083 9.64149 17.6083 10.1163 17.3154 10.4091L12.0859 15.6386C11.6954 16.0291 11.0624 16.0291 10.6719 15.6386L7.46973 12.4365C7.17728 12.1436 7.17703 11.6687 7.46973 11.3759C7.76264 11.0833 8.23844 11.0831 8.53125 11.3759L11.3789 14.2246L16.2549 9.3486Z", fill: "currentColor" }), hAsync("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M11.501 1.4404C11.8718 1.27889 12.3024 1.30624 12.6533 1.52145L20.1533 6.12204C20.5238 6.34931 20.7499 6.75284 20.75 7.18747V10.5302C20.75 11.8881 20.6005 13.3051 20.0645 14.6425C19.5554 15.9124 18.7155 17.6378 17.4502 19.1894C16.1835 20.7426 14.4592 22.1581 12.1816 22.7275L12 22.7734L11.8184 22.7275C9.54076 22.1581 7.81646 20.7426 6.5498 19.1894C5.2845 17.6378 4.4446 15.9124 3.93555 14.6425C3.39949 13.3051 3.25 11.8881 3.25 10.5302V7.18747C3.25007 6.75284 3.47619 6.34931 3.84668 6.12204L11.3467 1.52145L11.501 1.4404ZM4.75 7.32712V10.5302C4.75 11.7887 4.89082 12.9929 5.32812 14.084C5.80497 15.2735 6.57635 16.8486 7.71191 18.2412C8.80911 19.5866 10.2182 20.7255 12 21.2216C13.7818 20.7255 15.1909 19.5866 16.2881 18.2412C17.4236 16.8486 18.195 15.2735 18.6719 14.084C19.1092 12.9929 19.25 11.7887 19.25 10.5302V7.32712L12 2.87985L4.75 7.32712Z", fill: "currentColor" })));
6037
+ };
6038
+
6039
+ const Sidebar = (props) => {
6040
+ const { size = 24, ...rest } = props;
6041
+ return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M19 3C20.6569 3 22 4.34315 22 6V18L21.9961 18.1543C21.9184 19.6883 20.6883 20.9184 19.1543 20.9961L19 21H5L4.8457 20.9961C3.31166 20.9184 2.08163 19.6883 2.00391 18.1543L2 18V6C2 4.34315 3.34315 3 5 3H19ZM5 4.5C4.17157 4.5 3.5 5.17157 3.5 6V18C3.5 18.8284 4.17157 19.5 5 19.5H8V4.5H5ZM9.5 19.5H19C19.8284 19.5 20.5 18.8284 20.5 18V6C20.5 5.17157 19.8284 4.5 19 4.5H9.5V19.5Z", fill: "currentColor" })));
6042
+ };
6043
+
6004
6044
  const Star = (props) => {
6005
6045
  const { size = 24, ...rest } = props;
6006
6046
  return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M12.2607 1C12.3943 1 12.5045 1.10494 12.5107 1.23828L12.9258 10.3945L21.0645 6.17676C21.1829 6.11552 21.3286 6.1581 21.3955 6.27344L21.6572 6.72656C21.7236 6.84217 21.6875 6.98956 21.5752 7.06152L13.8535 11.999L21.5752 16.9385C21.6874 17.0104 21.7236 17.1578 21.6572 17.2734L21.3955 17.7266C21.3286 17.8419 21.1829 17.8844 21.0645 17.8232L12.9268 13.6055L12.5107 22.7617C12.5045 22.8951 12.3943 23 12.2607 23H11.7393C11.6057 23 11.4955 22.8951 11.4893 22.7617L11.0723 13.6055L2.93555 17.8232C2.81708 17.8844 2.67137 17.8419 2.60449 17.7266L2.34278 17.2734C2.2764 17.1578 2.31256 17.0104 2.42481 16.9385L10.1455 11.999L2.42481 7.06152C2.31253 6.98956 2.27637 6.84217 2.34278 6.72656L2.60449 6.27344C2.67139 6.1581 2.81708 6.11553 2.93555 6.17676L11.0723 10.3936L11.4893 1.23828C11.4955 1.10494 11.6057 1 11.7393 1H12.2607Z", fill: "currentColor" })));
6007
6047
  };
6008
6048
 
6049
+ const Store = (props) => {
6050
+ const { size = 24, ...rest } = props;
6051
+ return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { "fill-rule": "evenodd", "clip-rule": "evenodd", d: "M18.3817 6C19.0445 6 19.6507 6.37497 19.9472 6.96777L21.9472 10.9678C22.5286 12.1313 21.6825 13.5 20.3817 13.5H19.7499V19.75C19.7499 20.1642 19.4141 20.5 18.9999 20.5C18.5858 20.4998 18.2499 20.1641 18.2499 19.75V13.5H13.7499V18.75C13.7499 19.7165 12.9664 20.5 11.9999 20.5H5.99991C5.03355 20.4998 4.24991 19.7164 4.24991 18.75V13.5H3.61807C2.3175 13.4998 1.47136 12.1312 2.05264 10.9678L4.05264 6.96777C4.34903 6.375 4.95534 6.00012 5.61807 6H18.3817ZM5.74991 18.75C5.74991 18.888 5.86198 18.9998 5.99991 19H11.9999C12.138 19 12.2499 18.8881 12.2499 18.75V13.5H5.74991V18.75ZM5.61807 7.5C5.5235 7.50012 5.43674 7.55407 5.39444 7.63867L3.39444 11.6387C3.31183 11.8047 3.43258 11.9998 3.61807 12H20.3817C20.5675 12 20.6882 11.8048 20.6054 11.6387L18.6054 7.63867C18.563 7.55405 18.4764 7.5 18.3817 7.5H5.61807Z", fill: "currentColor" }), hAsync("path", { d: "M17.9999 4C18.4141 4 18.7499 4.33579 18.7499 4.75C18.7499 5.16421 18.4141 5.5 17.9999 5.5H5.99991C5.58584 5.49983 5.24991 5.16411 5.24991 4.75C5.24991 4.33589 5.58584 4.00017 5.99991 4H17.9999Z", fill: "currentColor" })));
6052
+ };
6053
+
6009
6054
  const Synchronize = (props) => {
6010
6055
  const { size = 24, ...rest } = props;
6011
6056
  return (hAsync("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg", ...rest }, hAsync("path", { d: "M3.30769 10.8175C3.57806 10.5965 3.96606 10.5921 4.24226 10.8057L6.33991 12.4278C6.66706 12.6813 6.7261 13.1521 6.47272 13.4796C6.21918 13.8067 5.74841 13.8675 5.42097 13.6143L4.62116 12.9952C4.92795 14.8404 5.99601 17.3161 8.753 18.6602C12.4087 20.4424 15.8051 18.6615 17.0333 17.5479C17.34 17.2701 17.8136 17.2925 18.0919 17.5987C18.3701 17.9055 18.347 18.381 18.0401 18.6592C16.5549 20.0056 12.5074 22.16 8.09479 20.0089C4.62913 18.3191 3.39551 15.1712 3.09675 12.9298L2.27546 13.6016C1.95491 13.8639 1.48116 13.8165 1.21882 13.4962C0.956723 13.1758 1.00408 12.7028 1.32429 12.4405L3.30769 10.8175Z", fill: "currentColor" }), hAsync("path", { d: "M5.96003 5.34089C7.44498 3.99457 11.4916 1.83985 15.9044 3.99128C19.3702 5.68114 20.6036 8.82876 20.9024 11.0704L21.7247 10.3985C22.0452 10.1363 22.518 10.1837 22.7803 10.504C23.0426 10.8245 22.9953 11.2973 22.6749 11.5596L20.6915 13.1827C20.4211 13.4035 20.034 13.408 19.7579 13.1944L17.6602 11.5723C17.333 11.3189 17.2732 10.8481 17.5264 10.5206C17.78 10.1931 18.2516 10.1324 18.5792 10.3858L19.379 11.005C19.0722 9.15965 18.0042 6.68321 15.2471 5.33893C11.5915 3.55662 8.19499 5.33864 6.96687 6.45222C6.66013 6.72978 6.1864 6.70667 5.90827 6.40046C5.63009 6.09371 5.65335 5.61916 5.96003 5.34089Z", fill: "currentColor" })));
@@ -6068,6 +6113,7 @@ const Icons = {
6068
6113
  attachFile: AttachFile,
6069
6114
  barcode: Barcode,
6070
6115
  bell: Bell,
6116
+ bill: Bill,
6071
6117
  board: Board,
6072
6118
  box: Box,
6073
6119
  camera: Camera,
@@ -6092,8 +6138,11 @@ const Icons = {
6092
6138
  clockOutline: ClockOutline,
6093
6139
  close: Close,
6094
6140
  copy: Copy,
6141
+ coupon: Coupon,
6095
6142
  dashboard: Dashboard,
6096
6143
  date: DateIcon,
6144
+ delete: Delete,
6145
+ dot: Dot,
6097
6146
  download: Download,
6098
6147
  drag: Drag,
6099
6148
  edit: Edit,
@@ -6106,10 +6155,12 @@ const Icons = {
6106
6155
  imageFill: ImageFill,
6107
6156
  imageOutline: ImageOutline,
6108
6157
  inline: Inline,
6158
+ launcher: Launcher,
6109
6159
  line: Line,
6110
6160
  location: Location,
6111
6161
  logout: Logout,
6112
6162
  minus: Minus,
6163
+ monitor: Monitor,
6113
6164
  new: New,
6114
6165
  notificationFill: NotificationFill,
6115
6166
  notificationOutline: NotificationOutline,
@@ -6126,7 +6177,10 @@ const Icons = {
6126
6177
  save: Save,
6127
6178
  search: Search,
6128
6179
  setting: Setting,
6180
+ shield: Shield,
6181
+ sidebar: Sidebar,
6129
6182
  star: Star,
6183
+ store: Store,
6130
6184
  synchronize: Synchronize,
6131
6185
  updown: Updown,
6132
6186
  user: User,
@@ -7813,6 +7867,98 @@ var chipInputTokens = {
7813
7867
  chipInput: chipInput
7814
7868
  };
7815
7869
 
7870
+ const typography = {
7871
+ feedback: {
7872
+ sm: {
7873
+ regular: {
7874
+ fontSize: "12",
7875
+ fontWeight: "400"}}}};
7876
+ const color = {
7877
+ bg: {
7878
+ frame: "#FFFFFF",
7879
+ accent: {
7880
+ "default": "#0075FF"}},
7881
+ fg: {
7882
+ primary: "#222222",
7883
+ secondary: "#555555",
7884
+ tertiary: "#888888",
7885
+ success: "#00973C",
7886
+ accent: "#0075FF",
7887
+ inverse: "#FFFFFF"
7888
+ },
7889
+ divider: {
7890
+ "default": "#E1E1E1"
7891
+ },
7892
+ blue: {
7893
+ strong: "#0075FF"},
7894
+ darkblue: {
7895
+ strong: "#006AC1"},
7896
+ grey: {
7897
+ strong: "#737373"}};
7898
+ const shadow = {
7899
+ spread: {
7900
+ md: {
7901
+ x: "0",
7902
+ y: "0",
7903
+ blur: "24",
7904
+ spread: "0",
7905
+ color: "rgba(34,34,34,0.2)"}
7906
+ }};
7907
+ var systemTokens = {
7908
+ typography: typography,
7909
+ color: color,
7910
+ shadow: shadow
7911
+ };
7912
+
7913
+ const listBox = {
7914
+ radius: "4"};
7915
+ var listBoxTokens = {
7916
+ listBox: listBox
7917
+ };
7918
+
7919
+ const listItem$1 = {
7920
+ paddingY: "4",
7921
+ paddingRight: "12",
7922
+ gap: "8",
7923
+ paddingLeft: {
7924
+ depth1: "12",
7925
+ depth2: "20",
7926
+ depth3: "28"
7927
+ },
7928
+ typography: {
7929
+ "default": {
7930
+ fontFamily: "Pretendard Variable, Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Segoe UI, Apple SD Gothic Neo, Noto Sans KR, Malgun Gothic, Apple Color Emoji, Segoe UI Emoji, sans-serif",
7931
+ fontWeight: "400",
7932
+ fontSize: "12",
7933
+ lineHeight: "20"},
7934
+ selected: {
7935
+ fontWeight: "700"}
7936
+ },
7937
+ bg: {
7938
+ "default": "#FFFFFF",
7939
+ hover: "#0075FF"
7940
+ },
7941
+ content: {
7942
+ "default": "#222222",
7943
+ hover: "#FFFFFF",
7944
+ disabled: "#888888",
7945
+ selected: "#0075FF"
7946
+ },
7947
+ depth1: {
7948
+ bg: {
7949
+ "default": "#EFF6FF"},
7950
+ border: {
7951
+ color: "#E1E1E1",
7952
+ width: "1"
7953
+ }},
7954
+ depth2: {
7955
+ middle: {
7956
+ bg: "#F6F6F6"}
7957
+ }};
7958
+ var listItemTokens = {
7959
+ listItem: listItem$1
7960
+ };
7961
+
7816
7962
  const sm$4 = chipInputTokens.chipInput.sm;
7817
7963
  const md$4 = chipInputTokens.chipInput.md;
7818
7964
  const CHIP_INPUT_SIZE_MAP = {
@@ -7850,8 +7996,34 @@ const CHIP_INPUT_RESET = {
7850
7996
  iconColor: '#888888', // TODO: 토큰 반영 후 교체 (grey_65)
7851
7997
  labelColor: '#555555', // TODO: 토큰 반영 후 교체 (grey_70)
7852
7998
  };
7853
-
7854
- const sdChipInputCss = () => `sd-chip-input{display:inline-flex}sd-chip-input .sd-chip-input{position:relative;width:100%;min-height:var(--sd-chip-input-min-height);display:flex;flex-flow:row wrap;align-items:center;gap:var(--sd-chip-input-chip-gap);padding:var(--sd-chip-input-padding-y) var(--sd-chip-input-padding-x);cursor:text}sd-chip-input .sd-chip-input__reset{display:inline-flex;align-items:center;gap:var(--sd-chip-input-reset-gap);flex-shrink:0}sd-chip-input .sd-chip-input__divider{display:inline-block;width:1px;height:12px;background-color:var(--sd-chip-input-divider-color);flex-shrink:0}sd-chip-input .sd-chip-input__field{flex:0 0 auto;display:inline-grid;grid-template-columns:minmax(0, max-content);align-items:center;min-width:1ch;max-width:100%;height:var(--sd-chip-input-field-height);box-sizing:border-box;padding:0;border:none;border-radius:0;background:transparent;overflow:hidden}sd-chip-input .sd-chip-input__field::after{content:attr(data-value);grid-area:1/1;visibility:hidden;white-space:pre;font-size:var(--sd-chip-input-field-font-size);line-height:var(--sd-chip-input-field-line-height);font-weight:var(--sd-chip-input-field-font-weight);font-family:var(--sd-chip-input-field-font-family)}sd-chip-input .sd-chip-input__field--filled{padding:0 var(--sd-chip-input-field-padding-x);border:var(--sd-chip-input-field-border-width) solid var(--sd-chip-input-field-border-color);border-radius:var(--sd-chip-input-field-radius);background:var(--sd-chip-input-field-bg)}sd-chip-input .sd-chip-input__field--empty{position:absolute;top:0;left:0;width:0;height:0;min-width:0;overflow:hidden}sd-chip-input .sd-chip-input__input{grid-area:1/1;width:100%;min-width:1ch;height:var(--sd-chip-input-field-height);margin:0;padding:0;border:none;outline:none;overflow:hidden;text-overflow:ellipsis;background:transparent;font-size:var(--sd-chip-input-field-font-size);line-height:var(--sd-chip-input-field-line-height);font-weight:var(--sd-chip-input-field-font-weight);font-family:var(--sd-chip-input-field-font-family);color:var(--sd-chip-input-field-content)}sd-chip-input .sd-chip-input__input[disabled]{cursor:not-allowed;pointer-events:none}sd-chip-input .sd-chip-input__input::placeholder{color:var(--sd-chip-input-placeholder-color)}`;
7999
+ const feedbackSm = systemTokens.typography.feedback.sm.regular;
8000
+ const CHIP_INPUT_MAX_COUNT = {
8001
+ fontSize: `${feedbackSm.fontSize}px`,
8002
+ fontWeight: `${feedbackSm.fontWeight}`,
8003
+ color: chipInputTokens.chipInput.text.placeholder,
8004
+ };
8005
+ const listItem = listItemTokens.listItem;
8006
+ const CHIP_INPUT_SUGGESTIONS = {
8007
+ radius: `${listBoxTokens.listBox.radius}px`,
8008
+ maxHeight: '260px',
8009
+ itemPaddingY: `${listItem.paddingY}px`,
8010
+ itemPaddingX: `${listItem.paddingLeft.depth1}px`,
8011
+ itemPaddingRight: `${listItem.paddingRight}px`,
8012
+ itemGap: `${listItem.gap}px`,
8013
+ itemFontSize: `${listItem.typography.default.fontSize}px`,
8014
+ itemFontWeight: listItem.typography.default.fontWeight,
8015
+ itemFontWeightSelected: listItem.typography.selected.fontWeight,
8016
+ itemLineHeight: `${listItem.typography.default.lineHeight}px`,
8017
+ itemFontFamily: listItem.typography.default.fontFamily,
8018
+ itemColor: listItem.content.default,
8019
+ itemColorHover: listItem.content.hover,
8020
+ itemBgHover: listItem.bg.hover,
8021
+ emptyColor: '#888888',
8022
+ emptyFontSize: '12px',
8023
+ emptyLineHeight: '20px',
8024
+ };
8025
+
8026
+ const sdChipInputCss = () => `sd-chip-input{display:inline-flex}sd-chip-input .sd-chip-input{position:relative;width:100%;isolation:isolate;min-height:var(--sd-chip-input-min-height);display:flex;flex-flow:row wrap;align-items:center;gap:var(--sd-chip-input-chip-gap);padding:var(--sd-chip-input-padding-y) var(--sd-chip-input-padding-x);cursor:text}sd-chip-input .sd-chip-input__reset{display:inline-flex;align-items:center;gap:var(--sd-chip-input-reset-gap);flex-shrink:0}sd-chip-input .sd-chip-input__divider{display:inline-block;width:1px;height:12px;background-color:var(--sd-chip-input-divider-color);flex-shrink:0}sd-chip-input .sd-chip-input__max-count{font-size:var(--sd-chip-input-max-count-font-size);font-weight:var(--sd-chip-input-max-count-font-weight);color:var(--sd-chip-input-max-count-color);white-space:nowrap;flex-shrink:0}sd-chip-input .sd-chip-input__field{flex:0 0 auto;display:inline-grid;grid-template-columns:minmax(0, max-content);align-items:center;min-width:1ch;max-width:100%;height:var(--sd-chip-input-field-height);box-sizing:border-box;padding:0;border:none;border-radius:0;background:transparent;overflow:hidden}sd-chip-input .sd-chip-input__field::after{content:attr(data-value);grid-area:1/1;visibility:hidden;white-space:pre;font-size:var(--sd-chip-input-field-font-size);line-height:var(--sd-chip-input-field-line-height);font-weight:var(--sd-chip-input-field-font-weight);font-family:var(--sd-chip-input-field-font-family)}sd-chip-input .sd-chip-input__field--filled{padding:0 var(--sd-chip-input-field-padding-x);border:var(--sd-chip-input-field-border-width) solid var(--sd-chip-input-field-border-color);border-radius:var(--sd-chip-input-field-radius);background:var(--sd-chip-input-field-bg)}sd-chip-input .sd-chip-input__field--empty{position:absolute;top:0;left:0;width:0;height:0;min-width:0;overflow:hidden}sd-chip-input .sd-chip-input__input{grid-area:1/1;width:100%;min-width:1ch;height:var(--sd-chip-input-field-height);margin:0;padding:0;border:none;outline:none;overflow:hidden;text-overflow:ellipsis;background:transparent;font-size:var(--sd-chip-input-field-font-size);line-height:var(--sd-chip-input-field-line-height);font-weight:var(--sd-chip-input-field-font-weight);font-family:var(--sd-chip-input-field-font-family);color:var(--sd-chip-input-field-content)}sd-chip-input .sd-chip-input__input[disabled]{cursor:not-allowed;pointer-events:none}sd-chip-input .sd-chip-input__input::placeholder{color:var(--sd-chip-input-placeholder-color)}sd-chip-input .sd-chip-input__suggestions{display:flex;flex-direction:column;box-sizing:border-box;background:white;border-radius:var(--sd-chip-input-suggestions-radius);box-shadow:2px 2px 12px 2px rgba(0, 0, 0, 0.1);max-height:var(--sd-chip-input-suggestions-max-height);min-height:0;overflow-y:auto;overflow-x:hidden;outline:none}sd-chip-input .sd-chip-input__suggestion-item{display:flex;align-items:center;gap:var(--sd-chip-input-suggestion-gap);padding:var(--sd-chip-input-suggestion-padding-y) var(--sd-chip-input-suggestion-padding-right) var(--sd-chip-input-suggestion-padding-y) var(--sd-chip-input-suggestion-padding-x);font-size:var(--sd-chip-input-suggestion-font-size);line-height:var(--sd-chip-input-suggestion-line-height);font-weight:var(--sd-chip-input-suggestion-font-weight);font-family:var(--sd-chip-input-suggestion-font-family);color:var(--sd-chip-input-suggestion-color);cursor:pointer;user-select:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}sd-chip-input .sd-chip-input__suggestion-item--active{background:var(--sd-chip-input-suggestion-bg-hover);color:var(--sd-chip-input-suggestion-color-hover);font-weight:var(--sd-chip-input-suggestion-font-weight-selected)}sd-chip-input .sd-chip-input__suggestions-empty{padding:12px;text-align:center;font-size:var(--sd-chip-input-suggestions-empty-font-size);line-height:var(--sd-chip-input-suggestions-empty-line-height);font-family:var(--sd-chip-input-suggestion-font-family);color:var(--sd-chip-input-suggestions-empty-color)}`;
7855
8027
 
7856
8028
  class SdChipInput {
7857
8029
  constructor(hostRef) {
@@ -7859,7 +8031,9 @@ class SdChipInput {
7859
8031
  this.update = createEvent(this, "sdUpdate", 7);
7860
8032
  this.focusEvent = createEvent(this, "sdFocus", 7);
7861
8033
  this.blurEvent = createEvent(this, "sdBlur", 7);
8034
+ this.inputEvent = createEvent(this, "sdInput", 7);
7862
8035
  }
8036
+ static SUGGESTIONS_VIEWPORT_PADDING = 8;
7863
8037
  get host() { return getElement(this); }
7864
8038
  values = [];
7865
8039
  errors = [];
@@ -7871,6 +8045,11 @@ class SdChipInput {
7871
8045
  rules = [];
7872
8046
  error = false;
7873
8047
  useReset = false;
8048
+ maxCount;
8049
+ suggestions = [];
8050
+ loadingSuggestions = false;
8051
+ recommendedItems = [];
8052
+ loadingRecommendedItems = false;
7874
8053
  // sd-field props
7875
8054
  label = '';
7876
8055
  labelWidth = '';
@@ -7886,8 +8065,12 @@ class SdChipInput {
7886
8065
  focused = false;
7887
8066
  hovered = false;
7888
8067
  inputValue = '';
8068
+ activeSuggestionIndex = -1;
8069
+ suppressSuggestions = false;
8070
+ suppressRecommendations = false;
7889
8071
  inputEl;
7890
8072
  formField;
8073
+ chipInputRef;
7891
8074
  get value() {
7892
8075
  return this.internalValues;
7893
8076
  }
@@ -7899,6 +8082,17 @@ class SdChipInput {
7899
8082
  this.internalErrors = [...newErrors];
7900
8083
  }
7901
8084
  }
8085
+ suggestionsChanged(newVal) {
8086
+ if (!Array.isArray(newVal))
8087
+ this.suggestions = [];
8088
+ this.activeSuggestionIndex = -1;
8089
+ this.suppressSuggestions = false;
8090
+ }
8091
+ recommendedItemsChanged(newVal) {
8092
+ if (!Array.isArray(newVal))
8093
+ this.recommendedItems = [];
8094
+ this.activeSuggestionIndex = -1;
8095
+ }
7902
8096
  componentWillLoad() {
7903
8097
  this.internalValues = Array.isArray(this.values) ? [...this.values] : [];
7904
8098
  if (Array.isArray(this.errors)) {
@@ -7923,6 +8117,7 @@ class SdChipInput {
7923
8117
  update;
7924
8118
  focusEvent;
7925
8119
  blurEvent;
8120
+ inputEvent;
7926
8121
  async sdValidate() {
7927
8122
  return this.formField?.sdValidate();
7928
8123
  }
@@ -7935,6 +8130,31 @@ class SdChipInput {
7935
8130
  async sdFocus() {
7936
8131
  return this.formField?.sdFocus();
7937
8132
  }
8133
+ addChip = (value) => {
8134
+ if (this.maxCount != null && this.internalValues.length >= this.maxCount)
8135
+ return;
8136
+ const next = [...this.internalValues, value];
8137
+ this.internalValues = next;
8138
+ this.values = next;
8139
+ if (Array.isArray(this.errors)) {
8140
+ const nextErrors = [...this.internalErrors, false];
8141
+ this.internalErrors = nextErrors;
8142
+ this.errors = nextErrors;
8143
+ }
8144
+ if (Array.isArray(this.disabledChips)) {
8145
+ this.disabledChips = [...this.disabledChips, false];
8146
+ }
8147
+ if (this.inputEl != null) {
8148
+ this.inputEl.value = '';
8149
+ }
8150
+ this.inputValue = '';
8151
+ this.activeSuggestionIndex = -1;
8152
+ this.suppressSuggestions = true;
8153
+ this.update.emit(next);
8154
+ this.inputEvent.emit('');
8155
+ this.inputEl?.focus();
8156
+ this.suppressRecommendations = true;
8157
+ };
7938
8158
  handleChipRemove = (index) => {
7939
8159
  const next = this.internalValues.filter((_, i) => i !== index);
7940
8160
  this.internalValues = next;
@@ -7948,26 +8168,54 @@ class SdChipInput {
7948
8168
  this.disabledChips = this.disabledChips.filter((_, i) => i !== index);
7949
8169
  }
7950
8170
  this.update.emit(next);
8171
+ // .focus()는 동기 실행 → handleFocus가 suppressRecommendations=false로 리셋하므로 이후 덮어씀
7951
8172
  this.inputEl?.focus();
8173
+ this.suppressRecommendations = true;
7952
8174
  };
7953
8175
  handleKeyDown = (event) => {
7954
8176
  const input = event.target;
7955
- if (event.key === 'Enter' && !event.isComposing && input.value.trim() !== '') {
7956
- event.preventDefault();
7957
- const next = [...this.internalValues, input.value.trim()];
7958
- this.internalValues = next;
7959
- this.values = next;
7960
- if (Array.isArray(this.errors)) {
7961
- const nextErrors = [...this.internalErrors, false];
7962
- this.internalErrors = nextErrors;
7963
- this.errors = nextErrors;
8177
+ const suggestions = this.suggestions ?? [];
8178
+ const recommendedItems = this.recommendedItems ?? [];
8179
+ const showAutocomplete = this.focused &&
8180
+ this.inputValue !== '' &&
8181
+ !this.suppressSuggestions &&
8182
+ (suggestions.length > 0 || this.loadingSuggestions);
8183
+ const showRecommendations = this.focused &&
8184
+ this.inputValue === '' &&
8185
+ !this.suppressRecommendations &&
8186
+ (recommendedItems.length > 0 || this.loadingRecommendedItems);
8187
+ const showDropdown = showAutocomplete || showRecommendations;
8188
+ const activeItems = showAutocomplete ? suggestions : recommendedItems;
8189
+ if (showDropdown) {
8190
+ if (event.key === 'ArrowDown') {
8191
+ event.preventDefault();
8192
+ this.activeSuggestionIndex = Math.min(this.activeSuggestionIndex + 1, activeItems.length - 1);
8193
+ return;
7964
8194
  }
7965
- if (Array.isArray(this.disabledChips)) {
7966
- this.disabledChips = [...this.disabledChips, false];
8195
+ if (event.key === 'ArrowUp') {
8196
+ event.preventDefault();
8197
+ this.activeSuggestionIndex = Math.max(this.activeSuggestionIndex - 1, -1);
8198
+ return;
7967
8199
  }
7968
- input.value = '';
7969
- this.inputValue = '';
7970
- this.update.emit(next);
8200
+ if (event.key === 'Escape') {
8201
+ if (showAutocomplete)
8202
+ this.suppressSuggestions = true;
8203
+ if (showRecommendations)
8204
+ this.suppressRecommendations = true;
8205
+ this.activeSuggestionIndex = -1;
8206
+ return;
8207
+ }
8208
+ if (event.key === 'Enter' && this.activeSuggestionIndex >= 0) {
8209
+ event.preventDefault();
8210
+ this.addChip(activeItems[this.activeSuggestionIndex]);
8211
+ return;
8212
+ }
8213
+ }
8214
+ if (event.key === 'Enter' && !event.isComposing && input.value.trim() !== '') {
8215
+ if (this.maxCount != null && this.internalValues.length >= this.maxCount)
8216
+ return;
8217
+ event.preventDefault();
8218
+ this.addChip(input.value.trim());
7971
8219
  }
7972
8220
  else if (event.key === 'Backspace' && input.value === '' && this.internalValues.length > 0) {
7973
8221
  if (this.getChipDisabled(this.internalValues.length - 1))
@@ -7988,16 +8236,35 @@ class SdChipInput {
7988
8236
  }
7989
8237
  };
7990
8238
  handleInput = (event) => {
7991
- this.inputValue = event.target.value;
8239
+ const value = event.target.value;
8240
+ const wasEmpty = this.inputValue === '';
8241
+ const isEmpty = value === '';
8242
+ if (wasEmpty !== isEmpty) {
8243
+ this.activeSuggestionIndex = -1;
8244
+ if (isEmpty) {
8245
+ this.suppressRecommendations = false;
8246
+ }
8247
+ }
8248
+ this.inputValue = value;
8249
+ this.suppressSuggestions = false;
8250
+ this.inputEvent.emit(value);
7992
8251
  };
7993
8252
  handleFocus = () => {
7994
8253
  this.focused = true;
8254
+ this.suppressRecommendations = false;
7995
8255
  this.focusEvent.emit();
7996
8256
  };
7997
8257
  handleBlur = () => {
7998
8258
  this.focused = false;
8259
+ this.activeSuggestionIndex = -1;
7999
8260
  this.blurEvent.emit();
8000
8261
  };
8262
+ closeSuggestions = () => {
8263
+ this.focused = false;
8264
+ this.activeSuggestionIndex = -1;
8265
+ this.suppressSuggestions = true;
8266
+ this.suppressRecommendations = true;
8267
+ };
8001
8268
  handleContainerClick = () => {
8002
8269
  if (!this.disabled) {
8003
8270
  this.inputEl?.focus();
@@ -8054,8 +8321,84 @@ class SdChipInput {
8054
8321
  '--sd-chip-input-field-font-weight': CHIP_TYPOGRAPHY.focus.fontWeight,
8055
8322
  '--sd-chip-input-field-line-height': CHIP_TYPOGRAPHY.focus.lineHeight,
8056
8323
  '--sd-chip-input-field-font-family': CHIP_TYPOGRAPHY.focus.fontFamily,
8324
+ '--sd-chip-input-max-count-font-size': CHIP_INPUT_MAX_COUNT.fontSize,
8325
+ '--sd-chip-input-max-count-font-weight': CHIP_INPUT_MAX_COUNT.fontWeight,
8326
+ '--sd-chip-input-max-count-color': CHIP_INPUT_MAX_COUNT.color,
8327
+ '--sd-chip-input-suggestions-radius': CHIP_INPUT_SUGGESTIONS.radius,
8328
+ '--sd-chip-input-suggestions-max-height': CHIP_INPUT_SUGGESTIONS.maxHeight,
8329
+ '--sd-chip-input-suggestion-padding-y': CHIP_INPUT_SUGGESTIONS.itemPaddingY,
8330
+ '--sd-chip-input-suggestion-padding-x': CHIP_INPUT_SUGGESTIONS.itemPaddingX,
8331
+ '--sd-chip-input-suggestion-padding-right': CHIP_INPUT_SUGGESTIONS.itemPaddingRight,
8332
+ '--sd-chip-input-suggestion-gap': CHIP_INPUT_SUGGESTIONS.itemGap,
8333
+ '--sd-chip-input-suggestion-font-size': CHIP_INPUT_SUGGESTIONS.itemFontSize,
8334
+ '--sd-chip-input-suggestion-font-weight': CHIP_INPUT_SUGGESTIONS.itemFontWeight,
8335
+ '--sd-chip-input-suggestion-font-weight-selected': CHIP_INPUT_SUGGESTIONS.itemFontWeightSelected,
8336
+ '--sd-chip-input-suggestion-line-height': CHIP_INPUT_SUGGESTIONS.itemLineHeight,
8337
+ '--sd-chip-input-suggestion-font-family': CHIP_INPUT_SUGGESTIONS.itemFontFamily,
8338
+ '--sd-chip-input-suggestion-color': CHIP_INPUT_SUGGESTIONS.itemColor,
8339
+ '--sd-chip-input-suggestion-color-hover': CHIP_INPUT_SUGGESTIONS.itemColorHover,
8340
+ '--sd-chip-input-suggestion-bg-hover': CHIP_INPUT_SUGGESTIONS.itemBgHover,
8341
+ '--sd-chip-input-suggestions-empty-color': CHIP_INPUT_SUGGESTIONS.emptyColor,
8342
+ '--sd-chip-input-suggestions-empty-font-size': CHIP_INPUT_SUGGESTIONS.emptyFontSize,
8343
+ '--sd-chip-input-suggestions-empty-line-height': CHIP_INPUT_SUGGESTIONS.emptyLineHeight,
8344
+ };
8345
+ const isMaxReached = this.maxCount != null && this.internalValues.length >= this.maxCount;
8346
+ const showResetArea = (this.useReset && this.internalValues.length > 0) || this.maxCount != null;
8347
+ const suggestions = this.suggestions ?? [];
8348
+ const recommendedItems = this.recommendedItems ?? [];
8349
+ const showAutocomplete = this.focused &&
8350
+ this.inputValue !== '' &&
8351
+ !this.suppressSuggestions &&
8352
+ (suggestions.length > 0 || this.loadingSuggestions);
8353
+ const showRecommendations = this.focused &&
8354
+ this.inputValue === '' &&
8355
+ !this.suppressRecommendations &&
8356
+ (recommendedItems.length > 0 || this.loadingRecommendedItems);
8357
+ const showDropdown = showAutocomplete || showRecommendations;
8358
+ const dropdownItems = showAutocomplete ? suggestions : recommendedItems;
8359
+ const isDropdownLoading = showAutocomplete
8360
+ ? this.loadingSuggestions && suggestions.length === 0
8361
+ : this.loadingRecommendedItems && recommendedItems.length === 0;
8362
+ const suggestionBoxStyle = {
8363
+ width: `${this.chipInputRef?.offsetWidth ?? 0}px`,
8364
+ display: 'flex',
8365
+ flexDirection: 'column',
8366
+ boxSizing: 'border-box',
8367
+ background: '#FFFFFF',
8368
+ borderRadius: CHIP_INPUT_SUGGESTIONS.radius,
8369
+ boxShadow: '2px 2px 12px 2px rgba(0, 0, 0, 0.1)',
8370
+ maxHeight: CHIP_INPUT_SUGGESTIONS.maxHeight,
8371
+ minHeight: '0',
8372
+ overflowY: 'auto',
8373
+ overflowX: 'hidden',
8374
+ outline: 'none',
8375
+ };
8376
+ const suggestionItemStyle = {
8377
+ display: 'flex',
8378
+ alignItems: 'center',
8379
+ gap: CHIP_INPUT_SUGGESTIONS.itemGap,
8380
+ padding: `${CHIP_INPUT_SUGGESTIONS.itemPaddingY} ${CHIP_INPUT_SUGGESTIONS.itemPaddingRight} ` +
8381
+ `${CHIP_INPUT_SUGGESTIONS.itemPaddingY} ${CHIP_INPUT_SUGGESTIONS.itemPaddingX}`,
8382
+ fontSize: CHIP_INPUT_SUGGESTIONS.itemFontSize,
8383
+ lineHeight: CHIP_INPUT_SUGGESTIONS.itemLineHeight,
8384
+ fontWeight: CHIP_INPUT_SUGGESTIONS.itemFontWeight,
8385
+ fontFamily: CHIP_INPUT_SUGGESTIONS.itemFontFamily,
8386
+ color: CHIP_INPUT_SUGGESTIONS.itemColor,
8387
+ cursor: 'pointer',
8388
+ userSelect: 'none',
8389
+ whiteSpace: 'nowrap',
8390
+ overflow: 'hidden',
8391
+ textOverflow: 'ellipsis',
8057
8392
  };
8058
- return (hAsync("sd-field", { key: 'ea69cfd9fd589f3657f3dff1f73196f684d35d80', name: this.name, label: this.label, labelWidth: this.labelWidth, hint: this.hint, errorMessage: this.errorMessage, rules: this.rules, error: this.error, disabled: this.disabled, focused: this.focused, hovered: this.hovered, status: this.status, size: this.size, width: this.width, icon: this.icon, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), style: cssVars, onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false) }, hAsync("div", { key: 'b4948c02ea157000002661ca9374b300af5e71a8', class: "sd-chip-input", onClick: this.handleContainerClick }, (this.internalValues ?? []).map((value, i) => (hAsync("sd-chip", { key: i, value: value, error: this.getChipError(i), disabled: this.getChipDisabled(i), editable: false, onSdRemove: () => this.handleChipRemove(i) }))), hAsync("div", { key: 'ad36a2c8dd5b8d8ad00d7130da75e92a1fb3b350', class: {
8393
+ const suggestionEmptyStyle = {
8394
+ padding: '12px',
8395
+ textAlign: 'center',
8396
+ fontSize: CHIP_INPUT_SUGGESTIONS.emptyFontSize,
8397
+ lineHeight: CHIP_INPUT_SUGGESTIONS.emptyLineHeight,
8398
+ fontFamily: CHIP_INPUT_SUGGESTIONS.itemFontFamily,
8399
+ color: CHIP_INPUT_SUGGESTIONS.emptyColor,
8400
+ };
8401
+ return (hAsync("sd-field", { key: '6ff0688cd9a076cd81693364bfeb6a98b5bf018e', name: this.name, label: this.label, labelWidth: this.labelWidth, hint: this.hint, errorMessage: this.errorMessage, rules: this.rules, error: this.error, disabled: this.disabled, focused: this.focused, hovered: this.hovered, status: this.status, size: this.size, width: this.width, icon: this.icon, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), style: cssVars, onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false) }, hAsync("div", { key: '0c6ae92de4dcb44ed4fbcd12f1dddef93cec12db', class: "sd-chip-input", ref: el => (this.chipInputRef = el), onClick: this.handleContainerClick }, (this.internalValues ?? []).map((value, i) => (hAsync("sd-chip", { key: i, value: value, error: this.getChipError(i), disabled: this.getChipDisabled(i), editable: false, onSdRemove: () => this.handleChipRemove(i) }))), !isMaxReached && (hAsync("div", { key: 'df111f3110b444ed296db8c6b7f00d9209f858af', class: {
8059
8402
  'sd-chip-input__field': true,
8060
8403
  'sd-chip-input__field--filled': this.inputValue !== '',
8061
8404
  'sd-chip-input__field--empty': this.inputValue === '' && this.internalValues.length > 0 && !this.focused,
@@ -8063,7 +8406,20 @@ class SdChipInput {
8063
8406
  ? this.inputValue
8064
8407
  : this.internalValues.length === 0
8065
8408
  ? this.placeholder
8066
- : '' }, hAsync("input", { key: '6ea7cdaa1011543b6c7784561d3752e4ed4a9d7d', ref: el => (this.inputEl = el), class: "sd-chip-input__input", placeholder: this.internalValues.length === 0 ? this.placeholder : '', disabled: this.disabled, size: 1, onInput: this.handleInput, onKeyDown: this.handleKeyDown, onFocus: this.handleFocus, onBlur: this.handleBlur })), this.useReset && this.internalValues.length > 0 && (hAsync("div", { key: '65c366e84ba427704a9c89f6f5c6fdeeb5889554', class: "sd-chip-input__reset" }, this.inputValue === '' && hAsync("span", { key: 'e78f17df8e2fd9a91cc5f0450d22542720adef1b', class: "sd-chip-input__divider" }), hAsync("sd-text-link", { key: '298bd3ce40e0c0c4b91337548d6c6887d5239ccc', icon: "reset", iconColor: CHIP_INPUT_RESET.iconColor, label: "\uC785\uB825 \uCD08\uAE30\uD654", underline: true, disabled: this.disabled, style: { '--sd-text-link-color': CHIP_INPUT_RESET.labelColor }, onSdClick: this.handleResetInput }))))));
8409
+ : '' }, hAsync("input", { key: '8e170c84cedab36edbdd0a84e7e2e1ac0fba9632', ref: el => (this.inputEl = el), class: "sd-chip-input__input", placeholder: this.internalValues.length === 0 ? this.placeholder : '', disabled: this.disabled, size: 1, onInput: this.handleInput, onKeyDown: this.handleKeyDown, onFocus: this.handleFocus, onBlur: this.handleBlur }))), showResetArea && (hAsync("div", { key: '5b30bb4f89c9d3c9b18870acccad22bd97e1d748', class: "sd-chip-input__reset" }, this.inputValue === '' && hAsync("span", { key: '6fbf74a5a77b70789a609d28f5c4b6dd2aab57ef', class: "sd-chip-input__divider" }), this.maxCount != null && (hAsync("span", { key: 'fbb21a27bdd2aa38870cfd8d16b7e5293769eaf3', class: "sd-chip-input__max-count" }, "\uCD5C\uB300 ", this.maxCount, "\uAC1C")), this.useReset && this.internalValues.length > 0 && (hAsync("sd-text-link", { key: '83626145602b13d7a00ef955a6db59f41c152529', icon: "reset", iconColor: CHIP_INPUT_RESET.iconColor, label: "\uC785\uB825 \uCD08\uAE30\uD654", underline: true, disabled: this.disabled, style: { '--sd-text-link-color': CHIP_INPUT_RESET.labelColor }, onSdClick: this.handleResetInput })))), showDropdown && (hAsync("sd-portal", { key: '1682a89b513098f192f776af782aa9ee432574e8', open: showDropdown, parentRef: this.chipInputRef ?? null, viewportPadding: SdChipInput.SUGGESTIONS_VIEWPORT_PADDING, onSdClose: this.closeSuggestions }, hAsync("div", { key: '3efb484bd5616e411824f7014a759a34a9e93d8b', class: "sd-chip-input__suggestions", role: "listbox", style: suggestionBoxStyle }, isDropdownLoading && (hAsync("div", { key: 'b5b1d5e6db03f6fe60864b6c19e9b2c753468447', class: "sd-chip-input__suggestions-empty", style: suggestionEmptyStyle }, "\uBD88\uB7EC\uC624\uB294 \uC911...")), dropdownItems.map((item, i) => (hAsync("div", { key: item, class: {
8410
+ 'sd-chip-input__suggestion-item': true,
8411
+ 'sd-chip-input__suggestion-item--active': i === this.activeSuggestionIndex,
8412
+ }, role: "option", tabIndex: -1, "aria-selected": i === this.activeSuggestionIndex, style: i === this.activeSuggestionIndex
8413
+ ? {
8414
+ ...suggestionItemStyle,
8415
+ background: CHIP_INPUT_SUGGESTIONS.itemBgHover,
8416
+ color: CHIP_INPUT_SUGGESTIONS.itemColorHover,
8417
+ fontWeight: CHIP_INPUT_SUGGESTIONS.itemFontWeightSelected,
8418
+ }
8419
+ : suggestionItemStyle, onMouseDown: e => {
8420
+ e.preventDefault();
8421
+ this.addChip(item);
8422
+ } }, item)))))))));
8067
8423
  }
8068
8424
  static get watchers() { return {
8069
8425
  "values": [{
@@ -8071,6 +8427,12 @@ class SdChipInput {
8071
8427
  }],
8072
8428
  "errors": [{
8073
8429
  "errorsChanged": 0
8430
+ }],
8431
+ "suggestions": [{
8432
+ "suggestionsChanged": 0
8433
+ }],
8434
+ "recommendedItems": [{
8435
+ "recommendedItemsChanged": 0
8074
8436
  }]
8075
8437
  }; }
8076
8438
  static get style() { return sdChipInputCss(); }
@@ -8088,6 +8450,11 @@ class SdChipInput {
8088
8450
  "rules": [16],
8089
8451
  "error": [1028],
8090
8452
  "useReset": [4, "use-reset"],
8453
+ "maxCount": [2, "max-count"],
8454
+ "suggestions": [1040],
8455
+ "loadingSuggestions": [4, "loading-suggestions"],
8456
+ "recommendedItems": [1040],
8457
+ "loadingRecommendedItems": [4, "loading-recommended-items"],
8091
8458
  "label": [1],
8092
8459
  "labelWidth": [8, "label-width"],
8093
8460
  "hint": [1],
@@ -8102,6 +8469,9 @@ class SdChipInput {
8102
8469
  "focused": [32],
8103
8470
  "hovered": [32],
8104
8471
  "inputValue": [32],
8472
+ "activeSuggestionIndex": [32],
8473
+ "suppressSuggestions": [32],
8474
+ "suppressRecommendations": [32],
8105
8475
  "sdValidate": [64],
8106
8476
  "sdReset": [64],
8107
8477
  "sdResetValidate": [64],
@@ -8145,42 +8515,6 @@ var progressTokens = {
8145
8515
  progress: progress
8146
8516
  };
8147
8517
 
8148
- const color = {
8149
- bg: {
8150
- frame: "#FFFFFF",
8151
- accent: {
8152
- "default": "#0075FF"}},
8153
- fg: {
8154
- primary: "#222222",
8155
- secondary: "#555555",
8156
- tertiary: "#888888",
8157
- success: "#00973C",
8158
- accent: "#0075FF",
8159
- inverse: "#FFFFFF"
8160
- },
8161
- divider: {
8162
- "default": "#E1E1E1"
8163
- },
8164
- blue: {
8165
- strong: "#0075FF"},
8166
- darkblue: {
8167
- strong: "#006AC1"},
8168
- grey: {
8169
- strong: "#737373"}};
8170
- const shadow = {
8171
- spread: {
8172
- md: {
8173
- x: "0",
8174
- y: "0",
8175
- blur: "24",
8176
- spread: "0",
8177
- color: "rgba(34,34,34,0.2)"}
8178
- }};
8179
- var systemTokens = {
8180
- color: color,
8181
- shadow: shadow
8182
- };
8183
-
8184
8518
  const CIRCLE_PROGRESS_LABEL_COLOR = progressTokens.progress.color.label;
8185
8519
  const CIRCLE_PROGRESS_PERCENT_ZERO_COLOR = systemTokens.color.fg.tertiary;
8186
8520
  // TODO: error/complete 색상 및 inverse 흰색은 토큰 반영 후 교체
@@ -8239,7 +8573,7 @@ class SdCircleProgress {
8239
8573
  }
8240
8574
  const c = CIRCLE_PROGRESS_VIEWBOX_SIZE / 2;
8241
8575
  const showPercent = !this.indeterminate;
8242
- return (hAsync(Host, { key: '46d74c0edb5a5e8cd0472c83efc45a0efaf353b4', style: hostStyle }, hAsync("svg", { key: '34117c89eb180370a215807e614ad08f4f72b517', class: "sd-circle-progress", viewBox: `0 0 ${CIRCLE_PROGRESS_VIEWBOX_SIZE} ${CIRCLE_PROGRESS_VIEWBOX_SIZE}`, xmlns: "http://www.w3.org/2000/svg" }, hAsync("circle", { key: '08ac6f011b6a4b6744ddcf437b1e0a5b96abfc6e', class: "sd-circle-progress__track", cx: c, cy: c, r: CIRCLE_PROGRESS_RADIUS, fill: "none", "stroke-width": CIRCLE_PROGRESS_STROKE_WIDTH }), hAsync("circle", { key: '5ae0a53ce10bd5a8b2f316ebd00d3ee28c4336d6', class: "sd-circle-progress__arc", cx: c, cy: c, r: CIRCLE_PROGRESS_RADIUS, fill: "none", "stroke-width": CIRCLE_PROGRESS_STROKE_WIDTH, "stroke-linecap": "round", style: arcStyle })), showPercent && (hAsync("span", { key: 'fd52ee1947d41b2117c9ea6e4cc9a448799342e3', class: "sd-circle-progress__percent" }, Math.round(this.clampedValue), "%")), this.label && hAsync("span", { key: 'a58776c4ef67eb900eba97ff4fed138c8f5e8452', class: "sd-circle-progress__label" }, this.label)));
8576
+ return (hAsync(Host, { key: '35b4dc433f5e2bbd02dc3422b286da179472082f', style: hostStyle }, hAsync("svg", { key: 'de1d3e44eccf421491a1107ba234e1562917945b', class: "sd-circle-progress", viewBox: `0 0 ${CIRCLE_PROGRESS_VIEWBOX_SIZE} ${CIRCLE_PROGRESS_VIEWBOX_SIZE}`, xmlns: "http://www.w3.org/2000/svg" }, hAsync("circle", { key: 'b0a54a2e155222a416a6bdcb75f4fe54d9de8270', class: "sd-circle-progress__track", cx: c, cy: c, r: CIRCLE_PROGRESS_RADIUS, fill: "none", "stroke-width": CIRCLE_PROGRESS_STROKE_WIDTH }), hAsync("circle", { key: '6bc314b3fce758d41a3499e9d87b7158b15777a5', class: "sd-circle-progress__arc", cx: c, cy: c, r: CIRCLE_PROGRESS_RADIUS, fill: "none", "stroke-width": CIRCLE_PROGRESS_STROKE_WIDTH, "stroke-linecap": "round", style: arcStyle })), showPercent && (hAsync("span", { key: '16ec46b178d5f2f2f5ad245703c2f4362b8df261', class: "sd-circle-progress__percent" }, Math.round(this.clampedValue), "%")), this.label && hAsync("span", { key: 'c199799d2466c75f91f1bc1f20fdb7e71c64ba0e', class: "sd-circle-progress__label" }, this.label)));
8243
8577
  }
8244
8578
  static get style() { return sdCircleProgressCss(); }
8245
8579
  static get cmpMeta() { return {
@@ -8355,9 +8689,9 @@ class SdConfirmModal {
8355
8689
  const type = this.resolvedType;
8356
8690
  const iconName = CONFIRM_MODAL_ICON_MAP[type];
8357
8691
  const iconColor = CONFIRM_MODAL_ICON_COLOR[type];
8358
- return (hAsync("div", { key: '4d3ce0662b2d860a4ed6ae3c8177ae75dae4fb92', class: "sd-confirm-modal" }, hAsync("sd-ghost-button", { key: '7c406d59c2470b610a187bf45aa5cd4ab5c6b26b', class: "sd-confirm-modal__close-button", icon: "close", ariaLabel: "close", onClick: () => this.close.emit() }), iconName && (hAsync("sd-icon", { key: '10e3d2c8a87a728df4e3f3be7dfab96475738e2b', class: "sd-confirm-modal__icon", name: iconName, size: TITLE_ICON_SIZE, color: iconColor })), hAsync("h2", { key: '9cc844c8cefb2fd0dc96871b55fc1c7c6e41c526', class: `sd-confirm-modal__title ${this.titleClass ?? ''}` }, this.modalTitle), hAsync("div", { key: 'bbaa81a02c067d66c4cc19cf805b7a6939231311', class: "sd-confirm-modal__body" }, (this.topMessage ?? []).length > 0 && (hAsync("div", { key: '31734f096eee6e6a9be770eafa43066c8e763608', class: "sd-confirm-modal__message" }, (this.topMessage ?? []).map(msg => (hAsync("p", { class: "sd-confirm-modal__message-text", innerHTML: sanitizeInlineHtml(msg) }))))), this.showContentBox && (hAsync("div", { key: 'a10838fb7c7081fdaa85cdaa33f92ef30c00a888', class: "sd-confirm-modal__content-box" }, this.tagContents ? (hAsync("div", { class: "sd-confirm-modal__custom-content", ref: el => {
8692
+ return (hAsync("div", { key: '51fb051b436cc511aeac2f578832a267e12ef3c4', class: "sd-confirm-modal" }, hAsync("sd-ghost-button", { key: 'dd9605e312eac8b0602ec558ad5439ea3daa7aa7', class: "sd-confirm-modal__close-button", icon: "close", ariaLabel: "close", onClick: () => this.close.emit() }), iconName && (hAsync("sd-icon", { key: '5027ec2d03731338a9197f7b5b910d2adbf83f0e', class: "sd-confirm-modal__icon", name: iconName, size: TITLE_ICON_SIZE, color: iconColor })), hAsync("h2", { key: '8456707355cc779c169b56abc16b0949909b829e', class: `sd-confirm-modal__title ${this.titleClass ?? ''}` }, this.modalTitle), hAsync("div", { key: 'd11cb38e749f54ce5767ba9b5cca0129df742aca', class: "sd-confirm-modal__body" }, (this.topMessage ?? []).length > 0 && (hAsync("div", { key: 'de653458605a9591d7c66d644a143d0f33738b28', class: "sd-confirm-modal__message" }, (this.topMessage ?? []).map(msg => (hAsync("p", { class: "sd-confirm-modal__message-text", innerHTML: sanitizeInlineHtml(msg) }))))), this.showContentBox && (hAsync("div", { key: '0517e400485551ab21f0f5452af764b5ede7a76d', class: "sd-confirm-modal__content-box" }, this.tagContents ? (hAsync("div", { class: "sd-confirm-modal__custom-content", ref: el => {
8359
8693
  this.customContentRef = el;
8360
- } })) : (hAsync("slot", { onSlotchange: () => this.syncHasSlottedContent() }, this.tagLabel && (hAsync("sd-tag", { name: this.tagPreset ?? 'square_sm_grey', label: this.tagLabel })), this.slotLabel && (hAsync("span", { class: "sd-confirm-modal__slot-label" }, this.slotLabel)))))), (this.bottomMessage ?? []).length > 0 && (hAsync("div", { key: '540f3bb73aa61a1a2a041eba9a22a198c7772914', class: "sd-confirm-modal__message" }, (this.bottomMessage ?? []).map(msg => (hAsync("p", { class: "sd-confirm-modal__message-text", innerHTML: sanitizeInlineHtml(msg) })))))), hAsync("div", { key: '1944aeb4d140c779d0af1304160a86c5056335a8', class: "sd-confirm-modal__button" }, this.subButtonLabel && (hAsync("sd-button", { key: 'efd463686d98e9d2edc3e1cd7b4f54d8da4fef56', name: SUB_BUTTON_PRESET, label: this.subButtonLabel, onSdClick: () => this.cancel.emit() })), hAsync("sd-button", { key: 'b9033fb98acf3de36b7fb3e1969ccf5a7becef39', name: this.resolvedMainButton, label: this.mainButtonLabel ?? '확인', onSdClick: () => this.ok.emit() }))));
8694
+ } })) : (hAsync("slot", { onSlotchange: () => this.syncHasSlottedContent() }, this.tagLabel && (hAsync("sd-tag", { name: this.tagPreset ?? 'square_sm_grey', label: this.tagLabel })), this.slotLabel && (hAsync("span", { class: "sd-confirm-modal__slot-label" }, this.slotLabel)))))), (this.bottomMessage ?? []).length > 0 && (hAsync("div", { key: 'd542a08caee30ed7eb1d22ed85a51be6e1f6855e', class: "sd-confirm-modal__message" }, (this.bottomMessage ?? []).map(msg => (hAsync("p", { class: "sd-confirm-modal__message-text", innerHTML: sanitizeInlineHtml(msg) })))))), hAsync("div", { key: '02d012e899969ee55cba43c11d9caeaaff65a348', class: "sd-confirm-modal__button" }, this.subButtonLabel && (hAsync("sd-button", { key: 'fd50d151e515646e5bef5658a1b05b2e26b21461', name: SUB_BUTTON_PRESET, label: this.subButtonLabel, onSdClick: () => this.cancel.emit() })), hAsync("sd-button", { key: '0c2092edf0866a8b1f4f432b176d78eedd9655d6', name: this.resolvedMainButton, label: this.mainButtonLabel ?? '확인', onSdClick: () => this.ok.emit() }))));
8361
8695
  }
8362
8696
  static get style() { return sdConfirmModalCss(); }
8363
8697
  static get cmpMeta() { return {
@@ -8644,9 +8978,9 @@ class SdDatePicker {
8644
8978
  '--sd-system-color-field-border-focus': DATEPICKER_COLORS.border.focus,
8645
8979
  '--sd-system-color-field-bg-default': DATEPICKER_COLORS.bg.default,
8646
8980
  };
8647
- return (hAsync("sd-field", { key: 'baa957e5534b6587da2ef067ecad4a0934693800', name: this.name, label: this.label, labelWidth: this.labelWidth, addonLabel: this.addonLabel, addonAlign: this.addonAlign, hint: this.hint, errorMessage: this.errorMessage, width: this.width, rules: this.rules, error: this.error, disabled: this.disabled, focused: this.focused, hovered: this.hovered, size: this.size, icon: this.icon, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false), style: cssVars }, hAsync("div", { key: '652f9f5c6bd5c6ee58f3c89eee45325a98234ac0', class: "sd-date-picker", ref: el => {
8981
+ return (hAsync("sd-field", { key: '9e1e5cb7419027db803248a657d0d134be049637', name: this.name, label: this.label, labelWidth: this.labelWidth, addonLabel: this.addonLabel, addonAlign: this.addonAlign, hint: this.hint, errorMessage: this.errorMessage, width: this.width, rules: this.rules, error: this.error, disabled: this.disabled, focused: this.focused, hovered: this.hovered, size: this.size, icon: this.icon, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false), style: cssVars }, hAsync("div", { key: 'fbd9adeaa08d19cac34b045aba2b3fbb8d4adc8c', class: "sd-date-picker", ref: el => {
8648
8982
  this.triggerRef = el;
8649
- } }, hAsync("sd-date-picker-trigger", { key: '7b0f81badbcf7ca283afd274b4572e4a6eaa590b', displayText: this.value ?? '', placeholder: this.placeholder, disabled: this.disabled, size: this.size, onSdTriggerClick: this.handleTriggerClick })), (this.isOpen || this.isAnimatingOut) && (hAsync("sd-portal", { key: '65fbe892e4cdd9d643b5000d69220b5e28972902', open: this.isOpen, parentRef: this.triggerRef, onSdClose: () => this.closeDropdown() }, hAsync("sd-calendar", { key: 'e9187264f336295907f1d5574810df4a07a0f114', elevated: true, value: this.value, selectable: this.selectable, onSdUpdate: this.handleSelect, onSdViewChange: this.handleViewChange })))));
8983
+ } }, hAsync("sd-date-picker-trigger", { key: 'd51161c4b1eedcfd90832c9b6d049559ff5df08b', displayText: this.value ?? '', placeholder: this.placeholder, disabled: this.disabled, size: this.size, onSdTriggerClick: this.handleTriggerClick })), (this.isOpen || this.isAnimatingOut) && (hAsync("sd-portal", { key: 'd6588d3991eff39eb717d4211b38d68f093aace5', open: this.isOpen, parentRef: this.triggerRef, onSdClose: () => this.closeDropdown() }, hAsync("sd-calendar", { key: '0dc6a8074fcfa63630aab7f0b126caa9f4c7b234', elevated: true, value: this.value, selectable: this.selectable, onSdUpdate: this.handleSelect, onSdViewChange: this.handleViewChange })))));
8650
8984
  }
8651
8985
  static get watchers() { return {
8652
8986
  "isOpen": [{
@@ -8729,7 +9063,7 @@ class SdDatePickerTrigger {
8729
9063
  ? DATEPICKER_COLORS.icon.disabled
8730
9064
  : DATEPICKER_COLORS.icon.default,
8731
9065
  };
8732
- return (hAsync("div", { key: '87ada0414ffc6404b27cf4a41ba7c9cb9903f498', role: "button", tabindex: this.disabled ? -1 : 0, class: {
9066
+ return (hAsync("div", { key: '8ce4e5a7f355e15ad6662efc5d1a697c2f78d455', role: "button", tabindex: this.disabled ? -1 : 0, class: {
8733
9067
  'sd-date-picker-trigger': true,
8734
9068
  'sd-date-picker-trigger--disabled': this.disabled,
8735
9069
  }, style: cssVars, onClick: this.handleClick, onKeyDown: e => {
@@ -8737,7 +9071,7 @@ class SdDatePickerTrigger {
8737
9071
  e.preventDefault();
8738
9072
  this.handleClick();
8739
9073
  }
8740
- } }, hAsync("sd-icon", { key: 'e8eee3ed97ab7344e7658b7b22bc91f11aa0b068', name: "date", size: Number(sizeTokens.iconSize), color: "var(--trigger-icon-color)", class: "sd-date-picker-trigger__icon" }), hAsync("span", { key: 'ea25a13a72d00ca31fcddaf0183b520175ef7d93', class: "sd-date-picker-trigger__text" }, hasValue ? this.displayText : this.placeholder)));
9074
+ } }, hAsync("sd-icon", { key: '31d360adaf1a8a0d613d3809be7c724be9d7a29a', name: "date", size: Number(sizeTokens.iconSize), color: "var(--trigger-icon-color)", class: "sd-date-picker-trigger__icon" }), hAsync("span", { key: 'cf17fb4d5fdaadd99847ec9ce5440214c10a5797', class: "sd-date-picker-trigger__text" }, hasValue ? this.displayText : this.placeholder)));
8741
9075
  }
8742
9076
  static get style() { return sdDatePickerTriggerCss(); }
8743
9077
  static get cmpMeta() { return {
@@ -9157,7 +9491,7 @@ class SdDateRangePickerCalendar {
9157
9491
  '--range-panel-gap': `${RANGE_LAYOUT.panelGap}px`,
9158
9492
  '--range-divider': RANGE_LAYOUT.divider,
9159
9493
  };
9160
- return (hAsync(Fragment, { key: '91ba95cf0786d59363ac6b72e9c8f91d1802feee' }, hAsync("div", { key: '98f66737a15e5c3129dd20f674736115a4fad42e', class: "sd-date-range-picker-calendar", style: cssVars }, this.renderYearNav(), hAsync("div", { key: 'd9f326b485864484ed786cb172d3bd33136987ea', class: "sd-date-range-picker-calendar__panels" }, this.renderPanel(this.currentYear, this.currentMonth, true), hAsync("span", { key: 'df7d835ac0da6788f08c7963ed04ed98b7fd6091', class: "sd-date-range-picker-calendar__divider", "aria-hidden": "true" }), this.renderPanel(this.rightYear, this.rightMonth, false)))));
9494
+ return (hAsync(Fragment, { key: '71f25effececd0b83d9b33201230dc615ba87a30' }, hAsync("div", { key: 'f075474fb0be9f8e8562a013532b3cdbaadee069', class: "sd-date-range-picker-calendar", style: cssVars }, this.renderYearNav(), hAsync("div", { key: '4dfa1d65b971f7d80f0799482c8ce41522200a94', class: "sd-date-range-picker-calendar__panels" }, this.renderPanel(this.currentYear, this.currentMonth, true), hAsync("span", { key: '20149f97a5115115cc49894383ca7f989ba2b904', class: "sd-date-range-picker-calendar__divider", "aria-hidden": "true" }), this.renderPanel(this.rightYear, this.rightMonth, false)))));
9161
9495
  }
9162
9496
  static get watchers() { return {
9163
9497
  "value": [{
@@ -9200,7 +9534,7 @@ class SdDivider {
9200
9534
  const hostStyle = {
9201
9535
  '--sd-divider-color': DIVIDER_COLORS.default,
9202
9536
  };
9203
- return (hAsync(Host, { key: '8282aae8e5cd26630c54f4347cd26f544672d15d', style: hostStyle }, hAsync("hr", { key: '94df7dc7465b05ecad6527da2c008a4ff503f034', "aria-orientation": this.vertical ? 'vertical' : 'horizontal' })));
9537
+ return (hAsync(Host, { key: '886ca68599a925678d7c598daeff3bf653db513d', style: hostStyle }, hAsync("hr", { key: 'e213413f041cda5d18a74f8c0225c840d92f7dac', "aria-orientation": this.vertical ? 'vertical' : 'horizontal' })));
9204
9538
  }
9205
9539
  static get style() { return sdDividerCss(); }
9206
9540
  static get cmpMeta() { return {
@@ -9353,6 +9687,13 @@ const DROPDOWN_CHEVRON_ICON_SIZE = {
9353
9687
  sm: 12,
9354
9688
  md: 16,
9355
9689
  };
9690
+ // 버튼 자체의 min-width (px). split 여부에 따라 chevron 버튼이 추가되므로 별도 값을 지정.
9691
+ // TODO: 디자인 토큰으로 관리될 때 대체 예정
9692
+ const DROPDOWN_BUTTON_MIN_WIDTH = {
9693
+ xs: { default: 44, split: 60 },
9694
+ sm: { default: 70, split: 76 },
9695
+ md: { default: 100, split: 106 },
9696
+ };
9356
9697
  const DROPDOWN_DISABLED_BACKGROUND = buttonTokens.button.bg.disabled;
9357
9698
  const DROPDOWN_DISABLED_TEXT = buttonTokens.button.text.disabled;
9358
9699
  const DROPDOWN_DISABLED_ICON = buttonTokens.button.icon.disabled;
@@ -9381,6 +9722,7 @@ class SdDropdownButton extends BaseDropdownEvent {
9381
9722
  isAnimatingOut = false;
9382
9723
  itemIndex = -1;
9383
9724
  triggerRef;
9725
+ splitContainerRef;
9384
9726
  menuRef;
9385
9727
  closeAnimationTimer;
9386
9728
  click;
@@ -9559,10 +9901,11 @@ class SdDropdownButton extends BaseDropdownEvent {
9559
9901
  return classes.join(' ');
9560
9902
  }
9561
9903
  renderDropdown(preset) {
9562
- if ((!this.isOpen && !this.isAnimatingOut) || !this.triggerRef)
9904
+ const anchorRef = this.split ? this.splitContainerRef : this.triggerRef;
9905
+ if ((!this.isOpen && !this.isAnimatingOut) || !anchorRef)
9563
9906
  return null;
9564
- return (hAsync("sd-portal", { open: this.isOpen, parentRef: this.triggerRef, onSdClose: this.closeDropdown }, hAsync("div", { style: { position: 'absolute', width: '0px', height: '0px' } }, hAsync("div", { class: "sd-dropdown-button__menu", role: "menu", ref: el => (this.menuRef = el), style: {
9565
- '--sd-dropdown-button-menu-min-width': `${this.triggerRef.offsetWidth}px`,
9907
+ return (hAsync("sd-portal", { open: this.isOpen, parentRef: anchorRef, onSdClose: this.closeDropdown }, hAsync("div", { class: "sd-dropdown-button__menu", role: "menu", ref: el => (this.menuRef = el), style: {
9908
+ '--sd-dropdown-button-menu-min-width': `${anchorRef.offsetWidth}px`,
9566
9909
  '--sd-dropdown-button-menu-item-color': PRESET_MENU_ITEM_COLORS[preset],
9567
9910
  '--sd-dropdown-button-menu-item-active-bg': PRESET_MENU_ITEM_ACTIVE_BACKGROUNDS[preset],
9568
9911
  '--sd-dropdown-button-menu-item-active-color': PRESET_MENU_ITEM_ACTIVE_COLORS[preset],
@@ -9576,7 +9919,7 @@ class SdDropdownButton extends BaseDropdownEvent {
9576
9919
  this.itemIndex = index;
9577
9920
  }
9578
9921
  } }, item.icon && (hAsync("sd-icon", { class: "sd-dropdown-button__menu-item-icon", name: item.icon, size: 12, color: "var(--sd-dropdown-button-menu-item-current-color)" })), hAsync("span", { class: "sd-dropdown-button__menu-item-label", innerHTML: sanitizeInlineHtml(item.label) })));
9579
- })))));
9922
+ }))));
9580
9923
  }
9581
9924
  renderChevron(size) {
9582
9925
  const iconName = this.split ? 'etc' : 'caretDown';
@@ -9588,10 +9931,11 @@ class SdDropdownButton extends BaseDropdownEvent {
9588
9931
  render() {
9589
9932
  const { config, preset } = this.resolvedConfig;
9590
9933
  const triggerStyle = this.getTriggerStyle(config, preset);
9934
+ const minWidth = DROPDOWN_BUTTON_MIN_WIDTH[config.size];
9591
9935
  if (this.split) {
9592
- return (hAsync("div", { class: "sd-dropdown-button sd-dropdown-button--split" }, hAsync("button", { type: "button", class: this.getTriggerClasses(preset, config.size, this.disabled, this.isOpen, 'label'), disabled: this.disabled, onClick: this.handleButtonClick, style: triggerStyle }, hAsync("span", { class: "sd-dropdown-button__trigger-label" }, this.label)), hAsync("button", { type: "button", class: this.getTriggerClasses(preset, config.size, this.disabled, this.isOpen, 'chevron'), disabled: this.disabled, "aria-haspopup": "menu", "aria-expanded": String(this.isOpen), "aria-label": "dropdown toggle", onClick: this.toggleDropdown, ref: el => (this.triggerRef = el), style: triggerStyle }, this.renderChevron(config.size)), this.renderDropdown(preset)));
9936
+ return (hAsync("div", { class: "sd-dropdown-button sd-dropdown-button--split", ref: el => (this.splitContainerRef = el), style: { minWidth: `${minWidth.split}px` } }, hAsync("button", { type: "button", class: this.getTriggerClasses(preset, config.size, this.disabled, this.isOpen, 'label'), disabled: this.disabled, onClick: this.handleButtonClick, style: triggerStyle }, hAsync("span", { class: "sd-dropdown-button__trigger-label" }, this.label)), hAsync("button", { type: "button", class: this.getTriggerClasses(preset, config.size, this.disabled, this.isOpen, 'chevron'), disabled: this.disabled, "aria-haspopup": "menu", "aria-expanded": String(this.isOpen), "aria-label": "dropdown toggle", onClick: this.toggleDropdown, ref: el => (this.triggerRef = el), style: triggerStyle }, this.renderChevron(config.size)), this.renderDropdown(preset)));
9593
9937
  }
9594
- return (hAsync("div", { class: "sd-dropdown-button" }, hAsync("button", { type: "button", class: this.getTriggerClasses(preset, config.size, this.disabled, this.isOpen), disabled: this.disabled, "aria-haspopup": "menu", "aria-expanded": String(this.isOpen), onClick: this.toggleDropdown, ref: el => (this.triggerRef = el), style: triggerStyle }, hAsync("span", { class: "sd-dropdown-button__trigger-label" }, this.label), this.renderChevron(config.size)), this.renderDropdown(preset)));
9938
+ return (hAsync("div", { class: "sd-dropdown-button" }, hAsync("button", { type: "button", class: this.getTriggerClasses(preset, config.size, this.disabled, this.isOpen), disabled: this.disabled, "aria-haspopup": "menu", "aria-expanded": String(this.isOpen), onClick: this.toggleDropdown, ref: el => (this.triggerRef = el), style: { ...triggerStyle, minWidth: `${minWidth.default}px` } }, hAsync("span", { class: "sd-dropdown-button__trigger-label" }, this.label), this.renderChevron(config.size)), this.renderDropdown(preset)));
9595
9939
  }
9596
9940
  static get watchers() { return {
9597
9941
  "isOpen": [{
@@ -9832,21 +10176,21 @@ class SdField {
9832
10176
  : {}),
9833
10177
  }
9834
10178
  : {};
9835
- return (hAsync("div", { key: 'a04858364c6b9afceedba2f5d7ee0e289a6b6782', class: {
10179
+ return (hAsync("div", { key: '9edafceb24a4fcde7cfb966f421bfb73f1b07617', class: {
9836
10180
  'sd-field': true,
9837
10181
  'sd-field--has-label': this.label !== '',
9838
10182
  'sd-field--has-addon': addon !== '',
9839
10183
  [this.fieldStatus]: this.fieldStatus !== '',
9840
- }, style: { ...sizeCssVars, ...labelCssVars, ...addonCssVars, ...messageCssVars } }, hAsync("div", { key: '898f5af4d213745257b2666cbea56db591792054', class: "sd-field__wrapper" }, this.renderLabel(this.label), hAsync("div", { key: '488ab5c290258d0139f677319f21a55bb6c63876', class: "sd-field__main", style: this.width !== '' && this.width !== 0
10184
+ }, style: { ...sizeCssVars, ...labelCssVars, ...addonCssVars, ...messageCssVars } }, hAsync("div", { key: 'e5c4a8aad05afb40f3eccc492135b2b968ffc646', class: "sd-field__wrapper" }, this.renderLabel(this.label), hAsync("div", { key: 'e88d62a979eaab9f6794c851813e5f56c3c5c4ac', class: "sd-field__main", style: this.width !== '' && this.width !== 0
9841
10185
  ? {
9842
10186
  width: typeof this.width === 'number' ? `${this.width}px` : this.width,
9843
10187
  flex: 'none',
9844
10188
  }
9845
- : {} }, hAsync("div", { key: 'db8c388dd2c4743a287f7567cde4015cafed1d95', class: {
10189
+ : {} }, hAsync("div", { key: 'be69d7e48d90dda0872ffc43c2a1b4044e99ac00', class: {
9846
10190
  'sd-field__control': true,
9847
10191
  'sd-field__control--has-addon': addon !== '',
9848
- } }, addon && (hAsync("div", { key: '1049369f52322fb1a4f1b4baf50b1e4ef2e9e59e', class: "sd-field__addon" }, this.icon && (hAsync("sd-icon", { key: 'f0a28d9bdf97730088454c64b71b7cbc1d4dd875', name: this.icon.name, size: this.icon.size ??
9849
- Number(FIELD_LABEL_SIZE_MAP[(this.size in FIELD_LABEL_SIZE_MAP ? this.size : 'sm')].icon), color: this.icon.color, rotate: this.icon.rotate })), addon)), hAsync("slot", { key: 'deee9ef5d166ab4d17451ad9d013b3b9d3d7aebe' })), this.errorMsg !== '' || this.errorMessage !== '' ? (hAsync("div", { class: "sd-field__error-message" }, this.errorMsg !== '' ? this.errorMsg : this.errorMessage)) : (this.hint !== '' && hAsync("div", { class: "sd-field__hint" }, this.hint))))));
10192
+ } }, addon && (hAsync("div", { key: '2c631ac0f8b9001cf6344908cf8cbcdf182cc1a7', class: "sd-field__addon" }, this.icon && (hAsync("sd-icon", { key: '34a49839ee200cd59c3ff5b84caf5ded2c50f7b0', name: this.icon.name, size: this.icon.size ??
10193
+ Number(FIELD_LABEL_SIZE_MAP[(this.size in FIELD_LABEL_SIZE_MAP ? this.size : 'sm')].icon), color: this.icon.color, rotate: this.icon.rotate })), addon)), hAsync("slot", { key: '693f20c529e5f2ea84d381e59327392edb7b4c15' })), this.errorMsg !== '' || this.errorMessage !== '' ? (hAsync("div", { class: "sd-field__error-message" }, this.errorMsg !== '' ? this.errorMsg : this.errorMessage)) : (this.hint !== '' && hAsync("div", { class: "sd-field__hint" }, this.hint))))));
9850
10194
  }
9851
10195
  renderLabel(label) {
9852
10196
  if (label == null || label === '')
@@ -10359,7 +10703,7 @@ class SdFloatingPopover {
10359
10703
  }
10360
10704
  }
10361
10705
  render() {
10362
- return hAsync("slot", { key: '7931b1b9ee17e2de64a7fa87658ec7d4501f7ecd' });
10706
+ return hAsync("slot", { key: 'f20806555ad198c33a62ec938ea7b77200fa1585' });
10363
10707
  }
10364
10708
  static get style() { return sdFloatingPortalCss(); }
10365
10709
  static get cmpMeta() { return {
@@ -11356,12 +11700,12 @@ class SdInput {
11356
11700
  '--sd-system-size-field-sm-height': `${sizeTokens.height}px`,
11357
11701
  '--sd-system-radius-field-sm': `${sizeTokens.radius}px`,
11358
11702
  };
11359
- return (hAsync("sd-field", { key: 'fce402fae267b5700501e44935f23bebc28efb62', name: this.name, label: this.label, labelWidth: this.labelWidth, addonLabel: this.addonLabel, addonAlign: this.addonAlign, hint: this.hint, errorMessage: this.errorMessage, width: this.width, rules: this.rules, error: this.error, disabled: this.disabled, readonly: this.readonly, focused: this.focused, hovered: this.hovered, status: this.status, size: this.size, icon: this.icon, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false), style: cssVars }, hAsync("label", { key: 'f7d8f95cf5ee38a7aa2e44940ba39b9eb001064c', class: "sd-input__content" }, hAsync("slot", { key: '23f1f770a268a0798293420ce0df9e5cc94e07b2', name: "prefix" }), hAsync("input", { key: 'b8c041cc4a8761cf1cf93a8d1af139cd7720d2d8', name: this.name, ref: el => (this.nativeEl = el), class: `sd-input__native ${this.inputClass}`, type: this.type === 'password' && this.passwordVisible ? 'text' : (this.type ?? 'text'), value: this.internalValue || '', placeholder: this.placeholder ?? '입력해 주세요.', disabled: this.disabled, readonly: this.readonly, autofocus: this.autoFocus, autocomplete: this.autocomplete || undefined, maxlength: this.maxlength, minlength: this.minlength, inputmode: this.inputmode, enterkeyhint: this.enterkeyhint, spellcheck: this.spellcheck, onInput: this.handleInput, onFocus: event => this.handleFocus('focus', event), onBlur: event => this.handleFocus('blur', event), style: this.inputStyle }), hAsync("slot", { key: '5a288d50726b21c156da480937b9759e6c76d33a', name: "suffix" }), this.clearable && this.internalValue && !this.disabled && !this.readonly && (hAsync("sd-ghost-button", { key: 'b5315624a6fd5fdcb70526b1abea4fbac83641c1', icon: "close", ariaLabel: "clear", size: "xxs", disabled: this.disabled, class: "sd-input__clear-icon", onClick: async () => {
11703
+ return (hAsync("sd-field", { key: '64e7a3ba5e223341336248ba31e621b4416987fd', name: this.name, label: this.label, labelWidth: this.labelWidth, addonLabel: this.addonLabel, addonAlign: this.addonAlign, hint: this.hint, errorMessage: this.errorMessage, width: this.width, rules: this.rules, error: this.error, disabled: this.disabled, readonly: this.readonly, focused: this.focused, hovered: this.hovered, status: this.status, size: this.size, icon: this.icon, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false), style: cssVars }, hAsync("label", { key: 'b66e286c35cc14c1eb02badcaaff24b38ff0a7b3', class: "sd-input__content" }, hAsync("slot", { key: 'dc8b900eb2b38c18b85663bc930e810be77bdbd7', name: "prefix" }), hAsync("input", { key: '36d35464338838aaaeff6f728020241d33a493ec', name: this.name, ref: el => (this.nativeEl = el), class: `sd-input__native ${this.inputClass}`, type: this.type === 'password' && this.passwordVisible ? 'text' : (this.type ?? 'text'), value: this.internalValue || '', placeholder: this.placeholder ?? '입력해 주세요.', disabled: this.disabled, readonly: this.readonly, autofocus: this.autoFocus, autocomplete: this.autocomplete || undefined, maxlength: this.maxlength, minlength: this.minlength, inputmode: this.inputmode, enterkeyhint: this.enterkeyhint, spellcheck: this.spellcheck, onInput: this.handleInput, onFocus: event => this.handleFocus('focus', event), onBlur: event => this.handleFocus('blur', event), style: this.inputStyle }), hAsync("slot", { key: '4f30d4a59794c0692f367d41af4311e191c5427b', name: "suffix" }), this.clearable && this.internalValue && !this.disabled && !this.readonly && (hAsync("sd-ghost-button", { key: '247da41512f20d8e562f345b08bd5bc13486734b', icon: "close", ariaLabel: "clear", size: "xxs", disabled: this.disabled, class: "sd-input__clear-icon", onClick: async () => {
11360
11704
  if (this.disabled || this.readonly)
11361
11705
  return;
11362
11706
  this.internalValue = '';
11363
11707
  await this.formField?.sdValidate();
11364
- } })), this.type === 'password' && (hAsync("sd-ghost-button", { key: '5ae70d65c531db0bc57d17f85c328a275f7aab2b', icon: this.passwordVisible ? 'visibilityOn' : 'visibilityOff', ariaLabel: "visibility", size: "xxs", disabled: this.disabled || this.readonly, class: "sd-input__password-icon", onClick: () => {
11708
+ } })), this.type === 'password' && (hAsync("sd-ghost-button", { key: '70c596ef0072bf369bd59e2c58d0a6f8c6fd1b11', icon: this.passwordVisible ? 'visibilityOn' : 'visibilityOff', ariaLabel: "visibility", size: "xxs", disabled: this.disabled || this.readonly, class: "sd-input__password-icon", onClick: () => {
11365
11709
  if (this.disabled || this.readonly)
11366
11710
  return;
11367
11711
  this.passwordVisible = !this.passwordVisible;
@@ -11500,8 +11844,7 @@ const KEY_VALUE_TABLE_LAYOUT = {
11500
11844
  rowHeight: Number(t.keyValue.height),
11501
11845
  thWidth: 120,
11502
11846
  borderRadius: Number(t.radius),
11503
- paddingX: Number(t.body.paddingX),
11504
- paddingY: Number(t.keyValue.body.padding),
11847
+ padding: Number(t.keyValue.body.padding),
11505
11848
  helpIconSize: 16,
11506
11849
  requiredIconSize: 12,
11507
11850
  gap: Number(t.header.gap),
@@ -11522,7 +11865,7 @@ const KEY_VALUE_TABLE_COLORS = {
11522
11865
  const KEY_VALUE_TABLE_TYPOGRAPHY = {
11523
11866
  labelFontFamily: t.header.typography.fontFamily,
11524
11867
  labelFontSize: Number(t.header.typography.fontSize),
11525
- labelFontWeight: Number(t.header.typography.fontWeight),
11868
+ labelFontWeight: 700,
11526
11869
  labelLineHeight: Number(t.header.typography.lineHeight),
11527
11870
  tdFontFamily: t.body.typography.fontFamily,
11528
11871
  tdFontSize: Number(t.body.typography.fontSize),
@@ -11530,7 +11873,7 @@ const KEY_VALUE_TABLE_TYPOGRAPHY = {
11530
11873
  tdLineHeight: Number(t.body.typography.lineHeight),
11531
11874
  };
11532
11875
 
11533
- const sdKeyValueTableCss = () => `sd-key-value-table{display:block}sd-key-value-table .sd-key-value-table__wrapper{display:flex;align-items:stretch;width:100%;border:var(--sd-kvt-border-width) solid var(--sd-kvt-border-color);border-radius:var(--sd-kvt-radius);overflow:hidden}sd-key-value-table .sd-key-value-table__wrapper .sd-key-value-table{flex:1 1 auto;border:0;border-radius:0}sd-key-value-table .sd-key-value-table__wrapper.sd-key-value-table__wrapper--use-top{border-top-left-radius:0;border-top-right-radius:0}sd-key-value-table .sd-key-value-table__search-panel{display:flex;align-items:center;justify-content:center;flex:0 0 auto;padding:var(--sd-kvt-padding-y) var(--sd-kvt-search-padding-x);background:var(--sd-kvt-search-bg);border-left:var(--sd-kvt-border-width) solid var(--sd-kvt-border-color)}sd-key-value-table .sd-key-value-table{width:100%;table-layout:fixed;border:var(--sd-kvt-border-width) solid var(--sd-kvt-border-color);border-radius:var(--sd-kvt-radius);border-collapse:separate;border-spacing:0;overflow:hidden}sd-key-value-table .sd-key-value-table.sd-key-value-table--use-top{border-top-left-radius:0;border-top-right-radius:0}sd-key-value-table .sd-key-value-table__th,sd-key-value-table .sd-key-value-table__td{height:var(--sd-kvt-row-height);padding:var(--sd-kvt-padding-y) var(--sd-kvt-padding-x);box-sizing:border-box;vertical-align:middle;text-align:left;font-weight:normal;border-top:var(--sd-kvt-border-width) solid var(--sd-kvt-border-color)}sd-key-value-table .sd-key-value-table tbody>tr:first-child>.sd-key-value-table__th,sd-key-value-table .sd-key-value-table tbody>tr:first-child>.sd-key-value-table__td{border-top:0}sd-key-value-table .sd-key-value-table__th{width:var(--sd-kvt-th-width);background:var(--sd-kvt-th-bg);color:var(--sd-kvt-th-color)}sd-key-value-table .sd-key-value-table__th-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--sd-kvt-gap);width:100%;height:100%}sd-key-value-table .sd-key-value-table__label{display:inline-flex;align-items:center;gap:var(--sd-kvt-label-gap);font-family:var(--sd-kvt-label-font-family);font-size:var(--sd-kvt-label-font-size);font-weight:var(--sd-kvt-label-font-weight);line-height:var(--sd-kvt-label-line-height);color:var(--sd-kvt-th-color)}sd-key-value-table .sd-key-value-table__required{display:inline-flex;align-items:center;flex-shrink:0}sd-key-value-table .sd-key-value-table__help{display:inline-flex;align-items:center;flex-shrink:0}sd-key-value-table .sd-key-value-table__td{background:var(--sd-kvt-td-bg);color:var(--sd-kvt-td-color)}sd-key-value-table .sd-key-value-table__td-inner{display:flex;align-items:center;width:100%;height:100%}sd-key-value-table .sd-key-value-table__td-inner>slot{display:block;flex:1 1 auto;min-width:0}sd-key-value-table .sd-key-value-table__td-inner sd-input,sd-key-value-table .sd-key-value-table__td-inner sd-textarea,sd-key-value-table .sd-key-value-table__td-inner sd-number-input,sd-key-value-table .sd-key-value-table__td-inner sd-select,sd-key-value-table .sd-key-value-table__td-inner sd-date-picker,sd-key-value-table .sd-key-value-table__td-inner sd-date-range-picker,sd-key-value-table .sd-key-value-table__td-inner sd-file-picker{width:100%}sd-key-value-table .sd-key-value-table__text{font-family:var(--sd-kvt-td-font-family);font-size:var(--sd-kvt-td-font-size);font-weight:var(--sd-kvt-td-font-weight);line-height:var(--sd-kvt-td-line-height);color:var(--sd-kvt-td-color)}`;
11876
+ const sdKeyValueTableCss = () => `sd-key-value-table{display:block}sd-key-value-table .sd-key-value-table__wrapper{display:flex;align-items:stretch;width:100%;border:var(--sd-kvt-border-width) solid var(--sd-kvt-border-color);border-radius:var(--sd-kvt-radius);overflow:hidden}sd-key-value-table .sd-key-value-table__wrapper .sd-key-value-table{flex:1 1 auto;border:0;border-radius:0}sd-key-value-table .sd-key-value-table__wrapper.sd-key-value-table__wrapper--use-top{border-top-left-radius:0;border-top-right-radius:0}sd-key-value-table .sd-key-value-table__search-panel{display:flex;align-items:center;justify-content:center;flex:0 0 auto;padding:var(--sd-kvt-padding) var(--sd-kvt-search-padding-x);background:var(--sd-kvt-search-bg);border-left:var(--sd-kvt-border-width) solid var(--sd-kvt-border-color)}sd-key-value-table .sd-key-value-table{width:100%;table-layout:fixed;border:var(--sd-kvt-border-width) solid var(--sd-kvt-border-color);border-radius:var(--sd-kvt-radius);border-collapse:separate;border-spacing:0;overflow:hidden}sd-key-value-table .sd-key-value-table.sd-key-value-table--use-top{border-top-left-radius:0;border-top-right-radius:0}sd-key-value-table .sd-key-value-table__th,sd-key-value-table .sd-key-value-table__td{height:var(--sd-kvt-row-height);padding:var(--sd-kvt-padding);box-sizing:border-box;vertical-align:middle;text-align:left;font-weight:normal;border-top:var(--sd-kvt-border-width) solid var(--sd-kvt-border-color)}sd-key-value-table .sd-key-value-table tbody>tr:first-child>.sd-key-value-table__th,sd-key-value-table .sd-key-value-table tbody>tr:first-child>.sd-key-value-table__td{border-top:0}sd-key-value-table .sd-key-value-table__th{width:var(--sd-kvt-th-width);background:var(--sd-kvt-th-bg);color:var(--sd-kvt-th-color)}sd-key-value-table .sd-key-value-table__th-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--sd-kvt-gap);width:100%;height:100%}sd-key-value-table .sd-key-value-table__label{display:inline-flex;align-items:center;gap:var(--sd-kvt-label-gap);font-family:var(--sd-kvt-label-font-family);font-size:var(--sd-kvt-label-font-size);font-weight:var(--sd-kvt-label-font-weight);line-height:var(--sd-kvt-label-line-height);color:var(--sd-kvt-th-color)}sd-key-value-table .sd-key-value-table__required{display:inline-flex;align-items:center;flex-shrink:0}sd-key-value-table .sd-key-value-table__help{display:inline-flex;align-items:center;flex-shrink:0}sd-key-value-table .sd-key-value-table__td{background:var(--sd-kvt-td-bg);color:var(--sd-kvt-td-color)}sd-key-value-table .sd-key-value-table__td-inner{display:flex;align-items:center;width:100%;height:100%}sd-key-value-table .sd-key-value-table__td-inner>slot{display:block;flex:1 1 auto;min-width:0}sd-key-value-table .sd-key-value-table__td-inner sd-input,sd-key-value-table .sd-key-value-table__td-inner sd-textarea,sd-key-value-table .sd-key-value-table__td-inner sd-number-input,sd-key-value-table .sd-key-value-table__td-inner sd-select,sd-key-value-table .sd-key-value-table__td-inner sd-date-picker,sd-key-value-table .sd-key-value-table__td-inner sd-date-range-picker,sd-key-value-table .sd-key-value-table__td-inner sd-file-picker{width:100%}sd-key-value-table .sd-key-value-table__text{font-family:var(--sd-kvt-td-font-family);font-size:var(--sd-kvt-td-font-size);font-weight:var(--sd-kvt-td-font-weight);line-height:var(--sd-kvt-td-line-height);color:var(--sd-kvt-td-color)}`;
11534
11877
 
11535
11878
  class SdKeyValueTable {
11536
11879
  constructor(hostRef) {
@@ -11638,6 +11981,28 @@ class SdKeyValueTable {
11638
11981
  });
11639
11982
  return max;
11640
11983
  }
11984
+ /**
11985
+ * thStyle의 CSS 속성 값을 해당 CSS 변수로도 반영.
11986
+ * label span이 var()로 스타일을 참조하기 때문에, 인라인 스타일만으로는 상속이 되지 않음.
11987
+ */
11988
+ buildThStyle(thStyle) {
11989
+ const s = { ...thStyle };
11990
+ if (thStyle.color != null)
11991
+ s['--sd-kvt-th-color'] = thStyle.color;
11992
+ if (thStyle.background != null)
11993
+ s['--sd-kvt-th-bg'] = thStyle.background;
11994
+ if (thStyle.backgroundColor != null)
11995
+ s['--sd-kvt-th-bg'] = thStyle.backgroundColor;
11996
+ if (thStyle.fontFamily != null)
11997
+ s['--sd-kvt-label-font-family'] = thStyle.fontFamily;
11998
+ if (thStyle.fontSize != null)
11999
+ s['--sd-kvt-label-font-size'] = thStyle.fontSize;
12000
+ if (thStyle.fontWeight != null)
12001
+ s['--sd-kvt-label-font-weight'] = thStyle.fontWeight;
12002
+ if (thStyle.lineHeight != null)
12003
+ s['--sd-kvt-label-line-height'] = thStyle.lineHeight;
12004
+ return s;
12005
+ }
11641
12006
  renderTh(field, r, c) {
11642
12007
  const thRowSpan = field.thRowSpan != null && field.thRowSpan > 1 ? field.thRowSpan : undefined;
11643
12008
  const thColSpan = field.thColSpan != null && field.thColSpan > 1 ? field.thColSpan : undefined;
@@ -11648,7 +12013,8 @@ class SdKeyValueTable {
11648
12013
  else if (Array.isArray(field.thClass)) {
11649
12014
  field.thClass.forEach(cls => (classObj[cls] = true));
11650
12015
  }
11651
- return (hAsync("th", { key: `th-${r}-${c}`, class: classObj, style: field.thStyle, scope: "row", rowSpan: thRowSpan, colSpan: thColSpan }, hAsync("div", { class: "sd-key-value-table__th-inner" }, hAsync("span", { class: "sd-key-value-table__label" }, field.label, field.required && (hAsync("sd-icon", { class: "sd-key-value-table__required", name: "star", size: KEY_VALUE_TABLE_LAYOUT.requiredIconSize, color: KEY_VALUE_TABLE_COLORS.required, label: "required" }))), field.helpText && this.renderHelpIcon(field.helpText))));
12016
+ const thStyle = field.thStyle != null ? this.buildThStyle(field.thStyle) : undefined;
12017
+ return (hAsync("th", { key: `th-${r}-${c}`, class: classObj, style: thStyle, scope: "row", rowSpan: thRowSpan, colSpan: thColSpan }, hAsync("div", { class: "sd-key-value-table__th-inner" }, hAsync("span", { class: "sd-key-value-table__label" }, field.label, field.required && (hAsync("sd-icon", { class: "sd-key-value-table__required", name: "star", size: KEY_VALUE_TABLE_LAYOUT.requiredIconSize, color: KEY_VALUE_TABLE_COLORS.required, label: "required" }))), field.helpText && this.renderHelpIcon(field.helpText))));
11652
12018
  }
11653
12019
  renderTd(field, r, c) {
11654
12020
  const tdRowSpan = field.tdRowSpan != null && field.tdRowSpan > 1 ? field.tdRowSpan : undefined;
@@ -11676,8 +12042,7 @@ class SdKeyValueTable {
11676
12042
  '--sd-kvt-row-height': `${KEY_VALUE_TABLE_LAYOUT.rowHeight}px`,
11677
12043
  '--sd-kvt-th-width': `${KEY_VALUE_TABLE_LAYOUT.thWidth}px`,
11678
12044
  '--sd-kvt-radius': `${KEY_VALUE_TABLE_LAYOUT.borderRadius}px`,
11679
- '--sd-kvt-padding-x': `${KEY_VALUE_TABLE_LAYOUT.paddingX}px`,
11680
- '--sd-kvt-padding-y': `${KEY_VALUE_TABLE_LAYOUT.paddingY}px`,
12045
+ '--sd-kvt-padding': `${KEY_VALUE_TABLE_LAYOUT.padding}px`,
11681
12046
  '--sd-kvt-gap': `${KEY_VALUE_TABLE_LAYOUT.gap}px`,
11682
12047
  '--sd-kvt-label-gap': `${KEY_VALUE_TABLE_LAYOUT.labelGap}px`,
11683
12048
  '--sd-kvt-border-width': `${KEY_VALUE_TABLE_LAYOUT.borderWidth}px`,
@@ -11704,7 +12069,22 @@ class SdKeyValueTable {
11704
12069
  const tableEl = (hAsync("table", { class: {
11705
12070
  'sd-key-value-table': true,
11706
12071
  'sd-key-value-table--use-top': this.useTop,
11707
- }, style: cssVars }, hAsync("colgroup", null, Array.from({ length: maxCols }, (_, i) => (hAsync("col", { key: `col-${i}`, style: i % 2 === 0 ? { width: `${KEY_VALUE_TABLE_LAYOUT.thWidth}px` } : undefined })))), hAsync("tbody", null, this.fields.map((row, r) => (hAsync("tr", { class: "sd-key-value-table__row", key: `row-${r}` }, row.map((field, c) => {
12072
+ }, style: cssVars }, hAsync("colgroup", null, Array.from({ length: maxCols }, (_, i) => {
12073
+ if (i % 2 !== 0)
12074
+ return hAsync("col", { key: `col-${i}` });
12075
+ const fieldIdx = i / 2;
12076
+ const fieldThWidth = this.fields.reduce((found, row) => {
12077
+ if (found != null)
12078
+ return found;
12079
+ return row[fieldIdx]?.thWidth;
12080
+ }, undefined);
12081
+ const width = fieldThWidth != null
12082
+ ? typeof fieldThWidth === 'number'
12083
+ ? `${fieldThWidth}px`
12084
+ : fieldThWidth
12085
+ : `${KEY_VALUE_TABLE_LAYOUT.thWidth}px`;
12086
+ return hAsync("col", { key: `col-${i}`, style: { width } });
12087
+ })), hAsync("tbody", null, this.fields.map((row, r) => (hAsync("tr", { class: "sd-key-value-table__row", key: `row-${r}` }, row.map((field, c) => {
11708
12088
  const showTh = !field.hideTh && !autoSkip[r][c];
11709
12089
  return [showTh ? this.renderTh(field, r, c) : null, this.renderTd(field, r, c)];
11710
12090
  })))))));
@@ -11775,7 +12155,7 @@ class SdLinearProgress {
11775
12155
  clipPath: `inset(0 ${100 - this.clampedValue}% 0 0)`,
11776
12156
  };
11777
12157
  const valueText = `${Math.round(this.clampedValue)}%`;
11778
- return (hAsync(Host, { key: '49452751b0aaf5e6b49d809272620cf4b198ecc1', style: hostStyle }, hAsync("div", { key: 'aec62dae8fa8d4a9d6e64e305fadc63836a1fef6', class: 'sd-linear-progress__track' }, hAsync("div", { key: '0f7cce4cf0ebe6ce40cc127ab8b91fdaf88440cc', class: 'sd-linear-progress__fill', style: fillStyle }), !this.indeterminate && (hAsync("span", { key: 'af2f415ba6cc27c209eed2ff38b02ce58f81a861', class: 'sd-linear-progress__value sd-linear-progress__value--on-track' }, valueText)), !this.indeterminate && (hAsync("span", { key: '2c21c62faf93ee809ae6fa098f7bf88e20447ca8', class: 'sd-linear-progress__value sd-linear-progress__value--on-fill', style: valueOnFillStyle }, valueText))), this.label && hAsync("span", { key: '571c78db5fc8d7a6e4db2ed78e8c75c8be953e2f', class: 'sd-linear-progress__label' }, this.label)));
12158
+ return (hAsync(Host, { key: '26b1e15732e289a9a37a6d3dbea24aec1ab60ffd', style: hostStyle }, hAsync("div", { key: '5162d60390656286b56f6a96fd4b3932f399412a', class: 'sd-linear-progress__track' }, hAsync("div", { key: 'a46b815f935b243e4b7f8988af65167e3f87b554', class: 'sd-linear-progress__fill', style: fillStyle }), !this.indeterminate && (hAsync("span", { key: 'bc91914addd5addb84c7684a1f862033950905fc', class: 'sd-linear-progress__value sd-linear-progress__value--on-track' }, valueText)), !this.indeterminate && (hAsync("span", { key: 'c62cdc59464823286ff42fc7e97a7a255a2beeb4', class: 'sd-linear-progress__value sd-linear-progress__value--on-fill', style: valueOnFillStyle }, valueText))), this.label && hAsync("span", { key: '4c7c280885c8411329f99c3fe04f5ede8b1f0708', class: 'sd-linear-progress__label' }, this.label)));
11779
12159
  }
11780
12160
  static get style() { return sdLinearProgressCss(); }
11781
12161
  static get cmpMeta() { return {
@@ -11809,10 +12189,10 @@ class SdLoadingContainer {
11809
12189
  this.visible = false;
11810
12190
  }
11811
12191
  render() {
11812
- return (hAsync("div", { key: '314f23e9da2ec850d62b4d4e347055669841c1fe', class: {
12192
+ return (hAsync("div", { key: '2ad17acec76cfb7ceba0629f055600a7240a67e8', class: {
11813
12193
  'sd-loading-container': true,
11814
12194
  'sd-loading-container--visible': this.visible,
11815
- }, "aria-hidden": this.visible ? 'false' : 'true' }, hAsync("div", { key: '541eb68218969c73e52bc8cbdb79171ee0ba908e', class: "sd-loading-container__backdrop" }), hAsync("div", { key: '95192e0c936419248c46a57acb4c5ab63465a2f5', class: "sd-loading-container__content" }, hAsync("sd-circle-progress", { key: '5584a90aa595d3eaffc3597604a9dc359b22bcaf', indeterminate: true, type: "inverse" }), this.message && (hAsync("p", { key: 'e9dc0afbe43a318d7e776dd2f0bafa68ebe8536e', class: "sd-loading-container__message" }, this.message)))));
12195
+ }, "aria-hidden": this.visible ? 'false' : 'true' }, hAsync("div", { key: '1e842f21f2990b22820974147b22d859be010683', class: "sd-loading-container__backdrop" }), hAsync("div", { key: '4a48bafd9882a22c210dd1b2ca45efc43cc0c8da', class: "sd-loading-container__content" }, hAsync("sd-circle-progress", { key: '8eb7377230f0e8c9c482dfc9ca1313f323895d14', indeterminate: true, type: "inverse" }), this.message && (hAsync("p", { key: 'af2fc52b0740ee1d2cea55b688e5b4b77e80c7e3', class: "sd-loading-container__message" }, this.message)))));
11816
12196
  }
11817
12197
  static get style() { return sdLoadingContainerCss(); }
11818
12198
  static get cmpMeta() { return {
@@ -11909,7 +12289,7 @@ class SdLoadingModal {
11909
12289
  '--sd-loading-modal-width': this.toCssSize(this.width) ?? `${LOADING_MODAL_LAYOUT.minWidth}px`,
11910
12290
  '--sd-loading-modal-height': this.toCssSize(this.height) ?? `${LOADING_MODAL_LAYOUT.minHeight}px`,
11911
12291
  };
11912
- return (hAsync(Host, { key: '17636253239532d90e596f20d84795fe2e65508d', style: hostStyle }, hAsync("div", { key: '2f925afceca4102049d7876ab4d1e33fa1ef5ef7', class: "sd-loading-modal" }, hAsync("div", { key: '0598cff340210ca9ec5e28fb1992cbbc1b8e5a06', class: "sd-loading-modal__content" }, this.resolvedState === 'loading' ? (this.progress !== undefined ? (hAsync("sd-circle-progress", { value: this.progress })) : (hAsync("sd-circle-progress", { indeterminate: true }))) : (hAsync("sd-icon", { class: "sd-loading-modal__icon", name: "warningOutline", size: LOADING_MODAL_LAYOUT.contentSize, color: LOADING_MODAL_COLORS.errorIcon }))), hAsync("div", { key: '3d699238c19ee66fd3afc72194133a865501cc08', class: "sd-loading-modal__message-wrapper" }, Array.isArray(this.resolvedMessage) ? (this.resolvedMessage.map(message => (hAsync("p", { class: "sd-loading-modal__message" }, message)))) : (hAsync("p", { class: "sd-loading-modal__message" }, this.resolvedMessage))), this.useButton && (hAsync("div", { key: 'd454a168360cd23a3e71482d67ee81d8eabdec58', class: "sd-loading-modal__button" }, hAsync("sd-button", { key: '0aa26dc830d1c4827f2ee0ca0bfdf4bb8cd2c9f5', name: LOADING_MODAL_BUTTON_PRESET, label: this.resolvedButtonLabel, onSdClick: this.handleClick }))))));
12292
+ return (hAsync(Host, { key: 'f40dcf4fa7e2ee7b4023be11be2b9361ec167610', style: hostStyle }, hAsync("div", { key: '02bab8da4e09156340e8e9badef25755b57193d5', class: "sd-loading-modal" }, hAsync("div", { key: '776833f7f85a5587dda59fe75e36ebb4b9109c3e', class: "sd-loading-modal__content" }, this.resolvedState === 'loading' ? (this.progress !== undefined ? (hAsync("sd-circle-progress", { value: this.progress })) : (hAsync("sd-circle-progress", { indeterminate: true }))) : (hAsync("sd-icon", { class: "sd-loading-modal__icon", name: "warningOutline", size: LOADING_MODAL_LAYOUT.contentSize, color: LOADING_MODAL_COLORS.errorIcon }))), hAsync("div", { key: '4bb9e434a4a2d6be6dbbe2ed4e89563bf7278c65', class: "sd-loading-modal__message-wrapper" }, Array.isArray(this.resolvedMessage) ? (this.resolvedMessage.map(message => (hAsync("p", { class: "sd-loading-modal__message" }, message)))) : (hAsync("p", { class: "sd-loading-modal__message" }, this.resolvedMessage))), this.useButton && (hAsync("div", { key: '5da761513fdc38e5e646f72f75072e25d5313384', class: "sd-loading-modal__button" }, hAsync("sd-button", { key: '2bf9beb84ab4a6c1e6793db453e04b947c432d13', name: LOADING_MODAL_BUTTON_PRESET, label: this.resolvedButtonLabel, onSdClick: this.handleClick }))))));
11913
12293
  }
11914
12294
  static get style() { return sdLoadingModalCss(); }
11915
12295
  static get cmpMeta() { return {
@@ -12142,7 +12522,14 @@ class SdModalContainer {
12142
12522
  });
12143
12523
  }
12144
12524
  attachModalEventListeners(id, modalEl) {
12145
- modalEl.addEventListener('sdOk', () => this.requestDismiss(id, 'confirm'));
12525
+ modalEl.addEventListener('sdOk', () => {
12526
+ const entry = this.entries.find(e => e.id === id);
12527
+ if (entry?.modalRef._hasSubmit?.()) {
12528
+ entry.modalRef._triggerSubmit?.();
12529
+ return;
12530
+ }
12531
+ this.requestDismiss(id, 'confirm');
12532
+ });
12146
12533
  modalEl.addEventListener('sdCancel', () => this.requestDismiss(id, 'cancel'));
12147
12534
  modalEl.addEventListener('sdClose', () => this.requestDismiss(id, 'close'));
12148
12535
  }
@@ -12692,15 +13079,15 @@ class SdNumberInput {
12692
13079
  '--sd-textinput-input-hint-typography-line-height': `${NUMBER_INPUT_HINT.typography.lineHeight}px`,
12693
13080
  '--sd-textinput-input-contents-gap': `${NUMBER_INPUT_CONTENTS_GAP}px`,
12694
13081
  };
12695
- return (hAsync("sd-field", { key: '53c6935bbf98ed1eb0f28d6bed675ea369b0b2bc', name: this.name, label: this.label, labelWidth: this.labelWidth, addonLabel: this.addonLabel, addonAlign: this.addonAlign, hint: this.hint, errorMessage: this.errorMessage, width: this.width, rules: this.rules, error: this.error, disabled: this.disabled, readonly: this.readonly, focused: this.focused, hovered: this.hovered, status: this.status, size: this.size, icon: this.icon, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false), style: cssVars }, hAsync("div", { key: '8f0da8b179cd3946d625ab6b525a2ffd614a5333', class: {
13082
+ return (hAsync("sd-field", { key: 'ad212dcbaf8e19cac070e6bdfa292ca614480fbc', name: this.name, label: this.label, labelWidth: this.labelWidth, addonLabel: this.addonLabel, addonAlign: this.addonAlign, hint: this.hint, errorMessage: this.errorMessage, width: this.width, rules: this.rules, error: this.error, disabled: this.disabled, readonly: this.readonly, focused: this.focused, hovered: this.hovered, status: this.status, size: this.size, icon: this.icon, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false), style: cssVars }, hAsync("div", { key: 'b9c403df166e2f05f815ebf3851b6517b8afbd2a', class: {
12696
13083
  'sd-number-input__content': true,
12697
13084
  'sd-number-input__content--no-stepper': !this.useButton,
12698
- } }, this.useButton && (hAsync("button", { key: '1be42c16d5e671c567d4768f505c2c17c50f1b60', type: "button", class: "sd-number-input__stepper sd-number-input__stepper--decrement", disabled: this.isDecrementDisabled(), onClick: this.handleDecrement, tabindex: -1 }, hAsync("sd-icon", { key: 'dc074328208c8da2ee43ea2cb03dbc838b7d46c9', name: "minus", size: iconSize, color: this.isDecrementDisabled()
13085
+ } }, this.useButton && (hAsync("button", { key: '206f45b19bf8dd56b65ff55fb65d760e36d80ba7', type: "button", class: "sd-number-input__stepper sd-number-input__stepper--decrement", disabled: this.isDecrementDisabled(), onClick: this.handleDecrement, tabindex: -1 }, hAsync("sd-icon", { key: 'd39cadc9a83cf7a0170144b8734a90f71d7aa9d1', name: "minus", size: iconSize, color: this.isDecrementDisabled()
12699
13086
  ? NUMBER_INPUT_STEPPER.icon.disabled
12700
- : NUMBER_INPUT_STEPPER.icon.default }))), this.inputPrefix && hAsync("span", { key: '84896d40d79e936480052ab45d618cd73550ee87', class: "sd-number-input__prefix" }, this.inputPrefix), hAsync("input", { key: 'f2c8995b6c059c2a4130018b2ff0c7eabcd7abfb', name: this.name, ref: el => (this.nativeEl = el), class: `sd-number-input__native ${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, onFocus: this.handleFocus, onBlur: this.handleBlur, style: {
13087
+ : NUMBER_INPUT_STEPPER.icon.default }))), this.inputPrefix && hAsync("span", { key: '0c97309540467d56ee3415001df7a027ba581a3d', class: "sd-number-input__prefix" }, this.inputPrefix), hAsync("input", { key: '9462f0c7ac028c038894ad184c7cf052e366e48c', name: this.name, ref: el => (this.nativeEl = el), class: `sd-number-input__native ${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, onFocus: this.handleFocus, onBlur: this.handleBlur, style: {
12701
13088
  textAlign: this.useButton ? 'center' : 'right',
12702
13089
  ...this.inputStyle,
12703
- } }), this.inputSuffix && hAsync("span", { key: 'd6b1ca9f5991f1b2382dd4a35ae4f20832192e3c', class: "sd-number-input__suffix" }, this.inputSuffix), this.useButton && (hAsync("button", { key: '56a59f94ca27e8ef4255cabdd5fe003c602bb8d6', type: "button", class: "sd-number-input__stepper sd-number-input__stepper--increment", disabled: this.isIncrementDisabled(), onClick: this.handleIncrement, tabindex: -1 }, hAsync("sd-icon", { key: '1b8fca91e893b5ade47ed63db4d4d54933c94e53', name: "add", size: iconSize, color: this.isIncrementDisabled()
13090
+ } }), this.inputSuffix && hAsync("span", { key: 'fdd4f4e680fe5de55cb68c848615ec6b00f00430', class: "sd-number-input__suffix" }, this.inputSuffix), this.useButton && (hAsync("button", { key: '8cdfcc46a010fb0f503b48c34290fd096403524a', type: "button", class: "sd-number-input__stepper sd-number-input__stepper--increment", disabled: this.isIncrementDisabled(), onClick: this.handleIncrement, tabindex: -1 }, hAsync("sd-icon", { key: 'ec8826370cd9d8c6054ca6ab216de6baa62d90db', name: "add", size: iconSize, color: this.isIncrementDisabled()
12704
13091
  ? NUMBER_INPUT_STEPPER.icon.disabled
12705
13092
  : NUMBER_INPUT_STEPPER.icon.default }))))));
12706
13093
  }
@@ -12910,13 +13297,13 @@ class SdPagination {
12910
13297
  '--sd-pagination-bg-selected': PAGINATION_COLORS.bgSelected,
12911
13298
  '--sd-pagination-item-width': `${this.buttonWidth}px`,
12912
13299
  };
12913
- return (hAsync("div", { key: 'abfac6b075ce59ac37f747bf15729bf3879b1749', class: {
13300
+ return (hAsync("div", { key: 'c1925f0f312cf5c18f08f158efb599e5b6f0d503', class: {
12914
13301
  'sd-pagination': true,
12915
13302
  'sd-pagination--simple': this.simple,
12916
- }, style: cssVars }, hAsync("div", { key: '6c8a3eb2ad708649054068a671cf156fe154fae3', class: "sd-pagination__group sd-pagination__group--prev" }, this.renderPrevButtons()), this.simple ? (hAsync("div", { class: "sd-pagination__info" }, hAsync("span", { class: "sd-pagination__current" }, this.currentPage), hAsync("span", { class: "sd-pagination__divider" }, "/"), hAsync("span", { class: "sd-pagination__last" }, this.lastPage))) : (hAsync("div", { class: "sd-pagination__numbers" }, this.pageNumbers.map(n => (hAsync("button", { type: "button", "aria-current": this.currentPage === n ? 'page' : undefined, class: {
13303
+ }, style: cssVars }, hAsync("div", { key: '1f22be76697820bf455cea5476efa84a09d03c44', class: "sd-pagination__group sd-pagination__group--prev" }, this.renderPrevButtons()), this.simple ? (hAsync("div", { class: "sd-pagination__info" }, hAsync("span", { class: "sd-pagination__current" }, this.currentPage), hAsync("span", { class: "sd-pagination__divider" }, "/"), hAsync("span", { class: "sd-pagination__last" }, this.lastPage))) : (hAsync("div", { class: "sd-pagination__numbers" }, this.pageNumbers.map(n => (hAsync("button", { type: "button", "aria-current": this.currentPage === n ? 'page' : undefined, class: {
12917
13304
  'sd-pagination__item': true,
12918
13305
  'sd-pagination__item--selected': this.currentPage === n,
12919
- }, onClick: () => this.handlePageChange(n) }, n))))), hAsync("div", { key: 'f0013d0057e6addb6a7fae39ebddd2c4f7af5bd0', class: "sd-pagination__group sd-pagination__group--next" }, this.renderNextButtons())));
13306
+ }, onClick: () => this.handlePageChange(n) }, n))))), hAsync("div", { key: 'b85b00b637152d5071db0652b6682541fbfd6ab5', class: "sd-pagination__group sd-pagination__group--next" }, this.renderNextButtons())));
12920
13307
  }
12921
13308
  static get style() { return sdPaginationCss(); }
12922
13309
  static get cmpMeta() { return {
@@ -13142,7 +13529,7 @@ class SdPopup {
13142
13529
  ...DEFAULT_SUBMIT_BUTTON_PROPS,
13143
13530
  ...this.submitButtonProps,
13144
13531
  };
13145
- return (hAsync("div", { key: 'ea933af50e1ad1a29cf8d73ce70222e2f44c0bb5', class: `sd-popup sd-popup--${this.type}`, style: cssVars }, hAsync("header", { key: '50f1773d911175182888a98a0759b8d3d8829d2f', class: "sd-popup__header" }, hAsync("h2", { key: '4e21a73a6e26388c6b1c814a91ee8a79bf57c576', class: "sd-popup__title" }, this.popupTitle)), hAsync("div", { key: 'dd6ace33c6d8b3e20c0c85c95580efbf8ad6747c', class: "sd-popup__body" }, hAsync("slot", { key: 'e40fbea5b93016131df544f32b74676d2892204e' })), this.useFooter && (hAsync("footer", { key: '96b27f465a804859a15e9105fcd64c7205bc2143', class: "sd-popup__footer" }, hAsync("div", { key: '6715ba330610850ea235ddde5f2da00584204286', class: "sd-popup__footer-slot sd-popup__footer-slot--left" }, hAsync("slot", { key: '092aca3ad212b7218ce4ba247b78b7b45d9e4299', name: "footer-left" })), hAsync("sd-button", { key: '290cd49879cc4868be69ceb60567eab57b5f26fe', ...submitButtonProps, class: "sd-popup__submit", onSdClick: () => this.submit.emit() })))));
13532
+ return (hAsync("div", { key: 'a978706454e3964818cc96b3a583880b952c2533', class: `sd-popup sd-popup--${this.type}`, style: cssVars }, hAsync("header", { key: '1164fc29d4040d51b74ebc45fedc4fd19038e900', class: "sd-popup__header" }, hAsync("h2", { key: '6ac1ea61e52f952f3bea4c4149222b4ff43b61db', class: "sd-popup__title" }, this.popupTitle)), hAsync("div", { key: 'fe8cebfc5ea513ae07e3a2987a8c7d9b36ed26e9', class: "sd-popup__body" }, hAsync("slot", { key: 'f7ce06ae60cc8af6dbae2b24db4fd6b00e13d365' })), this.useFooter && (hAsync("footer", { key: '84251ae1e48522fcf47d0081c9c0689e5fb236a6', class: "sd-popup__footer" }, hAsync("div", { key: 'c7d4a8546bd185c812a98569cc3b2a818cbb2963', class: "sd-popup__footer-slot sd-popup__footer-slot--left" }, hAsync("slot", { key: '474e09481472b96ff4eacc66502aa06987b463b8', name: "footer-left" })), hAsync("sd-button", { key: '2b23204ffad997f022dd06b772433ceb69950d04', ...submitButtonProps, class: "sd-popup__submit", onSdClick: () => this.submit.emit() })))));
13146
13533
  }
13147
13534
  static get style() { return sdPopupCss(); }
13148
13535
  static get cmpMeta() { return {
@@ -13213,7 +13600,7 @@ class SdPortal {
13213
13600
  createWrapper() {
13214
13601
  this.wrapper = document.createElement('div');
13215
13602
  Object.assign(this.wrapper.style, {
13216
- position: 'absolute',
13603
+ position: 'fixed',
13217
13604
  top: '0',
13218
13605
  left: '0',
13219
13606
  zIndex: (this.zIndex ?? 998).toString(),
@@ -13287,13 +13674,13 @@ class SdPortal {
13287
13674
  const wrapperRect = this.wrapper.getBoundingClientRect();
13288
13675
  const availableBelow = viewport.height - parentRect.bottom - offset[1] - viewportPadding;
13289
13676
  const availableAbove = parentRect.top - offset[1] - viewportPadding;
13290
- let top = parentRect.bottom + window.scrollY + offset[1];
13291
- let left = parentRect.left + window.scrollX + offset[0];
13677
+ let top = parentRect.bottom + offset[1];
13678
+ let left = parentRect.left + offset[0];
13292
13679
  if (availableBelow < wrapperRect.height && availableAbove > availableBelow) {
13293
- top = parentRect.top + window.scrollY - wrapperRect.height - offset[1];
13680
+ top = parentRect.top - wrapperRect.height - offset[1];
13294
13681
  }
13295
- const minTop = window.scrollY + viewportPadding;
13296
- const maxTop = window.scrollY + viewport.height - viewportPadding - wrapperRect.height;
13682
+ const minTop = viewportPadding;
13683
+ const maxTop = viewport.height - viewportPadding - wrapperRect.height;
13297
13684
  if (maxTop < minTop) {
13298
13685
  top = minTop;
13299
13686
  }
@@ -13301,10 +13688,10 @@ class SdPortal {
13301
13688
  top = Math.min(Math.max(top, minTop), maxTop);
13302
13689
  }
13303
13690
  if (parentRect.left + wrapperRect.width + offset[0] > viewport.width - viewportPadding) {
13304
- left = parentRect.right + window.scrollX - wrapperRect.width - offset[0];
13691
+ left = parentRect.right - wrapperRect.width - offset[0];
13305
13692
  }
13306
- const minLeft = window.scrollX + viewportPadding;
13307
- const maxLeft = window.scrollX + viewport.width - viewportPadding - wrapperRect.width;
13693
+ const minLeft = viewportPadding;
13694
+ const maxLeft = viewport.width - viewportPadding - wrapperRect.width;
13308
13695
  if (maxLeft < minLeft) {
13309
13696
  left = minLeft;
13310
13697
  }
@@ -13371,21 +13758,25 @@ class SdPortal {
13371
13758
  }
13372
13759
  return scrollParents;
13373
13760
  }
13761
+ isInsideTarget(target) {
13762
+ return !!((this.wrapper?.contains(target)) ||
13763
+ (this.parentRef?.contains(target)));
13764
+ }
13374
13765
  // 외부 클릭 감지
13375
13766
  handleMouseDown(e) {
13376
- this.isInsideClick = !!(this.wrapper && this.wrapper.contains(e.target));
13767
+ this.isInsideClick = this.isInsideTarget(e.target);
13377
13768
  }
13378
13769
  handleWindowClick(e) {
13379
13770
  if (this.isInsideClick) {
13380
13771
  this.isInsideClick = false;
13381
13772
  return;
13382
13773
  }
13383
- if (this.wrapper?.contains(e.target))
13774
+ if (this.isInsideTarget(e.target))
13384
13775
  return;
13385
13776
  this.close.emit();
13386
13777
  }
13387
13778
  render() {
13388
- return hAsync("slot", { key: 'f7b160cb574608fa16f6edd27d259b85787e6144' });
13779
+ return hAsync("slot", { key: '22e09896836d017f33a9c6b92772a00fc85f8997' });
13389
13780
  }
13390
13781
  static get watchers() { return {
13391
13782
  "open": [{
@@ -14075,15 +14466,15 @@ class SdSelect {
14075
14466
  this.closeDropdown();
14076
14467
  },
14077
14468
  };
14078
- return (hAsync("sd-field", { key: '29ea3526b5ef4a6f64bac810204cb7862a184503', name: this.name, label: this.label, labelWidth: this.labelWidth, addonLabel: this.addonLabel, addonAlign: this.addonAlign, hint: this.hint, errorMessage: this.errorMessage, width: this.width, rules: this.rules, error: this.error, disabled: this.disabled, focused: this.focused, hovered: this.hovered, icon: this.icon, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, onMouseEnter: () => {
14469
+ return (hAsync("sd-field", { key: 'fced3680a535c60d5750908acf1226426e12182b', name: this.name, label: this.label, labelWidth: this.labelWidth, addonLabel: this.addonLabel, addonAlign: this.addonAlign, hint: this.hint, errorMessage: this.errorMessage, width: this.width, rules: this.rules, error: this.error, disabled: this.disabled, focused: this.focused, hovered: this.hovered, icon: this.icon, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, onMouseEnter: () => {
14079
14470
  this.hovered = true;
14080
14471
  }, onMouseLeave: () => {
14081
14472
  this.hovered = false;
14082
- } }, hAsync("div", { key: 'e23ef16cf8af59d2e9dd6ee39a297c4338e0a056', class: "sd-select", ref: el => {
14473
+ } }, hAsync("div", { key: '38d53e92c022affd40bfc7951bbcdf7e02071446', class: "sd-select", ref: el => {
14083
14474
  this.triggerRef = el;
14084
- } }, hAsync("sd-select-trigger", { key: 'b6811644cb571bb738d604ce31b233ff76a32d16', ref: el => {
14475
+ } }, hAsync("sd-select-trigger", { key: '9cd9bdb89db37204f9a5c312d26277da772b1209', ref: el => {
14085
14476
  this.triggerComponentRef = el;
14086
- }, displayText: this.displayText, placeholder: this.placeholder ?? '선택', disabled: this.disabled, isOpen: this.isOpen, onSdTriggerClick: this.handleTriggerClick, onSdTriggerFocus: this.handleTriggerFocus, onSdTriggerBlur: this.handleTriggerBlur })), (this.isOpen || this.isAnimatingOut) && (hAsync("sd-portal", { key: 'b9b191bd7eefcb4d69be21f51740dd1cd993a3e7', ...portalProps }, hAsync("sd-select-listbox", { key: 'f04d988c8491eeea284dc4fdce91dadfd33965f8', type: this.type, options: this.options, value: this.value, emitValue: this.emitValue, useSearch: this.useSearch, useSelectAll: this.useSelectAll, triggerWidth: this.dropdownWidth || this.triggerWidth, maxWidth: this.resolvedMaxDropdownWidth, maxHeight: this.resolvedDropdownHeight, onSdOptionSelect: event => this.handleOptionSelect(event.detail) })))));
14477
+ }, displayText: this.displayText, placeholder: this.placeholder ?? '선택', disabled: this.disabled, isOpen: this.isOpen, onSdTriggerClick: this.handleTriggerClick, onSdTriggerFocus: this.handleTriggerFocus, onSdTriggerBlur: this.handleTriggerBlur })), (this.isOpen || this.isAnimatingOut) && (hAsync("sd-portal", { key: '8666dc885f3dcbae13011fd312eb72b7e6c906d9', ...portalProps }, hAsync("sd-select-listbox", { key: '04e6dba3d2837cbef68ded80bd2f89c5bbe9dc01', type: this.type, options: this.options, value: this.value, emitValue: this.emitValue, useSearch: this.useSearch, useSelectAll: this.useSelectAll, triggerWidth: this.dropdownWidth || this.triggerWidth, maxWidth: this.resolvedMaxDropdownWidth, maxHeight: this.resolvedDropdownHeight, onSdOptionSelect: event => this.handleOptionSelect(event.detail) })))));
14087
14478
  }
14088
14479
  static get watchers() { return {
14089
14480
  "isOpen": [{
@@ -14157,54 +14548,6 @@ var selectTokens = {
14157
14548
  select: select
14158
14549
  };
14159
14550
 
14160
- const listItem = {
14161
- paddingY: "4",
14162
- paddingRight: "12",
14163
- gap: "8",
14164
- paddingLeft: {
14165
- depth1: "12",
14166
- depth2: "20",
14167
- depth3: "28"
14168
- },
14169
- typography: {
14170
- "default": {
14171
- fontWeight: "400",
14172
- fontSize: "12",
14173
- lineHeight: "20"},
14174
- selected: {
14175
- fontWeight: "700"}
14176
- },
14177
- bg: {
14178
- "default": "#FFFFFF",
14179
- hover: "#0075FF"
14180
- },
14181
- content: {
14182
- "default": "#222222",
14183
- hover: "#FFFFFF",
14184
- disabled: "#888888",
14185
- selected: "#0075FF"
14186
- },
14187
- depth1: {
14188
- bg: {
14189
- "default": "#EFF6FF"},
14190
- border: {
14191
- color: "#E1E1E1",
14192
- width: "1"
14193
- }},
14194
- depth2: {
14195
- middle: {
14196
- bg: "#F6F6F6"}
14197
- }};
14198
- var listItemTokens = {
14199
- listItem: listItem
14200
- };
14201
-
14202
- const listBox = {
14203
- radius: "4"};
14204
- var listBoxTokens = {
14205
- listBox: listBox
14206
- };
14207
-
14208
14551
  // ── Select Trigger Tokens ──
14209
14552
  const SELECT_LAYOUT = {
14210
14553
  paddingX: selectTokens.select.sm.paddingX,
@@ -14284,10 +14627,10 @@ function countLeaves(options) {
14284
14627
  }, 0);
14285
14628
  }
14286
14629
  function filterTree(options, keyword) {
14287
- const lowerKeyword = keyword.toLowerCase();
14630
+ const lowerKeyword = (keyword ?? '').toLowerCase();
14288
14631
  return options.reduce((acc, option) => {
14289
14632
  const labelText = isHtmlLabel(option.label) ? extractText(option.label) : option.label;
14290
- const selfMatch = labelText.toLowerCase().includes(lowerKeyword);
14633
+ const selfMatch = labelText != null && labelText.toLowerCase().includes(lowerKeyword);
14291
14634
  if (option.children) {
14292
14635
  // 그룹: 자식은 항상 추가로 필터링한다.
14293
14636
  // - 자식 중 일치하는 게 있으면 그 자식들만 노출
@@ -14385,7 +14728,7 @@ class SdSelectListItem {
14385
14728
  return (
14386
14729
  // 키보드 네비게이션은 부모 listbox 의 ArrowUp/Down + Enter 가 담당. 항목 자체는 role=option, tabindex=-1 으로 표시.
14387
14730
  // eslint-disable-next-line jsx-a11y/click-events-have-key-events
14388
- hAsync("div", { key: '55ebe094653cb89d5c70916c3e0a2f4ccb5551f8', role: "option", tabindex: -1, "aria-selected": this.isSelected === true ? 'true' : 'false', class: {
14731
+ hAsync("div", { key: 'c964b0cf5b064c74a7e063be21350bca8124d77d', role: "option", tabindex: -1, "aria-selected": this.isSelected === true ? 'true' : 'false', class: {
14389
14732
  'sd-select-list-item': true,
14390
14733
  'sd-select-list-item--group': isGroup,
14391
14734
  'sd-select-list-item--depth1-group': isDepth1Group,
@@ -14395,7 +14738,7 @@ class SdSelectListItem {
14395
14738
  'sd-select-list-item--focused': this.isFocused,
14396
14739
  'sd-select-list-item--selectable': this.isSelectable && !this.option.disabled,
14397
14740
  'sd-select-list-item--disabled': !!this.option.disabled,
14398
- }, style: cssVars, onClick: this.handleClick }, this.useCheckbox && (hAsync("sd-checkbox", { key: 'f636931bc20264db98e521b11b819610cda764cd', value: this.isSelected === null ? null : !!this.isSelected, disabled: this.option.disabled, inverse: this.isFocused && this.isSelected !== false, class: "sd-select-list-item__checkbox", onClick: this.handleCheckboxClick, onSdUpdate: this.handleCheckboxUpdate })), isHtmlLabel(this.option.label) ? (hAsync("span", { class: "sd-select-list-item__label", ref: el => el && (el.innerHTML = sanitizeInlineHtml(this.option.label)) })) : (hAsync("span", { class: "sd-select-list-item__label" }, this.option.label)), this.countInfo && (hAsync("span", { key: '89750bc08c03915b738da390f4255e7451aa9d6d', class: "sd-select-list-item__count" }, "(", this.countInfo.selected, "/", this.countInfo.total, ")"))));
14741
+ }, style: cssVars, onClick: this.handleClick }, this.useCheckbox && (hAsync("sd-checkbox", { key: '981e055f47aa512d18d61ae938b41942197f3088', value: this.isSelected === null ? null : !!this.isSelected, disabled: this.option.disabled, inverse: this.isFocused && this.isSelected !== false, class: "sd-select-list-item__checkbox", onClick: this.handleCheckboxClick, onSdUpdate: this.handleCheckboxUpdate })), isHtmlLabel(this.option.label) ? (hAsync("span", { class: "sd-select-list-item__label", ref: el => el && (el.innerHTML = sanitizeInlineHtml(this.option.label)) })) : (hAsync("span", { class: "sd-select-list-item__label" }, this.option.label)), this.countInfo && (hAsync("span", { key: 'ac34372d921afcb3eba0a51bed3dd70b4e8f1d0f', class: "sd-select-list-item__count" }, "(", this.countInfo.selected, "/", this.countInfo.total, ")"))));
14399
14742
  }
14400
14743
  static get style() { return sdSelectListItemCss(); }
14401
14744
  static get cmpMeta() { return {
@@ -14463,15 +14806,15 @@ class SdSelectListItemSearch {
14463
14806
  clearTimeout(this.debounceTimer);
14464
14807
  }
14465
14808
  render() {
14466
- return (hAsync("div", { key: '6cf78c7d616dc21a7a6e806c184322d12cacb50d', class: {
14809
+ return (hAsync("div", { key: '6250cee5611a36f6c5fb317d7d24abeae1ed142f', class: {
14467
14810
  'sd-select-list-item-search': true,
14468
14811
  'sd-select-list-item-search--scrolled': this.isScrolled,
14469
- } }, hAsync("div", { key: 'dd9fa44fed1f3ec7a222dacaa710cdf32ddbe6fc', class: "sd-select-list-item-search__inner" }, hAsync("sd-icon", { key: '2d65a81b7b6160ac4e93016adea0da43d5d01ec8', name: "search", size: 16, color: "grey_70", class: "sd-select-list-item-search__icon" }), hAsync("input", { key: '0d5c4bb09778518aa17a210a2d1a9eb620a1dd7b', ref: el => {
14812
+ } }, hAsync("div", { key: 'fa48adb1406c8922b61083a19cc270f02ddab100', class: "sd-select-list-item-search__inner" }, hAsync("sd-icon", { key: '868519f09dc11fc4e9bde7a1148ce5ce666dd851', name: "search", size: 16, color: "grey_70", class: "sd-select-list-item-search__icon" }), hAsync("input", { key: 'ff946fa2f360cd21eb785d13cb91e23f18abe05c', ref: el => {
14470
14813
  this.inputEl = el;
14471
- }, type: "text", class: "sd-select-list-item-search__input", placeholder: "\uAC80\uC0C9\uC5B4 \uC785\uB825", value: this.searchText, onInput: this.handleInput, onFocus: () => this.searchFocus.emit() }), hAsync("button", { key: 'e9708437f310788bf8b9a4d358dea9b83cc88ed8', type: "button", class: {
14814
+ }, type: "text", class: "sd-select-list-item-search__input", placeholder: "\uAC80\uC0C9\uC5B4 \uC785\uB825", value: this.searchText, onInput: this.handleInput, onFocus: () => this.searchFocus.emit() }), hAsync("button", { key: 'e70e4c0af6e11f89d2893ae5bb28887a0ed8a5ee', type: "button", class: {
14472
14815
  'sd-select-list-item-search__clear': true,
14473
14816
  'sd-select-list-item-search__clear--hidden': this.searchText === '',
14474
- }, onClick: this.handleClear, tabindex: this.searchText !== '' ? 0 : -1, "aria-hidden": this.searchText !== '' ? 'false' : 'true' }, hAsync("sd-icon", { key: 'ed8b1c93809f823205f357b059a8b556e0278b1c', name: "close", size: 12, color: "#888888" })))));
14817
+ }, onClick: this.handleClear, tabindex: this.searchText !== '' ? 0 : -1, "aria-hidden": this.searchText !== '' ? 'false' : 'true' }, hAsync("sd-icon", { key: '57b4af6446a565b6e1e95153e8553b1c3c363a33', name: "close", size: 12, color: "#888888" })))));
14475
14818
  }
14476
14819
  static get style() { return sdSelectListItemSearchCss(); }
14477
14820
  static get cmpMeta() { return {
@@ -14556,14 +14899,14 @@ class SdSelectListbox {
14556
14899
  return count >= SEARCH_THRESHOLD;
14557
14900
  }
14558
14901
  get filteredOptions() {
14559
- if (this.searchKeyword === '')
14902
+ if (this.searchKeyword == null || this.searchKeyword === '')
14560
14903
  return this.options;
14561
14904
  if (this.isDepth)
14562
14905
  return filterTree(this.options, this.searchKeyword);
14563
14906
  const keyword = this.searchKeyword.toLowerCase();
14564
14907
  return this.options.filter(o => {
14565
14908
  const labelText = isHtmlLabel(o.label) ? extractText(o.label) : o.label;
14566
- return labelText.toLowerCase().includes(keyword);
14909
+ return labelText != null && labelText.toLowerCase().includes(keyword);
14567
14910
  });
14568
14911
  }
14569
14912
  get isEmpty() {
@@ -14845,9 +15188,9 @@ class SdSelectListbox {
14845
15188
  '--listbox-max-height': this.maxHeight ?? '260px',
14846
15189
  '--listbox-radius': `${LIST_BOX_LAYOUT.radius}px`,
14847
15190
  };
14848
- return (hAsync("div", { key: '6c2cbad13f8aaa8c0552068c7cbc35a147bee77d', class: "sd-select-listbox", style: cssVars }, this.showSearch && (hAsync("sd-select-list-item-search", { key: '052d783e27e2458aa397c77fe891dad4a440f09e', isScrolled: this.isScrolled, onSdSearchFilter: this.handleSearchFilter })), hAsync("div", { key: 'bba95f3c4475d01a65562ba079c8666e3325195d', class: "sd-select-listbox__list", onScroll: this.handleScroll, ref: el => {
15191
+ return (hAsync("div", { key: 'fe30af2954ea5669f2071698e6ef9e2b26244d9b', class: "sd-select-listbox", style: cssVars }, this.showSearch && (hAsync("sd-select-list-item-search", { key: 'aa7ce87d8c0c7163921445325121562603edd960', isScrolled: this.isScrolled, onSdSearchFilter: this.handleSearchFilter })), hAsync("div", { key: 'e8b5b3f73653ddc5096101f7109d427de1efa93a', class: "sd-select-listbox__list", onScroll: this.handleScroll, ref: el => {
14849
15192
  this.listEl = el;
14850
- } }, this.showSelectAll && (hAsync("sd-select-list-item", { key: '2f55bbacbed71952903599db0739773176ac55fd', option: SdSelectListbox.SELECT_ALL_OPTION, depth: 1, isSelected: this.selectAllState, isFocused: this.isOptionFocused(SdSelectListbox.SELECT_ALL_OPTION), useCheckbox: true, onSdListItemClick: this.handleSelectAllClick, onMouseEnter: () => this.handleOptionHover(SdSelectListbox.SELECT_ALL_OPTION) })), this.isEmpty ? (hAsync("div", { class: "sd-select-listbox__empty" }, EMPTY_MESSAGE)) : this.isDepth ? (this.renderOptions(this.filteredOptions)) : (this.filteredOptions.map(option => (hAsync("sd-select-list-item", { option: option, depth: 1, isSelected: this.isOptionSelected(option), isFocused: this.isOptionFocused(option), useCheckbox: this.isMulti, onSdListItemClick: this.handleOptionClick, onMouseEnter: () => this.handleOptionHover(option) })))))));
15193
+ } }, this.showSelectAll && (hAsync("sd-select-list-item", { key: '7fbde730eca0b8234475b714ea38a4393425410e', option: SdSelectListbox.SELECT_ALL_OPTION, depth: 1, isSelected: this.selectAllState, isFocused: this.isOptionFocused(SdSelectListbox.SELECT_ALL_OPTION), useCheckbox: true, onSdListItemClick: this.handleSelectAllClick, onMouseEnter: () => this.handleOptionHover(SdSelectListbox.SELECT_ALL_OPTION) })), this.isEmpty ? (hAsync("div", { class: "sd-select-listbox__empty" }, EMPTY_MESSAGE)) : this.isDepth ? (this.renderOptions(this.filteredOptions)) : (this.filteredOptions.map(option => (hAsync("sd-select-list-item", { option: option, depth: 1, isSelected: this.isOptionSelected(option), isFocused: this.isOptionFocused(option), useCheckbox: this.isMulti, onSdListItemClick: this.handleOptionClick, onMouseEnter: () => this.handleOptionHover(option) })))))));
14851
15194
  }
14852
15195
  static get watchers() { return {
14853
15196
  "searchKeyword": [{
@@ -14928,7 +15271,7 @@ class SdSelectTrigger {
14928
15271
  ? SELECT_COLORS.icon.disabled
14929
15272
  : SELECT_COLORS.icon.default,
14930
15273
  };
14931
- return (hAsync("div", { key: 'b5a4f750c00889d0d9b985211063fc6b20bc2e38', ref: el => {
15274
+ return (hAsync("div", { key: '0a929b8c0d68e25a64c352b5ea93b2e9c5f52611', ref: el => {
14932
15275
  this.triggerEl = el;
14933
15276
  }, role: "button", "aria-haspopup": "listbox", "aria-expanded": this.isOpen ? 'true' : 'false', tabindex: this.disabled ? -1 : 0, class: {
14934
15277
  'sd-select-trigger': true,
@@ -14939,7 +15282,7 @@ class SdSelectTrigger {
14939
15282
  e.preventDefault();
14940
15283
  this.handleClick();
14941
15284
  }
14942
- }, onFocus: this.handleFocus, onBlur: this.handleBlur }, hAsync("div", { key: 'be0b61c0550618602ef016504fa1672f7520fa93', class: "sd-select-trigger__content" }, hasValue && isHtmlLabel(this.displayText) ? (hAsync("span", { class: "sd-select-trigger__text", ref: el => el && (el.innerHTML = sanitizeInlineHtml(this.displayText)) })) : (hAsync("span", { class: "sd-select-trigger__text" }, hasValue ? this.displayText : (this.placeholder ?? '선택'))), hAsync("sd-icon", { key: '9d60c3eeae54ce6ed9609534e3530d0349d1a3ff', name: "chevronDown", size: 12, color: "var(--trigger-icon-color)", class: {
15285
+ }, onFocus: this.handleFocus, onBlur: this.handleBlur }, hAsync("div", { key: 'd8c91e392604c462aa9228147eb18c0b2ac13851', class: "sd-select-trigger__content" }, hasValue && isHtmlLabel(this.displayText) ? (hAsync("span", { class: "sd-select-trigger__text", ref: el => el && (el.innerHTML = sanitizeInlineHtml(this.displayText)) })) : (hAsync("span", { class: "sd-select-trigger__text" }, hasValue ? this.displayText : (this.placeholder ?? '선택'))), hAsync("sd-icon", { key: '1afdcb944b30b675d4d2b31d6aeaa2ce41045d36', name: "chevronDown", size: 12, color: "var(--trigger-icon-color)", class: {
14943
15286
  'sd-select-trigger__icon': true,
14944
15287
  'sd-select-trigger__icon--open': this.isOpen,
14945
15288
  } }))));
@@ -15064,7 +15407,7 @@ class SdSwitch {
15064
15407
  '--sd-switch-line-height': `${SWITCH_TYPOGRAPHY.lineHeight}px`,
15065
15408
  '--sd-switch-text-decoration': SWITCH_TYPOGRAPHY.textDecoration,
15066
15409
  };
15067
- return (hAsync("label", { key: '70b779b6d8fc42e94110d7fb9d88aba22290af3a', "aria-label": this.label || 'switch', class: this.switchClasses, style: cssVars }, hAsync("input", { key: '41281a03161608ce507dd14c8a2a5a47063556ca', type: "checkbox", checked: this.value, disabled: this.disabled, onInput: this.handleChange }), hAsync("div", { key: '0c712f35c9594380b666a03387f0563cfcb1257d', class: "sd-switch__track" }, hAsync("div", { key: 'a96915c01e3a33017d9024e1aea9cd8f50fdd933', class: "sd-switch__knob" })), this.label && hAsync("span", { key: '51d9d2f4a7072cb288ce4257df825ad2d9053f35', class: "sd-switch__label" }, this.label)));
15410
+ return (hAsync("label", { key: '8038810bfcf78ddea9ef73706689e19fdfe0b57f', "aria-label": this.label || 'switch', class: this.switchClasses, style: cssVars }, hAsync("input", { key: 'ee4c60f379f20f56af01bafb0533e6b64bb3054a', type: "checkbox", checked: this.value, disabled: this.disabled, onInput: this.handleChange }), hAsync("div", { key: '8ce56df6d631b742331466ded340298a888576c7', class: "sd-switch__track" }, hAsync("div", { key: 'e02c48a7af9e005524b5d3ba8689e99dd42555f2', class: "sd-switch__knob" })), this.label && hAsync("span", { key: 'c1533c489ef8d0a2b8374d2eaeeb0ac743a9c507', class: "sd-switch__label" }, this.label)));
15068
15411
  }
15069
15412
  static get style() { return sdSwitchCss(); }
15070
15413
  static get cmpMeta() { return {
@@ -15997,24 +16340,24 @@ class SdTable {
15997
16340
  '--table-selectable-width': `${TABLE_SELECTABLE_COLUMN_WIDTH}px`,
15998
16341
  '--table-host-height': hostHeight,
15999
16342
  };
16000
- return (hAsync(Host, { key: '164ba96033be0195fa50e3d4d684059b9c471479', style: hostStyle }, hAsync("div", { key: '2f1a1be73f86c72e7caa46981ee691d29bb237c7', class: "sd-table__container", style: {
16343
+ return (hAsync(Host, { key: '337909d6279baf60effec188eb60422ce47c0585', style: hostStyle }, hAsync("div", { key: '46d53ced85e1700da3c6ca082d5752c0bb4a155b', class: "sd-table__container", style: {
16001
16344
  '--table-width': this.width,
16002
16345
  '--pagination-height': `${paginationHeight}px`,
16003
- } }, hAsync("div", { key: '16976d24d4c21714183f9691b06c503b86388c54', class: {
16346
+ } }, hAsync("div", { key: '159fad6dec16b3328d0da4ce22ae6bca537046e9', class: {
16004
16347
  'sd-table__wrapper': true,
16005
16348
  'sd-table__wrapper--use-top': this.useTop,
16006
- } }, hAsync("div", { key: 'fdd0dcfbff4c3a5e441d720d2e1a39a69c51f9cf', class: {
16349
+ } }, hAsync("div", { key: '22acbc7de61e11807b1a8919090286bb04a98bed', class: {
16007
16350
  'sd-table__scroll-container': true,
16008
16351
  'sd-table__scroll-container--loading': this.isLoading,
16009
16352
  'sd-table__scroll-container--no-data': isNoData,
16010
- } }, this.isLoading && (hAsync("div", { key: 'facb26c0d1651d4a2a6e0dee5c1b8ca73586de89', class: "sd-table__loading", style: { top: `${this.loadingScrollTop}px` } }, hAsync("sd-circle-progress", { key: '844b92fc9fc38f95d51092b698b67b685bcba076', indeterminate: true }))), isNoData && (hAsync(hAsync.Fragment, null, hAsync("div", { key: '458c8e24b85c0e7c99afe940c3d5856e63bc582a', class: "sd-table__no-data-header-overlay" }), hAsync("div", { key: 'bd29a77ac11da7e5d513955a4c4baa0dd89a623d', class: "sd-table__no-data" }, hAsync("div", { key: '7db0e8e3888e97638f3c78d560e844cc0f8b2944', class: "sd-table__no-data-content", ref: el => {
16353
+ } }, this.isLoading && (hAsync("div", { key: '040736d35428396068d5237a17f23f8f70ba2541', class: "sd-table__loading", style: { top: `${this.loadingScrollTop}px` } }, hAsync("sd-circle-progress", { key: 'eae076a71161e315951692f051522b8b5f094271', indeterminate: true }))), isNoData && (hAsync(hAsync.Fragment, null, hAsync("div", { key: 'e8bdf5ae38a77988fce0a60ae9309f5d03b34928', class: "sd-table__no-data-header-overlay" }), hAsync("div", { key: 'd6ce4d4479eb927137b1afd5494a91494568b274', class: "sd-table__no-data" }, hAsync("div", { key: 'cfccc6382e7d0cc76d7f50515cd157ccd56cbac8', class: "sd-table__no-data-content", ref: el => {
16011
16354
  this.noDataContentEl = el;
16012
16355
  if (el)
16013
16356
  this.syncNoDataContentObserver();
16014
- } }, hAsync("slot", { key: 'fa175041907d4af7e5e0db7cad6e9a3e16e96901', name: "no-data" }, hAsync("span", { key: '3fae3a23d86dc543502f74574a4b5c3f026b9992' }, this.resolvedNoDataLabel)))))), hAsync("table", { key: '9ae98e0697e045b308f7e584fb496692acade8ba', class: this.tableClasses }, this.autoThead ? (hAsync("slot", { name: `${resolvedTableId}-head`, onSlotchange: this.handleStructureSlotChange }, hAsync("sd-thead", { rows: this.rows ?? [] }))) : (hAsync("slot", { name: `${resolvedTableId}-head`, onSlotchange: this.handleStructureSlotChange })), this.autoTbody ? (hAsync("slot", { name: `${resolvedTableId}-body`, onSlotchange: this.handleStructureSlotChange }, hAsync("sd-tbody", { rows: this.rows ?? [] }, this.renderAutoRows()))) : (hAsync("slot", { name: `${resolvedTableId}-body`, onSlotchange: this.handleStructureSlotChange }))))), this.pagination &&
16357
+ } }, hAsync("slot", { key: '45a2df0c0fa234408ca5a5fb76b5a74729cad482', name: "no-data" }, hAsync("span", { key: 'a126d8ce4149ac87e55f5a6acc67bbb3a650cdf4' }, this.resolvedNoDataLabel)))))), hAsync("table", { key: 'aa4b94ed02700edd1846ca51235f47fe7de570be', class: this.tableClasses }, this.autoThead ? (hAsync("slot", { name: `${resolvedTableId}-head`, onSlotchange: this.handleStructureSlotChange }, hAsync("sd-thead", { rows: this.rows ?? [] }))) : (hAsync("slot", { name: `${resolvedTableId}-head`, onSlotchange: this.handleStructureSlotChange })), this.autoTbody ? (hAsync("slot", { name: `${resolvedTableId}-body`, onSlotchange: this.handleStructureSlotChange }, hAsync("sd-tbody", { rows: this.rows ?? [] }, this.renderAutoRows()))) : (hAsync("slot", { name: `${resolvedTableId}-body`, onSlotchange: this.handleStructureSlotChange }))))), this.pagination &&
16015
16358
  this.pagination.rowsPerPage > 0 &&
16016
16359
  this.rowCount > 0 &&
16017
- !this.useVirtualScroll && (hAsync("div", { key: 'a0da779351490332035ec784bc301ea2cb017afd', class: "sd-table__pagination" }, hAsync("sd-pagination", { key: '8c3bcd06e1644afaebabd3762cdb03900f727142', currentPage: !this.useInternalPagination ? this.pagination.page : this.currentPage, lastPage: !this.useInternalPagination ? this.pagination.lastPage : this.lastPageNumber, onSdPageChange: (e) => this.changePage(e.detail) }), this.useRowsPerPageSelect && (hAsync("sd-select", { key: '4bff157ac6e0fb5efe03663d4bbf58d67f8308b6', value: this.useInternalPagination
16360
+ !this.useVirtualScroll && (hAsync("div", { key: 'f4d357d62af40e3ea8f35c799b4409c7deb2606f', class: "sd-table__pagination" }, hAsync("sd-pagination", { key: '6aad139f1f06d1851f30b5c8331899fe9d23ba37', currentPage: !this.useInternalPagination ? this.pagination.page : this.currentPage, lastPage: !this.useInternalPagination ? this.pagination.lastPage : this.lastPageNumber, onSdPageChange: (e) => this.changePage(e.detail) }), this.useRowsPerPageSelect && (hAsync("sd-select", { key: '85aa19726fca6dce007d8ffcc5550de8115546cb', value: this.useInternalPagination
16018
16361
  ? this.innerRowsPerPage
16019
16362
  : this.pagination.rowsPerPage, options: this.rowsPerPageOption, width: "128px", emitValue: true, onSdUpdate: e => {
16020
16363
  if (!this.isRowsPerPageValue(e.detail))
@@ -16319,7 +16662,7 @@ class SdTabs {
16319
16662
  };
16320
16663
  }
16321
16664
  render() {
16322
- return (hAsync("div", { key: '1c670c50ff7f5489a77043bc030fe3a65eb894ab', class: this.getContainerClasses(), style: this.buildCssVars() }, this.tabs.map((tab, index) => {
16665
+ return (hAsync("div", { key: 'fd65e555621e8b9f9c8e93578f41f1c24a8cbeda', class: this.getContainerClasses(), style: this.buildCssVars() }, this.tabs.map((tab, index) => {
16323
16666
  const badgeName = this.getBadgeName(tab);
16324
16667
  return (hAsync("div", { key: `tab-${index}`, role: "tab", tabindex: 0, "aria-selected": tab.value === this.value ? 'true' : 'false', class: this.getTabClasses(tab), "aria-label": tab.label || 'tab', onClick: () => this.handleTabClick(tab), onKeyDown: e => {
16325
16668
  if (e.key === 'Enter' || e.key === ' ') {
@@ -16558,7 +16901,7 @@ class SdTag {
16558
16901
  render() {
16559
16902
  const config = this.resolvedConfig;
16560
16903
  const iconNode = this.renderIcon(config.icon, config.iconSize);
16561
- return (hAsync("span", { key: 'f5dd5e267ffdde104f36ec7f19390357dbf03610', class: "sd-tag", style: {
16904
+ return (hAsync("span", { key: 'b4d86dee7290a74d73fd27a9a4133c5c0ef9b750', class: "sd-tag", style: {
16562
16905
  '--sd-tag-background': config.background,
16563
16906
  '--sd-tag-content': config.content,
16564
16907
  '--sd-tag-height': config.height,
@@ -16568,7 +16911,7 @@ class SdTag {
16568
16911
  '--sd-tag-font-weight': config.fontWeight,
16569
16912
  '--sd-tag-line-height': config.lineHeight,
16570
16913
  '--sd-tag-radius': config.radius,
16571
- }, "aria-label": this.label || 'tag' }, this.icon && this.isLeft && iconNode, hAsync("span", { key: '53c649171b1bba53bf71bbf8f382c0678f1a3a6f', class: "sd-tag__label" }, this.label), this.icon && !this.isLeft && iconNode));
16914
+ }, "aria-label": this.label || 'tag' }, this.icon && this.isLeft && iconNode, hAsync("span", { key: '490c703ca9ce3d0516b1da89fec18045a750d715', class: "sd-tag__label" }, this.label), this.icon && !this.isLeft && iconNode));
16572
16915
  }
16573
16916
  static get style() { return sdTagCss(); }
16574
16917
  static get cmpMeta() { return {
@@ -16636,9 +16979,9 @@ class SdTbody {
16636
16979
  }
16637
16980
  }
16638
16981
  render() {
16639
- return (hAsync(Host, { key: 'bc05db24c914d72f0480e0d6d9b594e21cf03153', slot: `${this.tableId}-body` }, hAsync("tbody", { key: 'ba4eb8fcbc184bcd245f47093ca5acfacc3aebf3', class: { tbody: true } }, [
16982
+ return (hAsync(Host, { key: '1f9dba3a06233de0457c6fe7d2df39e0e406fb30', slot: `${this.tableId}-body` }, hAsync("tbody", { key: '758d795512ff546ec23863a1b9a0940f5d0f445a', class: { tbody: true } }, [
16640
16983
  this.topSpacerHeight > 0 && (hAsync("tr", { key: "spacer-top", class: "tbody__spacer", style: { height: `${this.topSpacerHeight}px`, display: 'block' } })),
16641
- hAsync("slot", { key: '3c9d25b226dfb20b044a718416d3cdda13eff798' }),
16984
+ hAsync("slot", { key: 'cd9755c4f082478b1e75a6efcf9b4e7a9a9767b4' }),
16642
16985
  this.bottomSpacerHeight > 0 && (hAsync("tr", { key: "spacer-bottom", class: "tbody__spacer", style: { height: `${this.bottomSpacerHeight}px`, display: 'block' } })),
16643
16986
  ])));
16644
16987
  }
@@ -16813,7 +17156,7 @@ class SdTd {
16813
17156
  }
16814
17157
  }
16815
17158
  render() {
16816
- return (hAsync(Host, { key: '95f97474c4d00a35085c558bf43593322a9f69e7', class: { [`align-${this.align}`]: Boolean(this.align) } }, hAsync("slot", { key: 'f67d1e8b125c10446dac3abdfa0da01bfb83f470' })));
17159
+ return (hAsync(Host, { key: '02464050ab6179a4d19bc5885aff8c2690cc3dd6', class: { [`align-${this.align}`]: Boolean(this.align) } }, hAsync("slot", { key: 'a4cde26644aea2e1a99690c407b7020b20bd3981' })));
16817
17160
  }
16818
17161
  static get watchers() { return {
16819
17162
  "field": [{
@@ -16993,7 +17336,7 @@ class SdTextLink {
16993
17336
  this.click.emit();
16994
17337
  };
16995
17338
  render() {
16996
- const sizeConfig = TEXT_LINK_SIZE_CONFIG[this.size];
17339
+ const sizeConfig = TEXT_LINK_SIZE_CONFIG[this.size] ?? TEXT_LINK_SIZE_CONFIG.sm;
16997
17340
  const typo = this.underline ? sizeConfig.typography.underline : sizeConfig.typography.default;
16998
17341
  const labelClassName = ['sd-text-link__label', this.labelClass].filter(Boolean).join(' ');
16999
17342
  const iconColor = this.disabled
@@ -17007,7 +17350,7 @@ class SdTextLink {
17007
17350
  '--sd-text-link-text-decoration': typo.textDecoration,
17008
17351
  ...(this.disabled ? { '--sd-text-link-color': TEXT_LINK_COLORS.content.disabled } : {}),
17009
17352
  };
17010
- return (hAsync("span", { key: '89b8117d19d149faf70d026ef560acdfa0096daa', role: "button", tabindex: this.disabled ? -1 : 0, class: {
17353
+ return (hAsync("span", { key: '74e9dd05f3efa3ecfec4edca1b74c29bb7207894', role: "button", tabindex: this.disabled ? -1 : 0, class: {
17011
17354
  'sd-text-link': true,
17012
17355
  'sd-text-link--disabled': this.disabled,
17013
17356
  }, style: cssVars, onClick: this.handleClick, onKeyDown: e => {
@@ -17015,13 +17358,13 @@ class SdTextLink {
17015
17358
  e.preventDefault();
17016
17359
  this.handleClick();
17017
17360
  }
17018
- } }, this.icon && (hAsync("sd-icon", { key: '684c7b31abc6cb806944c03a016c4520c4721a7c', name: this.icon, size: sizeConfig.iconSize, color: iconColor, class: "sd-text-link__icon" })), hAsync("span", { key: '272f5b4c889b099ede7b5146ea4828648d89ad69', class: labelClassName }, this.label), this.rightArrow && this.rightArrow !== 'none' && (hAsync("span", { key: '142d37f856df2e5858df5d976e4d8ac4ee2f2607', class: "sd-text-link__arrow", style: {
17361
+ } }, this.icon && (hAsync("sd-icon", { key: 'e60be0764adf889af988fd887582776d44239e07', name: this.icon, size: sizeConfig.iconSize, color: iconColor, class: "sd-text-link__icon" })), hAsync("span", { key: '17996ef0620948fe1660945e68c9bb55e62fc982', class: labelClassName }, this.label), this.rightArrow && this.rightArrow !== 'none' && (hAsync("span", { key: 'b9cfc03d4295beb9956f661032ea3fd1d9acfbe9', class: "sd-text-link__arrow", style: {
17019
17362
  width: `${TEXT_LINK_ARROW.arrowFrame}px`,
17020
17363
  height: `${TEXT_LINK_ARROW.arrowFrame}px`,
17021
17364
  display: 'inline-flex',
17022
17365
  alignItems: 'center',
17023
17366
  justifyContent: 'center',
17024
- } }, hAsync("sd-icon", { key: '5da12b6077fb33912260b353cb6fe7d533eab937', name: this.rightArrow === 'chevron' ? 'chevronRight' : 'caretRight', size: TEXT_LINK_ARROW.arrowIconSize, color: arrowColor })))));
17367
+ } }, hAsync("sd-icon", { key: '6c2e4640a767acd5e66089e7e78f27c0fb8a0955', name: this.rightArrow === 'chevron' ? 'chevronRight' : 'caretRight', size: TEXT_LINK_ARROW.arrowIconSize, color: arrowColor })))));
17025
17368
  }
17026
17369
  static get style() { return sdTextLinkCss(); }
17027
17370
  static get cmpMeta() { return {
@@ -17169,7 +17512,7 @@ class SdTextarea {
17169
17512
  '--sd-system-size-field-sm-height': 'auto',
17170
17513
  '--sd-system-radius-field-sm': `${TEXTAREA_TOKENS.radius}px`,
17171
17514
  };
17172
- return (hAsync("sd-field", { key: '2a1cd03e4f0fa5457b3164f1b6b71d808633414c', name: this.name, label: this.label, labelWidth: this.labelWidth, addonLabel: this.addonLabel, addonAlign: this.addonAlign, hint: this.hint, errorMessage: this.errorMessage, width: this.width, rules: this.rules, error: this.error, disabled: this.disabled, readonly: this.readonly, focused: this.focused, hovered: this.hovered, status: this.status, icon: this.icon, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false), style: cssVars }, hAsync("div", { key: 'b4e25ced8e583ed3d6e8a6026db0d3a2f198acb4', class: "sd-textarea__content" }, hAsync("textarea", { key: '4faeceee380a7ab9a4ff337d16f46c4d7f42fa50', name: this.name, ref: el => (this.nativeEl = el), class: `sd-textarea__native ${this.textareaClass}`, value: this.internalValue || '', placeholder: this.placeholder ?? '입력해 주세요.', disabled: this.disabled, readOnly: this.readonly, autofocus: this.autoFocus, maxLength: this.maxLength, rows: this.rows, spellcheck: this.spellcheck, onInput: this.handleInput, onFocus: event => this.handleFocus('focus', event), onBlur: event => this.handleFocus('blur', event), style: this.textareaStyle }))));
17515
+ return (hAsync("sd-field", { key: '526fc1a73f13e5170125a570c5a1c8459931aa25', name: this.name, label: this.label, labelWidth: this.labelWidth, addonLabel: this.addonLabel, addonAlign: this.addonAlign, hint: this.hint, errorMessage: this.errorMessage, width: this.width, rules: this.rules, error: this.error, disabled: this.disabled, readonly: this.readonly, focused: this.focused, hovered: this.hovered, status: this.status, icon: this.icon, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false), style: cssVars }, hAsync("div", { key: 'e3c52fccc564a2488eb9e0d9399437b76e919c6a', class: "sd-textarea__content" }, hAsync("textarea", { key: '3253873da3b9591e64a6dfd170c8d9ccb4861599', name: this.name, ref: el => (this.nativeEl = el), class: `sd-textarea__native ${this.textareaClass}`, value: this.internalValue || '', placeholder: this.placeholder ?? '입력해 주세요.', disabled: this.disabled, readOnly: this.readonly, autofocus: this.autoFocus, maxLength: this.maxLength, rows: this.rows, spellcheck: this.spellcheck, onInput: this.handleInput, onFocus: event => this.handleFocus('focus', event), onBlur: event => this.handleFocus('blur', event), style: this.textareaStyle }))));
17173
17516
  }
17174
17517
  static get watchers() { return {
17175
17518
  "value": [{
@@ -17386,16 +17729,16 @@ class SdThead {
17386
17729
  '--table-border-color': TABLE_BORDER.color,
17387
17730
  '--table-border-width': `${TABLE_BORDER.width}px`,
17388
17731
  };
17389
- return (hAsync(Host, { key: '822abd0e5ff71d9e55b6478d56c9277009983deb', slot: `${this.tableId}-head`, style: headStyle }, hAsync("thead", { key: '7c690c49eb0d9be48637b8a6e92287fac22bf377', class: {
17732
+ return (hAsync(Host, { key: '1e352d3996dc6cd60acd20c22c8c426edabaa9ea', slot: `${this.tableId}-head`, style: headStyle }, hAsync("thead", { key: 'd76dbdd5b03096197fe09d69c198ab3a5892106c', class: {
17390
17733
  'thead': true,
17391
17734
  'thead--sticky': this._stickyHeader,
17392
- } }, hAsync("tr", { key: '81c64bb5b06d7e8525ebceaf6a229034e90f7a48', class: "tr" }, this._selectable && (hAsync("th", { key: 'fe00535fb5cd54d053c17b3d3a6fa8869d483b8b', class: {
17735
+ } }, hAsync("tr", { key: 'fb0c1f8ff93ddb8682b07e9b4f55eaf56b1be41a', class: "tr" }, this._selectable && (hAsync("th", { key: 'a53b9771dbec3ef7f3888bf9fc9393c683356c50', class: {
17393
17736
  'th': true,
17394
17737
  'th--selected': true,
17395
17738
  'sticky-left': true,
17396
17739
  'sticky-left-edge': stickyLeftCount === 0,
17397
17740
  'is-scrolled-left': stickyLeftCount === 0 && this._scrolledLeft,
17398
- }, style: { '--sticky-left-offset': '0px' } }, hAsync("sd-checkbox", { key: 'de1a3ddf9b3df06d8cc9b85431c31ff84b7b8218', value: this.getIsAllChecked(), disabled: safeRows.length === 0, onSdUpdate: (e) => this.handleSelectAll(e.detail) }), hAsync("div", { key: 'afe516ce212b24abcb075b6e6eb661ffcb6ce297', class: "th__bar" }))), stickyLeftCols.map((col, idx) => (hAsync("th", { key: col.name, class: {
17741
+ }, style: { '--sticky-left-offset': '0px' } }, hAsync("sd-checkbox", { key: '8dc233b34b68a5daca91a60364ec8faffeb4b21d', value: this.getIsAllChecked(), disabled: safeRows.length === 0, onSdUpdate: (e) => this.handleSelectAll(e.detail) }), hAsync("div", { key: 'bfc496c2468f3f81c1db4ffe70584a9229bd3512', class: "th__bar" }))), stickyLeftCols.map((col, idx) => (hAsync("th", { key: col.name, class: {
17399
17742
  'th': true,
17400
17743
  [`${col.thClass}`]: Boolean(col.thClass),
17401
17744
  'sticky-left': true,
@@ -17546,12 +17889,12 @@ class SdToast {
17546
17889
  const linkColor = typeConfig.linkColor ?? typeConfig.content;
17547
17890
  const useDefaultCloseIntent = ['default', 'caution', 'info'].includes(this.type);
17548
17891
  const buttonName = TOAST_BUTTON_NAME_BY_TYPE[this.type] ?? TOAST_BUTTON_NAME_BY_TYPE.default;
17549
- return (hAsync("div", { key: '82c8063406a534e60c985d3c8321612077f75623', style: {
17892
+ return (hAsync("div", { key: '656bf6231262cc7d974adbe5f0ce0053d03aca84', style: {
17550
17893
  '--sd-toast-bg': typeConfig.bg,
17551
17894
  '--sd-toast-text': typeConfig.content,
17552
17895
  '--sd-toast-icon': iconColor,
17553
17896
  '--sd-toast-link': linkColor,
17554
- } }, hAsync("div", { key: 'e83c5b7ddc0edec3fb9e29325dcb52e3295fad4d', class: "sd-toast", role: "status", "aria-live": "polite", "aria-atomic": "true" }, this.icon && (hAsync("div", { key: 'd249e5915f0c92a0a2cff43dee5c61d809ffc7f0', class: "sd-toast__icon" }, hAsync("sd-icon", { key: '088da81d0083cc0ca72f2bf59392a72d3f2ed4de', name: this.icon, size: iconSize, color: iconColor }))), hAsync("div", { key: '5cad9a3a81b00d8926d92d9895c4cca1389dc63b', class: "sd-toast__content" }, hAsync("span", { key: '1fbc72aac70fbb3bb630ad10343ea2c8f76f924c', class: "sd-toast__message" }, this.message)), this.link && (hAsync("a", { key: '769a85fa539bab8b478ef999cab615285a842085', href: this.link, class: "sd-toast__link", target: "_blank", rel: "noopener noreferrer" }, this.linkLabel || this.link)), this.buttonLabel && (hAsync("sd-button", { key: '77612614898b6abdade4b4599987cbb90bc09c4e', class: "sd-toast__button", name: buttonName, label: this.buttonLabel, onSdClick: (event) => this.buttonClick.emit(event.detail) })), this.useClose && (hAsync("sd-ghost-button", { key: '3bef6c0e7f3dec3f2b1f493f9c979a121bc897e9', class: "sd-toast__close", icon: "close", intent: useDefaultCloseIntent ? 'default' : 'inverse', ariaLabel: "close", size: "xs", onClick: () => this.close.emit() })))));
17897
+ } }, hAsync("div", { key: '1e15e50c926ce65cea86db069dd1e79a642da01c', class: "sd-toast", role: "status", "aria-live": "polite", "aria-atomic": "true" }, this.icon && (hAsync("div", { key: '692277c23c4530d9fa0c5e26ea9d3b9759024dea', class: "sd-toast__icon" }, hAsync("sd-icon", { key: '0a15993313f3a9d1f27d6ae727c2c248c3390701', name: this.icon, size: iconSize, color: iconColor }))), hAsync("div", { key: '9c1af0c9cedbb772b9b59ae80a0ff861066aa0de', class: "sd-toast__content" }, hAsync("span", { key: '2aacd89fe1cf31f271da027459a6cfaece3dbdbf', class: "sd-toast__message" }, this.message)), this.link && (hAsync("a", { key: '094a68e843d9ab50cea46a506d6ccdc1ebf375d7', href: this.link, class: "sd-toast__link", target: "_blank", rel: "noopener noreferrer" }, this.linkLabel || this.link)), this.buttonLabel && (hAsync("sd-button", { key: '7dabe182870a01cf285ee7441dfe39b07e943751', class: "sd-toast__button", name: buttonName, label: this.buttonLabel, onSdClick: (event) => this.buttonClick.emit(event.detail) })), this.useClose && (hAsync("sd-ghost-button", { key: '2a893c6ace888d8f21ce16c9dbf2a35b23bc9372', class: "sd-toast__close", icon: "close", intent: useDefaultCloseIntent ? 'default' : 'inverse', ariaLabel: "close", size: "xs", onClick: () => this.close.emit() })))));
17555
17898
  }
17556
17899
  static get style() { return sdToastCss(); }
17557
17900
  static get cmpMeta() { return {
@@ -17804,7 +18147,7 @@ class SdToastContainer {
17804
18147
  const activeToasts = toasts.filter(t => t.state !== 'exiting').reverse();
17805
18148
  const indexMap = new Map();
17806
18149
  activeToasts.forEach((t, i) => indexMap.set(t.id, i));
17807
- return (hAsync("div", { key: '2b0bc86b7e2ea19a44f3c0b870ce5dec1de3a140', class: "sd-toast-container", style: this.getContainerStyles(), onMouseEnter: () => {
18150
+ return (hAsync("div", { key: '44b4f34b231186fd00ef9c1a65bd68a83fced6da', class: "sd-toast-container", style: this.getContainerStyles(), onMouseEnter: () => {
17808
18151
  this.expanded = true;
17809
18152
  this.pauseTimers();
17810
18153
  }, onMouseLeave: () => {
@@ -17962,7 +18305,7 @@ class SdToggle {
17962
18305
  '--sd-toggle-content-select': TOGGLE_COLORS.content.select,
17963
18306
  '--sd-toggle-content-disabled': TOGGLE_COLORS.content.disabled,
17964
18307
  };
17965
- return (hAsync("label", { key: 'f61e80701bc85205794aec0c960965d29b94a247', class: this.toggleClasses, style: cssVars, "aria-label": this.label || 'toggle' }, this.label, hAsync("input", { key: '26a31febfdae6bebe55291d3454a177366dc3db0', style: { display: 'none' }, type: "checkbox", onInput: this.handleChange })));
18308
+ return (hAsync("label", { key: '5657698c379c71e770b18006b5f5c69c122a06a7', class: this.toggleClasses, style: cssVars, "aria-label": this.label || 'toggle' }, this.label, hAsync("input", { key: '8f72307d4efd029df200243cf670377aea2cff02', style: { display: 'none' }, type: "checkbox", onInput: this.handleChange })));
17966
18309
  }
17967
18310
  static get style() { return sdToggleCss(); }
17968
18311
  static get cmpMeta() { return {
@@ -18136,7 +18479,7 @@ class SdTooltip {
18136
18479
  const bodyHTML = this.message && this.message.length > 0
18137
18480
  ? this.message.map(line => `<div>${line}</div>`).join('')
18138
18481
  : this.slotContentHTML;
18139
- return (hAsync(Fragment, { key: 'f00448f29503fd9adba06c7213123db1cebd4fbb' }, hAsync("div", { key: '07bd69c34c0e70e1feba5a836a0a68e27c5bae19', ref: el => (this.triggerEl = el), class: triggerClasses, ...divTrigger }, anchorMode ? (hAsync("slot", { name: "anchor" })) : hasLabel ? (hAsync("sd-button", { ref: el => (this.buttonEl = el), name: this.name ?? 'primary_sm', label: this.label, icon: icon, rightIcon: this.rightIcon, ariaLabel: this.ariaLabel, disabled: this.disabled, type: this.type ?? 'button', class: "sd-tooltip", ...buttonClickTrigger })) : (hAsync("sd-icon", { ref: el => (this.buttonEl = el), name: icon, size: this.iconSize ?? 12, color: color, class: "sd-tooltip" }))), this.showTooltip && (hAsync("sd-floating-portal", { key: '5d0bb60a23c2684b554b7ccfd0950f403b52271c', parentRef: anchorMode ? this.triggerEl : this.buttonEl, onSdClose: this.handleClose, placement: placement, offset: this.tooltipOffset }, hAsync("div", { key: '71c3e01f0f053c3e0fd5cfd2ca7ea293f84dab5f', ref: el => (this.menuEl = el), class: {
18482
+ return (hAsync(Fragment, { key: 'c0d000057ed61fe7b6b4d92bc0df5e0c6d42d714' }, hAsync("div", { key: '4ae084008ddec50e912fa81efbe3adbe0428d7ea', ref: el => (this.triggerEl = el), class: triggerClasses, ...divTrigger }, anchorMode ? (hAsync("slot", { name: "anchor" })) : hasLabel ? (hAsync("sd-button", { ref: el => (this.buttonEl = el), name: this.name ?? 'primary_sm', label: this.label, icon: icon, rightIcon: this.rightIcon, ariaLabel: this.ariaLabel, disabled: this.disabled, type: this.type ?? 'button', class: "sd-tooltip", ...buttonClickTrigger })) : (hAsync("sd-icon", { ref: el => (this.buttonEl = el), name: icon, size: this.iconSize ?? 12, color: color, class: "sd-tooltip" }))), this.showTooltip && (hAsync("sd-floating-portal", { key: 'd5a8718b4e4556b989e5439b89296a259d99c636', parentRef: anchorMode ? this.triggerEl : this.buttonEl, onSdClose: this.handleClose, placement: placement, offset: this.tooltipOffset }, hAsync("div", { key: 'e81f2704ddbc90a19c1e8dd0c4660c4b057ca895', ref: el => (this.menuEl = el), class: {
18140
18483
  'sd-floating-menu': true,
18141
18484
  [`sd-floating-menu--${tooltipType}`]: true,
18142
18485
  [`sd-floating-menu--${placement}`]: true,
@@ -18144,7 +18487,7 @@ class SdTooltip {
18144
18487
  }, style: {
18145
18488
  '--sd-floating-bg': typeConfig.bg,
18146
18489
  '--sd-floating-content': typeConfig.content,
18147
- }, onMouseEnter: () => this.openTooltip(), onMouseLeave: () => !this.useClose && this.startHideTimer() }, hAsync("i", { key: 'afdcd221a431225919ef813eeda9c00cbf791842', class: `sd-floating-menu__arrow sd-floating-menu__arrow--${placement}` }, hAsync(TooltipArrow, { key: '9722c8b78eda399d00d760bf09bf588aed5ff049' })), hAsync("div", { key: 'befe12ad984ca7d902ce9da41199045687fd1057', class: "sd-floating-menu__content", innerHTML: bodyHTML }), this.useClose && (hAsync("sd-ghost-button", { key: 'b5dad91a49447251f69676c1ff9084c096d1b28f', class: "sd-floating-menu__close-button", icon: "close", ariaLabel: "close", size: "xxs", onClick: () => this.closeTooltip() })))))));
18490
+ }, onMouseEnter: () => this.openTooltip(), onMouseLeave: () => !this.useClose && this.startHideTimer() }, hAsync("i", { key: '735cfb9956644542afb3b9f65aea127c37d756b2', class: `sd-floating-menu__arrow sd-floating-menu__arrow--${placement}` }, hAsync(TooltipArrow, { key: '53bac0c98b652b580b53b206d3da77deac0eea77' })), hAsync("div", { key: '50c55e606002225363364ca6b5238a55a25374ba', class: "sd-floating-menu__content", innerHTML: bodyHTML }), this.useClose && (hAsync("sd-ghost-button", { key: '7ab15f030aef1ecda2a3be0c08af2c7ab4992f1c', class: "sd-floating-menu__close-button", icon: "close", ariaLabel: "close", size: "xxs", onClick: () => this.closeTooltip() })))))));
18148
18491
  }
18149
18492
  static get style() { return sdTooltipCss(); }
18150
18493
  static get cmpMeta() { return {