@sellmate/design-system 1.0.67 → 1.0.68

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 (398) hide show
  1. package/dist/cjs/{component.textinput-C4SsDjA1.js → component.textinput-BpXDeZPD.js} +3 -2
  2. package/dist/cjs/design-system.cjs.js +2 -2
  3. package/dist/cjs/{index-BpT5VmKY.js → index-B2QvhbC3.js} +1 -1
  4. package/dist/cjs/index.cjs.js +36 -41
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/modal-stack-DucFLON7.js +112 -0
  7. package/dist/cjs/sd-action-modal.cjs.entry.js +2 -2
  8. package/dist/cjs/sd-badge.cjs.entry.js +2 -2
  9. package/dist/cjs/sd-barcode-input.cjs.entry.js +3 -3
  10. package/dist/cjs/sd-button-v2_2.cjs.entry.js +3 -3
  11. package/dist/cjs/sd-button_4.cjs.entry.js +22 -17
  12. package/dist/cjs/sd-calendar.cjs.entry.js +1 -1
  13. package/dist/cjs/sd-card.cjs.entry.js +2 -2
  14. package/dist/cjs/sd-checkbox.cjs.entry.js +1 -1
  15. package/dist/cjs/sd-chip.cjs.entry.js +312 -0
  16. package/dist/cjs/sd-circle-progress.cjs.entry.js +2 -2
  17. package/dist/cjs/sd-confirm-modal_2.cjs.entry.js +4 -4
  18. package/dist/cjs/sd-date-box.cjs.entry.js +1 -1
  19. package/dist/cjs/sd-date-picker-calendar.cjs.entry.js +2 -2
  20. package/dist/cjs/sd-date-picker-trigger.cjs.entry.js +3 -3
  21. package/dist/cjs/sd-date-picker.cjs.entry.js +3 -3
  22. package/dist/cjs/sd-date-range-picker-calendar.cjs.entry.js +2 -2
  23. package/dist/cjs/sd-date-range-picker.cjs.entry.js +1 -1
  24. package/dist/cjs/sd-dropdown-button.cjs.entry.js +8 -19
  25. package/dist/cjs/sd-file-picker.cjs.entry.js +3 -3
  26. package/dist/cjs/sd-form.cjs.entry.js +1 -1
  27. package/dist/cjs/sd-ghost-button.cjs.entry.js +6 -6
  28. package/dist/cjs/sd-guide.cjs.entry.js +167 -34
  29. package/dist/cjs/sd-input_2.cjs.entry.js +7 -7
  30. package/dist/cjs/sd-loading-container.cjs.entry.js +4 -4
  31. package/dist/cjs/sd-modal-container.cjs.entry.js +126 -155
  32. package/dist/cjs/sd-number-input.cjs.entry.js +4 -4
  33. package/dist/cjs/sd-pagination_2.cjs.entry.js +116 -42
  34. package/dist/cjs/sd-popover.cjs.entry.js +4 -4
  35. package/dist/cjs/sd-portal.cjs.entry.js +4 -4
  36. package/dist/cjs/sd-progress.cjs.entry.js +3 -3
  37. package/dist/cjs/sd-radio-button.cjs.entry.js +2 -2
  38. package/dist/cjs/sd-radio-group.cjs.entry.js +2 -2
  39. package/dist/cjs/sd-radio.cjs.entry.js +2 -2
  40. package/dist/cjs/sd-select-dropdown_2.cjs.entry.js +4 -4
  41. package/dist/cjs/sd-select-group.cjs.entry.js +2 -2
  42. package/dist/cjs/sd-select-multiple-group.cjs.entry.js +2 -2
  43. package/dist/cjs/sd-select-multiple.cjs.entry.js +2 -2
  44. package/dist/cjs/sd-select-option-group.cjs.entry.js +4 -4
  45. package/dist/cjs/sd-select-v2-list-item_4.cjs.entry.js +12 -16
  46. package/dist/cjs/sd-select.cjs.entry.js +2 -2
  47. package/dist/cjs/sd-switch.cjs.entry.js +2 -2
  48. package/dist/cjs/sd-table.cjs.entry.js +6 -6
  49. package/dist/cjs/sd-tabs.cjs.entry.js +2 -2
  50. package/dist/cjs/sd-tag.cjs.entry.js +3 -3
  51. package/dist/cjs/sd-tbody.cjs.entry.js +2 -2
  52. package/dist/cjs/sd-td.cjs.entry.js +2 -2
  53. package/dist/cjs/sd-text-link.cjs.entry.js +4 -4
  54. package/dist/cjs/sd-textarea.cjs.entry.js +3 -3
  55. package/dist/cjs/sd-thead.cjs.entry.js +4 -4
  56. package/dist/cjs/sd-toast-container.cjs.entry.js +3 -3
  57. package/dist/cjs/sd-toast.cjs.entry.js +3 -3
  58. package/dist/cjs/sd-toggle.cjs.entry.js +2 -2
  59. package/dist/cjs/sd-tr.cjs.entry.js +3 -3
  60. package/dist/cjs/system-C89o3A9Z.js +16 -0
  61. package/dist/cjs/table-test.cjs.entry.js +2 -2
  62. package/dist/cjs/{tooltipArrow-C9i0ZsG_.js → tooltipArrow-Xkv-p1bY.js} +1 -1
  63. package/dist/collection/collection-manifest.json +2 -1
  64. package/dist/collection/components/sd-action-modal/sd-action-modal.js +1 -1
  65. package/dist/collection/components/sd-badge/sd-badge.js +1 -1
  66. package/dist/collection/components/sd-barcode-input/sd-barcode-input.js +1 -1
  67. package/dist/collection/components/sd-button-v2/sd-button-v2.js +2 -2
  68. package/dist/collection/components/sd-card/sd-card.js +1 -1
  69. package/dist/collection/components/sd-chip/sd-chip.config.js +37 -0
  70. package/dist/collection/components/sd-chip/sd-chip.css +56 -0
  71. package/dist/collection/components/sd-chip/sd-chip.js +544 -0
  72. package/dist/collection/components/sd-circle-progress/sd-circle-progress.js +1 -1
  73. package/dist/collection/components/sd-confirm-modal/sd-confirm-modal.js +2 -2
  74. package/dist/collection/components/sd-date-picker/sd-date-picker-calendar/sd-date-picker-calendar.js +1 -1
  75. package/dist/collection/components/sd-date-picker/sd-date-picker-trigger/sd-date-picker-trigger.js +2 -2
  76. package/dist/collection/components/sd-date-picker/sd-date-picker.js +2 -2
  77. package/dist/collection/components/sd-date-range-picker/sd-date-range-picker-calendar/sd-date-range-picker-calendar.js +1 -1
  78. package/dist/collection/components/sd-dropdown-button/sd-dropdown-button.js +3 -3
  79. package/dist/collection/components/sd-field/sd-field.js +4 -4
  80. package/dist/collection/components/sd-file-picker/sd-file-picker.css +1 -1
  81. package/dist/collection/components/sd-file-picker/sd-file-picker.js +1 -1
  82. package/dist/collection/components/sd-floating-portal/sd-floating-portal.js +12 -8
  83. package/dist/collection/components/sd-ghost-button/sd-ghost-button.js +5 -5
  84. package/dist/collection/components/sd-guide/sd-guide.config.js +48 -0
  85. package/dist/collection/components/sd-guide/sd-guide.css +58 -29
  86. package/dist/collection/components/sd-guide/sd-guide.js +69 -40
  87. package/dist/collection/components/sd-input/sd-input.js +2 -2
  88. package/dist/collection/components/sd-loading-container/sd-loading-container.config.js +1 -1
  89. package/dist/collection/components/sd-loading-container/sd-loading-container.css +1 -1
  90. package/dist/collection/components/sd-loading-container/sd-loading-container.js +2 -2
  91. package/dist/collection/components/sd-loading-modal/sd-loading-modal.js +1 -1
  92. package/dist/collection/components/sd-modal-container/sd-modal-container.css +11 -10
  93. package/dist/collection/components/sd-modal-container/sd-modal-container.js +150 -164
  94. package/dist/collection/components/sd-number-input/sd-number-input.js +3 -3
  95. package/dist/collection/components/sd-pagination/sd-pagination.config.js +25 -0
  96. package/dist/collection/components/sd-pagination/sd-pagination.css +69 -53
  97. package/dist/collection/components/sd-pagination/sd-pagination.js +53 -37
  98. package/dist/collection/components/sd-popover/sd-popover.js +2 -2
  99. package/dist/collection/components/sd-portal/sd-portal.js +4 -4
  100. package/dist/collection/components/sd-progress/sd-progress.js +2 -2
  101. package/dist/collection/components/sd-radio/sd-radio.js +1 -1
  102. package/dist/collection/components/sd-radio-button/sd-radio-button.js +1 -1
  103. package/dist/collection/components/sd-radio-group/sd-radio-group.js +1 -1
  104. package/dist/collection/components/sd-select/sd-select-dropdown/sd-select-dropdown.js +2 -2
  105. package/dist/collection/components/sd-select/sd-select-option/sd-select-option.js +1 -1
  106. package/dist/collection/components/sd-select/sd-select-search-input/sd-select-search-input.js +3 -3
  107. package/dist/collection/components/sd-select/sd-select.js +1 -1
  108. package/dist/collection/components/sd-select-group/sd-select-group.js +1 -1
  109. package/dist/collection/components/sd-select-multiple/sd-select-multiple.js +1 -1
  110. package/dist/collection/components/sd-select-multiple-group/sd-select-multiple-group.js +1 -1
  111. package/dist/collection/components/sd-select-multiple-group/sd-select-option-group/sd-select-option-group.js +3 -3
  112. package/dist/collection/components/sd-select-v2/sd-select-v2-list-item/sd-select-v2-list-item.js +2 -2
  113. package/dist/collection/components/sd-select-v2/sd-select-v2-list-item-search/sd-select-v2-list-item-search.js +4 -4
  114. package/dist/collection/components/sd-select-v2/sd-select-v2-listbox/sd-select-v2-listbox.css +5 -5
  115. package/dist/collection/components/sd-select-v2/sd-select-v2-listbox/sd-select-v2-listbox.js +2 -2
  116. package/dist/collection/components/sd-select-v2/sd-select-v2-trigger/sd-select-v2-trigger.js +2 -2
  117. package/dist/collection/components/sd-select-v2/sd-select-v2.config.js +0 -1
  118. package/dist/collection/components/sd-select-v2/sd-select-v2.js +3 -3
  119. package/dist/collection/components/sd-switch/sd-switch.js +1 -1
  120. package/dist/collection/components/sd-table/sd-table.js +5 -5
  121. package/dist/collection/components/sd-table/sd-table.stories.helpers.js +146 -0
  122. package/dist/collection/components/sd-table/sd-tbody/sd-tbody.js +1 -1
  123. package/dist/collection/components/sd-table/sd-td/sd-td.js +1 -1
  124. package/dist/collection/components/sd-table/sd-thead/sd-thead.js +3 -3
  125. package/dist/collection/components/sd-table/sd-tr/sd-tr.js +2 -2
  126. package/dist/collection/components/sd-tabs/sd-tabs.js +1 -1
  127. package/dist/collection/components/sd-tag/sd-tag.js +2 -2
  128. package/dist/collection/components/sd-text-link/sd-text-link.js +3 -3
  129. package/dist/collection/components/sd-textarea/sd-textarea.js +1 -1
  130. package/dist/collection/components/sd-toast/sd-toast.js +2 -2
  131. package/dist/collection/components/sd-toast-container/sd-toast-container.config.js +1 -1
  132. package/dist/collection/components/sd-toast-container/sd-toast-container.js +1 -1
  133. package/dist/collection/components/sd-toggle/sd-toggle.js +1 -1
  134. package/dist/collection/components/sd-tooltip/sd-tooltip.js +2 -2
  135. package/dist/collection/components/table-test/table-test.js +1 -1
  136. package/dist/collection/utils/modal-stack.js +109 -0
  137. package/dist/collection/utils/modal.js +17 -23
  138. package/dist/components/index.js +1 -1
  139. package/dist/components/{p-DHh_uT9m.js → p-B1j9ZWLJ.js} +1 -1
  140. package/dist/components/{p-DPJPXCqf.js → p-BBluw-CU.js} +1 -1
  141. package/dist/components/{p-D74FHxKd.js → p-BFd54Imz.js} +1 -1
  142. package/dist/components/{p-IbLrnrk8.js → p-BPXQ6DXz.js} +1 -1
  143. package/dist/components/p-BaHpEtbz.js +1 -0
  144. package/dist/components/{p-DZJZLfsh.js → p-BlqLear7.js} +1 -1
  145. package/dist/components/{p-CJwbBrt5.js → p-ByhWX2NK.js} +1 -1
  146. package/dist/components/{p-ByYIyCZY.js → p-BylHC3lv.js} +1 -1
  147. package/dist/components/p-C-txBx-h.js +1 -0
  148. package/dist/components/p-C0VkfKIA.js +1 -0
  149. package/dist/components/p-C4uWhzoG.js +1 -0
  150. package/dist/components/{p-Ds4UCVE1.js → p-CEeNVTzW.js} +1 -1
  151. package/dist/components/{p-DDOw5GBw.js → p-CLZ8NObl.js} +1 -1
  152. package/dist/components/{p-tZWFjQm2.js → p-COM91Bya.js} +1 -1
  153. package/dist/components/{p-BH4I7hqf.js → p-CS62OEXf.js} +1 -1
  154. package/dist/components/{p-iWu6aGXE.js → p-CX0V7awA.js} +1 -1
  155. package/dist/components/{p-DlsWuYWL.js → p-Cb1M05mf.js} +1 -1
  156. package/dist/{design-system/p-CRTx3YEe.js → components/p-Cj4NAUzE.js} +1 -1
  157. package/dist/components/{p-1iOCtFn5.js → p-CsPyZohK.js} +1 -1
  158. package/dist/components/{p-DhkPKN1J.js → p-CsVPC3FD.js} +1 -1
  159. package/dist/components/{p-tvysh3yO.js → p-Csfk-CtX.js} +1 -1
  160. package/dist/components/{p-DqYRbHxW.js → p-CtrDZYN5.js} +1 -1
  161. package/dist/components/p-D21iKAp7.js +1 -0
  162. package/dist/components/{p-cNJ6VOYI.js → p-D6C4-apu.js} +1 -1
  163. package/dist/components/{p-V6yl4lMM.js → p-DGPGMB_Z.js} +1 -1
  164. package/dist/components/{p-CymMpTU-.js → p-DIro-Wat.js} +1 -1
  165. package/dist/components/{p-BstWg2vS.js → p-DPCj-bFr.js} +1 -1
  166. package/dist/components/{p-DLeCo2gh.js → p-DQLyH3dr.js} +1 -1
  167. package/dist/components/p-DRVnqiWc.js +1 -0
  168. package/dist/components/{p-C02KLCcO.js → p-DWW5xr6r.js} +1 -1
  169. package/dist/components/p-D_lyw4rN.js +1 -0
  170. package/dist/components/{p-DL69hClF.js → p-Diis5oCN.js} +1 -1
  171. package/dist/components/{p-BRRvU4ZQ.js → p-DlkxQ9Jn.js} +1 -1
  172. package/dist/components/{p-CkMs7IA8.js → p-N_EbEY8s.js} +1 -1
  173. package/dist/components/{p-hN9rpxkR.js → p-T5BGXHZg.js} +1 -1
  174. package/dist/components/{p-BF4hokOY.js → p-YgnF5oje.js} +1 -1
  175. package/dist/components/{p-CX2EDIQM.js → p-z9MoRjYX.js} +1 -1
  176. package/dist/components/sd-action-modal.js +1 -1
  177. package/dist/components/sd-badge.js +1 -1
  178. package/dist/components/sd-barcode-input.js +1 -1
  179. package/dist/components/sd-button-v2.js +1 -1
  180. package/dist/components/sd-button.js +1 -1
  181. package/dist/components/sd-calendar.js +1 -1
  182. package/dist/components/sd-card.js +1 -1
  183. package/dist/components/sd-checkbox.js +1 -1
  184. package/dist/components/sd-chip.d.ts +11 -0
  185. package/dist/components/sd-chip.js +1 -0
  186. package/dist/components/sd-circle-progress.js +1 -1
  187. package/dist/components/sd-confirm-modal.js +1 -1
  188. package/dist/components/sd-date-box.js +1 -1
  189. package/dist/components/sd-date-picker-calendar.js +1 -1
  190. package/dist/components/sd-date-picker-trigger.js +1 -1
  191. package/dist/components/sd-date-picker.js +1 -1
  192. package/dist/components/sd-date-range-picker-calendar.js +1 -1
  193. package/dist/components/sd-date-range-picker.js +1 -1
  194. package/dist/components/sd-dropdown-button.js +1 -1
  195. package/dist/components/sd-field.js +1 -1
  196. package/dist/components/sd-file-picker.js +1 -1
  197. package/dist/components/sd-floating-portal.js +1 -1
  198. package/dist/components/sd-form.js +1 -1
  199. package/dist/components/sd-ghost-button.js +1 -1
  200. package/dist/components/sd-guide.js +1 -1
  201. package/dist/components/sd-icon.js +1 -1
  202. package/dist/components/sd-input.js +1 -1
  203. package/dist/components/sd-loading-container.js +1 -1
  204. package/dist/components/sd-loading-modal.js +1 -1
  205. package/dist/components/sd-modal-container.js +1 -1
  206. package/dist/components/sd-number-input.js +1 -1
  207. package/dist/components/sd-pagination.js +1 -1
  208. package/dist/components/sd-popover.js +1 -1
  209. package/dist/components/sd-portal.js +1 -1
  210. package/dist/components/sd-progress.js +1 -1
  211. package/dist/components/sd-radio-button.js +1 -1
  212. package/dist/components/sd-radio-group.js +1 -1
  213. package/dist/components/sd-radio.js +1 -1
  214. package/dist/components/sd-select-dropdown.js +1 -1
  215. package/dist/components/sd-select-group.js +1 -1
  216. package/dist/components/sd-select-multiple-group.js +1 -1
  217. package/dist/components/sd-select-multiple.js +1 -1
  218. package/dist/components/sd-select-option-group.js +1 -1
  219. package/dist/components/sd-select-option.js +1 -1
  220. package/dist/components/sd-select-search-input.js +1 -1
  221. package/dist/components/sd-select-v2-list-item-search.js +1 -1
  222. package/dist/components/sd-select-v2-list-item.js +1 -1
  223. package/dist/components/sd-select-v2-listbox.js +1 -1
  224. package/dist/components/sd-select-v2-trigger.js +1 -1
  225. package/dist/components/sd-select-v2.js +1 -1
  226. package/dist/components/sd-select.js +1 -1
  227. package/dist/components/sd-switch.js +1 -1
  228. package/dist/components/sd-table.js +1 -1
  229. package/dist/components/sd-tabs.js +1 -1
  230. package/dist/components/sd-tag.js +1 -1
  231. package/dist/components/sd-tbody.js +1 -1
  232. package/dist/components/sd-td.js +1 -1
  233. package/dist/components/sd-text-link.js +1 -1
  234. package/dist/components/sd-textarea.js +1 -1
  235. package/dist/components/sd-thead.js +1 -1
  236. package/dist/components/sd-toast-container.js +1 -1
  237. package/dist/components/sd-toast.js +1 -1
  238. package/dist/components/sd-toggle.js +1 -1
  239. package/dist/components/sd-tooltip.js +1 -1
  240. package/dist/components/sd-tr.js +1 -1
  241. package/dist/components/table-test.js +1 -1
  242. package/dist/design-system/design-system.css +1 -1
  243. package/dist/design-system/design-system.esm.js +1 -1
  244. package/dist/design-system/index.esm.js +1 -1
  245. package/dist/design-system/{p-c44ba991.entry.js → p-002e10ac.entry.js} +1 -1
  246. package/dist/design-system/p-01ac7743.entry.js +1 -0
  247. package/dist/design-system/{p-244d2d6e.entry.js → p-07736d67.entry.js} +1 -1
  248. package/dist/design-system/p-0929f910.entry.js +1 -0
  249. package/dist/design-system/{p-b2b5b2d3.entry.js → p-0b216b11.entry.js} +1 -1
  250. package/dist/design-system/{p-5b2486c9.entry.js → p-0bffdbf4.entry.js} +1 -1
  251. package/dist/design-system/{p-e1c17466.entry.js → p-0c98676e.entry.js} +1 -1
  252. package/dist/design-system/{p-5224553e.entry.js → p-0d485537.entry.js} +1 -1
  253. package/dist/design-system/{p-7fe09661.entry.js → p-16eae7ae.entry.js} +1 -1
  254. package/dist/design-system/{p-aebf903f.entry.js → p-1a455448.entry.js} +1 -1
  255. package/dist/design-system/{p-10763304.entry.js → p-1b8e63a6.entry.js} +1 -1
  256. package/dist/design-system/{p-525aefd5.entry.js → p-23c31074.entry.js} +1 -1
  257. package/dist/design-system/{p-7cf63a80.entry.js → p-23ff6bee.entry.js} +1 -1
  258. package/dist/design-system/{p-87a23bd0.entry.js → p-2a4b6bc7.entry.js} +1 -1
  259. package/dist/design-system/{p-298d9b57.entry.js → p-2a663b3b.entry.js} +1 -1
  260. package/dist/design-system/{p-fa1072f7.entry.js → p-308c2a72.entry.js} +1 -1
  261. package/dist/design-system/{p-e9d36c02.entry.js → p-33713805.entry.js} +1 -1
  262. package/dist/design-system/p-35b29182.entry.js +1 -0
  263. package/dist/design-system/{p-9e0b944f.entry.js → p-449e58ee.entry.js} +1 -1
  264. package/dist/design-system/{p-73383b2f.entry.js → p-48f1f9ff.entry.js} +1 -1
  265. package/dist/design-system/{p-504fdb4e.entry.js → p-4d434794.entry.js} +1 -1
  266. package/dist/design-system/p-4de3b6b1.entry.js +1 -0
  267. package/dist/design-system/p-4f9f25a1.entry.js +1 -0
  268. package/dist/design-system/{p-40371bf6.entry.js → p-59aa62ff.entry.js} +1 -1
  269. package/dist/design-system/{p-7b433296.entry.js → p-5a0b0a1b.entry.js} +1 -1
  270. package/dist/design-system/p-60ece09d.entry.js +1 -0
  271. package/dist/design-system/{p-10ed0768.entry.js → p-641c2f3d.entry.js} +1 -1
  272. package/dist/design-system/{p-2841d5e1.entry.js → p-64a56a4e.entry.js} +1 -1
  273. package/dist/design-system/{p-dff0060e.entry.js → p-6b2f6efb.entry.js} +1 -1
  274. package/dist/design-system/{p-e1202ad3.entry.js → p-6b478f5c.entry.js} +1 -1
  275. package/dist/design-system/{p-6eb3462d.entry.js → p-6ca6dfaf.entry.js} +1 -1
  276. package/dist/design-system/{p-337267a7.entry.js → p-6ef2d08f.entry.js} +1 -1
  277. package/dist/design-system/{p-51fcc29f.entry.js → p-703eee55.entry.js} +1 -1
  278. package/dist/design-system/p-75c5e31b.entry.js +1 -0
  279. package/dist/design-system/{p-768efd5a.entry.js → p-7dd8beba.entry.js} +1 -1
  280. package/dist/design-system/{p-348eff76.entry.js → p-7ef0c428.entry.js} +1 -1
  281. package/dist/design-system/{p-d263d476.entry.js → p-8281dc36.entry.js} +1 -1
  282. package/dist/design-system/p-87222184.entry.js +1 -0
  283. package/dist/design-system/p-8cd1b533.entry.js +1 -0
  284. package/dist/design-system/{p-f9559741.entry.js → p-92a52f89.entry.js} +1 -1
  285. package/dist/design-system/{p-19257b97.entry.js → p-95d96917.entry.js} +1 -1
  286. package/dist/design-system/{p-fb7e8c54.entry.js → p-9ecde011.entry.js} +1 -1
  287. package/dist/design-system/{p-b4e56b67.entry.js → p-9f0fe1f6.entry.js} +1 -1
  288. package/dist/design-system/p-BGyJgVXm.js +2 -0
  289. package/dist/design-system/{p-CJwbBrt5.js → p-ByhWX2NK.js} +1 -1
  290. package/dist/design-system/p-C-txBx-h.js +1 -0
  291. package/dist/design-system/p-C4tHYnB4.js +1 -0
  292. package/dist/design-system/p-DRVnqiWc.js +1 -0
  293. package/dist/design-system/{p-513d85e1.entry.js → p-ade9319d.entry.js} +1 -1
  294. package/dist/design-system/{p-671a9ca8.entry.js → p-aeadfb9c.entry.js} +1 -1
  295. package/dist/design-system/{p-b56ae914.entry.js → p-ca6b4d4a.entry.js} +1 -1
  296. package/dist/design-system/{p-b6e7b8c8.entry.js → p-cdedac3c.entry.js} +1 -1
  297. package/dist/design-system/{p-5982bcd0.entry.js → p-d43772c0.entry.js} +1 -1
  298. package/dist/design-system/{p-c6d2f909.entry.js → p-dfa716e0.entry.js} +1 -1
  299. package/dist/design-system/{p-a66529a5.entry.js → p-e1288299.entry.js} +1 -1
  300. package/dist/design-system/{p-2edd355b.entry.js → p-e1b307ee.entry.js} +1 -1
  301. package/dist/design-system/p-e3a1e677.entry.js +1 -0
  302. package/dist/design-system/p-ebc72b3f.entry.js +1 -0
  303. package/dist/design-system/{p-e385cbf4.entry.js → p-fa888a37.entry.js} +1 -1
  304. package/dist/esm/{component.textinput-CJwbBrt5.js → component.textinput-ByhWX2NK.js} +3 -2
  305. package/dist/esm/design-system.js +3 -3
  306. package/dist/esm/{index-Dcpqhs6V.js → index-BGyJgVXm.js} +1 -1
  307. package/dist/esm/index.js +36 -41
  308. package/dist/esm/loader.js +3 -3
  309. package/dist/esm/modal-stack-DRVnqiWc.js +105 -0
  310. package/dist/esm/sd-action-modal.entry.js +2 -2
  311. package/dist/esm/sd-badge.entry.js +2 -2
  312. package/dist/esm/sd-barcode-input.entry.js +3 -3
  313. package/dist/esm/sd-button-v2_2.entry.js +3 -3
  314. package/dist/esm/sd-button_4.entry.js +22 -17
  315. package/dist/esm/sd-calendar.entry.js +1 -1
  316. package/dist/esm/sd-card.entry.js +2 -2
  317. package/dist/esm/sd-checkbox.entry.js +1 -1
  318. package/dist/esm/sd-chip.entry.js +310 -0
  319. package/dist/esm/sd-circle-progress.entry.js +2 -2
  320. package/dist/esm/sd-confirm-modal_2.entry.js +4 -4
  321. package/dist/esm/sd-date-box.entry.js +1 -1
  322. package/dist/esm/sd-date-picker-calendar.entry.js +2 -2
  323. package/dist/esm/sd-date-picker-trigger.entry.js +3 -3
  324. package/dist/esm/sd-date-picker.entry.js +3 -3
  325. package/dist/esm/sd-date-range-picker-calendar.entry.js +2 -2
  326. package/dist/esm/sd-date-range-picker.entry.js +1 -1
  327. package/dist/esm/sd-dropdown-button.entry.js +5 -16
  328. package/dist/esm/sd-file-picker.entry.js +3 -3
  329. package/dist/esm/sd-form.entry.js +1 -1
  330. package/dist/esm/sd-ghost-button.entry.js +6 -6
  331. package/dist/esm/sd-guide.entry.js +167 -34
  332. package/dist/esm/sd-input_2.entry.js +7 -7
  333. package/dist/esm/sd-loading-container.entry.js +4 -4
  334. package/dist/esm/sd-modal-container.entry.js +126 -155
  335. package/dist/esm/sd-number-input.entry.js +4 -4
  336. package/dist/esm/sd-pagination_2.entry.js +116 -42
  337. package/dist/esm/sd-popover.entry.js +4 -4
  338. package/dist/esm/sd-portal.entry.js +4 -4
  339. package/dist/esm/sd-progress.entry.js +3 -3
  340. package/dist/esm/sd-radio-button.entry.js +2 -2
  341. package/dist/esm/sd-radio-group.entry.js +2 -2
  342. package/dist/esm/sd-radio.entry.js +2 -2
  343. package/dist/esm/sd-select-dropdown_2.entry.js +4 -4
  344. package/dist/esm/sd-select-group.entry.js +2 -2
  345. package/dist/esm/sd-select-multiple-group.entry.js +2 -2
  346. package/dist/esm/sd-select-multiple.entry.js +2 -2
  347. package/dist/esm/sd-select-option-group.entry.js +4 -4
  348. package/dist/esm/sd-select-v2-list-item_4.entry.js +12 -16
  349. package/dist/esm/sd-select.entry.js +2 -2
  350. package/dist/esm/sd-switch.entry.js +2 -2
  351. package/dist/esm/sd-table.entry.js +6 -6
  352. package/dist/esm/sd-tabs.entry.js +2 -2
  353. package/dist/esm/sd-tag.entry.js +3 -3
  354. package/dist/esm/sd-tbody.entry.js +2 -2
  355. package/dist/esm/sd-td.entry.js +2 -2
  356. package/dist/esm/sd-text-link.entry.js +4 -4
  357. package/dist/esm/sd-textarea.entry.js +3 -3
  358. package/dist/esm/sd-thead.entry.js +4 -4
  359. package/dist/esm/sd-toast-container.entry.js +3 -3
  360. package/dist/esm/sd-toast.entry.js +3 -3
  361. package/dist/esm/sd-toggle.entry.js +2 -2
  362. package/dist/esm/sd-tr.entry.js +3 -3
  363. package/dist/esm/system-C-txBx-h.js +14 -0
  364. package/dist/esm/table-test.entry.js +2 -2
  365. package/dist/esm/{tooltipArrow-fP-ISMAm.js → tooltipArrow-BAjP9_Hx.js} +1 -1
  366. package/dist/types/components/sd-chip/sd-chip.config.d.ts +36 -0
  367. package/dist/types/components/sd-chip/sd-chip.d.ts +47 -0
  368. package/dist/types/components/sd-guide/sd-guide.config.d.ts +44 -0
  369. package/dist/types/components/sd-guide/sd-guide.d.ts +3 -4
  370. package/dist/types/components/sd-loading-container/sd-loading-container.config.d.ts +1 -1
  371. package/dist/types/components/sd-modal-container/sd-modal-container.d.ts +12 -16
  372. package/dist/types/components/sd-pagination/sd-pagination.config.d.ts +23 -0
  373. package/dist/types/components/sd-pagination/sd-pagination.d.ts +3 -3
  374. package/dist/types/components/sd-select-v2/sd-select-v2.config.d.ts +0 -1
  375. package/dist/types/components/sd-table/sd-table.stories.helpers.d.ts +29 -0
  376. package/dist/types/components/sd-toast-container/sd-toast-container.config.d.ts +1 -1
  377. package/dist/types/components.d.ts +125 -16
  378. package/dist/types/utils/modal-stack.d.ts +17 -0
  379. package/hydrate/index.js +963 -354
  380. package/hydrate/index.mjs +963 -354
  381. package/package.json +1 -1
  382. package/dist/components/p-B_7ozne7.js +0 -1
  383. package/dist/components/p-BsPBl6g5.js +0 -1
  384. package/dist/components/p-BuSniZ67.js +0 -1
  385. package/dist/components/p-CCHce_Dt.js +0 -1
  386. package/dist/components/p-DNVUhw5A.js +0 -1
  387. package/dist/components/p-UR2Cf2Sm.js +0 -1
  388. package/dist/design-system/p-1645da95.entry.js +0 -1
  389. package/dist/design-system/p-3b8595de.entry.js +0 -1
  390. package/dist/design-system/p-3bbf23b4.entry.js +0 -1
  391. package/dist/design-system/p-4c55ba79.entry.js +0 -1
  392. package/dist/design-system/p-6e9d6063.entry.js +0 -1
  393. package/dist/design-system/p-87b2c270.entry.js +0 -1
  394. package/dist/design-system/p-9925857c.entry.js +0 -1
  395. package/dist/design-system/p-9cb3be8c.entry.js +0 -1
  396. package/dist/design-system/p-Dcpqhs6V.js +0 -2
  397. package/dist/design-system/p-e232fb11.entry.js +0 -1
  398. package/dist/design-system/p-e474fa8c.entry.js +0 -1
