@sellmate/design-system 1.0.0 → 1.0.1

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 (247) hide show
  1. package/dist/cjs/design-system.cjs.js +1 -1
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/sd-badge.cjs.entry.js +1 -1
  4. package/dist/cjs/sd-button_6.cjs.entry.js +6 -6
  5. package/dist/cjs/sd-card.cjs.entry.js +1 -1
  6. package/dist/cjs/sd-date-picker.cjs.entry.js +1 -1
  7. package/dist/cjs/sd-date-range-picker.cjs.entry.js +2 -2
  8. package/dist/cjs/sd-field_3.cjs.entry.js +5 -5
  9. package/dist/cjs/sd-file-picker.cjs.entry.js +4 -5
  10. package/dist/cjs/sd-guide.cjs.entry.js +2 -2
  11. package/dist/cjs/sd-loading-spinner_2.cjs.entry.js +2 -2
  12. package/dist/cjs/sd-number-input.cjs.entry.js +4 -4
  13. package/dist/cjs/sd-popover.cjs.entry.js +2 -2
  14. package/dist/cjs/sd-progress.cjs.entry.js +2 -2
  15. package/dist/cjs/sd-radio-button-group.cjs.entry.js +3 -3
  16. package/dist/cjs/sd-radio-group.cjs.entry.js +8 -36
  17. package/dist/cjs/sd-radio.cjs.entry.js +41 -0
  18. package/dist/cjs/sd-select-dropdown_3.cjs.entry.js +6 -6
  19. package/dist/cjs/sd-select-multiple-group.cjs.entry.js +1 -1
  20. package/dist/cjs/sd-select-multiple.cjs.entry.js +1 -1
  21. package/dist/cjs/sd-select-option-group.cjs.entry.js +3 -3
  22. package/dist/cjs/sd-table.cjs.entry.js +4 -4
  23. package/dist/cjs/sd-tabs.cjs.entry.js +1 -1
  24. package/dist/cjs/sd-tag.cjs.entry.js +1 -1
  25. package/dist/cjs/sd-toast-message.cjs.entry.js +2 -2
  26. package/dist/cjs/sd-toggle-button.cjs.entry.js +1 -1
  27. package/dist/cjs/sd-toggle.cjs.entry.js +1 -1
  28. package/dist/collection/collection-manifest.json +1 -0
  29. package/dist/collection/components/sd-badge/sd-badge.js +1 -1
  30. package/dist/collection/components/sd-card/sd-card.js +1 -1
  31. package/dist/collection/components/sd-date-picker/sd-date-picker.js +1 -1
  32. package/dist/collection/components/sd-date-range-picker/sd-date-range-picker.js +2 -2
  33. package/dist/collection/components/sd-field/sd-field.js +3 -3
  34. package/dist/collection/components/sd-file-picker/sd-file-picker.css +2 -0
  35. package/dist/collection/components/sd-file-picker/sd-file-picker.js +3 -23
  36. package/dist/collection/components/sd-file-picker/sd-file-picker.js.map +1 -1
  37. package/dist/collection/components/sd-floating-portal/sd-floating-portal.js +1 -1
  38. package/dist/collection/components/sd-guide/sd-guide.js +2 -2
  39. package/dist/collection/components/sd-icon/sd-icon.js +1 -1
  40. package/dist/collection/components/sd-input/sd-input.js +1 -1
  41. package/dist/collection/components/sd-loading-spinner/sd-loading-spinner.js +1 -1
  42. package/dist/collection/components/sd-number-input/sd-number-input.js +4 -4
  43. package/dist/collection/components/sd-pagination/sd-pagination.js +2 -2
  44. package/dist/collection/components/sd-popover/sd-popover.js +2 -2
  45. package/dist/collection/components/sd-popover/sd-popover.js.map +1 -1
  46. package/dist/collection/components/sd-portal/sd-portal.js +1 -1
  47. package/dist/collection/components/sd-progress/sd-progress.js +2 -2
  48. package/dist/collection/components/sd-radio/sd-radio.css +59 -0
  49. package/dist/collection/components/sd-radio/sd-radio.js +151 -0
  50. package/dist/collection/components/sd-radio/sd-radio.js.map +1 -0
  51. package/dist/collection/components/sd-radio-button-group/sd-radio-button-group.css +20 -19
  52. package/dist/collection/components/sd-radio-button-group/sd-radio-button-group.js +3 -3
  53. package/dist/collection/components/sd-radio-button-group/sd-radio-button-group.js.map +1 -1
  54. package/dist/collection/components/sd-radio-group/sd-radio-group.css +34 -38
  55. package/dist/collection/components/sd-radio-group/sd-radio-group.js +17 -50
  56. package/dist/collection/components/sd-radio-group/sd-radio-group.js.map +1 -1
  57. package/dist/collection/components/sd-select/sd-select-dropdown/sd-select-dropdown.js +2 -2
  58. package/dist/collection/components/sd-select/sd-select-option/sd-select-option.js +1 -1
  59. package/dist/collection/components/sd-select/sd-select-search-input/sd-select-search-input.js +3 -3
  60. package/dist/collection/components/sd-select/sd-select.js +1 -1
  61. package/dist/collection/components/sd-select-multiple/sd-select-multiple.js +1 -1
  62. package/dist/collection/components/sd-select-multiple-group/sd-select-multiple-group.js +1 -1
  63. package/dist/collection/components/sd-select-multiple-group/sd-select-option-group/sd-select-option-group.js +3 -3
  64. package/dist/collection/components/sd-table/sd-table.js +4 -4
  65. package/dist/collection/components/sd-tabs/sd-tabs.js +1 -1
  66. package/dist/collection/components/sd-tag/sd-tag.js +1 -1
  67. package/dist/collection/components/sd-textarea/sd-textarea.js +2 -2
  68. package/dist/collection/components/sd-toast-message/sd-toast-message.js +2 -2
  69. package/dist/collection/components/sd-toggle/sd-toggle.js +1 -1
  70. package/dist/collection/components/sd-toggle-button/sd-toggle-button.js +1 -1
  71. package/dist/components/{p-CdGD6AqM.js → p-B-HVIIWo.js} +3 -3
  72. package/dist/components/{p-CdGD6AqM.js.map → p-B-HVIIWo.js.map} +1 -1
  73. package/dist/components/p-BBVGfsbU.js +62 -0
  74. package/dist/components/p-BBVGfsbU.js.map +1 -0
  75. package/dist/components/{p-RhBqdixM.js → p-BfHejNRG.js} +11 -11
  76. package/dist/components/{p-RhBqdixM.js.map → p-BfHejNRG.js.map} +1 -1
  77. package/dist/components/{p-JF61vPAh.js → p-BsBjOh8u.js} +5 -5
  78. package/dist/components/{p-JF61vPAh.js.map → p-BsBjOh8u.js.map} +1 -1
  79. package/dist/components/{p-CVMprLsE.js → p-CmghyzXg.js} +3 -3
  80. package/dist/components/{p-CVMprLsE.js.map → p-CmghyzXg.js.map} +1 -1
  81. package/dist/components/{p-D54IEoI6.js → p-Cp2TqeFd.js} +8 -8
  82. package/dist/components/{p-D54IEoI6.js.map → p-Cp2TqeFd.js.map} +1 -1
  83. package/dist/components/{p-DxSmO6Tr.js → p-CuHSbj5E.js} +5 -5
  84. package/dist/components/{p-DxSmO6Tr.js.map → p-CuHSbj5E.js.map} +1 -1
  85. package/dist/components/{p-DdKGhMHk.js → p-D1kEesx2.js} +3 -3
  86. package/dist/components/{p-DdKGhMHk.js.map → p-D1kEesx2.js.map} +1 -1
  87. package/dist/components/{p-zvZtN3nR.js → p-DBzZUOVq.js} +7 -7
  88. package/dist/components/{p-zvZtN3nR.js.map → p-DBzZUOVq.js.map} +1 -1
  89. package/dist/components/{p-s4Mg_xSz.js → p-DD16YjVA.js} +13 -13
  90. package/dist/components/{p-s4Mg_xSz.js.map → p-DD16YjVA.js.map} +1 -1
  91. package/dist/components/{p-7xekTQRB.js → p-Dtljyq_t.js} +5 -5
  92. package/dist/components/{p-7xekTQRB.js.map → p-Dtljyq_t.js.map} +1 -1
  93. package/dist/components/{p-CpRkV7pg.js → p-FVxa2OYe.js} +9 -9
  94. package/dist/components/{p-CpRkV7pg.js.map → p-FVxa2OYe.js.map} +1 -1
  95. package/dist/components/{p-DnQF6htq.js → p-Sw7TJWkF.js} +3 -3
  96. package/dist/components/{p-DnQF6htq.js.map → p-Sw7TJWkF.js.map} +1 -1
  97. package/dist/components/{p-DssRJcAn.js → p-VrppUi4Q.js} +3 -3
  98. package/dist/components/{p-DssRJcAn.js.map → p-VrppUi4Q.js.map} +1 -1
  99. package/dist/components/{p-D2movWkD.js → p-iBNSlotR.js} +14 -14
  100. package/dist/components/{p-D2movWkD.js.map → p-iBNSlotR.js.map} +1 -1
  101. package/dist/components/{p-UZEmuyIR.js → p-ldcuoYNT.js} +3 -3
  102. package/dist/components/{p-UZEmuyIR.js.map → p-ldcuoYNT.js.map} +1 -1
  103. package/dist/components/{p-DbebUQwg.js → p-o-oFeHDX.js} +3 -3
  104. package/dist/components/{p-DbebUQwg.js.map → p-o-oFeHDX.js.map} +1 -1
  105. package/dist/components/sd-badge.js +1 -1
  106. package/dist/components/sd-button.js +1 -1
  107. package/dist/components/sd-card.js +1 -1
  108. package/dist/components/sd-checkbox.js +1 -1
  109. package/dist/components/sd-date-picker.js +8 -8
  110. package/dist/components/sd-date-range-picker.js +9 -9
  111. package/dist/components/sd-field.js +1 -1
  112. package/dist/components/sd-file-picker.js +5 -7
  113. package/dist/components/sd-file-picker.js.map +1 -1
  114. package/dist/components/sd-floating-portal.js +1 -1
  115. package/dist/components/sd-guide.js +5 -5
  116. package/dist/components/sd-icon.js +1 -1
  117. package/dist/components/sd-input.js +1 -1
  118. package/dist/components/sd-loading-spinner.js +1 -1
  119. package/dist/components/sd-modal-card.js +2 -2
  120. package/dist/components/sd-number-input.js +5 -5
  121. package/dist/components/sd-pagination.js +1 -1
  122. package/dist/components/sd-popover.js +5 -5
  123. package/dist/components/sd-popover.js.map +1 -1
  124. package/dist/components/sd-portal.js +1 -1
  125. package/dist/components/sd-progress.js +2 -2
  126. package/dist/components/sd-radio-button-group.js +4 -4
  127. package/dist/components/sd-radio-button-group.js.map +1 -1
  128. package/dist/components/sd-radio-group.js +16 -39
  129. package/dist/components/sd-radio-group.js.map +1 -1
  130. package/dist/components/sd-radio.d.ts +11 -0
  131. package/dist/components/sd-radio.js +9 -0
  132. package/dist/components/sd-radio.js.map +1 -0
  133. package/dist/components/sd-select-dropdown.js +1 -1
  134. package/dist/components/sd-select-multiple-group.js +11 -11
  135. package/dist/components/sd-select-multiple.js +12 -12
  136. package/dist/components/sd-select-option-group.js +1 -1
  137. package/dist/components/sd-select-option.js +1 -1
  138. package/dist/components/sd-select-search-input.js +1 -1
  139. package/dist/components/sd-select.js +1 -1
  140. package/dist/components/sd-table.js +18 -18
  141. package/dist/components/sd-tabs.js +2 -2
  142. package/dist/components/sd-tag.js +1 -1
  143. package/dist/components/sd-textarea.js +2 -2
  144. package/dist/components/sd-toast-message.js +4 -4
  145. package/dist/components/sd-toggle-button.js +1 -1
  146. package/dist/components/sd-toggle.js +1 -1
  147. package/dist/components/sd-tooltip.js +1 -1
  148. package/dist/design-system/design-system.esm.js +1 -1
  149. package/dist/design-system/{p-d77422e4.entry.js → p-06b1b928.entry.js} +2 -2
  150. package/dist/design-system/{p-f254b09a.entry.js → p-0a80eff0.entry.js} +2 -2
  151. package/dist/design-system/p-0a9f4be0.entry.js +2 -0
  152. package/dist/design-system/p-0a9f4be0.entry.js.map +1 -0
  153. package/dist/design-system/p-0e12f7b6.entry.js +2 -0
  154. package/dist/design-system/{p-f3287206.entry.js → p-12c9cfda.entry.js} +2 -2
  155. package/dist/design-system/{p-02e23509.entry.js → p-17f36d15.entry.js} +2 -2
  156. package/dist/design-system/{p-9d2459ed.entry.js → p-1a5c8581.entry.js} +2 -2
  157. package/dist/design-system/{p-53972259.entry.js → p-2023e24a.entry.js} +2 -2
  158. package/dist/design-system/{p-0d3f019d.entry.js → p-206de2a1.entry.js} +2 -2
  159. package/dist/design-system/p-29a9975a.entry.js +2 -0
  160. package/dist/design-system/p-29a9975a.entry.js.map +1 -0
  161. package/dist/design-system/{p-ac29c52c.entry.js → p-43b9fd6b.entry.js} +2 -2
  162. package/dist/design-system/p-7a18002e.entry.js +2 -0
  163. package/dist/design-system/p-7a18002e.entry.js.map +1 -0
  164. package/dist/design-system/{p-0a2f733d.entry.js → p-82356c0a.entry.js} +2 -2
  165. package/dist/design-system/{p-811c5aa4.entry.js → p-86830071.entry.js} +2 -2
  166. package/dist/design-system/{p-6277b220.entry.js → p-97d0ce6e.entry.js} +2 -2
  167. package/dist/design-system/p-9a68ab88.entry.js +2 -0
  168. package/dist/design-system/{p-c3061828.entry.js.map → p-9a68ab88.entry.js.map} +1 -1
  169. package/dist/design-system/{p-686958c5.entry.js → p-9fdf431c.entry.js} +2 -2
  170. package/dist/design-system/{p-c25c4bd6.entry.js → p-b521ce06.entry.js} +2 -2
  171. package/dist/design-system/p-cdd7880f.entry.js +2 -0
  172. package/dist/design-system/p-cdd7880f.entry.js.map +1 -0
  173. package/dist/design-system/{p-2400d67b.entry.js → p-dc2f4b2f.entry.js} +2 -2
  174. package/dist/design-system/{p-388d5b9f.entry.js → p-f43b8c46.entry.js} +2 -2
  175. package/dist/design-system/{p-652c4d37.entry.js → p-f8e3d576.entry.js} +2 -2
  176. package/dist/design-system/{p-a7d4c6bd.entry.js → p-f9bc026f.entry.js} +2 -2
  177. package/dist/design-system/{p-4d7bb5b6.entry.js → p-fca80354.entry.js} +2 -2
  178. package/dist/design-system/p-ff131fbc.entry.js +2 -0
  179. package/dist/design-system/p-ff131fbc.entry.js.map +1 -0
  180. package/dist/esm/design-system.js +1 -1
  181. package/dist/esm/loader.js +1 -1
  182. package/dist/esm/sd-badge.entry.js +1 -1
  183. package/dist/esm/sd-button_6.entry.js +6 -6
  184. package/dist/esm/sd-card.entry.js +1 -1
  185. package/dist/esm/sd-date-picker.entry.js +1 -1
  186. package/dist/esm/sd-date-range-picker.entry.js +2 -2
  187. package/dist/esm/sd-field_3.entry.js +5 -5
  188. package/dist/esm/sd-file-picker.entry.js +4 -5
  189. package/dist/esm/sd-file-picker.entry.js.map +1 -1
  190. package/dist/esm/sd-guide.entry.js +2 -2
  191. package/dist/esm/sd-loading-spinner_2.entry.js +2 -2
  192. package/dist/esm/sd-number-input.entry.js +4 -4
  193. package/dist/esm/sd-popover.entry.js +2 -2
  194. package/dist/esm/sd-popover.entry.js.map +1 -1
  195. package/dist/esm/sd-progress.entry.js +2 -2
  196. package/dist/esm/sd-radio-button-group.entry.js +4 -4
  197. package/dist/esm/sd-radio-button-group.entry.js.map +1 -1
  198. package/dist/esm/sd-radio-group.entry.js +8 -36
  199. package/dist/esm/sd-radio-group.entry.js.map +1 -1
  200. package/dist/esm/sd-radio.entry.js +39 -0
  201. package/dist/esm/sd-radio.entry.js.map +1 -0
  202. package/dist/esm/sd-select-dropdown_3.entry.js +6 -6
  203. package/dist/esm/sd-select-multiple-group.entry.js +1 -1
  204. package/dist/esm/sd-select-multiple.entry.js +1 -1
  205. package/dist/esm/sd-select-option-group.entry.js +3 -3
  206. package/dist/esm/sd-table.entry.js +4 -4
  207. package/dist/esm/sd-tabs.entry.js +1 -1
  208. package/dist/esm/sd-tag.entry.js +1 -1
  209. package/dist/esm/sd-toast-message.entry.js +2 -2
  210. package/dist/esm/sd-toggle-button.entry.js +1 -1
  211. package/dist/esm/sd-toggle.entry.js +1 -1
  212. package/dist/types/components/sd-file-picker/sd-file-picker.d.ts +0 -1
  213. package/dist/types/components/sd-radio/sd-radio.d.ts +12 -0
  214. package/dist/types/components/sd-radio-group/sd-radio-group.d.ts +3 -8
  215. package/dist/types/components.d.ts +63 -18
  216. package/hydrate/index.js +114 -96
  217. package/hydrate/index.mjs +114 -96
  218. package/package.json +2 -2
  219. package/dist/design-system/p-15dd1289.entry.js +0 -2
  220. package/dist/design-system/p-15dd1289.entry.js.map +0 -1
  221. package/dist/design-system/p-216c6543.entry.js +0 -2
  222. package/dist/design-system/p-216c6543.entry.js.map +0 -1
  223. package/dist/design-system/p-282f4087.entry.js +0 -2
  224. package/dist/design-system/p-b0277422.entry.js +0 -2
  225. package/dist/design-system/p-b0277422.entry.js.map +0 -1
  226. package/dist/design-system/p-c3061828.entry.js +0 -2
  227. package/dist/design-system/p-cde56c79.entry.js +0 -2
  228. package/dist/design-system/p-cde56c79.entry.js.map +0 -1
  229. /package/dist/design-system/{p-d77422e4.entry.js.map → p-06b1b928.entry.js.map} +0 -0
  230. /package/dist/design-system/{p-f254b09a.entry.js.map → p-0a80eff0.entry.js.map} +0 -0
  231. /package/dist/design-system/{p-282f4087.entry.js.map → p-0e12f7b6.entry.js.map} +0 -0
  232. /package/dist/design-system/{p-f3287206.entry.js.map → p-12c9cfda.entry.js.map} +0 -0
  233. /package/dist/design-system/{p-02e23509.entry.js.map → p-17f36d15.entry.js.map} +0 -0
  234. /package/dist/design-system/{p-9d2459ed.entry.js.map → p-1a5c8581.entry.js.map} +0 -0
  235. /package/dist/design-system/{p-53972259.entry.js.map → p-2023e24a.entry.js.map} +0 -0
  236. /package/dist/design-system/{p-0d3f019d.entry.js.map → p-206de2a1.entry.js.map} +0 -0
  237. /package/dist/design-system/{p-ac29c52c.entry.js.map → p-43b9fd6b.entry.js.map} +0 -0
  238. /package/dist/design-system/{p-0a2f733d.entry.js.map → p-82356c0a.entry.js.map} +0 -0
  239. /package/dist/design-system/{p-811c5aa4.entry.js.map → p-86830071.entry.js.map} +0 -0
  240. /package/dist/design-system/{p-6277b220.entry.js.map → p-97d0ce6e.entry.js.map} +0 -0
  241. /package/dist/design-system/{p-686958c5.entry.js.map → p-9fdf431c.entry.js.map} +0 -0
  242. /package/dist/design-system/{p-c25c4bd6.entry.js.map → p-b521ce06.entry.js.map} +0 -0
  243. /package/dist/design-system/{p-2400d67b.entry.js.map → p-dc2f4b2f.entry.js.map} +0 -0
  244. /package/dist/design-system/{p-388d5b9f.entry.js.map → p-f43b8c46.entry.js.map} +0 -0
  245. /package/dist/design-system/{p-652c4d37.entry.js.map → p-f8e3d576.entry.js.map} +0 -0
  246. /package/dist/design-system/{p-a7d4c6bd.entry.js.map → p-f9bc026f.entry.js.map} +0 -0
  247. /package/dist/design-system/{p-4d7bb5b6.entry.js.map → p-fca80354.entry.js.map} +0 -0
