@ncds/ui-admin 1.7.0 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (621) hide show
  1. package/dist/cjs/assets/scripts/baseBox.js +54 -56
  2. package/dist/cjs/assets/scripts/comboBox.js +54 -105
  3. package/dist/cjs/assets/scripts/datePicker.js +289 -324
  4. package/dist/cjs/assets/scripts/featuredIcon.js +41 -49
  5. package/dist/cjs/assets/scripts/fileInput/const/classNames.js +4 -10
  6. package/dist/cjs/assets/scripts/fileInput/fileInput.js +33 -34
  7. package/dist/cjs/assets/scripts/fileInput/fileInputModel.js +27 -35
  8. package/dist/cjs/assets/scripts/fileInput/fileInputView.js +53 -48
  9. package/dist/cjs/assets/scripts/imageFileInput/ImageFileInput.js +61 -64
  10. package/dist/cjs/assets/scripts/imageFileInput/ImageFileInputModel.js +79 -112
  11. package/dist/cjs/assets/scripts/imageFileInput/ImageFileInputView.js +107 -105
  12. package/dist/cjs/assets/scripts/imageFileInput/const/classNames.js +6 -16
  13. package/dist/cjs/assets/scripts/index.js +2 -0
  14. package/dist/cjs/assets/scripts/modal/Modal.js +43 -55
  15. package/dist/cjs/assets/scripts/modal/ModalActions.js +40 -52
  16. package/dist/cjs/assets/scripts/modal/ModalContent.js +22 -22
  17. package/dist/cjs/assets/scripts/modal/ModalHeader.js +37 -48
  18. package/dist/cjs/assets/scripts/modal/const/classNames.js +5 -13
  19. package/dist/cjs/assets/scripts/modal/utils/contentUtils.js +1 -1
  20. package/dist/cjs/assets/scripts/notification/FloatingNotification.js +91 -93
  21. package/dist/cjs/assets/scripts/notification/FullWidthNotification.js +92 -80
  22. package/dist/cjs/assets/scripts/notification/MessageNotification.js +92 -79
  23. package/dist/cjs/assets/scripts/notification/Notification.js +50 -65
  24. package/dist/cjs/assets/scripts/notification/const/classNames.js +1 -1
  25. package/dist/cjs/assets/scripts/notification/const/icons.js +11 -25
  26. package/dist/cjs/assets/scripts/notification/const/sizes.js +11 -19
  27. package/dist/cjs/assets/scripts/notification/const/types.js +1 -1
  28. package/dist/cjs/assets/scripts/notification/utils.js +28 -23
  29. package/dist/cjs/assets/scripts/progress-bar/ProgressBar.js +140 -141
  30. package/dist/cjs/assets/scripts/selectBox.js +72 -132
  31. package/dist/cjs/assets/scripts/shared/ButtonCloseX.js +18 -19
  32. package/dist/cjs/assets/scripts/slider.js +104 -122
  33. package/dist/cjs/assets/scripts/tab.js +8 -8
  34. package/dist/cjs/assets/scripts/table/Table.js +377 -0
  35. package/dist/cjs/assets/scripts/table/const/classNames.js +33 -0
  36. package/dist/cjs/assets/scripts/table/const/index.js +27 -0
  37. package/dist/cjs/assets/scripts/table/const/types.js +5 -0
  38. package/dist/cjs/assets/scripts/table/index.js +43 -0
  39. package/dist/cjs/assets/scripts/tag/Tag.js +108 -115
  40. package/dist/cjs/assets/scripts/tag/const/classNames.js +3 -7
  41. package/dist/cjs/assets/scripts/tag/const/sizes.js +4 -4
  42. package/dist/cjs/assets/scripts/tooltip/Tooltip.js +155 -182
  43. package/dist/cjs/assets/scripts/tooltip/TooltipLayerManager.js +23 -25
  44. package/dist/cjs/assets/scripts/tooltip/const/classNames.js +1 -1
  45. package/dist/cjs/assets/scripts/tooltip/const/constants.js +14 -14
  46. package/dist/cjs/assets/scripts/tooltip/const/icons.js +7 -7
  47. package/dist/cjs/assets/scripts/tooltip/const/templates.js +42 -25
  48. package/dist/cjs/assets/scripts/tooltip/utils.js +17 -18
  49. package/dist/cjs/assets/scripts/utils/debounce.js +7 -8
  50. package/dist/cjs/assets/scripts/utils/unifiedBox/domRenderer.js +102 -116
  51. package/dist/cjs/assets/scripts/utils/unifiedBox/dropdownModel.js +103 -144
  52. package/dist/cjs/assets/scripts/utils/unifiedBox/unifiedBoxController.js +180 -207
  53. package/dist/cjs/assets/scripts/utils/unifiedBox/unifiedBoxManager.js +166 -362
  54. package/dist/cjs/constant/color.js +1 -1
  55. package/dist/cjs/index.js +0 -297
  56. package/dist/cjs/src/components/badge/Badge.js +17 -30
  57. package/dist/cjs/src/components/badge/index.js +0 -11
  58. package/dist/cjs/src/components/badge/utils.js +11 -10
  59. package/dist/cjs/src/components/badge-group/BadgeGroup.js +42 -0
  60. package/dist/cjs/src/components/badge-group/index.js +16 -0
  61. package/dist/cjs/src/components/bread-crumb/BreadCrumb.js +55 -0
  62. package/dist/cjs/src/components/button/Button.js +37 -58
  63. package/dist/cjs/src/components/button/ButtonCloseX.js +12 -22
  64. package/dist/cjs/src/components/button/ButtonStepper.js +9 -7
  65. package/dist/cjs/src/components/button/index.js +0 -11
  66. package/dist/cjs/src/components/button-group/ButtonGroup.js +97 -0
  67. package/dist/cjs/src/components/button-group/index.js +16 -0
  68. package/dist/cjs/src/components/carousel-arrow/CarouselArrow.js +34 -0
  69. package/dist/cjs/src/components/carousel-arrow/index.js +16 -0
  70. package/dist/cjs/src/components/carousel-number-group/CarouselNumberGroup.js +33 -0
  71. package/dist/cjs/src/components/{carousel → carousel-number-group}/index.js +0 -11
  72. package/dist/cjs/src/components/checkbox/Checkbox.js +28 -49
  73. package/dist/cjs/src/components/checkbox/CheckboxInput.js +23 -42
  74. package/dist/cjs/src/components/combo-box/ComboBox.js +290 -0
  75. package/dist/cjs/src/components/data-grid/DataGrid.js +182 -0
  76. package/dist/cjs/src/components/data-grid/DataGrid.types.js +5 -0
  77. package/dist/cjs/src/components/data-grid/index.js +27 -0
  78. package/dist/cjs/src/components/date-picker/CustomInput.js +16 -32
  79. package/dist/cjs/src/components/date-picker/DatePicker.js +416 -256
  80. package/dist/cjs/src/components/date-picker/index.js +0 -22
  81. package/dist/cjs/src/components/date-picker/utils.js +2 -4
  82. package/dist/cjs/src/components/divider/Divider.js +14 -25
  83. package/dist/cjs/src/components/dot/Dot.js +11 -28
  84. package/dist/cjs/src/components/dropdown/Dropdown.js +90 -132
  85. package/dist/cjs/src/components/empty-state/EmptyState.js +28 -45
  86. package/dist/cjs/src/components/featured-icon/FeaturedIcon.js +14 -33
  87. package/dist/cjs/src/components/file-input/FileInput.js +102 -148
  88. package/dist/cjs/src/components/horizontal-tab/HorizontalTab.js +53 -0
  89. package/dist/cjs/src/components/horizontal-tab/index.js +16 -0
  90. package/dist/cjs/src/components/image-file-input/ImageFileInput.js +109 -170
  91. package/dist/cjs/src/components/image-file-input/components/ImagePreview.js +8 -17
  92. package/dist/cjs/src/components/index.js +156 -24
  93. package/dist/cjs/src/components/input-base/InputBase.js +195 -0
  94. package/dist/cjs/src/components/input-base/index.js +16 -0
  95. package/dist/cjs/src/components/modal/Modal.js +76 -105
  96. package/dist/cjs/src/components/notification/FloatingNotification.js +52 -80
  97. package/dist/cjs/src/components/notification/FullWidthNotification.js +67 -101
  98. package/dist/cjs/src/components/notification/MessageNotification.js +60 -89
  99. package/dist/cjs/src/components/notification/Notification.js +18 -36
  100. package/dist/cjs/src/components/number-input/NumberInput.js +112 -0
  101. package/dist/cjs/src/components/number-input/index.js +16 -0
  102. package/dist/cjs/src/components/pagination/NavButton.js +28 -42
  103. package/dist/cjs/src/components/pagination/Pagination.js +58 -97
  104. package/dist/cjs/src/components/password-input/PasswordInput.js +55 -0
  105. package/dist/cjs/src/components/password-input/index.js +16 -0
  106. package/dist/cjs/src/components/progress-bar/ProgressBar.js +45 -60
  107. package/dist/cjs/src/components/progress-bar/components/SegmentBar.js +11 -9
  108. package/dist/cjs/src/components/progress-bar/components/SegmentLabels.js +32 -43
  109. package/dist/cjs/src/components/progress-bar/hooks/useProgressBar.js +59 -78
  110. package/dist/cjs/src/components/progress-bar/utils.js +8 -8
  111. package/dist/cjs/src/components/progress-circle/ProgressCircle.js +49 -72
  112. package/dist/cjs/src/components/radio/Radio.js +24 -43
  113. package/dist/cjs/src/components/radio/RadioInput.js +18 -36
  114. package/dist/cjs/src/components/range-date-picker/RangeDatePicker.js +147 -0
  115. package/dist/cjs/src/components/range-date-picker/index.js +16 -0
  116. package/dist/cjs/src/components/range-date-picker-with-buttons/RangeDatePickerWithButtons.js +81 -0
  117. package/dist/cjs/src/components/range-date-picker-with-buttons/index.js +16 -0
  118. package/dist/cjs/src/components/select/Select.js +36 -63
  119. package/dist/cjs/src/components/select-box/SelectBox.js +260 -0
  120. package/dist/cjs/src/components/select-dropdown/SelectDropdown.js +64 -100
  121. package/dist/cjs/src/components/shared/hintText/HintText.js +13 -30
  122. package/dist/cjs/src/components/shared/label/Label.js +12 -29
  123. package/dist/cjs/src/components/slider/Slider.js +25 -28
  124. package/dist/cjs/src/components/spinner/Spinner.js +25 -39
  125. package/dist/cjs/src/components/switch/Switch.js +44 -69
  126. package/dist/cjs/src/components/tab/TabButton.js +41 -61
  127. package/dist/cjs/src/components/tab/index.js +0 -22
  128. package/dist/cjs/src/components/table/Table.js +269 -0
  129. package/dist/cjs/src/components/table/index.js +16 -0
  130. package/dist/cjs/src/components/table/types.js +5 -0
  131. package/dist/cjs/src/components/tag/Tag.js +65 -85
  132. package/dist/cjs/src/components/textarea/Textarea.js +79 -0
  133. package/dist/cjs/src/components/textarea/index.js +16 -0
  134. package/dist/cjs/src/components/toggle/Toggle.js +28 -52
  135. package/dist/cjs/src/components/tooltip/Tooltip.js +75 -108
  136. package/dist/cjs/src/components/vertical-tab/VerticalTab.js +48 -0
  137. package/dist/cjs/src/components/vertical-tab/index.js +16 -0
  138. package/dist/cjs/src/constant/breakpoint.js +3 -3
  139. package/dist/cjs/src/constant/date-picker.js +1 -1
  140. package/dist/cjs/src/constant/size.js +1 -1
  141. package/dist/cjs/src/hooks/dropdown/useDropdown.js +58 -60
  142. package/dist/cjs/src/hooks/dropdown/useDropdownKeyboard.js +37 -40
  143. package/dist/cjs/src/hooks/dropdown/useDropdownPosition.js +7 -9
  144. package/dist/cjs/src/hooks/dropdown/useOutsideClick.js +11 -11
  145. package/dist/cjs/src/hooks/dropdown/useScrollLock.js +23 -19
  146. package/dist/cjs/src/hooks/dropdown/useWindowResize.js +12 -13
  147. package/dist/cjs/src/hooks/useCallbackRef.js +2 -2
  148. package/dist/cjs/src/hooks/useMediaQuery.js +8 -11
  149. package/dist/cjs/src/hooks/useMergeRefs.js +2 -2
  150. package/dist/cjs/src/utils/date-picker.js +29 -30
  151. package/dist/cjs/src/utils/dropdown/dropdownUtils.js +39 -35
  152. package/dist/cjs/src/utils/dropdown/multiSelect.js +25 -45
  153. package/dist/esm/assets/scripts/baseBox.js +53 -57
  154. package/dist/esm/assets/scripts/comboBox.js +54 -107
  155. package/dist/esm/assets/scripts/datePicker.js +288 -324
  156. package/dist/esm/assets/scripts/featuredIcon.js +40 -50
  157. package/dist/esm/assets/scripts/fileInput/const/classNames.js +4 -10
  158. package/dist/esm/assets/scripts/fileInput/fileInput.js +32 -35
  159. package/dist/esm/assets/scripts/fileInput/fileInputModel.js +26 -36
  160. package/dist/esm/assets/scripts/fileInput/fileInputView.js +52 -49
  161. package/dist/esm/assets/scripts/imageFileInput/ImageFileInput.js +60 -65
  162. package/dist/esm/assets/scripts/imageFileInput/ImageFileInputModel.js +78 -113
  163. package/dist/esm/assets/scripts/imageFileInput/ImageFileInputView.js +106 -106
  164. package/dist/esm/assets/scripts/imageFileInput/const/classNames.js +6 -16
  165. package/dist/esm/assets/scripts/index.js +2 -0
  166. package/dist/esm/assets/scripts/modal/Modal.js +43 -55
  167. package/dist/esm/assets/scripts/modal/ModalActions.js +39 -53
  168. package/dist/esm/assets/scripts/modal/ModalContent.js +21 -23
  169. package/dist/esm/assets/scripts/modal/ModalHeader.js +36 -49
  170. package/dist/esm/assets/scripts/modal/const/classNames.js +5 -13
  171. package/dist/esm/assets/scripts/modal/utils/contentUtils.js +1 -1
  172. package/dist/esm/assets/scripts/notification/FloatingNotification.js +90 -94
  173. package/dist/esm/assets/scripts/notification/FullWidthNotification.js +91 -81
  174. package/dist/esm/assets/scripts/notification/MessageNotification.js +91 -80
  175. package/dist/esm/assets/scripts/notification/Notification.js +49 -66
  176. package/dist/esm/assets/scripts/notification/const/classNames.js +1 -1
  177. package/dist/esm/assets/scripts/notification/const/icons.js +11 -25
  178. package/dist/esm/assets/scripts/notification/const/sizes.js +11 -19
  179. package/dist/esm/assets/scripts/notification/const/types.js +1 -1
  180. package/dist/esm/assets/scripts/notification/utils.js +28 -23
  181. package/dist/esm/assets/scripts/progress-bar/ProgressBar.js +139 -142
  182. package/dist/esm/assets/scripts/selectBox.js +71 -133
  183. package/dist/esm/assets/scripts/shared/ButtonCloseX.js +18 -19
  184. package/dist/esm/assets/scripts/slider.js +103 -123
  185. package/dist/esm/assets/scripts/tab.js +7 -9
  186. package/dist/esm/assets/scripts/table/Table.js +370 -0
  187. package/dist/esm/assets/scripts/table/const/classNames.js +27 -0
  188. package/dist/esm/assets/scripts/table/const/index.js +2 -0
  189. package/dist/esm/assets/scripts/table/const/types.js +1 -0
  190. package/dist/esm/assets/scripts/table/index.js +8 -0
  191. package/dist/esm/assets/scripts/tag/Tag.js +107 -116
  192. package/dist/esm/assets/scripts/tag/const/classNames.js +3 -7
  193. package/dist/esm/assets/scripts/tag/const/sizes.js +4 -4
  194. package/dist/esm/assets/scripts/tooltip/Tooltip.js +154 -183
  195. package/dist/esm/assets/scripts/tooltip/TooltipLayerManager.js +22 -26
  196. package/dist/esm/assets/scripts/tooltip/const/classNames.js +1 -1
  197. package/dist/esm/assets/scripts/tooltip/const/constants.js +14 -14
  198. package/dist/esm/assets/scripts/tooltip/const/icons.js +7 -7
  199. package/dist/esm/assets/scripts/tooltip/const/templates.js +42 -25
  200. package/dist/esm/assets/scripts/tooltip/utils.js +17 -18
  201. package/dist/esm/assets/scripts/utils/debounce.js +7 -8
  202. package/dist/esm/assets/scripts/utils/unifiedBox/domRenderer.js +101 -117
  203. package/dist/esm/assets/scripts/utils/unifiedBox/dropdownModel.js +103 -144
  204. package/dist/esm/assets/scripts/utils/unifiedBox/unifiedBoxController.js +179 -208
  205. package/dist/esm/assets/scripts/utils/unifiedBox/unifiedBoxManager.js +165 -363
  206. package/dist/esm/constant/color.js +1 -1
  207. package/dist/esm/index.js +0 -27
  208. package/dist/esm/src/components/badge/Badge.js +17 -30
  209. package/dist/esm/src/components/badge/index.js +1 -2
  210. package/dist/esm/src/components/badge/utils.js +11 -10
  211. package/dist/esm/src/components/badge-group/BadgeGroup.js +35 -0
  212. package/dist/esm/src/components/badge-group/index.js +1 -0
  213. package/dist/esm/src/components/bread-crumb/BreadCrumb.js +48 -0
  214. package/dist/esm/src/components/button/Button.js +37 -58
  215. package/dist/esm/src/components/button/ButtonCloseX.js +12 -22
  216. package/dist/esm/src/components/button/ButtonStepper.js +9 -7
  217. package/dist/esm/src/components/button/index.js +0 -1
  218. package/dist/esm/src/components/button-group/ButtonGroup.js +89 -0
  219. package/dist/esm/src/components/button-group/index.js +1 -0
  220. package/dist/esm/src/components/carousel-arrow/CarouselArrow.js +26 -0
  221. package/dist/esm/src/components/carousel-arrow/index.js +1 -0
  222. package/dist/esm/src/components/carousel-number-group/CarouselNumberGroup.js +25 -0
  223. package/dist/esm/src/components/carousel-number-group/index.js +1 -0
  224. package/dist/esm/src/components/checkbox/Checkbox.js +28 -49
  225. package/dist/esm/src/components/checkbox/CheckboxInput.js +23 -42
  226. package/dist/esm/src/components/combo-box/ComboBox.js +284 -0
  227. package/dist/esm/src/components/data-grid/DataGrid.js +175 -0
  228. package/dist/esm/src/components/data-grid/DataGrid.types.js +1 -0
  229. package/dist/esm/src/components/data-grid/index.js +2 -0
  230. package/dist/esm/src/components/date-picker/CustomInput.js +16 -32
  231. package/dist/esm/src/components/date-picker/DatePicker.js +421 -260
  232. package/dist/esm/src/components/date-picker/index.js +0 -2
  233. package/dist/esm/src/components/date-picker/utils.js +2 -4
  234. package/dist/esm/src/components/divider/Divider.js +14 -25
  235. package/dist/esm/src/components/dot/Dot.js +11 -28
  236. package/dist/esm/src/components/dropdown/Dropdown.js +90 -132
  237. package/dist/esm/src/components/empty-state/EmptyState.js +28 -45
  238. package/dist/esm/src/components/featured-icon/FeaturedIcon.js +14 -33
  239. package/dist/esm/src/components/file-input/FileInput.js +102 -148
  240. package/dist/esm/src/components/horizontal-tab/HorizontalTab.js +46 -0
  241. package/dist/esm/src/components/horizontal-tab/index.js +1 -0
  242. package/dist/esm/src/components/image-file-input/ImageFileInput.js +109 -170
  243. package/dist/esm/src/components/image-file-input/components/ImagePreview.js +8 -17
  244. package/dist/esm/src/components/index.js +18 -6
  245. package/dist/esm/src/components/input-base/InputBase.js +189 -0
  246. package/dist/esm/src/components/input-base/index.js +1 -0
  247. package/dist/esm/src/components/modal/Modal.js +76 -105
  248. package/dist/esm/src/components/notification/FloatingNotification.js +52 -80
  249. package/dist/esm/src/components/notification/FullWidthNotification.js +67 -101
  250. package/dist/esm/src/components/notification/MessageNotification.js +60 -89
  251. package/dist/esm/src/components/notification/Notification.js +18 -36
  252. package/dist/esm/src/components/{input → number-input}/NumberInput.js +34 -54
  253. package/dist/esm/src/components/number-input/index.js +1 -0
  254. package/dist/esm/src/components/pagination/NavButton.js +28 -42
  255. package/dist/esm/src/components/pagination/Pagination.js +58 -97
  256. package/dist/esm/src/components/password-input/PasswordInput.js +48 -0
  257. package/dist/esm/src/components/password-input/index.js +1 -0
  258. package/dist/esm/src/components/progress-bar/ProgressBar.js +45 -60
  259. package/dist/esm/src/components/progress-bar/components/SegmentBar.js +11 -9
  260. package/dist/esm/src/components/progress-bar/components/SegmentLabels.js +32 -43
  261. package/dist/esm/src/components/progress-bar/hooks/useProgressBar.js +59 -78
  262. package/dist/esm/src/components/progress-bar/utils.js +8 -8
  263. package/dist/esm/src/components/progress-circle/ProgressCircle.js +49 -72
  264. package/dist/esm/src/components/radio/Radio.js +24 -43
  265. package/dist/esm/src/components/radio/RadioInput.js +18 -36
  266. package/dist/esm/src/components/range-date-picker/RangeDatePicker.js +141 -0
  267. package/dist/esm/src/components/range-date-picker/index.js +1 -0
  268. package/dist/esm/src/components/range-date-picker-with-buttons/RangeDatePickerWithButtons.js +75 -0
  269. package/dist/esm/src/components/range-date-picker-with-buttons/index.js +1 -0
  270. package/dist/esm/src/components/select/Select.js +36 -63
  271. package/dist/esm/src/components/select-box/SelectBox.js +254 -0
  272. package/dist/esm/src/components/select-dropdown/SelectDropdown.js +64 -100
  273. package/dist/esm/src/components/shared/hintText/HintText.js +13 -30
  274. package/dist/esm/src/components/shared/label/Label.js +12 -29
  275. package/dist/esm/src/components/slider/Slider.js +25 -28
  276. package/dist/esm/src/components/spinner/Spinner.js +25 -39
  277. package/dist/esm/src/components/switch/Switch.js +44 -69
  278. package/dist/esm/src/components/tab/TabButton.js +41 -61
  279. package/dist/esm/src/components/tab/index.js +1 -3
  280. package/dist/esm/src/components/table/Table.js +262 -0
  281. package/dist/esm/src/components/table/index.js +1 -0
  282. package/dist/esm/src/components/table/types.js +1 -0
  283. package/dist/esm/src/components/tag/Tag.js +65 -85
  284. package/dist/esm/src/components/textarea/Textarea.js +72 -0
  285. package/dist/esm/src/components/textarea/index.js +1 -0
  286. package/dist/esm/src/components/toggle/Toggle.js +28 -52
  287. package/dist/esm/src/components/tooltip/Tooltip.js +75 -108
  288. package/dist/esm/src/components/vertical-tab/VerticalTab.js +40 -0
  289. package/dist/esm/src/components/vertical-tab/index.js +1 -0
  290. package/dist/esm/src/constant/breakpoint.js +3 -3
  291. package/dist/esm/src/constant/date-picker.js +1 -1
  292. package/dist/esm/src/constant/size.js +1 -1
  293. package/dist/esm/src/hooks/dropdown/useDropdown.js +58 -60
  294. package/dist/esm/src/hooks/dropdown/useDropdownKeyboard.js +37 -40
  295. package/dist/esm/src/hooks/dropdown/useDropdownPosition.js +7 -9
  296. package/dist/esm/src/hooks/dropdown/useOutsideClick.js +11 -11
  297. package/dist/esm/src/hooks/dropdown/useScrollLock.js +23 -19
  298. package/dist/esm/src/hooks/dropdown/useWindowResize.js +12 -13
  299. package/dist/esm/src/hooks/useCallbackRef.js +2 -2
  300. package/dist/esm/src/hooks/useMediaQuery.js +8 -11
  301. package/dist/esm/src/hooks/useMergeRefs.js +2 -2
  302. package/dist/esm/src/utils/date-picker.js +29 -30
  303. package/dist/esm/src/utils/dropdown/dropdownUtils.js +39 -35
  304. package/dist/esm/src/utils/dropdown/multiSelect.js +25 -45
  305. package/dist/temp/assets/scripts/baseBox.js +53 -57
  306. package/dist/temp/assets/scripts/comboBox.js +62 -93
  307. package/dist/temp/assets/scripts/datePicker.js +286 -293
  308. package/dist/temp/assets/scripts/featuredIcon.js +40 -47
  309. package/dist/temp/assets/scripts/fileInput/const/classNames.js +4 -8
  310. package/dist/temp/assets/scripts/fileInput/fileInput.js +29 -33
  311. package/dist/temp/assets/scripts/fileInput/fileInputModel.js +24 -32
  312. package/dist/temp/assets/scripts/fileInput/fileInputView.js +52 -49
  313. package/dist/temp/assets/scripts/imageFileInput/ImageFileInput.js +57 -63
  314. package/dist/temp/assets/scripts/imageFileInput/ImageFileInputModel.js +79 -99
  315. package/dist/temp/assets/scripts/imageFileInput/ImageFileInputView.js +106 -104
  316. package/dist/temp/assets/scripts/imageFileInput/const/classNames.js +6 -10
  317. package/dist/temp/assets/scripts/index.d.ts +2 -0
  318. package/dist/temp/assets/scripts/index.js +2 -0
  319. package/dist/temp/assets/scripts/modal/Modal.js +46 -52
  320. package/dist/temp/assets/scripts/modal/ModalActions.js +42 -50
  321. package/dist/temp/assets/scripts/modal/ModalContent.js +21 -23
  322. package/dist/temp/assets/scripts/modal/ModalHeader.js +40 -46
  323. package/dist/temp/assets/scripts/modal/const/classNames.js +5 -5
  324. package/dist/temp/assets/scripts/modal/utils/contentUtils.js +1 -1
  325. package/dist/temp/assets/scripts/notification/FloatingNotification.js +80 -77
  326. package/dist/temp/assets/scripts/notification/FullWidthNotification.js +78 -62
  327. package/dist/temp/assets/scripts/notification/MessageNotification.js +81 -64
  328. package/dist/temp/assets/scripts/notification/Notification.js +48 -62
  329. package/dist/temp/assets/scripts/notification/const/classNames.js +1 -1
  330. package/dist/temp/assets/scripts/notification/const/icons.js +11 -25
  331. package/dist/temp/assets/scripts/notification/const/sizes.js +11 -11
  332. package/dist/temp/assets/scripts/notification/const/types.js +1 -1
  333. package/dist/temp/assets/scripts/notification/utils.js +31 -26
  334. package/dist/temp/assets/scripts/progress-bar/ProgressBar.js +124 -119
  335. package/dist/temp/assets/scripts/selectBox.js +81 -105
  336. package/dist/temp/assets/scripts/shared/ButtonCloseX.js +14 -13
  337. package/dist/temp/assets/scripts/slider.js +105 -113
  338. package/dist/temp/assets/scripts/tab.js +7 -9
  339. package/dist/temp/assets/scripts/table/Table.d.ts +41 -0
  340. package/dist/temp/assets/scripts/table/Table.js +378 -0
  341. package/dist/temp/assets/scripts/table/const/classNames.d.ts +27 -0
  342. package/dist/temp/assets/scripts/table/const/classNames.js +27 -0
  343. package/dist/temp/assets/scripts/table/const/index.d.ts +2 -0
  344. package/dist/temp/assets/scripts/table/const/index.js +2 -0
  345. package/dist/temp/assets/scripts/table/const/types.d.ts +23 -0
  346. package/dist/temp/assets/scripts/table/const/types.js +1 -0
  347. package/dist/temp/assets/scripts/table/index.d.ts +3 -0
  348. package/dist/temp/assets/scripts/table/index.js +8 -0
  349. package/dist/temp/assets/scripts/tag/Tag.js +104 -112
  350. package/dist/temp/assets/scripts/tag/const/classNames.js +3 -3
  351. package/dist/temp/assets/scripts/tag/const/sizes.js +4 -4
  352. package/dist/temp/assets/scripts/tooltip/Tooltip.js +125 -150
  353. package/dist/temp/assets/scripts/tooltip/TooltipLayerManager.js +20 -23
  354. package/dist/temp/assets/scripts/tooltip/const/classNames.js +1 -1
  355. package/dist/temp/assets/scripts/tooltip/const/constants.d.ts +1 -1
  356. package/dist/temp/assets/scripts/tooltip/const/constants.js +14 -14
  357. package/dist/temp/assets/scripts/tooltip/const/icons.js +7 -7
  358. package/dist/temp/assets/scripts/tooltip/const/templates.js +42 -13
  359. package/dist/temp/assets/scripts/tooltip/utils.js +13 -15
  360. package/dist/temp/assets/scripts/utils/debounce.js +5 -9
  361. package/dist/temp/assets/scripts/utils/unifiedBox/domRenderer.js +96 -105
  362. package/dist/temp/assets/scripts/utils/unifiedBox/dropdownModel.js +96 -121
  363. package/dist/temp/assets/scripts/utils/unifiedBox/unifiedBoxController.js +170 -193
  364. package/dist/temp/assets/scripts/utils/unifiedBox/unifiedBoxManager.js +173 -250
  365. package/dist/temp/constant/color.js +1 -1
  366. package/dist/temp/index.d.ts +0 -27
  367. package/dist/temp/index.js +0 -27
  368. package/dist/temp/src/components/badge/Badge.js +3 -15
  369. package/dist/temp/src/components/badge/index.d.ts +0 -1
  370. package/dist/temp/src/components/badge/index.js +0 -1
  371. package/dist/temp/src/components/badge/utils.js +5 -7
  372. package/dist/{types/src/components/badge → temp/src/components/badge-group}/BadgeGroup.d.ts +1 -1
  373. package/dist/temp/src/components/badge-group/BadgeGroup.js +13 -0
  374. package/dist/temp/src/components/badge-group/index.d.ts +1 -0
  375. package/dist/temp/src/components/badge-group/index.js +1 -0
  376. package/dist/temp/src/components/bread-crumb/BreadCrumb.js +20 -0
  377. package/dist/temp/src/components/button/Button.js +21 -38
  378. package/dist/temp/src/components/button/ButtonCloseX.js +3 -15
  379. package/dist/temp/src/components/button/ButtonStepper.js +2 -3
  380. package/dist/temp/src/components/button/index.d.ts +0 -1
  381. package/dist/temp/src/components/button/index.js +0 -1
  382. package/dist/{types/src/components/button → temp/src/components/button-group}/ButtonGroup.d.ts +5 -4
  383. package/dist/temp/src/components/button-group/ButtonGroup.js +51 -0
  384. package/dist/temp/src/components/button-group/index.d.ts +1 -0
  385. package/dist/temp/src/components/button-group/index.js +1 -0
  386. package/dist/temp/src/components/carousel-arrow/CarouselArrow.js +9 -0
  387. package/dist/temp/src/components/carousel-arrow/index.d.ts +1 -0
  388. package/dist/temp/src/components/carousel-arrow/index.js +1 -0
  389. package/dist/temp/src/components/carousel-number-group/CarouselNumberGroup.js +10 -0
  390. package/dist/{types/src/components/carousel → temp/src/components/carousel-number-group}/index.d.ts +0 -1
  391. package/dist/temp/src/components/{carousel → carousel-number-group}/index.js +0 -1
  392. package/dist/temp/src/components/checkbox/Checkbox.js +2 -25
  393. package/dist/temp/src/components/checkbox/CheckboxInput.js +6 -29
  394. package/dist/temp/src/components/combo-box/ComboBox.js +165 -0
  395. package/dist/temp/src/components/data-grid/DataGrid.d.ts +28 -0
  396. package/dist/temp/src/components/data-grid/DataGrid.js +88 -0
  397. package/dist/temp/src/components/data-grid/DataGrid.types.d.ts +35 -0
  398. package/dist/temp/src/components/data-grid/DataGrid.types.js +1 -0
  399. package/dist/temp/src/components/data-grid/index.d.ts +2 -0
  400. package/dist/temp/src/components/data-grid/index.js +2 -0
  401. package/dist/temp/src/components/date-picker/CustomInput.js +5 -28
  402. package/dist/temp/src/components/date-picker/DatePicker.d.ts +11 -7
  403. package/dist/temp/src/components/date-picker/DatePicker.js +394 -221
  404. package/dist/temp/src/components/date-picker/index.d.ts +0 -2
  405. package/dist/temp/src/components/date-picker/index.js +0 -2
  406. package/dist/temp/src/components/date-picker/utils.js +1 -2
  407. package/dist/temp/src/components/divider/Divider.js +1 -15
  408. package/dist/temp/src/components/dot/Dot.js +2 -25
  409. package/dist/temp/src/components/dropdown/Dropdown.js +23 -39
  410. package/dist/temp/src/components/empty-state/EmptyState.js +3 -29
  411. package/dist/temp/src/components/featured-icon/FeaturedIcon.js +3 -26
  412. package/dist/temp/src/components/file-input/FileInput.d.ts +1 -1
  413. package/dist/temp/src/components/file-input/FileInput.js +33 -69
  414. package/dist/{types/src/components/tab → temp/src/components/horizontal-tab}/HorizontalTab.d.ts +1 -1
  415. package/dist/temp/src/components/horizontal-tab/HorizontalTab.js +24 -0
  416. package/dist/temp/src/components/horizontal-tab/index.d.ts +1 -0
  417. package/dist/temp/src/components/horizontal-tab/index.js +1 -0
  418. package/dist/temp/src/components/image-file-input/ImageFileInput.d.ts +1 -1
  419. package/dist/temp/src/components/image-file-input/ImageFileInput.js +45 -73
  420. package/dist/temp/src/components/image-file-input/components/ImagePreview.js +2 -14
  421. package/dist/temp/src/components/index.d.ts +17 -5
  422. package/dist/temp/src/components/index.js +17 -5
  423. package/dist/temp/src/components/{input → input-base}/InputBase.d.ts +1 -0
  424. package/dist/temp/src/components/input-base/InputBase.js +96 -0
  425. package/dist/temp/src/components/input-base/index.d.ts +1 -0
  426. package/dist/temp/src/components/input-base/index.js +1 -0
  427. package/dist/temp/src/components/modal/Modal.js +15 -41
  428. package/dist/temp/src/components/notification/FloatingNotification.js +11 -34
  429. package/dist/temp/src/components/notification/FullWidthNotification.js +12 -35
  430. package/dist/temp/src/components/notification/MessageNotification.js +8 -31
  431. package/dist/temp/src/components/notification/Notification.js +4 -27
  432. package/dist/{types/src/components/input → temp/src/components/number-input}/NumberInput.d.ts +1 -1
  433. package/dist/temp/src/components/number-input/NumberInput.js +68 -0
  434. package/dist/temp/src/components/number-input/index.d.ts +1 -0
  435. package/dist/temp/src/components/number-input/index.js +1 -0
  436. package/dist/temp/src/components/pagination/NavButton.js +19 -31
  437. package/dist/temp/src/components/pagination/Pagination.js +33 -60
  438. package/dist/temp/src/components/{input → password-input}/PasswordInput.d.ts +1 -1
  439. package/dist/temp/src/components/password-input/PasswordInput.js +28 -0
  440. package/dist/temp/src/components/password-input/index.d.ts +1 -0
  441. package/dist/temp/src/components/password-input/index.js +1 -0
  442. package/dist/temp/src/components/progress-bar/ProgressBar.js +10 -22
  443. package/dist/temp/src/components/progress-bar/components/SegmentBar.js +5 -6
  444. package/dist/temp/src/components/progress-bar/components/SegmentLabels.js +11 -24
  445. package/dist/temp/src/components/progress-bar/hooks/useProgressBar.js +36 -45
  446. package/dist/temp/src/components/progress-bar/utils.js +8 -8
  447. package/dist/temp/src/components/progress-circle/ProgressCircle.js +5 -17
  448. package/dist/temp/src/components/radio/Radio.js +2 -25
  449. package/dist/temp/src/components/radio/RadioInput.js +2 -25
  450. package/dist/{types/src/components/date-picker → temp/src/components/range-date-picker}/RangeDatePicker.d.ts +1 -1
  451. package/dist/temp/src/components/range-date-picker/RangeDatePicker.js +104 -0
  452. package/dist/temp/src/components/range-date-picker/index.d.ts +1 -0
  453. package/dist/temp/src/components/range-date-picker/index.js +1 -0
  454. package/dist/{types/src/components/date-picker → temp/src/components/range-date-picker-with-buttons}/RangeDatePickerWithButtons.d.ts +1 -1
  455. package/dist/temp/src/components/range-date-picker-with-buttons/RangeDatePickerWithButtons.js +43 -0
  456. package/dist/temp/src/components/range-date-picker-with-buttons/index.d.ts +1 -0
  457. package/dist/temp/src/components/range-date-picker-with-buttons/index.js +1 -0
  458. package/dist/temp/src/components/select/Select.js +3 -26
  459. package/dist/temp/src/components/select-box/SelectBox.js +130 -0
  460. package/dist/temp/src/components/select-dropdown/SelectDropdown.js +11 -34
  461. package/dist/temp/src/components/shared/hintText/HintText.js +2 -25
  462. package/dist/temp/src/components/shared/label/Label.js +2 -25
  463. package/dist/temp/src/components/slider/Slider.js +15 -16
  464. package/dist/temp/src/components/spinner/Spinner.js +4 -17
  465. package/dist/temp/src/components/switch/Switch.js +17 -30
  466. package/dist/temp/src/components/tab/TabButton.js +6 -29
  467. package/dist/temp/src/components/tab/index.d.ts +0 -2
  468. package/dist/temp/src/components/tab/index.js +0 -2
  469. package/dist/temp/src/components/table/Table.d.ts +46 -0
  470. package/dist/temp/src/components/table/Table.js +115 -0
  471. package/dist/temp/src/components/table/index.d.ts +1 -0
  472. package/dist/temp/src/components/table/index.js +1 -0
  473. package/dist/temp/src/components/table/types.d.ts +45 -0
  474. package/dist/temp/src/components/table/types.js +1 -0
  475. package/dist/temp/src/components/tag/Tag.js +39 -53
  476. package/dist/temp/src/components/textarea/Textarea.js +34 -0
  477. package/dist/temp/src/components/textarea/index.d.ts +1 -0
  478. package/dist/temp/src/components/textarea/index.js +1 -0
  479. package/dist/temp/src/components/toggle/Toggle.js +3 -26
  480. package/dist/temp/src/components/tooltip/Tooltip.js +49 -67
  481. package/dist/temp/src/components/{tab → vertical-tab}/VerticalTab.d.ts +1 -1
  482. package/dist/temp/src/components/vertical-tab/VerticalTab.js +20 -0
  483. package/dist/temp/src/components/vertical-tab/index.d.ts +1 -0
  484. package/dist/temp/src/components/vertical-tab/index.js +1 -0
  485. package/dist/temp/src/constant/breakpoint.js +3 -3
  486. package/dist/temp/src/constant/date-picker.js +1 -1
  487. package/dist/temp/src/constant/size.js +1 -1
  488. package/dist/temp/src/hooks/dropdown/useDropdown.js +37 -37
  489. package/dist/temp/src/hooks/dropdown/useDropdownKeyboard.js +26 -27
  490. package/dist/temp/src/hooks/dropdown/useDropdownPosition.js +7 -7
  491. package/dist/temp/src/hooks/dropdown/useOutsideClick.js +7 -7
  492. package/dist/temp/src/hooks/dropdown/useScrollLock.js +17 -17
  493. package/dist/temp/src/hooks/dropdown/useWindowResize.js +10 -11
  494. package/dist/temp/src/hooks/useCallbackRef.js +2 -2
  495. package/dist/temp/src/hooks/useMediaQuery.js +8 -9
  496. package/dist/temp/src/hooks/useMergeRefs.js +2 -2
  497. package/dist/temp/src/utils/date-picker.js +23 -25
  498. package/dist/temp/src/utils/dropdown/dropdownUtils.js +26 -27
  499. package/dist/temp/src/utils/dropdown/multiSelect.js +23 -25
  500. package/dist/types/assets/scripts/index.d.ts +2 -0
  501. package/dist/types/assets/scripts/table/Table.d.ts +41 -0
  502. package/dist/types/assets/scripts/table/const/classNames.d.ts +27 -0
  503. package/dist/types/assets/scripts/table/const/index.d.ts +2 -0
  504. package/dist/types/assets/scripts/table/const/types.d.ts +23 -0
  505. package/dist/types/assets/scripts/table/index.d.ts +3 -0
  506. package/dist/types/assets/scripts/tooltip/const/constants.d.ts +1 -1
  507. package/dist/types/index.d.ts +0 -27
  508. package/dist/types/src/components/badge/index.d.ts +0 -1
  509. package/dist/{temp/src/components/badge → types/src/components/badge-group}/BadgeGroup.d.ts +1 -1
  510. package/dist/types/src/components/badge-group/index.d.ts +1 -0
  511. package/dist/types/src/components/button/index.d.ts +0 -1
  512. package/dist/{temp/src/components/button → types/src/components/button-group}/ButtonGroup.d.ts +5 -4
  513. package/dist/types/src/components/button-group/index.d.ts +1 -0
  514. package/dist/types/src/components/carousel-arrow/index.d.ts +1 -0
  515. package/dist/{temp/src/components/carousel → types/src/components/carousel-number-group}/index.d.ts +0 -1
  516. package/dist/types/src/components/data-grid/DataGrid.d.ts +28 -0
  517. package/dist/types/src/components/data-grid/DataGrid.types.d.ts +35 -0
  518. package/dist/types/src/components/data-grid/index.d.ts +2 -0
  519. package/dist/types/src/components/date-picker/DatePicker.d.ts +11 -7
  520. package/dist/types/src/components/date-picker/index.d.ts +0 -2
  521. package/dist/types/src/components/file-input/FileInput.d.ts +1 -1
  522. package/dist/{temp/src/components/tab → types/src/components/horizontal-tab}/HorizontalTab.d.ts +1 -1
  523. package/dist/types/src/components/horizontal-tab/index.d.ts +1 -0
  524. package/dist/types/src/components/image-file-input/ImageFileInput.d.ts +1 -1
  525. package/dist/types/src/components/index.d.ts +17 -5
  526. package/dist/types/src/components/{input → input-base}/InputBase.d.ts +1 -0
  527. package/dist/types/src/components/input-base/index.d.ts +1 -0
  528. package/dist/{temp/src/components/input → types/src/components/number-input}/NumberInput.d.ts +1 -1
  529. package/dist/types/src/components/number-input/index.d.ts +1 -0
  530. package/dist/types/src/components/{input → password-input}/PasswordInput.d.ts +1 -1
  531. package/dist/types/src/components/password-input/index.d.ts +1 -0
  532. package/dist/{temp/src/components/date-picker → types/src/components/range-date-picker}/RangeDatePicker.d.ts +1 -1
  533. package/dist/types/src/components/range-date-picker/index.d.ts +1 -0
  534. package/dist/{temp/src/components/date-picker → types/src/components/range-date-picker-with-buttons}/RangeDatePickerWithButtons.d.ts +1 -1
  535. package/dist/types/src/components/range-date-picker-with-buttons/index.d.ts +1 -0
  536. package/dist/types/src/components/tab/index.d.ts +0 -2
  537. package/dist/types/src/components/table/Table.d.ts +46 -0
  538. package/dist/types/src/components/table/index.d.ts +1 -0
  539. package/dist/types/src/components/table/types.d.ts +45 -0
  540. package/dist/types/src/components/textarea/index.d.ts +1 -0
  541. package/dist/types/src/components/{tab → vertical-tab}/VerticalTab.d.ts +1 -1
  542. package/dist/types/src/components/vertical-tab/index.d.ts +1 -0
  543. package/dist/ui-admin/assets/styles/style.css +625 -165
  544. package/package.json +2 -1
  545. package/dist/cjs/src/components/badge/BadgeGroup.js +0 -62
  546. package/dist/cjs/src/components/breadcrumb/BreadCrumb.js +0 -66
  547. package/dist/cjs/src/components/button/ButtonGroup.js +0 -116
  548. package/dist/cjs/src/components/carousel/CarouselArrow.js +0 -41
  549. package/dist/cjs/src/components/carousel/CarouselNumberGroup.js +0 -45
  550. package/dist/cjs/src/components/combobox/ComboBox.js +0 -349
  551. package/dist/cjs/src/components/date-picker/RangeDatePicker.js +0 -154
  552. package/dist/cjs/src/components/date-picker/RangeDatePickerWithButtons.js +0 -99
  553. package/dist/cjs/src/components/input/InputBase.js +0 -229
  554. package/dist/cjs/src/components/input/NumberInput.js +0 -132
  555. package/dist/cjs/src/components/input/PasswordInput.js +0 -72
  556. package/dist/cjs/src/components/input/Textarea.js +0 -107
  557. package/dist/cjs/src/components/input/index.js +0 -49
  558. package/dist/cjs/src/components/selectbox/SelectBox.js +0 -318
  559. package/dist/cjs/src/components/tab/HorizontalTab.js +0 -68
  560. package/dist/cjs/src/components/tab/VerticalTab.js +0 -60
  561. package/dist/esm/src/components/badge/BadgeGroup.js +0 -55
  562. package/dist/esm/src/components/breadcrumb/BreadCrumb.js +0 -59
  563. package/dist/esm/src/components/button/ButtonGroup.js +0 -108
  564. package/dist/esm/src/components/carousel/CarouselArrow.js +0 -33
  565. package/dist/esm/src/components/carousel/CarouselNumberGroup.js +0 -37
  566. package/dist/esm/src/components/carousel/index.js +0 -2
  567. package/dist/esm/src/components/combobox/ComboBox.js +0 -343
  568. package/dist/esm/src/components/date-picker/RangeDatePicker.js +0 -148
  569. package/dist/esm/src/components/date-picker/RangeDatePickerWithButtons.js +0 -93
  570. package/dist/esm/src/components/input/InputBase.js +0 -223
  571. package/dist/esm/src/components/input/PasswordInput.js +0 -65
  572. package/dist/esm/src/components/input/Textarea.js +0 -100
  573. package/dist/esm/src/components/input/index.js +0 -4
  574. package/dist/esm/src/components/selectbox/SelectBox.js +0 -312
  575. package/dist/esm/src/components/tab/HorizontalTab.js +0 -61
  576. package/dist/esm/src/components/tab/VerticalTab.js +0 -52
  577. package/dist/temp/src/components/badge/BadgeGroup.js +0 -36
  578. package/dist/temp/src/components/breadcrumb/BreadCrumb.js +0 -33
  579. package/dist/temp/src/components/button/ButtonGroup.js +0 -72
  580. package/dist/temp/src/components/carousel/CarouselArrow.js +0 -24
  581. package/dist/temp/src/components/carousel/CarouselNumberGroup.js +0 -24
  582. package/dist/temp/src/components/combobox/ComboBox.js +0 -199
  583. package/dist/temp/src/components/date-picker/RangeDatePicker.js +0 -117
  584. package/dist/temp/src/components/date-picker/RangeDatePickerWithButtons.js +0 -55
  585. package/dist/temp/src/components/input/InputBase.js +0 -121
  586. package/dist/temp/src/components/input/NumberInput.js +0 -93
  587. package/dist/temp/src/components/input/PasswordInput.js +0 -51
  588. package/dist/temp/src/components/input/Textarea.js +0 -60
  589. package/dist/temp/src/components/input/index.d.ts +0 -4
  590. package/dist/temp/src/components/input/index.js +0 -4
  591. package/dist/temp/src/components/selectbox/SelectBox.js +0 -163
  592. package/dist/temp/src/components/tab/HorizontalTab.js +0 -37
  593. package/dist/temp/src/components/tab/VerticalTab.js +0 -32
  594. package/dist/types/src/components/input/index.d.ts +0 -4
  595. /package/dist/cjs/src/components/{breadcrumb → bread-crumb}/index.js +0 -0
  596. /package/dist/cjs/src/components/{combobox → combo-box}/index.js +0 -0
  597. /package/dist/cjs/src/components/{selectbox → select-box}/index.js +0 -0
  598. /package/dist/esm/src/components/{breadcrumb → bread-crumb}/index.js +0 -0
  599. /package/dist/esm/src/components/{combobox → combo-box}/index.js +0 -0
  600. /package/dist/esm/src/components/{selectbox → select-box}/index.js +0 -0
  601. /package/dist/temp/src/components/{breadcrumb → bread-crumb}/BreadCrumb.d.ts +0 -0
  602. /package/dist/temp/src/components/{breadcrumb → bread-crumb}/index.d.ts +0 -0
  603. /package/dist/temp/src/components/{breadcrumb → bread-crumb}/index.js +0 -0
  604. /package/dist/temp/src/components/{carousel → carousel-arrow}/CarouselArrow.d.ts +0 -0
  605. /package/dist/temp/src/components/{carousel → carousel-number-group}/CarouselNumberGroup.d.ts +0 -0
  606. /package/dist/temp/src/components/{combobox → combo-box}/ComboBox.d.ts +0 -0
  607. /package/dist/temp/src/components/{combobox → combo-box}/index.d.ts +0 -0
  608. /package/dist/temp/src/components/{combobox → combo-box}/index.js +0 -0
  609. /package/dist/temp/src/components/{selectbox → select-box}/SelectBox.d.ts +0 -0
  610. /package/dist/temp/src/components/{selectbox → select-box}/index.d.ts +0 -0
  611. /package/dist/temp/src/components/{selectbox → select-box}/index.js +0 -0
  612. /package/dist/temp/src/components/{input → textarea}/Textarea.d.ts +0 -0
  613. /package/dist/types/src/components/{breadcrumb → bread-crumb}/BreadCrumb.d.ts +0 -0
  614. /package/dist/types/src/components/{breadcrumb → bread-crumb}/index.d.ts +0 -0
  615. /package/dist/types/src/components/{carousel → carousel-arrow}/CarouselArrow.d.ts +0 -0
  616. /package/dist/types/src/components/{carousel → carousel-number-group}/CarouselNumberGroup.d.ts +0 -0
  617. /package/dist/types/src/components/{combobox → combo-box}/ComboBox.d.ts +0 -0
  618. /package/dist/types/src/components/{combobox → combo-box}/index.d.ts +0 -0
  619. /package/dist/types/src/components/{selectbox → select-box}/SelectBox.d.ts +0 -0
  620. /package/dist/types/src/components/{selectbox → select-box}/index.d.ts +0 -0
  621. /package/dist/types/src/components/{input → textarea}/Textarea.d.ts +0 -0