@@ -1 +1 @@
1
- import{r as t,c as e,a as s,d as i,h,H as a}from"./p-Dcpqhs6V.js";import{T as n}from"./p-sZMi_32I.js";let l=(t=21)=>{let e="",s=crypto.getRandomValues(new Uint8Array(t|=0));for(;t--;)e+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[63&s[t]];return e};const d=class{constructor(s){t(this,s),this.sdSelectChange=e(this,"sdSelectChange",7),this.sdPageChange=e(this,"sdPageChange",7),this.sdRowsPerPageChange=e(this,"sdRowsPerPageChange",7),this.sdVirtualUpdate=e(this,"sdVirtualUpdate",7),this.sdVirtualReachEnd=e(this,"sdVirtualReachEnd",7)}static DEFAULT_NO_DATA_LABEL="데이터가 없습니다.";get el(){return s(this)}tableId=l(8);fallbackTableId=l(8);columns=[];rows;selected=[];rowKey="id";selectable=!1;resizable=!1;width;height;stickyHeader=!1;stickyColumn={left:0,right:0};noDataLabel=d.DEFAULT_NO_DATA_LABEL;resolvedNoDataLabel=d.DEFAULT_NO_DATA_LABEL;isLoading=!1;pagination;useInternalPagination=!1;useRowsPerPageSelect=!1;useVirtualScroll=!1;rowHeight=40;virtualBuffer=5;virtualEndThreshold=10;rowsPerPageOption=[{label:"10개씩 보기",value:10},{label:"25개씩 보기",value:25},{label:"50개씩 보기",value:50},{label:"100개씩 보기",value:100}];sdSelectChange;sdPageChange;sdRowsPerPageChange;sdVirtualUpdate;sdVirtualReachEnd;currentPage=1;innerRowsPerPage=10;innerSelected=new Set;columnWidths=[];scrolledLeft=!1;scrolledRight=!1;rowCount=0;loadingScrollTop=0;vsStart=0;vsEnd=0;lastReachEndNotifiedRowCount=-1;scrollContainer=null;onScroll;toFiniteNumber(t,e){const s="number"==typeof t?t:Number(t);return Number.isFinite(s)?s:e}isRowsPerPageValue(t){return null===t||"string"==typeof t||"number"==typeof t}isValidTableId(t){return"string"==typeof t&&t.trim().length>0&&"undefined"!==t&&"null"!==t}getResolvedTableId(){if(this.isValidTableId(this.tableId))return this.tableId;const t=this.el?.getAttribute(n);return this.isValidTableId(t)?t:this.fallbackTableId}syncTableIdAttribute(){const t=this.getResolvedTableId();this.el?.getAttribute(n)!==t&&this.el.setAttribute(n,t)}handleIsLoadingChange(t){t&&(this.loadingScrollTop=this.scrollContainer?.scrollTop??0)}handleUseVirtualScrollChange(t){t&&i((()=>this.propagateVirtualUpdate()))}handleColumnsChange(t){this.columnWidths=t.map((t=>parseInt(t.width||"120",10))),this.refreshChildrenConfig()}handleRowsChange(t){Array.isArray(t)&&(this.rowCount=t.length,this.useVirtualScroll&&this.propagateVirtualUpdate(!0),this.pushRowsToChildren(t))}handleTableIdChange(){this.syncTableIdAttribute()}handleNoDataLabelChange(t){this.resolvedNoDataLabel="string"==typeof t&&t.trim().length>0&&"undefined"!==t&&"null"!==t?t:d.DEFAULT_NO_DATA_LABEL}handleConfigChange(){this.refreshChildrenConfig()}handleSelectedChange(t){this.innerSelected=new Set(t)}handlePaginationChange(t){t?.page&&t.page!==this.currentPage&&(this.currentPage=t.page),t?.rowsPerPage&&t.rowsPerPage!==this.innerRowsPerPage&&(this.innerRowsPerPage=t.rowsPerPage)}componentWillLoad(){this.syncTableIdAttribute(),this.handleNoDataLabelChange(this.noDataLabel),this.innerSelected=new Set(this.selected||[]),this.columnWidths=(this.columns||[]).map((t=>parseInt(t.width||"120",10))),this.pagination?.page&&(this.currentPage=this.pagination.page),this.pagination?.rowsPerPage&&(this.innerRowsPerPage=this.pagination.rowsPerPage);const t=this.el;t.isRowSelectedSync=this.isRowSelectedSync.bind(this),t.updateRowSelectSync=this.updateRowSelectSync.bind(this),t.toggleSelectAllSync=this.toggleSelectAllSync.bind(this),t.getIsAllCheckedSync=this.getIsAllCheckedSync.bind(this),t.getStickyStyleSync=this.getStickyStyleSync.bind(this),t.setRowCountSync=this.setRowCountSync.bind(this),t.handleResize=this.handleResize.bind(this),t.getPaginationInfoSync=this.getPaginationInfoSync.bind(this),t.getVirtualScrollRangeSync=this.getVirtualScrollRangeSync.bind(this),t.getConfigSync=this.getConfigSync.bind(this),t.getTableIdSync=()=>this.getResolvedTableId(),t.getVirtualScrollConfigSync=this.getVirtualScrollConfigSync.bind(this),t.calculateVisibleRange=this.calculateVisibleRange.bind(this),Array.isArray(this.rows)&&(this.rowCount=this.rows.length,this.pushRowsToChildren(this.rows))}componentDidLoad(){Array.isArray(this.rows)&&this.pushRowsToChildren(this.rows),i((()=>{const t=this.el.shadowRoot?.querySelector(".sd-table__wrapper");if(!t)return;let e=!1;this.onScroll=()=>{const s=t.scrollLeft,i=s>0,h=s+t.clientWidth<t.scrollWidth;this.scrolledLeft===i&&this.scrolledRight===h||(this.scrolledLeft=i,this.scrolledRight=h,this.refreshChildrenConfig()),this.useVirtualScroll&&!e&&(e=!0,requestAnimationFrame((()=>{e=!1,this.propagateVirtualUpdate()})))},this.scrollContainer=t,t.addEventListener("scroll",this.onScroll,{passive:!0}),this.onScroll(),this.useVirtualScroll&&this.propagateVirtualUpdate()}))}disconnectedCallback(){this.scrollContainer&&this.onScroll&&this.scrollContainer.removeEventListener("scroll",this.onScroll)}pushRowsToChildren(t){const e=this.el.querySelector("sd-tbody");e&&(e.rows=t);const s=this.el.querySelector("sd-thead");s&&(s.rows=t)}handleStructureSlotChange=()=>{Array.isArray(this.rows)&&this.pushRowsToChildren(this.rows),this.refreshChildrenConfig()};refreshChildrenSelection(){const t=this.el.querySelector("sd-thead"),e=this.el.querySelectorAll("sd-tr");t?.refreshSelection?.(),e.forEach((t=>t?.refreshSelection?.()))}refreshChildrenConfig(){const t=this.el.querySelector("sd-thead"),e=this.el.querySelectorAll("sd-tr");t?.refreshConfig?.(),e.forEach((t=>t?.refreshConfig?.()))}maybeEmitVirtualReachEnd(t,e){const s=Math.max(1,this.virtualEndThreshold);e>=Math.max(0,this.rowCount-s)&&this.lastReachEndNotifiedRowCount!==this.rowCount&&(this.lastReachEndNotifiedRowCount=this.rowCount,this.sdVirtualReachEnd.emit({from:t,to:e,rowCount:this.rowCount,threshold:s}))}propagateVirtualUpdate(t=!1){if(!this.scrollContainer||!this.useVirtualScroll)return;const e=this.toFiniteNumber(this.scrollContainer.scrollTop,0),s=this.toFiniteNumber(this.scrollContainer.clientHeight,0),{start:i,end:h}=this.calculateVisibleRange(e,s);if(!Number.isFinite(i)||!Number.isFinite(h))return;const a=this.vsStart!==i||this.vsEnd!==h;if(!a&&!t)return;this.vsStart=i,this.vsEnd=h;const n=i*this.rowHeight,l=Math.max(0,(this.rowCount-h)*this.rowHeight),d=this.el.querySelector("sd-tbody");d?.setSpacersSync?.(n,l),a&&this.sdVirtualUpdate.emit({from:i,to:h}),this.maybeEmitVirtualReachEnd(i,h)}getVirtualScrollConfigSync(){return{useVirtualScroll:this.useVirtualScroll,rowHeight:this.rowHeight,virtualBuffer:this.virtualBuffer,vsStart:this.vsStart,vsEnd:this.vsEnd,rowCount:this.rowCount}}getConfigSync(){return{columns:this.columns,selectable:this.selectable,resizable:this.resizable,stickyColumn:this.stickyColumn,stickyHeader:this.stickyHeader,scrolledLeft:this.scrolledLeft,scrolledRight:this.scrolledRight,columnWidths:this.columnWidths}}isRowSelectedSync(t){return Array.from(this.innerSelected).some((e=>e[this.rowKey]===t[this.rowKey]))}async isRowSelected(t){return this.isRowSelectedSync(t)}updateRowSelectSync(t){const e=Array.from(this.innerSelected),s=this.isRowSelectedSync(t)?e.filter((e=>e[this.rowKey]!==t[this.rowKey])):[...e,t];s.length!==e.length&&(this.innerSelected=new Set(s),this.selected=Array.from(this.innerSelected),this.sdSelectChange.emit(Array.from(this.innerSelected)),this.refreshChildrenSelection())}async updateRowSelect(t){this.updateRowSelectSync(t)}toggleSelectAllSync(t,e){if(t){const t=new Set([...e]);this.innerSelected=new Set([...this.innerSelected,...t])}else{const t=e.map((t=>t[this.rowKey]));this.innerSelected=new Set([...this.innerSelected].filter((e=>!t.includes(e[this.rowKey]))))}this.selected=Array.from(this.innerSelected),this.sdSelectChange.emit(Array.from(this.innerSelected)),this.refreshChildrenSelection()}async toggleSelectAll(t,e){this.toggleSelectAllSync(t,e)}getIsAllCheckedSync(t){const e=t.length,s=t.filter((t=>Array.from(this.innerSelected).some((e=>e[this.rowKey]===t[this.rowKey])))).length;return 0!==s&&(s===e||null)}async getIsAllChecked(t){return this.getIsAllCheckedSync(t)}changePage(t){this.useInternalPagination?(this.currentPage=t,this.sdPageChange.emit(this.currentPage),this.updateRowsVisibility()):this.sdPageChange.emit(t)}updateRowsVisibility(){this.el.querySelectorAll("sd-tr").forEach((t=>t?.updateVisibility?.()))}changeRowsPerPage(t){const e=t?Number(t):0;if(!this.useInternalPagination)return void this.sdRowsPerPageChange.emit(e);this.innerRowsPerPage=e;const s=Math.max(1,Math.ceil(this.rowCount/e));this.currentPage>s&&(this.currentPage=s),this.sdRowsPerPageChange.emit(e),this.updateRowsVisibility()}get lastPageNumber(){if(this.useInternalPagination)return Math.max(1,Math.ceil(this.rowCount/this.innerRowsPerPage));const{lastPage:t,rowsPerPage:e=10}=this.pagination||{};return t??Math.max(1,Math.ceil(this.rowCount/e))}handleResize(t,e,s=!1){if("undefined"==typeof document)return;const i=e.clientX,h=this.columnWidths[t],a=e=>{const a=this.columns[t];if(!a)return;const n=a.maxWidth||9999,l=e.clientX-i,d=Math.min(Math.max(h+(s?-l:l),a.minWidth||50),n);this.columnWidths=this.columnWidths.map(((e,s)=>s===t?d:e));const r=this.el.querySelector("sd-thead"),o=this.el.querySelectorAll("sd-tr");r?.setColumnWidths?.(this.columnWidths),o.forEach((t=>t?.setColumnWidths?.(this.columnWidths)));const c=this.stickyColumn?.right||0,b=this.columns.filter((t=>!1!==t.visible)).length;c>0&&t===b-c&&requestAnimationFrame((()=>{this.onScroll?.()}))},n=()=>{document.removeEventListener("mousemove",a),document.removeEventListener("mouseup",n)};document.addEventListener("mousemove",a),document.addEventListener("mouseup",n)}getStickyStyleSync(t){return{"--sticky-left-offset":`${this.columnWidths.slice(0,t).reduce(((t,e)=>t+e),this.selectable?52:0)}px`,"--sticky-right-offset":`${this.columnWidths.filter(((e,s)=>s>=this.columns.filter((t=>!1!==t.visible)).length-(this.stickyColumn?.right||0)&&s>t)).reduce(((t,e)=>t+e),0)}px`,width:`${this.columnWidths[t]}px`,minWidth:`${this.columnWidths[t]}px`,maxWidth:`${this.columnWidths[t]}px`}}async getStickyStyle(t){return this.getStickyStyleSync(t)}setRowCountSync(t){const e=Math.max(0,Math.floor(this.toFiniteNumber(t,0)));e!==this.rowCount&&(this.lastReachEndNotifiedRowCount=-1),this.rowCount=e,this.useVirtualScroll&&this.propagateVirtualUpdate(!0)}async setRowCount(t){this.setRowCountSync(t)}calculateVisibleRange(t,e){const s=Math.max(1,this.toFiniteNumber(this.rowHeight,40)),i=Math.max(0,Math.floor(this.toFiniteNumber(this.virtualBuffer,5))),h=Math.max(0,this.toFiniteNumber(t,0)),a=Math.max(0,this.toFiniteNumber(e,0)),n=Math.max(0,Math.floor(this.toFiniteNumber(this.rowCount,0))),l=Math.floor(h/s),d=Math.ceil(a/s);return{start:Math.max(0,l-i),end:Math.min(n,l+d+i)}}getPaginationInfoSync(){if(!this.useInternalPagination||!this.pagination)return null;const t=(this.currentPage-1)*this.innerRowsPerPage;return{startIndex:t,endIndex:t+this.innerRowsPerPage,currentPage:this.currentPage,rowsPerPage:this.innerRowsPerPage}}async getPaginationInfo(){return this.getPaginationInfoSync()}getVirtualScrollRangeSync(){return this.useVirtualScroll&&this.vsEnd>0?{from:this.vsStart,to:this.vsEnd}:null}get tableClasses(){return["sd-table",this.stickyHeader&&"sd-table--sticky-header",this.selectable&&"sd-table--selectable",this.resizable&&"sd-table--resizable",(this.selectable||(this.stickyColumn?.left??0)>0||(this.stickyColumn?.right??0)>0)&&"sd-table--sticky-column",this.scrolledLeft&&"sd-table--scrolled-left",this.scrolledRight&&"sd-table--scrolled-right",0===this.rowCount&&!this.isLoading&&"sd-table--no-data"].filter(Boolean).join(" ")}render(){const t=this.getResolvedTableId();return h(a,{key:"dd25a84ce29a197a7e853d1812ce0f0fbdf043bd"},h("div",{key:"8b256e995d55c36ff9622148054911fcbe8aa89b",class:"sd-table__container",style:{"--table-width":this.width,"--table-height":this.height,"--table-container-height":`calc(${this.height||"100%"} - ${this.pagination&&this.rowCount>0&&!this.useVirtualScroll?48:0}px)`}},h("div",{key:"b4949fed8c50b93bcddace22978aff358ea7c210",class:{"sd-table__clip":!0,"sd-table__clip--has-pagination":!(!(this.pagination&&this.pagination.rowsPerPage>0&&this.rowCount>0)||this.useVirtualScroll)}},h("div",{key:"5fcceeb27568afdd367e7dbf2886fcbd107089c5",class:{"sd-table__wrapper":!0,"sd-table__wrapper--loading":this.isLoading,"sd-table__wrapper--no-data":0===this.rowCount&&!this.isLoading}},this.isLoading&&h("div",{key:"edabfb6b601cfad985e3b8614d603f2df1da8f98",class:"sd-table__loading",style:{top:`${this.loadingScrollTop}px`}},h("sd-circle-progress",{key:"40de9b2b97407523d1b02b97f208682e4946be66",indeterminate:!0})),0===this.rowCount&&!this.isLoading&&h("div",{key:"fe0d54f45a2a0a8ca1cc6552a42c7725ecd84c99",class:"sd-table__no-data"},h("slot",{key:"f64d232d1b3bd69d7c43a5170d06e73cbc586226",name:"no-data"},h("span",{key:"71f5dcf2e5af2403032bdefd19a3cc4793a823e9"},this.resolvedNoDataLabel))),h("table",{key:"e32c9f96523db174a57efffa584237836a67214a",class:this.tableClasses},h("slot",{key:"ce5e49454ac9044d6b3fcf3ac51809bb1e5465f8",name:`${t}-head`,onSlotchange:this.handleStructureSlotChange}),h("slot",{key:"800b45ddc05aac02cf8827b31beca5d0f363b55f",name:`${t}-body`,onSlotchange:this.handleStructureSlotChange})))),this.pagination&&this.pagination.rowsPerPage>0&&this.rowCount>0&&!this.useVirtualScroll&&h("div",{key:"ea2afbe59f7b249d3f4e9d9763ab402438e47008",class:"sd-table__pagination"},h("sd-pagination",{key:"a64223b9d2374142cbf12ec582e580f1b9f8f8dc",currentPage:this.useInternalPagination?this.currentPage:this.pagination.page,lastPage:this.useInternalPagination?this.lastPageNumber:this.pagination.lastPage,onSdPageChange:t=>this.changePage(t.detail)}),this.useRowsPerPageSelect&&h("sd-select-v2",{key:"597cd596ac0ce2752ab6fc792887ce447c863eb8",value:this.useInternalPagination?this.innerRowsPerPage:this.pagination.rowsPerPage,options:this.rowsPerPageOption,width:"128px",emitValue:!0,onSdUpdate:t=>{this.isRowsPerPageValue(t.detail)&&this.changeRowsPerPage(t.detail)}}))))}static get watchers(){return{isLoading:[{handleIsLoadingChange:0}],useVirtualScroll:[{handleUseVirtualScrollChange:0}],columns:[{handleColumnsChange:0}],rows:[{handleRowsChange:0}],tableId:[{handleTableIdChange:0}],noDataLabel:[{handleNoDataLabelChange:0}],selectable:[{handleConfigChange:0}],resizable:[{handleConfigChange:0}],stickyColumn:[{handleConfigChange:0}],stickyHeader:[{handleConfigChange:0}],selected:[{handleSelectedChange:0}],pagination:[{handlePaginationChange:0}]}}};d.style="sd-table,:host{display:block;width:100%;max-width:100%;min-width:0}sd-table *,:host *{box-sizing:border-box}.sd-table__container{height:var(--table-height, auto);width:var(--table-width, 100%);max-width:100%;min-width:0;color:#222222;display:flex;flex-direction:column}.sd-table__clip{width:100%;min-width:0;height:var(--table-container-height, 400px);border:1px solid #E1E1E1;border-radius:8px;overflow:hidden}.sd-table__clip--has-pagination{border-radius:8px 8px 0 0}.sd-table__wrapper{width:100%;height:100%;display:flex;flex-direction:column;position:relative;font-size:12px;overflow:auto;background:#FFFFFF}.sd-table__wrapper--loading{overflow:hidden !important;pointer-events:none}.sd-table__wrapper--no-data{overflow:hidden;pointer-events:none}.sd-table__no-data{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:#888888;pointer-events:none;z-index:200;background:rgba(255, 255, 255, 0.6)}.sd-table__loading{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(255, 255, 255, 0.6);z-index:200;display:flex;align-items:center;justify-content:center;pointer-events:none}.sd-table{background-color:white;display:table;width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.sd-table--selectable sd-thead,.sd-table--selectable sd-tbody{--selectable:true}.sd-table--sticky-header sd-thead thead{position:sticky;top:0;z-index:120}.sd-table--sticky-column sd-thead,.sd-table--sticky-column sd-tbody{--sticky-column:true}.sd-table--scrolled-left sd-thead,.sd-table--scrolled-left sd-tbody{--scrolled-left:true}.sd-table--scrolled-right sd-thead,.sd-table--scrolled-right sd-tbody{--scrolled-right:true}.sd-table--resizable sd-thead{--resizable:true}.sd-table--no-data sd-thead{opacity:0.4}.sd-table__pagination{position:relative;background:#F9F9F9;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid #E1E1E1;border-top:none;border-radius:0 0 8px 8px}.sd-table__pagination sd-select-v2{position:absolute;right:10px;top:50%;transform:translateY(-50%)}";export{d as sd_table}
1
+ import{r as t,c as e,a as s,d as i,h,H as a}from"./p-BGyJgVXm.js";import{T as n}from"./p-sZMi_32I.js";let l=(t=21)=>{let e="",s=crypto.getRandomValues(new Uint8Array(t|=0));for(;t--;)e+="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict"[63&s[t]];return e};const d=class{constructor(s){t(this,s),this.sdSelectChange=e(this,"sdSelectChange",7),this.sdPageChange=e(this,"sdPageChange",7),this.sdRowsPerPageChange=e(this,"sdRowsPerPageChange",7),this.sdVirtualUpdate=e(this,"sdVirtualUpdate",7),this.sdVirtualReachEnd=e(this,"sdVirtualReachEnd",7)}static DEFAULT_NO_DATA_LABEL="데이터가 없습니다.";get el(){return s(this)}tableId=l(8);fallbackTableId=l(8);columns=[];rows;selected=[];rowKey="id";selectable=!1;resizable=!1;width;height;stickyHeader=!1;stickyColumn={left:0,right:0};noDataLabel=d.DEFAULT_NO_DATA_LABEL;resolvedNoDataLabel=d.DEFAULT_NO_DATA_LABEL;isLoading=!1;pagination;useInternalPagination=!1;useRowsPerPageSelect=!1;useVirtualScroll=!1;rowHeight=40;virtualBuffer=5;virtualEndThreshold=10;rowsPerPageOption=[{label:"10개씩 보기",value:10},{label:"25개씩 보기",value:25},{label:"50개씩 보기",value:50},{label:"100개씩 보기",value:100}];sdSelectChange;sdPageChange;sdRowsPerPageChange;sdVirtualUpdate;sdVirtualReachEnd;currentPage=1;innerRowsPerPage=10;innerSelected=new Set;columnWidths=[];scrolledLeft=!1;scrolledRight=!1;rowCount=0;loadingScrollTop=0;vsStart=0;vsEnd=0;lastReachEndNotifiedRowCount=-1;scrollContainer=null;onScroll;toFiniteNumber(t,e){const s="number"==typeof t?t:Number(t);return Number.isFinite(s)?s:e}isRowsPerPageValue(t){return null===t||"string"==typeof t||"number"==typeof t}isValidTableId(t){return"string"==typeof t&&t.trim().length>0&&"undefined"!==t&&"null"!==t}getResolvedTableId(){if(this.isValidTableId(this.tableId))return this.tableId;const t=this.el?.getAttribute(n);return this.isValidTableId(t)?t:this.fallbackTableId}syncTableIdAttribute(){const t=this.getResolvedTableId();this.el?.getAttribute(n)!==t&&this.el.setAttribute(n,t)}handleIsLoadingChange(t){t&&(this.loadingScrollTop=this.scrollContainer?.scrollTop??0)}handleUseVirtualScrollChange(t){t&&i((()=>this.propagateVirtualUpdate()))}handleColumnsChange(t){this.columnWidths=t.map((t=>parseInt(t.width||"120",10))),this.refreshChildrenConfig()}handleRowsChange(t){Array.isArray(t)&&(this.rowCount=t.length,this.useVirtualScroll&&this.propagateVirtualUpdate(!0),this.pushRowsToChildren(t))}handleTableIdChange(){this.syncTableIdAttribute()}handleNoDataLabelChange(t){this.resolvedNoDataLabel="string"==typeof t&&t.trim().length>0&&"undefined"!==t&&"null"!==t?t:d.DEFAULT_NO_DATA_LABEL}handleConfigChange(){this.refreshChildrenConfig()}handleSelectedChange(t){this.innerSelected=new Set(t)}handlePaginationChange(t){t?.page&&t.page!==this.currentPage&&(this.currentPage=t.page),t?.rowsPerPage&&t.rowsPerPage!==this.innerRowsPerPage&&(this.innerRowsPerPage=t.rowsPerPage)}componentWillLoad(){this.syncTableIdAttribute(),this.handleNoDataLabelChange(this.noDataLabel),this.innerSelected=new Set(this.selected||[]),this.columnWidths=(this.columns||[]).map((t=>parseInt(t.width||"120",10))),this.pagination?.page&&(this.currentPage=this.pagination.page),this.pagination?.rowsPerPage&&(this.innerRowsPerPage=this.pagination.rowsPerPage);const t=this.el;t.isRowSelectedSync=this.isRowSelectedSync.bind(this),t.updateRowSelectSync=this.updateRowSelectSync.bind(this),t.toggleSelectAllSync=this.toggleSelectAllSync.bind(this),t.getIsAllCheckedSync=this.getIsAllCheckedSync.bind(this),t.getStickyStyleSync=this.getStickyStyleSync.bind(this),t.setRowCountSync=this.setRowCountSync.bind(this),t.handleResize=this.handleResize.bind(this),t.getPaginationInfoSync=this.getPaginationInfoSync.bind(this),t.getVirtualScrollRangeSync=this.getVirtualScrollRangeSync.bind(this),t.getConfigSync=this.getConfigSync.bind(this),t.getTableIdSync=()=>this.getResolvedTableId(),t.getVirtualScrollConfigSync=this.getVirtualScrollConfigSync.bind(this),t.calculateVisibleRange=this.calculateVisibleRange.bind(this),Array.isArray(this.rows)&&(this.rowCount=this.rows.length,this.pushRowsToChildren(this.rows))}componentDidLoad(){Array.isArray(this.rows)&&this.pushRowsToChildren(this.rows),i((()=>{const t=this.el.shadowRoot?.querySelector(".sd-table__wrapper");if(!t)return;let e=!1;this.onScroll=()=>{const s=t.scrollLeft,i=s>0,h=s+t.clientWidth<t.scrollWidth;this.scrolledLeft===i&&this.scrolledRight===h||(this.scrolledLeft=i,this.scrolledRight=h,this.refreshChildrenConfig()),this.useVirtualScroll&&!e&&(e=!0,requestAnimationFrame((()=>{e=!1,this.propagateVirtualUpdate()})))},this.scrollContainer=t,t.addEventListener("scroll",this.onScroll,{passive:!0}),this.onScroll(),this.useVirtualScroll&&this.propagateVirtualUpdate()}))}disconnectedCallback(){this.scrollContainer&&this.onScroll&&this.scrollContainer.removeEventListener("scroll",this.onScroll)}pushRowsToChildren(t){const e=this.el.querySelector("sd-tbody");e&&(e.rows=t);const s=this.el.querySelector("sd-thead");s&&(s.rows=t)}handleStructureSlotChange=()=>{Array.isArray(this.rows)&&this.pushRowsToChildren(this.rows),this.refreshChildrenConfig()};refreshChildrenSelection(){const t=this.el.querySelector("sd-thead"),e=this.el.querySelectorAll("sd-tr");t?.refreshSelection?.(),e.forEach((t=>t?.refreshSelection?.()))}refreshChildrenConfig(){const t=this.el.querySelector("sd-thead"),e=this.el.querySelectorAll("sd-tr");t?.refreshConfig?.(),e.forEach((t=>t?.refreshConfig?.()))}maybeEmitVirtualReachEnd(t,e){const s=Math.max(1,this.virtualEndThreshold);e>=Math.max(0,this.rowCount-s)&&this.lastReachEndNotifiedRowCount!==this.rowCount&&(this.lastReachEndNotifiedRowCount=this.rowCount,this.sdVirtualReachEnd.emit({from:t,to:e,rowCount:this.rowCount,threshold:s}))}propagateVirtualUpdate(t=!1){if(!this.scrollContainer||!this.useVirtualScroll)return;const e=this.toFiniteNumber(this.scrollContainer.scrollTop,0),s=this.toFiniteNumber(this.scrollContainer.clientHeight,0),{start:i,end:h}=this.calculateVisibleRange(e,s);if(!Number.isFinite(i)||!Number.isFinite(h))return;const a=this.vsStart!==i||this.vsEnd!==h;if(!a&&!t)return;this.vsStart=i,this.vsEnd=h;const n=i*this.rowHeight,l=Math.max(0,(this.rowCount-h)*this.rowHeight),d=this.el.querySelector("sd-tbody");d?.setSpacersSync?.(n,l),a&&this.sdVirtualUpdate.emit({from:i,to:h}),this.maybeEmitVirtualReachEnd(i,h)}getVirtualScrollConfigSync(){return{useVirtualScroll:this.useVirtualScroll,rowHeight:this.rowHeight,virtualBuffer:this.virtualBuffer,vsStart:this.vsStart,vsEnd:this.vsEnd,rowCount:this.rowCount}}getConfigSync(){return{columns:this.columns,selectable:this.selectable,resizable:this.resizable,stickyColumn:this.stickyColumn,stickyHeader:this.stickyHeader,scrolledLeft:this.scrolledLeft,scrolledRight:this.scrolledRight,columnWidths:this.columnWidths}}isRowSelectedSync(t){return Array.from(this.innerSelected).some((e=>e[this.rowKey]===t[this.rowKey]))}async isRowSelected(t){return this.isRowSelectedSync(t)}updateRowSelectSync(t){const e=Array.from(this.innerSelected),s=this.isRowSelectedSync(t)?e.filter((e=>e[this.rowKey]!==t[this.rowKey])):[...e,t];s.length!==e.length&&(this.innerSelected=new Set(s),this.selected=Array.from(this.innerSelected),this.sdSelectChange.emit(Array.from(this.innerSelected)),this.refreshChildrenSelection())}async updateRowSelect(t){this.updateRowSelectSync(t)}toggleSelectAllSync(t,e){if(t){const t=new Set([...e]);this.innerSelected=new Set([...this.innerSelected,...t])}else{const t=e.map((t=>t[this.rowKey]));this.innerSelected=new Set([...this.innerSelected].filter((e=>!t.includes(e[this.rowKey]))))}this.selected=Array.from(this.innerSelected),this.sdSelectChange.emit(Array.from(this.innerSelected)),this.refreshChildrenSelection()}async toggleSelectAll(t,e){this.toggleSelectAllSync(t,e)}getIsAllCheckedSync(t){const e=t.length,s=t.filter((t=>Array.from(this.innerSelected).some((e=>e[this.rowKey]===t[this.rowKey])))).length;return 0!==s&&(s===e||null)}async getIsAllChecked(t){return this.getIsAllCheckedSync(t)}changePage(t){this.useInternalPagination?(this.currentPage=t,this.sdPageChange.emit(this.currentPage),this.updateRowsVisibility()):this.sdPageChange.emit(t)}updateRowsVisibility(){this.el.querySelectorAll("sd-tr").forEach((t=>t?.updateVisibility?.()))}changeRowsPerPage(t){const e=t?Number(t):0;if(!this.useInternalPagination)return void this.sdRowsPerPageChange.emit(e);this.innerRowsPerPage=e;const s=Math.max(1,Math.ceil(this.rowCount/e));this.currentPage>s&&(this.currentPage=s),this.sdRowsPerPageChange.emit(e),this.updateRowsVisibility()}get lastPageNumber(){if(this.useInternalPagination)return Math.max(1,Math.ceil(this.rowCount/this.innerRowsPerPage));const{lastPage:t,rowsPerPage:e=10}=this.pagination||{};return t??Math.max(1,Math.ceil(this.rowCount/e))}handleResize(t,e,s=!1){if("undefined"==typeof document)return;const i=e.clientX,h=this.columnWidths[t],a=e=>{const a=this.columns[t];if(!a)return;const n=a.maxWidth||9999,l=e.clientX-i,d=Math.min(Math.max(h+(s?-l:l),a.minWidth||50),n);this.columnWidths=this.columnWidths.map(((e,s)=>s===t?d:e));const r=this.el.querySelector("sd-thead"),o=this.el.querySelectorAll("sd-tr");r?.setColumnWidths?.(this.columnWidths),o.forEach((t=>t?.setColumnWidths?.(this.columnWidths)));const c=this.stickyColumn?.right||0,b=this.columns.filter((t=>!1!==t.visible)).length;c>0&&t===b-c&&requestAnimationFrame((()=>{this.onScroll?.()}))},n=()=>{document.removeEventListener("mousemove",a),document.removeEventListener("mouseup",n)};document.addEventListener("mousemove",a),document.addEventListener("mouseup",n)}getStickyStyleSync(t){return{"--sticky-left-offset":`${this.columnWidths.slice(0,t).reduce(((t,e)=>t+e),this.selectable?52:0)}px`,"--sticky-right-offset":`${this.columnWidths.filter(((e,s)=>s>=this.columns.filter((t=>!1!==t.visible)).length-(this.stickyColumn?.right||0)&&s>t)).reduce(((t,e)=>t+e),0)}px`,width:`${this.columnWidths[t]}px`,minWidth:`${this.columnWidths[t]}px`,maxWidth:`${this.columnWidths[t]}px`}}async getStickyStyle(t){return this.getStickyStyleSync(t)}setRowCountSync(t){const e=Math.max(0,Math.floor(this.toFiniteNumber(t,0)));e!==this.rowCount&&(this.lastReachEndNotifiedRowCount=-1),this.rowCount=e,this.useVirtualScroll&&this.propagateVirtualUpdate(!0)}async setRowCount(t){this.setRowCountSync(t)}calculateVisibleRange(t,e){const s=Math.max(1,this.toFiniteNumber(this.rowHeight,40)),i=Math.max(0,Math.floor(this.toFiniteNumber(this.virtualBuffer,5))),h=Math.max(0,this.toFiniteNumber(t,0)),a=Math.max(0,this.toFiniteNumber(e,0)),n=Math.max(0,Math.floor(this.toFiniteNumber(this.rowCount,0))),l=Math.floor(h/s),d=Math.ceil(a/s);return{start:Math.max(0,l-i),end:Math.min(n,l+d+i)}}getPaginationInfoSync(){if(!this.useInternalPagination||!this.pagination)return null;const t=(this.currentPage-1)*this.innerRowsPerPage;return{startIndex:t,endIndex:t+this.innerRowsPerPage,currentPage:this.currentPage,rowsPerPage:this.innerRowsPerPage}}async getPaginationInfo(){return this.getPaginationInfoSync()}getVirtualScrollRangeSync(){return this.useVirtualScroll&&this.vsEnd>0?{from:this.vsStart,to:this.vsEnd}:null}get tableClasses(){return["sd-table",this.stickyHeader&&"sd-table--sticky-header",this.selectable&&"sd-table--selectable",this.resizable&&"sd-table--resizable",(this.selectable||(this.stickyColumn?.left??0)>0||(this.stickyColumn?.right??0)>0)&&"sd-table--sticky-column",this.scrolledLeft&&"sd-table--scrolled-left",this.scrolledRight&&"sd-table--scrolled-right",0===this.rowCount&&!this.isLoading&&"sd-table--no-data"].filter(Boolean).join(" ")}render(){const t=this.getResolvedTableId();return h(a,{key:"d2a43d075579bf4ffc53949fb074afaf9987113d"},h("div",{key:"3e6b69b3ab38281c1763ab779d66b0916b2cb295",class:"sd-table__container",style:{"--table-width":this.width,"--table-height":this.height,"--table-container-height":`calc(${this.height||"100%"} - ${this.pagination&&this.rowCount>0&&!this.useVirtualScroll?48:0}px)`}},h("div",{key:"60ac7f5d53cdfbb0225dd3ed57be4788e6b7ff2b",class:{"sd-table__clip":!0,"sd-table__clip--has-pagination":!(!(this.pagination&&this.pagination.rowsPerPage>0&&this.rowCount>0)||this.useVirtualScroll)}},h("div",{key:"ea4144995650e283bf62de067fe792e1b7d90eb1",class:{"sd-table__wrapper":!0,"sd-table__wrapper--loading":this.isLoading,"sd-table__wrapper--no-data":0===this.rowCount&&!this.isLoading}},this.isLoading&&h("div",{key:"36fd919bbf313d4d5a62d657223ce7e68bd7678d",class:"sd-table__loading",style:{top:`${this.loadingScrollTop}px`}},h("sd-circle-progress",{key:"5854fbf9090072e1caf5d4a497fe35403c4c8c21",indeterminate:!0})),0===this.rowCount&&!this.isLoading&&h("div",{key:"210bc0045bacd05d4134f96716f74c5893c494dd",class:"sd-table__no-data"},h("slot",{key:"a2aabac27057d00a6352230d23a9c776a99818b5",name:"no-data"},h("span",{key:"d030f9abc7bc3afd8cb70433513a8875ae3eecb2"},this.resolvedNoDataLabel))),h("table",{key:"731208435f8e018b74f2a0670e4c4f68f4c7fd58",class:this.tableClasses},h("slot",{key:"d12bbe4ed17e9c0d781c50c6b4161c7bddec3480",name:`${t}-head`,onSlotchange:this.handleStructureSlotChange}),h("slot",{key:"555d63d8f0ad56d49bcc09451b893e05cc7110cd",name:`${t}-body`,onSlotchange:this.handleStructureSlotChange})))),this.pagination&&this.pagination.rowsPerPage>0&&this.rowCount>0&&!this.useVirtualScroll&&h("div",{key:"83b1c554f574013c8a93707f99d4224c581d485c",class:"sd-table__pagination"},h("sd-pagination",{key:"425c036f79001e4d7f012dc528d2c2ecec25ed9b",currentPage:this.useInternalPagination?this.currentPage:this.pagination.page,lastPage:this.useInternalPagination?this.lastPageNumber:this.pagination.lastPage,onSdPageChange:t=>this.changePage(t.detail)}),this.useRowsPerPageSelect&&h("sd-select-v2",{key:"1c7c6ddacdd24cfa0cef627cd8ba06fe2466d415",value:this.useInternalPagination?this.innerRowsPerPage:this.pagination.rowsPerPage,options:this.rowsPerPageOption,width:"128px",emitValue:!0,onSdUpdate:t=>{this.isRowsPerPageValue(t.detail)&&this.changeRowsPerPage(t.detail)}}))))}static get watchers(){return{isLoading:[{handleIsLoadingChange:0}],useVirtualScroll:[{handleUseVirtualScrollChange:0}],columns:[{handleColumnsChange:0}],rows:[{handleRowsChange:0}],tableId:[{handleTableIdChange:0}],noDataLabel:[{handleNoDataLabelChange:0}],selectable:[{handleConfigChange:0}],resizable:[{handleConfigChange:0}],stickyColumn:[{handleConfigChange:0}],stickyHeader:[{handleConfigChange:0}],selected:[{handleSelectedChange:0}],pagination:[{handlePaginationChange:0}]}}};d.style="sd-table,:host{display:block;width:100%;max-width:100%;min-width:0}sd-table *,:host *{box-sizing:border-box}.sd-table__container{height:var(--table-height, auto);width:var(--table-width, 100%);max-width:100%;min-width:0;color:#222222;display:flex;flex-direction:column}.sd-table__clip{width:100%;min-width:0;height:var(--table-container-height, 400px);border:1px solid #E1E1E1;border-radius:8px;overflow:hidden}.sd-table__clip--has-pagination{border-radius:8px 8px 0 0}.sd-table__wrapper{width:100%;height:100%;display:flex;flex-direction:column;position:relative;font-size:12px;overflow:auto;background:#FFFFFF}.sd-table__wrapper--loading{overflow:hidden !important;pointer-events:none}.sd-table__wrapper--no-data{overflow:hidden;pointer-events:none}.sd-table__no-data{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:#888888;pointer-events:none;z-index:200;background:rgba(255, 255, 255, 0.6)}.sd-table__loading{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(255, 255, 255, 0.6);z-index:200;display:flex;align-items:center;justify-content:center;pointer-events:none}.sd-table{background-color:white;display:table;width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed}.sd-table--selectable sd-thead,.sd-table--selectable sd-tbody{--selectable:true}.sd-table--sticky-header sd-thead thead{position:sticky;top:0;z-index:120}.sd-table--sticky-column sd-thead,.sd-table--sticky-column sd-tbody{--sticky-column:true}.sd-table--scrolled-left sd-thead,.sd-table--scrolled-left sd-tbody{--scrolled-left:true}.sd-table--scrolled-right sd-thead,.sd-table--scrolled-right sd-tbody{--scrolled-right:true}.sd-table--resizable sd-thead{--resizable:true}.sd-table--no-data sd-thead{opacity:0.4}.sd-table__pagination{position:relative;background:#F9F9F9;height:48px;display:flex;align-items:center;justify-content:center;border:1px solid #E1E1E1;border-top:none;border-radius:0 0 8px 8px}.sd-table__pagination sd-select-v2{position:absolute;right:10px;top:50%;transform:translateY(-50%)}";export{d as sd_table}
@@ -1 +1 @@
1
- import{r as e,c as t,a as s,h as i,F as o}from"./p-Dcpqhs6V.js";import{n as r}from"./p-CCwNgVmC.js";import{B as n}from"./p-CRdYeSBK.js";import{S as l}from"./p-Cy6HMEsK.js";const h=class extends n{constructor(s){super(),e(this,s),this.update=t(this,"sdUpdate",7),this.dropDownShow=t(this,"sdDropDownShow",7)}get el(){return s(this)}value=null;options=[];placeholder="선택";optionPlaceholder="선택지가 없습니다.";width="200px";dropdownHeight="260px";autoFocus=!1;disabled=!1;clearable=!1;searchable=!1;label="";labelWidth="";addonLabel="";icon=void 0;labelTooltip="";labelTooltipProps=null;rules=[];error=!1;containerStyle={};triggerStyle={};dropdownStyle={};optionStyle={};labelStyle={};optionRenderer;filteredOptions=[];isOpen=!1;searchText=null;itemIndex=-1;isScrolled=!1;isDropdownReady=!1;update;dropDownShow;selectRef;searchRef;triggerRef;optionRef;dropdownRef;formField;dropDownWidth="200px";name=r();async sdOpen(){await new Promise((e=>setTimeout(e,0))),this.isOpen=!0}async sdValidate(){this.formField?.sdValidate()}async sdReset(){this.formField?.sdReset()}async sdResetValidate(){this.formField?.sdResetValidation()}async sdFocus(){this.formField?.sdFocus()}optionsChanged(){this.filteredOptions=this.options,this.filterOptions()}searchTextChanged(){this.filterOptions()}async itemIndexChanged(e,t){if(this.searchable){const e=await this.getNativeInputElement();if(-1===this.itemIndex)return void e?.focus({preventScroll:!0});e?.matches(":focus")&&e?.blur()}const s=Array.from(this.dropdownRef?.querySelectorAll("sd-select-option-group")||[]),i=s?.[this.itemIndex];i&&this.isOpen&&(this.optionRef=i,await this.optionRef.isDisabled()?e>t?this.itemIndex++:this.itemIndex--:this.scrollToOption(i))}async isOpenChanged(){this.onDropdownToggle(this.isOpen),this.dropDownShow?.emit({isOpen:this.isOpen}),this.isDropdownReady=!1,!1!==this.isOpen?requestAnimationFrame((()=>{requestAnimationFrame((async()=>{const e=this.getSelectedOption();if(e){const t=this.filteredOptions.indexOf(e),s=Array.from(this.dropdownRef?.querySelectorAll("sd-select-option-group")||[]),i=Math.min(t+4,s.length-1),o=s?.[i];o&&this.scrollToOption(o)}if(this.isDropdownReady=!0,this.searchable){const e=await this.getNativeInputElement();e&&requestAnimationFrame((()=>{e.focus({preventScroll:!0})}))}}))})):await(this.formField?.sdValidate())}componentWillLoad(){this.filteredOptions=this.options,this.dropDownWidth=this.width,this.initializeEvent()}componentDidLoad(){this.autoFocus&&this.selectRef?.focus()}componentDidRender(){const e=this.triggerRef,t=e?.getBoundingClientRect();this.dropDownWidth=t?.width?`${t.width}px`:this.width}disconnectedCallback(){this.cleanupEvent()}handleDocumentClick(e){this.selectRef?.contains(e.target)||(this.isOpen=!1)}handleDocumentKeydown(e){if(e.stopPropagation(),["ArrowDown","ArrowUp","Enter","Escape"].includes(e.key))switch(e.preventDefault(),e.key){case"ArrowDown":case"ArrowUp":const t=new l(this.searchable,this.filteredOptions).getNextIndex(this.itemIndex,e.key);this.itemIndex=t;break;case"Enter":const s=this.filteredOptions[this.itemIndex];s&&!s.disabled&&"item"===s.type&&this.handleOptionSelection(s);break;case"Escape":this.isOpen=!1}}handleTriggerClick=e=>{e.stopPropagation(),this.disabled||(this.isOpen=!this.isOpen,this.dropDownShow?.emit({isOpen:this.isOpen}))};handleOptionClick=e=>{const{option:t,event:s}=e;s.stopPropagation(),"item"===t.type&&this.handleOptionSelection(t)};filterOptions(){if(!this.searchText||""===this.searchText.trim())return void(this.filteredOptions=this.options);const e=this.searchText.toLowerCase(),t=new Set;this.options.forEach((s=>{s.label.toLowerCase().includes(e)&&(t.add(s),this.addParentGroups(s,t))})),this.filteredOptions=this.options.filter((e=>t.has(e)))}addParentGroups(e,t){if(!e.parent)return;const s=this.options.find((t=>t.value===e.parent));s&&!t.has(s)&&(t.add(s),this.addParentGroups(s,t))}getSelectedOption(){return this.options.find((e=>e.value===this.value))}handleDropdownScroll=e=>{this.isScrolled=e.target.scrollTop>0};async getNativeInputElement(){return this.searchRef?this.searchRef.sdGetNativeElement():null}handleOptionSelection=e=>{if(!e||e.disabled)return;this.value=e.value,this.isOpen=!1;const t=this.getSelectedOption();this.update?.emit({value:t?.value||null,option:t||null})};closeDropdown(){this.isOpen=!1}async scrollToOption(e){this.dropdownRef&&e&&requestAnimationFrame((()=>{const t=this.dropdownRef,s=e.offsetTop,i=e.offsetHeight,o=t.scrollTop,r=t.clientHeight,n=t.querySelector(".sd-select-group__search-container"),l=n?n.offsetHeight:0,h=r-l,d=o+r;s<o+l?t.scrollTo({top:s-l,behavior:"instant"}):s+i>d&&t.scrollTo({top:s+i-h-l,behavior:"instant"})}))}render(){return i("sd-field",{key:"1e6a0f9947f5d137bb65844fe666c07b4eefb2f7",label:this.label,labelWidth:this.labelWidth,name:this.name,rules:this.rules,error:this.error,disabled:this.disabled,icon:this.icon,addonLabel:this.addonLabel,labelTooltip:this.labelTooltip,labelTooltipProps:this.labelTooltipProps,ref:e=>this.formField=e,style:{"--field-width":this.width||"200px"}},i("div",{key:"62dcd2f37c2eda0e51f2e77de36ece6ab592c4ce",class:{"sd-select-group":!0,"sd-select-group--open":this.isOpen,"sd-select-group--disabled":this.disabled,"sd-select-group--label":!!this.label},ref:e=>this.selectRef=e},this.renderTrigger(),this.renderDropdown()))}renderTrigger(){const e=this.getSelectedOption();return i("div",{class:"sd-select-group__trigger",tabindex:this.disabled?-1:0,onClick:this.handleTriggerClick,style:this.triggerStyle,ref:e=>this.triggerRef=e},i("span",{class:"sd-select-group__value"},e?e.label:this.placeholder),this.clearable&&e&&!this.disabled&&i("sd-icon",{key:"close-icon",name:"close",size:10,color:"grey_65",class:"sd-select-group__clear",onClick:async e=>{e.stopPropagation(),this.value=null,this.update?.emit({value:null,option:null}),await(this.formField?.sdValidate())}}),i("sd-icon",{key:"arrow-icon",name:"arrowDown",color:"grey_65",class:{"sd-select-group__arrow":!0,"sd-select-group__arrow--open":this.isOpen}}))}renderDropdown(){return!1===this.isOpen?null:i("sd-portal",{open:this.isOpen,parentRef:this.selectRef,onSdClose:this.closeDropdown},i("div",{style:{width:"0",height:"0",overflow:"visible"}},i("div",{class:{"sd-select-group__dropdown":!0,"sd-select-group__dropdown--ready":this.isDropdownReady},style:{"--select-width":this.dropDownWidth||"200px","--select-dropdown-height":this.dropdownHeight||"260px",...this.dropdownStyle},onScroll:this.handleDropdownScroll,ref:e=>this.dropdownRef=e},this.searchable&&i("sd-select-search-input",{ref:e=>this.searchRef=e,isScrolled:this.isScrolled,searchText:this.searchText,onSdSearchInput:e=>this.searchText=e.detail||"",onSdSearchFocus:()=>this.itemIndex=-1}),this.filteredOptions.length>0?i(o,null,this.filteredOptions.map(((e,t)=>i("slot",{name:`option-${e.value}`},i("sd-select-option-group",{option:e,index:t,isSelected:"item"===e.type&&e.value===this.value,isFocused:t===this.itemIndex,optionStyle:this.optionStyle,onOptionClick:({detail:t})=>{"item"===e.type&&this.handleOptionClick(t)},useCheckbox:!1,useIndicator:!1}))))):i("slot",{name:"option-placeholder"},i("div",{class:"sd-select-group__option-placeholder",style:this.optionStyle},this.optionPlaceholder)))))}static get watchers(){return{options:[{optionsChanged:0}],searchText:[{searchTextChanged:0}],itemIndex:[{itemIndexChanged:0}],isOpen:[{isOpenChanged:0}]}}};h.style=".sd-select-group__dropdown .sd-select-group__option-placeholder{height:48px;display:flex;align-items:center;padding:8px 16px;font-size:12px;line-height:0;text-align:left;color:#888888}sd-select-group{display:inline-flex;flex-flow:column nowrap;width:fit-content;height:fit-content}sd-select-group:focus,sd-select-group:focus-visible,sd-select-group:focus-within{outline:none !important}sd-select-group .sd-select-group{width:100%}sd-select-group .sd-select-group .sd-select-group__trigger{padding:4px 28px 4px 12px;display:flex;width:100%;height:100%;align-items:center;cursor:pointer}.sd-field--disabled sd-select-group .sd-select-group .sd-select-group__trigger{cursor:not-allowed}sd-select-group .sd-select-group .sd-select-group__trigger .sd-select-group__value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:20px;font-size:12px;font-weight:400;text-align:left}sd-select-group .sd-select-group .sd-select-group__trigger .sd-select-group__clear{margin:0 4px;width:8px;height:8px;background-color:transparent;outline:none;border:none}sd-select-group .sd-select-group .sd-select-group__arrow{position:absolute;top:8px;right:8px;width:12px;height:12px;color:#888888;transition:transform 0.3s ease}sd-select-group .sd-select-group .sd-select-group__arrow--open{transform:rotate(180deg)}.sd-select-group__dropdown{overflow:auto;width:var(--select-width, 200px);max-height:var(--select-dropdown-height, 260px);padding-bottom:2px;background-color:white;box-shadow:2px 2px 12px 2px rgba(0, 0, 0, 0.1);border-radius:4px;overflow-y:auto;color:#333333;opacity:0.5;transition:opacity 0.15s ease-in}.sd-select-group__dropdown--ready{opacity:1}";export{h as sd_select_group}
1
+ import{r as t,c as e,a as s,h as i,F as o}from"./p-BGyJgVXm.js";import{n as r}from"./p-CCwNgVmC.js";import{B as n}from"./p-CRdYeSBK.js";import{S as l}from"./p-Cy6HMEsK.js";const h=class extends n{constructor(s){super(),t(this,s),this.update=e(this,"sdUpdate",7),this.dropDownShow=e(this,"sdDropDownShow",7)}get el(){return s(this)}value=null;options=[];placeholder="선택";optionPlaceholder="선택지가 없습니다.";width="200px";dropdownHeight="260px";autoFocus=!1;disabled=!1;clearable=!1;searchable=!1;label="";labelWidth="";addonLabel="";icon=void 0;labelTooltip="";labelTooltipProps=null;rules=[];error=!1;containerStyle={};triggerStyle={};dropdownStyle={};optionStyle={};labelStyle={};optionRenderer;filteredOptions=[];isOpen=!1;searchText=null;itemIndex=-1;isScrolled=!1;isDropdownReady=!1;update;dropDownShow;selectRef;searchRef;triggerRef;optionRef;dropdownRef;formField;dropDownWidth="200px";name=r();async sdOpen(){await new Promise((t=>setTimeout(t,0))),this.isOpen=!0}async sdValidate(){this.formField?.sdValidate()}async sdReset(){this.formField?.sdReset()}async sdResetValidate(){this.formField?.sdResetValidation()}async sdFocus(){this.formField?.sdFocus()}optionsChanged(){this.filteredOptions=this.options,this.filterOptions()}searchTextChanged(){this.filterOptions()}async itemIndexChanged(t,e){if(this.searchable){const t=await this.getNativeInputElement();if(-1===this.itemIndex)return void t?.focus({preventScroll:!0});t?.matches(":focus")&&t?.blur()}const s=Array.from(this.dropdownRef?.querySelectorAll("sd-select-option-group")||[]),i=s?.[this.itemIndex];i&&this.isOpen&&(this.optionRef=i,await this.optionRef.isDisabled()?t>e?this.itemIndex++:this.itemIndex--:this.scrollToOption(i))}async isOpenChanged(){this.onDropdownToggle(this.isOpen),this.dropDownShow?.emit({isOpen:this.isOpen}),this.isDropdownReady=!1,!1!==this.isOpen?requestAnimationFrame((()=>{requestAnimationFrame((async()=>{const t=this.getSelectedOption();if(t){const e=this.filteredOptions.indexOf(t),s=Array.from(this.dropdownRef?.querySelectorAll("sd-select-option-group")||[]),i=Math.min(e+4,s.length-1),o=s?.[i];o&&this.scrollToOption(o)}if(this.isDropdownReady=!0,this.searchable){const t=await this.getNativeInputElement();t&&requestAnimationFrame((()=>{t.focus({preventScroll:!0})}))}}))})):await(this.formField?.sdValidate())}componentWillLoad(){this.filteredOptions=this.options,this.dropDownWidth=this.width,this.initializeEvent()}componentDidLoad(){this.autoFocus&&this.selectRef?.focus()}componentDidRender(){const t=this.triggerRef,e=t?.getBoundingClientRect();this.dropDownWidth=e?.width?`${e.width}px`:this.width}disconnectedCallback(){this.cleanupEvent()}handleDocumentClick(t){this.selectRef?.contains(t.target)||(this.isOpen=!1)}handleDocumentKeydown(t){if(t.stopPropagation(),["ArrowDown","ArrowUp","Enter","Escape"].includes(t.key))switch(t.preventDefault(),t.key){case"ArrowDown":case"ArrowUp":const e=new l(this.searchable,this.filteredOptions).getNextIndex(this.itemIndex,t.key);this.itemIndex=e;break;case"Enter":const s=this.filteredOptions[this.itemIndex];s&&!s.disabled&&"item"===s.type&&this.handleOptionSelection(s);break;case"Escape":this.isOpen=!1}}handleTriggerClick=t=>{t.stopPropagation(),this.disabled||(this.isOpen=!this.isOpen,this.dropDownShow?.emit({isOpen:this.isOpen}))};handleOptionClick=t=>{const{option:e,event:s}=t;s.stopPropagation(),"item"===e.type&&this.handleOptionSelection(e)};filterOptions(){if(!this.searchText||""===this.searchText.trim())return void(this.filteredOptions=this.options);const t=this.searchText.toLowerCase(),e=new Set;this.options.forEach((s=>{s.label.toLowerCase().includes(t)&&(e.add(s),this.addParentGroups(s,e))})),this.filteredOptions=this.options.filter((t=>e.has(t)))}addParentGroups(t,e){if(!t.parent)return;const s=this.options.find((e=>e.value===t.parent));s&&!e.has(s)&&(e.add(s),this.addParentGroups(s,e))}getSelectedOption(){return this.options.find((t=>t.value===this.value))}handleDropdownScroll=t=>{this.isScrolled=t.target.scrollTop>0};async getNativeInputElement(){return this.searchRef?this.searchRef.sdGetNativeElement():null}handleOptionSelection=t=>{if(!t||t.disabled)return;this.value=t.value,this.isOpen=!1;const e=this.getSelectedOption();this.update?.emit({value:e?.value||null,option:e||null})};closeDropdown(){this.isOpen=!1}async scrollToOption(t){this.dropdownRef&&t&&requestAnimationFrame((()=>{const e=this.dropdownRef,s=t.offsetTop,i=t.offsetHeight,o=e.scrollTop,r=e.clientHeight,n=e.querySelector(".sd-select-group__search-container"),l=n?n.offsetHeight:0,h=r-l,d=o+r;s<o+l?e.scrollTo({top:s-l,behavior:"instant"}):s+i>d&&e.scrollTo({top:s+i-h-l,behavior:"instant"})}))}render(){return i("sd-field",{key:"c3d2a4365ba2594d3e0dca138ff63a335171125c",label:this.label,labelWidth:this.labelWidth,name:this.name,rules:this.rules,error:this.error,disabled:this.disabled,icon:this.icon,addonLabel:this.addonLabel,labelTooltip:this.labelTooltip,labelTooltipProps:this.labelTooltipProps,ref:t=>this.formField=t,style:{"--field-width":this.width||"200px"}},i("div",{key:"b527250fecc69b8f5d4c88aa3f6090c2b291efc9",class:{"sd-select-group":!0,"sd-select-group--open":this.isOpen,"sd-select-group--disabled":this.disabled,"sd-select-group--label":!!this.label},ref:t=>this.selectRef=t},this.renderTrigger(),this.renderDropdown()))}renderTrigger(){const t=this.getSelectedOption();return i("div",{class:"sd-select-group__trigger",tabindex:this.disabled?-1:0,onClick:this.handleTriggerClick,style:this.triggerStyle,ref:t=>this.triggerRef=t},i("span",{class:"sd-select-group__value"},t?t.label:this.placeholder),this.clearable&&t&&!this.disabled&&i("sd-icon",{key:"close-icon",name:"close",size:10,color:"grey_65",class:"sd-select-group__clear",onClick:async t=>{t.stopPropagation(),this.value=null,this.update?.emit({value:null,option:null}),await(this.formField?.sdValidate())}}),i("sd-icon",{key:"arrow-icon",name:"arrowDown",color:"grey_65",class:{"sd-select-group__arrow":!0,"sd-select-group__arrow--open":this.isOpen}}))}renderDropdown(){return!1===this.isOpen?null:i("sd-portal",{open:this.isOpen,parentRef:this.selectRef,onSdClose:this.closeDropdown},i("div",{style:{width:"0",height:"0",overflow:"visible"}},i("div",{class:{"sd-select-group__dropdown":!0,"sd-select-group__dropdown--ready":this.isDropdownReady},style:{"--select-width":this.dropDownWidth||"200px","--select-dropdown-height":this.dropdownHeight||"260px",...this.dropdownStyle},onScroll:this.handleDropdownScroll,ref:t=>this.dropdownRef=t},this.searchable&&i("sd-select-search-input",{ref:t=>this.searchRef=t,isScrolled:this.isScrolled,searchText:this.searchText,onSdSearchInput:t=>this.searchText=t.detail||"",onSdSearchFocus:()=>this.itemIndex=-1}),this.filteredOptions.length>0?i(o,null,this.filteredOptions.map(((t,e)=>i("slot",{name:`option-${t.value}`},i("sd-select-option-group",{option:t,index:e,isSelected:"item"===t.type&&t.value===this.value,isFocused:e===this.itemIndex,optionStyle:this.optionStyle,onOptionClick:({detail:e})=>{"item"===t.type&&this.handleOptionClick(e)},useCheckbox:!1,useIndicator:!1}))))):i("slot",{name:"option-placeholder"},i("div",{class:"sd-select-group__option-placeholder",style:this.optionStyle},this.optionPlaceholder)))))}static get watchers(){return{options:[{optionsChanged:0}],searchText:[{searchTextChanged:0}],itemIndex:[{itemIndexChanged:0}],isOpen:[{isOpenChanged:0}]}}};h.style=".sd-select-group__dropdown .sd-select-group__option-placeholder{height:48px;display:flex;align-items:center;padding:8px 16px;font-size:12px;line-height:0;text-align:left;color:#888888}sd-select-group{display:inline-flex;flex-flow:column nowrap;width:fit-content;height:fit-content}sd-select-group:focus,sd-select-group:focus-visible,sd-select-group:focus-within{outline:none !important}sd-select-group .sd-select-group{width:100%}sd-select-group .sd-select-group .sd-select-group__trigger{padding:4px 28px 4px 12px;display:flex;width:100%;height:100%;align-items:center;cursor:pointer}.sd-field--disabled sd-select-group .sd-select-group .sd-select-group__trigger{cursor:not-allowed}sd-select-group .sd-select-group .sd-select-group__trigger .sd-select-group__value{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:20px;font-size:12px;font-weight:400;text-align:left}sd-select-group .sd-select-group .sd-select-group__trigger .sd-select-group__clear{margin:0 4px;width:8px;height:8px;background-color:transparent;outline:none;border:none}sd-select-group .sd-select-group .sd-select-group__arrow{position:absolute;top:8px;right:8px;width:12px;height:12px;color:#888888;transition:transform 0.3s ease}sd-select-group .sd-select-group .sd-select-group__arrow--open{transform:rotate(180deg)}.sd-select-group__dropdown{overflow:auto;width:var(--select-width, 200px);max-height:var(--select-dropdown-height, 260px);padding-bottom:2px;background-color:white;box-shadow:2px 2px 12px 2px rgba(0, 0, 0, 0.1);border-radius:4px;overflow-y:auto;color:#333333;opacity:0.5;transition:opacity 0.15s ease-in}.sd-select-group__dropdown--ready{opacity:1}";export{h as sd_select_group}