@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
@@ -1,59 +1,3 @@
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 __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
- return new (P || (P = Promise))(function (resolve, reject) {
15
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
16
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
17
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
18
- step((generator = generator.apply(thisArg, _arguments || [])).next());
19
- });
20
- };
21
- var __generator = (this && this.__generator) || function (thisArg, body) {
22
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
23
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
24
- function verb(n) { return function (v) { return step([n, v]); }; }
25
- function step(op) {
26
- if (f) throw new TypeError("Generator is already executing.");
27
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
28
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
29
- if (y = 0, t) op = [op[0] & 2, t.value];
30
- switch (op[0]) {
31
- case 0: case 1: t = op; break;
32
- case 4: _.label++; return { value: op[1], done: false };
33
- case 5: _.label++; y = op[1]; op = [0]; continue;
34
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
35
- default:
36
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
37
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
38
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
39
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
40
- if (t[2]) _.ops.pop();
41
- _.trys.pop(); continue;
42
- }
43
- op = body.call(thisArg, _);
44
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
45
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
- }
47
- };
48
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
49
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
50
- if (ar || !(i in from)) {
51
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
52
- ar[i] = from[i];
53
- }
54
- }
55
- return to.concat(ar || Array.prototype.slice.call(from));
56
- };
57
1
  import { debounce } from '../debounce';
58
2
  import { DOMRenderer } from './domRenderer';
59
3
  import { DropdownModel } from './dropdownModel';
@@ -62,41 +6,49 @@ import { UnifiedBoxController } from './unifiedBoxController';
62
6
  * 통합된 UnifiedBox 클래스
63
7
  * SelectBox와 ComboBox의 기능을 모두 포함
64
8
  */