@@ -0,0 +1,115 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { ChevronDown, ChevronSelectorVertical, ChevronUp } from '@ncds/ui-admin-icon';
3
+ import classNames from 'classnames';
4
+ import { Children, forwardRef } from 'react';
5
+ // ──────────────────────────────────────────────
6
+ // Sort Icons (@ncds/ui-admin-icon)
7
+ // ──────────────────────────────────────────────
8
+ const SORT_ICONS = {
9
+ none: ChevronSelectorVertical,
10
+ asc: ChevronUp,
11
+ desc: ChevronDown,
12
+ };
13
+ const ARIA_SORT_MAP = {
14
+ asc: 'ascending',
15
+ desc: 'descending',
16
+ none: 'none',
17
+ };
18
+ // ──────────────────────────────────────────────
19
+ // Sub-components
20
+ // ──────────────────────────────────────────────
21
+ const Header = ({ children, className }) => (_jsx("thead", { className: classNames('ncua-table__header', className), children: children }));
22
+ Header.displayName = 'Table.Header';
23
+ const Body = ({ children, className }) => (_jsx("tbody", { className: classNames('ncua-table__body', className), children: children }));
24
+ Body.displayName = 'Table.Body';
25
+ const Row = forwardRef(({ children, className, selected, status, ...rest }, ref) => (_jsx("tr", { ref: ref, className: classNames('ncua-table__row', className, {
26
+ 'ncua-table__row--selected': selected,
27
+ 'ncua-table__row--warning': status === 'warning',
28
+ 'ncua-table__row--error': status === 'error',
29
+ }), ...rest, children: children })));
30
+ Row.displayName = 'Table.Row';
31
+ const HeaderCell = forwardRef(({ children, className, sortDirection, onSort, width, style, ...rest }, ref) => {
32
+ const isSortable = sortDirection !== undefined && onSort !== undefined;
33
+ const SortIcon = isSortable ? SORT_ICONS[sortDirection] : undefined;
34
+ return (_jsx("th", { ref: ref, className: classNames('ncua-table__header-cell', className, {
35
+ 'ncua-table__header-cell--sortable': isSortable,
36
+ }), style: { ...style, width }, "aria-sort": isSortable ? ARIA_SORT_MAP[sortDirection] : undefined, onClick: isSortable ? onSort : undefined, ...rest, children: isSortable && SortIcon ? (_jsxs("span", { className: "ncua-table__header-cell-inner", children: [_jsx("span", { className: "ncua-table__header-cell-text", children: children }), _jsx("span", { className: "ncua-table__sort-icon", children: _jsx(SortIcon, { width: 16, height: 16 }) })] })) : (children) }));
37
+ });
38
+ HeaderCell.displayName = 'Table.HeaderCell';
39
+ const Cell = forwardRef(({ children, className, ...rest }, ref) => (_jsx("td", { ref: ref, className: classNames('ncua-table__cell', className), ...rest, children: children })));
40
+ Cell.displayName = 'Table.Cell';
41
+ const Footer = ({ children, className }) => (_jsx("div", { className: classNames('ncua-table__footer', className), children: children }));
42
+ Footer.displayName = 'Table.Footer';
43
+ const Pagination = ({ children, className }) => (_jsx("div", { className: classNames('ncua-table__pagination', className), children: children }));
44
+ Pagination.displayName = 'Table.Pagination';
45
+ const ColGroup = ({ widths }) => {
46
+ const resolveColWidth = (width) => {
47
+ if (width === 'auto')
48
+ return undefined;
49
+ if (typeof width === 'number')
50
+ return `${width}px`;
51
+ return width;
52
+ };
53
+ return (_jsx("colgroup", { children: widths.map((width, index) => {
54
+ const duplicateCount = widths.slice(0, index).filter((v) => v === width).length;
55
+ return _jsx("col", { style: { width: resolveColWidth(width) } }, `col-${width}-${duplicateCount}`);
56
+ }) }));
57
+ };
58
+ ColGroup.displayName = 'Table.ColGroup';
59
+ const Empty = ({ colSpan, children }) => (_jsx("tr", { children: _jsx("td", { colSpan: colSpan, className: "ncua-table__empty", role: "status", "aria-live": "polite", children: children || '등록된 게시물이 없습니다.' }) }));
60
+ Empty.displayName = 'Table.Empty';
61
+ const categorizeChild = (child, result) => {
62
+ if (!child || typeof child !== 'object' || !('type' in child)) {
63
+ result.tableContent.push(child);
64
+ return;
65
+ }
66
+ if (child.type === Footer) {
67
+ result.footerContent.push(child);
68
+ }
69
+ else if (child.type === Pagination) {
70
+ result.paginationContent.push(child);
71
+ }
72
+ else {
73
+ result.tableContent.push(child);
74
+ }
75
+ };
76
+ const sortChildren = (children) => {
77
+ const result = { tableContent: [], footerContent: [], paginationContent: [] };
78
+ Children.forEach(children, (child) => {
79
+ categorizeChild(child, result);
80
+ });
81
+ return result;
82
+ };
83
+ // ──────────────────────────────────────────────
84
+ // Main Table component
85
+ // ──────────────────────────────────────────────
86
+ const TableComponent = forwardRef(({ type = 'horizontal', fixedHeader = false, maxHeight, hoverable = true, selectable = false, children, className, ...rest }, ref) => {
87
+ const tableClasses = classNames('ncua-table', className, {
88
+ 'ncua-table--horizontal': type === 'horizontal',
89
+ 'ncua-table--vertical': type === 'vertical',
90
+ 'ncua-table--fixed-header': fixedHeader,
91
+ 'ncua-table--hoverable': hoverable && type === 'horizontal',
92
+ 'ncua-table--selectable': selectable,
93
+ });
94
+ const { tableContent, footerContent, paginationContent } = sortChildren(children);
95
+ const scrollStyle = fixedHeader && maxHeight
96
+ ? { maxHeight: typeof maxHeight === 'number' ? `${maxHeight}px` : maxHeight }
97
+ : undefined;
98
+ const tableElement = (_jsx("table", { className: "ncua-table__table", role: "table", children: tableContent }));
99
+ return (_jsxs("div", { ref: ref, className: "ncua-table-wrapper", children: [_jsxs("div", { className: tableClasses, ...rest, children: [fixedHeader && maxHeight ? (_jsx("div", { className: "ncua-table__scroll-container", style: scrollStyle, children: tableElement })) : (tableElement), footerContent] }), paginationContent] }));
100
+ });
101
+ TableComponent.displayName = 'Table';
102
+ // ──────────────────────────────────────────────
103
+ // Compound export
104
+ // ──────────────────────────────────────────────
105
+ export const Table = Object.assign(TableComponent, {
106
+ Header,
107
+ Body,
108
+ Row,
109
+ HeaderCell,
110
+ Cell,
111
+ Footer,
112
+ Pagination,
113
+ ColGroup,
114
+ Empty,
115
+ });
@@ -0,0 +1 @@
1
+ export * from './Table';
@@ -0,0 +1 @@
1
+ export * from './Table';
@@ -0,0 +1,45 @@
1
+ import type { ComponentProps, ReactNode } from 'react';
2
+ export type TableType = 'horizontal' | 'vertical';
3
+ export type SortDirection = 'asc' | 'desc' | 'none';
4
+ export type RowStatus = 'warning' | 'error';
5
+ export type TableProps = Omit<ComponentProps<'div'>, 'ref'> & {
6
+ type?: TableType;
7
+ fixedHeader?: boolean;
8
+ maxHeight?: string | number;
9
+ hoverable?: boolean;
10
+ selectable?: boolean;
11
+ children: ReactNode;
12
+ };
13
+ export type TableHeaderProps = {
14
+ children: ReactNode;
15
+ className?: string;
16
+ };
17
+ export type TableBodyProps = {
18
+ children: ReactNode;
19
+ className?: string;
20
+ };
21
+ export type TableRowProps = Omit<ComponentProps<'tr'>, 'ref'> & {
22
+ selected?: boolean;
23
+ status?: RowStatus;
24
+ };
25
+ export type TableHeaderCellProps = Omit<ComponentProps<'th'>, 'ref'> & {
26
+ sortDirection?: SortDirection;
27
+ onSort?: () => void;
28
+ width?: string | number;
29
+ };
30
+ export type TableCellProps = Omit<ComponentProps<'td'>, 'ref'>;
31
+ export type TableFooterProps = {
32
+ children: ReactNode;
33
+ className?: string;
34
+ };
35
+ export type TablePaginationProps = {
36
+ children: ReactNode;
37
+ className?: string;
38
+ };
39
+ export type TableColGroupProps = {
40
+ widths: (string | number)[];
41
+ };
42
+ export type TableEmptyProps = {
43
+ colSpan: number;
44
+ children?: ReactNode;
45
+ };
@@ -0,0 +1 @@
1
+ export {};
@@ -1,48 +1,36 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
2
  import { XClose } from '@ncds/ui-admin-icon';