@@ -2,7 +2,7 @@
2
2
 
3
3
  var index = require('./index-D_J8ScR5.js');
4
4
 
5
- const sdRadioGroupCss = () => `sd-radio-group{display:inline-block}sd-radio-group .sd-radio-group{display:flex}sd-radio-group .sd-radio-group--vertical{flex-direction:column;gap:8px}sd-radio-group .sd-radio-group--horizontal{flex-direction:row;align-items:center;gap:20px}sd-radio-group .sd-radio-group__option{width:fit-content;display:flex;align-items:center;gap:8px;font-weight:400;font-size:12px;line-height:20px;cursor:pointer}sd-radio-group .sd-radio-group__option:has(input:disabled){cursor:not-allowed}sd-radio-group .sd-radio-group__option input{position:relative;appearance:none;margin:0;width:16px;height:16px;border:1px solid #888888;border-radius:50%;cursor:pointer;accent-color:#0075ff;background-color:white}sd-radio-group .sd-radio-group__option input:checked{border-color:#0075ff;background-color:white}sd-radio-group .sd-radio-group__option input:checked::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:10px;height:10px;border-radius:50%;background-color:#0075ff}sd-radio-group .sd-radio-group__option input:disabled{cursor:not-allowed;border-color:#cccccc;background-color:#eeeeee}sd-radio-group .sd-radio-group__option input:disabled:checked::before{background-color:#cccccc}sd-radio-group .sd-radio-group__option input:not(:disabled):hover{border-color:#0075ff;background-color:#d9eaff}sd-radio-group .sd-radio-group__label{font-size:12px;color:#333333;line-height:20px;user-select:none}sd-radio-group .sd-radio-group__option--disabled{cursor:not-allowed}sd-radio-group .sd-radio-group__option--disabled .sd-radio-group__label{color:#888888}`;
5
+ const sdRadioGroupCss = () => `sd-radio{display:inline-flex}sd-radio.sd-radio{cursor:pointer}sd-radio.sd-radio label{display:flex;align-items:center;gap:8px;cursor:pointer}sd-radio.sd-radio label input{position:relative;appearance:none;margin:0;width:16px;height:16px;border:1px solid #888888;border-radius:50%;accent-color:#0075ff;background-color:white;cursor:pointer}sd-radio.sd-radio label input:checked{border-color:#0075ff;background-color:white}sd-radio.sd-radio label input:checked::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:10px;height:10px;border-radius:50%;background-color:#0075ff}sd-radio.sd-radio label input:disabled{border-color:#cccccc;background-color:#eeeeee}sd-radio.sd-radio label input:disabled:checked::before{background-color:#cccccc}sd-radio.sd-radio label input:not(:disabled):hover{border-color:#0075ff;background-color:#d9eaff}sd-radio.sd-radio--disabled{cursor:not-allowed !important}sd-radio.sd-radio--disabled label{cursor:not-allowed !important}sd-radio.sd-radio--disabled label input{cursor:not-allowed !important}sd-radio-group{display:inline-block}sd-radio-group .sd-radio-group{display:flex}sd-radio-group .sd-radio-group--vertical{flex-direction:column;gap:8px}sd-radio-group .sd-radio-group--horizontal{flex-direction:row;align-items:center;gap:20px}`;
6
6
 
