@ncds/ui-admin 1.8.1 → 1.8.2

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 (438) hide show
  1. package/dist/cjs/src/components/badge/index.js +11 -0
  2. package/dist/cjs/src/components/date-picker/index.js +11 -0
  3. package/dist/cjs/src/components/image-file-input/components/index.js +16 -0
  4. package/dist/cjs/src/components/image-file-input/index.js +11 -0
  5. package/dist/cjs/src/components/progress-bar/components/index.js +27 -0
  6. package/dist/cjs/src/components/progress-bar/hooks/index.js +16 -0
  7. package/dist/cjs/src/components/progress-bar/index.js +33 -0
  8. package/dist/cjs/src/components/select/Select.js +0 -1
  9. package/dist/cjs/src/components/select-dropdown/index.js +11 -7
  10. package/dist/cjs/src/components/switch/index.js +11 -7
  11. package/dist/cjs/src/components/tooltip/Tooltip.js +170 -104
  12. package/dist/cjs/src/hooks/dropdown/index.js +61 -37
  13. package/dist/cjs/src/hooks/index.js +31 -25
  14. package/dist/cjs/vitest.config.js +13 -0
  15. package/dist/esm/src/components/badge/index.js +2 -1
  16. package/dist/esm/src/components/date-picker/index.js +1 -0
  17. package/dist/esm/src/components/empty-state/EmptyState.js +2 -3
  18. package/dist/esm/src/components/image-file-input/components/index.js +1 -0
  19. package/dist/esm/src/components/image-file-input/index.js +2 -1
  20. package/dist/esm/src/components/progress-bar/components/index.js +2 -0
  21. package/dist/esm/src/components/progress-bar/hooks/index.js +1 -0
  22. package/dist/esm/src/components/progress-bar/index.js +4 -1
  23. package/dist/esm/src/components/select/Select.js +0 -1
  24. package/dist/esm/src/components/select-dropdown/index.js +1 -1
  25. package/dist/esm/src/components/switch/index.js +1 -1
  26. package/dist/esm/src/components/tag/Tag.js +2 -3
  27. package/dist/esm/src/components/tooltip/Tooltip.js +172 -106
  28. package/dist/esm/src/hooks/dropdown/index.js +6 -6
  29. package/dist/esm/src/hooks/index.js +3 -3
  30. package/dist/esm/src/types/component-meta.js +2 -0
  31. package/dist/esm/vitest.config.js +7 -0
  32. package/dist/temp/src/components/badge/index.d.ts +1 -0
  33. package/dist/temp/src/components/badge/index.js +1 -0
  34. package/dist/temp/src/components/date-picker/index.d.ts +1 -0
  35. package/dist/temp/src/components/date-picker/index.js +1 -0
  36. package/dist/temp/src/components/empty-state/EmptyState.d.ts +3 -5
  37. package/dist/temp/src/components/empty-state/EmptyState.js +1 -2
  38. package/dist/temp/src/components/image-file-input/components/index.d.ts +1 -0
  39. package/dist/temp/src/components/image-file-input/components/index.js +1 -0
  40. package/dist/temp/src/components/image-file-input/index.d.ts +1 -0
  41. package/dist/temp/src/components/image-file-input/index.js +1 -0
  42. package/dist/temp/src/components/progress-bar/components/index.d.ts +2 -0
  43. package/dist/temp/src/components/progress-bar/components/index.js +2 -0
  44. package/dist/temp/src/components/progress-bar/hooks/index.d.ts +1 -0
  45. package/dist/temp/src/components/progress-bar/hooks/index.js +1 -0
  46. package/dist/temp/src/components/progress-bar/index.d.ts +3 -0
  47. package/dist/temp/src/components/progress-bar/index.js +3 -0
  48. package/dist/temp/src/components/select/Select.js +1 -1
  49. package/dist/temp/src/components/select-dropdown/index.d.ts +1 -1
  50. package/dist/temp/src/components/select-dropdown/index.js +1 -1
  51. package/dist/temp/src/components/spinner/Spinner.d.ts +1 -2
  52. package/dist/temp/src/components/switch/index.d.ts +1 -2
  53. package/dist/temp/src/components/switch/index.js +1 -1
  54. package/dist/temp/src/components/tag/Tag.d.ts +3 -5
  55. package/dist/temp/src/components/tag/Tag.js +1 -2
  56. package/dist/temp/src/components/tooltip/Tooltip.d.ts +4 -2
  57. package/dist/temp/src/components/tooltip/Tooltip.js +126 -68
  58. package/dist/temp/src/hooks/dropdown/index.d.ts +6 -6
  59. package/dist/temp/src/hooks/dropdown/index.js +6 -6
  60. package/dist/temp/src/hooks/index.d.ts +3 -3
  61. package/dist/temp/src/hooks/index.js +3 -3
  62. package/dist/temp/src/types/component-meta.d.ts +26 -0
  63. package/dist/temp/src/types/component-meta.js +2 -0
  64. package/dist/temp/src/types/dropdown/option.d.ts +2 -4
  65. package/dist/temp/src/types/side-slot.d.ts +9 -1
  66. package/dist/temp/vitest.config.d.ts +2 -0
  67. package/dist/temp/vitest.config.js +7 -0
  68. package/dist/types/src/components/badge/index.d.ts +1 -0
  69. package/dist/types/src/components/date-picker/index.d.ts +1 -0
  70. package/dist/types/src/components/empty-state/EmptyState.d.ts +3 -5
  71. package/dist/types/src/components/image-file-input/components/index.d.ts +1 -0
  72. package/dist/types/src/components/image-file-input/index.d.ts +1 -0
  73. package/dist/types/src/components/progress-bar/components/index.d.ts +2 -0
  74. package/dist/types/src/components/progress-bar/hooks/index.d.ts +1 -0
  75. package/dist/types/src/components/progress-bar/index.d.ts +3 -0
  76. package/dist/types/src/components/select-dropdown/index.d.ts +1 -1
  77. package/dist/types/src/components/spinner/Spinner.d.ts +1 -2
  78. package/dist/types/src/components/switch/index.d.ts +1 -2
  79. package/dist/types/src/components/tag/Tag.d.ts +3 -5
  80. package/dist/types/src/components/tooltip/Tooltip.d.ts +4 -2
  81. package/dist/types/src/hooks/dropdown/index.d.ts +6 -6
  82. package/dist/types/src/hooks/index.d.ts +3 -3
  83. package/dist/types/src/types/component-meta.d.ts +26 -0
  84. package/dist/types/src/types/dropdown/option.d.ts +2 -4
  85. package/dist/types/src/types/side-slot.d.ts +9 -1
  86. package/dist/types/vitest.config.d.ts +2 -0
  87. package/dist/ui-admin/assets/styles/style.css +18 -7
  88. package/package.json +6 -1
  89. package/dist/cjs/assets/scripts/baseBox.js +0 -146
  90. package/dist/cjs/assets/scripts/comboBox.js +0 -137
  91. package/dist/cjs/assets/scripts/datePicker.js +0 -671
  92. package/dist/cjs/assets/scripts/featuredIcon.js +0 -87
  93. package/dist/cjs/assets/scripts/fileInput/const/classNames.js +0 -25
  94. package/dist/cjs/assets/scripts/fileInput/const/index.js +0 -27
  95. package/dist/cjs/assets/scripts/fileInput/const/types.js +0 -13
  96. package/dist/cjs/assets/scripts/fileInput/fileInput.js +0 -78
  97. package/dist/cjs/assets/scripts/fileInput/fileInputModel.js +0 -53
  98. package/dist/cjs/assets/scripts/fileInput/fileInputView.js +0 -152
  99. package/dist/cjs/assets/scripts/fileInput/index.js +0 -44
  100. package/dist/cjs/assets/scripts/imageFileInput/ImageFileInput.js +0 -184
  101. package/dist/cjs/assets/scripts/imageFileInput/ImageFileInputModel.js +0 -222
  102. package/dist/cjs/assets/scripts/imageFileInput/ImageFileInputView.js +0 -356
  103. package/dist/cjs/assets/scripts/imageFileInput/const/classNames.js +0 -31
  104. package/dist/cjs/assets/scripts/imageFileInput/const/index.js +0 -27
  105. package/dist/cjs/assets/scripts/imageFileInput/const/types.js +0 -13
  106. package/dist/cjs/assets/scripts/imageFileInput/index.js +0 -44
  107. package/dist/cjs/assets/scripts/index.js +0 -32
  108. package/dist/cjs/assets/scripts/modal/Modal.js +0 -104
  109. package/dist/cjs/assets/scripts/modal/ModalActions.js +0 -116
  110. package/dist/cjs/assets/scripts/modal/ModalContent.js +0 -46
  111. package/dist/cjs/assets/scripts/modal/ModalHeader.js +0 -104
  112. package/dist/cjs/assets/scripts/modal/const/classNames.js +0 -33
  113. package/dist/cjs/assets/scripts/modal/const/index.js +0 -27
  114. package/dist/cjs/assets/scripts/modal/index.js +0 -61
  115. package/dist/cjs/assets/scripts/modal/utils/contentUtils.js +0 -35
  116. package/dist/cjs/assets/scripts/notification/FloatingNotification.js +0 -178
  117. package/dist/cjs/assets/scripts/notification/FullWidthNotification.js +0 -132
  118. package/dist/cjs/assets/scripts/notification/MessageNotification.js +0 -159
  119. package/dist/cjs/assets/scripts/notification/Notification.js +0 -101
  120. package/dist/cjs/assets/scripts/notification/const/classNames.js +0 -50
  121. package/dist/cjs/assets/scripts/notification/const/icons.js +0 -31
  122. package/dist/cjs/assets/scripts/notification/const/index.js +0 -87
  123. package/dist/cjs/assets/scripts/notification/const/sizes.js +0 -46
  124. package/dist/cjs/assets/scripts/notification/const/types.js +0 -14
  125. package/dist/cjs/assets/scripts/notification/index.js +0 -92
  126. package/dist/cjs/assets/scripts/notification/utils.js +0 -97
  127. package/dist/cjs/assets/scripts/progress-bar/ProgressBar.js +0 -271
  128. package/dist/cjs/assets/scripts/progress-bar/index.js +0 -12
  129. package/dist/cjs/assets/scripts/selectBox.js +0 -169
  130. package/dist/cjs/assets/scripts/shared/ButtonCloseX.js +0 -45
  131. package/dist/cjs/assets/scripts/tab.js +0 -40
  132. package/dist/cjs/assets/scripts/table/Table.js +0 -377
  133. package/dist/cjs/assets/scripts/table/const/classNames.js +0 -33
  134. package/dist/cjs/assets/scripts/table/const/index.js +0 -27
  135. package/dist/cjs/assets/scripts/table/const/types.js +0 -5
  136. package/dist/cjs/assets/scripts/table/index.js +0 -43
  137. package/dist/cjs/assets/scripts/tag/Tag.js +0 -261
  138. package/dist/cjs/assets/scripts/tag/const/classNames.js +0 -20
  139. package/dist/cjs/assets/scripts/tag/const/index.js +0 -38
  140. package/dist/cjs/assets/scripts/tag/const/sizes.js +0 -13
  141. package/dist/cjs/assets/scripts/tag/const/types.js +0 -5
  142. package/dist/cjs/assets/scripts/tag/index.js +0 -44
  143. package/dist/cjs/assets/scripts/tooltip/Tooltip.js +0 -353
  144. package/dist/cjs/assets/scripts/tooltip/TooltipLayerManager.js +0 -82
  145. package/dist/cjs/assets/scripts/tooltip/const/classNames.js +0 -29
  146. package/dist/cjs/assets/scripts/tooltip/const/constants.js +0 -56
  147. package/dist/cjs/assets/scripts/tooltip/const/icons.js +0 -15
  148. package/dist/cjs/assets/scripts/tooltip/const/index.js +0 -123
  149. package/dist/cjs/assets/scripts/tooltip/const/templates.js +0 -66
  150. package/dist/cjs/assets/scripts/tooltip/const/types.js +0 -5
  151. package/dist/cjs/assets/scripts/tooltip/index.js +0 -57
  152. package/dist/cjs/assets/scripts/tooltip/utils.js +0 -40
  153. package/dist/cjs/assets/scripts/utils/debounce.js +0 -32
  154. package/dist/cjs/assets/scripts/utils/unifiedBox/domRenderer.js +0 -370
  155. package/dist/cjs/assets/scripts/utils/unifiedBox/dropdownModel.js +0 -285
  156. package/dist/cjs/assets/scripts/utils/unifiedBox/unifiedBoxController.js +0 -622
  157. package/dist/cjs/assets/scripts/utils/unifiedBox/unifiedBoxManager.js +0 -473
  158. package/dist/esm/assets/scripts/baseBox.js +0 -139
  159. package/dist/esm/assets/scripts/comboBox.js +0 -130
  160. package/dist/esm/assets/scripts/datePicker.js +0 -663
  161. package/dist/esm/assets/scripts/featuredIcon.js +0 -80
  162. package/dist/esm/assets/scripts/fileInput/const/classNames.js +0 -16
  163. package/dist/esm/assets/scripts/fileInput/const/index.js +0 -2
  164. package/dist/esm/assets/scripts/fileInput/const/types.js +0 -7
  165. package/dist/esm/assets/scripts/fileInput/fileInput.js +0 -71
  166. package/dist/esm/assets/scripts/fileInput/fileInputModel.js +0 -46
  167. package/dist/esm/assets/scripts/fileInput/fileInputView.js +0 -145
  168. package/dist/esm/assets/scripts/fileInput/index.js +0 -9
  169. package/dist/esm/assets/scripts/imageFileInput/ImageFileInput.js +0 -177
  170. package/dist/esm/assets/scripts/imageFileInput/ImageFileInputModel.js +0 -215
  171. package/dist/esm/assets/scripts/imageFileInput/ImageFileInputView.js +0 -349
  172. package/dist/esm/assets/scripts/imageFileInput/const/classNames.js +0 -20
  173. package/dist/esm/assets/scripts/imageFileInput/const/index.js +0 -2
  174. package/dist/esm/assets/scripts/imageFileInput/const/types.js +0 -7
  175. package/dist/esm/assets/scripts/imageFileInput/index.js +0 -9
  176. package/dist/esm/assets/scripts/index.js +0 -30
  177. package/dist/esm/assets/scripts/modal/Modal.js +0 -98
  178. package/dist/esm/assets/scripts/modal/ModalActions.js +0 -109
  179. package/dist/esm/assets/scripts/modal/ModalContent.js +0 -39
  180. package/dist/esm/assets/scripts/modal/ModalHeader.js +0 -97
  181. package/dist/esm/assets/scripts/modal/const/classNames.js +0 -23
  182. package/dist/esm/assets/scripts/modal/const/index.js +0 -2
  183. package/dist/esm/assets/scripts/modal/const/types.js +0 -1
  184. package/dist/esm/assets/scripts/modal/index.js +0 -15
  185. package/dist/esm/assets/scripts/modal/utils/contentUtils.js +0 -28
  186. package/dist/esm/assets/scripts/notification/FloatingNotification.js +0 -172
  187. package/dist/esm/assets/scripts/notification/FullWidthNotification.js +0 -125
  188. package/dist/esm/assets/scripts/notification/MessageNotification.js +0 -152
  189. package/dist/esm/assets/scripts/notification/Notification.js +0 -94
  190. package/dist/esm/assets/scripts/notification/const/classNames.js +0 -44
  191. package/dist/esm/assets/scripts/notification/const/icons.js +0 -25
  192. package/dist/esm/assets/scripts/notification/const/index.js +0 -4
  193. package/dist/esm/assets/scripts/notification/const/sizes.js +0 -40
  194. package/dist/esm/assets/scripts/notification/const/types.js +0 -8
  195. package/dist/esm/assets/scripts/notification/index.js +0 -11
  196. package/dist/esm/assets/scripts/notification/utils.js +0 -84
  197. package/dist/esm/assets/scripts/progress-bar/ProgressBar.js +0 -264
  198. package/dist/esm/assets/scripts/progress-bar/index.js +0 -1
  199. package/dist/esm/assets/scripts/selectBox.js +0 -162
  200. package/dist/esm/assets/scripts/shared/ButtonCloseX.js +0 -37
  201. package/dist/esm/assets/scripts/tab.js +0 -33
  202. package/dist/esm/assets/scripts/table/Table.js +0 -370
  203. package/dist/esm/assets/scripts/table/const/classNames.js +0 -27
  204. package/dist/esm/assets/scripts/table/const/index.js +0 -2
  205. package/dist/esm/assets/scripts/table/const/types.js +0 -1
  206. package/dist/esm/assets/scripts/table/index.js +0 -8
  207. package/dist/esm/assets/scripts/tag/Tag.js +0 -254
  208. package/dist/esm/assets/scripts/tag/const/classNames.js +0 -12
  209. package/dist/esm/assets/scripts/tag/const/index.js +0 -3
  210. package/dist/esm/assets/scripts/tag/const/sizes.js +0 -7
  211. package/dist/esm/assets/scripts/tag/const/types.js +0 -1
  212. package/dist/esm/assets/scripts/tag/index.js +0 -9
  213. package/dist/esm/assets/scripts/tooltip/Tooltip.js +0 -346
  214. package/dist/esm/assets/scripts/tooltip/TooltipLayerManager.js +0 -75
  215. package/dist/esm/assets/scripts/tooltip/const/classNames.js +0 -23
  216. package/dist/esm/assets/scripts/tooltip/const/constants.js +0 -50
  217. package/dist/esm/assets/scripts/tooltip/const/icons.js +0 -9
  218. package/dist/esm/assets/scripts/tooltip/const/index.js +0 -4
  219. package/dist/esm/assets/scripts/tooltip/const/templates.js +0 -59
  220. package/dist/esm/assets/scripts/tooltip/const/types.js +0 -1
  221. package/dist/esm/assets/scripts/tooltip/index.js +0 -10
  222. package/dist/esm/assets/scripts/tooltip/utils.js +0 -34
  223. package/dist/esm/assets/scripts/utils/debounce.js +0 -26
  224. package/dist/esm/assets/scripts/utils/unifiedBox/domRenderer.js +0 -363
  225. package/dist/esm/assets/scripts/utils/unifiedBox/dropdownModel.js +0 -279
  226. package/dist/esm/assets/scripts/utils/unifiedBox/unifiedBoxController.js +0 -615
  227. package/dist/esm/assets/scripts/utils/unifiedBox/unifiedBoxManager.js +0 -466
  228. package/dist/temp/assets/scripts/baseBox.d.ts +0 -55
  229. package/dist/temp/assets/scripts/baseBox.js +0 -140
  230. package/dist/temp/assets/scripts/comboBox.d.ts +0 -60
  231. package/dist/temp/assets/scripts/comboBox.js +0 -132
  232. package/dist/temp/assets/scripts/datePicker.d.ts +0 -86
  233. package/dist/temp/assets/scripts/datePicker.js +0 -699
  234. package/dist/temp/assets/scripts/featuredIcon.d.ts +0 -22
  235. package/dist/temp/assets/scripts/featuredIcon.js +0 -79
  236. package/dist/temp/assets/scripts/fileInput/const/classNames.d.ts +0 -15
  237. package/dist/temp/assets/scripts/fileInput/const/classNames.js +0 -16
  238. package/dist/temp/assets/scripts/fileInput/const/index.d.ts +0 -2
  239. package/dist/temp/assets/scripts/fileInput/const/index.js +0 -2
  240. package/dist/temp/assets/scripts/fileInput/const/types.d.ts +0 -88
  241. package/dist/temp/assets/scripts/fileInput/const/types.js +0 -7
  242. package/dist/temp/assets/scripts/fileInput/fileInput.d.ts +0 -13
  243. package/dist/temp/assets/scripts/fileInput/fileInput.js +0 -71
  244. package/dist/temp/assets/scripts/fileInput/fileInputModel.d.ts +0 -12
  245. package/dist/temp/assets/scripts/fileInput/fileInputModel.js +0 -37
  246. package/dist/temp/assets/scripts/fileInput/fileInputView.d.ts +0 -42
  247. package/dist/temp/assets/scripts/fileInput/fileInputView.js +0 -145
  248. package/dist/temp/assets/scripts/fileInput/index.d.ts +0 -3
  249. package/dist/temp/assets/scripts/fileInput/index.js +0 -9
  250. package/dist/temp/assets/scripts/imageFileInput/ImageFileInput.d.ts +0 -63
  251. package/dist/temp/assets/scripts/imageFileInput/ImageFileInput.js +0 -180
  252. package/dist/temp/assets/scripts/imageFileInput/ImageFileInputModel.d.ts +0 -73
  253. package/dist/temp/assets/scripts/imageFileInput/ImageFileInputModel.js +0 -214
  254. package/dist/temp/assets/scripts/imageFileInput/ImageFileInputView.d.ts +0 -79
  255. package/dist/temp/assets/scripts/imageFileInput/ImageFileInputView.js +0 -350
  256. package/dist/temp/assets/scripts/imageFileInput/const/classNames.d.ts +0 -19
  257. package/dist/temp/assets/scripts/imageFileInput/const/classNames.js +0 -20
  258. package/dist/temp/assets/scripts/imageFileInput/const/index.d.ts +0 -2
  259. package/dist/temp/assets/scripts/imageFileInput/const/index.js +0 -2
  260. package/dist/temp/assets/scripts/imageFileInput/const/types.d.ts +0 -125
  261. package/dist/temp/assets/scripts/imageFileInput/const/types.js +0 -7
  262. package/dist/temp/assets/scripts/imageFileInput/index.d.ts +0 -3
  263. package/dist/temp/assets/scripts/imageFileInput/index.js +0 -9
  264. package/dist/temp/assets/scripts/index.d.ts +0 -34
  265. package/dist/temp/assets/scripts/index.js +0 -30
  266. package/dist/temp/assets/scripts/modal/Modal.d.ts +0 -27
  267. package/dist/temp/assets/scripts/modal/Modal.js +0 -100
  268. package/dist/temp/assets/scripts/modal/ModalActions.d.ts +0 -18
  269. package/dist/temp/assets/scripts/modal/ModalActions.js +0 -117
  270. package/dist/temp/assets/scripts/modal/ModalContent.d.ts +0 -13
  271. package/dist/temp/assets/scripts/modal/ModalContent.js +0 -39
  272. package/dist/temp/assets/scripts/modal/ModalHeader.d.ts +0 -15
  273. package/dist/temp/assets/scripts/modal/ModalHeader.js +0 -96
  274. package/dist/temp/assets/scripts/modal/const/classNames.d.ts +0 -22
  275. package/dist/temp/assets/scripts/modal/const/classNames.js +0 -23
  276. package/dist/temp/assets/scripts/modal/const/index.d.ts +0 -2
  277. package/dist/temp/assets/scripts/modal/const/index.js +0 -2
  278. package/dist/temp/assets/scripts/modal/const/types.d.ts +0 -61
  279. package/dist/temp/assets/scripts/modal/const/types.js +0 -1
  280. package/dist/temp/assets/scripts/modal/index.d.ts +0 -7
  281. package/dist/temp/assets/scripts/modal/index.js +0 -15
  282. package/dist/temp/assets/scripts/modal/utils/contentUtils.d.ts +0 -10
  283. package/dist/temp/assets/scripts/modal/utils/contentUtils.js +0 -29
  284. package/dist/temp/assets/scripts/notification/FloatingNotification.d.ts +0 -24
  285. package/dist/temp/assets/scripts/notification/FloatingNotification.js +0 -157
  286. package/dist/temp/assets/scripts/notification/FullWidthNotification.d.ts +0 -21
  287. package/dist/temp/assets/scripts/notification/FullWidthNotification.js +0 -110
  288. package/dist/temp/assets/scripts/notification/MessageNotification.d.ts +0 -22
  289. package/dist/temp/assets/scripts/notification/MessageNotification.js +0 -140
  290. package/dist/temp/assets/scripts/notification/Notification.d.ts +0 -21
  291. package/dist/temp/assets/scripts/notification/Notification.js +0 -94
  292. package/dist/temp/assets/scripts/notification/const/classNames.d.ts +0 -43
  293. package/dist/temp/assets/scripts/notification/const/classNames.js +0 -44
  294. package/dist/temp/assets/scripts/notification/const/icons.d.ts +0 -25
  295. package/dist/temp/assets/scripts/notification/const/icons.js +0 -25
  296. package/dist/temp/assets/scripts/notification/const/index.d.ts +0 -5
  297. package/dist/temp/assets/scripts/notification/const/index.js +0 -4
  298. package/dist/temp/assets/scripts/notification/const/sizes.d.ts +0 -32
  299. package/dist/temp/assets/scripts/notification/const/sizes.js +0 -40
  300. package/dist/temp/assets/scripts/notification/const/types.d.ts +0 -19
  301. package/dist/temp/assets/scripts/notification/const/types.js +0 -8
  302. package/dist/temp/assets/scripts/notification/index.d.ts +0 -7
  303. package/dist/temp/assets/scripts/notification/index.js +0 -11
  304. package/dist/temp/assets/scripts/notification/utils.d.ts +0 -8
  305. package/dist/temp/assets/scripts/notification/utils.js +0 -89
  306. package/dist/temp/assets/scripts/progress-bar/ProgressBar.d.ts +0 -67
  307. package/dist/temp/assets/scripts/progress-bar/ProgressBar.js +0 -263
  308. package/dist/temp/assets/scripts/progress-bar/index.d.ts +0 -1
  309. package/dist/temp/assets/scripts/progress-bar/index.js +0 -1
  310. package/dist/temp/assets/scripts/selectBox.d.ts +0 -50
  311. package/dist/temp/assets/scripts/selectBox.js +0 -170
  312. package/dist/temp/assets/scripts/shared/ButtonCloseX.d.ts +0 -5
  313. package/dist/temp/assets/scripts/shared/ButtonCloseX.js +0 -33
  314. package/dist/temp/assets/scripts/tab.d.ts +0 -7
  315. package/dist/temp/assets/scripts/tab.js +0 -33
  316. package/dist/temp/assets/scripts/table/Table.d.ts +0 -41
  317. package/dist/temp/assets/scripts/table/Table.js +0 -378
  318. package/dist/temp/assets/scripts/table/const/classNames.d.ts +0 -27
  319. package/dist/temp/assets/scripts/table/const/classNames.js +0 -27
  320. package/dist/temp/assets/scripts/table/const/index.d.ts +0 -2
  321. package/dist/temp/assets/scripts/table/const/index.js +0 -2
  322. package/dist/temp/assets/scripts/table/const/types.d.ts +0 -23
  323. package/dist/temp/assets/scripts/table/const/types.js +0 -1
  324. package/dist/temp/assets/scripts/table/index.d.ts +0 -3
  325. package/dist/temp/assets/scripts/table/index.js +0 -8
  326. package/dist/temp/assets/scripts/tag/Tag.d.ts +0 -27
  327. package/dist/temp/assets/scripts/tag/Tag.js +0 -259
  328. package/dist/temp/assets/scripts/tag/const/classNames.d.ts +0 -11
  329. package/dist/temp/assets/scripts/tag/const/classNames.js +0 -12
  330. package/dist/temp/assets/scripts/tag/const/index.d.ts +0 -3
  331. package/dist/temp/assets/scripts/tag/const/index.js +0 -3
  332. package/dist/temp/assets/scripts/tag/const/sizes.d.ts +0 -7
  333. package/dist/temp/assets/scripts/tag/const/sizes.js +0 -7
  334. package/dist/temp/assets/scripts/tag/const/types.d.ts +0 -33
  335. package/dist/temp/assets/scripts/tag/const/types.js +0 -1
  336. package/dist/temp/assets/scripts/tag/index.d.ts +0 -3
  337. package/dist/temp/assets/scripts/tag/index.js +0 -9
  338. package/dist/temp/assets/scripts/tooltip/Tooltip.d.ts +0 -54
  339. package/dist/temp/assets/scripts/tooltip/Tooltip.js +0 -335
  340. package/dist/temp/assets/scripts/tooltip/TooltipLayerManager.d.ts +0 -21
  341. package/dist/temp/assets/scripts/tooltip/TooltipLayerManager.js +0 -71
  342. package/dist/temp/assets/scripts/tooltip/const/classNames.d.ts +0 -17
  343. package/dist/temp/assets/scripts/tooltip/const/classNames.js +0 -23
  344. package/dist/temp/assets/scripts/tooltip/const/constants.d.ts +0 -33
  345. package/dist/temp/assets/scripts/tooltip/const/constants.js +0 -46
  346. package/dist/temp/assets/scripts/tooltip/const/icons.d.ts +0 -4
  347. package/dist/temp/assets/scripts/tooltip/const/icons.js +0 -9
  348. package/dist/temp/assets/scripts/tooltip/const/index.d.ts +0 -5
  349. package/dist/temp/assets/scripts/tooltip/const/index.js +0 -4
  350. package/dist/temp/assets/scripts/tooltip/const/templates.d.ts +0 -16
  351. package/dist/temp/assets/scripts/tooltip/const/templates.js +0 -59
  352. package/dist/temp/assets/scripts/tooltip/const/types.d.ts +0 -14
  353. package/dist/temp/assets/scripts/tooltip/const/types.js +0 -1
  354. package/dist/temp/assets/scripts/tooltip/index.d.ts +0 -6
  355. package/dist/temp/assets/scripts/tooltip/index.js +0 -10
  356. package/dist/temp/assets/scripts/tooltip/utils.d.ts +0 -2
  357. package/dist/temp/assets/scripts/tooltip/utils.js +0 -33
  358. package/dist/temp/assets/scripts/utils/debounce.d.ts +0 -8
  359. package/dist/temp/assets/scripts/utils/debounce.js +0 -23
  360. package/dist/temp/assets/scripts/utils/unifiedBox/domRenderer.d.ts +0 -107
  361. package/dist/temp/assets/scripts/utils/unifiedBox/domRenderer.js +0 -367
  362. package/dist/temp/assets/scripts/utils/unifiedBox/dropdownModel.d.ts +0 -142
  363. package/dist/temp/assets/scripts/utils/unifiedBox/dropdownModel.js +0 -286
  364. package/dist/temp/assets/scripts/utils/unifiedBox/unifiedBoxController.d.ts +0 -156
  365. package/dist/temp/assets/scripts/utils/unifiedBox/unifiedBoxController.js +0 -604
  366. package/dist/temp/assets/scripts/utils/unifiedBox/unifiedBoxManager.d.ts +0 -95
  367. package/dist/temp/assets/scripts/utils/unifiedBox/unifiedBoxManager.js +0 -482
  368. package/dist/types/assets/scripts/baseBox.d.ts +0 -55
  369. package/dist/types/assets/scripts/comboBox.d.ts +0 -60
  370. package/dist/types/assets/scripts/datePicker.d.ts +0 -86
  371. package/dist/types/assets/scripts/featuredIcon.d.ts +0 -22
  372. package/dist/types/assets/scripts/fileInput/const/classNames.d.ts +0 -15
  373. package/dist/types/assets/scripts/fileInput/const/index.d.ts +0 -2
  374. package/dist/types/assets/scripts/fileInput/const/types.d.ts +0 -88
  375. package/dist/types/assets/scripts/fileInput/fileInput.d.ts +0 -13
  376. package/dist/types/assets/scripts/fileInput/fileInputModel.d.ts +0 -12
  377. package/dist/types/assets/scripts/fileInput/fileInputView.d.ts +0 -42
  378. package/dist/types/assets/scripts/fileInput/index.d.ts +0 -3
  379. package/dist/types/assets/scripts/imageFileInput/ImageFileInput.d.ts +0 -63
  380. package/dist/types/assets/scripts/imageFileInput/ImageFileInputModel.d.ts +0 -73
  381. package/dist/types/assets/scripts/imageFileInput/ImageFileInputView.d.ts +0 -79
  382. package/dist/types/assets/scripts/imageFileInput/const/classNames.d.ts +0 -19
  383. package/dist/types/assets/scripts/imageFileInput/const/index.d.ts +0 -2
  384. package/dist/types/assets/scripts/imageFileInput/const/types.d.ts +0 -125
  385. package/dist/types/assets/scripts/imageFileInput/index.d.ts +0 -3
  386. package/dist/types/assets/scripts/index.d.ts +0 -34
  387. package/dist/types/assets/scripts/modal/Modal.d.ts +0 -27
  388. package/dist/types/assets/scripts/modal/ModalActions.d.ts +0 -18
  389. package/dist/types/assets/scripts/modal/ModalContent.d.ts +0 -13
  390. package/dist/types/assets/scripts/modal/ModalHeader.d.ts +0 -15
  391. package/dist/types/assets/scripts/modal/const/classNames.d.ts +0 -22
  392. package/dist/types/assets/scripts/modal/const/index.d.ts +0 -2
  393. package/dist/types/assets/scripts/modal/const/types.d.ts +0 -61
  394. package/dist/types/assets/scripts/modal/index.d.ts +0 -7
  395. package/dist/types/assets/scripts/modal/utils/contentUtils.d.ts +0 -10
  396. package/dist/types/assets/scripts/notification/FloatingNotification.d.ts +0 -24
  397. package/dist/types/assets/scripts/notification/FullWidthNotification.d.ts +0 -21
  398. package/dist/types/assets/scripts/notification/MessageNotification.d.ts +0 -22
  399. package/dist/types/assets/scripts/notification/Notification.d.ts +0 -21
  400. package/dist/types/assets/scripts/notification/const/classNames.d.ts +0 -43
  401. package/dist/types/assets/scripts/notification/const/icons.d.ts +0 -25
  402. package/dist/types/assets/scripts/notification/const/index.d.ts +0 -5
  403. package/dist/types/assets/scripts/notification/const/sizes.d.ts +0 -32
  404. package/dist/types/assets/scripts/notification/const/types.d.ts +0 -19
  405. package/dist/types/assets/scripts/notification/index.d.ts +0 -7
  406. package/dist/types/assets/scripts/notification/utils.d.ts +0 -8
  407. package/dist/types/assets/scripts/progress-bar/ProgressBar.d.ts +0 -67
  408. package/dist/types/assets/scripts/progress-bar/index.d.ts +0 -1
  409. package/dist/types/assets/scripts/selectBox.d.ts +0 -50
  410. package/dist/types/assets/scripts/shared/ButtonCloseX.d.ts +0 -5
  411. package/dist/types/assets/scripts/tab.d.ts +0 -7
  412. package/dist/types/assets/scripts/table/Table.d.ts +0 -41
  413. package/dist/types/assets/scripts/table/const/classNames.d.ts +0 -27
  414. package/dist/types/assets/scripts/table/const/index.d.ts +0 -2
  415. package/dist/types/assets/scripts/table/const/types.d.ts +0 -23
  416. package/dist/types/assets/scripts/table/index.d.ts +0 -3
  417. package/dist/types/assets/scripts/tag/Tag.d.ts +0 -27
  418. package/dist/types/assets/scripts/tag/const/classNames.d.ts +0 -11
  419. package/dist/types/assets/scripts/tag/const/index.d.ts +0 -3
  420. package/dist/types/assets/scripts/tag/const/sizes.d.ts +0 -7
  421. package/dist/types/assets/scripts/tag/const/types.d.ts +0 -33
  422. package/dist/types/assets/scripts/tag/index.d.ts +0 -3
  423. package/dist/types/assets/scripts/tooltip/Tooltip.d.ts +0 -54
  424. package/dist/types/assets/scripts/tooltip/TooltipLayerManager.d.ts +0 -21
  425. package/dist/types/assets/scripts/tooltip/const/classNames.d.ts +0 -17
  426. package/dist/types/assets/scripts/tooltip/const/constants.d.ts +0 -33
  427. package/dist/types/assets/scripts/tooltip/const/icons.d.ts +0 -4
  428. package/dist/types/assets/scripts/tooltip/const/index.d.ts +0 -5
  429. package/dist/types/assets/scripts/tooltip/const/templates.d.ts +0 -16
  430. package/dist/types/assets/scripts/tooltip/const/types.d.ts +0 -14
  431. package/dist/types/assets/scripts/tooltip/index.d.ts +0 -6
  432. package/dist/types/assets/scripts/tooltip/utils.d.ts +0 -2
  433. package/dist/types/assets/scripts/utils/debounce.d.ts +0 -8
  434. package/dist/types/assets/scripts/utils/unifiedBox/domRenderer.d.ts +0 -107
  435. package/dist/types/assets/scripts/utils/unifiedBox/dropdownModel.d.ts +0 -142
  436. package/dist/types/assets/scripts/utils/unifiedBox/unifiedBoxController.d.ts +0 -156
  437. package/dist/types/assets/scripts/utils/unifiedBox/unifiedBoxManager.d.ts +0 -95
  438. /package/dist/cjs/{assets/scripts/modal/const/types.js → src/types/component-meta.js} +0 -0