14
3
  import classNames from 'classnames';
15
4
  import { useCallback, useRef, useState } from 'react';
16
5
  import { COLOR } from '../../../constant/color';
17
6
  import { Dot } from '../dot';
18
- var MARGIN = 10;
19
- var DEFAULT_TOOLTIP_WIDTH = 200;
20
- var DEFAULT_TOOLTIP_HEIGHT = 60;
7
+ const MARGIN = 10;
8
+ const DEFAULT_TOOLTIP_WIDTH = 200;
9
+ const DEFAULT_TOOLTIP_HEIGHT = 60;
21
10
  // 위치 계산 로직
22
- var calculateOptimalPosition = function (triggerElement, tooltipElement) {
23
- var triggerRect = triggerElement.getBoundingClientRect();
24
- var tooltipRect = tooltipElement.getBoundingClientRect();
25
- var viewportWidth = window.innerWidth, viewportHeight = window.innerHeight;
26
- var tooltipWidth = tooltipRect.width || DEFAULT_TOOLTIP_WIDTH;
27
- var tooltipHeight = tooltipRect.height || DEFAULT_TOOLTIP_HEIGHT;
28
- var spaces = {
11
+ const calculateOptimalPosition = (triggerElement, tooltipElement) => {
12
+ const triggerRect = triggerElement.getBoundingClientRect();
13
+ const tooltipRect = tooltipElement.getBoundingClientRect();
14
+ const { innerWidth: viewportWidth, innerHeight: viewportHeight } = window;
15
+ const tooltipWidth = tooltipRect.width || DEFAULT_TOOLTIP_WIDTH;
16
+ const tooltipHeight = tooltipRect.height || DEFAULT_TOOLTIP_HEIGHT;
17
+ const spaces = {
29
18
  top: triggerRect.top,
30
19
  bottom: viewportHeight - triggerRect.bottom,
31
20
  left: triggerRect.left,
32
21
  right: viewportWidth - triggerRect.right,
33
22
  };
34
23
  // 위/아래 공간을 먼저 확인하고 우선순위 결정
35
- var hasTopSpace = spaces.top >= tooltipHeight + MARGIN;
24
+ const hasTopSpace = spaces.top >= tooltipHeight + MARGIN;
36
25
  // 위쪽 공간이 있으면 top 우선, 없으면 bottom 우선
37
- var positions = hasTopSpace
26
+ const positions = hasTopSpace
38
27
  ? ['top-right', 'top-left', 'bottom-right', 'bottom-left']
39
28
  : ['bottom-right', 'bottom-left', 'top-right', 'top-left'];
40
- for (var _i = 0, positions_1 = positions; _i < positions_1.length; _i++) {
41
- var position = positions_1[_i];
42
- var isTop = position.includes('top');
43
- var isRight = position.includes('right');
44
- var hasVerticalSpace = isTop ? spaces.top >= tooltipHeight + MARGIN : spaces.bottom >= tooltipHeight + MARGIN;
45
- var hasHorizontalSpace = isRight
29
+ for (const position of positions) {
30
+ const isTop = position.includes('top');
31
+ const isRight = position.includes('right');
32
+ const hasVerticalSpace = isTop ? spaces.top >= tooltipHeight + MARGIN : spaces.bottom >= tooltipHeight + MARGIN;
33
+ const hasHorizontalSpace = isRight
46
34
  ? spaces.right >= tooltipWidth + MARGIN // right 정렬: 툴팁이 오른쪽으로 펼쳐짐
47
35
  : spaces.left >= tooltipWidth + MARGIN; // left 정렬: 툴팁이 왼쪽으로 펼쳐짐
48
36
  if (hasVerticalSpace && hasHorizontalSpace) {
@@ -50,61 +38,59 @@ var calculateOptimalPosition = function (triggerElement, tooltipElement) {
50
38
  }
51
39
  }
52
40
  // 모든 조건이 맞지 않으면 공간이 더 많은 쪽으로
53
- var fallbackPosition = hasTopSpace ? 'top-right' : 'bottom-right';
41
+ const fallbackPosition = hasTopSpace ? 'top-right' : 'bottom-right';
54
42
  return fallbackPosition;
55
43
  };
56
- var Tag = function (_a) {
57
- var _b = _a.size, size = _b === void 0 ? 'sm' : _b, icon = _a.icon, text = _a.text, count = _a.count, close = _a.close, onButtonClick = _a.onButtonClick, _c = _a.maxLength, maxLength = _c === void 0 ? 20 : _c;
58
- var _d = useState(false), isTooltipVisible = _d[0], setIsTooltipVisible = _d[1];
59
- var _e = useState('top-right'), calculatedPosition = _e[0], setCalculatedPosition = _e[1];
60
- var tagRef = useRef(null);
61
- var tooltipRef = useRef(null);
62
- var iconSize = {
44
+ const Tag = ({ size = 'sm', icon, text, count, close, onButtonClick, maxLength = 20 }) => {
45
+ const [isTooltipVisible, setIsTooltipVisible] = useState(false);
46
+ const [calculatedPosition, setCalculatedPosition] = useState('top-right');
47
+ const tagRef = useRef(null);
48
+ const tooltipRef = useRef(null);
49
+ const iconSize = {
63
50
  sm: 14,
64
51
  md: 16,
65
52
  };
66
53
  // 텍스트 길이 체크 및 말줄임 처리
67
- var shouldTruncate = text.length > maxLength;
68
- var displayText = shouldTruncate ? "".concat(text.slice(0, maxLength - 2), "...") : text;
69
- var handleMouseEnter = useCallback(function () {
54
+ const shouldTruncate = text.length > maxLength;
55
+ const displayText = shouldTruncate ? `${text.slice(0, maxLength - 2)}...` : text;
56
+ const handleMouseEnter = useCallback(() => {
70
57
  if (shouldTruncate) {
71
58
  setIsTooltipVisible(true);
72
59
  // 간단한 위치 계산 - 기본값 사용
73
60
  if (tagRef.current && tooltipRef.current) {
74
- var optimalPosition = calculateOptimalPosition(tagRef.current, tooltipRef.current);
61
+ const optimalPosition = calculateOptimalPosition(tagRef.current, tooltipRef.current);
75
62
  setCalculatedPosition(optimalPosition);
76
63
  }
77
64
  else {
78
65
  // ref가 없으면 다음 렌더링 사이클에서 시도
79
- setTimeout(function () {
66
+ setTimeout(() => {
80
67
  if (tagRef.current) {
81
68
  // tooltipRef가 없어도 tagRef만으로 계산
82
- var dummyTooltipElement = document.createElement('div');
83
- dummyTooltipElement.style.width = "".concat(DEFAULT_TOOLTIP_WIDTH, "px");
84
- dummyTooltipElement.style.height = "".concat(DEFAULT_TOOLTIP_HEIGHT, "px");
85
- var optimalPosition = calculateOptimalPosition(tagRef.current, dummyTooltipElement);
69
+ const dummyTooltipElement = document.createElement('div');
70
+ dummyTooltipElement.style.width = `${DEFAULT_TOOLTIP_WIDTH}px`;
71
+ dummyTooltipElement.style.height = `${DEFAULT_TOOLTIP_HEIGHT}px`;
72
+ const optimalPosition = calculateOptimalPosition(tagRef.current, dummyTooltipElement);
86
73
  setCalculatedPosition(optimalPosition);
87
74
  }
88
75
  }, 0);
89
76
  }
90
77
  }
91
78
  }, [shouldTruncate]);
92
- var handleMouseLeave = useCallback(function () {
79
+ const handleMouseLeave = useCallback(() => {
93
80
  setIsTooltipVisible(false);
94
81
  }, []);
95
- var sideSlotRender = function (slot) {
96
- var _a;
82
+ const sideSlotRender = (slot) => {
97
83
  if (slot.type === 'icon') {
98
- var SlotIcon = slot.icon;
84
+ const SlotIcon = slot.icon;
99
85
  return _jsx(SlotIcon, { width: iconSize[size], height: iconSize[size], color: slot.color });
100
86
  }
101
87
  if (slot.type === 'dot') {
102
- return _jsx(Dot, { color: slot.color, size: (_a = slot.size) !== null && _a !== void 0 ? _a : 'sm' });
88
+ return _jsx(Dot, { color: slot.color, size: slot.size ?? 'sm' });
103
89
  }
104
90
  return slot.children;
105
91
  };
106
- return (_jsxs("span", __assign({ ref: tagRef, className: classNames('ncua-tag', "ncua-tag--".concat(size), {
92
+ return (_jsxs("span", { ref: tagRef, className: classNames('ncua-tag', `ncua-tag--${size}`, {
107
93
  'ncua-tag--truncated': shouldTruncate,
108
- }), onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave }, { children: [icon && sideSlotRender(icon), _jsx("span", __assign({ className: "ncua-tag__text" }, { children: displayText })), count && _jsx("span", __assign({ className: "ncua-tag__count" }, { children: count })), close && (_jsx("button", __assign({ type: "button", className: "ncua-tag__close", onClick: onButtonClick }, { children: _jsx(XClose, { color: COLOR.gray300, width: iconSize[size], height: iconSize[size] }) }))), shouldTruncate && isTooltipVisible && (_jsx("span", __assign({ ref: tooltipRef, className: classNames('ncua-tag__tooltip', "ncua-tag__tooltip--".concat(calculatedPosition)) }, { children: _jsx("span", __assign({ className: "ncua-tag__tooltip-content" }, { children: text })) })))] })));
94
+ }), onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, children: [icon && sideSlotRender(icon), _jsx("span", { className: "ncua-tag__text", children: displayText }), count && _jsx("span", { className: "ncua-tag__count", children: count }), close && (_jsx("button", { type: "button", className: "ncua-tag__close", onClick: onButtonClick, children: _jsx(XClose, { color: COLOR.gray300, width: iconSize[size], height: iconSize[size] }) })), shouldTruncate && isTooltipVisible && (_jsx("span", { ref: tooltipRef, className: classNames('ncua-tag__tooltip', `ncua-tag__tooltip--${calculatedPosition}`), children: _jsx("span", { className: "ncua-tag__tooltip-content", children: text }) }))] }));
109
95
  };
110
96
  export { Tag };
@@ -0,0 +1,34 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import classNames from 'classnames';
3
+ import { forwardRef, useEffect, useRef, useState } from 'react';
4
+ import { HintText } from '../shared/hintText/HintText';
5
+ import { Label } from '../shared/label/Label';
6
+ export const Textarea = forwardRef(({ className, size = 'xs', label, required, disabled, hintText, characterCount, destructive, ...props }, ref) => {
7
+ const textareaRef = useRef(null);
8
+ const [textCount, setTextCount] = useState(0);
9
+ const shouldShowHintArea = hintText || characterCount;
10
+ useEffect(() => {
11
+ if (textareaRef.current && characterCount) {
12
+ setTextCount(textareaRef.current.value.length);
13
+ const handleInput = () => {
14
+ setTextCount(textareaRef.current?.value.length ?? 0);
15
+ };
16
+ textareaRef.current.addEventListener('input', handleInput);
17
+ return () => {
18
+ textareaRef.current?.removeEventListener('input', handleInput);
19
+ };
20
+ }
21
+ }, [characterCount]);
22
+ return (_jsxs("div", { className: classNames('ncua-input', 'ncua-input--textarea', `ncua-input--textarea--${size}`, {
23
+ destructive: destructive,
24
+ 'is-disabled': disabled,
25
+ }, className), children: [label && (_jsx(Label, { htmlFor: props.id, isRequired: required, children: label })), _jsx("textarea", { ref: (node) => {
26
+ if (typeof ref === 'function') {
27
+ ref(node);
28
+ }
29
+ else if (ref) {
30
+ ref.current = node;
31
+ }
32
+ textareaRef.current = node;
33
+ }, className: "ncua-input__textarea", disabled: disabled, ...props }), shouldShowHintArea && (_jsxs("div", { className: "ncua-input__text-count-wrap", children: [hintText && (_jsx(HintText, { as: "div", destructive: destructive, children: hintText })), characterCount && (_jsx("div", { className: "ncua-input__text-count", children: _jsxs("span", { className: "ncua-input__text-count-text", children: [_jsx("span", { className: "ncua-input__text-count-text-count", children: textCount }), "/", props.maxLength ?? 0] }) }))] }))] }));
34
+ });
@@ -0,0 +1 @@
1
+ export * from './Textarea';
@@ -0,0 +1 @@
1
+ export * from './Textarea';
@@ -1,30 +1,7 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
- var __rest = (this && this.__rest) || function (s, e) {
13
- var t = {};
14
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
15
- t[p] = s[p];
16
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
17
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
18
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
19
- t[p[i]] = s[p[i]];
20
- }
21
- return t;
22
- };
23
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
24
2
  import classNames from 'classnames';
25
- export var Toggle = function (_a) {
26
- var _b = _a.size, size = _b === void 0 ? 'sm' : _b, _c = _a.text, text = _c === void 0 ? '' : _c, _d = _a.supportText, supportText = _d === void 0 ? '' : _d, _e = _a.disabled, disabled = _e === void 0 ? false : _e, onChange = _a.onChange, className = _a.className, props = __rest(_a, ["size", "text", "supportText", "disabled", "onChange", "className"]);
27
- return (_jsxs("label", __assign({ className: classNames('ncua-toggle', "ncua-toggle--".concat(size), {
3
+ export const Toggle = ({ size = 'sm', text = '', supportText = '', disabled = false, onChange, className, ...props }) => {
4
+ return (_jsxs("label", { className: classNames('ncua-toggle', `ncua-toggle--${size}`, {
28
5
  'ncua-toggle--disabled': disabled,
29
- }, className) }, { children: [_jsx("input", __assign({ type: "checkbox", className: "ncua-toggle__input", checked: props === null || props === void 0 ? void 0 : props.checked, disabled: disabled, onChange: onChange }, props)), _jsx("span", __assign({ className: "ncua-toggle__switch" }, { children: _jsx("span", { className: "ncua-toggle__slider" }) })), text && (_jsxs("span", __assign({ className: "ncua-toggle__text-wrapper" }, { children: [_jsx("span", __assign({ className: "ncua-toggle__text" }, { children: text })), supportText && _jsx("span", __assign({ className: "ncua-toggle__support-text" }, { children: supportText }))] })))] })));
6
+ }, className), children: [_jsx("input", { type: "checkbox", className: "ncua-toggle__input", checked: props?.checked, disabled: disabled, onChange: onChange, ...props }), _jsx("span", { className: "ncua-toggle__switch", children: _jsx("span", { className: "ncua-toggle__slider" }) }), text && (_jsxs("span", { className: "ncua-toggle__text-wrapper", children: [_jsx("span", { className: "ncua-toggle__text", children: text }), supportText && _jsx("span", { className: "ncua-toggle__support-text", children: supportText })] }))] }));
30
7
  };
@@ -1,63 +1,50 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
13
2
  import { AlertCircle, AlertCircleFill, HelpCircle, HelpCircleFill } from '@ncds/ui-admin-icon';
14
3
  import classNames from 'classnames';
15
4
  import { useCallback, useMemo, useRef, useState } from 'react';
16
5
  import { ButtonCloseX } from '../button/ButtonCloseX';
17
- var ICON_SIZE_SM = 14;
18
- var ICON_SIZE_DEFAULT = 16;
19
- var MARGIN = 10;
20
- var DEFAULT_TOOLTIP_WIDTH = 200;
21
- var DEFAULT_TOOLTIP_HEIGHT = 60;
22
- var POSITION_PRIORITY = ['bottom', 'top', 'right', 'left'];
6
+ const ICON_SIZE_SM = 14;
7
+ const ICON_SIZE_DEFAULT = 16;
8
+ const MARGIN = 10;
9
+ const DEFAULT_TOOLTIP_WIDTH = 200;
10
+ const DEFAULT_TOOLTIP_HEIGHT = 60;
11
+ const POSITION_PRIORITY = ['bottom', 'top', 'right', 'left'];
23
12
  // 수직 위치(top/bottom)일 때 수평 정렬 보정
24
- var resolveVerticalAlignment = function (position, triggerRect, tooltipWidth, viewportWidth) {
25
- var centerX = triggerRect.left + triggerRect.width / 2;
26
- var tooltipHalfWidth = tooltipWidth / 2;
13
+ const resolveVerticalAlignment = (position, triggerRect, tooltipWidth, viewportWidth) => {
14
+ const centerX = triggerRect.left + triggerRect.width / 2;
15
+ const tooltipHalfWidth = tooltipWidth / 2;
27
16
  if (centerX - tooltipHalfWidth < MARGIN) {
28
- return "".concat(position, "-left");
17
+ return `${position}-left`;
29
18
  }
30
19
  if (centerX + tooltipHalfWidth > viewportWidth - MARGIN) {
31
- return "".concat(position, "-right");
20
+ return `${position}-right`;
32
21
  }
33
22
  return position;
34
23
  };
35
24
  // 해당 위치에 툴팁을 배치할 충분한 공간이 있는지 확인
36
- var hasEnoughSpace = function (position, spaces, tooltipWidth, tooltipHeight) {
37
- var isVertical = position === 'bottom' || position === 'top';
38
- var requiredSpace = isVertical ? tooltipHeight : tooltipWidth;
25
+ const hasEnoughSpace = (position, spaces, tooltipWidth, tooltipHeight) => {
26
+ const isVertical = position === 'bottom' || position === 'top';
27
+ const requiredSpace = isVertical ? tooltipHeight : tooltipWidth;
39
28
  return spaces[position] >= requiredSpace + MARGIN;
40
29
  };
41
30
  // 위치 계산 position='auto' 일 때 사용
42
- var calculateOptimalPosition = function (triggerElement, tooltipElement, preferredPosition) {
43
- if (preferredPosition === void 0) { preferredPosition = 'bottom'; }
44
- var triggerRect = triggerElement.getBoundingClientRect();
45
- var tooltipRect = tooltipElement.getBoundingClientRect();
46
- var viewportWidth = window.innerWidth, viewportHeight = window.innerHeight;
47
- var spaces = {
31
+ const calculateOptimalPosition = (triggerElement, tooltipElement, preferredPosition = 'bottom') => {
32
+ const triggerRect = triggerElement.getBoundingClientRect();
33
+ const tooltipRect = tooltipElement.getBoundingClientRect();
34
+ const { innerWidth: viewportWidth, innerHeight: viewportHeight } = window;
35
+ const spaces = {
48
36
  top: triggerRect.top,
49
37
  bottom: viewportHeight - triggerRect.bottom,
50
38
  left: triggerRect.left,
51
39
  right: viewportWidth - triggerRect.right,
52
40
  };
53
- var tooltipWidth = tooltipRect.width || DEFAULT_TOOLTIP_WIDTH;
54
- var tooltipHeight = tooltipRect.height || DEFAULT_TOOLTIP_HEIGHT;
55
- for (var _i = 0, POSITION_PRIORITY_1 = POSITION_PRIORITY; _i < POSITION_PRIORITY_1.length; _i++) {
56
- var position = POSITION_PRIORITY_1[_i];
41
+ const tooltipWidth = tooltipRect.width || DEFAULT_TOOLTIP_WIDTH;
42
+ const tooltipHeight = tooltipRect.height || DEFAULT_TOOLTIP_HEIGHT;
43
+ for (const position of POSITION_PRIORITY) {
57
44
  if (!hasEnoughSpace(position, spaces, tooltipWidth, tooltipHeight)) {
58
45
  continue;
59
46
  }
60
- var isVertical = position === 'bottom' || position === 'top';
47
+ const isVertical = position === 'bottom' || position === 'top';
61
48
  if (isVertical) {
62
49
  return resolveVerticalAlignment(position, triggerRect, tooltipWidth, viewportWidth);
63
50
  }
@@ -65,16 +52,15 @@ var calculateOptimalPosition = function (triggerElement, tooltipElement, preferr
65
52
  }
66
53
  return preferredPosition;
67
54
  };
68
- export var Tooltip = function (_a) {
69
- var _b = _a.tooltipType, tooltipType = _b === void 0 ? 'black' : _b, _c = _a.iconType, iconType = _c === void 0 ? 'stroke' : _c, _d = _a.position, position = _d === void 0 ? 'auto' : _d, _e = _a.size, size = _e === void 0 ? 'sm' : _e, title = _a.title, content = _a.content, _f = _a.hideArrow, hideArrow = _f === void 0 ? false : _f, _g = _a.type, type = _g === void 0 ? 'short' : _g, _h = _a.iconColor, iconColor = _h === void 0 ? 'var(--gray-300)' : _h, _j = _a.iconStyle, iconStyle = _j === void 0 ? 'help-circle' : _j, className = _a.className;
70
- var iconSize = size === 'sm' ? ICON_SIZE_SM : ICON_SIZE_DEFAULT;
71
- var tooltipRef = useRef(null);
72
- var tooltipBgRef = useRef(null);
73
- var _k = useState(position === 'auto' ? 'bottom' : position), calculatedPosition = _k[0], setCalculatedPosition = _k[1];
74
- var _l = useState(false), isVisible = _l[0], setIsVisible = _l[1];
75
- var _m = useState(false), isManuallyClose = _m[0], setIsManuallyClose = _m[1];
76
- var _o = useState(false), isMeasuring = _o[0], setIsMeasuring = _o[1];
77
- var handleMouseEnter = useCallback(function () {
55
+ export const Tooltip = ({ tooltipType = 'white', iconType = 'stroke', position = 'auto', size = 'sm', title, content, hideArrow = false, type = 'short', iconColor = 'var(--gray-300)', iconStyle = 'help-circle', className, }) => {
56
+ const iconSize = size === 'sm' ? ICON_SIZE_SM : ICON_SIZE_DEFAULT;
57
+ const tooltipRef = useRef(null);
58
+ const tooltipBgRef = useRef(null);
59
+ const [calculatedPosition, setCalculatedPosition] = useState(position === 'auto' ? 'bottom' : position);
60
+ const [isVisible, setIsVisible] = useState(false);
61
+ const [isManuallyClose, setIsManuallyClose] = useState(false);
62
+ const [isMeasuring, setIsMeasuring] = useState(false);
63
+ const handleMouseEnter = useCallback(() => {
78
64
  if (isManuallyClose)
79
65
  return;
80
66
  setIsVisible(true);
@@ -82,41 +68,37 @@ export var Tooltip = function (_a) {
82
68
  // 크기 측정을 위해 임시로 measuring 클래스 추가
83
69
  setIsMeasuring(true);
84
70
  // 다음 렌더링 사이클에서 크기 측정
85
- setTimeout(function () {
71
+ setTimeout(() => {
86
72
  if (tooltipRef.current && tooltipBgRef.current) {
87
- var optimalPosition = calculateOptimalPosition(tooltipRef.current, tooltipBgRef.current, 'bottom');
73
+ const optimalPosition = calculateOptimalPosition(tooltipRef.current, tooltipBgRef.current, 'bottom');
88
74
  setCalculatedPosition(optimalPosition);
89
75
  setIsMeasuring(false);
90
76
  }
91
77
  }, 0);
92
78
  }
93
79
  }, [position, isManuallyClose]);
94
- var handleMouseLeave = useCallback(function () {
80
+ const handleMouseLeave = useCallback(() => {
95
81
  if (type === 'short') {
96
82
  setIsVisible(false);
97
83
  }
98
84
  setIsManuallyClose(false);
99
85
  }, [type]);
100
- var handleCloseClick = useCallback(function () {
86
+ const handleCloseClick = useCallback(() => {
101
87
  setIsVisible(false);
102
88
  setIsManuallyClose(true);
103
89
  }, []);
104
- var finalPosition = position === 'auto' ? calculatedPosition : position;
105
- var tooltipClassName = useMemo(function () {
106
- return classNames('ncua-tooltip', "ncua-tooltip--".concat(size), "ncua-tooltip--".concat(type), {
107
- 'ncua-tooltip--hidden-arrow': hideArrow,
108
- 'ncua-tooltip--stroke': iconType === 'stroke',
109
- 'ncua-tooltip--auto': position === 'auto',
110
- }, className);
111
- }, [size, type, hideArrow, iconType, position, className]);
112
- var tooltipBgClassName = useMemo(function () {
113
- return classNames('ncua-tooltip__bg', "ncua-tooltip__bg--".concat(tooltipType), "ncua-tooltip__bg--".concat(finalPosition), {
114
- 'ncua-tooltip__bg--visible': isVisible,
115
- 'ncua-tooltip__bg--measuring': isMeasuring,
116
- 'ncua-tooltip__bg--force-hidden': isManuallyClose,
117
- });
118
- }, [tooltipType, finalPosition, isVisible, isMeasuring, isManuallyClose]);
119
- return (_jsxs("span", __assign({ ref: tooltipRef, className: tooltipClassName, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave }, { children: [iconStyle === 'help-circle' &&
90
+ const finalPosition = position === 'auto' ? calculatedPosition : position;
91
+ const tooltipClassName = useMemo(() => classNames('ncua-tooltip', `ncua-tooltip--${size}`, `ncua-tooltip--${type}`, {
92
+ 'ncua-tooltip--hidden-arrow': hideArrow,
93
+ 'ncua-tooltip--stroke': iconType === 'stroke',
94
+ 'ncua-tooltip--auto': position === 'auto',
95
+ }, className), [size, type, hideArrow, iconType, position, className]);
96
+ const tooltipBgClassName = useMemo(() => classNames('ncua-tooltip__bg', `ncua-tooltip__bg--${tooltipType}`, `ncua-tooltip__bg--${finalPosition}`, {
97
+ 'ncua-tooltip__bg--visible': isVisible,
98
+ 'ncua-tooltip__bg--measuring': isMeasuring,
99
+ 'ncua-tooltip__bg--force-hidden': isManuallyClose,
100
+ }), [tooltipType, finalPosition, isVisible, isMeasuring, isManuallyClose]);
101
+ return (_jsxs("span", { ref: tooltipRef, className: tooltipClassName, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, children: [iconStyle === 'help-circle' &&
120
102
  (iconType === 'stroke' ? (_jsx(HelpCircle, { width: iconSize, height: iconSize, color: iconColor })) : (_jsx(HelpCircleFill, { width: iconSize, height: iconSize, color: iconColor }))), iconStyle === 'alert-circle' &&
121
- (iconType === 'stroke' ? (_jsx(AlertCircle, { width: iconSize, height: iconSize, color: iconColor })) : (_jsx(AlertCircleFill, { width: iconSize, height: iconSize, color: iconColor }))), _jsxs("span", __assign({ ref: tooltipBgRef, className: tooltipBgClassName }, { children: [title && _jsx("span", __assign({ className: "ncua-tooltip__title" }, { children: title })), content && _jsx("span", __assign({ className: "ncua-tooltip__content" }, { children: content })), type === 'long' && (_jsx(ButtonCloseX, { className: "ncua-tooltip__close-button", size: "xs", theme: tooltipType === 'white' ? 'dark' : 'light', onClick: handleCloseClick, "aria-label": "\uD234\uD301 \uB2EB\uAE30" }))] }))] })));
103
+ (iconType === 'stroke' ? (_jsx(AlertCircle, { width: iconSize, height: iconSize, color: iconColor })) : (_jsx(AlertCircleFill, { width: iconSize, height: iconSize, color: iconColor }))), _jsxs("span", { ref: tooltipBgRef, className: tooltipBgClassName, children: [title && _jsx("span", { className: "ncua-tooltip__title", children: title }), content && _jsx("span", { className: "ncua-tooltip__content", children: content }), type === 'long' && (_jsx(ButtonCloseX, { className: "ncua-tooltip__close-button", size: "xs", theme: tooltipType === 'white' ? 'dark' : 'light', onClick: handleCloseClick, "aria-label": "\uD234\uD301 \uB2EB\uAE30" }))] })] }));
122
104
  };
@@ -1,4 +1,4 @@
1
- import { type TabButtonProps } from './TabButton';
1
+ import { type TabButtonProps } from '../tab/TabButton';
2
2
  export type VerticalTabProps = {
3
3
  type?: 'button-primary' | 'button-white' | 'line-vertical';
4
4
  breakPoint?: 'mobile' | 'pc';
@@ -0,0 +1,20 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import classNames from 'classnames';
3
+ import { Select } from '../select/Select';
4
+ import { TabButton } from '../tab/TabButton';
5
+ export const VerticalTab = ({ type = 'button-primary', breakPoint = 'pc', activeTab, menus, onSelect, }) => {
6
+ const handleSelectChange = (e) => {
7
+ onSelect?.(e.target.value);
8
+ };
9
+ const optionItems = menus?.map((menu) => ({
10
+ id: menu.id || '',
11
+ label: menu.label || '',
12
+ })) || [];
13
+ if (breakPoint === 'mobile') {
14
+ return _jsx(Select, { value: activeTab, onChange: handleSelectChange, optionItems: optionItems, size: "md" });
15
+ }
16
+ return (_jsx("div", { className: classNames('ncua-vertical-tab', `ncua-vertical-tab--${type}`), children: menus?.map((menu) => {
17
+ const isActive = 'href' in menu && menu.href ? menu.href === activeTab : menu.id === activeTab;
18
+ return _jsx(TabButton, { ...menu, isActive: isActive, tabButtonType: type, size: "md" }, menu.id);
19
+ }) }));
20
+ };
@@ -0,0 +1 @@
1
+ export * from './VerticalTab';
@@ -0,0 +1 @@
1
+ export * from './VerticalTab';
@@ -1,6 +1,6 @@
1
- export var BREAKPOINT = {
1
+ export const BREAKPOINT = {
2
2
  mobile: '768px',
3
3
  };
4
- export var MEDIA_QUERY = {
5
- mobile: "(max-width: ".concat(BREAKPOINT.mobile, ")"),
4
+ export const MEDIA_QUERY = {
5
+ mobile: `(max-width: ${BREAKPOINT.mobile})`,
6
6
  };