7
7
  const SdRadioGroup = class {
8
8
  constructor(hostRef) {
@@ -13,52 +13,24 @@ const SdRadioGroup = class {
13
13
  radioOptions = [];
14
14
  direction = 'vertical';
15
15
  disabled = false;
16
- name;
17
- selectedValue;
16
+ groupName;
18
17
  change;
19
- componentWillLoad() {
20
- if (this.value) {
21
- this.selectedValue = this.value;
22
- }
23
- }
24
18
  valueChanged(newValue) {
25
- this.selectedValue = newValue;
19
+ this.value = newValue;
26
20
  }
27
- handleRadioChange = (optionValue, optionDisabled) => {
28
- if (this.disabled || optionDisabled)
21
+ handleRadioChange = (optionValue) => {
22
+ if (this.disabled)
29
23
  return;
30
- this.selectedValue = optionValue;
31
24
  this.value = optionValue;
32
- this.change.emit(optionValue);
25
+ this.change?.emit(optionValue);
33
26
  };
34
- isOptionSelected(option) {
35
- return this.selectedValue === option.value;
36
- }
37
- isOptionDisabled(option) {
38
- return this.disabled || !!option.disabled;
39
- }
40
- getRadioClasses(option) {
41
- const classes = [
42
- 'sd-radio-group__option',
43
- this.isOptionSelected(option)
44
- ? 'sd-radio-group__option--selected'
45
- : 'sd-radio-group__option--unselected',
46
- ];
47
- if (this.isOptionDisabled(option)) {
48
- classes.push('sd-radio-group__option--disabled');
49
- }
50
- return classes.join(' ');
51
- }
52
27
  getGroupClasses() {
53
28
  const classes = ['sd-radio-group', `sd-radio-group--${this.direction}`];
54
29
  return classes.join(' ');
55
30
  }
56
31
  render() {
57
- const groupName = this.name || `sd-radio-group-${Math.random().toString(36).substring(2, 11)}`;
58
- return (index.h("div", { key: '9599dded7410ed41178f6cbf93aa24897cc9b030', class: this.getGroupClasses(), role: "radiogroup" }, this.radioOptions.map((option, index$1) => {
59
- const isSelected = this.isOptionSelected(option);
60
- const isDisabled = this.isOptionDisabled(option);
61
- return (index.h("label", { key: `radio-${index$1}`, class: this.getRadioClasses(option), role: "radio", "aria-checked": isSelected.toString(), "aria-disabled": isDisabled.toString(), "aria-label": option.label || 'radio option' }, index.h("input", { type: "radio", name: groupName, value: option.value.toString(), checked: isSelected, disabled: isDisabled, onInput: () => this.handleRadioChange(option.value, option.disabled) }), option.label && index.h("span", { class: "sd-radio-group__label" }, option.label)));
32
+ return (index.h("div", { key: '264fed43fa10c8869762dab2b0530989e7901178', class: this.getGroupClasses(), role: "radiogroup" }, this.radioOptions.map(option => {
33
+ return (index.h("sd-radio", { key: `radio-${option.value}`, val: String(option.value), value: this.value, label: option.label, disabled: this.disabled || !!option.disabled, onSdUpdate: ({ detail }) => this.handleRadioChange(detail) }));
62
34
  })));
63
35
  }
64
36
  static get watchers() { return {
@@ -0,0 +1,41 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-D_J8ScR5.js');
4
+
5
+ const sdRadioCss = () => `sd-radio{display:inline-flex}sd-radio.sd-radio{cursor:pointer}sd-radio.sd-radio label{display:flex;align-items:center;gap:8px;cursor:pointer}sd-radio.sd-radio label input{position:relative;appearance:none;margin:0;width:16px;height:16px;border:1px solid #888888;border-radius:50%;accent-color:#0075ff;background-color:white;cursor:pointer}sd-radio.sd-radio label input:checked{border-color:#0075ff;background-color:white}sd-radio.sd-radio label input:checked::before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:10px;height:10px;border-radius:50%;background-color:#0075ff}sd-radio.sd-radio label input:disabled{border-color:#cccccc;background-color:#eeeeee}sd-radio.sd-radio label input:disabled:checked::before{background-color:#cccccc}sd-radio.sd-radio label input:not(:disabled):hover{border-color:#0075ff;background-color:#d9eaff}sd-radio.sd-radio--disabled{cursor:not-allowed !important}sd-radio.sd-radio--disabled label{cursor:not-allowed !important}sd-radio.sd-radio--disabled label input{cursor:not-allowed !important}`;
6
+
7
+ const SdRadio = class {
8
+ constructor(hostRef) {
9
+ index.registerInstance(this, hostRef);
10
+ this.update = index.createEvent(this, "sdUpdate");
11
+ }
12
+ value;
13
+ disabled = false;
14
+ val;
15
+ label;
16
+ update;
17
+ getRadioClasses() {
18
+ const classes = [
19
+ 'sd-radio',
20
+ String(this.val) === String(this.value) ? 'sd-radio--selected' : 'sd-radio--unselected',
21
+ ];
22
+ if (this.disabled) {
23
+ classes.push('sd-radio--disabled');
24
+ }
25
+ return classes.join(' ');
26
+ }
27
+ handleRadioChange(detail) {
28
+ if (this.disabled)
29
+ return;
30
+ console.log('detail', detail);
31
+ this.value = this.val;
32
+ this.update.emit(this.value);
33
+ }
34
+ render() {
35
+ return (index.h(index.Host, { key: 'f288b8077193d0c1614b3c25fb9f3ebbedf0f9be', "aria-label": this.val || 'radio option', "aria-checked": String(this.val) === String(this.value) ? 'true' : 'false', "aria-disabled": this.disabled ? 'true' : 'false', class: this.getRadioClasses() }, index.h("label", { key: `radio-${this.val}` }, index.h("input", { key: '0f5e1cad59ec2a2c20247bec1341e58b11477699', type: "radio", name: this.val, value: String(this.val), checked: String(this.val) === String(this.value), disabled: this.disabled, onInput: ({ detail }) => this.handleRadioChange(detail) }), this.val && index.h("span", { key: '47fd723d1ec6c6124d01341f7edbe945061dc348', class: "sd-radio-group__label" }, this.label || this.val))));
36
+ }
37
+ };
38
+ SdRadio.style = sdRadioCss();
39
+
40
+ exports.sd_radio = SdRadio;
41
+ //# sourceMappingURL=sd-radio.entry.cjs.js.map
@@ -155,10 +155,10 @@ const SdSelectDropdown = class {
155
155
  this.isScrolled = scrollTop > 0;
156
156
  };
157
157
  render() {
158
- return (index.h(index.Host, { key: 'de06f67bf93dce6db12fee6bce3c6b11b7ee375f', style: this.dropdownSize }, index.h("div", { key: '42510dd6a21f1aa224f5141555c02729d09a6baf', class: {
158
+ return (index.h(index.Host, { key: 'bfb74ca8fece27f39c48185cd087ee1efaf52cd9', style: this.dropdownSize }, index.h("div", { key: 'c1c9f7cf52432c48e080969d2324676310d7e7f9', class: {
159
159
  'sd-select-dropdown': true,
160
160
  'sd-select-dropdown--ready': this.isDropdownReady,
161
- }, onScroll: this.handleDropdownScroll, ref: el => (this.dropdownRef = el) }, this.searchable && (index.h("sd-select-search-input", { key: '2177a7ad0dc3ea5ded63103a55e03b9b0d4d3913', ref: el => (this.searchRef = el), isScrolled: this.isScrolled, searchText: this.searchText, onSdSearchInput: (event) => (this.searchText = event.detail || ''), onSdSearchFocus: () => (this.itemIndex = -1) })), this.filteredOptions.length > 0 ? (this.filteredOptions.map((option, index$1) => (index.h("slot", { name: `option-${option.value}` }, index.h("sd-select-option", { option: option, index: index$1, isSelected: this.isOptionSelected(option.value), isFocused: index$1 === this.itemIndex, onOptionClick: ({ detail }) => this.optionClick.emit(detail), useCheckbox: this.useCheckbox }))))) : (index.h("slot", { name: "option-placeholder" }, index.h("div", { class: 'sd-select-option-placeholder' }, this.optionPlaceholder))))));
161
+ }, onScroll: this.handleDropdownScroll, ref: el => (this.dropdownRef = el) }, this.searchable && (index.h("sd-select-search-input", { key: 'c5d42ef925fba369b5b0361b7327fa3a1954d602', ref: el => (this.searchRef = el), isScrolled: this.isScrolled, searchText: this.searchText, onSdSearchInput: (event) => (this.searchText = event.detail || ''), onSdSearchFocus: () => (this.itemIndex = -1) })), this.filteredOptions.length > 0 ? (this.filteredOptions.map((option, index$1) => (index.h("slot", { name: `option-${option.value}` }, index.h("sd-select-option", { option: option, index: index$1, isSelected: this.isOptionSelected(option.value), isFocused: index$1 === this.itemIndex, onOptionClick: ({ detail }) => this.optionClick.emit(detail), useCheckbox: this.useCheckbox }))))) : (index.h("slot", { name: "option-placeholder" }, index.h("div", { class: 'sd-select-option-placeholder' }, this.optionPlaceholder))))));
162
162
  }
163
163
  static get watchers() { return {
164
164
  "filteredOptions": ["filteredOptionsChanged"],
@@ -199,7 +199,7 @@ const SdSelectOption = class {
199
199
  }
200
200
  };
201
201
  render() {
202
- return (index.h(index.Host, { key: '33542be792e3345ee693a6064f9398ecd1fceda1' }, index.h("div", { key: '408d402f5e4a845ebb896f78a557ac93ca414eaa', class: {
202
+ return (index.h(index.Host, { key: '8324a5b292d922c4ba1104fe245863321fd222d4' }, index.h("div", { key: 'ead9b6abf8193019d3f97dd5a1ea67ea9a735c01', class: {
203
203
  'sd-select__option': true,
204
204
  'sd-select__option--selected': this.isSelected,
205
205
  'sd-select__option--disabled': !!this.option.disabled,
@@ -245,17 +245,17 @@ const SdSelectSearchInput = class {
245
245
  input?.focus({ preventScroll: true });
246
246
  }
247
247
  render() {
248
- return (index.h("div", { key: '199b6bdb1da143241f5e2cf797cc0f484b38aac0', class: {
248
+ return (index.h("div", { key: '82fd2b838c46c47b51b93a23e5a837708fb944b1', class: {
249
249
  'sd-select-search-input': true,
250
250
  'sd-select-search-input--scrolled': !!this.isScrolled,
251
- }, onClick: event => event.stopPropagation() }, index.h("sd-input", { key: 'c768d0a2324f3ea40cff3eb049ddfad3cddcb882', ref: el => (this.searchRef = el), value: this.searchText, placeholder: "\uAC80\uC0C9", clearable: true, inputStyle: { 'padding-left': '8px' }, autofocus: true, onSdUpdate: event => {
251
+ }, onClick: event => event.stopPropagation() }, index.h("sd-input", { key: 'fc0821ce63f445bed3dfce51668ece1831914f86', ref: el => (this.searchRef = el), value: this.searchText, placeholder: "\uAC80\uC0C9", clearable: true, inputStyle: { 'padding-left': '8px' }, autofocus: true, onSdUpdate: event => {
252
252
  this.searchInput.emit(String(event?.detail));
253
253
  }, onSdFocus: () => {
254
254
  this.searchFocus.emit();
255
255
  }, onKeyDown: event => {
256
256
  if (event.code === 'Enter')
257
257
  event.stopPropagation();
258
- } }, index.h("sd-icon", { key: '21062cf3032b5488487b61a08753de01a5de7b98', name: "search", size: 16, color: "#737373", style: { marginRight: '4px' }, slot: "prefix" }))));
258
+ } }, index.h("sd-icon", { key: '6a9b19f5910132be045e3a2cc33546307e3d5cb9', name: "search", size: 16, color: "#737373", style: { marginRight: '4px' }, slot: "prefix" }))));
259
259
  }
260
260
  };
261
261
  SdSelectSearchInput.style = sdSelectSearchInputCss();
@@ -395,7 +395,7 @@ const SdSelectMultipleGroup = class extends baseDropdownEvent.BaseDropdownEvent
395
395
  });
396
396
  }
397
397
  render() {
398
- return (index.h("sd-field", { key: '7ec71405f801265b0abf2d381491a65454c540cd', label: this.label, name: this.name, rules: this.rules, error: this.error, disabled: this.disabled, useLabelRequired: this.useLabelRequired, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), style: { '--field-width': this.width || '200px' } }, index.h("div", { key: '80c1db9cd2c47e4acfece06a9b23896cc0acef88', class: {
398
+ return (index.h("sd-field", { key: 'd809854ea5ad2aeebe2c6ffbedba19d6b62bb7be', label: this.label, name: this.name, rules: this.rules, error: this.error, disabled: this.disabled, useLabelRequired: this.useLabelRequired, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), style: { '--field-width': this.width || '200px' } }, index.h("div", { key: '9db18413433f62c0530c6189cbcd6e11e12fc8ae', class: {
399
399
  'sd-select-multiple-group': true,
400
400
  'sd-select-multiple-group--open': this.isOpen,
401
401
  'sd-select-multiple-group--disabled': this.disabled,
@@ -153,7 +153,7 @@ const SdSelectMultiple = class extends baseDropdownEvent.BaseDropdownEvent {
153
153
  this.handleOptionSelection(option);
154
154
  };
155
155
  render() {
156
- return (index.h("sd-field", { key: 'cc40c09b8c1ea2aa049d12857c6cc80cd5a5966b', label: this.label, name: this.name, rules: this.rules, error: this.error, disabled: this.disabled, useLabelRequired: this.useLabelRequired, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), style: { '--field-width': this.width || '200px' } }, index.h("div", { key: '0d90b8368287d7e67a384234a976da5d387b065b', class: {
156
+ return (index.h("sd-field", { key: '67a0bebbd4ad8ae405db1c9c1d0b9701a9b904f8', label: this.label, name: this.name, rules: this.rules, error: this.error, disabled: this.disabled, useLabelRequired: this.useLabelRequired, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), style: { '--field-width': this.width || '200px' } }, index.h("div", { key: 'aa86839508c103bbe70287877020ec3eb82b7190', class: {
157
157
  'sd-select-multiple': true,
158
158
  'sd-select-multiple--open': this.isOpen,
159
159
  'sd-select-multiple--disabled': this.disabled,
@@ -48,7 +48,7 @@ const SdSelectOptionGroup = class {
48
48
  }
49
49
  };
50
50
  render() {
51
- return (index.h("div", { key: '9ba2c1d9963ae5b20d8823ed4e1054f4b1ea1164', class: {
51
+ return (index.h("div", { key: 'd9b8a7728bd175b90cf39a8d293ab86010e39302', class: {
52
52
  'sd-select__option-group': true,
53
53
  'sd-select__option-group--selected': !!this.isSelected,
54
54
  'sd-select__option-group--disabled': !!this.option.disabled,
@@ -57,10 +57,10 @@ const SdSelectOptionGroup = class {
57
57
  'sd-select__option-group--group': this.option.type === 'group',
58
58
  'sd-select__option-group--subgroup': this.option.type === 'subgroup',
59
59
  'sd-select__option-group--item': this.option.type === 'item',
60
- }, onMouseEnter: () => (this.isHovered = true), onMouseLeave: () => (this.isHovered = false), style: this.optionStyle, "data-index": this.index, onClick: event => this.handleClick(this.option, this.isSelected, event) }, index.h("div", { key: '6576ff206863a28062566b816cd81955f1890ec2', class: "sd-select__option-group__label-wrapper" }, this.useCheckbox && (index.h("sd-checkbox", { key: 'ad1367ec16aff35a09bc1ca62d4981a29ad0c20e', value: this.isSelected, disabled: this.option.disabled, onClick: e => {
60
+ }, onMouseEnter: () => (this.isHovered = true), onMouseLeave: () => (this.isHovered = false), style: this.optionStyle, "data-index": this.index, onClick: event => this.handleClick(this.option, this.isSelected, event) }, index.h("div", { key: '9c4d02a88c42f2cd7c84bf9a44bc871bb021a26b', class: "sd-select__option-group__label-wrapper" }, this.useCheckbox && (index.h("sd-checkbox", { key: '7a40633ffff063a0a75359127a1ccd4d86b4a163', value: this.isSelected, disabled: this.option.disabled, onClick: e => {
61
61
  e.preventDefault();
62
62
  this.handleClick(this.option, this.isSelected, e);
63
- } })), index.h("span", { key: 'a51e3950353966056edd756259d3224bd588c78b', class: "sd-select__option-group-label" }, this.option.label), this.useIndicator && this.option.type !== 'item' && (index.h("span", { key: 'ed003ff2d7616096a4759b253718e5fc5a09c007', class: "sd-select__option-group__count-indicator" }, `(${this.countInfo?.selectedCount}/${this.countInfo?.totalCount})`)))));
63
+ } })), index.h("span", { key: '825638fd80e7cc41b7c0ba7af39b34df453ef729', class: "sd-select__option-group-label" }, this.option.label), this.useIndicator && this.option.type !== 'item' && (index.h("span", { key: 'fe7149a3e3a8bc94bf434b065133ba26a1698778', class: "sd-select__option-group__count-indicator" }, `(${this.countInfo?.selectedCount}/${this.countInfo?.totalCount})`)))));
64
64
  }
65
65
  };
66
66
  SdSelectOptionGroup.style = sdSelectOptionGroupCss();
@@ -647,16 +647,16 @@ const SdTable = class {
647
647
  }, "aria-hidden": "true" }, index.h("div", { class: "sd-table__skeleton-cell" })));
648
648
  }
649
649
  render() {
650
- return (index.h(index.Host, { key: 'e6ec01e7493b69bab1bf2766d9c322cee388b274' }, index.h("div", { key: 'cc717d111a6ce64c34b6a23b1feb9cc8933a0438', class: "sd-table__wrapper", style: {
650
+ return (index.h(index.Host, { key: 'd9944a23c05504be55e6ac1926c0982967ea26c3' }, index.h("div", { key: 'ab16b21be017394b9be38c65c31ffafcfb5d1699', class: "sd-table__wrapper", style: {
651
651
  '--table-width': this.width,
652
652
  '--table-height': this.height,
653
- } }, index.h("div", { key: '0c89a798a475bb25c10c5959b5e50c81f01503c4', class: "sd-table__container", style: {
653
+ } }, index.h("div", { key: 'fe5bc2a359a2c100432213679e897b01b5c14c52', class: "sd-table__container", style: {
654
654
  '--table-container-height': `calc(${this.height} - ${this.pagination && this.innerRows.length > 0 ? 48 : 0}px)`,
655
- } }, index.h("div", { key: 'e83ee499928d95e719ffca0411a422deeed162d0', class: {
655
+ } }, index.h("div", { key: '61a7e17e93ce3427c65fc9e3dece30838720640d', class: {
656
656
  'sd-table__middle': true,
657
657
  'sd-table__middle--scrollable': this.paginatedRows.length > 0,
658
658
  'sd-table__middle--loading': this.isLoading,
659
- } }, this.isLoading && (index.h("div", { key: '30d8283122a21484e0029128e637fdd9a5c6ae8c', class: "sd-table__middle--loading__spinner" }, index.h("sd-loading-spinner", { key: '92911a08fa4d0776712e8c30be2f16d59d512cbc' }))), index.h("table", { key: '209eb39f61bb46e9027046be619da492be2b080e', part: "table", class: this.sdTableClasses }, this.renderHead(), this.renderBody())), !this.paginatedRows.length && (index.h("div", { key: 'cb1fccb96bb51a4e14d40c2ff286f17d8bc8ce11', class: "sd-table__bottom" }, index.h("div", { key: '9149ee50257114145d14e0666239f72dcfc5b01a', class: "sd-table__no-data" }, index.h("slot", { key: 'a5ead23bc5a2e32418473f6f6737f3b156177842', name: "no-data" }, this.noDataLabel))))), this.pagination && this.innerRows.length > 0 && (index.h("div", { key: 'd5482e1bb04d20579a88841bf8d885d08c1593b1', class: "sd-table__pagination" }, index.h("sd-pagination", { key: '65425eff37a1f2c1add27b8923cd86fe8d98ba98', currentPage: !this.useInternalPagination ? this.pagination.page : this.currentPage, lastPage: !this.useInternalPagination ? this.pagination.lastPage : this.lastPageNumber, onSdPageChange: (e) => this.changePage(e.detail) }), this.useRowsPerPageSelect && (index.h("sd-select", { key: 'dfb3ba8654e33dc334392f37189f422d6a1f1416', value: this.pagination.rowsPerPage, options: this.rowsPerPageOption, width: "128px", onSdUpdate: (e) => this.changeRowsPerPage(e.detail.value) })))))));
659
+ } }, this.isLoading && (index.h("div", { key: 'ad87480a5c5e62330fe21a03d16b4d2c61f144dc', class: "sd-table__middle--loading__spinner" }, index.h("sd-loading-spinner", { key: 'd1232190a8b326504f6d016fb72ac706a25a3697' }))), index.h("table", { key: 'a24fe9f8fca8fac2f80c23662311baf332abe508', part: "table", class: this.sdTableClasses }, this.renderHead(), this.renderBody())), !this.paginatedRows.length && (index.h("div", { key: '6efc9f3210295cd98b2a3ce550df4c9af99d8d2a', class: "sd-table__bottom" }, index.h("div", { key: 'c568913f977026f3be8c7bec8a6ee448ad1e5a33', class: "sd-table__no-data" }, index.h("slot", { key: '5906d9ad73bb4ab7311ab5b78b91d877653e2031', name: "no-data" }, this.noDataLabel))))), this.pagination && this.innerRows.length > 0 && (index.h("div", { key: 'f736e90da9697044655d02dc0f2bfa2c19538d50', class: "sd-table__pagination" }, index.h("sd-pagination", { key: '2f4cda699cecb5289f5de73c72038a4b4ae316e7', currentPage: !this.useInternalPagination ? this.pagination.page : this.currentPage, lastPage: !this.useInternalPagination ? this.pagination.lastPage : this.lastPageNumber, onSdPageChange: (e) => this.changePage(e.detail) }), this.useRowsPerPageSelect && (index.h("sd-select", { key: '9b7853ce859b3b5129fb459dddfea97fc75ffe78', value: this.pagination.rowsPerPage, options: this.rowsPerPageOption, width: "128px", onSdUpdate: (e) => this.changeRowsPerPage(e.detail.value) })))))));
660
660
  }
661
661
  static get watchers() { return {
662
662
  "columns": ["handleColumnsChange"],
@@ -51,7 +51,7 @@ const SdTabs = class {
51
51
  return { bgColor: '#E5E5E5', textColor: '#737373' };
52
52
  }
53
53
  render() {
54
- return (index.h("div", { key: '1f9b39d82a7a98bb9dffd522d9f703b41682ae71', class: this.getContainerClasses() }, this.tabs.map((tab, index$1) => {
54
+ return (index.h("div", { key: '94f5cca8addf2b30907ba17a1b729c4904fd42cf', class: this.getContainerClasses() }, this.tabs.map((tab, index$1) => {
55
55
  const badgeColors = this.getBadgeColors(tab);
56
56
  return (index.h("div", { key: `tab-${index$1}`, class: this.getTabClasses(tab), "aria-label": tab.label || 'tab', onClick: () => this.handleTabClick(tab.value) }, index.h("span", { "data-label": tab.label, class: "sd-tabs__label" }, tab.label), tab.badge && (index.h("sd-tag", { size: this.size, label: tab.badge.toString(), bgColor: badgeColors.bgColor, textColor: badgeColors.textColor, rounded: false }))));
57
57
  })));
@@ -45,7 +45,7 @@ const SdTag = class {
45
45
  }
46
46
  render() {
47
47
  const tagClasses = this.getTagClasses();
48
- return (index.h("span", { key: '2a25443d15ad9d0c9205455e80cf236d02cec6d9', class: tagClasses, style: {
48
+ return (index.h("span", { key: '44457ea67e6c6bc78f134df71beb8d16cc069f41', class: tagClasses, style: {
49
49
  '--tag-bg-color': this.bgColor,
50
50
  '--tag-text-color': this.textColor,
51
51
  }, "aria-label": this.label || 'tag' }, this.renderContent()));
@@ -49,10 +49,10 @@ const SdToastMessage = class {
49
49
  background: resolveColor.resolveColor(colorTokens.background),
50
50
  text: resolveColor.resolveColor(colorTokens.text),
51
51
  };
52
- return (index.h(index.Host, { key: 'edd60b2a74bae15c88131baedaa3e913dc5326ae', style: {
52
+ return (index.h(index.Host, { key: '6b1a8a827b4e1a09ef648f83ef707a7020b953ee', style: {
53
53
  '--sd-toast-bg': colors.background,
54
54
  '--sd-toast-text': colors.text,
55
- } }, index.h("div", { key: 'b41ad15e9fe7520ee8fbf683f6d95e327c59ac6c', class: this.getContainerClasses(), role: "status", "aria-live": "polite", "aria-atomic": "true" }, this.icon && (index.h("div", { key: 'def78fc8bc05ead9b97144dccc4f105fad953477', class: "sd-toast-message__icon" }, index.h("sd-icon", { key: 'a01368892d295aee0339fa027663bffe31fb2c2b', name: this.icon, size: 16, color: colors.text }))), index.h("div", { key: 'f0c6d32da360c2135aee2374b1091c27bddf4d22', class: "sd-toast-message__content" }, index.h("span", { key: '0f1f7d81154470ad9bcc3d8d4c1ed0c0994da7bb', class: "sd-toast-message__message" }, this.message)), this.link && (index.h("a", { key: '2a4f7b21940e2234653a18e8a677aba9586d18e3', href: this.link, class: "sd-toast-message__link", target: "_blank", rel: "noopener noreferrer" }, this.linkLabel || this.link)), this.buttonLabel && (index.h("sd-button", { key: 'd399961349429bee81fa395c555879fabef86136', class: `sd-toast-message__button ${this.type === 'basicLight' ? 'text-white' : ''}`, label: this.buttonLabel, variant: "primary", color: this.type === 'basicLight' ? 'oceanblue_75' : 'white', size: "sm", onClick: this.handleButtonClick, style: this.type !== 'basicLight' ? { '--button-text-color': resolveColor.resolveColor('grey_95') } : {} })), this.useClose && (index.h("button", { key: '4bfae7573d5a5204c29d5ef0e2dc71e9a7622d62', type: "button", class: "sd-toast-message__close", onClick: this.handleClose, "aria-label": "Close", title: "Close" }, index.h("sd-icon", { key: '7ac20a34965ee46c8af76c6c862a69269a73f1a2', name: "close", size: 12, color: colors.text }))))));
55
+ } }, index.h("div", { key: 'd442a1ae33c605af863d014e61eaf0a26ba991f7', class: this.getContainerClasses(), role: "status", "aria-live": "polite", "aria-atomic": "true" }, this.icon && (index.h("div", { key: '477651acf80d39aecf5b47d79955aaa990815821', class: "sd-toast-message__icon" }, index.h("sd-icon", { key: '8563a3a93cdf4e42df02b2e42305f0cba843b6e0', name: this.icon, size: 16, color: colors.text }))), index.h("div", { key: 'ff283cf84d91688ab29a70c96e19122d3c2a48bf', class: "sd-toast-message__content" }, index.h("span", { key: '96fa4dbf914710e1dbd5df0df860bb3b912370d9', class: "sd-toast-message__message" }, this.message)), this.link && (index.h("a", { key: '824c896f3483d19bf6d0e1f233576101a45a123b', href: this.link, class: "sd-toast-message__link", target: "_blank", rel: "noopener noreferrer" }, this.linkLabel || this.link)), this.buttonLabel && (index.h("sd-button", { key: '74797bcfb36d5f04bcfead15cb431c709ec4654e', class: `sd-toast-message__button ${this.type === 'basicLight' ? 'text-white' : ''}`, label: this.buttonLabel, variant: "primary", color: this.type === 'basicLight' ? 'oceanblue_75' : 'white', size: "sm", onClick: this.handleButtonClick, style: this.type !== 'basicLight' ? { '--button-text-color': resolveColor.resolveColor('grey_95') } : {} })), this.useClose && (index.h("button", { key: '1aa66861462bd07f5cc76e8fdaa4e24d2adeff25', type: "button", class: "sd-toast-message__close", onClick: this.handleClose, "aria-label": "Close", title: "Close" }, index.h("sd-icon", { key: '8b8ecf1a65ae6c4ac0f8132d1f19800960244828', name: "close", size: 12, color: colors.text }))))));
56
56
  }
57
57
  };
58
58
  SdToastMessage.style = sdToastMessageCss();
@@ -41,7 +41,7 @@ const SdToggleButton = class {
41
41
  this.change.emit(newValue);
42
42
  };
43
43
  render() {
44
- return (index.h("label", { key: '9eb4abcfe8f3894198c8d8643150daa507e6f0e9', class: this.buttonClasses, "aria-label": this.label || 'toggle button' }, this.label, index.h("input", { key: 'e3d952af461da0fac978b8ce6bd55a6990907fb3', style: { display: 'none' }, type: "checkbox", onInput: this.handleChange })));
44
+ return (index.h("label", { key: '56d11c1aad1514aa11919403e81d8b4959b1bf82', class: this.buttonClasses, "aria-label": this.label || 'toggle button' }, this.label, index.h("input", { key: 'c4316f336ea6f27b90b437e39f0410f3da052a79', style: { display: 'none' }, type: "checkbox", onInput: this.handleChange })));
45
45
  }
46
46
  };
47
47
  SdToggleButton.style = sdToggleButtonCss();
@@ -37,7 +37,7 @@ const SdToggle = class {
37
37
  this.change.emit(newValue);
38
38
  };
39
39
  render() {
40
- return (index.h("label", { key: 'ca85bc0493aff9ff17108696ddb8af29734b00f5', "aria-label": this.label || 'toggle', class: this.toggleClasses }, index.h("input", { key: 'b99a4fa0d557968e50b302332778faaf1b46f8cc', type: "checkbox", checked: this.value, disabled: this.disabled, onInput: this.handleChange }), this.label && index.h("span", { key: 'e62ca806b95463c7807f82ace61b4aa0affec962', class: "sd-toggle__label" }, this.label), index.h("div", { key: '6923da9a043df0d0d7fc0ecf2fe175857279e9b3', class: "sd-toggle__track" }, index.h("div", { key: '090dfbcf308f26b8e200d0e2cd69d44b0f5cb8bf', class: "sd-toggle__thumb" }))));
40
+ return (index.h("label", { key: 'c874dbaa2a3f3743b7f3c93a6af4efd63660f3b2', "aria-label": this.label || 'toggle', class: this.toggleClasses }, index.h("input", { key: 'da204ac9048128501f68b3dac55c9b30bbc0cd83', type: "checkbox", checked: this.value, disabled: this.disabled, onInput: this.handleChange }), this.label && index.h("span", { key: '5eeb06d12bf94610a10e6000a7d0f3c750bb918f', class: "sd-toggle__label" }, this.label), index.h("div", { key: 'bf0dd0fab7ced78f4a5728d4d1b9c8995ad1130a', class: "sd-toggle__track" }, index.h("div", { key: '92c08a823a1b9d28814e812b7660d33ea7238a32', class: "sd-toggle__thumb" }))));
41
41
  }
42
42
  };
43
43
  SdToggle.style = sdToggleCss();
@@ -6,6 +6,7 @@
6
6
  "components/sd-tooltip/sd-tooltip.js",
7
7
  "components/sd-form/sd-form.js",
8
8
  "components/sd-modal-card/sd-modal-card.js",
9
+ "components/sd-radio/sd-radio.js",
9
10
  "components/sd-radio-button-group/sd-radio-button-group.js",
10
11
  "components/sd-radio-group/sd-radio-group.js",
11
12
  "components/sd-select/sd-select.js",
@@ -6,7 +6,7 @@ export class SdBadge {
6
6
  label = '';
7
7
  render() {
8
8
  const resolvedColor = resolveColor(this.color);
9
- return (h(Host, { key: '8e74db398e9dafb57d276ef22ee8ab5891526e15', style: { '--sd-badge-color': resolvedColor } }, h("div", { key: '23d4800224630f028e26b43e672ec6a33b4d2f28', class: `sd-badge sd-badge--${this.size}` }, h("div", { key: '376446696e366a9b6e1f816a45fcf073ef967c6d', class: "sd-badge__dot" }), h("div", { key: '750ab1c9792fa8174cf5ecdeb0c709bfaff2294a', class: "sd-badge__label" }, this.label))));
9
+ return (h(Host, { key: '8eb13329f88c90812a23ba041a5700380094bacc', style: { '--sd-badge-color': resolvedColor } }, h("div", { key: 'aab9f3bf7db3938719b67caca19bc8df9afceb95', class: `sd-badge sd-badge--${this.size}` }, h("div", { key: '0ecea50ca06c4c9925ccb4bcde1faa0f85289c29', class: "sd-badge__dot" }), h("div", { key: '8458b333558c33d7950ccb4354a7207e4d059671', class: "sd-badge__label" }, this.label))));
10
10
  }
11
11
  static get is() { return "sd-badge"; }
12
12
  static get originalStyleUrls() {
@@ -3,7 +3,7 @@ export class SdCard {
3
3
  bordered = true;
4
4
  cardClassName = '';
5
5
  render() {
6
- return (h(Host, { key: 'f7012e01206131628820f41ede93ce68cb121fe4', class: `sd-card ${this.bordered ? 'sd-card--bordered' : ''} ${this.cardClassName}` }, h("slot", { key: '5b978729afb2cf6fef8a8ad696029ef09dbb0dd9' })));
6
+ return (h(Host, { key: '3182001dcfc5347e3995a31d8e333e01f285df5a', class: `sd-card ${this.bordered ? 'sd-card--bordered' : ''} ${this.cardClassName}` }, h("slot", { key: 'e2824b9cd65b9c4ba668f7f3ba933a361405b822' })));
7
7
  }
8
8
  static get is() { return "sd-card"; }
9
9
  static get originalStyleUrls() {
@@ -76,7 +76,7 @@ export class SdDatePicker {
76
76
  this.isOpen = false;
77
77
  };
78
78
  render() {
79
- return (h(Host, { key: '4eccf6134d01546c9a47ddc3806233dd68195a8a', class: { 'sd-date-picker': true, 'sd-date-picker--disabled': this.disabled } }, h("sd-input", { key: 'f1c015db2efd3801792266d7abb6391e2751c225', ref: el => (this.inputEl = el), value: this.value, label: this.label, "inside-label": true, readonly: true, disabled: this.disabled, placeholder: this.placeholder, inputClass: "sd-date-picker__input", onClick: () => this.openMenu() }, h("sd-icon", { key: '671f3d5166618228d2018477b4b9f1b3c13fa312', slot: "prefix", name: "date", size: "16", color: this.disabled ? 'grey_65' : 'grey_70', class: "date-icon", onClick: () => this.openMenu() })), this.isOpen && (h("sd-portal", { key: 'ca295d75db67328d189fefd16e3598f0a4b1b5fe', open: this.isOpen, parentRef: this.inputEl, onSdClose: this.handleClose }, h("div", { key: 'c9b0d87465936760ecf0453cfb5dad00247b7612', class: "sd-date-picker__menu" }, h("div", { key: 'fac0f5d91634d394cecda4c1a149103e12e210c6', class: "sd-date-picker__header" }, h("div", { key: '2f55a9ec84e74135a7c1f8c1925f557ad85e43a8', class: "year-nav" }, h("button", { key: '811d3eab71e03c23214d3da2e829d62af73c8828', type: "button", name: "prev-year", title: "Previous Year", onClick: () => this.setCurrentYear(this.currentYear - 1) }, h("sd-icon", { key: '60bb560ea0aedc61a6ba7565b4f8daf95a33c9cf', name: "arrowLeft", size: "12", color: "#CCCCCC" })), h("span", { key: '976c256e704793d39e98a3e80ac0eb536a32b361', class: "year-nav__current" }, this.currentYear), h("button", { key: '32ecf743b29434b1aeb9ef72d49a2254acd4e514', type: "button", name: "next-year", title: "Next Year", onClick: () => this.setCurrentYear(this.currentYear + 1) }, h("sd-icon", { key: 'a70f679e27d00db53047b387fa9d16520cb0369f', name: "arrowRight", size: "12", color: "#CCCCCC" }))), h("div", { key: '1d5e17dd8b4c0081a2cda2991e8e0055f0c4d24d', class: "month-nav" }, h("button", { key: '3fa7edc4eb796e298b12ea64ac1aa0d83bf6ddb1', type: "button", name: "prev-month", title: "Previous ", onClick: () => this.handleUpdateMonth('prev') }, h("sd-icon", { key: '3d6ed03bb28a1ccb711c97d31ff6d667ada8c410', name: "arrowLeft", size: "12", color: "#CCCCCC" })), h("span", { key: '5b3b1c05eb303ff7cb4a7ad599abd45747822589', class: "month-nav__current" }, this.currentMonth, "\uC6D4"), h("button", { key: '6718f389605d55f7c08934360171b61a28e2646d', type: "button", name: "next-month", title: "Next Month", onClick: () => this.handleUpdateMonth('next') }, h("sd-icon", { key: '8216564c82d61220f8d99bc9759a83994839a836', name: "arrowRight", size: "12", color: "#CCCCCC" })))), h("div", { key: 'd3e9f16ec52b5ba82af3c5349966402c271ddb00', class: "sd-date-picker__days" }, ['일', '월', '화', '수', '목', '금', '토'].map(day => (h("div", { key: day, class: "day" }, day)))), h("div", { key: 'a2b2b56fefcecc67a06b5db9ae0a7767cca163f5', class: "sd-date-picker__body" }, [
79
+ return (h(Host, { key: '9e98df6d7c18ca302385b2305ad1224819f51a48', class: { 'sd-date-picker': true, 'sd-date-picker--disabled': this.disabled } }, h("sd-input", { key: '647c796797c4fca9d1d7560258acb0ad0529aa4b', ref: el => (this.inputEl = el), value: this.value, label: this.label, "inside-label": true, readonly: true, disabled: this.disabled, placeholder: this.placeholder, inputClass: "sd-date-picker__input", onClick: () => this.openMenu() }, h("sd-icon", { key: 'ee168dc3a5494de5140f524bacf65cfe8b92c666', slot: "prefix", name: "date", size: "16", color: this.disabled ? 'grey_65' : 'grey_70', class: "date-icon", onClick: () => this.openMenu() })), this.isOpen && (h("sd-portal", { key: '9edef448710cb08c9c80ce5d70e23fc286eff656', open: this.isOpen, parentRef: this.inputEl, onSdClose: this.handleClose }, h("div", { key: 'f717e1a9505ebe9b991707f45fc374cf456dfb87', class: "sd-date-picker__menu" }, h("div", { key: '597e7523a0ee808e13c7ce54983abb391f27b259', class: "sd-date-picker__header" }, h("div", { key: 'f46e44f7336d6332190d5c92b654faa34da71fcb', class: "year-nav" }, h("button", { key: 'c2e849c39d6ffcc144fb5cac20224f497f3698b8', type: "button", name: "prev-year", title: "Previous Year", onClick: () => this.setCurrentYear(this.currentYear - 1) }, h("sd-icon", { key: '454a351069797007019657f1239aab5f2b0be482', name: "arrowLeft", size: "12", color: "#CCCCCC" })), h("span", { key: '7cd18da8a3e2220b583f0cb35eca4096f8770275', class: "year-nav__current" }, this.currentYear), h("button", { key: 'd589b992604fcd958a342de1cfa548a2cee51c36', type: "button", name: "next-year", title: "Next Year", onClick: () => this.setCurrentYear(this.currentYear + 1) }, h("sd-icon", { key: 'fca1aecf9cfcfe0aa350cfe7a39837524aeebf4f', name: "arrowRight", size: "12", color: "#CCCCCC" }))), h("div", { key: '2d62f23c487d673e0efcfa8bacff56f8076c90de', class: "month-nav" }, h("button", { key: '83149c7f67f68972b662981464db444e75cf3513', type: "button", name: "prev-month", title: "Previous ", onClick: () => this.handleUpdateMonth('prev') }, h("sd-icon", { key: '039d63c5770614e29305ecda288d7f26ec2f74cc', name: "arrowLeft", size: "12", color: "#CCCCCC" })), h("span", { key: '97be0d41c505853e6ebb3f5481b81e6f3f1694c2', class: "month-nav__current" }, this.currentMonth, "\uC6D4"), h("button", { key: '02f53526b005c29a7118f3a7bf93691262c57421', type: "button", name: "next-month", title: "Next Month", onClick: () => this.handleUpdateMonth('next') }, h("sd-icon", { key: '16552dcf8dea941badad716f90c86f968cfdf312', name: "arrowRight", size: "12", color: "#CCCCCC" })))), h("div", { key: 'c4e35720676d4fc0bd7b8903082f24f00b34036d', class: "sd-date-picker__days" }, ['일', '월', '화', '수', '목', '금', '토'].map(day => (h("div", { key: day, class: "day" }, day)))), h("div", { key: 'b69032b67e0bcc6885a789c2ce1b181abf68979a', class: "sd-date-picker__body" }, [
80
80
  ...this.calendar.prevMonthDays,
81
81
  ...this.calendar.days,
82
82
  ...this.calendar.afterMonthDays,
@@ -155,10 +155,10 @@ export class SdDateRangePicker {
155
155
  this.setHoverDate(hoverDate);
156
156
  }
157
157
  render() {
158
- return (h(Host, { key: '1ac991910d1613bf142520081212be747bbeafd4', class: {
158
+ return (h(Host, { key: '475b3135158233bce6f200f47c860790b3b68933', class: {
159
159
  'sd-date-range-picker': true,
160
160
  'sd-date-range-picker--disabled': this.disabled,
161
- } }, h("sd-input", { key: 'a9088dd29923544f749e09678856376dc8606f7d', ref: el => (this.inputEl = el), value: !!this.dateRange[0] ? `${this.dateRange[0]} ~ ${this.dateRange[1]}` : '', label: this.label, "inside-label": true, readonly: true, disabled: this.disabled, placeholder: this.placeholder, inputClass: "sd-date-range-picker__input", onClick: () => this.openMenu() }, h("sd-icon", { key: '866ba94372f088fab53a01e0f13fc883356f6586', slot: "prefix", name: "date", size: "16", color: this.disabled ? 'grey_65' : 'grey_70', class: "date-icon", onClick: () => this.openMenu() })), this.isOpen && (h("sd-portal", { key: '95ab0375cf56201bd285c522844d7fa387ae7fc9', open: this.isOpen, parentRef: this.inputEl, onSdClose: this.closeMenu }, h("div", { key: 'fc7bb357b66b7e70ce3351ab6861b778a00eb6d8', class: "sd-date-range-picker__menu" }, h("div", { key: '852ff12fdb66c008b92d7c2e828a6a7a952e7afe', class: "sd-date-range-picker__header mb-16pxr flex flex-nowrap items-center justify-center" }, h("button", { key: '980cb27f0c9e1629b5cf85060b47845db0e1f9b7', type: "button", name: "prev", title: "Previous", onClick: () => this.setPrevYear(this.prevYear - 1) }, h("sd-icon", { key: '7bc19cc051ff2af8fadf4eb7b389456fae03f060', name: "arrowLeft", size: "12", color: "#CCCCCC" })), h("div", { key: '4836b382280bf948afa7ed85eeb024052fd86aab', class: "header-label" }, this.prevYear), h("button", { key: 'fe7b4f50bb0515c8dd294274792dbbe3baca3af7', type: "button", name: "next", title: "Next", onClick: () => this.setPrevYear(this.prevYear + 1) }, h("sd-icon", { key: '2f86e0b14db96213954cf17282bcc66ed0b80ded', name: "arrowRight", size: "12", color: "#CCCCCC" }))), h("div", { key: '0d63ed5aef2ede30dd88dd25b3314e4ec8ae79ce', class: "sd-date-range-picker__body" }, [this.prevCalendar, this.nextCalendar].map((calendar, index) => (h(Fragment, null, index === 1 && h("div", { class: "separator" }), h("div", { key: index, class: "calendar-container" }, h("div", { class: "calendar-header" }, h("button", { type: "button", name: "month", title: "Month", class: index === 0 ? 'header-button-prev' : 'header-button-next', onClick: () => this.updateYearMonth(index === 0 ? 'prev' : 'next') }, h("sd-icon", { name: index === 0 ? 'arrowLeft' : 'arrowRight', size: "12", color: "#CCCCCC" })), index === 0
161
+ } }, h("sd-input", { key: 'c6cd9405fbcc12fc772720a64b979b6ad88fe51c', ref: el => (this.inputEl = el), value: !!this.dateRange[0] ? `${this.dateRange[0]} ~ ${this.dateRange[1]}` : '', label: this.label, "inside-label": true, readonly: true, disabled: this.disabled, placeholder: this.placeholder, inputClass: "sd-date-range-picker__input", onClick: () => this.openMenu() }, h("sd-icon", { key: '75abee918222b6e5123d3aef220f1f54cbcd63eb', slot: "prefix", name: "date", size: "16", color: this.disabled ? 'grey_65' : 'grey_70', class: "date-icon", onClick: () => this.openMenu() })), this.isOpen && (h("sd-portal", { key: '87025f908882e4199336c053f8d80de32e43764b', open: this.isOpen, parentRef: this.inputEl, onSdClose: this.closeMenu }, h("div", { key: '28c20713fe1c90610a85ca957a3cf11eb919f322', class: "sd-date-range-picker__menu" }, h("div", { key: '3bfdbd8cbdc09ea4b63bf8d90e90f9b41411d2e6', class: "sd-date-range-picker__header mb-16pxr flex flex-nowrap items-center justify-center" }, h("button", { key: 'a553069fe691b3a2498c2d4d6479746eac6e57de', type: "button", name: "prev", title: "Previous", onClick: () => this.setPrevYear(this.prevYear - 1) }, h("sd-icon", { key: '8781d59f7a8e5f3207f989c54bd5dbfcec53c616', name: "arrowLeft", size: "12", color: "#CCCCCC" })), h("div", { key: '9453881cff191a277235e99a1f7c1846ddb4fb27', class: "header-label" }, this.prevYear), h("button", { key: '0dcd78e180e6c57cdc6be30cd5715beec902b826', type: "button", name: "next", title: "Next", onClick: () => this.setPrevYear(this.prevYear + 1) }, h("sd-icon", { key: '84165b81ceba4f9da6858cea81ca0c166acc5709', name: "arrowRight", size: "12", color: "#CCCCCC" }))), h("div", { key: '7f57af4b26543946d4cddd2a8dff4e679c8e84da', class: "sd-date-range-picker__body" }, [this.prevCalendar, this.nextCalendar].map((calendar, index) => (h(Fragment, null, index === 1 && h("div", { class: "separator" }), h("div", { key: index, class: "calendar-container" }, h("div", { class: "calendar-header" }, h("button", { type: "button", name: "month", title: "Month", class: index === 0 ? 'header-button-prev' : 'header-button-next', onClick: () => this.updateYearMonth(index === 0 ? 'prev' : 'next') }, h("sd-icon", { name: index === 0 ? 'arrowLeft' : 'arrowRight', size: "12", color: "#CCCCCC" })), index === 0
162
162
  ? `${this.prevYear}.${String(this.prevMonth).padStart(2, '0')}`
163
163
  : `${this.nextYear}.${String(this.nextMonth).padStart(2, '0')}`), h("div", { class: "calendar-days" }, ['일', '월', '화', '수', '목', '금', '토'].map(day => (h("sd-date-box", { key: day, date: day, disabled: true, class: "day" })))), h("div", { class: "calendar-body mt-12pxr grid grid-cols-7 gap-y-8pxr" }, [...calendar.prevMonthDays, ...calendar.days, ...calendar.afterMonthDays].map((day, idx) => (h("sd-date-box", { key: `prev${day}_${idx}`, date: !day ? '' : Number(day), selected: this.dateRange.some(date => date === this.formatDate(index, Number(day))), type: this.getDateBoxType(this.formatDate(index, Number(day))), isToday: today === this.formatDate(index, Number(day)), disabled: !day ? true : this.isDisabledDate(this.formatDate(index, Number(day))), inRange: this.isDateInRange(this.formatDate(index, Number(day))), isStartDate: this.dateRange[0] === this.formatDate(index, Number(day)), isEndDate: this.dateRange[1] === this.formatDate(index, Number(day)), onClick: () => this.handleDateClick(index, Number(day)), onMouseOver: () => this.handleDateHover(index, Number(day)) }))))))))))))));
164
164
  }
@@ -113,15 +113,15 @@ export class SdField {
113
113
  }
114
114
  }
115
115
  render() {
116
- return (h(Host, { key: '16609b3313318dfc4db917a32bd44e6e2cb2f4e7', class: {
116
+ return (h(Host, { key: '88155b0b6b8393687ab44eeb20562ebffb782daa', class: {
117
117
  'sd-field': true,
118
118
  'sd-field--has-label': !!this.label,
119
119
  'sd-field--has-label-inside': !!this.label && this.insideLabel,
120
120
  [this.fieldStatus]: !!this.fieldStatus,
121
- } }, h("div", { key: '5c3056123cb54f8d6c26406ae76b13219d289f9c', class: "sd-field__wrapper" }, this.renderLabel(this.label), h("div", { key: '786bcd6ec3651bb226013474fae112c592ec6890', class: {
121
+ } }, h("div", { key: '437b3d7f8253159ea364d28c342a2e345db6fd4c', class: "sd-field__wrapper" }, this.renderLabel(this.label), h("div", { key: 'b6f50648cdf7a2278706cd28423c26e091b96ea0', class: {
122
122
  'sd-field__control': true,
123
123
  'sd-field__control--label-inside ': !!this.label && this.insideLabel,
124
- } }, h("slot", { key: '60ae2f97cc7225930df9d17958fe78d3dd8e01e3' }))), this.errorMsg && h("div", { key: '4984f7e64c6c6611063c46b5c7ea21a0ae0b5343', class: "sd-field__error-message" }, this.errorMsg)));
124
+ } }, h("slot", { key: '8795191648dd56fd4a5544e1ae1a35812c3898a2' }))), this.errorMsg && h("div", { key: '9b35ff3fd9837767f320706addcec41d69e1b048', class: "sd-field__error-message" }, this.errorMsg)));
125
125
  }
126
126
  renderLabel(label) {
127
127
  if (!label)
@@ -1,9 +1,11 @@
1
1
  sd-file-picker {
2
2
  display: inline-flex;
3
+ width: 100%;
3
4
  }
4
5
 
5
6
  .sd-file-picker {
6
7
  display: inline-flex;
8
+ width: 100%;
7
9
  align-items: center;
8
10
  max-width: var(--picker-width, 100%);
9
11
  height: 28px;
@@ -7,7 +7,6 @@ export class SdFilePicker {
7
7
  inline = false;
8
8
  multiple = false;
9
9
  accept;
10
- width;
11
10
  internalValue = null;
12
11
  hovered = false;
13
12
  showTooltip = false;
@@ -92,15 +91,15 @@ export class SdFilePicker {
92
91
  render() {
93
92
  const hasFiles = this.hasFiles();
94
93
  const displayText = this.getDisplayText();
95
- return (h("div", { key: 'dac7726e25ba3bf4afa0da022cb3e472a8891cec', class: {
94
+ return (h("div", { key: 'a41d17071dc1c54af38a25c143f7df3a2f8d8f83', class: {
96
95
  'sd-file-picker': true,
97
96
  [this.getStatusClass()]: true,
98
97
  'sd-file-picker--inline': this.inline,
99
- }, onClick: this.handleClick, onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false) }, h("input", { key: '1ab733ebf6d98ad792b7b6d06f562b014504a2fe', ref: el => (this.fileInputRef = el), type: "file", class: "sd-file-picker__input", disabled: this.disabled, multiple: this.multiple, accept: this.accept, onInput: this.handleFileChange, "aria-label": this.placeholder }), h("sd-icon", { key: 'c82214c83107f01314de1eb380a421fc80af043f', name: "attachFile", size: 16, color: this.getIconColor(), class: "sd-file-picker__icon" }), h("div", { key: '11f5bfca6d50fd4e78c902ddc52995b3ed399b21', ref: el => (this.fileNamesRef = el), class: {
98
+ }, onClick: this.handleClick, onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false) }, h("input", { key: '31bd3ccd4fc132037b67d189478af6dcb5bf9c4a', ref: el => (this.fileInputRef = el), type: "file", class: "sd-file-picker__input", disabled: this.disabled, multiple: this.multiple, accept: this.accept, onInput: this.handleFileChange, "aria-label": this.placeholder }), h("sd-icon", { key: 'a422d6902ec05313365d2832f1f77e7100dcf9c7', name: "attachFile", size: 16, color: this.getIconColor(), class: "sd-file-picker__icon" }), h("div", { key: 'c0ef65e1d2f5e2eea86d4047b990932d711e68bb', ref: el => (this.fileNamesRef = el), class: {
100
99
  'sd-file-picker__text': true,
101
100
  'sd-file-picker__text--placeholder': !hasFiles,
102
101
  'sd-file-picker__text--active': hasFiles,
103
- } }, displayText), !this.disabled && hasFiles && (h("sd-icon", { key: 'e429e10a285f12e16d1fa362e51903f12119bf3b', name: "close", size: 12, color: "#888888", class: "sd-file-picker__clear-icon", onClick: this.handleClear })), this.showTooltip && hasFiles && this.hovered && (h("div", { key: '1a7c924eed094fdb070ed5711a9b09aeea8f3c56', class: "sd-file-picker__tooltip" }, displayText))));
102
+ } }, displayText), !this.disabled && hasFiles && (h("sd-icon", { key: 'b57318271a1282655a6c7f90247f6e6a1813bceb', name: "close", size: 12, color: "#888888", class: "sd-file-picker__clear-icon", onClick: this.handleClear })), this.showTooltip && hasFiles && this.hovered && (h("div", { key: 'cc913b203d72fb0240ea22d7d266953c5ef31476', class: "sd-file-picker__tooltip" }, displayText))));
104
103
  }
105
104
  static get is() { return "sd-file-picker"; }
106
105
  static get originalStyleUrls() {
@@ -236,25 +235,6 @@ export class SdFilePicker {
236
235
  "setter": false,
237
236
  "reflect": false,
238
237
  "attribute": "accept"
239
- },
240
- "width": {
241
- "type": "any",
242
- "mutable": false,
243
- "complexType": {
244
- "original": "number | string",
245
- "resolved": "number | string | undefined",
246
- "references": {}
247
- },
248
- "required": false,
249
- "optional": true,
250
- "docs": {
251
- "tags": [],
252
- "text": ""
253
- },
254
- "getter": false,
255
- "setter": false,
256
- "reflect": false,
257
- "attribute": "width"
258
238
  }
259
239
  };
260
240
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sd-file-picker.js","sourceRoot":"","sources":["../../../src/components/sd-file-picker/sd-file-picker.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n ComponentInterface,\n Component,\n Element,\n Prop,\n State,\n Event,\n EventEmitter,\n Watch,\n h,\n} from '@stencil/core';\n\n@Component({\n tag: 'sd-file-picker',\n styleUrl: 'sd-file-picker.scss',\n})\nexport class SdFilePicker implements ComponentInterface {\n @Element() el!: HTMLElement;\n\n @Prop({ mutable: true }) value?: File[] | File | null = null;\n @Prop() placeholder: string = 'Click to upload';\n @Prop() disabled: boolean = false;\n @Prop() inline: boolean = false;\n @Prop() multiple: boolean = false;\n @Prop() accept?: string;\n @Prop() width?: number | string;\n\n @State() private internalValue: File[] | File | null = null;\n @State() private hovered: boolean = false;\n @State() private showTooltip: boolean = false;\n\n private fileInputRef?: HTMLInputElement;\n private fileNamesRef?: HTMLElement;\n\n @Event({ eventName: 'sdUpdate' }) update!: EventEmitter<File[] | File | null>;\n\n @Watch('value')\n valueChanged(newValue: File[] | File | null) {\n this.internalValue = newValue;\n }\n\n componentDidLoad() {\n this.checkOverflow();\n }\n\n componentDidUpdate() {\n this.checkOverflow();\n }\n\n private handleFileChange = (event: Event) => {\n const input = event.target as HTMLInputElement;\n const files = input.files;\n\n if (!files || files.length === 0) {\n return;\n }\n\n const fileArray = Array.from(files);\n\n if (this.multiple) {\n this.internalValue = fileArray;\n } else {\n this.internalValue = fileArray[0];\n }\n this.value = this.internalValue;\n this.update?.emit(this.value);\n };\n\n private handleClear = (event: Event) => {\n event.stopPropagation();\n const clearedValue = this.multiple ? [] : null;\n this.value = clearedValue;\n this.internalValue = clearedValue;\n this.update?.emit(clearedValue);\n\n if (this.fileInputRef) {\n this.fileInputRef.value = '';\n }\n };\n\n private handleClick = () => {\n if (this.disabled) return;\n this.fileInputRef?.click();\n };\n\n private getStatusClass(): string {\n if (this.disabled) return 'sd-file-picker--disabled';\n if (this.hasFiles()) return 'sd-file-picker--active';\n return '';\n }\n\n private hasFiles(): boolean {\n if (!this.internalValue) return false;\n if (Array.isArray(this.internalValue)) {\n return this.internalValue.length > 0;\n }\n return true;\n }\n\n private getDisplayText(): string {\n if (!this.hasFiles()) return this.placeholder;\n\n if (Array.isArray(this.internalValue)) {\n return this.internalValue.map(f => f.name).join(', ');\n }\n\n return this.internalValue?.name || this.placeholder;\n }\n\n private checkOverflow() {\n if (!this.fileNamesRef) return;\n const isOverflowing = this.fileNamesRef.scrollWidth > this.fileNamesRef.clientWidth;\n this.showTooltip = isOverflowing;\n }\n\n private getIconColor(): string {\n if (this.disabled) {\n return this.inline ? 'grey_45' : 'grey_55';\n }\n return 'grey_70';\n }\n\n render() {\n const hasFiles = this.hasFiles();\n const displayText = this.getDisplayText();\n\n return (\n <div\n class={{\n 'sd-file-picker': true,\n [this.getStatusClass()]: true,\n 'sd-file-picker--inline': this.inline,\n }}\n onClick={this.handleClick}\n onMouseEnter={() => (this.hovered = true)}\n onMouseLeave={() => (this.hovered = false)}\n >\n <input\n ref={el => (this.fileInputRef = el as HTMLInputElement)}\n type=\"file\"\n class=\"sd-file-picker__input\"\n disabled={this.disabled}\n multiple={this.multiple}\n accept={this.accept}\n onInput={this.handleFileChange}\n aria-label={this.placeholder}\n />\n\n <sd-icon name=\"attachFile\" size={16} color={this.getIconColor()} class=\"sd-file-picker__icon\" />\n\n <div\n ref={el => (this.fileNamesRef = el as HTMLElement)}\n class={{\n 'sd-file-picker__text': true,\n 'sd-file-picker__text--placeholder': !hasFiles,\n 'sd-file-picker__text--active': hasFiles,\n }}\n >\n {displayText}\n </div>\n\n {!this.disabled && hasFiles && (\n <sd-icon\n name=\"close\"\n size={12}\n color=\"#888888\"\n class=\"sd-file-picker__clear-icon\"\n onClick={this.handleClear}\n />\n )}\n\n {this.showTooltip && hasFiles && this.hovered && (\n <div class=\"sd-file-picker__tooltip\">{displayText}</div>\n )}\n </div>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"sd-file-picker.js","sourceRoot":"","sources":["../../../src/components/sd-file-picker/sd-file-picker.tsx"],"names":[],"mappings":"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","sourcesContent":["import {\n ComponentInterface,\n Component,\n Element,\n Prop,\n State,\n Event,\n EventEmitter,\n Watch,\n h,\n} from '@stencil/core';\n\n@Component({\n tag: 'sd-file-picker',\n styleUrl: 'sd-file-picker.scss',\n})\nexport class SdFilePicker implements ComponentInterface {\n @Element() el!: HTMLElement;\n\n @Prop({ mutable: true }) value?: File[] | File | null = null;\n @Prop() placeholder: string = 'Click to upload';\n @Prop() disabled: boolean = false;\n @Prop() inline: boolean = false;\n @Prop() multiple: boolean = false;\n @Prop() accept?: string;\n\n @State() private internalValue: File[] | File | null = null;\n @State() private hovered: boolean = false;\n @State() private showTooltip: boolean = false;\n\n private fileInputRef?: HTMLInputElement;\n private fileNamesRef?: HTMLElement;\n\n @Event({ eventName: 'sdUpdate' }) update!: EventEmitter<File[] | File | null>;\n\n @Watch('value')\n valueChanged(newValue: File[] | File | null) {\n this.internalValue = newValue;\n }\n\n componentDidLoad() {\n this.checkOverflow();\n }\n\n componentDidUpdate() {\n this.checkOverflow();\n }\n\n private handleFileChange = (event: Event) => {\n const input = event.target as HTMLInputElement;\n const files = input.files;\n\n if (!files || files.length === 0) {\n return;\n }\n\n const fileArray = Array.from(files);\n\n if (this.multiple) {\n this.internalValue = fileArray;\n } else {\n this.internalValue = fileArray[0];\n }\n this.value = this.internalValue;\n this.update?.emit(this.value);\n };\n\n private handleClear = (event: Event) => {\n event.stopPropagation();\n const clearedValue = this.multiple ? [] : null;\n this.value = clearedValue;\n this.internalValue = clearedValue;\n this.update?.emit(clearedValue);\n\n if (this.fileInputRef) {\n this.fileInputRef.value = '';\n }\n };\n\n private handleClick = () => {\n if (this.disabled) return;\n this.fileInputRef?.click();\n };\n\n private getStatusClass(): string {\n if (this.disabled) return 'sd-file-picker--disabled';\n if (this.hasFiles()) return 'sd-file-picker--active';\n return '';\n }\n\n private hasFiles(): boolean {\n if (!this.internalValue) return false;\n if (Array.isArray(this.internalValue)) {\n return this.internalValue.length > 0;\n }\n return true;\n }\n\n private getDisplayText(): string {\n if (!this.hasFiles()) return this.placeholder;\n\n if (Array.isArray(this.internalValue)) {\n return this.internalValue.map(f => f.name).join(', ');\n }\n\n return this.internalValue?.name || this.placeholder;\n }\n\n private checkOverflow() {\n if (!this.fileNamesRef) return;\n const isOverflowing = this.fileNamesRef.scrollWidth > this.fileNamesRef.clientWidth;\n this.showTooltip = isOverflowing;\n }\n\n private getIconColor(): string {\n if (this.disabled) {\n return this.inline ? 'grey_45' : 'grey_55';\n }\n return 'grey_70';\n }\n\n render() {\n const hasFiles = this.hasFiles();\n const displayText = this.getDisplayText();\n\n return (\n <div\n class={{\n 'sd-file-picker': true,\n [this.getStatusClass()]: true,\n 'sd-file-picker--inline': this.inline,\n }}\n onClick={this.handleClick}\n onMouseEnter={() => (this.hovered = true)}\n onMouseLeave={() => (this.hovered = false)}\n >\n <input\n ref={el => (this.fileInputRef = el as HTMLInputElement)}\n type=\"file\"\n class=\"sd-file-picker__input\"\n disabled={this.disabled}\n multiple={this.multiple}\n accept={this.accept}\n onInput={this.handleFileChange}\n aria-label={this.placeholder}\n />\n\n <sd-icon name=\"attachFile\" size={16} color={this.getIconColor()} class=\"sd-file-picker__icon\" />\n\n <div\n ref={el => (this.fileNamesRef = el as HTMLElement)}\n class={{\n 'sd-file-picker__text': true,\n 'sd-file-picker__text--placeholder': !hasFiles,\n 'sd-file-picker__text--active': hasFiles,\n }}\n >\n {displayText}\n </div>\n\n {!this.disabled && hasFiles && (\n <sd-icon\n name=\"close\"\n size={12}\n color=\"#888888\"\n class=\"sd-file-picker__clear-icon\"\n onClick={this.handleClear}\n />\n )}\n\n {this.showTooltip && hasFiles && this.hovered && (\n <div class=\"sd-file-picker__tooltip\">{displayText}</div>\n )}\n </div>\n );\n }\n}\n"]}
@@ -144,7 +144,7 @@ export class SdFloatingPopover {
144
144
  this.close.emit();
145
145
  }
146
146
  render() {
147
- return h("slot", { key: 'f2000891d7d3bd71982f591bf953d1421f67fb5e' });
147
+ return h("slot", { key: '770ec3be9d1e2b830eaebfde37a664feafc3da3b' });
148
148
  }
149
149
  static get is() { return "sd-floating-portal"; }
150
150
  static get originalStyleUrls() {
@@ -47,9 +47,9 @@ export class SdGuide {
47
47
  };
48
48
  render() {
49
49
  const { name: iconName, size: iconSize, color: iconColor } = GUIDE_ICON[this.type];
50
- return (h(Host, { key: 'a7a284528f1bf4c24cbf4c645c600bfdb8ac3397', style: {
50
+ return (h(Host, { key: '3e9133e450e136c9fb34e5107d2f7fc41ee9b8fe', style: {
51
51
  '--sd-guide-color': GUIDE_ICON[this.type].color,
52
- } }, h("sd-button", { key: '7a31bb752942f693d77e687b7ee433772f0fb968', ref: el => (this.guideRef = el), class: this.guideClass, variant: this.popupShow ? 'primary' : 'outline', label: this.label || GUIDE_LABEL[this.type], size: "sm", color: this.popupShow ? GUIDE_ICON[this.type].color : 'grey_45', icon: iconName, iconColor: this.popupShow ? 'white' : iconColor, iconSize: iconSize, noHover: this.popupShow, onClick: this.handleClickGuide }), this.type === 'help' && this.popupShow && (h("sd-portal", { key: 'b90a2c0594d2b9a09aad39954400fc648b14b776', open: this.popupShow, parentRef: this.guideRef, onSdClose: this.closeDropdown, offset: [0, 4] }, h("div", { key: '5f74f1b359de72ce3224a6d85971dc599e9eca11', style: { position: 'absolute', width: '0px', height: '0px' } }, h("div", { key: 'c7f0fea72dec238904e6ec696f0de8d7b4d99139', class: "sd-guide__popup", style: { width: this.popupWidth ? this.popupWidth + 'px' : '426px' } }, h("sd-button", { key: '91d375b51051cc6689d57a22615ece587592d4cd', class: "sd-guide__popup__close", icon: "close", color: "grey_65", size: "md", variant: "ghost", noHover: true, onClick: this.closeDropdown }), h("div", { key: '182d31b38da2082c18ed6d25d6879e8e5d5fc839', class: "sd-guide__popup__header" }, h("sd-icon", { key: '21a45f953f436528e8a5a0d08af988cb7cbbbf0c', name: "helpOutline", size: 24, color: "green_65" }), h("h3", { key: 'f6f24e6584b585fb6719327fed01bff87df8b9b9', class: "sd-guide__popup__title" }, this.popupTitle || GUIDE_LABEL[this.type])), h("ul", { key: '87fc85b3bb2bdd0e902bd7dc81cd6e36447d5241', class: "sd-guide__popup__list" }, this.renderListItem(this.message))))))));
52
+ } }, h("sd-button", { key: '9d7180ecba36835ea168f1744600447249566e4f', ref: el => (this.guideRef = el), class: this.guideClass, variant: this.popupShow ? 'primary' : 'outline', label: this.label || GUIDE_LABEL[this.type], size: "sm", color: this.popupShow ? GUIDE_ICON[this.type].color : 'grey_45', icon: iconName, iconColor: this.popupShow ? 'white' : iconColor, iconSize: iconSize, noHover: this.popupShow, onClick: this.handleClickGuide }), this.type === 'help' && this.popupShow && (h("sd-portal", { key: '0e1bd7d6d660ae241a335da1a86c2f00974a0474', open: this.popupShow, parentRef: this.guideRef, onSdClose: this.closeDropdown, offset: [0, 4] }, h("div", { key: 'ca98debbce9293bb484511e4ff61c81e81278ca9', style: { position: 'absolute', width: '0px', height: '0px' } }, h("div", { key: 'edbdd10359823ff83b381f8dd36103439a96bb0d', class: "sd-guide__popup", style: { width: this.popupWidth ? this.popupWidth + 'px' : '426px' } }, h("sd-button", { key: '5422758a3fc4d1580355f483bfdf5701e5480e20', class: "sd-guide__popup__close", icon: "close", color: "grey_65", size: "md", variant: "ghost", noHover: true, onClick: this.closeDropdown }), h("div", { key: '10f3b78d9b18961680df80a2a11f036404ce9cfb', class: "sd-guide__popup__header" }, h("sd-icon", { key: '75f0a7094b5c02ae9f0c174f02414bc4a2175863', name: "helpOutline", size: 24, color: "green_65" }), h("h3", { key: '5f0beea41676ea92a7fdeea7ad63aa10882da241', class: "sd-guide__popup__title" }, this.popupTitle || GUIDE_LABEL[this.type])), h("ul", { key: 'd3f018859c31e5aa0ae3e55dd0be9bedc4d33e25', class: "sd-guide__popup__list" }, this.renderListItem(this.message))))))));
53
53
  }
54
54
  // 현재 2depth까지만 스타일 적용
55
55
  renderListItem(message, depth = 0) {
@@ -25,7 +25,7 @@ export class SdIcon {
25
25
  }
26
26
  render() {
27
27
  const IconComponent = Icons[this.name]?.[this.size];
28
- return (h("i", { key: '851c9b6fd0ac6bc9393a21e95184e158bced5fe6', class: this.getIconClasses(), style: this.iconStyle }, h(IconComponent, { key: 'a10dcad82179ba12a9e9754b0b2cdd1ef548b4a5', color: this.resolvedColor })));
28
+ return (h("i", { key: '1c418bee61e2b1e7286c15cb489953cd6969639c', class: this.getIconClasses(), style: this.iconStyle }, h(IconComponent, { key: 'cf93af4d1a911a6da2bef0cdfea104cb74627ec8', color: this.resolvedColor })));
29
29
  }
30
30
  static get is() { return "sd-icon"; }
31
31
  static get originalStyleUrls() {
@@ -90,7 +90,7 @@ export class SdInput {
90
90
  '--input-width': typeof this.width === 'number' ? `${this.width}px` : this.width,
91
91
  }
92
92
  : {};
93
- return (h("sd-field", { key: '78d338ae57d61752e8cb691197c3882f32ccfc16', name: this.name, label: this.label, insideLabel: this.insideLabel, rules: this.rules, error: this.error, disabled: this.disabled, focused: this.focused, hovered: this.hovered, status: this.status, useLabelRequired: this.useLabelRequired, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), style: inputWidth, onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false) }, h("label", { key: '180c948116cb0a644d2696a46a8040cd5f19010d', class: "sd-input__content", style: { width: '100%' } }, h("slot", { key: '4ead5aaaa62ac8c93d6207e04d5555e56f096a58', name: "prefix" }), h("input", { key: 'd5bce7f062c7550f6204f5df416122fe8e4a40f0', name: this.name, ref: el => (this.nativeEl = el), class: `sd-input__native ${this.inputClass}`, type: this.type, value: this.internalValue || '', placeholder: this.placeholder, disabled: this.disabled, readonly: this.readonly, autofocus: this.autoFocus, onInput: this.handleInput, onFocus: event => this.handleFocus('focus', event), onBlur: event => this.handleFocus('blur', event), style: this.inputStyle }), h("slot", { key: '9ab6a7556416dd5dbfea6b83f90b337366935b49', name: "suffix" }), this.clearable && this.internalValue && (h("sd-icon", { key: '7a803590e461dc740feb8bb55fd69c6dc11f3b62', name: "close", color: "grey_65", size: "16", class: "sd-input__clear-icon", onClick: async () => {
93
+ return (h("sd-field", { key: '1ea8809ec8f05e9713b26022014400811f3c4da2', name: this.name, label: this.label, insideLabel: this.insideLabel, rules: this.rules, error: this.error, disabled: this.disabled, focused: this.focused, hovered: this.hovered, status: this.status, useLabelRequired: this.useLabelRequired, labelTooltip: this.labelTooltip, labelTooltipProps: this.labelTooltipProps, ref: el => (this.formField = el), style: inputWidth, onMouseEnter: () => (this.hovered = true), onMouseLeave: () => (this.hovered = false) }, h("label", { key: 'f0f266bf75953342785b8296e40f7ca86018a75d', class: "sd-input__content", style: { width: '100%' } }, h("slot", { key: '2fa7295a91e35292d794879432195e9cb76bce1a', name: "prefix" }), h("input", { key: '5529de166855c571c385fb479f6dbfec148a6771', name: this.name, ref: el => (this.nativeEl = el), class: `sd-input__native ${this.inputClass}`, type: this.type, value: this.internalValue || '', placeholder: this.placeholder, disabled: this.disabled, readonly: this.readonly, autofocus: this.autoFocus, onInput: this.handleInput, onFocus: event => this.handleFocus('focus', event), onBlur: event => this.handleFocus('blur', event), style: this.inputStyle }), h("slot", { key: '5ae1f154e1ac870c8629ebf4b2007274d591018d', name: "suffix" }), this.clearable && this.internalValue && (h("sd-icon", { key: '57f515d933010326bd7f64ef74beb37df3fa7ba7', name: "close", color: "grey_65", size: "16", class: "sd-input__clear-icon", onClick: async () => {
94
94
  this.internalValue = '';
95
95
  await this.formField?.sdValidate();
96
96
  } })))));