@@ -1,22 +0,0 @@
1
- export type FeaturedIconTheme = 'light-circle' | 'dark-circle' | 'outline-circle' | 'square-outline';
2
- export type FeaturedIconColor = 'neutral' | 'error' | 'warning' | 'success';
3
- export type FeaturedIconSize = 'sm' | 'md' | 'lg' | 'xl';
4
- export interface FeaturedIconOptions {
5
- svgString: string;
6
- theme?: FeaturedIconTheme;
7
- color?: FeaturedIconColor;
8
- size?: FeaturedIconSize;
9
- className?: string;
10
- }
11
- export declare class FeaturedIcon {
12
- private element;
13
- private options;
14
- constructor(options: FeaturedIconOptions);
15
- private createElement;
16
- private addSizeToSvg;
17
- getElement(): HTMLElement;
18
- updateColor(color: FeaturedIconColor): void;
19
- updateSize(size: FeaturedIconSize): void;
20
- destroy(): void;
21
- static create(options: FeaturedIconOptions): FeaturedIcon;
22
- }
@@ -1,79 +0,0 @@
1
- // React 컴포넌트와 동일하게 구성
2
- const iconSizeMap = {
3
- sm: 16,
4
- md: 20,
5
- lg: 24,
6
- xl: 28,
7
- };
8
- export class FeaturedIcon {
9
- constructor(options) {
10
- this.options = {
11
- theme: 'light-circle',
12
- color: 'neutral',
13
- size: 'sm',
14
- className: '',
15
- ...options,
16
- };
17
- this.element = this.createElement();
18
- }
19
- // svgString ( ICON SVG ) 을 받아서 요소를 생성
20
- createElement() {
21
- const { theme, color, size, className, svgString } = this.options;
22
- // React FeaturedIcon과 동일한 클래스 구조
23
- const classes = [
24
- 'ncua-featured-icon',
25
- `ncua-featured-icon--${theme}`,
26
- `ncua-featured-icon--${color}`,
27
- `ncua-featured-icon--${size}`,
28
- ];
29
- if (className) {
30
- classes.push(className);
31
- }
32
- const div = document.createElement('div');
33
- div.className = classes.join(' ');
34
- // outline-circle 테마일 때 추가 요소들 (React 컴포넌트와 동일)
35
- if (theme === 'outline-circle') {
36
- const innerOutline = document.createElement('div');
37
- innerOutline.className = 'ncua-featured-icon__outline ncua-featured-icon__outline--inner';
38
- div.appendChild(innerOutline);
39
- const outerOutline = document.createElement('div');
40
- outerOutline.className = 'ncua-featured-icon__outline ncua-featured-icon__outline--outer';
41
- div.appendChild(outerOutline);
42
- }
43
- // SVG 아이콘 추가
44
- const iconSize = iconSizeMap[size];
45
- const svgWithSize = this.addSizeToSvg(svgString, iconSize);
46
- div.innerHTML += svgWithSize;
47
- return div;
48
- }
49
- addSizeToSvg(svgString, size) {
50
- return svgString.replace(/<svg([^>]*)>/, `<svg$1 width="${size}" height="${size}">`);
51
- }
52
- // Public methods
53
- getElement() {
54
- return this.element;
55
- }
56
- updateColor(color) {
57
- this.element.className = this.element.className.replace(/ncua-featured-icon--(neutral|error|warning|success)/, `ncua-featured-icon--${color}`);
58
- this.options.color = color;
59
- }
60
- updateSize(size) {
61
- const iconSize = iconSizeMap[size];
62
- this.element.className = this.element.className.replace(/ncua-featured-icon--(sm|md|lg|xl)/, `ncua-featured-icon--${size}`);
63
- const svgIcon = this.element.querySelector('svg');
64
- if (svgIcon) {
65
- svgIcon.setAttribute('width', String(iconSize));
66
- svgIcon.setAttribute('height', String(iconSize));
67
- }
68
- this.options.size = size;
69
- }
70
- destroy() {
71
- if (this.element.parentNode) {
72
- this.element.parentNode.removeChild(this.element);
73
- }
74
- }
75
- // Static factory method
76
- static create(options) {
77
- return new FeaturedIcon(options);
78
- }
79
- }
@@ -1,15 +0,0 @@
1
- export declare const FILE_INPUT_CLASS_NAMES: {
2
- fileInput: string;
3
- inputContainer: string;
4
- label: string;
5
- helpIcon: string;
6
- hintText: string;
7
- hintList: string;
8
- hintItem: string;
9
- fileTags: string;
10
- fileTagContainer: string;
11
- fileImage: string;
12
- };
13
- export declare const getFileInputSizeClassName: (size: string) => string;
14
- export declare const getLabelClassName: (isRequired?: boolean) => "ncua-label" | "ncua-label ncua-label--required";
15
- export declare const getHintTextClassName: (destructive?: boolean) => "ncua-input__hint-text" | "ncua-input__hint-text ncua-input__hint-text--destructive";
@@ -1,16 +0,0 @@
1
- // FileInput 관련 CSS 클래스명 상수
2
- export const FILE_INPUT_CLASS_NAMES = {
3
- fileInput: 'ncua-file-input',
4
- inputContainer: 'ncua-file-input__input-container',
5
- label: 'ncua-file-input__label',
6
- helpIcon: 'ncua-input__help-icon',
7
- hintText: 'ncua-input__hint-text',
8
- hintList: 'ncua-file-input__hint-list',
9
- hintItem: 'ncua-file-input__hint-item',
10
- fileTags: 'ncua-file-input__file-tags',
11
- fileTagContainer: 'ncua-file-input__file-tag-container',
12
- fileImage: 'ncua-file-input__file-image',
13
- };
14
- export const getFileInputSizeClassName = (size) => `ncua-file-input--${size}`;
15
- export const getLabelClassName = (isRequired) => isRequired ? 'ncua-label ncua-label--required' : 'ncua-label';
16
- export const getHintTextClassName = (destructive) => destructive ? 'ncua-input__hint-text ncua-input__hint-text--destructive' : 'ncua-input__hint-text';
@@ -1,2 +0,0 @@
1
- export * from './classNames';
2
- export * from './types';
@@ -1,2 +0,0 @@
1
- export * from './classNames';
2
- export * from './types';
@@ -1,88 +0,0 @@
1
- export declare enum FileInputErrorType {
2
- ALREADY_UPLOADED = "ALREADY_UPLOADED",
3
- EXCEED_MAX_FILE_SIZE = "EXCEED_MAX_FILE_SIZE",
4
- EXCEED_MAX_FILE_COUNT = "EXCEED_MAX_FILE_COUNT"
5
- }
6
- export interface InvalidFile extends Omit<File, 'constructor'> {
7
- errorType: FileInputErrorType;
8
- }
9
- export type FileInputSize = 'xs' | 'sm' | 'md' | 'lg';
10
- export interface BaseFileInputOptions {
11
- /**
12
- * Size of the input
13
- */
14
- size?: FileInputSize;
15
- /**
16
- * Accepted file types
17
- * e.g. '.jpg,.png,.pdf' or 'image/*'
18
- */
19
- accept?: string;
20
- /**
21
- * Allow multiple file selection
22
- */
23
- multiple?: boolean;
24
- /**
25
- * Maximum number of files
26
- */
27
- maxFileCount?: number;
28
- /**
29
- * Maximum file size in bytes
30
- */
31
- maxFileSize?: number;
32
- /**
33
- * Callback when files change
34
- */
35
- onChange?: (files: File[]) => void;
36
- /**
37
- * Callback when file selection fails
38
- */
39
- onFail?: (files: InvalidFile[]) => void;
40
- /**
41
- * Label shown on the button
42
- */
43
- buttonLabel?: string;
44
- /**
45
- * Whether the input is disabled
46
- */
47
- disabled?: boolean;
48
- /**
49
- * Label text
50
- */
51
- label?: string;
52
- /**
53
- * Hint text items to display as a list
54
- */
55
- hintItems?: string[];
56
- /**
57
- * Whether the input is required
58
- */
59
- isRequired?: boolean;
60
- /**
61
- * Whether to show the help icon
62
- */
63
- showHelpIcon?: boolean;
64
- /**
65
- * Hint text to display
66
- */
67
- hintText?: string;
68
- /**
69
- * Validation state
70
- */
71
- validation?: boolean;
72
- /**
73
- * Destructive state
74
- */
75
- destructive?: boolean;
76
- /**
77
- * Container element or selector to automatically append the file input
78
- * Can be a DOM element, element ID, or CSS selector
79
- */
80
- container?: HTMLElement | string;
81
- /**
82
- * Additional CSS class names to add to the main file input element
83
- */
84
- className?: string;
85
- }
86
- type RequiredKeys = 'size' | 'buttonLabel' | 'multiple' | 'disabled';
87
- export type RequiredFileInputProps = Required<Pick<BaseFileInputOptions, RequiredKeys>> & Omit<BaseFileInputOptions, RequiredKeys | 'container'>;
88
- export {};
@@ -1,7 +0,0 @@
1
- // FileInput 관련 타입 정의 (React FileInput.tsx와 동일)
2
- export var FileInputErrorType;
3
- (function (FileInputErrorType) {
4
- FileInputErrorType["ALREADY_UPLOADED"] = "ALREADY_UPLOADED";
5
- FileInputErrorType["EXCEED_MAX_FILE_SIZE"] = "EXCEED_MAX_FILE_SIZE";
6
- FileInputErrorType["EXCEED_MAX_FILE_COUNT"] = "EXCEED_MAX_FILE_COUNT";
7
- })(FileInputErrorType || (FileInputErrorType = {}));
@@ -1,13 +0,0 @@
1
- import { BaseFileInputOptions } from './const/types';
2
- export declare class FileInput {
3
- private model;
4
- private view;
5
- constructor(options: BaseFileInputOptions);
6
- private appendToContainer;
7
- private setupEventListeners;
8
- private handleBrowseClick;
9
- private handleFileChange;
10
- getElement(): HTMLDivElement;
11
- setDisabled(disabled: boolean): void;
12
- destroy(): void;
13
- }
@@ -1,71 +0,0 @@
1
- import { FileInputModel } from './fileInputModel';
2
- import { FileInputView } from './fileInputView';
3
- export class FileInput {
4
- constructor(options) {
5
- this.handleBrowseClick = () => {
6
- if (!this.model.isDisabled()) {
7
- this.view.getFileInputElement().click();
8
- }
9
- };
10
- this.handleFileChange = (event) => {
11
- const target = event.target;
12
- const selectedFiles = target.files;
13
- if (!selectedFiles || selectedFiles.length === 0)
14
- return;
15
- const { validFiles, invalidFiles } = this.model.validateFiles(Array.from(selectedFiles));
16
- const options = this.model.getOptions();
17
- if (validFiles.length > 0) {
18
- options.onChange?.(validFiles);
19
- }
20
- if (invalidFiles.length > 0) {
21
- options.onFail?.(invalidFiles);
22
- }
23
- target.value = '';
24
- };
25
- this.model = new FileInputModel(options);
26
- this.view = new FileInputView(this.model.getOptions());
27
- this.setupEventListeners();
28
- if (options.container) {
29
- this.appendToContainer(options.container);
30
- }
31
- }
32
- appendToContainer(container) {
33
- let containerElement = null;
34
- if (typeof container === 'string') {
35
- containerElement = document.getElementById(container);
36
- if (!containerElement) {
37
- containerElement = document.querySelector(container);
38
- }
39
- }
40
- else {
41
- containerElement = container;
42
- }
43
- if (containerElement) {
44
- containerElement.appendChild(this.getElement());
45
- }
46
- else {
47
- console.warn(`FileInput: Container not found:`, container);
48
- }
49
- }
50
- setupEventListeners() {
51
- const fileInput = this.view.getFileInputElement();
52
- const button = this.view.getButtonElement();
53
- fileInput.addEventListener('change', this.handleFileChange);
54
- button.addEventListener('click', this.handleBrowseClick);
55
- }
56
- // Public API
57
- getElement() {
58
- return this.view.getElement();
59
- }
60
- setDisabled(disabled) {
61
- this.model.setDisabled(disabled);
62
- this.view.setButtonDisabled(disabled);
63
- }
64
- destroy() {
65
- const fileInput = this.view.getFileInputElement();
66
- const button = this.view.getButtonElement();
67
- fileInput.removeEventListener('change', this.handleFileChange);
68
- button.removeEventListener('click', this.handleBrowseClick);
69
- this.view.destroy();
70
- }
71
- }
@@ -1,12 +0,0 @@
1
- import { BaseFileInputOptions, InvalidFile, RequiredFileInputProps } from './const/types';
2
- export declare class FileInputModel {
3
- private options;
4
- constructor(options: BaseFileInputOptions);
5
- getOptions(): RequiredFileInputProps;
6
- validateFiles(fileList: File[]): {
7
- validFiles: File[];
8
- invalidFiles: InvalidFile[];
9
- };
10
- setDisabled(disabled: boolean): void;
11
- isDisabled(): boolean;
12
- }
@@ -1,37 +0,0 @@
1
- import { FileInputErrorType } from './const/types';
2
- export class FileInputModel {
3
- constructor(options) {
4
- this.options = {
5
- size: 'xs',
6
- multiple: false,
7
- buttonLabel: '파일 찾기',
8
- disabled: false,
9
- ...options,
10
- };
11
- }
12
- getOptions() {
13
- return this.options;
14
- }
15
- validateFiles(fileList) {
16
- const validFiles = [];
17
- const invalidFiles = [];
18
- for (const file of fileList) {
19
- if (this.options.maxFileSize && file.size > this.options.maxFileSize) {
20
- invalidFiles.push({ ...file, errorType: FileInputErrorType.EXCEED_MAX_FILE_SIZE });
21
- continue;
22
- }
23
- if (this.options.maxFileCount && validFiles.length >= this.options.maxFileCount) {
24
- invalidFiles.push({ ...file, errorType: FileInputErrorType.EXCEED_MAX_FILE_COUNT });
25
- continue;
26
- }
27
- validFiles.push(file);
28
- }
29
- return { validFiles, invalidFiles };
30
- }
31
- setDisabled(disabled) {
32
- this.options.disabled = disabled;
33
- }
34
- isDisabled() {
35
- return this.options.disabled;
36
- }
37
- }
@@ -1,42 +0,0 @@
1
- import { RequiredFileInputProps } from './const/types';
2
- export declare class FileInputView {
3
- private element;
4
- private fileInputElement;
5
- private buttonElement;
6
- private options;
7
- constructor(options: RequiredFileInputProps);
8
- /**
9
- * 메인 DOM 요소 생성
10
- */
11
- private createElement;
12
- /**
13
- * Hidden file input 생성
14
- */
15
- private createFileInput;
16
- /**
17
- * Input container 생성
18
- */
19
- private createInputContainer;
20
- /**
21
- * Label container 생성
22
- */
23
- private createLabelContainer;
24
- /**
25
- * Help icon 생성
26
- */
27
- private createHelpIcon;
28
- private createButton;
29
- /**
30
- * Hint text 생성
31
- */
32
- private createHintText;
33
- /**
34
- * Hint list 생성
35
- */
36
- private createHintList;
37
- setButtonDisabled(disabled: boolean): void;
38
- getElement(): HTMLDivElement;
39
- getFileInputElement(): HTMLInputElement;
40
- getButtonElement(): HTMLButtonElement;
41
- destroy(): void;
42
- }
@@ -1,145 +0,0 @@
1
- import { FILE_INPUT_CLASS_NAMES, getFileInputSizeClassName, getHintTextClassName, getLabelClassName, } from './const/classNames';
2
- const HELP_ICON_SVG = `<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor">
3
- <circle cx="12" cy="12" r="10" stroke-width="2"/>
4
- <path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
5
- <line x1="12" y1="17" x2="12.01" y2="17" stroke-width="2" stroke-linecap="round"/>
6
- </svg>`;
7
- const SHARE_ICON_SVG = `<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="none" class="ncua-btn__icon">
8
- <path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 12v4.2c0 1.68 0 2.52-.327 3.162a3 3 0 0 1-1.311 1.311C18.72 21 17.88 21 16.2 21H7.8c-1.68 0-2.52 0-3.162-.327a3 3 0 0 1-1.311-1.311C3 18.72 3 17.88 3 16.2V12m13-5-4-4m0 0L8 7m4-4v12"/>
9
- </svg>`;
10
- export class FileInputView {
11
- constructor(options) {
12
- this.options = options;
13
- this.element = this.createElement();
14
- this.fileInputElement = this.element.querySelector('input[type="file"]');
15
- this.buttonElement = this.element.querySelector('button');
16
- }
17
- /**
18
- * 메인 DOM 요소 생성
19
- */
20
- createElement() {
21
- const container = document.createElement('div');
22
- const baseClasses = `${FILE_INPUT_CLASS_NAMES.fileInput} ${getFileInputSizeClassName(this.options.size)}`;
23
- const customClasses = this.options.className ? ` ${this.options.className}` : '';
24
- container.className = baseClasses + customClasses;
25
- // Hidden file input 생성
26
- container.appendChild(this.createFileInput());
27
- // Input container
28
- container.appendChild(this.createInputContainer());
29
- // Hint list
30
- if (this.options.hintItems && this.options.hintItems.length > 0) {
31
- container.appendChild(this.createHintList());
32
- }
33
- return container;
34
- }
35
- /**
36
- * Hidden file input 생성
37
- */
38
- createFileInput() {
39
- const input = document.createElement('input');
40
- input.type = 'file';
41
- input.hidden = true;
42
- input.tabIndex = -1;
43
- input.setAttribute('aria-hidden', 'true');
44
- input.classList.add('no-filestyle');
45
- if (this.options.accept) {
46
- input.accept = this.options.accept;
47
- }
48
- if (this.options.multiple) {
49
- input.multiple = true;
50
- }
51
- return input;
52
- }
53
- /**
54
- * Input container 생성
55
- */
56
- createInputContainer() {
57
- const container = document.createElement('div');
58
- container.className = FILE_INPUT_CLASS_NAMES.inputContainer;
59
- // Label
60
- if (this.options.label) {
61
- container.appendChild(this.createLabelContainer());
62
- }
63
- // Button
64
- container.appendChild(this.createButton());
65
- // Hint text
66
- if (this.options.hintText) {
67
- container.appendChild(this.createHintText());
68
- }
69
- return container;
70
- }
71
- /**
72
- * Label container 생성
73
- */
74
- createLabelContainer() {
75
- const container = document.createElement('div');
76
- container.className = FILE_INPUT_CLASS_NAMES.label;
77
- const label = document.createElement('label');
78
- label.className = getLabelClassName(this.options.isRequired);
79
- label.textContent = this.options.label;
80
- container.appendChild(label);
81
- if (this.options.showHelpIcon) {
82
- container.appendChild(this.createHelpIcon());
83
- }
84
- return container;
85
- }
86
- /**
87
- * Help icon 생성
88
- */
89
- createHelpIcon() {
90
- const iconContainer = document.createElement('span');
91
- iconContainer.className = FILE_INPUT_CLASS_NAMES.helpIcon;
92
- iconContainer.innerHTML = HELP_ICON_SVG;
93
- return iconContainer;
94
- }
95
- createButton() {
96
- const button = document.createElement('button');
97
- button.type = 'button';
98
- button.className = `ncua-btn ncua-btn--${this.options.size} ncua-btn--secondary-gray`;
99
- button.disabled = this.options.disabled;
100
- button.insertAdjacentHTML('beforeend', SHARE_ICON_SVG);
101
- const label = document.createElement('span');
102
- label.className = 'ncua-btn__label';
103
- label.textContent = this.options.buttonLabel;
104
- button.appendChild(label);
105
- return button;
106
- }
107
- /**
108
- * Hint text 생성
109
- */
110
- createHintText() {
111
- const hintText = document.createElement('div');
112
- hintText.className = getHintTextClassName(this.options.destructive);
113
- hintText.textContent = this.options.hintText;
114
- return hintText;
115
- }
116
- /**
117
- * Hint list 생성
118
- */
119
- createHintList() {
120
- const ul = document.createElement('ul');
121
- ul.className = FILE_INPUT_CLASS_NAMES.hintList;
122
- this.options.hintItems?.forEach((hint) => {
123
- const li = document.createElement('li');
124
- li.className = FILE_INPUT_CLASS_NAMES.hintItem;
125
- li.textContent = hint;
126
- ul.appendChild(li);
127
- });
128
- return ul;
129
- }
130
- setButtonDisabled(disabled) {
131
- this.buttonElement.disabled = disabled;
132
- }
133
- getElement() {
134
- return this.element;
135
- }
136
- getFileInputElement() {
137
- return this.fileInputElement;
138
- }
139
- getButtonElement() {
140
- return this.buttonElement;
141
- }
142
- destroy() {
143
- // View 리소스 정리 - 이벤트 리스너는 FileInput에서 관리
144
- }
145
- }
@@ -1,3 +0,0 @@
1
- export * from './const/classNames';
2
- export * from './const/types';
3
- export { FileInput } from './fileInput';
@@ -1,9 +0,0 @@
1
- import { FileInput } from './fileInput';
2
- export * from './const/classNames';
3
- export * from './const/types';
4
- export { FileInput } from './fileInput';
5
- // 전역 등록 (추후 index.ts와 개별동작 할 수 있게끔 대비)
6
- if (typeof window !== 'undefined') {
7
- window.ncua = window.ncua || {};
8
- window.ncua.FileInput = FileInput;
9
- }
@@ -1,63 +0,0 @@
1
- import { BaseImageFileInputOptions, UploadedFile } from './const/types';
2
- export declare class ImageFileInput {
3
- private model;
4
- private view;
5
- constructor(options: BaseImageFileInputOptions);
6
- /**
7
- * 컨테이너에 요소 추가
8
- */
9
- private appendToContainer;
10
- /**
11
- * 이벤트 리스너 설정
12
- */
13
- private setupEventListeners;
14
- /**
15
- * 파일 선택 버튼 클릭 핸들러
16
- */
17
- private handleBrowseClick;
18
- /**
19
- * 파일 변경 핸들러
20
- */
21
- private handleFileChange;
22
- /**
23
- * 파일 제거 핸들러
24
- */
25
- private handleRemoveFile;
26
- /**
27
- * 변경 알림 (onChange/onFileSelect 호출)
28
- */
29
- private notifyChange;
30
- /**
31
- * 뷰 렌더링 (내부용)
32
- */
33
- private render;
34
- /**
35
- * 이미지 프리뷰를 수동으로 렌더링
36
- * 사용자가 콜백에서 직접 호출하여 프리뷰를 렌더링할 수 있음
37
- */
38
- renderImagePreviews(): void;
39
- /**
40
- * DOM 요소 반환
41
- */
42
- getElement(): HTMLDivElement;
43
- /**
44
- * 현재 파일 목록 반환
45
- */
46
- getFiles(): File[];
47
- /**
48
- * 초기 업로드된 파일 목록 설정
49
- */
50
- setFiles(uploadedFiles: UploadedFile[]): void;
51
- /**
52
- * 모든 파일 제거
53
- */
54
- clearFiles(): void;
55
- /**
56
- * disabled 상태 설정
57
- */
58
- setDisabled(disabled: boolean): void;
59
- /**
60
- * 리소스 정리
61
- */
62
- destroy(): void;
63
- }