@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
@@ -182,21 +182,21 @@ export class SdField {
182
182
  : {}),
183
183
  }
184
184
  : {};
185
- return (h("div", { key: 'a04858364c6b9afceedba2f5d7ee0e289a6b6782', class: {
185
+ return (h("div", { key: '9edafceb24a4fcde7cfb966f421bfb73f1b07617', class: {
186
186
  'sd-field': true,
187
187
  'sd-field--has-label': this.label !== '',
188
188
  'sd-field--has-addon': addon !== '',
189
189
  [this.fieldStatus]: this.fieldStatus !== '',
190
- }, style: { ...sizeCssVars, ...labelCssVars, ...addonCssVars, ...messageCssVars } }, h("div", { key: '898f5af4d213745257b2666cbea56db591792054', class: "sd-field__wrapper" }, this.renderLabel(this.label), h("div", { key: '488ab5c290258d0139f677319f21a55bb6c63876', class: "sd-field__main", style: this.width !== '' && this.width !== 0
190
+ }, style: { ...sizeCssVars, ...labelCssVars, ...addonCssVars, ...messageCssVars } }, h("div", { key: 'e5c4a8aad05afb40f3eccc492135b2b968ffc646', class: "sd-field__wrapper" }, this.renderLabel(this.label), h("div", { key: 'e88d62a979eaab9f6794c851813e5f56c3c5c4ac', class: "sd-field__main", style: this.width !== '' && this.width !== 0
191
191
  ? {
192
192
  width: typeof this.width === 'number' ? `${this.width}px` : this.width,
193
193
  flex: 'none',
194
194
  }
195
- : {} }, h("div", { key: 'db8c388dd2c4743a287f7567cde4015cafed1d95', class: {
195
+ : {} }, h("div", { key: 'be69d7e48d90dda0872ffc43c2a1b4044e99ac00', class: {
196
196
  'sd-field__control': true,
197
197
  'sd-field__control--has-addon': addon !== '',
198
- } }, addon && (h("div", { key: '1049369f52322fb1a4f1b4baf50b1e4ef2e9e59e', class: "sd-field__addon" }, this.icon && (h("sd-icon", { key: 'f0a28d9bdf97730088454c64b71b7cbc1d4dd875', name: this.icon.name, size: this.icon.size ??
199
- 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)), h("slot", { key: 'deee9ef5d166ab4d17451ad9d013b3b9d3d7aebe' })), this.errorMsg !== '' || this.errorMessage !== '' ? (h("div", { class: "sd-field__error-message" }, this.errorMsg !== '' ? this.errorMsg : this.errorMessage)) : (this.hint !== '' && h("div", { class: "sd-field__hint" }, this.hint))))));
198
+ } }, addon && (h("div", { key: '2c631ac0f8b9001cf6344908cf8cbcdf182cc1a7', class: "sd-field__addon" }, this.icon && (h("sd-icon", { key: '34a49839ee200cd59c3ff5b84caf5ded2c50f7b0', name: this.icon.name, size: this.icon.size ??
199
+ 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)), h("slot", { key: '693f20c529e5f2ea84d381e59327392edb7b4c15' })), this.errorMsg !== '' || this.errorMessage !== '' ? (h("div", { class: "sd-field__error-message" }, this.errorMsg !== '' ? this.errorMsg : this.errorMessage)) : (this.hint !== '' && h("div", { class: "sd-field__hint" }, this.hint))))));
200
200
  }
201
201
  renderLabel(label) {
202
202
  if (label == null || label === '')
@@ -152,7 +152,7 @@ export class SdFloatingPopover {
152
152
  }
153
153
  }
154
154
  render() {
155
- return h("slot", { key: '7931b1b9ee17e2de64a7fa87658ec7d4501f7ecd' });
155
+ return h("slot", { key: 'f20806555ad198c33a62ec938ea7b77200fa1585' });
156
156
  }
157
157
  static get is() { return "sd-floating-portal"; }
158
158
  static get originalStyleUrls() {
@@ -76,7 +76,7 @@ export class SdGhostButton {
76
76
  "mutable": false,
77
77
  "complexType": {
78
78
  "original": "IconName",
79
- "resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"dashboard\" | \"date\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"star\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\"",
79
+ "resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"bill\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"coupon\" | \"dashboard\" | \"date\" | \"delete\" | \"dot\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"launcher\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"monitor\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"shield\" | \"sidebar\" | \"star\" | \"store\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\"",
80
80
  "references": {
81
81
  "IconName": {
82
82
  "location": "global",
@@ -48,7 +48,7 @@ export class SdIcon {
48
48
  "mutable": false,
49
49
  "complexType": {
50
50
  "original": "IconName",
51
- "resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"dashboard\" | \"date\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"star\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\"",
51
+ "resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"bill\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"coupon\" | \"dashboard\" | \"date\" | \"delete\" | \"dot\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"launcher\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"monitor\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"shield\" | \"sidebar\" | \"star\" | \"store\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\"",
52
52
  "references": {
53
53
  "IconName": {
54
54
  "location": "global",
@@ -112,12 +112,12 @@ export class SdInput {
112
112
  '--sd-system-size-field-sm-height': `${sizeTokens.height}px`,
113
113
  '--sd-system-radius-field-sm': `${sizeTokens.radius}px`,
114
114
  };
115
- return (h("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 }, h("label", { key: 'f7d8f95cf5ee38a7aa2e44940ba39b9eb001064c', class: "sd-input__content" }, h("slot", { key: '23f1f770a268a0798293420ce0df9e5cc94e07b2', name: "prefix" }), h("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 }), h("slot", { key: '5a288d50726b21c156da480937b9759e6c76d33a', name: "suffix" }), this.clearable && this.internalValue && !this.disabled && !this.readonly && (h("sd-ghost-button", { key: 'b5315624a6fd5fdcb70526b1abea4fbac83641c1', icon: "close", ariaLabel: "clear", size: "xxs", disabled: this.disabled, class: "sd-input__clear-icon", onClick: async () => {
115
+ return (h("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 }, h("label", { key: 'b66e286c35cc14c1eb02badcaaff24b38ff0a7b3', class: "sd-input__content" }, h("slot", { key: 'dc8b900eb2b38c18b85663bc930e810be77bdbd7', name: "prefix" }), h("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 }), h("slot", { key: '4f30d4a59794c0692f367d41af4311e191c5427b', name: "suffix" }), this.clearable && this.internalValue && !this.disabled && !this.readonly && (h("sd-ghost-button", { key: '247da41512f20d8e562f345b08bd5bc13486734b', icon: "close", ariaLabel: "clear", size: "xxs", disabled: this.disabled, class: "sd-input__clear-icon", onClick: async () => {
116
116
  if (this.disabled || this.readonly)
117
117
  return;
118
118
  this.internalValue = '';
119
119
  await this.formField?.sdValidate();
120
- } })), this.type === 'password' && (h("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: () => {
120
+ } })), this.type === 'password' && (h("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: () => {
121
121
  if (this.disabled || this.readonly)
122
122
  return;
123
123
  this.passwordVisible = !this.passwordVisible;
@@ -5,8 +5,7 @@ export const KEY_VALUE_TABLE_LAYOUT = {
5
5
  rowHeight: Number(t.keyValue.height),
6
6
  thWidth: 120,
7
7
  borderRadius: Number(t.radius),
8
- paddingX: Number(t.body.paddingX),
9
- paddingY: Number(t.keyValue.body.padding),
8
+ padding: Number(t.keyValue.body.padding),
10
9
  helpIconSize: 16,
11
10
  requiredIconSize: 12,
12
11
  gap: Number(t.header.gap),
@@ -27,7 +26,7 @@ export const KEY_VALUE_TABLE_COLORS = {
27
26
  export const KEY_VALUE_TABLE_TYPOGRAPHY = {
28
27
  labelFontFamily: t.header.typography.fontFamily,
29
28
  labelFontSize: Number(t.header.typography.fontSize),
30
- labelFontWeight: Number(t.header.typography.fontWeight),
29
+ labelFontWeight: 700,
31
30
  labelLineHeight: Number(t.header.typography.lineHeight),
32
31
  tdFontFamily: t.body.typography.fontFamily,
33
32
  tdFontSize: Number(t.body.typography.fontSize),
@@ -23,7 +23,7 @@ sd-key-value-table .sd-key-value-table__search-panel {
23
23
  align-items: center;
24
24
  justify-content: center;
25
25
  flex: 0 0 auto;
26
- padding: var(--sd-kvt-padding-y) var(--sd-kvt-search-padding-x);
26
+ padding: var(--sd-kvt-padding) var(--sd-kvt-search-padding-x);
27
27
  background: var(--sd-kvt-search-bg);
28
28
  border-left: var(--sd-kvt-border-width) solid var(--sd-kvt-border-color);
29
29
  }
@@ -42,7 +42,7 @@ sd-key-value-table .sd-key-value-table.sd-key-value-table--use-top {
42
42
  }
43
43
  sd-key-value-table .sd-key-value-table__th, sd-key-value-table .sd-key-value-table__td {
44
44
  height: var(--sd-kvt-row-height);
45
- padding: var(--sd-kvt-padding-y) var(--sd-kvt-padding-x);
45
+ padding: var(--sd-kvt-padding);
46
46
  box-sizing: border-box;
47
47
  vertical-align: middle;
48
48
  text-align: left;
@@ -101,6 +101,28 @@ export class SdKeyValueTable {
101
101
  });
102
102
  return max;
103
103
  }
104
+ /**
105
+ * thStyle의 CSS 속성 값을 해당 CSS 변수로도 반영.
106
+ * label span이 var()로 스타일을 참조하기 때문에, 인라인 스타일만으로는 상속이 되지 않음.
107
+ */
108
+ buildThStyle(thStyle) {
109
+ const s = { ...thStyle };
110
+ if (thStyle.color != null)
111
+ s['--sd-kvt-th-color'] = thStyle.color;
112
+ if (thStyle.background != null)
113
+ s['--sd-kvt-th-bg'] = thStyle.background;
114
+ if (thStyle.backgroundColor != null)
115
+ s['--sd-kvt-th-bg'] = thStyle.backgroundColor;
116
+ if (thStyle.fontFamily != null)
117
+ s['--sd-kvt-label-font-family'] = thStyle.fontFamily;
118
+ if (thStyle.fontSize != null)
119
+ s['--sd-kvt-label-font-size'] = thStyle.fontSize;
120
+ if (thStyle.fontWeight != null)
121
+ s['--sd-kvt-label-font-weight'] = thStyle.fontWeight;
122
+ if (thStyle.lineHeight != null)
123
+ s['--sd-kvt-label-line-height'] = thStyle.lineHeight;
124
+ return s;
125
+ }
104
126
  renderTh(field, r, c) {
105
127
  const thRowSpan = field.thRowSpan != null && field.thRowSpan > 1 ? field.thRowSpan : undefined;
106
128
  const thColSpan = field.thColSpan != null && field.thColSpan > 1 ? field.thColSpan : undefined;
@@ -111,7 +133,8 @@ export class SdKeyValueTable {
111
133
  else if (Array.isArray(field.thClass)) {
112
134
  field.thClass.forEach(cls => (classObj[cls] = true));
113
135
  }
114
- return (h("th", { key: `th-${r}-${c}`, class: classObj, style: field.thStyle, scope: "row", rowSpan: thRowSpan, colSpan: thColSpan }, h("div", { class: "sd-key-value-table__th-inner" }, h("span", { class: "sd-key-value-table__label" }, field.label, field.required && (h("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))));
136
+ const thStyle = field.thStyle != null ? this.buildThStyle(field.thStyle) : undefined;
137
+ return (h("th", { key: `th-${r}-${c}`, class: classObj, style: thStyle, scope: "row", rowSpan: thRowSpan, colSpan: thColSpan }, h("div", { class: "sd-key-value-table__th-inner" }, h("span", { class: "sd-key-value-table__label" }, field.label, field.required && (h("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))));
115
138
  }
116
139
  renderTd(field, r, c) {
117
140
  const tdRowSpan = field.tdRowSpan != null && field.tdRowSpan > 1 ? field.tdRowSpan : undefined;
@@ -139,8 +162,7 @@ export class SdKeyValueTable {
139
162
  '--sd-kvt-row-height': `${KEY_VALUE_TABLE_LAYOUT.rowHeight}px`,
140
163
  '--sd-kvt-th-width': `${KEY_VALUE_TABLE_LAYOUT.thWidth}px`,
141
164
  '--sd-kvt-radius': `${KEY_VALUE_TABLE_LAYOUT.borderRadius}px`,
142
- '--sd-kvt-padding-x': `${KEY_VALUE_TABLE_LAYOUT.paddingX}px`,
143
- '--sd-kvt-padding-y': `${KEY_VALUE_TABLE_LAYOUT.paddingY}px`,
165
+ '--sd-kvt-padding': `${KEY_VALUE_TABLE_LAYOUT.padding}px`,
144
166
  '--sd-kvt-gap': `${KEY_VALUE_TABLE_LAYOUT.gap}px`,
145
167
  '--sd-kvt-label-gap': `${KEY_VALUE_TABLE_LAYOUT.labelGap}px`,
146
168
  '--sd-kvt-border-width': `${KEY_VALUE_TABLE_LAYOUT.borderWidth}px`,
@@ -167,7 +189,22 @@ export class SdKeyValueTable {
167
189
  const tableEl = (h("table", { class: {
168
190
  'sd-key-value-table': true,
169
191
  'sd-key-value-table--use-top': this.useTop,
170
- }, style: cssVars }, h("colgroup", null, Array.from({ length: maxCols }, (_, i) => (h("col", { key: `col-${i}`, style: i % 2 === 0 ? { width: `${KEY_VALUE_TABLE_LAYOUT.thWidth}px` } : undefined })))), h("tbody", null, this.fields.map((row, r) => (h("tr", { class: "sd-key-value-table__row", key: `row-${r}` }, row.map((field, c) => {
192
+ }, style: cssVars }, h("colgroup", null, Array.from({ length: maxCols }, (_, i) => {
193
+ if (i % 2 !== 0)
194
+ return h("col", { key: `col-${i}` });
195
+ const fieldIdx = i / 2;
196
+ const fieldThWidth = this.fields.reduce((found, row) => {
197
+ if (found != null)
198
+ return found;
199
+ return row[fieldIdx]?.thWidth;
200
+ }, undefined);
201
+ const width = fieldThWidth != null
202
+ ? typeof fieldThWidth === 'number'
203
+ ? `${fieldThWidth}px`
204
+ : fieldThWidth
205
+ : `${KEY_VALUE_TABLE_LAYOUT.thWidth}px`;
206
+ return h("col", { key: `col-${i}`, style: { width } });
207
+ })), h("tbody", null, this.fields.map((row, r) => (h("tr", { class: "sd-key-value-table__row", key: `row-${r}` }, row.map((field, c) => {
171
208
  const showTh = !field.hideTh && !autoSkip[r][c];
172
209
  return [showTh ? this.renderTh(field, r, c) : null, this.renderTd(field, r, c)];
173
210
  })))))));
@@ -28,7 +28,7 @@ export class SdLinearProgress {
28
28
  clipPath: `inset(0 ${100 - this.clampedValue}% 0 0)`,
29
29
  };
30
30
  const valueText = `${Math.round(this.clampedValue)}%`;
31
- return (h(Host, { key: '49452751b0aaf5e6b49d809272620cf4b198ecc1', style: hostStyle }, h("div", { key: 'aec62dae8fa8d4a9d6e64e305fadc63836a1fef6', class: 'sd-linear-progress__track' }, h("div", { key: '0f7cce4cf0ebe6ce40cc127ab8b91fdaf88440cc', class: 'sd-linear-progress__fill', style: fillStyle }), !this.indeterminate && (h("span", { key: 'af2f415ba6cc27c209eed2ff38b02ce58f81a861', class: 'sd-linear-progress__value sd-linear-progress__value--on-track' }, valueText)), !this.indeterminate && (h("span", { key: '2c21c62faf93ee809ae6fa098f7bf88e20447ca8', class: 'sd-linear-progress__value sd-linear-progress__value--on-fill', style: valueOnFillStyle }, valueText))), this.label && h("span", { key: '571c78db5fc8d7a6e4db2ed78e8c75c8be953e2f', class: 'sd-linear-progress__label' }, this.label)));
31
+ return (h(Host, { key: '26b1e15732e289a9a37a6d3dbea24aec1ab60ffd', style: hostStyle }, h("div", { key: '5162d60390656286b56f6a96fd4b3932f399412a', class: 'sd-linear-progress__track' }, h("div", { key: 'a46b815f935b243e4b7f8988af65167e3f87b554', class: 'sd-linear-progress__fill', style: fillStyle }), !this.indeterminate && (h("span", { key: 'bc91914addd5addb84c7684a1f862033950905fc', class: 'sd-linear-progress__value sd-linear-progress__value--on-track' }, valueText)), !this.indeterminate && (h("span", { key: 'c62cdc59464823286ff42fc7e97a7a255a2beeb4', class: 'sd-linear-progress__value sd-linear-progress__value--on-fill', style: valueOnFillStyle }, valueText))), this.label && h("span", { key: '4c7c280885c8411329f99c3fe04f5ede8b1f0708', class: 'sd-linear-progress__label' }, this.label)));
32
32
  }
33
33
  static get is() { return "sd-linear-progress"; }
34
34
  static get originalStyleUrls() {
@@ -10,10 +10,10 @@ export class SdLoadingContainer {
10
10
  this.visible = false;
11
11
  }
12
12
  render() {
13
- return (h("div", { key: '314f23e9da2ec850d62b4d4e347055669841c1fe', class: {
13
+ return (h("div", { key: '2ad17acec76cfb7ceba0629f055600a7240a67e8', class: {
14
14
  'sd-loading-container': true,
15
15
  'sd-loading-container--visible': this.visible,
16
- }, "aria-hidden": this.visible ? 'false' : 'true' }, h("div", { key: '541eb68218969c73e52bc8cbdb79171ee0ba908e', class: "sd-loading-container__backdrop" }), h("div", { key: '95192e0c936419248c46a57acb4c5ab63465a2f5', class: "sd-loading-container__content" }, h("sd-circle-progress", { key: '5584a90aa595d3eaffc3597604a9dc359b22bcaf', indeterminate: true, type: "inverse" }), this.message && (h("p", { key: 'e9dc0afbe43a318d7e776dd2f0bafa68ebe8536e', class: "sd-loading-container__message" }, this.message)))));
16
+ }, "aria-hidden": this.visible ? 'false' : 'true' }, h("div", { key: '1e842f21f2990b22820974147b22d859be010683', class: "sd-loading-container__backdrop" }), h("div", { key: '4a48bafd9882a22c210dd1b2ca45efc43cc0c8da', class: "sd-loading-container__content" }, h("sd-circle-progress", { key: '8eb7377230f0e8c9c482dfc9ca1313f323895d14', indeterminate: true, type: "inverse" }), this.message && (h("p", { key: 'af2fc52b0740ee1d2cea55b688e5b4b77e80c7e3', class: "sd-loading-container__message" }, this.message)))));
17
17
  }
18
18
  static get is() { return "sd-loading-container"; }
19
19
  static get originalStyleUrls() {
@@ -46,7 +46,7 @@ export class SdLoadingModal {
46
46
  '--sd-loading-modal-width': this.toCssSize(this.width) ?? `${LOADING_MODAL_LAYOUT.minWidth}px`,
47
47
  '--sd-loading-modal-height': this.toCssSize(this.height) ?? `${LOADING_MODAL_LAYOUT.minHeight}px`,
48
48
  };
49
- return (h(Host, { key: '17636253239532d90e596f20d84795fe2e65508d', style: hostStyle }, h("div", { key: '2f925afceca4102049d7876ab4d1e33fa1ef5ef7', class: "sd-loading-modal" }, h("div", { key: '0598cff340210ca9ec5e28fb1992cbbc1b8e5a06', class: "sd-loading-modal__content" }, this.resolvedState === 'loading' ? (this.progress !== undefined ? (h("sd-circle-progress", { value: this.progress })) : (h("sd-circle-progress", { indeterminate: true }))) : (h("sd-icon", { class: "sd-loading-modal__icon", name: "warningOutline", size: LOADING_MODAL_LAYOUT.contentSize, color: LOADING_MODAL_COLORS.errorIcon }))), h("div", { key: '3d699238c19ee66fd3afc72194133a865501cc08', class: "sd-loading-modal__message-wrapper" }, Array.isArray(this.resolvedMessage) ? (this.resolvedMessage.map(message => (h("p", { class: "sd-loading-modal__message" }, message)))) : (h("p", { class: "sd-loading-modal__message" }, this.resolvedMessage))), this.useButton && (h("div", { key: 'd454a168360cd23a3e71482d67ee81d8eabdec58', class: "sd-loading-modal__button" }, h("sd-button", { key: '0aa26dc830d1c4827f2ee0ca0bfdf4bb8cd2c9f5', name: LOADING_MODAL_BUTTON_PRESET, label: this.resolvedButtonLabel, onSdClick: this.handleClick }))))));
49
+ return (h(Host, { key: 'f40dcf4fa7e2ee7b4023be11be2b9361ec167610', style: hostStyle }, h("div", { key: '02bab8da4e09156340e8e9badef25755b57193d5', class: "sd-loading-modal" }, h("div", { key: '776833f7f85a5587dda59fe75e36ebb4b9109c3e', class: "sd-loading-modal__content" }, this.resolvedState === 'loading' ? (this.progress !== undefined ? (h("sd-circle-progress", { value: this.progress })) : (h("sd-circle-progress", { indeterminate: true }))) : (h("sd-icon", { class: "sd-loading-modal__icon", name: "warningOutline", size: LOADING_MODAL_LAYOUT.contentSize, color: LOADING_MODAL_COLORS.errorIcon }))), h("div", { key: '4bb9e434a4a2d6be6dbbe2ed4e89563bf7278c65', class: "sd-loading-modal__message-wrapper" }, Array.isArray(this.resolvedMessage) ? (this.resolvedMessage.map(message => (h("p", { class: "sd-loading-modal__message" }, message)))) : (h("p", { class: "sd-loading-modal__message" }, this.resolvedMessage))), this.useButton && (h("div", { key: '5da761513fdc38e5e646f72f75072e25d5313384', class: "sd-loading-modal__button" }, h("sd-button", { key: '2bf9beb84ab4a6c1e6793db453e04b947c432d13', name: LOADING_MODAL_BUTTON_PRESET, label: this.resolvedButtonLabel, onSdClick: this.handleClick }))))));
50
50
  }
51
51
  static get is() { return "sd-loading-modal"; }
52
52
  static get originalStyleUrls() {
@@ -109,7 +109,14 @@ export class SdModalContainer {
109
109
  });
110
110
  }
111
111
  attachModalEventListeners(id, modalEl) {
112
- modalEl.addEventListener('sdOk', () => this.requestDismiss(id, 'confirm'));
112
+ modalEl.addEventListener('sdOk', () => {
113
+ const entry = this.entries.find(e => e.id === id);
114
+ if (entry?.modalRef._hasSubmit?.()) {
115
+ entry.modalRef._triggerSubmit?.();
116
+ return;
117
+ }
118
+ this.requestDismiss(id, 'confirm');
119
+ });
113
120
  modalEl.addEventListener('sdCancel', () => this.requestDismiss(id, 'cancel'));
114
121
  modalEl.addEventListener('sdClose', () => this.requestDismiss(id, 'close'));
115
122
  }
@@ -275,15 +275,15 @@ export class SdNumberInput {
275
275
  '--sd-textinput-input-hint-typography-line-height': `${NUMBER_INPUT_HINT.typography.lineHeight}px`,
276
276
  '--sd-textinput-input-contents-gap': `${NUMBER_INPUT_CONTENTS_GAP}px`,
277
277
  };
278
- return (h("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 }, h("div", { key: '8f0da8b179cd3946d625ab6b525a2ffd614a5333', class: {
278
+ return (h("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 }, h("div", { key: 'b9c403df166e2f05f815ebf3851b6517b8afbd2a', class: {
279
279
  'sd-number-input__content': true,
280
280
  'sd-number-input__content--no-stepper': !this.useButton,
281
- } }, this.useButton && (h("button", { key: '1be42c16d5e671c567d4768f505c2c17c50f1b60', type: "button", class: "sd-number-input__stepper sd-number-input__stepper--decrement", disabled: this.isDecrementDisabled(), onClick: this.handleDecrement, tabindex: -1 }, h("sd-icon", { key: 'dc074328208c8da2ee43ea2cb03dbc838b7d46c9', name: "minus", size: iconSize, color: this.isDecrementDisabled()
281
+ } }, this.useButton && (h("button", { key: '206f45b19bf8dd56b65ff55fb65d760e36d80ba7', type: "button", class: "sd-number-input__stepper sd-number-input__stepper--decrement", disabled: this.isDecrementDisabled(), onClick: this.handleDecrement, tabindex: -1 }, h("sd-icon", { key: 'd39cadc9a83cf7a0170144b8734a90f71d7aa9d1', name: "minus", size: iconSize, color: this.isDecrementDisabled()
282
282
  ? NUMBER_INPUT_STEPPER.icon.disabled
283
- : NUMBER_INPUT_STEPPER.icon.default }))), this.inputPrefix && h("span", { key: '84896d40d79e936480052ab45d618cd73550ee87', class: "sd-number-input__prefix" }, this.inputPrefix), h("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: {
283
+ : NUMBER_INPUT_STEPPER.icon.default }))), this.inputPrefix && h("span", { key: '0c97309540467d56ee3415001df7a027ba581a3d', class: "sd-number-input__prefix" }, this.inputPrefix), h("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: {
284
284
  textAlign: this.useButton ? 'center' : 'right',
285
285
  ...this.inputStyle,
286
- } }), this.inputSuffix && h("span", { key: 'd6b1ca9f5991f1b2382dd4a35ae4f20832192e3c', class: "sd-number-input__suffix" }, this.inputSuffix), this.useButton && (h("button", { key: '56a59f94ca27e8ef4255cabdd5fe003c602bb8d6', type: "button", class: "sd-number-input__stepper sd-number-input__stepper--increment", disabled: this.isIncrementDisabled(), onClick: this.handleIncrement, tabindex: -1 }, h("sd-icon", { key: '1b8fca91e893b5ade47ed63db4d4d54933c94e53', name: "add", size: iconSize, color: this.isIncrementDisabled()
286
+ } }), this.inputSuffix && h("span", { key: 'fdd4f4e680fe5de55cb68c848615ec6b00f00430', class: "sd-number-input__suffix" }, this.inputSuffix), this.useButton && (h("button", { key: '8cdfcc46a010fb0f503b48c34290fd096403524a', type: "button", class: "sd-number-input__stepper sd-number-input__stepper--increment", disabled: this.isIncrementDisabled(), onClick: this.handleIncrement, tabindex: -1 }, h("sd-icon", { key: 'ec8826370cd9d8c6054ca6ab216de6baa62d90db', name: "add", size: iconSize, color: this.isIncrementDisabled()
287
287
  ? NUMBER_INPUT_STEPPER.icon.disabled
288
288
  : NUMBER_INPUT_STEPPER.icon.default }))))));
289
289
  }
@@ -83,13 +83,13 @@ export class SdPagination {
83
83
  '--sd-pagination-bg-selected': PAGINATION_COLORS.bgSelected,
84
84
  '--sd-pagination-item-width': `${this.buttonWidth}px`,
85
85
  };
86
- return (h("div", { key: 'abfac6b075ce59ac37f747bf15729bf3879b1749', class: {
86
+ return (h("div", { key: 'c1925f0f312cf5c18f08f158efb599e5b6f0d503', class: {
87
87
  'sd-pagination': true,
88
88
  'sd-pagination--simple': this.simple,
89
- }, style: cssVars }, h("div", { key: '6c8a3eb2ad708649054068a671cf156fe154fae3', class: "sd-pagination__group sd-pagination__group--prev" }, this.renderPrevButtons()), this.simple ? (h("div", { class: "sd-pagination__info" }, h("span", { class: "sd-pagination__current" }, this.currentPage), h("span", { class: "sd-pagination__divider" }, "/"), h("span", { class: "sd-pagination__last" }, this.lastPage))) : (h("div", { class: "sd-pagination__numbers" }, this.pageNumbers.map(n => (h("button", { type: "button", "aria-current": this.currentPage === n ? 'page' : undefined, class: {
89
+ }, style: cssVars }, h("div", { key: '1f22be76697820bf455cea5476efa84a09d03c44', class: "sd-pagination__group sd-pagination__group--prev" }, this.renderPrevButtons()), this.simple ? (h("div", { class: "sd-pagination__info" }, h("span", { class: "sd-pagination__current" }, this.currentPage), h("span", { class: "sd-pagination__divider" }, "/"), h("span", { class: "sd-pagination__last" }, this.lastPage))) : (h("div", { class: "sd-pagination__numbers" }, this.pageNumbers.map(n => (h("button", { type: "button", "aria-current": this.currentPage === n ? 'page' : undefined, class: {
90
90
  'sd-pagination__item': true,
91
91
  'sd-pagination__item--selected': this.currentPage === n,
92
- }, onClick: () => this.handlePageChange(n) }, n))))), h("div", { key: 'f0013d0057e6addb6a7fae39ebddd2c4f7af5bd0', class: "sd-pagination__group sd-pagination__group--next" }, this.renderNextButtons())));
92
+ }, onClick: () => this.handlePageChange(n) }, n))))), h("div", { key: 'b85b00b637152d5071db0652b6682541fbfd6ab5', class: "sd-pagination__group sd-pagination__group--next" }, this.renderNextButtons())));
93
93
  }
94
94
  static get is() { return "sd-pagination"; }
95
95
  static get originalStyleUrls() {
@@ -143,7 +143,7 @@ export class SdPopover {
143
143
  "mutable": false,
144
144
  "complexType": {
145
145
  "original": "IconName",
146
- "resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"dashboard\" | \"date\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"star\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\"",
146
+ "resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"bill\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"coupon\" | \"dashboard\" | \"date\" | \"delete\" | \"dot\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"launcher\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"monitor\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"shield\" | \"sidebar\" | \"star\" | \"store\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\"",
147
147
  "references": {
148
148
  "IconName": {
149
149
  "location": "global",
@@ -235,7 +235,7 @@ export class SdPopover {
235
235
  "mutable": false,
236
236
  "complexType": {
237
237
  "original": "IconName",
238
- "resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"dashboard\" | \"date\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"star\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\" | undefined",
238
+ "resolved": "\"add\" | \"alert\" | \"alignKorean\" | \"archive\" | \"arrowDown\" | \"arrowLeft\" | \"arrowRight\" | \"arrowUp\" | \"attachFile\" | \"barcode\" | \"bell\" | \"bill\" | \"board\" | \"box\" | \"camera\" | \"cancelFill\" | \"cancelOutline\" | \"caretDown\" | \"caretLeft\" | \"caretRight\" | \"caretUp\" | \"check\" | \"checkFill\" | \"checkOutline\" | \"checkboxCheck\" | \"checkboxIndeterminate\" | \"chevronDown\" | \"chevronLeft\" | \"chevronLeftEnd\" | \"chevronRight\" | \"chevronRightEnd\" | \"chevronUp\" | \"clockFill\" | \"clockOutline\" | \"close\" | \"copy\" | \"coupon\" | \"dashboard\" | \"date\" | \"delete\" | \"dot\" | \"download\" | \"drag\" | \"edit\" | \"etc\" | \"event\" | \"global\" | \"helpFill\" | \"helpOutline\" | \"history\" | \"imageFill\" | \"imageOutline\" | \"inline\" | \"launcher\" | \"line\" | \"location\" | \"logout\" | \"minus\" | \"monitor\" | \"new\" | \"notificationFill\" | \"notificationOutline\" | \"notion\" | \"outline\" | \"pageEdit\" | \"pageMove\" | \"pdf\" | \"print\" | \"remove\" | \"reset\" | \"robot\" | \"row\" | \"save\" | \"search\" | \"setting\" | \"shield\" | \"sidebar\" | \"star\" | \"store\" | \"synchronize\" | \"updown\" | \"user\" | \"visibilityOff\" | \"visibilityOn\" | \"warehouseFill\" | \"warehouseOutline\" | \"warningFill\" | \"warningOutline\" | \"youtube\" | undefined",
239
239
  "references": {
240
240
  "IconName": {
241
241
  "location": "global",
@@ -36,7 +36,7 @@ export class SdPopup {
36
36
  ...DEFAULT_SUBMIT_BUTTON_PROPS,
37
37
  ...this.submitButtonProps,
38
38
  };
39
- return (h("div", { key: 'ea933af50e1ad1a29cf8d73ce70222e2f44c0bb5', class: `sd-popup sd-popup--${this.type}`, style: cssVars }, h("header", { key: '50f1773d911175182888a98a0759b8d3d8829d2f', class: "sd-popup__header" }, h("h2", { key: '4e21a73a6e26388c6b1c814a91ee8a79bf57c576', class: "sd-popup__title" }, this.popupTitle)), h("div", { key: 'dd6ace33c6d8b3e20c0c85c95580efbf8ad6747c', class: "sd-popup__body" }, h("slot", { key: 'e40fbea5b93016131df544f32b74676d2892204e' })), this.useFooter && (h("footer", { key: '96b27f465a804859a15e9105fcd64c7205bc2143', class: "sd-popup__footer" }, h("div", { key: '6715ba330610850ea235ddde5f2da00584204286', class: "sd-popup__footer-slot sd-popup__footer-slot--left" }, h("slot", { key: '092aca3ad212b7218ce4ba247b78b7b45d9e4299', name: "footer-left" })), h("sd-button", { key: '290cd49879cc4868be69ceb60567eab57b5f26fe', ...submitButtonProps, class: "sd-popup__submit", onSdClick: () => this.submit.emit() })))));
39
+ return (h("div", { key: 'a978706454e3964818cc96b3a583880b952c2533', class: `sd-popup sd-popup--${this.type}`, style: cssVars }, h("header", { key: '1164fc29d4040d51b74ebc45fedc4fd19038e900', class: "sd-popup__header" }, h("h2", { key: '6ac1ea61e52f952f3bea4c4149222b4ff43b61db', class: "sd-popup__title" }, this.popupTitle)), h("div", { key: 'fe8cebfc5ea513ae07e3a2987a8c7d9b36ed26e9', class: "sd-popup__body" }, h("slot", { key: 'f7ce06ae60cc8af6dbae2b24db4fd6b00e13d365' })), this.useFooter && (h("footer", { key: '84251ae1e48522fcf47d0081c9c0689e5fb236a6', class: "sd-popup__footer" }, h("div", { key: 'c7d4a8546bd185c812a98569cc3b2a818cbb2963', class: "sd-popup__footer-slot sd-popup__footer-slot--left" }, h("slot", { key: '474e09481472b96ff4eacc66502aa06987b463b8', name: "footer-left" })), h("sd-button", { key: '2b23204ffad997f022dd06b772433ceb69950d04', ...submitButtonProps, class: "sd-popup__submit", onSdClick: () => this.submit.emit() })))));
40
40
  }
41
41
  static get is() { return "sd-popup"; }
42
42
  static get originalStyleUrls() {
@@ -48,7 +48,7 @@ export class SdPortal {
48
48
  createWrapper() {
49
49
  this.wrapper = document.createElement('div');
50
50
  Object.assign(this.wrapper.style, {
51
- position: 'absolute',
51
+ position: 'fixed',
52
52
  top: '0',
53
53
  left: '0',
54
54
  zIndex: (this.zIndex ?? 998).toString(),
@@ -122,13 +122,13 @@ export class SdPortal {
122
122
  const wrapperRect = this.wrapper.getBoundingClientRect();
123
123
  const availableBelow = viewport.height - parentRect.bottom - offset[1] - viewportPadding;
124
124
  const availableAbove = parentRect.top - offset[1] - viewportPadding;
125
- let top = parentRect.bottom + window.scrollY + offset[1];
126
- let left = parentRect.left + window.scrollX + offset[0];
125
+ let top = parentRect.bottom + offset[1];
126
+ let left = parentRect.left + offset[0];
127
127
  if (availableBelow < wrapperRect.height && availableAbove > availableBelow) {
128
- top = parentRect.top + window.scrollY - wrapperRect.height - offset[1];
128
+ top = parentRect.top - wrapperRect.height - offset[1];
129
129
  }
130
- const minTop = window.scrollY + viewportPadding;
131
- const maxTop = window.scrollY + viewport.height - viewportPadding - wrapperRect.height;
130
+ const minTop = viewportPadding;
131
+ const maxTop = viewport.height - viewportPadding - wrapperRect.height;
132
132
  if (maxTop < minTop) {
133
133
  top = minTop;
134
134
  }
@@ -136,10 +136,10 @@ export class SdPortal {
136
136
  top = Math.min(Math.max(top, minTop), maxTop);
137
137
  }
138
138
  if (parentRect.left + wrapperRect.width + offset[0] > viewport.width - viewportPadding) {
139
- left = parentRect.right + window.scrollX - wrapperRect.width - offset[0];
139
+ left = parentRect.right - wrapperRect.width - offset[0];
140
140
  }
141
- const minLeft = window.scrollX + viewportPadding;
142
- const maxLeft = window.scrollX + viewport.width - viewportPadding - wrapperRect.width;
141
+ const minLeft = viewportPadding;
142
+ const maxLeft = viewport.width - viewportPadding - wrapperRect.width;
143
143
  if (maxLeft < minLeft) {
144
144
  left = minLeft;
145
145
  }
@@ -206,21 +206,25 @@ export class SdPortal {
206
206
  }
207
207
  return scrollParents;
208
208
  }
209
+ isInsideTarget(target) {
210
+ return !!((this.wrapper?.contains(target)) ||
211
+ (this.parentRef?.contains(target)));
212
+ }
209
213
  // 외부 클릭 감지
210
214
  handleMouseDown(e) {
211
- this.isInsideClick = !!(this.wrapper && this.wrapper.contains(e.target));
215
+ this.isInsideClick = this.isInsideTarget(e.target);
212
216
  }
213
217
  handleWindowClick(e) {
214
218
  if (this.isInsideClick) {
215
219
  this.isInsideClick = false;
216
220
  return;
217
221
  }
218
- if (this.wrapper?.contains(e.target))
222
+ if (this.isInsideTarget(e.target))
219
223
  return;
220
224
  this.close.emit();
221
225
  }
222
226
  render() {
223
- return h("slot", { key: 'f7b160cb574608fa16f6edd27d259b85787e6144' });
227
+ return h("slot", { key: '22e09896836d017f33a9c6b92772a00fc85f8997' });
224
228
  }
225
229
  static get is() { return "sd-portal"; }
226
230
  static get properties() {
@@ -71,7 +71,7 @@ export class SdSelectListItem {
71
71
  return (
72
72
  // 키보드 네비게이션은 부모 listbox 의 ArrowUp/Down + Enter 가 담당. 항목 자체는 role=option, tabindex=-1 으로 표시.
73
73
  // eslint-disable-next-line jsx-a11y/click-events-have-key-events
74
- h("div", { key: '55ebe094653cb89d5c70916c3e0a2f4ccb5551f8', role: "option", tabindex: -1, "aria-selected": this.isSelected === true ? 'true' : 'false', class: {
74
+ h("div", { key: 'c964b0cf5b064c74a7e063be21350bca8124d77d', role: "option", tabindex: -1, "aria-selected": this.isSelected === true ? 'true' : 'false', class: {
75
75
  'sd-select-list-item': true,
76
76
  'sd-select-list-item--group': isGroup,
77
77
  'sd-select-list-item--depth1-group': isDepth1Group,
@@ -81,7 +81,7 @@ export class SdSelectListItem {
81
81
  'sd-select-list-item--focused': this.isFocused,
82
82
  'sd-select-list-item--selectable': this.isSelectable && !this.option.disabled,
83
83
  'sd-select-list-item--disabled': !!this.option.disabled,
84
- }, style: cssVars, onClick: this.handleClick }, this.useCheckbox && (h("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) ? (h("span", { class: "sd-select-list-item__label", ref: el => el && (el.innerHTML = sanitizeInlineHtml(this.option.label)) })) : (h("span", { class: "sd-select-list-item__label" }, this.option.label)), this.countInfo && (h("span", { key: '89750bc08c03915b738da390f4255e7451aa9d6d', class: "sd-select-list-item__count" }, "(", this.countInfo.selected, "/", this.countInfo.total, ")"))));
84
+ }, style: cssVars, onClick: this.handleClick }, this.useCheckbox && (h("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) ? (h("span", { class: "sd-select-list-item__label", ref: el => el && (el.innerHTML = sanitizeInlineHtml(this.option.label)) })) : (h("span", { class: "sd-select-list-item__label" }, this.option.label)), this.countInfo && (h("span", { key: 'ac34372d921afcb3eba0a51bed3dd70b4e8f1d0f', class: "sd-select-list-item__count" }, "(", this.countInfo.selected, "/", this.countInfo.total, ")"))));
85
85
  }
86
86
  static get is() { return "sd-select-list-item"; }
87
87
  static get originalStyleUrls() {
@@ -41,15 +41,15 @@ export class SdSelectListItemSearch {
41
41
  clearTimeout(this.debounceTimer);
42
42
  }
43
43
  render() {
44
- return (h("div", { key: '6cf78c7d616dc21a7a6e806c184322d12cacb50d', class: {
44
+ return (h("div", { key: '6250cee5611a36f6c5fb317d7d24abeae1ed142f', class: {
45
45
  'sd-select-list-item-search': true,
46
46
  'sd-select-list-item-search--scrolled': this.isScrolled,
47
- } }, h("div", { key: 'dd9fa44fed1f3ec7a222dacaa710cdf32ddbe6fc', class: "sd-select-list-item-search__inner" }, h("sd-icon", { key: '2d65a81b7b6160ac4e93016adea0da43d5d01ec8', name: "search", size: 16, color: "grey_70", class: "sd-select-list-item-search__icon" }), h("input", { key: '0d5c4bb09778518aa17a210a2d1a9eb620a1dd7b', ref: el => {
47
+ } }, h("div", { key: 'fa48adb1406c8922b61083a19cc270f02ddab100', class: "sd-select-list-item-search__inner" }, h("sd-icon", { key: '868519f09dc11fc4e9bde7a1148ce5ce666dd851', name: "search", size: 16, color: "grey_70", class: "sd-select-list-item-search__icon" }), h("input", { key: 'ff946fa2f360cd21eb785d13cb91e23f18abe05c', ref: el => {
48
48
  this.inputEl = el;
49
- }, 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() }), h("button", { key: 'e9708437f310788bf8b9a4d358dea9b83cc88ed8', type: "button", class: {
49
+ }, 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() }), h("button", { key: 'e70e4c0af6e11f89d2893ae5bb28887a0ed8a5ee', type: "button", class: {
50
50
  'sd-select-list-item-search__clear': true,
51
51
  'sd-select-list-item-search__clear--hidden': this.searchText === '',
52
- }, onClick: this.handleClear, tabindex: this.searchText !== '' ? 0 : -1, "aria-hidden": this.searchText !== '' ? 'false' : 'true' }, h("sd-icon", { key: 'ed8b1c93809f823205f357b059a8b556e0278b1c', name: "close", size: 12, color: "#888888" })))));
52
+ }, onClick: this.handleClear, tabindex: this.searchText !== '' ? 0 : -1, "aria-hidden": this.searchText !== '' ? 'false' : 'true' }, h("sd-icon", { key: '57b4af6446a565b6e1e95153e8553b1c3c363a33', name: "close", size: 12, color: "#888888" })))));
53
53
  }
54
54
  static get is() { return "sd-select-list-item-search"; }
55
55
  static get originalStyleUrls() {
@@ -62,14 +62,14 @@ export class SdSelectListbox {
62
62
  return count >= SEARCH_THRESHOLD;
63
63
  }
64
64
  get filteredOptions() {
65
- if (this.searchKeyword === '')
65
+ if (this.searchKeyword == null || this.searchKeyword === '')
66
66
  return this.options;
67
67
  if (this.isDepth)
68
68
  return filterTree(this.options, this.searchKeyword);
69
69
  const keyword = this.searchKeyword.toLowerCase();
70
70
  return this.options.filter(o => {
71
71
  const labelText = isHtmlLabel(o.label) ? extractText(o.label) : o.label;
72
- return labelText.toLowerCase().includes(keyword);
72
+ return labelText != null && labelText.toLowerCase().includes(keyword);
73
73
  });
74
74
  }
75
75
  get isEmpty() {
@@ -351,9 +351,9 @@ export class SdSelectListbox {
351
351
  '--listbox-max-height': this.maxHeight ?? '260px',
352
352
  '--listbox-radius': `${LIST_BOX_LAYOUT.radius}px`,
353
353
  };
354
- return (h("div", { key: '6c2cbad13f8aaa8c0552068c7cbc35a147bee77d', class: "sd-select-listbox", style: cssVars }, this.showSearch && (h("sd-select-list-item-search", { key: '052d783e27e2458aa397c77fe891dad4a440f09e', isScrolled: this.isScrolled, onSdSearchFilter: this.handleSearchFilter })), h("div", { key: 'bba95f3c4475d01a65562ba079c8666e3325195d', class: "sd-select-listbox__list", onScroll: this.handleScroll, ref: el => {
354
+ return (h("div", { key: 'fe30af2954ea5669f2071698e6ef9e2b26244d9b', class: "sd-select-listbox", style: cssVars }, this.showSearch && (h("sd-select-list-item-search", { key: 'aa7ce87d8c0c7163921445325121562603edd960', isScrolled: this.isScrolled, onSdSearchFilter: this.handleSearchFilter })), h("div", { key: 'e8b5b3f73653ddc5096101f7109d427de1efa93a', class: "sd-select-listbox__list", onScroll: this.handleScroll, ref: el => {
355
355
  this.listEl = el;
356
- } }, this.showSelectAll && (h("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 ? (h("div", { class: "sd-select-listbox__empty" }, EMPTY_MESSAGE)) : this.isDepth ? (this.renderOptions(this.filteredOptions)) : (this.filteredOptions.map(option => (h("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) })))))));
356
+ } }, this.showSelectAll && (h("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 ? (h("div", { class: "sd-select-listbox__empty" }, EMPTY_MESSAGE)) : this.isDepth ? (this.renderOptions(this.filteredOptions)) : (this.filteredOptions.map(option => (h("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) })))))));
357
357
  }
358
358
  static get is() { return "sd-select-listbox"; }
359
359
  static get encapsulation() { return "shadow"; }
@@ -43,7 +43,7 @@ export class SdSelectTrigger {
43
43
  ? SELECT_COLORS.icon.disabled
44
44
  : SELECT_COLORS.icon.default,
45
45
  };
46
- return (h("div", { key: 'b5a4f750c00889d0d9b985211063fc6b20bc2e38', ref: el => {
46
+ return (h("div", { key: '0a929b8c0d68e25a64c352b5ea93b2e9c5f52611', ref: el => {
47
47
  this.triggerEl = el;
48
48
  }, role: "button", "aria-haspopup": "listbox", "aria-expanded": this.isOpen ? 'true' : 'false', tabindex: this.disabled ? -1 : 0, class: {
49
49
  'sd-select-trigger': true,
@@ -54,7 +54,7 @@ export class SdSelectTrigger {
54
54
  e.preventDefault();
55
55
  this.handleClick();
56
56
  }
57
- }, onFocus: this.handleFocus, onBlur: this.handleBlur }, h("div", { key: 'be0b61c0550618602ef016504fa1672f7520fa93', class: "sd-select-trigger__content" }, hasValue && isHtmlLabel(this.displayText) ? (h("span", { class: "sd-select-trigger__text", ref: el => el && (el.innerHTML = sanitizeInlineHtml(this.displayText)) })) : (h("span", { class: "sd-select-trigger__text" }, hasValue ? this.displayText : (this.placeholder ?? '선택'))), h("sd-icon", { key: '9d60c3eeae54ce6ed9609534e3530d0349d1a3ff', name: "chevronDown", size: 12, color: "var(--trigger-icon-color)", class: {
57
+ }, onFocus: this.handleFocus, onBlur: this.handleBlur }, h("div", { key: 'd8c91e392604c462aa9228147eb18c0b2ac13851', class: "sd-select-trigger__content" }, hasValue && isHtmlLabel(this.displayText) ? (h("span", { class: "sd-select-trigger__text", ref: el => el && (el.innerHTML = sanitizeInlineHtml(this.displayText)) })) : (h("span", { class: "sd-select-trigger__text" }, hasValue ? this.displayText : (this.placeholder ?? '선택'))), h("sd-icon", { key: '1afdcb944b30b675d4d2b31d6aeaa2ce41045d36', name: "chevronDown", size: 12, color: "var(--trigger-icon-color)", class: {
58
58
  'sd-select-trigger__icon': true,
59
59
  'sd-select-trigger__icon--open': this.isOpen,
60
60
  } }))));
@@ -100,10 +100,10 @@ export function countLeaves(options) {
100
100
  }, 0);
101
101
  }
102
102
  export function filterTree(options, keyword) {
103
- const lowerKeyword = keyword.toLowerCase();
103
+ const lowerKeyword = (keyword ?? '').toLowerCase();
104
104
  return options.reduce((acc, option) => {
105
105
  const labelText = isHtmlLabel(option.label) ? extractText(option.label) : option.label;
106
- const selfMatch = labelText.toLowerCase().includes(lowerKeyword);
106
+ const selfMatch = labelText != null && labelText.toLowerCase().includes(lowerKeyword);
107
107
  if (option.children) {
108
108
  // 그룹: 자식은 항상 추가로 필터링한다.
109
109
  // - 자식 중 일치하는 게 있으면 그 자식들만 노출
@@ -254,15 +254,15 @@ export class SdSelect {
254
254
  this.closeDropdown();
255
255
  },
256
256
  };
257
- return (h("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: () => {
257
+ return (h("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: () => {
258
258
  this.hovered = true;
259
259
  }, onMouseLeave: () => {
260
260
  this.hovered = false;
261
- } }, h("div", { key: 'e23ef16cf8af59d2e9dd6ee39a297c4338e0a056', class: "sd-select", ref: el => {
261
+ } }, h("div", { key: '38d53e92c022affd40bfc7951bbcdf7e02071446', class: "sd-select", ref: el => {
262
262
  this.triggerRef = el;
263
- } }, h("sd-select-trigger", { key: 'b6811644cb571bb738d604ce31b233ff76a32d16', ref: el => {
263
+ } }, h("sd-select-trigger", { key: '9cd9bdb89db37204f9a5c312d26277da772b1209', ref: el => {
264
264
  this.triggerComponentRef = el;
265
- }, 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) && (h("sd-portal", { key: 'b9b191bd7eefcb4d69be21f51740dd1cd993a3e7', ...portalProps }, h("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) })))));
265
+ }, 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) && (h("sd-portal", { key: '8666dc885f3dcbae13011fd312eb72b7e6c906d9', ...portalProps }, h("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) })))));
266
266
  }
267
267
  static get is() { return "sd-select"; }
268
268
  static get originalStyleUrls() {