@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,370 @@
1
+ import { TABLE_CLASS_NAMES } from './const/classNames';
2
+ const TABLE_DIMENSIONS = {
3
+ CHECKBOX_CELL_WIDTH: '56px',
4
+ HEADER_HEIGHT: 40,
5
+ ROW_MIN_HEIGHT: 48,
6
+ CHECKBOX_PADDING: '16px'
7
+ };
8
+ const SORT_SVG = {
9
+ none: `<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 6L8 2.5L11.5 6" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/><path d="M4.5 10L8 13.5L11.5 10" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>`,
10
+ asc: `<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 9.5L8 6L11.5 9.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>`,
11
+ desc: `<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.5 6.5L8 10L11.5 6.5" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>`
12
+ };
13
+ const ARIA_SORT_VALUES = {
14
+ asc: 'ascending',
15
+ desc: 'descending',
16
+ none: 'none'
17
+ };
18
+ export class Table {
19
+ constructor(options) {
20
+ this.theadElement = null;
21
+ this.sortState = new Map();
22
+ this.selectedIndices = new Set();
23
+ this.abortController = new AbortController();
24
+ this.options = {
25
+ type: 'horizontal',
26
+ hoverable: true,
27
+ selectable: false,
28
+ fixedHeader: false,
29
+ emptyText: '등록된 게시물이 없습니다.',
30
+ ...options
31
+ };
32
+ this.createElement();
33
+ }
34
+ createElement() {
35
+ this.createOuterElement();
36
+ this.createTableElement();
37
+ this.renderBody();
38
+ this.wrapWithScrollContainer();
39
+ }
40
+ createOuterElement() {
41
+ this.element = document.createElement('div');
42
+ this.updateOuterClasses();
43
+ }
44
+ createTableElement() {
45
+ this.tableElement = document.createElement('table');
46
+ this.tableElement.className = TABLE_CLASS_NAMES.tableElement;
47
+ this.tableElement.setAttribute('role', 'table');
48
+ if (this.options.columns) {
49
+ this.createColGroup();
50
+ if (this.options.type === 'horizontal') {
51
+ this.createHeader();
52
+ }
53
+ }
54
+ this.tbodyElement = document.createElement('tbody');
55
+ this.tbodyElement.className = TABLE_CLASS_NAMES.body;
56
+ this.tableElement.appendChild(this.tbodyElement);
57
+ }
58
+ wrapWithScrollContainer() {
59
+ if (this.options.fixedHeader && this.options.maxHeight) {
60
+ const scrollContainer = document.createElement('div');
61
+ scrollContainer.className = TABLE_CLASS_NAMES.scrollContainer;
62
+ scrollContainer.style.maxHeight = this.options.maxHeight;
63
+ scrollContainer.appendChild(this.tableElement);
64
+ this.element.appendChild(scrollContainer);
65
+ } else {
66
+ this.element.appendChild(this.tableElement);
67
+ }
68
+ }
69
+ updateOuterClasses() {
70
+ const classes = [TABLE_CLASS_NAMES.table];
71
+ if (this.options.type === 'horizontal') {
72
+ classes.push(TABLE_CLASS_NAMES.horizontal);
73
+ } else {
74
+ classes.push(TABLE_CLASS_NAMES.vertical);
75
+ }
76
+ if (this.options.hoverable && this.options.type === 'horizontal') {
77
+ classes.push(TABLE_CLASS_NAMES.hoverable);
78
+ }
79
+ if (this.options.fixedHeader) {
80
+ classes.push(TABLE_CLASS_NAMES.fixedHeader);
81
+ }
82
+ this.element.className = classes.join(' ');
83
+ }
84
+ createColGroup() {
85
+ const colgroup = document.createElement('colgroup');
86
+ if (this.options.selectable) {
87
+ const column = document.createElement('col');
88
+ column.style.width = TABLE_DIMENSIONS.CHECKBOX_CELL_WIDTH;
89
+ colgroup.appendChild(column);
90
+ }
91
+ for (const columnConfig of this.options.columns ?? []) {
92
+ const column = document.createElement('col');
93
+ if (columnConfig.width) {
94
+ column.style.width = columnConfig.width;
95
+ }
96
+ colgroup.appendChild(column);
97
+ }
98
+ this.tableElement.appendChild(colgroup);
99
+ }
100
+ createHeader() {
101
+ this.theadElement = document.createElement('thead');
102
+ this.theadElement.className = TABLE_CLASS_NAMES.header;
103
+ const tableRow = document.createElement('tr');
104
+ if (this.options.selectable) {
105
+ tableRow.appendChild(this.createHeaderCheckboxCell());
106
+ }
107
+ for (const column of this.options.columns ?? []) {
108
+ tableRow.appendChild(this.createHeaderDataCell(column));
109
+ }
110
+ this.theadElement.appendChild(tableRow);
111
+ this.tableElement.appendChild(this.theadElement);
112
+ }
113
+ createHeaderCheckboxCell() {
114
+ const headerCell = document.createElement('th');
115
+ headerCell.className = `${TABLE_CLASS_NAMES.checkboxCell} ${TABLE_CLASS_NAMES.checkboxCellHeader}`;
116
+ const wrapper = document.createElement('span');
117
+ wrapper.className = 'ncua-checkbox-input ncua-checkbox-input--sm';
118
+ const checkbox = document.createElement('input');
119
+ checkbox.type = 'checkbox';
120
+ checkbox.setAttribute('aria-label', '전체 선택');
121
+ checkbox.addEventListener('change', () => this.handleSelectAll(checkbox.checked), {
122
+ signal: this.abortController.signal
123
+ });
124
+ wrapper.appendChild(checkbox);
125
+ headerCell.appendChild(wrapper);
126
+ return headerCell;
127
+ }
128
+ createHeaderDataCell(column) {
129
+ const headerCell = document.createElement('th');
130
+ headerCell.className = TABLE_CLASS_NAMES.headerCell;
131
+ if (column.width) {
132
+ headerCell.style.width = column.width;
133
+ }
134
+ const innerContainer = document.createElement('span');
135
+ innerContainer.className = 'ncua-table__header-cell-inner';
136
+ const textSpan = document.createElement('span');
137
+ textSpan.className = 'ncua-table__header-cell-text';
138
+ textSpan.textContent = column.label;
139
+ innerContainer.appendChild(textSpan);
140
+ if (column.sortable) {
141
+ headerCell.classList.add(TABLE_CLASS_NAMES.headerCellSortable);
142
+ this.sortState.set(column.key, 'none');
143
+ const sortIcon = document.createElement('span');
144
+ sortIcon.className = TABLE_CLASS_NAMES.sortIcon;
145
+ sortIcon.innerHTML = SORT_SVG.none;
146
+ innerContainer.appendChild(sortIcon);
147
+ headerCell.addEventListener('click', () => this.handleSort(column.key, headerCell), {
148
+ signal: this.abortController.signal
149
+ });
150
+ }
151
+ headerCell.appendChild(innerContainer);
152
+ return headerCell;
153
+ }
154
+ renderBody() {
155
+ this.tbodyElement.innerHTML = '';
156
+ const data = this.options.data || [];
157
+ if (data.length === 0) {
158
+ this.renderEmptyState();
159
+ return;
160
+ }
161
+ if (this.options.type === 'vertical') {
162
+ this.renderVerticalBody(data);
163
+ return;
164
+ }
165
+ this.renderHorizontalBody(data);
166
+ }
167
+ renderEmptyState() {
168
+ const columnCount = (this.options.columns?.length || 1) + (this.options.selectable ? 1 : 0);
169
+ const tableRow = document.createElement('tr');
170
+ const tableCell = document.createElement('td');
171
+ tableCell.colSpan = columnCount;
172
+ tableCell.className = TABLE_CLASS_NAMES.empty;
173
+ tableCell.setAttribute('role', 'status');
174
+ tableCell.setAttribute('aria-live', 'polite');
175
+ tableCell.textContent = this.options.emptyText;
176
+ tableRow.appendChild(tableCell);
177
+ this.tbodyElement.appendChild(tableRow);
178
+ }
179
+ renderHorizontalBody(data) {
180
+ for (let rowIndex = 0; rowIndex < data.length; rowIndex++) {
181
+ const tableRow = this.createHorizontalRow(data[rowIndex], rowIndex);
182
+ this.tbodyElement.appendChild(tableRow);
183
+ }
184
+ }
185
+ createRowCheckboxCell(rowIndex) {
186
+ const tableCell = document.createElement('td');
187
+ tableCell.className = `${TABLE_CLASS_NAMES.checkboxCell} ${TABLE_CLASS_NAMES.checkboxCellBody}`;
188
+ const wrapper = document.createElement('span');
189
+ wrapper.className = 'ncua-checkbox-input ncua-checkbox-input--sm';
190
+ const checkbox = document.createElement('input');
191
+ checkbox.type = 'checkbox';
192
+ checkbox.checked = this.selectedIndices.has(rowIndex);
193
+ checkbox.setAttribute('aria-label', '행 선택');
194
+ checkbox.addEventListener('change', () => this.handleRowSelect(rowIndex, checkbox.checked), {
195
+ signal: this.abortController.signal
196
+ });
197
+ if (this.selectedIndices.has(rowIndex)) {
198
+ wrapper.classList.add('has-checked');
199
+ }
200
+ wrapper.appendChild(checkbox);
201
+ tableCell.appendChild(wrapper);
202
+ return tableCell;
203
+ }
204
+ createHorizontalRow(row, rowIndex) {
205
+ const tableRow = document.createElement('tr');
206
+ tableRow.className = TABLE_CLASS_NAMES.row;
207
+ if (this.selectedIndices.has(rowIndex)) {
208
+ tableRow.classList.add(TABLE_CLASS_NAMES.rowSelected);
209
+ }
210
+ if (this.options.selectable) {
211
+ tableRow.appendChild(this.createRowCheckboxCell(rowIndex));
212
+ }
213
+ for (const column of this.options.columns ?? []) {
214
+ const tableCell = document.createElement('td');
215
+ tableCell.className = TABLE_CLASS_NAMES.cell;
216
+ if (column.align) {
217
+ tableCell.style.textAlign = column.align;
218
+ }
219
+ if (column.render) {
220
+ const rendered = column.render(row[column.key], row, rowIndex);
221
+ if (typeof rendered === 'string') {
222
+ tableCell.textContent = rendered;
223
+ } else {
224
+ tableCell.appendChild(rendered);
225
+ }
226
+ } else {
227
+ const value = row[column.key];
228
+ tableCell.textContent = value != null ? String(value) : '-';
229
+ }
230
+ tableRow.appendChild(tableCell);
231
+ }
232
+ return tableRow;
233
+ }
234
+ renderVerticalBody(data) {
235
+ const row = data[0] || {};
236
+ for (const column of this.options.columns ?? []) {
237
+ const tableRow = this.createVerticalRow(column, row);
238
+ this.tbodyElement.appendChild(tableRow);
239
+ }
240
+ }
241
+ createVerticalRow(column, row) {
242
+ const tableRow = document.createElement('tr');
243
+ tableRow.className = TABLE_CLASS_NAMES.row;
244
+ const labelCell = document.createElement('td');
245
+ labelCell.className = TABLE_CLASS_NAMES.cell;
246
+ labelCell.textContent = column.label;
247
+ tableRow.appendChild(labelCell);
248
+ const valueCell = this.createVerticalValueCell(column, row);
249
+ tableRow.appendChild(valueCell);
250
+ return tableRow;
251
+ }
252
+ createVerticalValueCell(column, row) {
253
+ const valueCell = document.createElement('td');
254
+ valueCell.className = TABLE_CLASS_NAMES.cell;
255
+ if (column.render) {
256
+ const rendered = column.render(row[column.key], row, 0);
257
+ if (typeof rendered === 'string') {
258
+ valueCell.textContent = rendered;
259
+ } else {
260
+ valueCell.appendChild(rendered);
261
+ }
262
+ } else {
263
+ const value = row[column.key];
264
+ valueCell.textContent = value != null ? String(value) : '-';
265
+ }
266
+ return valueCell;
267
+ }
268
+ handleSort(key, thElement) {
269
+ const nextDirection = this.getNextSortDirection(key);
270
+ for (const [sortKey] of this.sortState) {
271
+ this.sortState.set(sortKey, 'none');
272
+ }
273
+ this.sortState.set(key, nextDirection);
274
+ this.updateSortIcons(thElement, nextDirection);
275
+ thElement.setAttribute('aria-sort', this.getAriaSortValue(nextDirection));
276
+ this.options.onSort?.(key, nextDirection);
277
+ }
278
+ getNextSortDirection(key) {
279
+ const currentDirection = this.sortState.get(key) || 'none';
280
+ if (currentDirection === 'none') {
281
+ return 'asc';
282
+ }
283
+ if (currentDirection === 'asc') {
284
+ return 'desc';
285
+ }
286
+ return 'none';
287
+ }
288
+ updateSortIcons(thElement, direction) {
289
+ const allHeaders = this.theadElement?.querySelectorAll(`.${TABLE_CLASS_NAMES.headerCell}`);
290
+ allHeaders?.forEach(header => {
291
+ const icon = header.querySelector(`.${TABLE_CLASS_NAMES.sortIcon}`);
292
+ if (icon) {
293
+ icon.innerHTML = SORT_SVG.none;
294
+ }
295
+ });
296
+ const sortIcon = thElement.querySelector(`.${TABLE_CLASS_NAMES.sortIcon}`);
297
+ if (sortIcon) {
298
+ sortIcon.innerHTML = SORT_SVG[direction];
299
+ }
300
+ }
301
+ getAriaSortValue(direction) {
302
+ return ARIA_SORT_VALUES[direction];
303
+ }
304
+ handleSelectAll(checked) {
305
+ this.selectedIndices.clear();
306
+ if (checked && this.options.data) {
307
+ for (let index = 0; index < this.options.data.length; index++) {
308
+ this.selectedIndices.add(index);
309
+ }
310
+ }
311
+ this.updateRowSelectionStyles();
312
+ this.updateHeaderCheckbox();
313
+ this.options.onSelect?.([...this.selectedIndices]);
314
+ }
315
+ handleRowSelect(index, checked) {
316
+ if (checked) {
317
+ this.selectedIndices.add(index);
318
+ } else {
319
+ this.selectedIndices.delete(index);
320
+ }
321
+ this.updateRowSelectionStyles();
322
+ this.updateHeaderCheckbox();
323
+ this.options.onSelect?.([...this.selectedIndices]);
324
+ }
325
+ updateRowSelectionStyles() {
326
+ const rows = this.tbodyElement.querySelectorAll(`.${TABLE_CLASS_NAMES.row}`);
327
+ rows.forEach((row, index) => {
328
+ const isSelected = this.selectedIndices.has(index);
329
+ row.classList.toggle(TABLE_CLASS_NAMES.rowSelected, isSelected);
330
+ const checkbox = row.querySelector('input[type="checkbox"]');
331
+ if (checkbox) {
332
+ checkbox.checked = isSelected;
333
+ }
334
+ const wrapper = row.querySelector('.ncua-checkbox-input');
335
+ if (wrapper) {
336
+ wrapper.classList.toggle('has-checked', isSelected);
337
+ }
338
+ });
339
+ }
340
+ updateHeaderCheckbox() {
341
+ const headerWrapper = this.theadElement?.querySelector('.ncua-checkbox-input');
342
+ const headerCheckbox = headerWrapper?.querySelector('input[type="checkbox"]');
343
+ if (!headerWrapper || !headerCheckbox || !this.options.data) return;
344
+ const total = this.options.data.length;
345
+ const selectedCount = this.selectedIndices.size;
346
+ const isAllSelected = selectedCount === total && total > 0;
347
+ const isIndeterminate = selectedCount > 0 && selectedCount < total;
348
+ headerCheckbox.checked = isAllSelected;
349
+ headerCheckbox.indeterminate = isIndeterminate;
350
+ headerWrapper.classList.toggle('has-checked', isAllSelected);
351
+ headerWrapper.classList.toggle('has-indeterminate', isIndeterminate);
352
+ }
353
+ // ──────── Public API ────────
354
+ getElement() {
355
+ return this.element;
356
+ }
357
+ setData(data) {
358
+ this.options.data = data;
359
+ this.selectedIndices.clear();
360
+ this.renderBody();
361
+ this.updateHeaderCheckbox();
362
+ }
363
+ getSelectedIndices() {
364
+ return [...this.selectedIndices];
365
+ }
366
+ destroy() {
367
+ this.abortController.abort();
368
+ this.element.remove();
369
+ }
370
+ }
@@ -0,0 +1,27 @@
1
+ export const TABLE_CLASS_NAMES = {
2
+ table: 'ncua-table',
3
+ horizontal: 'ncua-table--horizontal',
4
+ vertical: 'ncua-table--vertical',
5
+ hoverable: 'ncua-table--hoverable',
6
+ fixedHeader: 'ncua-table--fixed-header',
7
+ scrollContainer: 'ncua-table__scroll-container',
8
+ tableElement: 'ncua-table__table',
9
+ header: 'ncua-table__header',
10
+ headerCell: 'ncua-table__header-cell',
11
+ headerCellSortable: 'ncua-table__header-cell--sortable',
12
+ sortIcon: 'ncua-table__sort-icon',
13
+ body: 'ncua-table__body',
14
+ row: 'ncua-table__row',
15
+ rowSelected: 'ncua-table__row--selected',
16
+ rowWarning: 'ncua-table__row--warning',
17
+ rowError: 'ncua-table__row--error',
18
+ cell: 'ncua-table__cell',
19
+ checkboxCell: 'ncua-table__checkbox-cell',
20
+ checkboxCellHeader: 'ncua-table__checkbox-cell--header',
21
+ checkboxCellBody: 'ncua-table__checkbox-cell--body',
22
+ footer: 'ncua-table__footer',
23
+ footerRow: 'ncua-table__footer-row',
24
+ pagination: 'ncua-table__pagination',
25
+ empty: 'ncua-table__empty',
26
+ required: 'ncua-table__required'
27
+ };
@@ -0,0 +1,2 @@
1
+ export * from './classNames';
2
+ export * from './types';
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,8 @@
1
+ import { Table } from './Table';
2
+ if (typeof window !== 'undefined') {
3
+ window.ncua = window.ncua || {};
4
+ window.ncua.Table = Table;
5
+ }
6
+ export * from './const/classNames';
7
+ export * from './const/types';
8
+ export { Table } from './Table';