@sellmate/design-system 1.12.0 → 1.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (258) hide show
  1. package/dist/cjs/design-system.cjs.js +2 -2
  2. package/dist/cjs/{index-erbAlKp-.js → index-Dq1M20nt.js} +1 -1
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/sd-action-modal.cjs.entry.js +1 -1
  5. package/dist/cjs/sd-badge.cjs.entry.js +1 -1
  6. package/dist/cjs/sd-barcode-input.cjs.entry.js +1 -1
  7. package/dist/cjs/sd-button_2.cjs.entry.js +1 -1
  8. package/dist/cjs/sd-calendar_2.cjs.entry.js +1 -1
  9. package/dist/cjs/sd-callout.cjs.entry.js +1 -1
  10. package/dist/cjs/sd-card.cjs.entry.js +1 -1
  11. package/dist/cjs/sd-checkbox.cjs.entry.js +1 -1
  12. package/dist/cjs/sd-chip-input.cjs.entry.js +1 -1
  13. package/dist/cjs/sd-chip.cjs.entry.js +1 -1
  14. package/dist/cjs/sd-circle-progress.cjs.entry.js +1 -1
  15. package/dist/cjs/sd-confirm-modal_2.cjs.entry.js +1 -1
  16. package/dist/cjs/sd-date-box.cjs.entry.js +1 -1
  17. package/dist/cjs/sd-date-picker_7.cjs.entry.js +1 -1
  18. package/dist/cjs/sd-date-range-picker-calendar.cjs.entry.js +1 -1
  19. package/dist/cjs/sd-divider.cjs.entry.js +1 -1
  20. package/dist/cjs/sd-dropdown-button.cjs.entry.js +1 -1
  21. package/dist/cjs/sd-field_3.cjs.entry.js +59 -25
  22. package/dist/cjs/sd-form.cjs.entry.js +1 -1
  23. package/dist/cjs/sd-ghost-button_2.cjs.entry.js +1 -1
  24. package/dist/cjs/sd-guide.cjs.entry.js +1 -1
  25. package/dist/cjs/sd-key-value-table.cjs.entry.js +1 -1
  26. package/dist/cjs/sd-linear-progress.cjs.entry.js +1 -1
  27. package/dist/cjs/sd-loading-container.cjs.entry.js +1 -1
  28. package/dist/cjs/sd-modal-container.cjs.entry.js +1 -1
  29. package/dist/cjs/sd-pagination_4.cjs.entry.js +1 -1
  30. package/dist/cjs/sd-popover.cjs.entry.js +2 -2
  31. package/dist/cjs/sd-popup.cjs.entry.js +1 -1
  32. package/dist/cjs/sd-portal.cjs.entry.js +1 -1
  33. package/dist/cjs/sd-radio-button.cjs.entry.js +1 -1
  34. package/dist/cjs/sd-radio.cjs.entry.js +1 -1
  35. package/dist/cjs/sd-select-list-item_2.cjs.entry.js +1 -1
  36. package/dist/cjs/sd-select_3.cjs.entry.js +1 -1
  37. package/dist/cjs/sd-switch.cjs.entry.js +9 -6
  38. package/dist/cjs/sd-table.cjs.entry.js +1 -1
  39. package/dist/cjs/sd-tabs.cjs.entry.js +1 -1
  40. package/dist/cjs/sd-td.cjs.entry.js +1 -1
  41. package/dist/cjs/sd-text-link.cjs.entry.js +90 -19
  42. package/dist/cjs/sd-toast-container.cjs.entry.js +1 -1
  43. package/dist/cjs/sd-toast.cjs.entry.js +1 -1
  44. package/dist/cjs/sd-toggle.cjs.entry.js +3 -3
  45. package/dist/cjs/{tooltipArrow-CYf_WBPN.js → tooltipArrow-CyyaX9aS.js} +1 -1
  46. package/dist/collection/components/sd-floating-portal/sd-floating-portal.js +14 -21
  47. package/dist/collection/components/sd-switch/sd-switch.config.js +2 -1
  48. package/dist/collection/components/sd-switch/sd-switch.css +4 -1
  49. package/dist/collection/components/sd-switch/sd-switch.js +3 -2
  50. package/dist/collection/components/sd-text-link/sd-text-link.config.js +27 -7
  51. package/dist/collection/components/sd-text-link/sd-text-link.css +1 -0
  52. package/dist/collection/components/sd-text-link/sd-text-link.js +39 -9
  53. package/dist/collection/components/sd-tooltip/sd-tooltip.js +101 -8
  54. package/dist/components/index.js +1 -1
  55. package/dist/components/p--bh6IQPe.js +1 -0
  56. package/dist/components/{p-Bcxg13aZ.js → p-0l2gvHgO.js} +1 -1
  57. package/dist/components/{p-DRoYx4ox.js → p-B7XLde30.js} +1 -1
  58. package/dist/components/{p-CoX_ozJQ.js → p-BAog7La9.js} +1 -1
  59. package/dist/components/{p-BoXTUvyq.js → p-BQbRKyE8.js} +1 -1
  60. package/dist/components/{p-D_oBtvP1.js → p-BZpxlRPV.js} +1 -1
  61. package/dist/components/{p-DtnoDxUp.js → p-C4G3m6i5.js} +1 -1
  62. package/dist/components/{p-DkySTF-9.js → p-C4GyQnYy.js} +1 -1
  63. package/dist/components/{p-TD8DiYYC.js → p-C9GSsqUl.js} +1 -1
  64. package/dist/components/{p-vS--1dHy.js → p-C9wBnyAK.js} +1 -1
  65. package/dist/components/{p-BklUnzX5.js → p-CPhGwtJN.js} +1 -1
  66. package/dist/components/{p-DG5mmAZR.js → p-CWRzU_jD.js} +1 -1
  67. package/dist/components/{p-CMVIH_LA.js → p-CZCejvvs.js} +1 -1
  68. package/dist/components/p-CbLmNzyI.js +1 -0
  69. package/dist/components/{p-C_3H0ef6.js → p-CbOjEMF1.js} +1 -1
  70. package/dist/components/{p-DUaqwhdO.js → p-ChzjfCHr.js} +1 -1
  71. package/dist/components/{p-zV0que9W.js → p-ClFi24KR.js} +1 -1
  72. package/dist/components/{p-Dt8isS3r.js → p-Cps2roN-.js} +1 -1
  73. package/dist/components/{p-DcDe1yhx.js → p-D-MF-Gqr.js} +1 -1
  74. package/dist/components/{p-BdmCYhiG.js → p-D7c1Foln.js} +1 -1
  75. package/dist/components/{p-D9fTZjTl.js → p-DCcIwD65.js} +1 -1
  76. package/dist/components/{p-CcyPWdvG.js → p-DOnvzHnl.js} +1 -1
  77. package/dist/components/{p-Bc81OXqj.js → p-DPJTWFX1.js} +1 -1
  78. package/dist/components/p-DQaizq5F.js +1 -0
  79. package/dist/components/{p-CZP1wFmE.js → p-DU-bmyYI.js} +1 -1
  80. package/dist/components/{p-KENiwV56.js → p-DiYM7tLY.js} +1 -1
  81. package/dist/components/p-DmqY8RSd.js +1 -0
  82. package/dist/components/{p-BzMV13Xr.js → p-Dn3GoMRV.js} +1 -1
  83. package/dist/components/{p-CBGAiS8T.js → p-DoPR7KRG.js} +1 -1
  84. package/dist/components/{p-DetgSxJr.js → p-Dp51AYN2.js} +1 -1
  85. package/dist/components/{p-CimFMM4i.js → p-DsUXQTxl.js} +1 -1
  86. package/dist/components/p-DwkU96A1.js +1 -0
  87. package/dist/components/{p-C-0-0BCQ.js → p-Jp2HXSTL.js} +1 -1
  88. package/dist/components/{p-CuuPUA52.js → p-bFbGmGpk.js} +1 -1
  89. package/dist/components/{p-ChMGPj-k.js → p-bHTV5pau.js} +1 -1
  90. package/dist/components/{p-C9pDOVrU.js → p-jGNVdj6x.js} +1 -1
  91. package/dist/components/{p-CYJoJT1r.js → p-kZQacVZK.js} +1 -1
  92. package/dist/components/sd-action-modal.js +1 -1
  93. package/dist/components/sd-badge.js +1 -1
  94. package/dist/components/sd-barcode-input.js +1 -1
  95. package/dist/components/sd-button.js +1 -1
  96. package/dist/components/sd-calendar.js +1 -1
  97. package/dist/components/sd-callout.js +1 -1
  98. package/dist/components/sd-card.js +1 -1
  99. package/dist/components/sd-checkbox.js +1 -1
  100. package/dist/components/sd-chip-input.js +1 -1
  101. package/dist/components/sd-chip.js +1 -1
  102. package/dist/components/sd-circle-progress.js +1 -1
  103. package/dist/components/sd-confirm-modal.js +1 -1
  104. package/dist/components/sd-date-box.js +1 -1
  105. package/dist/components/sd-date-picker-trigger.js +1 -1
  106. package/dist/components/sd-date-picker.js +1 -1
  107. package/dist/components/sd-date-range-picker-calendar.js +1 -1
  108. package/dist/components/sd-date-range-picker.js +1 -1
  109. package/dist/components/sd-divider.js +1 -1
  110. package/dist/components/sd-dropdown-button.js +1 -1
  111. package/dist/components/sd-field.js +1 -1
  112. package/dist/components/sd-file-picker.js +1 -1
  113. package/dist/components/sd-floating-portal.js +1 -1
  114. package/dist/components/sd-form.js +1 -1
  115. package/dist/components/sd-ghost-button.js +1 -1
  116. package/dist/components/sd-guide.js +1 -1
  117. package/dist/components/sd-icon.js +1 -1
  118. package/dist/components/sd-input.js +1 -1
  119. package/dist/components/sd-key-value-table.js +1 -1
  120. package/dist/components/sd-linear-progress.js +1 -1
  121. package/dist/components/sd-loading-container.js +1 -1
  122. package/dist/components/sd-loading-modal.js +1 -1
  123. package/dist/components/sd-modal-container.js +1 -1
  124. package/dist/components/sd-number-input.js +1 -1
  125. package/dist/components/sd-pagination.js +1 -1
  126. package/dist/components/sd-popover.js +1 -1
  127. package/dist/components/sd-popup.js +1 -1
  128. package/dist/components/sd-portal.js +1 -1
  129. package/dist/components/sd-radio-button.js +1 -1
  130. package/dist/components/sd-radio-group.js +1 -1
  131. package/dist/components/sd-radio.js +1 -1
  132. package/dist/components/sd-select-list-item-search.js +1 -1
  133. package/dist/components/sd-select-list-item.js +1 -1
  134. package/dist/components/sd-select-listbox.js +1 -1
  135. package/dist/components/sd-select-trigger.js +1 -1
  136. package/dist/components/sd-select.js +1 -1
  137. package/dist/components/sd-switch.js +1 -1
  138. package/dist/components/sd-table.js +1 -1
  139. package/dist/components/sd-tabs.js +1 -1
  140. package/dist/components/sd-tag.js +1 -1
  141. package/dist/components/sd-tbody.js +1 -1
  142. package/dist/components/sd-td.js +1 -1
  143. package/dist/components/sd-text-link.js +1 -1
  144. package/dist/components/sd-textarea.js +1 -1
  145. package/dist/components/sd-thead.js +1 -1
  146. package/dist/components/sd-toast-container.js +1 -1
  147. package/dist/components/sd-toast.js +1 -1
  148. package/dist/components/sd-toggle.js +1 -1
  149. package/dist/components/sd-tooltip.js +1 -1
  150. package/dist/components/sd-tr.js +1 -1
  151. package/dist/design-system/design-system.css +1 -1
  152. package/dist/design-system/design-system.esm.js +1 -1
  153. package/dist/design-system/p-02a61803.entry.js +1 -0
  154. package/dist/design-system/{p-acf7099e.entry.js → p-0ba848cc.entry.js} +1 -1
  155. package/dist/design-system/{p-973eed65.entry.js → p-0c8410c0.entry.js} +1 -1
  156. package/dist/design-system/{p-cf301438.entry.js → p-0d23059e.entry.js} +1 -1
  157. package/dist/design-system/{p-9470e031.entry.js → p-0e5f3458.entry.js} +1 -1
  158. package/dist/design-system/{p-099b1fa6.entry.js → p-0efea9e0.entry.js} +1 -1
  159. package/dist/design-system/{p-308abc0e.entry.js → p-15f27fc6.entry.js} +1 -1
  160. package/dist/design-system/{p-e53d6089.entry.js → p-17c360bf.entry.js} +1 -1
  161. package/dist/design-system/{p-f66f4eee.entry.js → p-21201d3b.entry.js} +1 -1
  162. package/dist/design-system/{p-f46d4199.entry.js → p-3087b3ee.entry.js} +1 -1
  163. package/dist/design-system/{p-43d36198.entry.js → p-33f7d238.entry.js} +1 -1
  164. package/dist/design-system/{p-f22590e4.entry.js → p-348af170.entry.js} +1 -1
  165. package/dist/design-system/{p-9c658fdd.entry.js → p-3e196f92.entry.js} +1 -1
  166. package/dist/design-system/{p-90997ca5.entry.js → p-3f2b2799.entry.js} +1 -1
  167. package/dist/design-system/{p-3148fdbb.entry.js → p-453efe4b.entry.js} +1 -1
  168. package/dist/design-system/{p-6785b122.entry.js → p-45c9950f.entry.js} +1 -1
  169. package/dist/design-system/{p-63d49ccb.entry.js → p-4794ec4d.entry.js} +1 -1
  170. package/dist/design-system/{p-01ee066e.entry.js → p-584295c2.entry.js} +1 -1
  171. package/dist/design-system/{p-845b95cc.entry.js → p-63dd2424.entry.js} +1 -1
  172. package/dist/design-system/{p-7b3fec0d.entry.js → p-74b6e8e2.entry.js} +1 -1
  173. package/dist/design-system/{p-c148947c.entry.js → p-79ebd90b.entry.js} +1 -1
  174. package/dist/design-system/{p-88f8fa16.entry.js → p-7b37f397.entry.js} +1 -1
  175. package/dist/design-system/{p-b33b18c7.entry.js → p-89031ce0.entry.js} +1 -1
  176. package/dist/design-system/p-9aafb387.entry.js +1 -0
  177. package/dist/design-system/{p-DDgZHadT.js → p-DBOI5K7c.js} +1 -1
  178. package/dist/design-system/p-JGOJoT-i.js +2 -0
  179. package/dist/design-system/{p-29d72776.entry.js → p-a2c3041a.entry.js} +1 -1
  180. package/dist/design-system/{p-56c6c243.entry.js → p-aa583377.entry.js} +1 -1
  181. package/dist/design-system/p-ab3656cb.entry.js +1 -0
  182. package/dist/design-system/{p-7ae98de4.entry.js → p-b86b8a69.entry.js} +1 -1
  183. package/dist/design-system/{p-929ba1b6.entry.js → p-bc1a812b.entry.js} +1 -1
  184. package/dist/design-system/{p-3c4396bf.entry.js → p-bfd4216b.entry.js} +1 -1
  185. package/dist/design-system/{p-c068f61a.entry.js → p-c8f1e14e.entry.js} +1 -1
  186. package/dist/design-system/{p-c4ebb7d1.entry.js → p-d58ec388.entry.js} +1 -1
  187. package/dist/design-system/{p-548b799f.entry.js → p-d6672552.entry.js} +1 -1
  188. package/dist/design-system/{p-67a3f9ca.entry.js → p-d704ff76.entry.js} +1 -1
  189. package/dist/design-system/{p-e0ea08ba.entry.js → p-de9f768b.entry.js} +1 -1
  190. package/dist/design-system/{p-d3fc5510.entry.js → p-e67214be.entry.js} +1 -1
  191. package/dist/design-system/{p-b06e4b77.entry.js → p-eb4c9901.entry.js} +1 -1
  192. package/dist/design-system/{p-5ea98503.entry.js → p-eb83aa2f.entry.js} +1 -1
  193. package/dist/design-system/{p-b5252a07.entry.js → p-ef191467.entry.js} +1 -1
  194. package/dist/design-system/{p-1a06b680.entry.js → p-f0c85e94.entry.js} +1 -1
  195. package/dist/design-system/{p-69c41f34.entry.js → p-fbcf3beb.entry.js} +1 -1
  196. package/dist/esm/design-system.js +3 -3
  197. package/dist/esm/{index-D3yCWQNg.js → index-JGOJoT-i.js} +1 -1
  198. package/dist/esm/loader.js +3 -3
  199. package/dist/esm/sd-action-modal.entry.js +1 -1
  200. package/dist/esm/sd-badge.entry.js +1 -1
  201. package/dist/esm/sd-barcode-input.entry.js +1 -1
  202. package/dist/esm/sd-button_2.entry.js +1 -1
  203. package/dist/esm/sd-calendar_2.entry.js +1 -1
  204. package/dist/esm/sd-callout.entry.js +1 -1
  205. package/dist/esm/sd-card.entry.js +1 -1
  206. package/dist/esm/sd-checkbox.entry.js +1 -1
  207. package/dist/esm/sd-chip-input.entry.js +1 -1
  208. package/dist/esm/sd-chip.entry.js +1 -1
  209. package/dist/esm/sd-circle-progress.entry.js +1 -1
  210. package/dist/esm/sd-confirm-modal_2.entry.js +1 -1
  211. package/dist/esm/sd-date-box.entry.js +1 -1
  212. package/dist/esm/sd-date-picker_7.entry.js +1 -1
  213. package/dist/esm/sd-date-range-picker-calendar.entry.js +1 -1
  214. package/dist/esm/sd-divider.entry.js +1 -1
  215. package/dist/esm/sd-dropdown-button.entry.js +1 -1
  216. package/dist/esm/sd-field_3.entry.js +59 -25
  217. package/dist/esm/sd-form.entry.js +1 -1
  218. package/dist/esm/sd-ghost-button_2.entry.js +1 -1
  219. package/dist/esm/sd-guide.entry.js +1 -1
  220. package/dist/esm/sd-key-value-table.entry.js +1 -1
  221. package/dist/esm/sd-linear-progress.entry.js +1 -1
  222. package/dist/esm/sd-loading-container.entry.js +1 -1
  223. package/dist/esm/sd-modal-container.entry.js +1 -1
  224. package/dist/esm/sd-pagination_4.entry.js +1 -1
  225. package/dist/esm/sd-popover.entry.js +2 -2
  226. package/dist/esm/sd-popup.entry.js +1 -1
  227. package/dist/esm/sd-portal.entry.js +1 -1
  228. package/dist/esm/sd-radio-button.entry.js +1 -1
  229. package/dist/esm/sd-radio.entry.js +1 -1
  230. package/dist/esm/sd-select-list-item_2.entry.js +1 -1
  231. package/dist/esm/sd-select_3.entry.js +1 -1
  232. package/dist/esm/sd-switch.entry.js +9 -6
  233. package/dist/esm/sd-table.entry.js +1 -1
  234. package/dist/esm/sd-tabs.entry.js +1 -1
  235. package/dist/esm/sd-td.entry.js +1 -1
  236. package/dist/esm/sd-text-link.entry.js +90 -19
  237. package/dist/esm/sd-toast-container.entry.js +1 -1
  238. package/dist/esm/sd-toast.entry.js +1 -1
  239. package/dist/esm/sd-toggle.entry.js +3 -3
  240. package/dist/esm/{tooltipArrow-CUCfrch1.js → tooltipArrow-jis_5jgG.js} +1 -1
  241. package/dist/types/components/sd-floating-portal/sd-floating-portal.d.ts +1 -0
  242. package/dist/types/components/sd-switch/sd-switch.config.d.ts +2 -1
  243. package/dist/types/components/sd-text-link/sd-text-link.config.d.ts +10 -18
  244. package/dist/types/components/sd-text-link/sd-text-link.d.ts +2 -0
  245. package/dist/types/components/sd-tooltip/sd-tooltip.d.ts +12 -0
  246. package/dist/types/components.d.ts +43 -0
  247. package/hydrate/index.js +165 -53
  248. package/hydrate/index.mjs +165 -53
  249. package/package.json +1 -1
  250. package/dist/components/p-B0Aqa3rl.js +0 -1
  251. package/dist/components/p-BFjxNqDj.js +0 -1
  252. package/dist/components/p-BMkeoWD7.js +0 -1
  253. package/dist/components/p-DK5GPWo_.js +0 -1
  254. package/dist/components/p-DRFcrZ_2.js +0 -1
  255. package/dist/design-system/p-7f0e8752.entry.js +0 -1
  256. package/dist/design-system/p-D3yCWQNg.js +0 -2
  257. package/dist/design-system/p-dad44248.entry.js +0 -1
  258. package/dist/design-system/p-febd7c47.entry.js +0 -1