65
- var UnifiedBoxManager = /** @class */ (function () {
66
- function UnifiedBoxManager(element, config) {
67
- if (config === void 0) { config = {}; }
68
- var _this = this;
69
- var _a;
9
+ export class UnifiedBoxManager {
10
+ constructor(element, config = {}) {
70
11
  this.lastSearchValue = ''; // 이전 검색어 추적 (API 모드에서 옵션 교체를 위해)
71
12
  this.hasInitialOptions = false; // 초기 옵션이 있는지 여부 (select 태그 등)
72
13
  this.element = element;
73
14
  this.isComboBox = config.type === 'combobox';
74
15
  this.baseClass = this.isComboBox ? 'ncua-combobox' : 'ncua-selectbox';
75
- this.config = __assign(__assign({ options: [], placeholder: this.isComboBox ? '검색하세요' : '선택하세요', maxHeight: 275, disabled: false, size: 'md', multiple: false, showFooterButtons: false, required: false, type: 'selectbox' }, config), { searchDebounceMs: (_a = config.searchDebounceMs) !== null && _a !== void 0 ? _a : 500 });
76
- this.debouncedSearch = debounce(function (value, isApiMode) {
77
- var _a, _b;
16
+ this.config = {
17
+ options: [],
18
+ placeholder: this.isComboBox ? '검색하세요' : '선택하세요',
19
+ maxHeight: 275,
20
+ disabled: false,
21
+ size: 'md',
22
+ multiple: false,
23
+ showFooterButtons: false,
24
+ required: false,
25
+ type: 'selectbox',
26
+ ...config,
27
+ searchDebounceMs: config.searchDebounceMs ?? 500,
28
+ };
29
+ this.debouncedSearch = debounce((value, isApiMode) => {
78
30
  if (isApiMode) {
79
- _this.model.updateSearchValue(value);
31
+ this.model.updateSearchValue(value);
80
32
  }
81
33
  else {
82
- _this.model.updateSearchAndFilter(value);
34
+ this.model.updateSearchAndFilter(value);
83
35
  }
84
- (_b = (_a = _this.config).onSearch) === null || _b === void 0 ? void 0 : _b.call(_a, value);
36
+ this.config.onSearch?.(value);
85
37
  if (value.trim()) {
86
- _this.controller.open();
38
+ this.controller.open();
87
39
  }
88
- else if (!_this.model.getState().showAllItems) {
89
- _this.controller.close();
40
+ else if (!this.model.getState().showAllItems) {
41
+ this.controller.close();
90
42
  }
91
43
  }, this.config.searchDebounceMs);
92
44
  this.initialize();
93
45
  }
94
- UnifiedBoxManager.prototype.initialize = function () {
46
+ initialize() {
95
47
  this.element.innerHTML = '';
96
48
  this.setupElementClasses();
97
49
  // 초기 옵션이 있는지 확인 (select 태그 등에서 파싱된 옵션이 있는 경우)
98
50
  this.hasInitialOptions = (this.config.options && this.config.options.length > 0) || false;
99
- var filterStrategy = this.isComboBox ? DropdownModel.comboBoxFilterStrategy : DropdownModel.defaultFilterStrategy;
51
+ const filterStrategy = this.isComboBox ? DropdownModel.comboBoxFilterStrategy : DropdownModel.defaultFilterStrategy;
100
52
  this.model = new DropdownModel(this.config.options || [], this.config.multiple || false, filterStrategy);
101
53
  this.renderer = new DOMRenderer();
102
54
  this.createUI();
@@ -104,28 +56,27 @@ var UnifiedBoxManager = /** @class */ (function () {
104
56
  if (this.config.value) {
105
57
  this.model.setValue(this.config.value);
106
58
  }
107
- };
108
- UnifiedBoxManager.prototype.setupElementClasses = function () {
109
- this.element.className = "".concat(this.baseClass, " ").concat(this.baseClass, "--").concat(this.config.size);
59
+ }
60
+ setupElementClasses() {
61
+ this.element.className = `${this.baseClass} ${this.baseClass}--${this.config.size}`;
110
62
  if (this.config.disabled) {
111
- this.element.classList.add("".concat(this.baseClass, "--disabled"));
63
+ this.element.classList.add(`${this.baseClass}--disabled`);
112
64
  }
113
65
  if (this.config.multiple) {
114
- this.element.classList.add("".concat(this.baseClass, "--multiple"));
66
+ this.element.classList.add(`${this.baseClass}--multiple`);
115
67
  }
116
- };
117
- UnifiedBoxManager.prototype.createUI = function () {
68
+ }
69
+ createUI() {
118
70
  if (this.isComboBox) {
119
71
  this.createComboBoxUI();
120
72
  }
121
73
  else {
122
74
  this.createSelectBoxUI();
123
75
  }
124
- };
125
- UnifiedBoxManager.prototype.createComboBoxUI = function () {
126
- var _this = this;
76
+ }
77
+ createComboBoxUI() {
127
78
  // 컨텐츠 컨테이너
128
- var content = DOMRenderer.createElementWithClass('div', 'ncua-combobox__content');
79
+ const content = DOMRenderer.createElementWithClass('div', 'ncua-combobox__content');
129
80
  this.element.appendChild(content);
130
81
  // 입력 필드 생성
131
82
  this.inputField = this.renderer.createInputField({
@@ -133,25 +84,25 @@ var UnifiedBoxManager = /** @class */ (function () {
133
84
  disabled: this.config.disabled || false,
134
85
  size: this.config.size || 'md',
135
86
  showSearchIcon: true,
136
- onInput: function (value) { return _this.handleInput(value); },
137
- onClick: function () { return _this.handleInputClick(); },
138
- onClear: function () { return _this.handleClearInput(); },
139
- onShowAll: function () { return _this.handleShowAll(); },
87
+ onInput: (value) => this.handleInput(value),
88
+ onClick: () => this.handleInputClick(),
89
+ onClear: () => this.handleClearInput(),
90
+ onShowAll: () => this.handleShowAll(),
140
91
  });
141
92
  content.appendChild(this.inputField.container);
142
93
  this.triggerElement = this.inputField.input;
143
94
  // 드롭다운 생성
144
95
  this.createDropdown(content);
145
- };
146
- UnifiedBoxManager.prototype.createSelectBoxUI = function () {
96
+ }
97
+ createSelectBoxUI() {
147
98
  // 트리거 생성
148
- var trigger = DOMRenderer.createElementWithClass('div', 'ncua-selectbox__content');
99
+ const trigger = DOMRenderer.createElementWithClass('div', 'ncua-selectbox__content');
149
100
  trigger.setAttribute('tabindex', this.config.disabled ? '-1' : '0');
150
101
  trigger.setAttribute('role', 'combobox');
151
102
  trigger.setAttribute('aria-expanded', 'false');
152
103
  trigger.setAttribute('aria-haspopup', 'listbox');
153
- var valueSpan = DOMRenderer.createElementWithClass('span', 'ncua-selectbox__value', this.config.placeholder);
154
- var arrow = DOMRenderer.createSvgIcon('chevron-down', this.config.size === 'xs' ? 14 : 16);
104
+ const valueSpan = DOMRenderer.createElementWithClass('span', 'ncua-selectbox__value', this.config.placeholder);
105
+ const arrow = DOMRenderer.createSvgIcon('chevron-down', this.config.size === 'xs' ? 14 : 16);
155
106
  arrow.classList.add('ncua-selectbox__arrow');
156
107
  trigger.appendChild(valueSpan);
157
108
  trigger.appendChild(arrow);
@@ -160,13 +111,12 @@ var UnifiedBoxManager = /** @class */ (function () {
160
111
  this.arrowElement = arrow;
161
112
  // 드롭다운 생성
162
113
  this.createDropdown(this.element);
163
- };
164
- UnifiedBoxManager.prototype.createDropdown = function (parent) {
165
- var _this = this;
166
- var dropdownStructure = this.renderer.createDropdownStructure({
114
+ }
115
+ createDropdown(parent) {
116
+ const dropdownStructure = this.renderer.createDropdownStructure({
167
117
  maxHeight: this.config.maxHeight || 275,
168
118
  size: this.config.size || 'md',
169
- listboxId: "selectbox-".concat(Date.now()),
119
+ listboxId: `selectbox-${Date.now()}`,
170
120
  noResultsText: '일치하는 결과가 없습니다.',
171
121
  });
172
122
  this.dropdownElement = dropdownStructure.dropdown;
@@ -185,19 +135,18 @@ var UnifiedBoxManager = /** @class */ (function () {
185
135
  multiple: this.config.multiple,
186
136
  showFooterButtons: this.config.showFooterButtons,
187
137
  selectAllButtonText: this.model.getSelectAllButtonText(),
188
- onSelectAll: function () { return _this.handleSelectAll(); },
189
- onEdit: this.config.onEdit ? function () { var _a, _b; return (_b = (_a = _this.config).onEdit) === null || _b === void 0 ? void 0 : _b.call(_a); } : undefined,
190
- onComplete: function () { return _this.handleComplete(); },
138
+ onSelectAll: () => this.handleSelectAll(),
139
+ onEdit: this.config.onEdit ? () => this.config.onEdit?.() : undefined,
140
+ onComplete: () => this.handleComplete(),
191
141
  });
192
142
  this.dropdownElement.appendChild(this.footerElement);
193
143
  }
194
- };
195
- UnifiedBoxManager.prototype.setupController = function () {
196
- var _this = this;
144
+ }
145
+ setupController() {
197
146
  if (!this.triggerElement || !this.dropdownElement) {
198
147
  throw new Error('Trigger or dropdown element not found');
199
148
  }
200
- var controllerConfig = {
149
+ const controllerConfig = {
201
150
  triggerElement: this.triggerElement,
202
151
  dropdownElement: this.dropdownElement,
203
152
  model: this.model,
@@ -205,48 +154,46 @@ var UnifiedBoxManager = /** @class */ (function () {
205
154
  renderConfig: {
206
155
  maxHeight: this.config.maxHeight || 275,
207
156
  size: this.config.size || 'md',
208
- listboxId: "selectbox-".concat(Date.now()),
157
+ listboxId: `selectbox-${Date.now()}`,
209
158
  noResultsText: '일치하는 결과가 없습니다.',
210
159
  },
211
- onOpen: function () {
212
- _this.element.classList.add("".concat(_this.baseClass, "--open"));
213
- if (_this.triggerElement) {
214
- _this.triggerElement.setAttribute('aria-expanded', 'true');
160
+ onOpen: () => {
161
+ this.element.classList.add(`${this.baseClass}--open`);
162
+ if (this.triggerElement) {
163
+ this.triggerElement.setAttribute('aria-expanded', 'true');
215
164
  }
216
165
  // 화살표 아이콘 회전 (selectbox 타입일 때만)
217
- if (!_this.isComboBox && _this.arrowElement) {
218
- _this.arrowElement.classList.add('ncua-selectbox__arrow--up');
166
+ if (!this.isComboBox && this.arrowElement) {
167
+ this.arrowElement.classList.add('ncua-selectbox__arrow--up');
219
168
  }
220
169
  },
221
- onClose: function () {
222
- _this.element.classList.remove("".concat(_this.baseClass, "--open"));
223
- if (_this.triggerElement) {
224
- _this.triggerElement.setAttribute('aria-expanded', 'false');
170
+ onClose: () => {
171
+ this.element.classList.remove(`${this.baseClass}--open`);
172
+ if (this.triggerElement) {
173
+ this.triggerElement.setAttribute('aria-expanded', 'false');
225
174
  }
226
175
  // 화살표 아이콘 원래대로 (selectbox 타입일 때만)
227
- if (!_this.isComboBox && _this.arrowElement) {
228
- _this.arrowElement.classList.remove('ncua-selectbox__arrow--up');
176
+ if (!this.isComboBox && this.arrowElement) {
177
+ this.arrowElement.classList.remove('ncua-selectbox__arrow--up');
229
178
  }
230
179
  },
231
- onSelectionChange: function (selectedValues) {
232
- _this.handleSelectionChange(selectedValues);
180
+ onSelectionChange: (selectedValues) => {
181
+ this.handleSelectionChange(selectedValues);
233
182
  },
234
- onSearch: function (searchValue) {
235
- var _a, _b;
236
- (_b = (_a = _this.config).onSearch) === null || _b === void 0 ? void 0 : _b.call(_a, searchValue);
183
+ onSearch: (searchValue) => {
184
+ this.config.onSearch?.(searchValue);
237
185
  },
238
186
  onScrollBottom: this.config.onScrollBottom,
239
187
  disabled: this.config.disabled || false,
240
- canToggle: function () { return _this.canToggleDropdown(); },
188
+ canToggle: () => this.canToggleDropdown(),
241
189
  type: this.config.type, // 타입 정보 전달
242
190
  };
243
191
  this.controller = new UnifiedBoxController(controllerConfig);
244
- };
192
+ }
245
193
  // 이벤트 핸들러들
246
- UnifiedBoxManager.prototype.handleInput = function (value) {
247
- var _a, _b;
194
+ handleInput(value) {
248
195
  this.debouncedSearch.cancel();
249
- var isApiMode = this.isComboBox && !this.hasInitialOptions;
196
+ const isApiMode = this.isComboBox && !this.hasInitialOptions;
250
197
  // API 모드에서는 검색어 변경 추적
251
198
  if (isApiMode && this.lastSearchValue !== value) {
252
199
  this.lastSearchValue = value;
@@ -258,29 +205,28 @@ var UnifiedBoxManager = /** @class */ (function () {
258
205
  else {
259
206
  // 디바운싱이 0이면 즉시 실행
260
207
  this.model.updateSearchAndFilter(value);
261
- var hasOptions = this.model.getState().options.length > 0 || this.model.getState().filteredOptions.length > 0;
208
+ const hasOptions = this.model.getState().options.length > 0 || this.model.getState().filteredOptions.length > 0;
262
209
  if (value.trim() || hasOptions) {
263
210
  this.controller.open();
264
211
  }
265
212
  else if (!this.model.getState().showAllItems) {
266
213
  this.controller.close();
267
214
  }
268
- (_b = (_a = this.config).onSearch) === null || _b === void 0 ? void 0 : _b.call(_a, value);
215
+ this.config.onSearch?.(value);
269
216
  }
270
- };
271
- UnifiedBoxManager.prototype.handleInputClick = function () {
272
- var _a, _b;
217
+ }
218
+ handleInputClick() {
273
219
  if (!this.config.disabled) {
274
- (_a = this.inputField) === null || _a === void 0 ? void 0 : _a.focus();
220
+ this.inputField?.focus();
275
221
  if (this.isComboBox) {
276
- var currentInputValue = ((_b = this.inputField) === null || _b === void 0 ? void 0 : _b.input.value) || '';
222
+ const currentInputValue = this.inputField?.input.value || '';
277
223
  if (currentInputValue.trim().length > 0 || this.model.getState().showAllItems) {
278
224
  this.controller.open();
279
225
  }
280
226
  }
281
227
  }
282
- };
283
- UnifiedBoxManager.prototype.handleClearInput = function () {
228
+ }
229
+ handleClearInput() {
284
230
  this.debouncedSearch.cancel();
285
231
  // input 필드 텍스트 지우기
286
232
  if (this.inputField) {
@@ -290,44 +236,30 @@ var UnifiedBoxManager = /** @class */ (function () {
290
236
  this.model.clearInput();
291
237
  // ComboBox 타입이고 초기 옵션이 없는 경우 (API 모드)
292
238
  // Clear 버튼 클릭 시 옵션도 완전히 비우기
293
- var isApiMode = this.isComboBox && !this.hasInitialOptions;
239
+ const isApiMode = this.isComboBox && !this.hasInitialOptions;
294
240
  if (isApiMode) {
295
241
  this.model.updateOptions([]);
296
242
  this.lastSearchValue = '';
297
243
  }
298
244
  this.controller.close();
299
- };
300
- UnifiedBoxManager.prototype.handleShowAll = function () {
301
- var _a, _b, _c, _d;
302
- return __awaiter(this, void 0, void 0, function () {
303
- var hasOptions;
304
- return __generator(this, function (_e) {
305
- switch (_e.label) {
306
- case 0:
307
- if (!!this.config.disabled) return [3 /*break*/, 2];
308
- (_a = this.inputField) === null || _a === void 0 ? void 0 : _a.focus();
309
- (_b = this.inputField) === null || _b === void 0 ? void 0 : _b.setValue('');
310
- this.model.updateSearchAndFilter('', true);
311
- // onSearchAll 콜백 호출 (async 함수일 경우를 대비해 Promise.resolve로 감싸서 처리)
312
- return [4 /*yield*/, Promise.resolve((_d = (_c = this.config).onSearchAll) === null || _d === void 0 ? void 0 : _d.call(_c))];
313
- case 1:
314
- // onSearchAll 콜백 호출 (async 함수일 경우를 대비해 Promise.resolve로 감싸서 처리)
315
- _e.sent();
316
- hasOptions = this.model.getState().options.length > 0 || this.model.getState().filteredOptions.length > 0;
317
- if (hasOptions) {
318
- this.controller.open();
319
- }
320
- _e.label = 2;
321
- case 2: return [2 /*return*/];
322
- }
323
- });
324
- });
325
- };
326
- UnifiedBoxManager.prototype.handleSelectionChange = function (selectedValues) {
327
- var _a, _b;
245
+ }
246
+ async handleShowAll() {
247
+ if (!this.config.disabled) {
248
+ this.inputField?.focus();
249
+ this.inputField?.setValue('');
250
+ this.model.updateSearchAndFilter('', true);
251
+ // onSearchAll 콜백 호출 (async 함수일 경우를 대비해 Promise.resolve로 감싸서 처리)
252
+ await Promise.resolve(this.config.onSearchAll?.());
253
+ const hasOptions = this.model.getState().options.length > 0 || this.model.getState().filteredOptions.length > 0;
254
+ if (hasOptions) {
255
+ this.controller.open();
256
+ }
257
+ }
258
+ }
259
+ handleSelectionChange(selectedValues) {
328
260
  this.debouncedSearch.cancel();
329
- var result = this.config.multiple ? selectedValues : selectedValues[0] || '';
330
- (_b = (_a = this.config).onChange) === null || _b === void 0 ? void 0 : _b.call(_a, result);
261
+ const result = this.config.multiple ? selectedValues : selectedValues[0] || '';
262
+ this.config.onChange?.(result);
331
263
  // UI 업데이트
332
264
  if (!this.isComboBox) {
333
265
  this.updateSelectBoxValue();
@@ -340,9 +272,9 @@ var UnifiedBoxManager = /** @class */ (function () {
340
272
  if (!this.config.multiple && !this.config.showFooterButtons) {
341
273
  this.controller.close();
342
274
  }
343
- };
344
- UnifiedBoxManager.prototype.updateSelectBoxValue = function () {
345
- var valueSpan = this.element.querySelector('.ncua-selectbox__value');
275
+ }
276
+ updateSelectBoxValue() {
277
+ const valueSpan = this.element.querySelector('.ncua-selectbox__value');
346
278
  if (valueSpan) {
347
279
  if (this.config.multiple) {
348
280
  // Multiple 모드일 때는 항상 placeholder 표시
@@ -350,40 +282,37 @@ var UnifiedBoxManager = /** @class */ (function () {
350
282
  }
351
283
  else {
352
284
  // Single 모드일 때는 선택된 옵션 또는 placeholder 표시
353
- var selectedOptions = this.model.getSelectedOptions();
354
- var selectedOption = selectedOptions[0];
285
+ const selectedOptions = this.model.getSelectedOptions();
286
+ const selectedOption = selectedOptions[0];
355
287
  valueSpan.textContent = selectedOption ? selectedOption.label : this.config.placeholder || '';
356
288
  }
357
289
  }
358
- };
359
- UnifiedBoxManager.prototype.canToggleDropdown = function () {
360
- var _a;
290
+ }
291
+ canToggleDropdown() {
361
292
  if (this.isComboBox) {
362
293
  // ComboBox의 경우: 인풋에 텍스트가 있으면 항상 토글 가능
363
- var currentInputValue = ((_a = this.inputField) === null || _a === void 0 ? void 0 : _a.input.value) || '';
294
+ const currentInputValue = this.inputField?.input.value || '';
364
295
  return currentInputValue.trim().length > 0 || this.model.getState().showAllItems;
365
296
  }
366
297
  return true; // SelectBox는 항상 토글 가능
367
- };
298
+ }
368
299
  // 푸터 버튼 핸들러들
369
- UnifiedBoxManager.prototype.handleSelectAll = function () {
370
- var _a, _b;
300
+ handleSelectAll() {
371
301
  if (this.config.multiple) {
372
302
  this.model.toggleSelectAll();
373
303
  this.updateSelectAllButtonText();
374
304
  // 외부 콜백 호출
375
- (_b = (_a = this.config).onSelectAll) === null || _b === void 0 ? void 0 : _b.call(_a);
305
+ this.config.onSelectAll?.();
376
306
  }
377
- };
378
- UnifiedBoxManager.prototype.handleComplete = function () {
379
- var _a, _b, _c, _d;
307
+ }
308
+ handleComplete() {
380
309
  if (this.config.multiple || this.isComboBox) {
381
- var currentValues = this.model.getValue();
310
+ const currentValues = this.model.getValue();
382
311
  // SelectBox 타입이고 multiple 모드일 때만 onChange 콜백으로 현재 선택된 값들 전달
383
312
  if (!this.isComboBox && this.config.multiple && Array.isArray(currentValues)) {
384
- (_b = (_a = this.config).onChange) === null || _b === void 0 ? void 0 : _b.call(_a, currentValues);
313
+ this.config.onChange?.(currentValues);
385
314
  }
386
- (_d = (_c = this.config).onComplete) === null || _d === void 0 ? void 0 : _d.call(_c);
315
+ this.config.onComplete?.();
387
316
  // ComboBox 타입인 경우에만 값 초기화 및 검색어 초기화
388
317
  if (this.isComboBox) {
389
318
  this.model.setValue([]);
@@ -391,7 +320,7 @@ var UnifiedBoxManager = /** @class */ (function () {
391
320
  this.inputField.setValue('');
392
321
  }
393
322
  this.model.clearInput();
394
- var isApiMode = !this.hasInitialOptions;
323
+ const isApiMode = !this.hasInitialOptions;
395
324
  if (isApiMode) {
396
325
  this.model.updateOptions([]);
397
326
  this.lastSearchValue = '';
@@ -399,31 +328,31 @@ var UnifiedBoxManager = /** @class */ (function () {
399
328
  }
400
329
  this.controller.close();
401
330
  }
402
- };
403
- UnifiedBoxManager.prototype.updateSelectAllButtonText = function () {
331
+ }
332
+ updateSelectAllButtonText() {
404
333
  if (!this.config.multiple || !this.footerElement)
405
334
  return;
406
335
  this.renderer.updateSelectAllButtonText(this.footerElement, this.model.getSelectAllButtonText());
407
- };
336
+ }
408
337
  // Public API
409
- UnifiedBoxManager.prototype.getValues = function () {
410
- var selectedIds = this.model.getValue();
411
- var allOptions = this.getOptions();
338
+ getValues() {
339
+ const selectedIds = this.model.getValue();
340
+ const allOptions = this.getOptions();
412
341
  // selectedIds가 배열이 아닌 경우 배열로 변환
413
- var ids = Array.isArray(selectedIds) ? selectedIds : selectedIds ? [selectedIds] : [];
342
+ const ids = Array.isArray(selectedIds) ? selectedIds : selectedIds ? [selectedIds] : [];
414
343
  // 선택된 id에 해당하는 옵션 객체들을 찾아서 반환
415
344
  return ids
416
- .map(function (id) { return allOptions.find(function (opt) { return opt.id === id; }); })
417
- .filter(function (opt) { return opt !== undefined; });
418
- };
419
- UnifiedBoxManager.prototype.getOptions = function () {
345
+ .map((id) => allOptions.find((opt) => opt.id === id))
346
+ .filter((opt) => opt !== undefined);
347
+ }
348
+ getOptions() {
420
349
  return this.config.options || [];
421
- };
422
- UnifiedBoxManager.prototype.setValues = function (value) {
350
+ }
351
+ setValues(value) {
423
352
  // 옵션 객체 배열에서 id 배열로 변환
424
- var ids = value.map(function (option) { return option.id; });
353
+ const ids = value.map((option) => option.id);
425
354
  // 단일 선택 모드인 경우 첫 번째 값만 사용
426
- var finalIds = this.config.multiple ? ids : ids[0] || '';
355
+ const finalIds = this.config.multiple ? ids : ids[0] || '';
427
356
  this.model.setValue(finalIds);
428
357
  if (!this.isComboBox) {
429
358
  this.updateSelectBoxValue();
@@ -431,7 +360,7 @@ var UnifiedBoxManager = /** @class */ (function () {
431
360
  else {
432
361
  // ComboBox의 경우 input 필드도 업데이트
433
362
  if (this.inputField) {
434
- var isEmpty = value.length === 0;
363
+ const isEmpty = value.length === 0;
435
364
  if (isEmpty) {
436
365
  // 빈 값으로 설정할 때 input 필드와 검색값 모두 비우기
437
366
  this.inputField.setValue('');
@@ -439,75 +368,71 @@ var UnifiedBoxManager = /** @class */ (function () {
439
368
  }
440
369
  }
441
370
  }
442
- };
443
- UnifiedBoxManager.prototype.updateOptions = function (newOptions) {
371
+ }
372
+ updateOptions(newOptions) {
444
373
  // config.options도 업데이트 (getOptions()가 이를 반환하므로)
445
- this.config.options = __spreadArray([], newOptions, true);
374
+ this.config.options = [...newOptions];
446
375
  this.model.updateOptions(newOptions);
447
376
  this.controller.updateOptions(newOptions);
448
- };
449
- UnifiedBoxManager.prototype.setDisabled = function (disabled) {
450
- var _a, _b;
377
+ }
378
+ setDisabled(disabled) {
451
379
  this.config.disabled = disabled;
452
- var disabledClass = "".concat(this.baseClass, "--disabled");
380
+ const disabledClass = `${this.baseClass}--disabled`;
453
381
  this.element.classList.toggle(disabledClass, disabled);
454
382
  if (this.controller) {
455
383
  this.controller.setDisabled(disabled);
456
384
  }
457
385
  if (this.isComboBox) {
458
386
  // 입력 필드 비활성화
459
- if ((_a = this.inputField) === null || _a === void 0 ? void 0 : _a.input) {
387
+ if (this.inputField?.input) {
460
388
  this.inputField.input.disabled = disabled;
461
- (_b = this.inputField.container) === null || _b === void 0 ? void 0 : _b.classList.toggle('is-disabled', disabled);
389
+ this.inputField.container?.classList.toggle('is-disabled', disabled);
462
390
  }
463
391
  }
464
392
  else if (this.triggerElement) {
465
393
  this.triggerElement.setAttribute('tabindex', disabled ? '-1' : '0');
466
394
  }
467
- };
468
- UnifiedBoxManager.prototype.open = function () {
395
+ }
396
+ open() {
469
397
  this.controller.open();
470
- };
471
- UnifiedBoxManager.prototype.close = function () {
398
+ }
399
+ close() {
472
400
  this.controller.close();
473
- };
474
- UnifiedBoxManager.prototype.focus = function () {
475
- var _a, _b;
401
+ }
402
+ focus() {
476
403
  if (this.isComboBox) {
477
- (_a = this.inputField) === null || _a === void 0 ? void 0 : _a.focus();
404
+ this.inputField?.focus();
478
405
  }
479
406
  else {
480
- (_b = this.triggerElement) === null || _b === void 0 ? void 0 : _b.focus();
407
+ this.triggerElement?.focus();
481
408
  }
482
- };
483
- UnifiedBoxManager.prototype.destroy = function () {
409
+ }
410
+ destroy() {
484
411
  this.debouncedSearch.cancel();
485
412
  this.controller.destroy();
486
413
  this.renderer.clearCache();
487
414
  this.inputField = undefined;
488
- };
415
+ }
489
416
  // Multiple 모드 전용 메서드들
490
- UnifiedBoxManager.prototype.selectAll = function () {
491
- var _a;
417
+ selectAll() {
492
418
  if (this.config.multiple) {
493
- var allOptionIds = ((_a = this.config.options) === null || _a === void 0 ? void 0 : _a.map(function (option) { return option.id; })) || [];
419
+ const allOptionIds = this.config.options?.map((option) => option.id) || [];
494
420
  this.model.setValue(allOptionIds);
495
421
  }
496
- };
497
- UnifiedBoxManager.prototype.deselectAll = function () {
422
+ }
423
+ deselectAll() {
498
424
  if (this.config.multiple) {
499
425
  this.model.setValue([]);
500
426
  }
501
- };
502
- UnifiedBoxManager.prototype.isMultiple = function () {
427
+ }
428
+ isMultiple() {
503
429
  return this.config.multiple || false;
504
- };
505
- UnifiedBoxManager.prototype.toggleSelectAll = function () {
506
- var _a;
430
+ }
431
+ toggleSelectAll() {
507
432
  if (!this.config.multiple)
508
433
  return;
509
- var currentValues = this.model.getValue();
510
- var allOptionIds = ((_a = this.config.options) === null || _a === void 0 ? void 0 : _a.map(function (option) { return option.id; })) || [];
434
+ const currentValues = this.model.getValue();
435
+ const allOptionIds = this.config.options?.map((option) => option.id) || [];
511
436
  if (Array.isArray(currentValues) && currentValues.length === allOptionIds.length) {
512
437
  // 모든 옵션이 선택되어 있으면 전체 해제
513
438
  this.deselectAll();
@@ -516,44 +441,42 @@ var UnifiedBoxManager = /** @class */ (function () {
516
441
  // 일부만 선택되어 있거나 아무것도 선택되지 않았으면 전체 선택
517
442
  this.selectAll();
518
443
  }
519
- };
444
+ }
520
445
  // 디버깅용
521
- UnifiedBoxManager.prototype.getDebugInfo = function () {
446
+ getDebugInfo() {
522
447
  return {
523
448
  config: this.config,
524
449
  modelState: this.model.getDebugInfo(),
525
450
  isOpen: this.model.getState().isOpen,
526
451
  };
527
- };
452
+ }
528
453
  /**
529
454
  * 드롭다운을 스크롤의 바닥으로 이동
530
455
  * 전체 선택 시 추가 데이터 로드를 트리거하기 위해 사용
531
456
  */
532
- UnifiedBoxManager.prototype.scrollToBottom = function () {
457
+ scrollToBottom() {
533
458
  if (!this.dropdownElement)
534
459
  return;
535
- var optionsList = this.dropdownElement.querySelector('.ncua-select-dropdown__options');
460
+ const optionsList = this.dropdownElement.querySelector('.ncua-select-dropdown__options');
536
461
  if (!optionsList)
537
462
  return;
538
463
  // 스크롤을 바닥으로 이동
539
464
  optionsList.scrollTop = optionsList.scrollHeight;
540
- };
465
+ }
541
466
  /**
542
467
  * 전체 선택 버튼의 텍스트를 외부에서 변경
543
468
  * @param text 버튼에 표시할 텍스트
544
469
  */
545
- UnifiedBoxManager.prototype.setSelectAllButtonText = function (text) {
470
+ setSelectAllButtonText(text) {
546
471
  if (!this.config.multiple || !this.footerElement)
547
472
  return;
548
473
  this.renderer.updateSelectAllButtonText(this.footerElement, text);
549
- };
474
+ }
550
475
  /**
551
476
  * 특정 인덱스의 옵션으로 포커스 이동
552
477
  * @param index 포커스를 이동할 옵션의 인덱스
553
478
  */
554
- UnifiedBoxManager.prototype.setFocusIndex = function (index) {
479
+ setFocusIndex(index) {
555
480
  this.controller.setFocus(index);
556
- };
557
- return UnifiedBoxManager;
558
- }());
559
- export { UnifiedBoxManager };
481
+ }
482
+ }