@@ -1 +1 @@
1
- import{r as t,a as s,h as i}from"./p-D3yCWQNg.js";import{u as a,r as e,s as o,i as n,a as d}from"./p-DRVnqiWc.js";let l=0;const r=class{constructor(s){t(this,s)}get el(){return s(this)}autoRemove=!1;entries=[];layerRefs=new Map;async open(t,s){const i="modal-"+ ++l,a=this.createConfirmModal(i,t);return this.attachModalEventListeners(i,a),this.mountEntry({id:i,modalEl:a,modalRef:s,persistent:!!t.persistent,closing:!1,backdropVisible:!1}),i}async openLoading(t,s){const i="modal-"+ ++l,a=this.createLoadingModal(i,t);return this.attachLoadingModalEventListeners(i,a),this.mountEntry({id:i,modalEl:a,modalRef:s,persistent:!!t.persistent,closing:!1,backdropVisible:!1}),i}async createCustom(t,s,i){const a="modal-"+ ++l;return t.setAttribute("data-modal-id",a),t.classList.add("sd-modal-container__modal"),this.attachModalEventListeners(a,t),this.mountEntry({id:a,modalEl:t,modalRef:i,persistent:!!s.persistent,closing:!1,backdropVisible:!1}),a}componentDidRender(){if(Array.isArray(this.entries))for(const t of this.entries){if(t.closing||t.modalEl.isConnected)continue;const s=this.layerRefs.get(t.id);if(!s)continue;const{id:i,modalEl:a}=t;s.appendChild(a),this.waitForModalReady(a).then((()=>{requestAnimationFrame((()=>{const t=this.entries.find((t=>t.id===i));t&&!t.closing&&a.isConnected&&(this.entries=this.entries.map((t=>t.id===i?{...t,backdropVisible:!0}:t)),a.classList.add("sd-modal-container__modal--visible"))}))}))}}disconnectedCallback(){for(const t of this.entries??[])t.dismissTimerId&&clearTimeout(t.dismissTimerId),a(t.id)}async dismissById(t,s){this.entries.find((s=>s.id===t))&&this.requestDismiss(t,s)}async update(t,s){const i=this.entries.find((s=>s.id===t&&!s.closing));i&&("sd-loading-modal"!==i.modalEl.tagName.toLowerCase()?this.applyProps(i.modalEl,s):this.applyLoadingProps(i.modalEl,s))}mountEntry(t){this.entries=[...this.entries??[],t],e({id:t.id,persistent:t.persistent,requestClose:()=>this.dispatchClose(t.id),shake:()=>this.shakeModal(t.modalEl),setZIndex:t=>{this.el.style.setProperty("--sd-modal-container-z-index",String(t))}})}attachModalEventListeners(t,s){s.addEventListener("sdOk",(()=>this.requestDismiss(t,"confirm"))),s.addEventListener("sdCancel",(()=>this.requestDismiss(t,"cancel"))),s.addEventListener("sdClose",(()=>this.requestDismiss(t,"close")))}attachLoadingModalEventListeners(t,s){s.addEventListener("sdClick",(()=>{const s=this.entries.find((s=>s.id===t));s?.modalRef._triggerClick?.()}))}dispatchClose(t){const s=this.entries.find((s=>s.id===t));s?.modalEl.dispatchEvent(new CustomEvent("sdClose"))}requestDismiss(t,s){const i=this.entries.find((s=>s.id===t));if(!i||i.closing)return;i.modalEl.classList.remove("sd-modal-container__modal--visible");const a=setTimeout((()=>{this.finalizeDismiss(t)}),350);o(t,!1),this.entries=(this.entries??[]).map((s=>s.id===t?{...s,closing:!0,dismissTimerId:a,backdropVisible:!1}:s)),"confirm"===s?i.modalRef._triggerOk():"cancel"===s?i.modalRef._triggerCancel():"close"===s&&i.modalRef._triggerClose()}finalizeDismiss(t){const s=this.entries.find((s=>s.id===t));s&&(s.dismissTimerId&&clearTimeout(s.dismissTimerId),s.modalEl.remove(),a(t),s.modalRef._triggerDismissed(),this.layerRefs.delete(t),this.entries=(this.entries??[]).filter((s=>s.id!==t)),this.autoRemove&&0===this.entries.length&&this.el.remove())}createConfirmModal(t,s){const i=document.createElement("sd-confirm-modal");return i.setAttribute("data-modal-id",t),i.classList.add("sd-modal-container__modal"),this.applyProps(i,s),i}createLoadingModal(t,s){const i=document.createElement("sd-loading-modal");return i.setAttribute("data-modal-id",t),i.classList.add("sd-modal-container__modal"),this.applyLoadingProps(i,s),i}applyLoadingProps(t,s){this.hasOwnProp(s,"state")&&this.setAttr(t,"state",s.state),this.hasOwnProp(s,"message")&&(Array.isArray(s.message)?t.message=s.message:this.setAttr(t,"message",s.message)),this.hasOwnProp(s,"useButton")&&(s.useButton?t.setAttribute("use-button",""):t.removeAttribute("use-button")),this.hasOwnProp(s,"buttonLabel")&&this.setAttr(t,"button-label",s.buttonLabel),this.hasOwnProp(s,"width")&&this.setAttr(t,"width",null!=s.width?String(s.width):void 0),this.hasOwnProp(s,"height")&&this.setAttr(t,"height",null!=s.height?String(s.height):void 0),this.hasOwnProp(s,"progress")&&(t.progress=s.progress)}applyProps(t,s){this.hasOwnProp(s,"type")&&this.setAttr(t,"type",s.type),this.hasOwnProp(s,"title")&&this.setAttr(t,"modal-title",s.title),this.hasOwnProp(s,"titleClass")&&this.setAttr(t,"title-class",s.titleClass),this.hasOwnProp(s,"mainButtonLabel")&&this.setAttr(t,"main-button-label",s.mainButtonLabel),this.hasOwnProp(s,"mainButtonName")&&this.setAttr(t,"main-button-name",s.mainButtonName),this.hasOwnProp(s,"subButtonLabel")&&this.setAttr(t,"sub-button-label",s.subButtonLabel),this.hasOwnProp(s,"tagPreset")&&this.setAttr(t,"tag-preset",s.tagPreset),this.hasOwnProp(s,"tagLabel")&&this.setAttr(t,"tag-label",s.tagLabel),this.hasOwnProp(s,"slotLabel")&&this.setAttr(t,"slot-label",s.slotLabel),this.hasOwnProp(s,"topMessage")&&(t.topMessage=s.topMessage??[]),this.hasOwnProp(s,"bottomMessage")&&(t.bottomMessage=s.bottomMessage??[]),this.hasOwnProp(s,"tagContents")&&(t.tagContents=s.tagContents)}handleBackdropClick(t){n(t)&&d(t)}shakeModal(t){const s="sd-modal-container__modal--shake";t.classList.remove(s),t.addEventListener("animationend",(()=>t.classList.remove(s)),{once:!0}),requestAnimationFrame((()=>{t.classList.add(s)}))}waitForModalReady(t){const s=t.componentOnReady;return"function"==typeof s?s.call(t).then((()=>{})):new Promise((t=>{requestAnimationFrame((()=>{requestAnimationFrame((()=>t()))}))}))}hasOwnProp(t,s){return Object.prototype.hasOwnProperty.call(t,s)}setAttr(t,s,i){null!=i&&t.setAttribute(s,i)}render(){return 0===(this.entries?.length??0)?null:i("div",{class:"sd-modal-container"},this.entries.map(((t,s)=>i("div",{key:t.id,class:"sd-modal-container__layer",style:{zIndex:String(s+1)},"data-modal-id":t.id,ref:s=>{s&&this.layerRefs.set(t.id,s)}},i("div",{class:{"sd-modal-container__backdrop":!0,"sd-modal-container__backdrop--visible":t.backdropVisible},onClick:()=>this.handleBackdropClick(t.id)})))))}};r.style="sd-modal-container{display:block}sd-modal-container .sd-modal-container{position:fixed;inset:0;z-index:var(--sd-modal-container-z-index, 997);pointer-events:none}sd-modal-container .sd-modal-container__layer{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}sd-modal-container .sd-modal-container__backdrop{position:absolute;inset:0;background:rgba(0, 0, 0, 0.4);opacity:0;transition:opacity 0.3s ease-out;pointer-events:none}sd-modal-container .sd-modal-container__backdrop--visible{opacity:1;pointer-events:auto}sd-modal-container .sd-modal-container__modal{position:relative;z-index:1;opacity:0;transform:scale(0);pointer-events:auto;transition:opacity 0.3s ease-out, transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1)}sd-modal-container .sd-modal-container__modal--visible{opacity:1;transform:scale(1)}sd-modal-container .sd-modal-container__modal--shake{animation:modal-shake 0.3s ease-out}@keyframes modal-shake{0%,100%{transform:scale(1)}25%{transform:scale(1.03)}50%{transform:scale(0.97)}75%{transform:scale(1.01)}}";export{r as sd_modal_container}
1
+ import{r as t,a as s,h as i}from"./p-JGOJoT-i.js";import{u as a,r as e,s as o,i as n,a as d}from"./p-DRVnqiWc.js";let l=0;const r=class{constructor(s){t(this,s)}get el(){return s(this)}autoRemove=!1;entries=[];layerRefs=new Map;async open(t,s){const i="modal-"+ ++l,a=this.createConfirmModal(i,t);return this.attachModalEventListeners(i,a),this.mountEntry({id:i,modalEl:a,modalRef:s,persistent:!!t.persistent,closing:!1,backdropVisible:!1}),i}async openLoading(t,s){const i="modal-"+ ++l,a=this.createLoadingModal(i,t);return this.attachLoadingModalEventListeners(i,a),this.mountEntry({id:i,modalEl:a,modalRef:s,persistent:!!t.persistent,closing:!1,backdropVisible:!1}),i}async createCustom(t,s,i){const a="modal-"+ ++l;return t.setAttribute("data-modal-id",a),t.classList.add("sd-modal-container__modal"),this.attachModalEventListeners(a,t),this.mountEntry({id:a,modalEl:t,modalRef:i,persistent:!!s.persistent,closing:!1,backdropVisible:!1}),a}componentDidRender(){if(Array.isArray(this.entries))for(const t of this.entries){if(t.closing||t.modalEl.isConnected)continue;const s=this.layerRefs.get(t.id);if(!s)continue;const{id:i,modalEl:a}=t;s.appendChild(a),this.waitForModalReady(a).then((()=>{requestAnimationFrame((()=>{const t=this.entries.find((t=>t.id===i));t&&!t.closing&&a.isConnected&&(this.entries=this.entries.map((t=>t.id===i?{...t,backdropVisible:!0}:t)),a.classList.add("sd-modal-container__modal--visible"))}))}))}}disconnectedCallback(){for(const t of this.entries??[])t.dismissTimerId&&clearTimeout(t.dismissTimerId),a(t.id)}async dismissById(t,s){this.entries.find((s=>s.id===t))&&this.requestDismiss(t,s)}async update(t,s){const i=this.entries.find((s=>s.id===t&&!s.closing));i&&("sd-loading-modal"!==i.modalEl.tagName.toLowerCase()?this.applyProps(i.modalEl,s):this.applyLoadingProps(i.modalEl,s))}mountEntry(t){this.entries=[...this.entries??[],t],e({id:t.id,persistent:t.persistent,requestClose:()=>this.dispatchClose(t.id),shake:()=>this.shakeModal(t.modalEl),setZIndex:t=>{this.el.style.setProperty("--sd-modal-container-z-index",String(t))}})}attachModalEventListeners(t,s){s.addEventListener("sdOk",(()=>this.requestDismiss(t,"confirm"))),s.addEventListener("sdCancel",(()=>this.requestDismiss(t,"cancel"))),s.addEventListener("sdClose",(()=>this.requestDismiss(t,"close")))}attachLoadingModalEventListeners(t,s){s.addEventListener("sdClick",(()=>{const s=this.entries.find((s=>s.id===t));s?.modalRef._triggerClick?.()}))}dispatchClose(t){const s=this.entries.find((s=>s.id===t));s?.modalEl.dispatchEvent(new CustomEvent("sdClose"))}requestDismiss(t,s){const i=this.entries.find((s=>s.id===t));if(!i||i.closing)return;i.modalEl.classList.remove("sd-modal-container__modal--visible");const a=setTimeout((()=>{this.finalizeDismiss(t)}),350);o(t,!1),this.entries=(this.entries??[]).map((s=>s.id===t?{...s,closing:!0,dismissTimerId:a,backdropVisible:!1}:s)),"confirm"===s?i.modalRef._triggerOk():"cancel"===s?i.modalRef._triggerCancel():"close"===s&&i.modalRef._triggerClose()}finalizeDismiss(t){const s=this.entries.find((s=>s.id===t));s&&(s.dismissTimerId&&clearTimeout(s.dismissTimerId),s.modalEl.remove(),a(t),s.modalRef._triggerDismissed(),this.layerRefs.delete(t),this.entries=(this.entries??[]).filter((s=>s.id!==t)),this.autoRemove&&0===this.entries.length&&this.el.remove())}createConfirmModal(t,s){const i=document.createElement("sd-confirm-modal");return i.setAttribute("data-modal-id",t),i.classList.add("sd-modal-container__modal"),this.applyProps(i,s),i}createLoadingModal(t,s){const i=document.createElement("sd-loading-modal");return i.setAttribute("data-modal-id",t),i.classList.add("sd-modal-container__modal"),this.applyLoadingProps(i,s),i}applyLoadingProps(t,s){this.hasOwnProp(s,"state")&&this.setAttr(t,"state",s.state),this.hasOwnProp(s,"message")&&(Array.isArray(s.message)?t.message=s.message:this.setAttr(t,"message",s.message)),this.hasOwnProp(s,"useButton")&&(s.useButton?t.setAttribute("use-button",""):t.removeAttribute("use-button")),this.hasOwnProp(s,"buttonLabel")&&this.setAttr(t,"button-label",s.buttonLabel),this.hasOwnProp(s,"width")&&this.setAttr(t,"width",null!=s.width?String(s.width):void 0),this.hasOwnProp(s,"height")&&this.setAttr(t,"height",null!=s.height?String(s.height):void 0),this.hasOwnProp(s,"progress")&&(t.progress=s.progress)}applyProps(t,s){this.hasOwnProp(s,"type")&&this.setAttr(t,"type",s.type),this.hasOwnProp(s,"title")&&this.setAttr(t,"modal-title",s.title),this.hasOwnProp(s,"titleClass")&&this.setAttr(t,"title-class",s.titleClass),this.hasOwnProp(s,"mainButtonLabel")&&this.setAttr(t,"main-button-label",s.mainButtonLabel),this.hasOwnProp(s,"mainButtonName")&&this.setAttr(t,"main-button-name",s.mainButtonName),this.hasOwnProp(s,"subButtonLabel")&&this.setAttr(t,"sub-button-label",s.subButtonLabel),this.hasOwnProp(s,"tagPreset")&&this.setAttr(t,"tag-preset",s.tagPreset),this.hasOwnProp(s,"tagLabel")&&this.setAttr(t,"tag-label",s.tagLabel),this.hasOwnProp(s,"slotLabel")&&this.setAttr(t,"slot-label",s.slotLabel),this.hasOwnProp(s,"topMessage")&&(t.topMessage=s.topMessage??[]),this.hasOwnProp(s,"bottomMessage")&&(t.bottomMessage=s.bottomMessage??[]),this.hasOwnProp(s,"tagContents")&&(t.tagContents=s.tagContents)}handleBackdropClick(t){n(t)&&d(t)}shakeModal(t){const s="sd-modal-container__modal--shake";t.classList.remove(s),t.addEventListener("animationend",(()=>t.classList.remove(s)),{once:!0}),requestAnimationFrame((()=>{t.classList.add(s)}))}waitForModalReady(t){const s=t.componentOnReady;return"function"==typeof s?s.call(t).then((()=>{})):new Promise((t=>{requestAnimationFrame((()=>{requestAnimationFrame((()=>t()))}))}))}hasOwnProp(t,s){return Object.prototype.hasOwnProperty.call(t,s)}setAttr(t,s,i){null!=i&&t.setAttribute(s,i)}render(){return 0===(this.entries?.length??0)?null:i("div",{class:"sd-modal-container"},this.entries.map(((t,s)=>i("div",{key:t.id,class:"sd-modal-container__layer",style:{zIndex:String(s+1)},"data-modal-id":t.id,ref:s=>{s&&this.layerRefs.set(t.id,s)}},i("div",{class:{"sd-modal-container__backdrop":!0,"sd-modal-container__backdrop--visible":t.backdropVisible},onClick:()=>this.handleBackdropClick(t.id)})))))}};r.style="sd-modal-container{display:block}sd-modal-container .sd-modal-container{position:fixed;inset:0;z-index:var(--sd-modal-container-z-index, 997);pointer-events:none}sd-modal-container .sd-modal-container__layer{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}sd-modal-container .sd-modal-container__backdrop{position:absolute;inset:0;background:rgba(0, 0, 0, 0.4);opacity:0;transition:opacity 0.3s ease-out;pointer-events:none}sd-modal-container .sd-modal-container__backdrop--visible{opacity:1;pointer-events:auto}sd-modal-container .sd-modal-container__modal{position:relative;z-index:1;opacity:0;transform:scale(0);pointer-events:auto;transition:opacity 0.3s ease-out, transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1)}sd-modal-container .sd-modal-container__modal--visible{opacity:1;transform:scale(1)}sd-modal-container .sd-modal-container__modal--shake{animation:modal-shake 0.3s ease-out}@keyframes modal-shake{0%,100%{transform:scale(1)}25%{transform:scale(1.03)}50%{transform:scale(0.97)}75%{transform:scale(1.01)}}";export{r as sd_modal_container}
@@ -1 +1 @@
1
- import{r as e,c as a,h as d}from"./p-D3yCWQNg.js";import{u as r,t,W as n,C as i}from"./p-BqWuC4-J.js";import{a as l,D as s}from"./p-d24F7UcR.js";import"./p-laVsm9VM.js";import"./p-BOJJ_sQS.js";const c=class{constructor(d){e(this,d),this.update=a(this,"sdUpdate",7),this.viewChange=a(this,"sdViewChange",7)}value=null;selectable;events;elevated=!1;currentYear;currentMonth;update;viewChange;dateUtil=r();_eventMapCache;get eventMap(){const e=this._eventMapCache;if(e&&e.src===this.events)return e.map;const a=new Map;return(this.events??[]).forEach((e=>e.dates.forEach((d=>{const r=a.get(d)??[];r.push({color:e.color,label:e.label}),a.set(d,r)})))),this._eventMapCache={src:this.events,map:a},a}get legendItems(){const e=new Set,a=[];return(this.events??[]).forEach((d=>{const r=`${d.color}|${d.label}`;e.has(r)||(e.add(r),a.push({color:d.color,label:d.label}))})),a}componentWillLoad(){this.syncViewFromValue()}handleValueChange(){this.syncViewFromValue()}syncViewFromValue(){const e=this.value||t,[a,d]=e.split("-").map(Number);this.currentYear=a,this.currentMonth=d}formatDate(e,a,d){return`${e}-${String(a).padStart(2,"0")}-${String(d).padStart(2,"0")}`}get cells(){const e=this.currentYear,a=this.currentMonth,d=new Date(e,a-1,1).getDay(),r=new Date(e,a,0).getDate(),t=1===a?12:a-1,n=1===a?e-1:e,i=new Date(n,t,0).getDate(),l=12===a?1:a+1,s=12===a?e+1:e,c=[];for(let e=d-1;e>=0;e--){const a=i-e;c.push({date:this.formatDate(n,t,a),day:a,inCurrentMonth:!1})}for(let d=1;d<=r;d++)c.push({date:this.formatDate(e,a,d),day:d,inCurrentMonth:!0});const o=(7-c.length%7)%7;for(let e=1;e<=o;e++)c.push({date:this.formatDate(s,l,e),day:e,inCurrentMonth:!1});return c}emitViewChange(){this.viewChange.emit({year:this.currentYear,month:this.currentMonth})}goPrevYear=e=>{e.stopPropagation(),this.currentYear-=1,this.emitViewChange()};goNextYear=e=>{e.stopPropagation(),this.currentYear+=1,this.emitViewChange()};goPrevMonth=e=>{e.stopPropagation();const{newYear:a,newMonth:d}=this.dateUtil.calculateYearMonth(this.currentYear,this.currentMonth,"prev");this.currentYear=a,this.currentMonth=d,this.emitViewChange()};goNextMonth=e=>{e.stopPropagation();const{newYear:a,newMonth:d}=this.dateUtil.calculateYearMonth(this.currentYear,this.currentMonth,"next");this.currentYear=a,this.currentMonth=d,this.emitViewChange()};isDisabled(e){if(!this.selectable)return!1;const[a,d]=this.selectable;return""!==a&&e<a||""!==d&&e>d}handleDayClick(e){this.isDisabled(e.date)||(this.value=e.date,this.update.emit(e.date))}render(){const e={"--calendar-bg":i.bg,"--calendar-padding":`${i.paddingXY}px`,"--calendar-gap":`${i.gap}px`,"--calendar-radius":`${i.radius}px`,"--calendar-header-gap":`${i.header.gap}px`,"--calendar-header-divider":i.header.divider,"--calendar-header-font-size":`${i.header.fontSize}px`,"--calendar-header-line-height":`${i.header.lineHeight}px`,"--calendar-header-font-weight":i.header.fontWeight,"--calendar-week-font-size":`${i.week.fontSize}px`,"--calendar-week-line-height":`${i.week.lineHeight}px`,"--calendar-week-font-weight":i.week.fontWeight,"--calendar-week-color":i.week.color,"--calendar-grid-row-gap":`${i.grid.rowGap}px`,"--calendar-day-size":`${i.day.size}px`,"--calendar-day-circle-size":`${i.day.circleSize}px`,"--calendar-day-circle-radius":`${i.day.circleRadius}px`,"--calendar-day-text":i.day.defaultText,"--calendar-day-hover-text":i.day.hoverText,"--calendar-day-hover-border":i.day.hoverBorder,"--calendar-day-select-bg":i.day.selectBg,"--calendar-day-select-text":i.day.selectText,"--calendar-day-disabled-text":i.day.disabledText,"--calendar-day-font-size":`${i.day.fontSize}px`,"--calendar-day-line-height":`${i.day.lineHeight}px`,"--calendar-day-font-weight":i.day.fontWeight,"--calendar-day-bold-font-weight":i.day.boldFontWeight,"--calendar-day-dot-size":`${i.day.dot.size}px`,"--calendar-day-dot-gap":`${i.day.dot.gap}px`,"--calendar-day-dot-padding-y":`${i.day.dot.paddingY}px`,"--calendar-legend-font-size":`${i.legend.fontSize}px`,"--calendar-legend-line-height":`${i.legend.lineHeight}px`,"--calendar-legend-font-weight":i.legend.fontWeight,"--calendar-legend-gap":`${i.legend.gap}px`,"--calendar-legend-group-gap":`${i.legend.groupGap}px`},a=this.eventMap,r=this.legendItems,l=(this.events?.length??0)>0;return d("div",{key:"e939d5fae94ff8f44bd2167abd78ac331359f35d",class:{"sd-calendar":!0,"sd-calendar--elevated":this.elevated},style:e},d("div",{key:"2dad0f6cfd58d1a4ce430142df0af56ed0a5cfa3",class:"sd-calendar__header"},d("div",{key:"5d7424dc210f3ff9fa28ee5c24e958130449b798",class:"sd-calendar__nav-group"},d("sd-ghost-button",{key:"d15c0d1691492d0bbdb099893701c2538c183513",ariaLabel:"prevYear",size:"xxs",icon:"chevronLeft",onClick:this.goPrevYear}),d("span",{key:"a2e936f9a4626bdd4d48bcd7b513e33f76d4affb",class:"sd-calendar__label"},this.currentYear),d("sd-ghost-button",{key:"c4c50b1a3440ef2eeb1a0ed95c61d3f5b55ba055",ariaLabel:"nextYear",size:"xxs",icon:"chevronRight",onClick:this.goNextYear})),d("span",{key:"ec677bd90799db7032f188b521c32f06688c8659",class:"sd-calendar__divider","aria-hidden":"true"}),d("div",{key:"d8ab3d1a8efa607ee6f8cd4c3af5ba2d2af31639",class:"sd-calendar__nav-group sd-calendar__nav-group-month"},d("sd-ghost-button",{key:"1a76dcd9d9655bdac72d78a8bf6c40e546c9c4a1",ariaLabel:"prevMonth",size:"xxs",icon:"chevronLeft",onClick:this.goPrevMonth}),d("span",{key:"08b4274631b31aa028f14f8d3ecd63d135c125d7",class:"sd-calendar__label sd-calendar__label-month"},this.currentMonth,"월"),d("sd-ghost-button",{key:"ec404faf07c03f7a1949d2379a1313e99b712883",ariaLabel:"nextMonth",size:"xxs",icon:"chevronRight",onClick:this.goNextMonth}))),d("div",{key:"98775d3b2d885492347dec3e13258b33936b92bc",class:"sd-calendar__week"},n.map((e=>d("span",{key:e,class:"sd-calendar__week-cell"},e)))),d("div",{key:"87a4739a0ddf26302d22bcb39b545cffab44dd09",class:"sd-calendar__grid"},this.cells.map((e=>{const r=e.inCurrentMonth&&""!==this.value&&this.value===e.date,n=e.inCurrentMonth&&t===e.date,i=e.inCurrentMonth&&this.isDisabled(e.date),s=e.inCurrentMonth?a.get(e.date):void 0;return d("button",{type:"button",key:e.date,class:{"sd-calendar__day":!0,"sd-calendar__day--empty":!e.inCurrentMonth,"sd-calendar__day--today":n,"sd-calendar__day--selected":r,"sd-calendar__day--disabled":i},disabled:!e.inCurrentMonth||i,tabindex:e.inCurrentMonth?void 0:-1,"aria-hidden":e.inCurrentMonth?void 0:"true",onClick:()=>e.inCurrentMonth&&this.handleDayClick(e)},d("span",{class:"sd-calendar__day-circle"},e.inCurrentMonth?e.day:""),l&&d("span",{class:"sd-calendar__dot-row","aria-hidden":"true"},s?.map(((e,a)=>d("span",{key:`${e.color}|${e.label}|${a}`,class:"sd-calendar__dot",style:{backgroundColor:e.color}})))))}))),r.length>0&&[d("span",{key:"9c1c21573694ca6702d19ba451c31cbdb47e727c",class:"sd-calendar__divider-bottom","aria-hidden":"true"}),d("div",{key:"dae2d35ea2971f6c7b1b3ec4774934efb2fcd168",class:"sd-calendar__legend"},r.map((e=>d("span",{key:`${e.color}|${e.label}`,class:"sd-calendar__legend-item"},d("span",{class:"sd-calendar__legend-dot",style:{backgroundColor:e.color},"aria-hidden":"true"}),d("span",{class:"sd-calendar__legend-label"},e.label)))))])}static get watchers(){return{value:[{handleValueChange:0}]}}};c.style="sd-calendar{display:block}sd-calendar .sd-calendar{display:flex;flex-direction:column;gap:var(--calendar-gap);width:328px;min-height:328px;padding:var(--calendar-padding);background:var(--calendar-bg);border-radius:var(--calendar-radius);user-select:none}sd-calendar .sd-calendar--elevated{box-shadow:2px 2px 12px 2px rgba(0, 0, 0, 0.2)}sd-calendar .sd-calendar__header{display:flex;align-items:center;justify-content:center;gap:var(--calendar-header-gap);font-size:var(--calendar-header-font-size);line-height:var(--calendar-header-line-height);font-weight:var(--calendar-header-font-weight);color:var(--calendar-day-text)}sd-calendar .sd-calendar__nav-group{display:inline-flex;align-items:center;gap:var(--calendar-gap)}sd-calendar .sd-calendar__nav-group-month{width:100%}sd-calendar .sd-calendar__label{display:inline-flex;align-items:center;justify-content:center;min-width:40px;text-align:center}sd-calendar .sd-calendar__label-month{width:100%}sd-calendar .sd-calendar__divider{display:inline-block;width:1px;height:16px;background:var(--calendar-header-divider)}sd-calendar .sd-calendar__week{display:grid;grid-template-columns:repeat(7, var(--calendar-day-size))}sd-calendar .sd-calendar__week-cell{display:inline-flex;align-items:center;justify-content:center;height:20px;font-size:var(--calendar-week-font-size);line-height:var(--calendar-week-line-height);font-weight:var(--calendar-week-font-weight);color:var(--calendar-week-color)}sd-calendar .sd-calendar__grid{display:grid;grid-template-columns:repeat(7, var(--calendar-day-size));row-gap:var(--calendar-grid-row-gap)}sd-calendar .sd-calendar__day{display:inline-flex;flex-direction:column;align-items:center;justify-content:flex-start;width:var(--calendar-day-size);min-height:var(--calendar-day-circle-size);padding:0;border:none;background:transparent;cursor:pointer;font-size:var(--calendar-day-font-size);line-height:var(--calendar-day-line-height);font-weight:var(--calendar-day-font-weight);color:var(--calendar-day-text)}sd-calendar .sd-calendar__day-circle{display:inline-flex;align-items:center;justify-content:center;width:var(--calendar-day-circle-size);height:var(--calendar-day-circle-size);border-radius:calc(var(--calendar-day-circle-radius) * 1px);border:1px solid transparent;box-sizing:border-box}sd-calendar .sd-calendar__day:not(:disabled):hover .sd-calendar__day-circle{border-radius:16px;border:1px solid var(--calendar-day-hover-border)}sd-calendar .sd-calendar__day--today .sd-calendar__day-circle{font-weight:700}sd-calendar .sd-calendar__day--selected .sd-calendar__day-circle{border-radius:16px;background:var(--calendar-day-select-bg);color:var(--calendar-day-select-text)}sd-calendar .sd-calendar__day--selected:not(:disabled):hover .sd-calendar__day-circle{background:var(--calendar-day-select-bg);color:var(--calendar-day-select-text)}sd-calendar .sd-calendar__day--disabled{color:var(--calendar-day-disabled-text);background:none !important;cursor:not-allowed}sd-calendar .sd-calendar__day--empty{visibility:hidden;pointer-events:none}sd-calendar .sd-calendar__dot-row{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--calendar-day-dot-gap);box-sizing:border-box;width:100%;min-height:14px;padding-top:var(--calendar-day-dot-padding-y);padding-bottom:var(--calendar-day-dot-padding-y)}sd-calendar .sd-calendar__dot{display:inline-block;width:var(--calendar-day-dot-size);height:var(--calendar-day-dot-size);border-radius:50%}sd-calendar .sd-calendar__divider-bottom{display:block;width:100%;height:1px;background:var(--calendar-header-divider)}sd-calendar .sd-calendar__legend{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;column-gap:var(--calendar-legend-group-gap);row-gap:4px;font-size:var(--calendar-legend-font-size);line-height:var(--calendar-legend-line-height);font-weight:var(--calendar-legend-font-weight);color:var(--calendar-day-text)}sd-calendar .sd-calendar__legend-item{display:inline-flex;align-items:center;gap:var(--calendar-legend-gap)}sd-calendar .sd-calendar__legend-dot{display:inline-block;width:var(--calendar-day-dot-size);height:var(--calendar-day-dot-size);border-radius:50%;flex-shrink:0}sd-calendar .sd-calendar__legend-label{display:inline-block}";const o=class{constructor(d){e(this,d),this.triggerClick=a(this,"sdTriggerClick",7)}displayText="";placeholder="YYYY-MM-DD";disabled=!1;size="sm";triggerClick;handleClick=()=>{this.disabled||this.triggerClick.emit()};render(){const e=l[this.size]??l.sm,a=""!==this.displayText;return d("div",{key:"87ada0414ffc6404b27cf4a41ba7c9cb9903f498",role:"button",tabindex:this.disabled?-1:0,class:{"sd-date-picker-trigger":!0,"sd-date-picker-trigger--disabled":this.disabled},style:{"--trigger-padding-x":`${e.paddingX}px`,"--trigger-gap":`${e.gap}px`,"--trigger-icon-size":`${e.iconSize}px`,"--trigger-font-size":`${e.fontSize}px`,"--trigger-line-height":`${e.lineHeight}px`,"--trigger-font-weight":e.fontWeight,"--trigger-radius":`${e.radius}px`,"--trigger-text-min-width":("md"===this.size?104:80)+"px","--trigger-text-color":this.disabled?s.text.disabled:a?s.text.default:s.text.hint,"--trigger-icon-color":this.disabled?s.icon.disabled:s.icon.default},onClick:this.handleClick,onKeyDown:e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),this.handleClick())}},d("sd-icon",{key:"e8eee3ed97ab7344e7658b7b22bc91f11aa0b068",name:"date",size:Number(e.iconSize),color:"var(--trigger-icon-color)",class:"sd-date-picker-trigger__icon"}),d("span",{key:"ea25a13a72d00ca31fcddaf0183b520175ef7d93",class:"sd-date-picker-trigger__text"},a?this.displayText:this.placeholder))}};o.style="sd-date-picker-trigger{display:block;width:100%;height:100%}sd-date-picker-trigger .sd-date-picker-trigger{display:flex;align-items:center;gap:var(--trigger-gap);width:100%;height:100%;padding:0 var(--trigger-padding-x);cursor:pointer;user-select:none;overflow:hidden;border-radius:var(--trigger-radius)}sd-date-picker-trigger .sd-date-picker-trigger--disabled{cursor:not-allowed}sd-date-picker-trigger .sd-date-picker-trigger__icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}sd-date-picker-trigger .sd-date-picker-trigger__text{flex:1;min-width:var(--trigger-text-min-width, 80px);font-size:var(--trigger-font-size);line-height:var(--trigger-line-height);font-weight:var(--trigger-font-weight);color:var(--trigger-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}";export{c as sd_calendar,o as sd_date_picker_trigger}
1
+ import{r as e,c as a,h as d}from"./p-JGOJoT-i.js";import{u as r,t,W as n,C as i}from"./p-BqWuC4-J.js";import{a as l,D as s}from"./p-d24F7UcR.js";import"./p-laVsm9VM.js";import"./p-BOJJ_sQS.js";const c=class{constructor(d){e(this,d),this.update=a(this,"sdUpdate",7),this.viewChange=a(this,"sdViewChange",7)}value=null;selectable;events;elevated=!1;currentYear;currentMonth;update;viewChange;dateUtil=r();_eventMapCache;get eventMap(){const e=this._eventMapCache;if(e&&e.src===this.events)return e.map;const a=new Map;return(this.events??[]).forEach((e=>e.dates.forEach((d=>{const r=a.get(d)??[];r.push({color:e.color,label:e.label}),a.set(d,r)})))),this._eventMapCache={src:this.events,map:a},a}get legendItems(){const e=new Set,a=[];return(this.events??[]).forEach((d=>{const r=`${d.color}|${d.label}`;e.has(r)||(e.add(r),a.push({color:d.color,label:d.label}))})),a}componentWillLoad(){this.syncViewFromValue()}handleValueChange(){this.syncViewFromValue()}syncViewFromValue(){const e=this.value||t,[a,d]=e.split("-").map(Number);this.currentYear=a,this.currentMonth=d}formatDate(e,a,d){return`${e}-${String(a).padStart(2,"0")}-${String(d).padStart(2,"0")}`}get cells(){const e=this.currentYear,a=this.currentMonth,d=new Date(e,a-1,1).getDay(),r=new Date(e,a,0).getDate(),t=1===a?12:a-1,n=1===a?e-1:e,i=new Date(n,t,0).getDate(),l=12===a?1:a+1,s=12===a?e+1:e,c=[];for(let e=d-1;e>=0;e--){const a=i-e;c.push({date:this.formatDate(n,t,a),day:a,inCurrentMonth:!1})}for(let d=1;d<=r;d++)c.push({date:this.formatDate(e,a,d),day:d,inCurrentMonth:!0});const o=(7-c.length%7)%7;for(let e=1;e<=o;e++)c.push({date:this.formatDate(s,l,e),day:e,inCurrentMonth:!1});return c}emitViewChange(){this.viewChange.emit({year:this.currentYear,month:this.currentMonth})}goPrevYear=e=>{e.stopPropagation(),this.currentYear-=1,this.emitViewChange()};goNextYear=e=>{e.stopPropagation(),this.currentYear+=1,this.emitViewChange()};goPrevMonth=e=>{e.stopPropagation();const{newYear:a,newMonth:d}=this.dateUtil.calculateYearMonth(this.currentYear,this.currentMonth,"prev");this.currentYear=a,this.currentMonth=d,this.emitViewChange()};goNextMonth=e=>{e.stopPropagation();const{newYear:a,newMonth:d}=this.dateUtil.calculateYearMonth(this.currentYear,this.currentMonth,"next");this.currentYear=a,this.currentMonth=d,this.emitViewChange()};isDisabled(e){if(!this.selectable)return!1;const[a,d]=this.selectable;return""!==a&&e<a||""!==d&&e>d}handleDayClick(e){this.isDisabled(e.date)||(this.value=e.date,this.update.emit(e.date))}render(){const e={"--calendar-bg":i.bg,"--calendar-padding":`${i.paddingXY}px`,"--calendar-gap":`${i.gap}px`,"--calendar-radius":`${i.radius}px`,"--calendar-header-gap":`${i.header.gap}px`,"--calendar-header-divider":i.header.divider,"--calendar-header-font-size":`${i.header.fontSize}px`,"--calendar-header-line-height":`${i.header.lineHeight}px`,"--calendar-header-font-weight":i.header.fontWeight,"--calendar-week-font-size":`${i.week.fontSize}px`,"--calendar-week-line-height":`${i.week.lineHeight}px`,"--calendar-week-font-weight":i.week.fontWeight,"--calendar-week-color":i.week.color,"--calendar-grid-row-gap":`${i.grid.rowGap}px`,"--calendar-day-size":`${i.day.size}px`,"--calendar-day-circle-size":`${i.day.circleSize}px`,"--calendar-day-circle-radius":`${i.day.circleRadius}px`,"--calendar-day-text":i.day.defaultText,"--calendar-day-hover-text":i.day.hoverText,"--calendar-day-hover-border":i.day.hoverBorder,"--calendar-day-select-bg":i.day.selectBg,"--calendar-day-select-text":i.day.selectText,"--calendar-day-disabled-text":i.day.disabledText,"--calendar-day-font-size":`${i.day.fontSize}px`,"--calendar-day-line-height":`${i.day.lineHeight}px`,"--calendar-day-font-weight":i.day.fontWeight,"--calendar-day-bold-font-weight":i.day.boldFontWeight,"--calendar-day-dot-size":`${i.day.dot.size}px`,"--calendar-day-dot-gap":`${i.day.dot.gap}px`,"--calendar-day-dot-padding-y":`${i.day.dot.paddingY}px`,"--calendar-legend-font-size":`${i.legend.fontSize}px`,"--calendar-legend-line-height":`${i.legend.lineHeight}px`,"--calendar-legend-font-weight":i.legend.fontWeight,"--calendar-legend-gap":`${i.legend.gap}px`,"--calendar-legend-group-gap":`${i.legend.groupGap}px`},a=this.eventMap,r=this.legendItems,l=(this.events?.length??0)>0;return d("div",{key:"e939d5fae94ff8f44bd2167abd78ac331359f35d",class:{"sd-calendar":!0,"sd-calendar--elevated":this.elevated},style:e},d("div",{key:"2dad0f6cfd58d1a4ce430142df0af56ed0a5cfa3",class:"sd-calendar__header"},d("div",{key:"5d7424dc210f3ff9fa28ee5c24e958130449b798",class:"sd-calendar__nav-group"},d("sd-ghost-button",{key:"d15c0d1691492d0bbdb099893701c2538c183513",ariaLabel:"prevYear",size:"xxs",icon:"chevronLeft",onClick:this.goPrevYear}),d("span",{key:"a2e936f9a4626bdd4d48bcd7b513e33f76d4affb",class:"sd-calendar__label"},this.currentYear),d("sd-ghost-button",{key:"c4c50b1a3440ef2eeb1a0ed95c61d3f5b55ba055",ariaLabel:"nextYear",size:"xxs",icon:"chevronRight",onClick:this.goNextYear})),d("span",{key:"ec677bd90799db7032f188b521c32f06688c8659",class:"sd-calendar__divider","aria-hidden":"true"}),d("div",{key:"d8ab3d1a8efa607ee6f8cd4c3af5ba2d2af31639",class:"sd-calendar__nav-group sd-calendar__nav-group-month"},d("sd-ghost-button",{key:"1a76dcd9d9655bdac72d78a8bf6c40e546c9c4a1",ariaLabel:"prevMonth",size:"xxs",icon:"chevronLeft",onClick:this.goPrevMonth}),d("span",{key:"08b4274631b31aa028f14f8d3ecd63d135c125d7",class:"sd-calendar__label sd-calendar__label-month"},this.currentMonth,"월"),d("sd-ghost-button",{key:"ec404faf07c03f7a1949d2379a1313e99b712883",ariaLabel:"nextMonth",size:"xxs",icon:"chevronRight",onClick:this.goNextMonth}))),d("div",{key:"98775d3b2d885492347dec3e13258b33936b92bc",class:"sd-calendar__week"},n.map((e=>d("span",{key:e,class:"sd-calendar__week-cell"},e)))),d("div",{key:"87a4739a0ddf26302d22bcb39b545cffab44dd09",class:"sd-calendar__grid"},this.cells.map((e=>{const r=e.inCurrentMonth&&""!==this.value&&this.value===e.date,n=e.inCurrentMonth&&t===e.date,i=e.inCurrentMonth&&this.isDisabled(e.date),s=e.inCurrentMonth?a.get(e.date):void 0;return d("button",{type:"button",key:e.date,class:{"sd-calendar__day":!0,"sd-calendar__day--empty":!e.inCurrentMonth,"sd-calendar__day--today":n,"sd-calendar__day--selected":r,"sd-calendar__day--disabled":i},disabled:!e.inCurrentMonth||i,tabindex:e.inCurrentMonth?void 0:-1,"aria-hidden":e.inCurrentMonth?void 0:"true",onClick:()=>e.inCurrentMonth&&this.handleDayClick(e)},d("span",{class:"sd-calendar__day-circle"},e.inCurrentMonth?e.day:""),l&&d("span",{class:"sd-calendar__dot-row","aria-hidden":"true"},s?.map(((e,a)=>d("span",{key:`${e.color}|${e.label}|${a}`,class:"sd-calendar__dot",style:{backgroundColor:e.color}})))))}))),r.length>0&&[d("span",{key:"9c1c21573694ca6702d19ba451c31cbdb47e727c",class:"sd-calendar__divider-bottom","aria-hidden":"true"}),d("div",{key:"dae2d35ea2971f6c7b1b3ec4774934efb2fcd168",class:"sd-calendar__legend"},r.map((e=>d("span",{key:`${e.color}|${e.label}`,class:"sd-calendar__legend-item"},d("span",{class:"sd-calendar__legend-dot",style:{backgroundColor:e.color},"aria-hidden":"true"}),d("span",{class:"sd-calendar__legend-label"},e.label)))))])}static get watchers(){return{value:[{handleValueChange:0}]}}};c.style="sd-calendar{display:block}sd-calendar .sd-calendar{display:flex;flex-direction:column;gap:var(--calendar-gap);width:328px;min-height:328px;padding:var(--calendar-padding);background:var(--calendar-bg);border-radius:var(--calendar-radius);user-select:none}sd-calendar .sd-calendar--elevated{box-shadow:2px 2px 12px 2px rgba(0, 0, 0, 0.2)}sd-calendar .sd-calendar__header{display:flex;align-items:center;justify-content:center;gap:var(--calendar-header-gap);font-size:var(--calendar-header-font-size);line-height:var(--calendar-header-line-height);font-weight:var(--calendar-header-font-weight);color:var(--calendar-day-text)}sd-calendar .sd-calendar__nav-group{display:inline-flex;align-items:center;gap:var(--calendar-gap)}sd-calendar .sd-calendar__nav-group-month{width:100%}sd-calendar .sd-calendar__label{display:inline-flex;align-items:center;justify-content:center;min-width:40px;text-align:center}sd-calendar .sd-calendar__label-month{width:100%}sd-calendar .sd-calendar__divider{display:inline-block;width:1px;height:16px;background:var(--calendar-header-divider)}sd-calendar .sd-calendar__week{display:grid;grid-template-columns:repeat(7, var(--calendar-day-size))}sd-calendar .sd-calendar__week-cell{display:inline-flex;align-items:center;justify-content:center;height:20px;font-size:var(--calendar-week-font-size);line-height:var(--calendar-week-line-height);font-weight:var(--calendar-week-font-weight);color:var(--calendar-week-color)}sd-calendar .sd-calendar__grid{display:grid;grid-template-columns:repeat(7, var(--calendar-day-size));row-gap:var(--calendar-grid-row-gap)}sd-calendar .sd-calendar__day{display:inline-flex;flex-direction:column;align-items:center;justify-content:flex-start;width:var(--calendar-day-size);min-height:var(--calendar-day-circle-size);padding:0;border:none;background:transparent;cursor:pointer;font-size:var(--calendar-day-font-size);line-height:var(--calendar-day-line-height);font-weight:var(--calendar-day-font-weight);color:var(--calendar-day-text)}sd-calendar .sd-calendar__day-circle{display:inline-flex;align-items:center;justify-content:center;width:var(--calendar-day-circle-size);height:var(--calendar-day-circle-size);border-radius:calc(var(--calendar-day-circle-radius) * 1px);border:1px solid transparent;box-sizing:border-box}sd-calendar .sd-calendar__day:not(:disabled):hover .sd-calendar__day-circle{border-radius:16px;border:1px solid var(--calendar-day-hover-border)}sd-calendar .sd-calendar__day--today .sd-calendar__day-circle{font-weight:700}sd-calendar .sd-calendar__day--selected .sd-calendar__day-circle{border-radius:16px;background:var(--calendar-day-select-bg);color:var(--calendar-day-select-text)}sd-calendar .sd-calendar__day--selected:not(:disabled):hover .sd-calendar__day-circle{background:var(--calendar-day-select-bg);color:var(--calendar-day-select-text)}sd-calendar .sd-calendar__day--disabled{color:var(--calendar-day-disabled-text);background:none !important;cursor:not-allowed}sd-calendar .sd-calendar__day--empty{visibility:hidden;pointer-events:none}sd-calendar .sd-calendar__dot-row{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--calendar-day-dot-gap);box-sizing:border-box;width:100%;min-height:14px;padding-top:var(--calendar-day-dot-padding-y);padding-bottom:var(--calendar-day-dot-padding-y)}sd-calendar .sd-calendar__dot{display:inline-block;width:var(--calendar-day-dot-size);height:var(--calendar-day-dot-size);border-radius:50%}sd-calendar .sd-calendar__divider-bottom{display:block;width:100%;height:1px;background:var(--calendar-header-divider)}sd-calendar .sd-calendar__legend{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;column-gap:var(--calendar-legend-group-gap);row-gap:4px;font-size:var(--calendar-legend-font-size);line-height:var(--calendar-legend-line-height);font-weight:var(--calendar-legend-font-weight);color:var(--calendar-day-text)}sd-calendar .sd-calendar__legend-item{display:inline-flex;align-items:center;gap:var(--calendar-legend-gap)}sd-calendar .sd-calendar__legend-dot{display:inline-block;width:var(--calendar-day-dot-size);height:var(--calendar-day-dot-size);border-radius:50%;flex-shrink:0}sd-calendar .sd-calendar__legend-label{display:inline-block}";const o=class{constructor(d){e(this,d),this.triggerClick=a(this,"sdTriggerClick",7)}displayText="";placeholder="YYYY-MM-DD";disabled=!1;size="sm";triggerClick;handleClick=()=>{this.disabled||this.triggerClick.emit()};render(){const e=l[this.size]??l.sm,a=""!==this.displayText;return d("div",{key:"87ada0414ffc6404b27cf4a41ba7c9cb9903f498",role:"button",tabindex:this.disabled?-1:0,class:{"sd-date-picker-trigger":!0,"sd-date-picker-trigger--disabled":this.disabled},style:{"--trigger-padding-x":`${e.paddingX}px`,"--trigger-gap":`${e.gap}px`,"--trigger-icon-size":`${e.iconSize}px`,"--trigger-font-size":`${e.fontSize}px`,"--trigger-line-height":`${e.lineHeight}px`,"--trigger-font-weight":e.fontWeight,"--trigger-radius":`${e.radius}px`,"--trigger-text-min-width":("md"===this.size?104:80)+"px","--trigger-text-color":this.disabled?s.text.disabled:a?s.text.default:s.text.hint,"--trigger-icon-color":this.disabled?s.icon.disabled:s.icon.default},onClick:this.handleClick,onKeyDown:e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),this.handleClick())}},d("sd-icon",{key:"e8eee3ed97ab7344e7658b7b22bc91f11aa0b068",name:"date",size:Number(e.iconSize),color:"var(--trigger-icon-color)",class:"sd-date-picker-trigger__icon"}),d("span",{key:"ea25a13a72d00ca31fcddaf0183b520175ef7d93",class:"sd-date-picker-trigger__text"},a?this.displayText:this.placeholder))}};o.style="sd-date-picker-trigger{display:block;width:100%;height:100%}sd-date-picker-trigger .sd-date-picker-trigger{display:flex;align-items:center;gap:var(--trigger-gap);width:100%;height:100%;padding:0 var(--trigger-padding-x);cursor:pointer;user-select:none;overflow:hidden;border-radius:var(--trigger-radius)}sd-date-picker-trigger .sd-date-picker-trigger--disabled{cursor:not-allowed}sd-date-picker-trigger .sd-date-picker-trigger__icon{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}sd-date-picker-trigger .sd-date-picker-trigger__text{flex:1;min-width:var(--trigger-text-min-width, 80px);font-size:var(--trigger-font-size);line-height:var(--trigger-line-height);font-weight:var(--trigger-font-weight);color:var(--trigger-text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}";export{c as sd_calendar,o as sd_date_picker_trigger}
@@ -1 +1 @@
1
- import{r as t,a as e,h as i}from"./p-D3yCWQNg.js";import{s as d}from"./p-j2khhcHY.js";import{s as o}from"./p-BE4tnQ2Z.js";const{button:n,contents:s}={button:{height:"28",paddingX:"12",radius:"9999",gap:"6",typography:{fontSize:"12",fontWeight:"500",lineHeight:"20"},icon:{default:"#00973C",active:"#FFFFFF"},border:{width:"1",default:"#E1E1E1"},bg:{default:"#FFFFFF",tip:"#00973C",notion:"#1F8AE1"},text:{default:"#222222",active:"#FFFFFF"}},contents:{paddingX:"24",paddingY:"20",gap:"12",title:{gap:"8"},row:{gap:"8"},body:{gap:"2"},typography:{title:{fontWeight:"700",fontSize:"16",lineHeight:"26"},body:{fontWeight:"400",fontSize:"12",lineHeight:"20"},color:"#222222"},icon:"#00973C",radius:"8"}},u=d.color.fg.primary,g={button:{height:`${n.height}px`,paddingX:`${n.paddingX}px`,radius:`${n.radius}px`,gap:`${n.gap}px`,fontSize:`${n.typography.fontSize}px`,fontWeight:n.typography.fontWeight,lineHeight:`${n.typography.lineHeight}px`,iconColorDefault:n.icon.default,iconColorActive:n.icon.active,iconColorNotion:u,borderWidth:`${n.border.width}px`,borderColor:n.border.default,bgDefault:n.bg.default,bgTip:n.bg.tip,bgNotion:n.bg.notion,textDefault:n.text.default,textActive:n.text.active},contents:{paddingX:`${s.paddingX}px`,paddingY:`${s.paddingY}px`,gap:`${s.gap}px`,rowGap:`${s.row.gap}px`,bodyGap:`${s.body.gap}px`,titleGap:`${s.title.gap}px`,radius:`${s.radius}px`,iconColor:s.icon,iconColorNotion:u,titleFontSize:`${s.typography.title.fontSize}px`,titleFontWeight:s.typography.title.fontWeight,titleLineHeight:`${s.typography.title.lineHeight}px`,bodyFontSize:`${s.typography.body.fontSize}px`,bodyFontWeight:s.typography.body.fontWeight,bodyLineHeight:`${s.typography.body.lineHeight}px`,textColor:s.typography.color}},a={tip:"활용 TIP",notion:"사용법 안내"},r={tip:"helpOutline",notion:"notion"},p=class{constructor(e){t(this,e)}get el(){return e(this)}type="tip";label="";message="";url="";popupTitle="";popupWidth;popupShow=!1;guideRef;handleClickGuide=()=>{"notion"!==this.type?this.popupShow=!this.popupShow:""!==this.url&&window.open(this.url,"_blank","noopener,noreferrer")};closeDropdown=()=>{this.popupShow=!1};get guideStyle(){const{button:t,contents:e}=g;return{"--sd-guide-button-height":t.height,"--sd-guide-button-padding-x":t.paddingX,"--sd-guide-button-radius":t.radius,"--sd-guide-button-gap":t.gap,"--sd-guide-button-font-size":t.fontSize,"--sd-guide-button-font-weight":t.fontWeight,"--sd-guide-button-line-height":t.lineHeight,"--sd-guide-button-border-width":t.borderWidth,"--sd-guide-button-border-color":t.borderColor,"--sd-guide-button-bg-default":t.bgDefault,"--sd-guide-button-bg-tip":t.bgTip,"--sd-guide-button-bg-notion":t.bgNotion,"--sd-guide-button-text-default":t.textDefault,"--sd-guide-button-text-active":t.textActive,"--sd-guide-button-icon-color-default":t.iconColorDefault,"--sd-guide-button-icon-color-active":t.iconColorActive,"--sd-guide-button-icon-color-notion":t.iconColorNotion,"--sd-guide-contents-padding-x":e.paddingX,"--sd-guide-contents-padding-y":e.paddingY,"--sd-guide-contents-gap":e.gap,"--sd-guide-contents-row-gap":e.rowGap,"--sd-guide-contents-body-gap":e.bodyGap,"--sd-guide-contents-title-gap":e.titleGap,"--sd-guide-contents-radius":e.radius,"--sd-guide-contents-title-font-size":e.titleFontSize,"--sd-guide-contents-title-font-weight":e.titleFontWeight,"--sd-guide-contents-title-line-height":e.titleLineHeight,"--sd-guide-contents-body-font-size":e.bodyFontSize,"--sd-guide-contents-body-font-weight":e.bodyFontWeight,"--sd-guide-contents-body-line-height":e.bodyLineHeight,"--sd-guide-contents-text-color":e.textColor}}render(){const{contents:t}=g,e=this.popupShow,d=a[this.type??"tip"],o=r[this.type??"tip"],n="notion"===(this.type??"tip")?t.iconColorNotion:t.iconColor,s=["sd-guide__button",`sd-guide__button--type-${this.type??"tip"}`];return e&&s.push("sd-guide__button--active"),i("div",{key:"ea4f220faf6165f7650360f74a19d9f781b81489",class:"sd-guide",style:this.guideStyle},i("sd-button",{key:"c90eaa6cc42a9a2f20b8fc79db16697db0cf2ff2",ref:t=>this.guideRef=t,class:s.join(" "),name:e?"primary_sm":"neutral_outline_sm",label:this.label||d,icon:o,onSdClick:this.handleClickGuide}),this.popupShow&&i("sd-portal",{key:"21f57a739141ffa36f3b799a2688ca5b3c1bd428",open:this.popupShow,parentRef:this.guideRef,onSdClose:this.closeDropdown,offset:[0,4]},i("div",{key:"94e12fa797748a02334b97e13c5012ab95bc2bce",class:"sd-guide__popup",style:{...this.guideStyle,width:null!=this.popupWidth?this.popupWidth+"px":"426px"}},i("sd-ghost-button",{key:"6fc71032016e7a3be0581508ef0ecc6772981185",class:"sd-guide__popup__close",icon:"close",ariaLabel:"close",size:"sm",onSdClick:this.closeDropdown}),i("div",{key:"385c0c18bc888be6a654525dc6f4359a56ad6de9",class:"sd-guide__popup__header"},i("sd-icon",{key:"34624d2ac3397ba15b2dc7ba23dc460a87cb878b",name:o,size:24,color:n}),i("h3",{key:"dd3527ec329698b0fd1ec82f2a7d0cf5865802c2",class:"sd-guide__popup__title"},this.popupTitle||d)),i("ul",{key:"429357d0203acdf31177353ceb45d9ac41fadae7",class:"sd-guide__popup__list"},this.renderListItem(this.message)))))}renderListItem(t,e=0){const i=[];if(Array.isArray(t)){const d=t.map((t=>this.renderListItem(t,e+1)));i.push(...d.flat())}else i.push(this.renderLi(t,e));return i}renderLi=(t,e)=>i("li",{class:`sd-guide__popup__list__item sd-guide__popup__list__item--depth-${e}`},i("p",{innerHTML:o(t)}))};p.style='@charset "UTF-8";sd-guide{display:inline-flex;align-items:center;height:fit-content;width:fit-content}.sd-guide{display:inline-flex;align-items:center;height:fit-content;width:fit-content}.sd-guide .sd-guide__button .sd-button{min-height:var(--sd-guide-button-height);padding:0 var(--sd-guide-button-padding-x);border-radius:var(--sd-guide-button-radius);border:var(--sd-guide-button-border-width) solid var(--sd-guide-button-border-color);background:var(--sd-guide-button-bg-default);color:var(--sd-guide-button-text-default) !important;transition:none;display:flex;align-items:center;gap:var(--sd-guide-button-gap);--sd-button-bg-hover:var(--sd-guide-button-bg-default);--sd-button-current-icon:var(--sd-guide-button-icon-color-default)}.sd-guide .sd-guide__button .sd-button .sd-button__content{color:var(--sd-guide-button-text-default) !important;gap:var(--sd-guide-button-gap)}.sd-guide .sd-guide__button .sd-button .sd-button__content .sd-button__label{margin-left:0;color:var(--sd-guide-button-text-default) !important;font-size:var(--sd-guide-button-font-size);font-weight:var(--sd-guide-button-font-weight);line-height:var(--sd-guide-button-line-height)}.sd-guide .sd-guide__button--type-notion .sd-button{--sd-button-current-icon:var(--sd-guide-button-icon-color-notion)}.sd-guide .sd-guide__button--active .sd-button{color:var(--sd-guide-button-text-active) !important;--sd-button-current-icon:var(--sd-guide-button-icon-color-active)}.sd-guide .sd-guide__button--active .sd-button .sd-button__content{color:var(--sd-guide-button-text-active) !important}.sd-guide .sd-guide__button--active .sd-button .sd-button__content .sd-button__label{color:var(--sd-guide-button-text-active) !important}.sd-guide .sd-guide__button--type-tip.sd-guide__button--active .sd-button{background:var(--sd-guide-button-bg-tip);border-color:var(--sd-guide-button-bg-tip);--sd-button-bg-hover:var(--sd-guide-button-bg-tip)}.sd-guide .sd-guide__button--type-notion.sd-guide__button--active .sd-button{background:var(--sd-guide-button-bg-notion);border-color:var(--sd-guide-button-bg-notion);--sd-button-bg-hover:var(--sd-guide-button-bg-notion)}.sd-guide__popup{position:relative;padding:var(--sd-guide-contents-padding-y) var(--sd-guide-contents-padding-x);border-radius:var(--sd-guide-contents-radius);box-shadow:4px 4px 24px 4px rgba(0, 0, 0, 0.1);background:white}.sd-guide__popup>.sd-guide__popup__close{position:absolute;top:12px;right:12px}.sd-guide__popup__header{display:flex;align-items:center;gap:var(--sd-guide-contents-title-gap);margin-bottom:var(--sd-guide-contents-gap)}.sd-guide__popup__header .sd-guide__popup__title{margin-top:0;margin-bottom:0;font-size:var(--sd-guide-contents-title-font-size);font-weight:var(--sd-guide-contents-title-font-weight);line-height:var(--sd-guide-contents-title-line-height);color:var(--sd-guide-contents-text-color)}.sd-guide__popup__list{width:100%;padding:0;margin:0}.sd-guide__popup__list__item{display:flex;width:100%;align-items:start;list-style:none;color:var(--sd-guide-contents-text-color);font-size:var(--sd-guide-contents-body-font-size);font-weight:var(--sd-guide-contents-body-font-weight);line-height:var(--sd-guide-contents-body-line-height)}.sd-guide__popup__list__item p{width:100%;padding:0;margin:0;word-wrap:break-word;word-break:break-word;white-space:normal;overflow-wrap:break-word;min-width:0}.sd-guide__popup__list__item::before{display:block;content:"-";width:6px;color:var(--sd-guide-contents-text-color);font-size:var(--sd-guide-contents-body-font-size);font-weight:var(--sd-guide-contents-body-font-weight);line-height:var(--sd-guide-contents-body-line-height);margin-left:10px;margin-right:12px;flex-shrink:0}.sd-guide__popup__list__item--depth-1:not(:first-child){margin-top:var(--sd-guide-contents-row-gap)}.sd-guide__popup__list__item--depth-2{margin-top:var(--sd-guide-contents-body-gap)}.sd-guide__popup__list__item--depth-2::before{content:"•"}.sd-guide__popup__list__item--depth-2{padding-left:26px}';export{p as sd_guide}
1
+ import{r as t,a as e,h as i}from"./p-JGOJoT-i.js";import{s as d}from"./p-j2khhcHY.js";import{s as o}from"./p-BE4tnQ2Z.js";const{button:n,contents:s}={button:{height:"28",paddingX:"12",radius:"9999",gap:"6",typography:{fontSize:"12",fontWeight:"500",lineHeight:"20"},icon:{default:"#00973C",active:"#FFFFFF"},border:{width:"1",default:"#E1E1E1"},bg:{default:"#FFFFFF",tip:"#00973C",notion:"#1F8AE1"},text:{default:"#222222",active:"#FFFFFF"}},contents:{paddingX:"24",paddingY:"20",gap:"12",title:{gap:"8"},row:{gap:"8"},body:{gap:"2"},typography:{title:{fontWeight:"700",fontSize:"16",lineHeight:"26"},body:{fontWeight:"400",fontSize:"12",lineHeight:"20"},color:"#222222"},icon:"#00973C",radius:"8"}},u=d.color.fg.primary,g={button:{height:`${n.height}px`,paddingX:`${n.paddingX}px`,radius:`${n.radius}px`,gap:`${n.gap}px`,fontSize:`${n.typography.fontSize}px`,fontWeight:n.typography.fontWeight,lineHeight:`${n.typography.lineHeight}px`,iconColorDefault:n.icon.default,iconColorActive:n.icon.active,iconColorNotion:u,borderWidth:`${n.border.width}px`,borderColor:n.border.default,bgDefault:n.bg.default,bgTip:n.bg.tip,bgNotion:n.bg.notion,textDefault:n.text.default,textActive:n.text.active},contents:{paddingX:`${s.paddingX}px`,paddingY:`${s.paddingY}px`,gap:`${s.gap}px`,rowGap:`${s.row.gap}px`,bodyGap:`${s.body.gap}px`,titleGap:`${s.title.gap}px`,radius:`${s.radius}px`,iconColor:s.icon,iconColorNotion:u,titleFontSize:`${s.typography.title.fontSize}px`,titleFontWeight:s.typography.title.fontWeight,titleLineHeight:`${s.typography.title.lineHeight}px`,bodyFontSize:`${s.typography.body.fontSize}px`,bodyFontWeight:s.typography.body.fontWeight,bodyLineHeight:`${s.typography.body.lineHeight}px`,textColor:s.typography.color}},a={tip:"활용 TIP",notion:"사용법 안내"},r={tip:"helpOutline",notion:"notion"},p=class{constructor(e){t(this,e)}get el(){return e(this)}type="tip";label="";message="";url="";popupTitle="";popupWidth;popupShow=!1;guideRef;handleClickGuide=()=>{"notion"!==this.type?this.popupShow=!this.popupShow:""!==this.url&&window.open(this.url,"_blank","noopener,noreferrer")};closeDropdown=()=>{this.popupShow=!1};get guideStyle(){const{button:t,contents:e}=g;return{"--sd-guide-button-height":t.height,"--sd-guide-button-padding-x":t.paddingX,"--sd-guide-button-radius":t.radius,"--sd-guide-button-gap":t.gap,"--sd-guide-button-font-size":t.fontSize,"--sd-guide-button-font-weight":t.fontWeight,"--sd-guide-button-line-height":t.lineHeight,"--sd-guide-button-border-width":t.borderWidth,"--sd-guide-button-border-color":t.borderColor,"--sd-guide-button-bg-default":t.bgDefault,"--sd-guide-button-bg-tip":t.bgTip,"--sd-guide-button-bg-notion":t.bgNotion,"--sd-guide-button-text-default":t.textDefault,"--sd-guide-button-text-active":t.textActive,"--sd-guide-button-icon-color-default":t.iconColorDefault,"--sd-guide-button-icon-color-active":t.iconColorActive,"--sd-guide-button-icon-color-notion":t.iconColorNotion,"--sd-guide-contents-padding-x":e.paddingX,"--sd-guide-contents-padding-y":e.paddingY,"--sd-guide-contents-gap":e.gap,"--sd-guide-contents-row-gap":e.rowGap,"--sd-guide-contents-body-gap":e.bodyGap,"--sd-guide-contents-title-gap":e.titleGap,"--sd-guide-contents-radius":e.radius,"--sd-guide-contents-title-font-size":e.titleFontSize,"--sd-guide-contents-title-font-weight":e.titleFontWeight,"--sd-guide-contents-title-line-height":e.titleLineHeight,"--sd-guide-contents-body-font-size":e.bodyFontSize,"--sd-guide-contents-body-font-weight":e.bodyFontWeight,"--sd-guide-contents-body-line-height":e.bodyLineHeight,"--sd-guide-contents-text-color":e.textColor}}render(){const{contents:t}=g,e=this.popupShow,d=a[this.type??"tip"],o=r[this.type??"tip"],n="notion"===(this.type??"tip")?t.iconColorNotion:t.iconColor,s=["sd-guide__button",`sd-guide__button--type-${this.type??"tip"}`];return e&&s.push("sd-guide__button--active"),i("div",{key:"ea4f220faf6165f7650360f74a19d9f781b81489",class:"sd-guide",style:this.guideStyle},i("sd-button",{key:"c90eaa6cc42a9a2f20b8fc79db16697db0cf2ff2",ref:t=>this.guideRef=t,class:s.join(" "),name:e?"primary_sm":"neutral_outline_sm",label:this.label||d,icon:o,onSdClick:this.handleClickGuide}),this.popupShow&&i("sd-portal",{key:"21f57a739141ffa36f3b799a2688ca5b3c1bd428",open:this.popupShow,parentRef:this.guideRef,onSdClose:this.closeDropdown,offset:[0,4]},i("div",{key:"94e12fa797748a02334b97e13c5012ab95bc2bce",class:"sd-guide__popup",style:{...this.guideStyle,width:null!=this.popupWidth?this.popupWidth+"px":"426px"}},i("sd-ghost-button",{key:"6fc71032016e7a3be0581508ef0ecc6772981185",class:"sd-guide__popup__close",icon:"close",ariaLabel:"close",size:"sm",onSdClick:this.closeDropdown}),i("div",{key:"385c0c18bc888be6a654525dc6f4359a56ad6de9",class:"sd-guide__popup__header"},i("sd-icon",{key:"34624d2ac3397ba15b2dc7ba23dc460a87cb878b",name:o,size:24,color:n}),i("h3",{key:"dd3527ec329698b0fd1ec82f2a7d0cf5865802c2",class:"sd-guide__popup__title"},this.popupTitle||d)),i("ul",{key:"429357d0203acdf31177353ceb45d9ac41fadae7",class:"sd-guide__popup__list"},this.renderListItem(this.message)))))}renderListItem(t,e=0){const i=[];if(Array.isArray(t)){const d=t.map((t=>this.renderListItem(t,e+1)));i.push(...d.flat())}else i.push(this.renderLi(t,e));return i}renderLi=(t,e)=>i("li",{class:`sd-guide__popup__list__item sd-guide__popup__list__item--depth-${e}`},i("p",{innerHTML:o(t)}))};p.style='@charset "UTF-8";sd-guide{display:inline-flex;align-items:center;height:fit-content;width:fit-content}.sd-guide{display:inline-flex;align-items:center;height:fit-content;width:fit-content}.sd-guide .sd-guide__button .sd-button{min-height:var(--sd-guide-button-height);padding:0 var(--sd-guide-button-padding-x);border-radius:var(--sd-guide-button-radius);border:var(--sd-guide-button-border-width) solid var(--sd-guide-button-border-color);background:var(--sd-guide-button-bg-default);color:var(--sd-guide-button-text-default) !important;transition:none;display:flex;align-items:center;gap:var(--sd-guide-button-gap);--sd-button-bg-hover:var(--sd-guide-button-bg-default);--sd-button-current-icon:var(--sd-guide-button-icon-color-default)}.sd-guide .sd-guide__button .sd-button .sd-button__content{color:var(--sd-guide-button-text-default) !important;gap:var(--sd-guide-button-gap)}.sd-guide .sd-guide__button .sd-button .sd-button__content .sd-button__label{margin-left:0;color:var(--sd-guide-button-text-default) !important;font-size:var(--sd-guide-button-font-size);font-weight:var(--sd-guide-button-font-weight);line-height:var(--sd-guide-button-line-height)}.sd-guide .sd-guide__button--type-notion .sd-button{--sd-button-current-icon:var(--sd-guide-button-icon-color-notion)}.sd-guide .sd-guide__button--active .sd-button{color:var(--sd-guide-button-text-active) !important;--sd-button-current-icon:var(--sd-guide-button-icon-color-active)}.sd-guide .sd-guide__button--active .sd-button .sd-button__content{color:var(--sd-guide-button-text-active) !important}.sd-guide .sd-guide__button--active .sd-button .sd-button__content .sd-button__label{color:var(--sd-guide-button-text-active) !important}.sd-guide .sd-guide__button--type-tip.sd-guide__button--active .sd-button{background:var(--sd-guide-button-bg-tip);border-color:var(--sd-guide-button-bg-tip);--sd-button-bg-hover:var(--sd-guide-button-bg-tip)}.sd-guide .sd-guide__button--type-notion.sd-guide__button--active .sd-button{background:var(--sd-guide-button-bg-notion);border-color:var(--sd-guide-button-bg-notion);--sd-button-bg-hover:var(--sd-guide-button-bg-notion)}.sd-guide__popup{position:relative;padding:var(--sd-guide-contents-padding-y) var(--sd-guide-contents-padding-x);border-radius:var(--sd-guide-contents-radius);box-shadow:4px 4px 24px 4px rgba(0, 0, 0, 0.1);background:white}.sd-guide__popup>.sd-guide__popup__close{position:absolute;top:12px;right:12px}.sd-guide__popup__header{display:flex;align-items:center;gap:var(--sd-guide-contents-title-gap);margin-bottom:var(--sd-guide-contents-gap)}.sd-guide__popup__header .sd-guide__popup__title{margin-top:0;margin-bottom:0;font-size:var(--sd-guide-contents-title-font-size);font-weight:var(--sd-guide-contents-title-font-weight);line-height:var(--sd-guide-contents-title-line-height);color:var(--sd-guide-contents-text-color)}.sd-guide__popup__list{width:100%;padding:0;margin:0}.sd-guide__popup__list__item{display:flex;width:100%;align-items:start;list-style:none;color:var(--sd-guide-contents-text-color);font-size:var(--sd-guide-contents-body-font-size);font-weight:var(--sd-guide-contents-body-font-weight);line-height:var(--sd-guide-contents-body-line-height)}.sd-guide__popup__list__item p{width:100%;padding:0;margin:0;word-wrap:break-word;word-break:break-word;white-space:normal;overflow-wrap:break-word;min-width:0}.sd-guide__popup__list__item::before{display:block;content:"-";width:6px;color:var(--sd-guide-contents-text-color);font-size:var(--sd-guide-contents-body-font-size);font-weight:var(--sd-guide-contents-body-font-weight);line-height:var(--sd-guide-contents-body-line-height);margin-left:10px;margin-right:12px;flex-shrink:0}.sd-guide__popup__list__item--depth-1:not(:first-child){margin-top:var(--sd-guide-contents-row-gap)}.sd-guide__popup__list__item--depth-2{margin-top:var(--sd-guide-contents-body-gap)}.sd-guide__popup__list__item--depth-2::before{content:"•"}.sd-guide__popup__list__item--depth-2{padding-left:26px}';export{p as sd_guide}
@@ -1 +1 @@
1
- import{r as t,c as e,a as s,h as i}from"./p-D3yCWQNg.js";import{n as r}from"./p-CCwNgVmC.js";import{c as h,S as o,f as l,i as n,e as c,E as d,L as a,a as u,b as g,d as p}from"./p-DtrsLG0Z.js";import{s as f}from"./p-BE4tnQ2Z.js";const b=class{constructor(s){t(this,s),this.update=e(this,"sdUpdate",7),this.dropDownShow=e(this,"sdDropDownShow",7)}static VIEWPORT_PADDING=20;static PORTAL_OFFSET_Y=4;static CLOSE_ANIMATION_DURATION=150;get el(){return s(this)}type="default";value=null;options=[];placeholder="선택";maxDropdownWidth="640px";dropdownHeight="260px";disabled=!1;label="";labelWidth="";addonLabel="";addonAlign="start";error=!1;hint="";errorMessage="";rules=[];icon=void 0;labelTooltip="";labelTooltipProps=null;emitValue=!1;width="";useSearch=!1;allSelectedLabel="전체";useSelectAll=!1;isOpen=!1;isAnimatingOut=!1;triggerWidth="200px";resolvedDropdownHeight="260px";resolvedMaxDropdownWidth="640px";focused=!1;hovered=!1;update;dropDownShow;async sdFocus(){this.disabled||await(this.triggerComponentRef?.sdFocus())}async sdOpen(){await new Promise((t=>setTimeout(t,0))),this.disabled||this.isOpen||(this.prepareDropdownGeometry(),this.closeAnimationTimer&&clearTimeout(this.closeAnimationTimer),this.isAnimatingOut=!1,this.isOpen=!0)}triggerRef;triggerComponentRef;closeAnimationTimer;name=r();triggerHasFocus=!1;watchIsOpen(t){this.syncFocusedState(t),this.dropDownShow.emit({isOpen:t})}get isMulti(){return"multi"===this.type||"multi_depth"===this.type}get displayText(){if(this.isMulti){if(!Array.isArray(this.value)||0===this.value.length)return"";const t=this.getNonDisabledLeaves(this.options),e=this.getSelectedOptions();if(t.length>0&&t.every((t=>e.some((e=>e.value===t.value)))))return this.allSelectedLabel??"전체";const s=this.flattenOptions(this.options);return this.value.map((t=>{if(null!=t&&"object"==typeof t){const e=t;return e.label??s.find((t=>t.value===e.value))?.label??""}return s.find((e=>e.value===t))?.label??""})).filter(Boolean).join(", ")}if(null==this.value)return"";if(!this.emitValue&&"object"==typeof this.value&&!Array.isArray(this.value))return this.value.label??"";const t=this.flattenOptions(this.options);return t.find((t=>t.value===this.value))?.label??""}flattenOptions(t){return t.flatMap((t=>t.children?this.flattenOptions(t.children):[t]))}getNonDisabledLeaves(t){return t.flatMap((t=>t.disabled?[]:t.children?this.getNonDisabledLeaves(t.children):[t]))}getSelectedOptions(){const t=this.value;return null!=t&&Array.isArray(t)?this.emitValue?t.map((t=>this.findOriginalOption(t,this.options))).filter((t=>!!t)):t:[]}toMultiValue(t){return this.emitValue?t.map((t=>t.value)):t}parsePixelValue(t,e){const s=Number.parseFloat(t);return Number.isFinite(s)?s:e}updateDropdownViewportConstraints(){if(!this.triggerRef)return;const t=this.triggerRef.getBoundingClientRect(),e=b.VIEWPORT_PADDING,s=b.PORTAL_OFFSET_Y,i=this.parsePixelValue(this.dropdownHeight,260),r=this.parsePixelValue(this.maxDropdownWidth,640),h=Math.max(window.innerHeight-t.bottom-e-s,0),o=Math.max(t.top-e-s,0),l=Math.max(h,o),n=Math.max(window.innerWidth-2*e,0);this.resolvedDropdownHeight=`${Math.min(i,l)}px`,this.resolvedMaxDropdownWidth=`${Math.min(r,n)}px`}handleViewportResize=()=>{this.isOpen&&this.updateDropdownViewportConstraints()};findOriginalOption(t,e){for(const s of e){if(s.value===t)return s;if(s.children){const e=this.findOriginalOption(t,s.children);if(e)return e}}}closeDropdown(){this.isOpen&&(this.isOpen=!1,this.isAnimatingOut=!0,this.closeAnimationTimer&&clearTimeout(this.closeAnimationTimer),this.closeAnimationTimer=setTimeout((()=>{this.isAnimatingOut=!1}),b.CLOSE_ANIMATION_DURATION))}prepareDropdownGeometry(){this.triggerRef&&(this.triggerWidth=`${this.triggerRef.offsetWidth}px`),this.updateDropdownViewportConstraints()}syncFocusedState(t=this.isOpen){this.focused=t||this.triggerHasFocus}handleTriggerFocus=()=>{this.triggerHasFocus=!0,this.syncFocusedState()};handleTriggerBlur=()=>{this.triggerHasFocus=!1,this.syncFocusedState()};handleTriggerClick=()=>{this.isOpen?this.closeDropdown():(this.prepareDropdownGeometry(),this.closeAnimationTimer&&clearTimeout(this.closeAnimationTimer),this.isAnimatingOut=!1,this.isOpen=!0)};emitUpdate(t){this.update.emit(t)}handleOptionSelect=t=>{const{option:e,leaves:s}=t;if(this.isMulti)this.handleMultiSelect(e,s);else{this.closeDropdown(),this.value=this.emitValue?e.value:e;const t=this.value;requestAnimationFrame((()=>{this.emitUpdate(t)}))}};handleMultiSelect(t,e){const s=this.getSelectedOptions();let i;if(t.children)if(e.every((t=>s.some((e=>e.value===t.value))))){const t=new Set(e.map((t=>t.value)));i=s.filter((e=>!t.has(e.value)))}else{const t=new Set(s.map((t=>t.value))),r=e.filter((e=>!t.has(e.value)));i=[...s,...r]}else i=s.some((e=>e.value===t.value))?s.filter((e=>e.value!==t.value)):[...s,t];this.value=this.toMultiValue(i),this.emitUpdate(this.value)}connectedCallback(){window.addEventListener("resize",this.handleViewportResize)}disconnectedCallback(){window.removeEventListener("resize",this.handleViewportResize),this.closeAnimationTimer&&clearTimeout(this.closeAnimationTimer)}render(){const t={open:this.isOpen,parentRef:this.triggerRef,viewportPadding:b.VIEWPORT_PADDING,onSdClose:()=>{this.closeDropdown()}};return i("sd-field",{key:"d3c3175067494715963592806a150bebadd8970c",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:()=>{this.hovered=!0},onMouseLeave:()=>{this.hovered=!1}},i("div",{key:"c291b661a968375c341d26ac48f7ff7fd4947e3e",class:"sd-select",ref:t=>{this.triggerRef=t}},i("sd-select-trigger",{key:"45da184f72f989d9c6be05479fec7a616f168ddf",ref:t=>{this.triggerComponentRef=t},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)&&i("sd-portal",{key:"bd7a612cf9ef74e157336a8de0170cebb61074dc",...t},i("sd-select-listbox",{key:"8117fab3ef6b2f5f77e74a234c6b21dfc2549df1",type:this.type,options:this.options,value:this.value,emitValue:this.emitValue,useSearch:this.useSearch,useSelectAll:this.useSelectAll,triggerWidth:this.triggerWidth,maxWidth:this.resolvedMaxDropdownWidth,maxHeight:this.resolvedDropdownHeight,onSdOptionSelect:t=>this.handleOptionSelect(t.detail)})))}static get watchers(){return{isOpen:[{watchIsOpen:0}]}}};b.style="sd-select{display:inline-flex}sd-select sd-portal{display:none}sd-select .sd-select{position:relative;width:100%;height:100%}";const x=class{constructor(s){t(this,s),this.optionSelect=e(this,"sdOptionSelect",7)}type="default";options=[];value=null;emitValue=!1;useSearch=!1;useSelectAll=!1;triggerWidth="200px";maxWidth="640px";maxHeight="260px";searchKeyword="";isScrolled=!1;focusedIndex=-1;optionSelect;listEl;lastScrolledIndex=-1;keydownAttached=!1;suppressHover=!1;get isDepth(){return"default_depth"===this.type||"multi_depth"===this.type}get isMulti(){return"multi"===this.type||"multi_depth"===this.type}static SELECT_ALL_OPTION={value:"__select_all__",label:"전체"};get showSelectAll(){return this.useSelectAll&&this.isMulti&&this.getAllNonDisabledLeaves().length>0}getAllNonDisabledLeaves(){const t=e=>e.flatMap((e=>e.disabled?[]:e.children?t(e.children):[e]));return t(this.options)}get selectAllState(){if(!this.showSelectAll)return!1;const t=this.getAllNonDisabledLeaves();if(0===t.length)return!1;const e=this.getSelectedValues(),s=t.filter((t=>e.has(t.value))).length;return 0!==s&&(s===t.length||null)}get showSearch(){return!!this.useSearch&&(this.isDepth?h(this.options):this.options.length)>=o}get filteredOptions(){if(""===this.searchKeyword)return this.options;if(this.isDepth)return l(this.options,this.searchKeyword);const t=this.searchKeyword.toLowerCase();return this.options.filter((e=>(n(e.label)?c(e.label):e.label).toLowerCase().includes(t)))}get isEmpty(){return this.isDepth?0===h(this.filteredOptions)&&0===this.filteredOptions.length:0===this.filteredOptions.length}getSelectedValues(){return null!=this.value&&Array.isArray(this.value)?this.emitValue?new Set(this.value):new Set(this.value.map((t=>t.value))):new Set}isOptionSelected(t){return this.isMulti?this.getSelectedValues().has(t.value):this.emitValue||null==this.value||"object"!=typeof this.value||Array.isArray(this.value)?this.value===t.value:this.value.value===t.value}getGroupSelectionState(t){if(!this.isMulti||!t.children)return!1;const e=this.getSelectedValues();if(0===e.size)return!1;const s=this.collectVisibleLeaves(t);if(0===s.length)return!1;const i=s.filter((t=>e.has(t.value))).length;return 0!==i&&(i===s.length||null)}getCountInfo(t){if(!this.isMulti||!t.children)return;const e=this.getSelectedValues(),s=this.collectVisibleLeaves(t);return{selected:s.filter((t=>e.has(t.value))).length,total:s.length}}findOriginalOption(t,e){for(const s of e){if(s.value===t)return s;if(s.children){const e=this.findOriginalOption(t,s.children);if(e)return e}}}collectLeaves(t){return t.children?t.children.flatMap((t=>this.collectLeaves(t))):[t]}collectVisibleLeaves(t){if(t.disabled)return[];if(!t.children)return[t];if(0===t.children.length){const e=this.findOriginalOption(t.value,this.options);return e?this.collectLeaves(e).filter((t=>!t.disabled)):[]}return t.children.flatMap((t=>this.collectVisibleLeaves(t)))}get navigableOptions(){const t=[];this.showSelectAll&&t.push(x.SELECT_ALL_OPTION);const e=s=>{for(const i of s){const s=!!i.children;(!s||this.isMulti)&&!i.disabled&&t.push(i),s&&i.children&&i.children.length>0&&e(i.children)}};return e(this.filteredOptions),t}isSelectAllOption(t){return this.showSelectAll&&t.value===x.SELECT_ALL_OPTION.value}emitSelectAll(){if(!this.showSelectAll)return;const t=this.getAllNonDisabledLeaves();this.optionSelect.emit({option:{...x.SELECT_ALL_OPTION,children:t},leaves:t})}handleSelectAllClick=t=>{t.stopPropagation(),this.emitSelectAll()};isOptionFocused(t){if(this.focusedIndex<0)return!1;const e=this.navigableOptions[this.focusedIndex];return null!=e&&e.value===t.value}resetFocusOnFilter(){this.focusedIndex=this.navigableOptions.length>0?0:-1,this.suppressHover&&(document.removeEventListener("mousemove",this.releaseHoverSuppress,!0),this.suppressHover=!1)}handleSearchFilter=t=>{this.searchKeyword=t.detail};handleScroll=t=>{this.isScrolled=t.target.scrollTop>0};emitOptionSelect(t){this.optionSelect.emit({option:t,leaves:this.collectVisibleLeaves(t)})}handleOptionClick=t=>{t.stopPropagation(),this.emitOptionSelect(t.detail)};handleOptionHover=t=>{if(this.suppressHover)return;const e=this.navigableOptions.findIndex((e=>e.value===t.value));e>=0&&(this.focusedIndex=e)};releaseHoverSuppress=()=>{this.suppressHover=!1,document.removeEventListener("mousemove",this.releaseHoverSuppress,!0)};handleKeyDown=t=>{const e=this.navigableOptions;if("ArrowDown"===t.key){if(0===e.length)return;t.preventDefault(),t.stopPropagation(),this.focusedIndex=this.focusedIndex<0?0:(this.focusedIndex+1)%e.length,this.beginHoverSuppression()}else if("ArrowUp"===t.key){if(0===e.length)return;t.preventDefault(),t.stopPropagation(),this.focusedIndex=this.focusedIndex<=0?e.length-1:this.focusedIndex-1,this.beginHoverSuppression()}else if("Enter"===t.key){if(this.focusedIndex<0||this.focusedIndex>=e.length)return;t.preventDefault(),t.stopPropagation();const s=e[this.focusedIndex];this.isSelectAllOption(s)?this.emitSelectAll():this.emitOptionSelect(s)}};beginHoverSuppression(){this.suppressHover||(this.suppressHover=!0,document.addEventListener("mousemove",this.releaseHoverSuppress,!0))}scrollFocusedIntoView(){const t=this.listEl,e=t?.querySelector(".sd-select-list-item--focused");if(!t||!e)return;const s=t.getBoundingClientRect(),i=e.getBoundingClientRect();i.top<s.top?t.scrollTop+=i.top-s.top:i.bottom>s.bottom&&(t.scrollTop+=i.bottom-s.bottom)}connectedCallback(){this.keydownAttached||(document.addEventListener("keydown",this.handleKeyDown,!0),this.keydownAttached=!0)}disconnectedCallback(){this.keydownAttached&&(document.removeEventListener("keydown",this.handleKeyDown,!0),this.keydownAttached=!1),this.suppressHover&&(document.removeEventListener("mousemove",this.releaseHoverSuppress,!0),this.suppressHover=!1)}componentDidRender(){this.focusedIndex!==this.lastScrolledIndex&&(this.lastScrolledIndex=this.focusedIndex,this.focusedIndex>=0&&this.scrollFocusedIntoView())}renderOptions(t,e=1){return t.map((t=>{const s=!!t.children;return[i("sd-select-list-item",{option:t,depth:e,isSelected:s?this.getGroupSelectionState(t):this.isOptionSelected(t),isFocused:this.isOptionFocused(t),useCheckbox:this.isMulti,countInfo:this.getCountInfo(t),onSdListItemClick:this.handleOptionClick,onMouseEnter:()=>this.handleOptionHover(t)}),s&&t.children?this.renderOptions(t.children,e+1):null]}))}render(){return i("div",{key:"6c2cbad13f8aaa8c0552068c7cbc35a147bee77d",class:"sd-select-listbox",style:{"--listbox-trigger-width":this.triggerWidth??"200px","--listbox-max-width":this.maxWidth??"640px","--listbox-max-height":this.maxHeight??"260px","--listbox-radius":`${a.radius}px`}},this.showSearch&&i("sd-select-list-item-search",{key:"052d783e27e2458aa397c77fe891dad4a440f09e",isScrolled:this.isScrolled,onSdSearchFilter:this.handleSearchFilter}),i("div",{key:"bba95f3c4475d01a65562ba079c8666e3325195d",class:"sd-select-listbox__list",onScroll:this.handleScroll,ref:t=>{this.listEl=t}},this.showSelectAll&&i("sd-select-list-item",{key:"2f55bbacbed71952903599db0739773176ac55fd",option:x.SELECT_ALL_OPTION,depth:1,isSelected:this.selectAllState,isFocused:this.isOptionFocused(x.SELECT_ALL_OPTION),useCheckbox:!0,onSdListItemClick:this.handleSelectAllClick,onMouseEnter:()=>this.handleOptionHover(x.SELECT_ALL_OPTION)}),this.isEmpty?i("div",{class:"sd-select-listbox__empty"},d):this.isDepth?this.renderOptions(this.filteredOptions):this.filteredOptions.map((t=>i("sd-select-list-item",{option:t,depth:1,isSelected:this.isOptionSelected(t),isFocused:this.isOptionFocused(t),useCheckbox:this.isMulti,onSdListItemClick:this.handleOptionClick,onMouseEnter:()=>this.handleOptionHover(t)})))))}static get watchers(){return{searchKeyword:[{resetFocusOnFilter:0}]}}};x.style=":host{display:block}:host .sd-select-listbox{display:flex;flex-direction:column;width:var(--listbox-trigger-width);max-width:var(--listbox-max-width);max-height:var(--listbox-max-height);border-radius:var(--listbox-radius);background:white;box-shadow:2px 2px 12px 2px rgba(0, 0, 0, 0.1);overflow:hidden;outline:none}:host .sd-select-listbox__list{flex:1;min-height:0;overflow-y:auto;padding-bottom:0}:host .sd-select-listbox__empty{padding:12px;text-align:center;font-size:12px;line-height:20px;color:#888888}";const m=class{constructor(s){t(this,s),this.triggerClick=e(this,"sdTriggerClick",7),this.triggerFocus=e(this,"sdTriggerFocus",7),this.triggerBlur=e(this,"sdTriggerBlur",7)}displayText="";placeholder="선택";disabled=!1;isOpen=!1;triggerClick;triggerFocus;triggerBlur;triggerEl;async sdFocus(){this.disabled||this.triggerEl?.focus()}handleClick=()=>{this.disabled||this.triggerClick.emit()};handleFocus=()=>{this.triggerFocus.emit()};handleBlur=()=>{this.triggerBlur.emit()};render(){const t=""!==this.displayText;return i("div",{key:"b5a4f750c00889d0d9b985211063fc6b20bc2e38",ref:t=>{this.triggerEl=t},role:"button","aria-haspopup":"listbox","aria-expanded":this.isOpen?"true":"false",tabindex:this.disabled?-1:0,class:{"sd-select-trigger":!0,"sd-select-trigger--open":this.isOpen,"sd-select-trigger--disabled":this.disabled},style:{"--trigger-padding-x":`${p.paddingX}px`,"--trigger-gap":`${p.gap}px`,"--trigger-font-size":`${g.fontSize}px`,"--trigger-line-height":`${g.lineHeight}px`,"--trigger-font-weight":g.fontWeight,"--trigger-color":this.disabled?u.text.disabled:t?u.text.default:u.icon.default,"--trigger-icon-color":this.disabled?u.icon.disabled:u.icon.default},onClick:this.handleClick,onKeyDown:t=>{"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),this.handleClick())},onFocus:this.handleFocus,onBlur:this.handleBlur},i("div",{key:"be0b61c0550618602ef016504fa1672f7520fa93",class:"sd-select-trigger__content"},t&&n(this.displayText)?i("span",{class:"sd-select-trigger__text",ref:t=>t&&(t.innerHTML=f(this.displayText))}):i("span",{class:"sd-select-trigger__text"},t?this.displayText:this.placeholder??"선택"),i("sd-icon",{key:"9d60c3eeae54ce6ed9609534e3530d0349d1a3ff",name:"chevronDown",size:12,color:"var(--trigger-icon-color)",class:{"sd-select-trigger__icon":!0,"sd-select-trigger__icon--open":this.isOpen}})))}};m.style="sd-select-trigger{display:block;width:100%;height:100%}sd-select-trigger .sd-select-trigger{display:flex;width:100%;height:100%;cursor:pointer;user-select:none;overflow:hidden;border-radius:3px}sd-select-trigger .sd-select-trigger--disabled{cursor:not-allowed}sd-select-trigger .sd-select-trigger__content{display:flex;align-items:center;gap:var(--trigger-gap);flex:1;padding:0 var(--trigger-padding-x);min-width:0}sd-select-trigger .sd-select-trigger__text{flex:1;font-size:var(--trigger-font-size);line-height:var(--trigger-line-height);font-weight:var(--trigger-font-weight);color:var(--trigger-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}sd-select-trigger .sd-select-trigger__icon{flex-shrink:0;transition:transform 0.2s ease}sd-select-trigger .sd-select-trigger__icon--open{transform:rotate(180deg)}";export{b as sd_select,x as sd_select_listbox,m as sd_select_trigger}
1
+ import{r as t,c as e,a as s,h as i}from"./p-JGOJoT-i.js";import{n as r}from"./p-CCwNgVmC.js";import{c as h,S as o,f as l,i as n,e as c,E as d,L as a,a as u,b as g,d as p}from"./p-DtrsLG0Z.js";import{s as f}from"./p-BE4tnQ2Z.js";const b=class{constructor(s){t(this,s),this.update=e(this,"sdUpdate",7),this.dropDownShow=e(this,"sdDropDownShow",7)}static VIEWPORT_PADDING=20;static PORTAL_OFFSET_Y=4;static CLOSE_ANIMATION_DURATION=150;get el(){return s(this)}type="default";value=null;options=[];placeholder="선택";maxDropdownWidth="640px";dropdownHeight="260px";disabled=!1;label="";labelWidth="";addonLabel="";addonAlign="start";error=!1;hint="";errorMessage="";rules=[];icon=void 0;labelTooltip="";labelTooltipProps=null;emitValue=!1;width="";useSearch=!1;allSelectedLabel="전체";useSelectAll=!1;isOpen=!1;isAnimatingOut=!1;triggerWidth="200px";resolvedDropdownHeight="260px";resolvedMaxDropdownWidth="640px";focused=!1;hovered=!1;update;dropDownShow;async sdFocus(){this.disabled||await(this.triggerComponentRef?.sdFocus())}async sdOpen(){await new Promise((t=>setTimeout(t,0))),this.disabled||this.isOpen||(this.prepareDropdownGeometry(),this.closeAnimationTimer&&clearTimeout(this.closeAnimationTimer),this.isAnimatingOut=!1,this.isOpen=!0)}triggerRef;triggerComponentRef;closeAnimationTimer;name=r();triggerHasFocus=!1;watchIsOpen(t){this.syncFocusedState(t),this.dropDownShow.emit({isOpen:t})}get isMulti(){return"multi"===this.type||"multi_depth"===this.type}get displayText(){if(this.isMulti){if(!Array.isArray(this.value)||0===this.value.length)return"";const t=this.getNonDisabledLeaves(this.options),e=this.getSelectedOptions();if(t.length>0&&t.every((t=>e.some((e=>e.value===t.value)))))return this.allSelectedLabel??"전체";const s=this.flattenOptions(this.options);return this.value.map((t=>{if(null!=t&&"object"==typeof t){const e=t;return e.label??s.find((t=>t.value===e.value))?.label??""}return s.find((e=>e.value===t))?.label??""})).filter(Boolean).join(", ")}if(null==this.value)return"";if(!this.emitValue&&"object"==typeof this.value&&!Array.isArray(this.value))return this.value.label??"";const t=this.flattenOptions(this.options);return t.find((t=>t.value===this.value))?.label??""}flattenOptions(t){return t.flatMap((t=>t.children?this.flattenOptions(t.children):[t]))}getNonDisabledLeaves(t){return t.flatMap((t=>t.disabled?[]:t.children?this.getNonDisabledLeaves(t.children):[t]))}getSelectedOptions(){const t=this.value;return null!=t&&Array.isArray(t)?this.emitValue?t.map((t=>this.findOriginalOption(t,this.options))).filter((t=>!!t)):t:[]}toMultiValue(t){return this.emitValue?t.map((t=>t.value)):t}parsePixelValue(t,e){const s=Number.parseFloat(t);return Number.isFinite(s)?s:e}updateDropdownViewportConstraints(){if(!this.triggerRef)return;const t=this.triggerRef.getBoundingClientRect(),e=b.VIEWPORT_PADDING,s=b.PORTAL_OFFSET_Y,i=this.parsePixelValue(this.dropdownHeight,260),r=this.parsePixelValue(this.maxDropdownWidth,640),h=Math.max(window.innerHeight-t.bottom-e-s,0),o=Math.max(t.top-e-s,0),l=Math.max(h,o),n=Math.max(window.innerWidth-2*e,0);this.resolvedDropdownHeight=`${Math.min(i,l)}px`,this.resolvedMaxDropdownWidth=`${Math.min(r,n)}px`}handleViewportResize=()=>{this.isOpen&&this.updateDropdownViewportConstraints()};findOriginalOption(t,e){for(const s of e){if(s.value===t)return s;if(s.children){const e=this.findOriginalOption(t,s.children);if(e)return e}}}closeDropdown(){this.isOpen&&(this.isOpen=!1,this.isAnimatingOut=!0,this.closeAnimationTimer&&clearTimeout(this.closeAnimationTimer),this.closeAnimationTimer=setTimeout((()=>{this.isAnimatingOut=!1}),b.CLOSE_ANIMATION_DURATION))}prepareDropdownGeometry(){this.triggerRef&&(this.triggerWidth=`${this.triggerRef.offsetWidth}px`),this.updateDropdownViewportConstraints()}syncFocusedState(t=this.isOpen){this.focused=t||this.triggerHasFocus}handleTriggerFocus=()=>{this.triggerHasFocus=!0,this.syncFocusedState()};handleTriggerBlur=()=>{this.triggerHasFocus=!1,this.syncFocusedState()};handleTriggerClick=()=>{this.isOpen?this.closeDropdown():(this.prepareDropdownGeometry(),this.closeAnimationTimer&&clearTimeout(this.closeAnimationTimer),this.isAnimatingOut=!1,this.isOpen=!0)};emitUpdate(t){this.update.emit(t)}handleOptionSelect=t=>{const{option:e,leaves:s}=t;if(this.isMulti)this.handleMultiSelect(e,s);else{this.closeDropdown(),this.value=this.emitValue?e.value:e;const t=this.value;requestAnimationFrame((()=>{this.emitUpdate(t)}))}};handleMultiSelect(t,e){const s=this.getSelectedOptions();let i;if(t.children)if(e.every((t=>s.some((e=>e.value===t.value))))){const t=new Set(e.map((t=>t.value)));i=s.filter((e=>!t.has(e.value)))}else{const t=new Set(s.map((t=>t.value))),r=e.filter((e=>!t.has(e.value)));i=[...s,...r]}else i=s.some((e=>e.value===t.value))?s.filter((e=>e.value!==t.value)):[...s,t];this.value=this.toMultiValue(i),this.emitUpdate(this.value)}connectedCallback(){window.addEventListener("resize",this.handleViewportResize)}disconnectedCallback(){window.removeEventListener("resize",this.handleViewportResize),this.closeAnimationTimer&&clearTimeout(this.closeAnimationTimer)}render(){const t={open:this.isOpen,parentRef:this.triggerRef,viewportPadding:b.VIEWPORT_PADDING,onSdClose:()=>{this.closeDropdown()}};return i("sd-field",{key:"d3c3175067494715963592806a150bebadd8970c",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:()=>{this.hovered=!0},onMouseLeave:()=>{this.hovered=!1}},i("div",{key:"c291b661a968375c341d26ac48f7ff7fd4947e3e",class:"sd-select",ref:t=>{this.triggerRef=t}},i("sd-select-trigger",{key:"45da184f72f989d9c6be05479fec7a616f168ddf",ref:t=>{this.triggerComponentRef=t},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)&&i("sd-portal",{key:"bd7a612cf9ef74e157336a8de0170cebb61074dc",...t},i("sd-select-listbox",{key:"8117fab3ef6b2f5f77e74a234c6b21dfc2549df1",type:this.type,options:this.options,value:this.value,emitValue:this.emitValue,useSearch:this.useSearch,useSelectAll:this.useSelectAll,triggerWidth:this.triggerWidth,maxWidth:this.resolvedMaxDropdownWidth,maxHeight:this.resolvedDropdownHeight,onSdOptionSelect:t=>this.handleOptionSelect(t.detail)})))}static get watchers(){return{isOpen:[{watchIsOpen:0}]}}};b.style="sd-select{display:inline-flex}sd-select sd-portal{display:none}sd-select .sd-select{position:relative;width:100%;height:100%}";const x=class{constructor(s){t(this,s),this.optionSelect=e(this,"sdOptionSelect",7)}type="default";options=[];value=null;emitValue=!1;useSearch=!1;useSelectAll=!1;triggerWidth="200px";maxWidth="640px";maxHeight="260px";searchKeyword="";isScrolled=!1;focusedIndex=-1;optionSelect;listEl;lastScrolledIndex=-1;keydownAttached=!1;suppressHover=!1;get isDepth(){return"default_depth"===this.type||"multi_depth"===this.type}get isMulti(){return"multi"===this.type||"multi_depth"===this.type}static SELECT_ALL_OPTION={value:"__select_all__",label:"전체"};get showSelectAll(){return this.useSelectAll&&this.isMulti&&this.getAllNonDisabledLeaves().length>0}getAllNonDisabledLeaves(){const t=e=>e.flatMap((e=>e.disabled?[]:e.children?t(e.children):[e]));return t(this.options)}get selectAllState(){if(!this.showSelectAll)return!1;const t=this.getAllNonDisabledLeaves();if(0===t.length)return!1;const e=this.getSelectedValues(),s=t.filter((t=>e.has(t.value))).length;return 0!==s&&(s===t.length||null)}get showSearch(){return!!this.useSearch&&(this.isDepth?h(this.options):this.options.length)>=o}get filteredOptions(){if(""===this.searchKeyword)return this.options;if(this.isDepth)return l(this.options,this.searchKeyword);const t=this.searchKeyword.toLowerCase();return this.options.filter((e=>(n(e.label)?c(e.label):e.label).toLowerCase().includes(t)))}get isEmpty(){return this.isDepth?0===h(this.filteredOptions)&&0===this.filteredOptions.length:0===this.filteredOptions.length}getSelectedValues(){return null!=this.value&&Array.isArray(this.value)?this.emitValue?new Set(this.value):new Set(this.value.map((t=>t.value))):new Set}isOptionSelected(t){return this.isMulti?this.getSelectedValues().has(t.value):this.emitValue||null==this.value||"object"!=typeof this.value||Array.isArray(this.value)?this.value===t.value:this.value.value===t.value}getGroupSelectionState(t){if(!this.isMulti||!t.children)return!1;const e=this.getSelectedValues();if(0===e.size)return!1;const s=this.collectVisibleLeaves(t);if(0===s.length)return!1;const i=s.filter((t=>e.has(t.value))).length;return 0!==i&&(i===s.length||null)}getCountInfo(t){if(!this.isMulti||!t.children)return;const e=this.getSelectedValues(),s=this.collectVisibleLeaves(t);return{selected:s.filter((t=>e.has(t.value))).length,total:s.length}}findOriginalOption(t,e){for(const s of e){if(s.value===t)return s;if(s.children){const e=this.findOriginalOption(t,s.children);if(e)return e}}}collectLeaves(t){return t.children?t.children.flatMap((t=>this.collectLeaves(t))):[t]}collectVisibleLeaves(t){if(t.disabled)return[];if(!t.children)return[t];if(0===t.children.length){const e=this.findOriginalOption(t.value,this.options);return e?this.collectLeaves(e).filter((t=>!t.disabled)):[]}return t.children.flatMap((t=>this.collectVisibleLeaves(t)))}get navigableOptions(){const t=[];this.showSelectAll&&t.push(x.SELECT_ALL_OPTION);const e=s=>{for(const i of s){const s=!!i.children;(!s||this.isMulti)&&!i.disabled&&t.push(i),s&&i.children&&i.children.length>0&&e(i.children)}};return e(this.filteredOptions),t}isSelectAllOption(t){return this.showSelectAll&&t.value===x.SELECT_ALL_OPTION.value}emitSelectAll(){if(!this.showSelectAll)return;const t=this.getAllNonDisabledLeaves();this.optionSelect.emit({option:{...x.SELECT_ALL_OPTION,children:t},leaves:t})}handleSelectAllClick=t=>{t.stopPropagation(),this.emitSelectAll()};isOptionFocused(t){if(this.focusedIndex<0)return!1;const e=this.navigableOptions[this.focusedIndex];return null!=e&&e.value===t.value}resetFocusOnFilter(){this.focusedIndex=this.navigableOptions.length>0?0:-1,this.suppressHover&&(document.removeEventListener("mousemove",this.releaseHoverSuppress,!0),this.suppressHover=!1)}handleSearchFilter=t=>{this.searchKeyword=t.detail};handleScroll=t=>{this.isScrolled=t.target.scrollTop>0};emitOptionSelect(t){this.optionSelect.emit({option:t,leaves:this.collectVisibleLeaves(t)})}handleOptionClick=t=>{t.stopPropagation(),this.emitOptionSelect(t.detail)};handleOptionHover=t=>{if(this.suppressHover)return;const e=this.navigableOptions.findIndex((e=>e.value===t.value));e>=0&&(this.focusedIndex=e)};releaseHoverSuppress=()=>{this.suppressHover=!1,document.removeEventListener("mousemove",this.releaseHoverSuppress,!0)};handleKeyDown=t=>{const e=this.navigableOptions;if("ArrowDown"===t.key){if(0===e.length)return;t.preventDefault(),t.stopPropagation(),this.focusedIndex=this.focusedIndex<0?0:(this.focusedIndex+1)%e.length,this.beginHoverSuppression()}else if("ArrowUp"===t.key){if(0===e.length)return;t.preventDefault(),t.stopPropagation(),this.focusedIndex=this.focusedIndex<=0?e.length-1:this.focusedIndex-1,this.beginHoverSuppression()}else if("Enter"===t.key){if(this.focusedIndex<0||this.focusedIndex>=e.length)return;t.preventDefault(),t.stopPropagation();const s=e[this.focusedIndex];this.isSelectAllOption(s)?this.emitSelectAll():this.emitOptionSelect(s)}};beginHoverSuppression(){this.suppressHover||(this.suppressHover=!0,document.addEventListener("mousemove",this.releaseHoverSuppress,!0))}scrollFocusedIntoView(){const t=this.listEl,e=t?.querySelector(".sd-select-list-item--focused");if(!t||!e)return;const s=t.getBoundingClientRect(),i=e.getBoundingClientRect();i.top<s.top?t.scrollTop+=i.top-s.top:i.bottom>s.bottom&&(t.scrollTop+=i.bottom-s.bottom)}connectedCallback(){this.keydownAttached||(document.addEventListener("keydown",this.handleKeyDown,!0),this.keydownAttached=!0)}disconnectedCallback(){this.keydownAttached&&(document.removeEventListener("keydown",this.handleKeyDown,!0),this.keydownAttached=!1),this.suppressHover&&(document.removeEventListener("mousemove",this.releaseHoverSuppress,!0),this.suppressHover=!1)}componentDidRender(){this.focusedIndex!==this.lastScrolledIndex&&(this.lastScrolledIndex=this.focusedIndex,this.focusedIndex>=0&&this.scrollFocusedIntoView())}renderOptions(t,e=1){return t.map((t=>{const s=!!t.children;return[i("sd-select-list-item",{option:t,depth:e,isSelected:s?this.getGroupSelectionState(t):this.isOptionSelected(t),isFocused:this.isOptionFocused(t),useCheckbox:this.isMulti,countInfo:this.getCountInfo(t),onSdListItemClick:this.handleOptionClick,onMouseEnter:()=>this.handleOptionHover(t)}),s&&t.children?this.renderOptions(t.children,e+1):null]}))}render(){return i("div",{key:"6c2cbad13f8aaa8c0552068c7cbc35a147bee77d",class:"sd-select-listbox",style:{"--listbox-trigger-width":this.triggerWidth??"200px","--listbox-max-width":this.maxWidth??"640px","--listbox-max-height":this.maxHeight??"260px","--listbox-radius":`${a.radius}px`}},this.showSearch&&i("sd-select-list-item-search",{key:"052d783e27e2458aa397c77fe891dad4a440f09e",isScrolled:this.isScrolled,onSdSearchFilter:this.handleSearchFilter}),i("div",{key:"bba95f3c4475d01a65562ba079c8666e3325195d",class:"sd-select-listbox__list",onScroll:this.handleScroll,ref:t=>{this.listEl=t}},this.showSelectAll&&i("sd-select-list-item",{key:"2f55bbacbed71952903599db0739773176ac55fd",option:x.SELECT_ALL_OPTION,depth:1,isSelected:this.selectAllState,isFocused:this.isOptionFocused(x.SELECT_ALL_OPTION),useCheckbox:!0,onSdListItemClick:this.handleSelectAllClick,onMouseEnter:()=>this.handleOptionHover(x.SELECT_ALL_OPTION)}),this.isEmpty?i("div",{class:"sd-select-listbox__empty"},d):this.isDepth?this.renderOptions(this.filteredOptions):this.filteredOptions.map((t=>i("sd-select-list-item",{option:t,depth:1,isSelected:this.isOptionSelected(t),isFocused:this.isOptionFocused(t),useCheckbox:this.isMulti,onSdListItemClick:this.handleOptionClick,onMouseEnter:()=>this.handleOptionHover(t)})))))}static get watchers(){return{searchKeyword:[{resetFocusOnFilter:0}]}}};x.style=":host{display:block}:host .sd-select-listbox{display:flex;flex-direction:column;width:var(--listbox-trigger-width);max-width:var(--listbox-max-width);max-height:var(--listbox-max-height);border-radius:var(--listbox-radius);background:white;box-shadow:2px 2px 12px 2px rgba(0, 0, 0, 0.1);overflow:hidden;outline:none}:host .sd-select-listbox__list{flex:1;min-height:0;overflow-y:auto;padding-bottom:0}:host .sd-select-listbox__empty{padding:12px;text-align:center;font-size:12px;line-height:20px;color:#888888}";const m=class{constructor(s){t(this,s),this.triggerClick=e(this,"sdTriggerClick",7),this.triggerFocus=e(this,"sdTriggerFocus",7),this.triggerBlur=e(this,"sdTriggerBlur",7)}displayText="";placeholder="선택";disabled=!1;isOpen=!1;triggerClick;triggerFocus;triggerBlur;triggerEl;async sdFocus(){this.disabled||this.triggerEl?.focus()}handleClick=()=>{this.disabled||this.triggerClick.emit()};handleFocus=()=>{this.triggerFocus.emit()};handleBlur=()=>{this.triggerBlur.emit()};render(){const t=""!==this.displayText;return i("div",{key:"b5a4f750c00889d0d9b985211063fc6b20bc2e38",ref:t=>{this.triggerEl=t},role:"button","aria-haspopup":"listbox","aria-expanded":this.isOpen?"true":"false",tabindex:this.disabled?-1:0,class:{"sd-select-trigger":!0,"sd-select-trigger--open":this.isOpen,"sd-select-trigger--disabled":this.disabled},style:{"--trigger-padding-x":`${p.paddingX}px`,"--trigger-gap":`${p.gap}px`,"--trigger-font-size":`${g.fontSize}px`,"--trigger-line-height":`${g.lineHeight}px`,"--trigger-font-weight":g.fontWeight,"--trigger-color":this.disabled?u.text.disabled:t?u.text.default:u.icon.default,"--trigger-icon-color":this.disabled?u.icon.disabled:u.icon.default},onClick:this.handleClick,onKeyDown:t=>{"Enter"!==t.key&&" "!==t.key||(t.preventDefault(),this.handleClick())},onFocus:this.handleFocus,onBlur:this.handleBlur},i("div",{key:"be0b61c0550618602ef016504fa1672f7520fa93",class:"sd-select-trigger__content"},t&&n(this.displayText)?i("span",{class:"sd-select-trigger__text",ref:t=>t&&(t.innerHTML=f(this.displayText))}):i("span",{class:"sd-select-trigger__text"},t?this.displayText:this.placeholder??"선택"),i("sd-icon",{key:"9d60c3eeae54ce6ed9609534e3530d0349d1a3ff",name:"chevronDown",size:12,color:"var(--trigger-icon-color)",class:{"sd-select-trigger__icon":!0,"sd-select-trigger__icon--open":this.isOpen}})))}};m.style="sd-select-trigger{display:block;width:100%;height:100%}sd-select-trigger .sd-select-trigger{display:flex;width:100%;height:100%;cursor:pointer;user-select:none;overflow:hidden;border-radius:3px}sd-select-trigger .sd-select-trigger--disabled{cursor:not-allowed}sd-select-trigger .sd-select-trigger__content{display:flex;align-items:center;gap:var(--trigger-gap);flex:1;padding:0 var(--trigger-padding-x);min-width:0}sd-select-trigger .sd-select-trigger__text{flex:1;font-size:var(--trigger-font-size);line-height:var(--trigger-line-height);font-weight:var(--trigger-font-weight);color:var(--trigger-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}sd-select-trigger .sd-select-trigger__icon{flex-shrink:0;transition:transform 0.2s ease}sd-select-trigger .sd-select-trigger__icon--open{transform:rotate(180deg)}";export{b as sd_select,x as sd_select_listbox,m as sd_select_trigger}
@@ -1 +1 @@
1
- import{r as i,c as t,a as s,h as e}from"./p-D3yCWQNg.js";import{C as h,a as n,b as d}from"./p-DDj5KTBF.js";const o=class{constructor(s){i(this,s),this.update=t(this,"sdUpdate",7),this.delete=t(this,"sdRemove",7),this.focus=t(this,"sdFocus",7),this.blur=t(this,"sdBlur",7)}get el(){return s(this)}name="";value="";error=!1;disabled=!1;placeholder="";rules=[];internalValue="";isEditing=!1;update;delete;focus;blur;inputEl;draftValue="";shouldInitInput=!1;valueChanged(i){const t=i??"",s=this.isEditing;this.internalValue=t,this.draftValue=t,s&&(this.isEditing=!1,this.shouldInitInput=!1,this.inputEl?.blur(),this.blur.emit())}componentWillLoad(){this.internalValue=this.value??""}componentDidLoad(){this.registerToForm()}disconnectedCallback(){this.unregisterFromForm()}async sdValidate(){if(!this.rules||0===this.rules.length)return this.error=!1,!0;for(const i of this.rules)if(!0!==i(this.internalValue??""))return this.error=!0,!1;return this.error=!1,!0}async sdReset(){this.internalValue="",this.value="",this.error=!1,this.draftValue="",this.isEditing=!1,this.shouldInitInput=!1}async sdResetValidate(){this.error=!1}async sdResetValidation(){this.error=!1}async sdFocus(){this.disabled||this.enterEditMode()}async sdGetNativeElement(){return this.inputEl??null}enterEditMode=()=>{this.disabled||this.isEditing||(this.draftValue=this.internalValue,this.shouldInitInput=!0,this.isEditing=!0,this.focus.emit())};commitEdit=async()=>{if(!this.isEditing)return;const i=(this.inputEl?.textContent??this.draftValue).trim(),t=i!==this.draftValue;this.internalValue=i,this.isEditing=!1,this.shouldInitInput=!1,this.value=i,t&&this.update.emit(i),await this.sdValidate(),this.blur.emit()};cancelEdit=()=>{this.isEditing&&(this.internalValue=this.draftValue,this.isEditing=!1,this.shouldInitInput=!1,this.blur.emit())};handleChipClick=()=>{this.disabled||this.isEditing||this.enterEditMode()};handleChipKeyDown=i=>{this.disabled||this.isEditing||"Enter"!==i.key&&" "!==i.key||(i.preventDefault(),this.enterEditMode())};handleInputChange=i=>{this.internalValue=i.target.textContent??""};handleInputKeyDown=i=>{"Enter"===i.key?(i.preventDefault(),i.stopPropagation(),this.commitEdit()):"Escape"===i.key&&(i.preventDefault(),i.stopPropagation(),this.cancelEdit())};handleInputBlur=()=>{this.commitEdit()};handlePaste=i=>{i.preventDefault();const t=i.clipboardData?.getData("text/plain")??"";document.execCommand("insertText",!1,t)};handleRemoveClick=i=>{i.stopPropagation(),this.disabled||this.delete.emit()};syncInputValue(i){if(!this.inputEl)return;this.inputEl.textContent=i;const t=document.createRange();t.selectNodeContents(this.inputEl),t.collapse(!1);const s=window.getSelection();s?.removeAllRanges(),s?.addRange(t)}registerToForm(){const i=this.el.closest("sd-form");i&&"function"==typeof i.componentOnReady&&i.componentOnReady().then((i=>{i.sdRegisterField(this)}))}unregisterFromForm(){if(""===this.name)return;const i=this.el.closest("sd-form");i?.componentOnReady().then((i=>{i.sdUnregisterField(this)}))}componentDidUpdate(){this.isEditing&&this.inputEl&&this.shouldInitInput&&(this.inputEl.focus(),this.syncInputValue(this.internalValue),this.shouldInitInput=!1)}resolveState(){return this.isEditing?"focus":this.error?"error":"default"}render(){const i=this.resolveState(),t=h.default,s={"--sd-chip-height":d.height,"--sd-chip-padding-x":d.paddingX,"--sd-chip-gap":d.gap,"--sd-chip-radius":d.radius,"--sd-chip-border-width":d.borderWidth,"--sd-chip-bg":"error"===i?n.bg.error:n.bg.default,"--sd-chip-content":"error"===i?n.content.error:n.content.default,"--sd-chip-border-color":"transparent","--sd-chip-font-family":t.fontFamily,"--sd-chip-font-size":t.fontSize,"--sd-chip-font-weight":t.fontWeight,"--sd-chip-line-height":t.lineHeight};return e("span",{key:"e1c1386f3143f4830256784853c1d931706a6beb",class:{"sd-chip":!0,[`sd-chip--${i}`]:!0,"sd-chip--disabled":this.disabled,"sd-chip--editable":!this.disabled},role:this.disabled?void 0:"button",tabIndex:this.disabled||this.isEditing?-1:0,"aria-disabled":this.disabled?"true":void 0,style:s,onClick:this.handleChipClick,onKeyDown:this.handleChipKeyDown},this.isEditing?e("span",{key:"chip-input",ref:i=>this.inputEl=i,class:"sd-chip__input",role:"textbox",tabindex:this.disabled?-1:0,contentEditable:!this.disabled,"data-placeholder":this.placeholder,spellcheck:!1,onInput:this.handleInputChange,onKeyDown:this.handleInputKeyDown,onBlur:this.handleInputBlur,onPaste:this.handlePaste,onClick:i=>i.stopPropagation()}):[e("span",{key:"chip-label",class:"sd-chip__label"},this.internalValue),!this.disabled&&e("sd-ghost-button",{key:"chip-remove",class:"sd-chip__remove",icon:"close",size:"xxs",ariaLabel:"remove",onClick:this.handleRemoveClick})])}static get watchers(){return{value:[{valueChanged:0}]}}};o.style="sd-chip{display:inline-flex;width:fit-content;max-width:100%;height:fit-content}sd-chip .sd-chip{display:inline-flex;align-items:center;justify-content:center;gap:var(--sd-chip-gap);max-width:100%;height:var(--sd-chip-height);padding:0 var(--sd-chip-padding-x);border-radius:var(--sd-chip-radius);background:var(--sd-chip-bg);color:var(--sd-chip-content);border:var(--sd-chip-border-width) solid var(--sd-chip-border-color);font-family:var(--sd-chip-font-family);font-size:var(--sd-chip-font-size);font-weight:var(--sd-chip-font-weight);line-height:var(--sd-chip-line-height);box-sizing:border-box;white-space:nowrap;overflow:hidden;-webkit-user-select:none;user-select:none}sd-chip .sd-chip--editable:not(.sd-chip--focus){cursor:text}sd-chip .sd-chip--disabled{cursor:not-allowed;opacity:0.6}sd-chip .sd-chip__label{display:inline-flex;align-items:center;min-width:0;overflow:hidden;text-overflow:ellipsis}sd-chip .sd-chip__input{display:inline-block;min-width:1ch;outline:none;background:transparent;color:inherit;font:inherit;white-space:nowrap;cursor:text}sd-chip .sd-chip__input:empty::before{content:attr(data-placeholder);color:inherit;opacity:0.6;pointer-events:none}sd-chip .sd-chip__remove{flex-shrink:0}";export{o as sd_chip}
1
+ import{r as i,c as t,a as s,h as e}from"./p-JGOJoT-i.js";import{C as h,a as n,b as d}from"./p-DDj5KTBF.js";const o=class{constructor(s){i(this,s),this.update=t(this,"sdUpdate",7),this.delete=t(this,"sdRemove",7),this.focus=t(this,"sdFocus",7),this.blur=t(this,"sdBlur",7)}get el(){return s(this)}name="";value="";error=!1;disabled=!1;placeholder="";rules=[];internalValue="";isEditing=!1;update;delete;focus;blur;inputEl;draftValue="";shouldInitInput=!1;valueChanged(i){const t=i??"",s=this.isEditing;this.internalValue=t,this.draftValue=t,s&&(this.isEditing=!1,this.shouldInitInput=!1,this.inputEl?.blur(),this.blur.emit())}componentWillLoad(){this.internalValue=this.value??""}componentDidLoad(){this.registerToForm()}disconnectedCallback(){this.unregisterFromForm()}async sdValidate(){if(!this.rules||0===this.rules.length)return this.error=!1,!0;for(const i of this.rules)if(!0!==i(this.internalValue??""))return this.error=!0,!1;return this.error=!1,!0}async sdReset(){this.internalValue="",this.value="",this.error=!1,this.draftValue="",this.isEditing=!1,this.shouldInitInput=!1}async sdResetValidate(){this.error=!1}async sdResetValidation(){this.error=!1}async sdFocus(){this.disabled||this.enterEditMode()}async sdGetNativeElement(){return this.inputEl??null}enterEditMode=()=>{this.disabled||this.isEditing||(this.draftValue=this.internalValue,this.shouldInitInput=!0,this.isEditing=!0,this.focus.emit())};commitEdit=async()=>{if(!this.isEditing)return;const i=(this.inputEl?.textContent??this.draftValue).trim(),t=i!==this.draftValue;this.internalValue=i,this.isEditing=!1,this.shouldInitInput=!1,this.value=i,t&&this.update.emit(i),await this.sdValidate(),this.blur.emit()};cancelEdit=()=>{this.isEditing&&(this.internalValue=this.draftValue,this.isEditing=!1,this.shouldInitInput=!1,this.blur.emit())};handleChipClick=()=>{this.disabled||this.isEditing||this.enterEditMode()};handleChipKeyDown=i=>{this.disabled||this.isEditing||"Enter"!==i.key&&" "!==i.key||(i.preventDefault(),this.enterEditMode())};handleInputChange=i=>{this.internalValue=i.target.textContent??""};handleInputKeyDown=i=>{"Enter"===i.key?(i.preventDefault(),i.stopPropagation(),this.commitEdit()):"Escape"===i.key&&(i.preventDefault(),i.stopPropagation(),this.cancelEdit())};handleInputBlur=()=>{this.commitEdit()};handlePaste=i=>{i.preventDefault();const t=i.clipboardData?.getData("text/plain")??"";document.execCommand("insertText",!1,t)};handleRemoveClick=i=>{i.stopPropagation(),this.disabled||this.delete.emit()};syncInputValue(i){if(!this.inputEl)return;this.inputEl.textContent=i;const t=document.createRange();t.selectNodeContents(this.inputEl),t.collapse(!1);const s=window.getSelection();s?.removeAllRanges(),s?.addRange(t)}registerToForm(){const i=this.el.closest("sd-form");i&&"function"==typeof i.componentOnReady&&i.componentOnReady().then((i=>{i.sdRegisterField(this)}))}unregisterFromForm(){if(""===this.name)return;const i=this.el.closest("sd-form");i?.componentOnReady().then((i=>{i.sdUnregisterField(this)}))}componentDidUpdate(){this.isEditing&&this.inputEl&&this.shouldInitInput&&(this.inputEl.focus(),this.syncInputValue(this.internalValue),this.shouldInitInput=!1)}resolveState(){return this.isEditing?"focus":this.error?"error":"default"}render(){const i=this.resolveState(),t=h.default,s={"--sd-chip-height":d.height,"--sd-chip-padding-x":d.paddingX,"--sd-chip-gap":d.gap,"--sd-chip-radius":d.radius,"--sd-chip-border-width":d.borderWidth,"--sd-chip-bg":"error"===i?n.bg.error:n.bg.default,"--sd-chip-content":"error"===i?n.content.error:n.content.default,"--sd-chip-border-color":"transparent","--sd-chip-font-family":t.fontFamily,"--sd-chip-font-size":t.fontSize,"--sd-chip-font-weight":t.fontWeight,"--sd-chip-line-height":t.lineHeight};return e("span",{key:"e1c1386f3143f4830256784853c1d931706a6beb",class:{"sd-chip":!0,[`sd-chip--${i}`]:!0,"sd-chip--disabled":this.disabled,"sd-chip--editable":!this.disabled},role:this.disabled?void 0:"button",tabIndex:this.disabled||this.isEditing?-1:0,"aria-disabled":this.disabled?"true":void 0,style:s,onClick:this.handleChipClick,onKeyDown:this.handleChipKeyDown},this.isEditing?e("span",{key:"chip-input",ref:i=>this.inputEl=i,class:"sd-chip__input",role:"textbox",tabindex:this.disabled?-1:0,contentEditable:!this.disabled,"data-placeholder":this.placeholder,spellcheck:!1,onInput:this.handleInputChange,onKeyDown:this.handleInputKeyDown,onBlur:this.handleInputBlur,onPaste:this.handlePaste,onClick:i=>i.stopPropagation()}):[e("span",{key:"chip-label",class:"sd-chip__label"},this.internalValue),!this.disabled&&e("sd-ghost-button",{key:"chip-remove",class:"sd-chip__remove",icon:"close",size:"xxs",ariaLabel:"remove",onClick:this.handleRemoveClick})])}static get watchers(){return{value:[{valueChanged:0}]}}};o.style="sd-chip{display:inline-flex;width:fit-content;max-width:100%;height:fit-content}sd-chip .sd-chip{display:inline-flex;align-items:center;justify-content:center;gap:var(--sd-chip-gap);max-width:100%;height:var(--sd-chip-height);padding:0 var(--sd-chip-padding-x);border-radius:var(--sd-chip-radius);background:var(--sd-chip-bg);color:var(--sd-chip-content);border:var(--sd-chip-border-width) solid var(--sd-chip-border-color);font-family:var(--sd-chip-font-family);font-size:var(--sd-chip-font-size);font-weight:var(--sd-chip-font-weight);line-height:var(--sd-chip-line-height);box-sizing:border-box;white-space:nowrap;overflow:hidden;-webkit-user-select:none;user-select:none}sd-chip .sd-chip--editable:not(.sd-chip--focus){cursor:text}sd-chip .sd-chip--disabled{cursor:not-allowed;opacity:0.6}sd-chip .sd-chip__label{display:inline-flex;align-items:center;min-width:0;overflow:hidden;text-overflow:ellipsis}sd-chip .sd-chip__input{display:inline-block;min-width:1ch;outline:none;background:transparent;color:inherit;font:inherit;white-space:nowrap;cursor:text}sd-chip .sd-chip__input:empty::before{content:attr(data-placeholder);color:inherit;opacity:0.6;pointer-events:none}sd-chip .sd-chip__remove{flex-shrink:0}";export{o as sd_chip}
@@ -1 +1 @@
1
- import{r as e,h as r,H as s}from"./p-D3yCWQNg.js";import{p as c}from"./p-D1vaasIp.js";import{s as a}from"./p-j2khhcHY.js";var t={track:"#EEEEEE",arc:"#2D8DFF"};const o=c.progress.color.label,i=a.color.fg.tertiary,l={primary:{arc:t.arc,track:t.track},inverse:{arc:"#FFFFFF",track:"transparent"},error:{arc:"#E30000",track:t.track},complete:{arc:"#01BB4B",track:t.track}},n=2*Math.PI*34,p=class{constructor(r){e(this,r)}indeterminate=!1;value=0;type="primary";label;get clampedValue(){return Number.isFinite(this.value)?Math.max(0,Math.min(100,this.value)):0}render(){const e=l[this.type]??l.primary,c={"--sd-circle-progress-track":e.track,"--sd-circle-progress-arc":e.arc,"--sd-circle-progress-label-color":o,"--sd-circle-progress-percent-color":0===this.clampedValue?i:e.arc},a={};this.indeterminate||(a.strokeDasharray=`${this.clampedValue/100*n} ${n}`,a.strokeDashoffset="0");const t=!this.indeterminate;return r(s,{key:"46d74c0edb5a5e8cd0472c83efc45a0efaf353b4",style:c},r("svg",{key:"34117c89eb180370a215807e614ad08f4f72b517",class:"sd-circle-progress",viewBox:"0 0 80 80",xmlns:"http://www.w3.org/2000/svg"},r("circle",{key:"08ac6f011b6a4b6744ddcf437b1e0a5b96abfc6e",class:"sd-circle-progress__track",cx:40,cy:40,r:34,fill:"none","stroke-width":12}),r("circle",{key:"5ae0a53ce10bd5a8b2f316ebd00d3ee28c4336d6",class:"sd-circle-progress__arc",cx:40,cy:40,r:34,fill:"none","stroke-width":12,"stroke-linecap":"round",style:a})),t&&r("span",{key:"fd52ee1947d41b2117c9ea6e4cc9a448799342e3",class:"sd-circle-progress__percent"},Math.round(this.clampedValue),"%"),this.label&&r("span",{key:"a58776c4ef67eb900eba97ff4fed138c8f5e8452",class:"sd-circle-progress__label"},this.label))}};p.style='@charset "UTF-8";sd-circle-progress{display:inline-flex;flex-direction:column;align-items:center;gap:8px}sd-circle-progress .sd-circle-progress{width:80px;height:80px}sd-circle-progress .sd-circle-progress__track{stroke:var(--sd-circle-progress-track)}sd-circle-progress .sd-circle-progress__arc{stroke:var(--sd-circle-progress-arc);transform:rotate(-90deg);transform-origin:center center;transition:stroke-dasharray 0.4s linear, stroke-dashoffset 0.4s linear}sd-circle-progress .sd-circle-progress__percent{text-align:center;color:var(--sd-circle-progress-percent-color);font-family:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", sans-serif;font-size:16px;font-weight:700;line-height:26px}sd-circle-progress .sd-circle-progress__label{text-align:center;color:var(--sd-circle-progress-label-color);font-family:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", sans-serif;font-size:12px;font-weight:400;line-height:20px}sd-circle-progress{}sd-circle-progress[indeterminate] .sd-circle-progress{animation:sd-circle-progress-spin 2s linear infinite;transform-origin:center center}sd-circle-progress[indeterminate] .sd-circle-progress__arc{transform:none;transition:none;animation:sd-circle-progress-spin-path 1.5s ease-in-out infinite}@keyframes sd-circle-progress-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes sd-circle-progress-spin-path{0%{stroke-dasharray:1, 340;stroke-dashoffset:0}50%{stroke-dasharray:151, 340;stroke-dashoffset:-60}100%{stroke-dasharray:151, 340;stroke-dashoffset:-211}}';export{p as sd_circle_progress}
1
+ import{r as e,h as r,H as s}from"./p-JGOJoT-i.js";import{p as c}from"./p-D1vaasIp.js";import{s as a}from"./p-j2khhcHY.js";var t={track:"#EEEEEE",arc:"#2D8DFF"};const o=c.progress.color.label,i=a.color.fg.tertiary,l={primary:{arc:t.arc,track:t.track},inverse:{arc:"#FFFFFF",track:"transparent"},error:{arc:"#E30000",track:t.track},complete:{arc:"#01BB4B",track:t.track}},n=2*Math.PI*34,p=class{constructor(r){e(this,r)}indeterminate=!1;value=0;type="primary";label;get clampedValue(){return Number.isFinite(this.value)?Math.max(0,Math.min(100,this.value)):0}render(){const e=l[this.type]??l.primary,c={"--sd-circle-progress-track":e.track,"--sd-circle-progress-arc":e.arc,"--sd-circle-progress-label-color":o,"--sd-circle-progress-percent-color":0===this.clampedValue?i:e.arc},a={};this.indeterminate||(a.strokeDasharray=`${this.clampedValue/100*n} ${n}`,a.strokeDashoffset="0");const t=!this.indeterminate;return r(s,{key:"46d74c0edb5a5e8cd0472c83efc45a0efaf353b4",style:c},r("svg",{key:"34117c89eb180370a215807e614ad08f4f72b517",class:"sd-circle-progress",viewBox:"0 0 80 80",xmlns:"http://www.w3.org/2000/svg"},r("circle",{key:"08ac6f011b6a4b6744ddcf437b1e0a5b96abfc6e",class:"sd-circle-progress__track",cx:40,cy:40,r:34,fill:"none","stroke-width":12}),r("circle",{key:"5ae0a53ce10bd5a8b2f316ebd00d3ee28c4336d6",class:"sd-circle-progress__arc",cx:40,cy:40,r:34,fill:"none","stroke-width":12,"stroke-linecap":"round",style:a})),t&&r("span",{key:"fd52ee1947d41b2117c9ea6e4cc9a448799342e3",class:"sd-circle-progress__percent"},Math.round(this.clampedValue),"%"),this.label&&r("span",{key:"a58776c4ef67eb900eba97ff4fed138c8f5e8452",class:"sd-circle-progress__label"},this.label))}};p.style='@charset "UTF-8";sd-circle-progress{display:inline-flex;flex-direction:column;align-items:center;gap:8px}sd-circle-progress .sd-circle-progress{width:80px;height:80px}sd-circle-progress .sd-circle-progress__track{stroke:var(--sd-circle-progress-track)}sd-circle-progress .sd-circle-progress__arc{stroke:var(--sd-circle-progress-arc);transform:rotate(-90deg);transform-origin:center center;transition:stroke-dasharray 0.4s linear, stroke-dashoffset 0.4s linear}sd-circle-progress .sd-circle-progress__percent{text-align:center;color:var(--sd-circle-progress-percent-color);font-family:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", sans-serif;font-size:16px;font-weight:700;line-height:26px}sd-circle-progress .sd-circle-progress__label{text-align:center;color:var(--sd-circle-progress-label-color);font-family:"Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", sans-serif;font-size:12px;font-weight:400;line-height:20px}sd-circle-progress{}sd-circle-progress[indeterminate] .sd-circle-progress{animation:sd-circle-progress-spin 2s linear infinite;transform-origin:center center}sd-circle-progress[indeterminate] .sd-circle-progress__arc{transform:none;transition:none;animation:sd-circle-progress-spin-path 1.5s ease-in-out infinite}@keyframes sd-circle-progress-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}@keyframes sd-circle-progress-spin-path{0%{stroke-dasharray:1, 340;stroke-dashoffset:0}50%{stroke-dasharray:151, 340;stroke-dashoffset:-60}100%{stroke-dasharray:151, 340;stroke-dashoffset:-211}}';export{p as sd_circle_progress}
@@ -1 +1 @@
1
- import{r as p,c as e,h as o}from"./p-D3yCWQNg.js";import{s as d}from"./p-j2khhcHY.js";const{popup:t}={popup:{header:{bg:{default:"#07284A",inverse:"#FFFFFF"},title:{default:"#FFFFFF",inverse:"#004290"},typography:{fontFamily:"Pretendard Variable, Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Segoe UI, Apple SD Gothic Neo, Noto Sans KR, Malgun Gothic, Apple Color Emoji, Segoe UI Emoji, sans-serif",fontWeight:"700",fontSize:"18",lineHeight:"30"}},footer:{bg:"#FFFFFF",paddingX:"20",paddingY:"8",gap:"16"},bg:"#EEEEEE"}},s=d.shadow.spread.md,a={bodyBg:t.bg},i={bg:{default:t.header.bg.default,light:t.header.bg.inverse},titleColor:{default:t.header.title.default,light:t.header.title.inverse},fontFamily:t.header.typography.fontFamily,fontWeight:t.header.typography.fontWeight,fontSize:Number(t.header.typography.fontSize),lineHeight:Number(t.header.typography.lineHeight),height:50,paddingX:16,paddingY:10},r={bg:t.footer.bg,paddingX:Number(t.footer.paddingX),paddingY:Number(t.footer.paddingY),gap:Number(t.footer.gap),height:52,slotHeight:36,shadow:`${s.x}px ${s.y}px ${s.blur}px ${s.spread}px ${s.color}`},u={name:"primary_md",label:"확인"},h=class{constructor(o){p(this,o),this.submit=e(this,"sdSubmit",7)}popupTitle="";type="default";useFooter=!0;submitButtonProps;submit;render(){const p={...u,...this.submitButtonProps};return o("div",{key:"ea933af50e1ad1a29cf8d73ce70222e2f44c0bb5",class:`sd-popup sd-popup--${this.type}`,style:{"--sd-popup-bg":a.bodyBg,"--sd-popup-header-bg":i.bg[this.type],"--sd-popup-header-title-color":i.titleColor[this.type],"--sd-popup-header-font-family":i.fontFamily,"--sd-popup-header-font-weight":i.fontWeight,"--sd-popup-header-font-size":`${i.fontSize}px`,"--sd-popup-header-line-height":`${i.lineHeight}px`,"--sd-popup-header-height":`${i.height}px`,"--sd-popup-header-padding-x":`${i.paddingX}px`,"--sd-popup-header-padding-y":`${i.paddingY}px`,"--sd-popup-footer-bg":r.bg,"--sd-popup-footer-padding-x":`${r.paddingX}px`,"--sd-popup-footer-padding-y":`${r.paddingY}px`,"--sd-popup-footer-gap":`${r.gap}px`,"--sd-popup-footer-height":`${r.height}px`,"--sd-popup-footer-slot-height":`${r.slotHeight}px`,"--sd-popup-footer-shadow":r.shadow}},o("header",{key:"50f1773d911175182888a98a0759b8d3d8829d2f",class:"sd-popup__header"},o("h2",{key:"4e21a73a6e26388c6b1c814a91ee8a79bf57c576",class:"sd-popup__title"},this.popupTitle)),o("div",{key:"dd6ace33c6d8b3e20c0c85c95580efbf8ad6747c",class:"sd-popup__body"},o("slot",{key:"e40fbea5b93016131df544f32b74676d2892204e"})),this.useFooter&&o("footer",{key:"96b27f465a804859a15e9105fcd64c7205bc2143",class:"sd-popup__footer"},o("div",{key:"6715ba330610850ea235ddde5f2da00584204286",class:"sd-popup__footer-slot sd-popup__footer-slot--left"},o("slot",{key:"092aca3ad212b7218ce4ba247b78b7b45d9e4299",name:"footer-left"})),o("sd-button",{key:"290cd49879cc4868be69ceb60567eab57b5f26fe",...p,class:"sd-popup__submit",onSdClick:()=>this.submit.emit()})))}};h.style="sd-popup{display:block;width:100%;height:100%}sd-popup .sd-popup{display:flex;flex-direction:column;width:100%;height:100%;background:var(--sd-popup-bg);overflow:hidden;box-sizing:border-box}sd-popup .sd-popup__header{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:100%;height:var(--sd-popup-header-height);padding:var(--sd-popup-header-padding-y) var(--sd-popup-header-padding-x);background:var(--sd-popup-header-bg);box-sizing:border-box}sd-popup .sd-popup__title{margin:0;color:var(--sd-popup-header-title-color);font-family:var(--sd-popup-header-font-family);font-weight:var(--sd-popup-header-font-weight);font-size:var(--sd-popup-header-font-size);line-height:var(--sd-popup-header-line-height);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}sd-popup .sd-popup__body{flex:1 1 auto;min-height:0;overflow:auto}sd-popup .sd-popup__footer{display:flex;align-items:center;flex-shrink:0;width:100%;height:var(--sd-popup-footer-height);padding:var(--sd-popup-footer-padding-y) var(--sd-popup-footer-padding-x);gap:var(--sd-popup-footer-gap);background:var(--sd-popup-footer-bg);box-shadow:var(--sd-popup-footer-shadow);box-sizing:border-box;position:relative;z-index:1}sd-popup .sd-popup__footer-slot{display:flex;align-items:center;height:var(--sd-popup-footer-slot-height)}sd-popup .sd-popup__footer-slot--left{justify-content:flex-start;flex:1 1 auto;min-width:0}sd-popup .sd-popup__footer-slot:empty{display:none}sd-popup .sd-popup__submit{flex-shrink:0;margin-left:auto}";export{h as sd_popup}
1
+ import{r as p,c as e,h as o}from"./p-JGOJoT-i.js";import{s as d}from"./p-j2khhcHY.js";const{popup:t}={popup:{header:{bg:{default:"#07284A",inverse:"#FFFFFF"},title:{default:"#FFFFFF",inverse:"#004290"},typography:{fontFamily:"Pretendard Variable, Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Segoe UI, Apple SD Gothic Neo, Noto Sans KR, Malgun Gothic, Apple Color Emoji, Segoe UI Emoji, sans-serif",fontWeight:"700",fontSize:"18",lineHeight:"30"}},footer:{bg:"#FFFFFF",paddingX:"20",paddingY:"8",gap:"16"},bg:"#EEEEEE"}},s=d.shadow.spread.md,a={bodyBg:t.bg},i={bg:{default:t.header.bg.default,light:t.header.bg.inverse},titleColor:{default:t.header.title.default,light:t.header.title.inverse},fontFamily:t.header.typography.fontFamily,fontWeight:t.header.typography.fontWeight,fontSize:Number(t.header.typography.fontSize),lineHeight:Number(t.header.typography.lineHeight),height:50,paddingX:16,paddingY:10},r={bg:t.footer.bg,paddingX:Number(t.footer.paddingX),paddingY:Number(t.footer.paddingY),gap:Number(t.footer.gap),height:52,slotHeight:36,shadow:`${s.x}px ${s.y}px ${s.blur}px ${s.spread}px ${s.color}`},u={name:"primary_md",label:"확인"},h=class{constructor(o){p(this,o),this.submit=e(this,"sdSubmit",7)}popupTitle="";type="default";useFooter=!0;submitButtonProps;submit;render(){const p={...u,...this.submitButtonProps};return o("div",{key:"ea933af50e1ad1a29cf8d73ce70222e2f44c0bb5",class:`sd-popup sd-popup--${this.type}`,style:{"--sd-popup-bg":a.bodyBg,"--sd-popup-header-bg":i.bg[this.type],"--sd-popup-header-title-color":i.titleColor[this.type],"--sd-popup-header-font-family":i.fontFamily,"--sd-popup-header-font-weight":i.fontWeight,"--sd-popup-header-font-size":`${i.fontSize}px`,"--sd-popup-header-line-height":`${i.lineHeight}px`,"--sd-popup-header-height":`${i.height}px`,"--sd-popup-header-padding-x":`${i.paddingX}px`,"--sd-popup-header-padding-y":`${i.paddingY}px`,"--sd-popup-footer-bg":r.bg,"--sd-popup-footer-padding-x":`${r.paddingX}px`,"--sd-popup-footer-padding-y":`${r.paddingY}px`,"--sd-popup-footer-gap":`${r.gap}px`,"--sd-popup-footer-height":`${r.height}px`,"--sd-popup-footer-slot-height":`${r.slotHeight}px`,"--sd-popup-footer-shadow":r.shadow}},o("header",{key:"50f1773d911175182888a98a0759b8d3d8829d2f",class:"sd-popup__header"},o("h2",{key:"4e21a73a6e26388c6b1c814a91ee8a79bf57c576",class:"sd-popup__title"},this.popupTitle)),o("div",{key:"dd6ace33c6d8b3e20c0c85c95580efbf8ad6747c",class:"sd-popup__body"},o("slot",{key:"e40fbea5b93016131df544f32b74676d2892204e"})),this.useFooter&&o("footer",{key:"96b27f465a804859a15e9105fcd64c7205bc2143",class:"sd-popup__footer"},o("div",{key:"6715ba330610850ea235ddde5f2da00584204286",class:"sd-popup__footer-slot sd-popup__footer-slot--left"},o("slot",{key:"092aca3ad212b7218ce4ba247b78b7b45d9e4299",name:"footer-left"})),o("sd-button",{key:"290cd49879cc4868be69ceb60567eab57b5f26fe",...p,class:"sd-popup__submit",onSdClick:()=>this.submit.emit()})))}};h.style="sd-popup{display:block;width:100%;height:100%}sd-popup .sd-popup{display:flex;flex-direction:column;width:100%;height:100%;background:var(--sd-popup-bg);overflow:hidden;box-sizing:border-box}sd-popup .sd-popup__header{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:100%;height:var(--sd-popup-header-height);padding:var(--sd-popup-header-padding-y) var(--sd-popup-header-padding-x);background:var(--sd-popup-header-bg);box-sizing:border-box}sd-popup .sd-popup__title{margin:0;color:var(--sd-popup-header-title-color);font-family:var(--sd-popup-header-font-family);font-weight:var(--sd-popup-header-font-weight);font-size:var(--sd-popup-header-font-size);line-height:var(--sd-popup-header-line-height);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}sd-popup .sd-popup__body{flex:1 1 auto;min-height:0;overflow:auto}sd-popup .sd-popup__footer{display:flex;align-items:center;flex-shrink:0;width:100%;height:var(--sd-popup-footer-height);padding:var(--sd-popup-footer-padding-y) var(--sd-popup-footer-padding-x);gap:var(--sd-popup-footer-gap);background:var(--sd-popup-footer-bg);box-shadow:var(--sd-popup-footer-shadow);box-sizing:border-box;position:relative;z-index:1}sd-popup .sd-popup__footer-slot{display:flex;align-items:center;height:var(--sd-popup-footer-slot-height)}sd-popup .sd-popup__footer-slot--left{justify-content:flex-start;flex:1 1 auto;min-width:0}sd-popup .sd-popup__footer-slot:empty{display:none}sd-popup .sd-popup__submit{flex-shrink:0;margin-left:auto}";export{h as sd_popup}
@@ -0,0 +1 @@
1
+ import{r as e,c as t,h as i}from"./p-JGOJoT-i.js";var n={textLink:{sm:{gap:"4",icon:"16",typography:{default:{fontFamily:"Pretendard Variable, Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Segoe UI, Apple SD Gothic Neo, Noto Sans KR, Malgun Gothic, Apple Color Emoji, Segoe UI Emoji, sans-serif",fontSize:"12",fontWeight:"500",textDecoration:"none",lineHeight:"20"},underline:{fontFamily:"Pretendard Variable, Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Segoe UI, Apple SD Gothic Neo, Noto Sans KR, Malgun Gothic, Apple Color Emoji, Segoe UI Emoji, sans-serif",fontSize:"12",fontWeight:"500",textDecoration:"underline",lineHeight:"20"}}},md:{gap:"8",icon:"16",typography:{default:{fontFamily:"Pretendard Variable, Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Segoe UI, Apple SD Gothic Neo, Noto Sans KR, Malgun Gothic, Apple Color Emoji, Segoe UI Emoji, sans-serif",fontSize:"14",fontWeight:"500",textDecoration:"none",lineHeight:"24"},underline:{fontFamily:"Pretendard Variable, Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Segoe UI, Apple SD Gothic Neo, Noto Sans KR, Malgun Gothic, Apple Color Emoji, Segoe UI Emoji, sans-serif",fontSize:"14",fontWeight:"500",textDecoration:"underline",lineHeight:"24"}}},content:{disabled:"#888888"},icon:{default:"#006AC1",disabled:"#BBBBBB"},lg:{typography:{default:{fontFamily:"Pretendard Variable, Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Segoe UI, Apple SD Gothic Neo, Noto Sans KR, Malgun Gothic, Apple Color Emoji, Segoe UI Emoji, sans-serif",fontSize:"16",fontWeight:"500",textDecoration:"none",lineHeight:"26"},underline:{fontFamily:"Pretendard Variable, Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Segoe UI, Apple SD Gothic Neo, Noto Sans KR, Malgun Gothic, Apple Color Emoji, Segoe UI Emoji, sans-serif",fontSize:"16",fontWeight:"500",textDecoration:"underline",lineHeight:"26"}},gap:"8",icon:"20"}}};const o={sm:{gap:Number(n.textLink.sm.gap),iconSize:Number(n.textLink.sm.icon),typography:{default:n.textLink.sm.typography.default,underline:n.textLink.sm.typography.underline}},md:{gap:Number(n.textLink.md.gap),iconSize:Number(n.textLink.md.icon),typography:{default:n.textLink.md.typography.default,underline:n.textLink.md.typography.underline}},lg:{gap:Number(n.textLink.lg.gap),iconSize:Number(n.textLink.lg.icon),typography:{default:n.textLink.lg.typography.default,underline:n.textLink.lg.typography.underline}}},l={content:n.textLink.content,icon:n.textLink.icon},s=class{constructor(i){e(this,i),this.click=t(this,"sdClick",7)}label="";icon="";iconColor="";labelClass="";rightArrow="none";underline=!1;disabled=!1;size="sm";click;handleClick=()=>{this.disabled||this.click.emit()};render(){const e=o[this.size],t=this.underline?e.typography.underline:e.typography.default,n=["sd-text-link__label",this.labelClass].filter(Boolean).join(" "),s=this.disabled?l.icon.disabled:"#888888",a={"--sd-text-link-gap":`${e.gap}px`,"--sd-text-link-font-size":`${t.fontSize}px`,"--sd-text-link-line-height":`${t.lineHeight}px`,"--sd-text-link-text-decoration":t.textDecoration,...this.disabled?{"--sd-text-link-color":l.content.disabled}:{}};return i("span",{key:"89b8117d19d149faf70d026ef560acdfa0096daa",role:"button",tabindex:this.disabled?-1:0,class:{"sd-text-link":!0,"sd-text-link--disabled":this.disabled},style:a,onClick:this.handleClick,onKeyDown:e=>{"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),this.handleClick())}},this.icon&&i("sd-icon",{key:"684c7b31abc6cb806944c03a016c4520c4721a7c",name:this.icon,size:e.iconSize,color:this.disabled?l.icon.disabled:this.iconColor||l.icon.default,class:"sd-text-link__icon"}),i("span",{key:"272f5b4c889b099ede7b5146ea4828648d89ad69",class:n},this.label),this.rightArrow&&"none"!==this.rightArrow&&i("span",{key:"142d37f856df2e5858df5d976e4d8ac4ee2f2607",class:"sd-text-link__arrow",style:{width:"16px",height:"16px",display:"inline-flex",alignItems:"center",justifyContent:"center"}},i("sd-icon",{key:"5da12b6077fb33912260b353cb6fe7d533eab937",name:"chevron"===this.rightArrow?"chevronRight":"caretRight",size:12,color:s})))}};s.style="sd-text-link{display:inline-flex}sd-text-link .sd-text-link{display:inline-flex;align-items:center;gap:var(--sd-text-link-gap);cursor:pointer;user-select:none}sd-text-link .sd-text-link__label{font-size:var(--sd-text-link-font-size, 12px);line-height:var(--sd-text-link-line-height, 20px);text-decoration:var(--sd-text-link-text-decoration);color:var(--sd-text-link-color, inherit)}sd-text-link .sd-text-link:not(.sd-text-link--disabled):hover .sd-text-link__label{text-decoration:underline}sd-text-link .sd-text-link--disabled{cursor:not-allowed}";export{s as sd_text_link}
@@ -1 +1 @@
1
- import{h as o}from"./p-D3yCWQNg.js";const t=t=>o("svg",{width:"16",height:"12",viewBox:"0 0 16 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},o("path",{d:"M8.83205 10.7519C8.43623 11.3457 7.56377 11.3457 7.16795 10.7519L1.04907e-06 -1.39876e-06L16 0L8.83205 10.7519Z",fill:"currentColor"}));export{t as T}
1
+ import{h as o}from"./p-JGOJoT-i.js";const t=t=>o("svg",{width:"16",height:"12",viewBox:"0 0 16 12",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t},o("path",{d:"M8.83205 10.7519C8.43623 11.3457 7.56377 11.3457 7.16795 10.7519L1.04907e-06 -1.39876e-06L16 0L8.83205 10.7519Z",fill:"currentColor"}));export{t as T}