@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
@@ -4,22 +4,12 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.UnifiedBoxController = void 0;
7
- var __assign = void 0 && (void 0).__assign || function () {
8
- __assign = Object.assign || function (t) {
9
- for (var s, i = 1, n = arguments.length; i < n; i++) {
10
- s = arguments[i];
11
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
12
- }
13
- return t;
14
- };
15
- return __assign.apply(this, arguments);
16
- };
17
7
  /**
18
8
  * SelectBox 통합 컨트롤러
19
9
  * 이벤트 처리, UI 상태 제어, 사용자 인터랙션 담당
20
10
  */
21
- var UnifiedBoxController = exports.UnifiedBoxController = /** @class */function () {
22
- function UnifiedBoxController(config) {
11
+ class UnifiedBoxController {
12
+ constructor(config) {
23
13
  this.isOpen = false;
24
14
  this.focusedIndex = -1;
25
15
  this.isKeyboardNavigation = false;
@@ -39,8 +29,7 @@ var UnifiedBoxController = exports.UnifiedBoxController = /** @class */function
39
29
  /**
40
30
  * 상태 변경 리스너 (Observer Pattern)
41
31
  */
42
- UnifiedBoxController.prototype.onStateChange = function (newState, changedFields) {
43
- var _a, _b;
32
+ onStateChange(newState, changedFields) {
44
33
  // 드롭다운 열기/닫기 상태 동기화
45
34
  if (changedFields.includes('isOpen')) {
46
35
  this.isOpen = newState.isOpen;
@@ -57,82 +46,78 @@ var UnifiedBoxController = exports.UnifiedBoxController = /** @class */function
57
46
  }
58
47
  // 선택 상태 변경 알림
59
48
  if (changedFields.includes('selectedValues')) {
60
- (_b = (_a = this.config).onSelectionChange) === null || _b === void 0 ? void 0 : _b.call(_a, newState.selectedValues);
49
+ this.config.onSelectionChange?.(newState.selectedValues);
61
50
  }
62
51
  // 검색어 변경 알림은 UnifiedSelectBox에서 디바운싱 적용 후 처리하므로 여기서는 호출하지 않음
63
52
  // (디바운싱이 적용되지 않은 즉시 호출을 방지하기 위해)
64
- };
53
+ }
65
54
  /**
66
55
  * 이벤트 핸들러 설정
67
56
  */
68
- UnifiedBoxController.prototype.setupEventHandlers = function () {
69
- var _this = this;
57
+ setupEventHandlers() {
70
58
  // 외부 클릭 핸들러
71
- this.outsideClickHandler = function (e) {
72
- var target = e.target;
73
- var isInsideTrigger = _this.config.triggerElement.contains(target);
74
- var isInsideDropdown = _this.config.dropdownElement.contains(target);
59
+ this.outsideClickHandler = e => {
60
+ const target = e.target;
61
+ const isInsideTrigger = this.config.triggerElement.contains(target);
62
+ const isInsideDropdown = this.config.dropdownElement.contains(target);
75
63
  if (isInsideTrigger || isInsideDropdown) {
76
64
  return;
77
65
  }
78
- _this.close();
66
+ this.close();
79
67
  };
80
68
  // 키보드 핸들러
81
- this.keyDownHandler = function (e) {
82
- _this.handleKeyDown(e);
69
+ this.keyDownHandler = e => {
70
+ this.handleKeyDown(e);
83
71
  };
84
72
  if (this.config.type !== 'combobox') {
85
- this.config.triggerElement.addEventListener('click', function () {
86
- var _a, _b;
87
- if (!_this.config.disabled && ((_b = (_a = _this.config).canToggle) === null || _b === void 0 ? void 0 : _b.call(_a)) !== false) {
88
- _this.toggle();
73
+ this.config.triggerElement.addEventListener('click', () => {
74
+ if (!this.config.disabled && this.config.canToggle?.() !== false) {
75
+ this.toggle();
89
76
  }
90
77
  });
91
78
  }
92
79
  // 키보드 이벤트
93
80
  this.config.triggerElement.addEventListener('keydown', this.keyDownHandler);
94
- };
81
+ }
95
82
  /**
96
83
  * 드롭다운 열기
97
84
  */
98
- UnifiedBoxController.prototype.open = function () {
99
- var _a, _b;
85
+ open() {
100
86
  if (this.config.disabled || this.isOpen) return;
101
87
  this.config.model.setOpen(true);
102
88
  this.adjustDropdownPosition();
103
89
  this.enableOutsideClick();
104
90
  this.enableScrollLock();
105
91
  this.enableScrollBottomDetection(); // 스크롤 감지 활성화
106
- (_b = (_a = this.config).onOpen) === null || _b === void 0 ? void 0 : _b.call(_a);
107
- };
92
+ this.config.onOpen?.();
93
+ }
108
94
  /**
109
95
  * 드롭다운 닫기
110
96
  */
111
- UnifiedBoxController.prototype.close = function () {
112
- var _a, _b;
97
+ close() {
113
98
  if (!this.isOpen) return;
114
99
  this.config.model.setOpen(false);
115
100
  this.disableOutsideClick();
116
101
  this.disableScrollLock();
117
102
  this.disableScrollBottomDetection(); // 스크롤 감지 비활성화
118
103
  this.isKeyboardNavigation = false;
119
- (_b = (_a = this.config).onClose) === null || _b === void 0 ? void 0 : _b.call(_a);
120
- };
104
+ this.config.onClose?.();
105
+ }
121
106
  /**
122
107
  * 드롭다운 토글
123
108
  */
124
- UnifiedBoxController.prototype.toggle = function () {
109
+ toggle() {
125
110
  if (this.isOpen) {
126
111
  this.close();
127
112
  } else {
128
113
  this.open();
129
114
  }
130
- };
115
+ }
131
116
  /**
132
117
  * 키보드 입력 처리
133
118
  */
134
- UnifiedBoxController.prototype.handleKeyDown = function (event) {
135
- var state = this.config.model.getState();
119
+ handleKeyDown(event) {
120
+ const state = this.config.model.getState();
136
121
  switch (event.key) {
137
122
  case 'ArrowDown':
138
123
  event.preventDefault();
@@ -153,7 +138,7 @@ var UnifiedBoxController = exports.UnifiedBoxController = /** @class */function
153
138
  case 'Enter':
154
139
  event.preventDefault();
155
140
  if (state.isOpen && state.focusedIndex >= 0 && state.focusedIndex < state.filteredOptions.length) {
156
- var focusedOption = state.filteredOptions[state.focusedIndex];
141
+ const focusedOption = state.filteredOptions[state.focusedIndex];
157
142
  this.config.model.toggleOption(focusedOption.id);
158
143
  }
159
144
  break;
@@ -170,17 +155,17 @@ var UnifiedBoxController = exports.UnifiedBoxController = /** @class */function
170
155
  }
171
156
  break;
172
157
  }
173
- };
158
+ }
174
159
  /**
175
160
  * 옵션 검색
176
161
  */
177
- UnifiedBoxController.prototype.searchOption = function (char) {
178
- var state = this.config.model.getState();
179
- var options = state.filteredOptions;
180
- var startIndex = this.focusedIndex >= 0 ? this.focusedIndex + 1 : 0;
181
- for (var i = 0; i < options.length; i++) {
182
- var index = (startIndex + i) % options.length;
183
- var option = options[index];
162
+ searchOption(char) {
163
+ const state = this.config.model.getState();
164
+ const options = state.filteredOptions;
165
+ const startIndex = this.focusedIndex >= 0 ? this.focusedIndex + 1 : 0;
166
+ for (let i = 0; i < options.length; i++) {
167
+ const index = (startIndex + i) % options.length;
168
+ const option = options[index];
184
169
  // option.label이 존재하고 문자열인지 확인
185
170
  if (option && option.label && typeof option.label === 'string') {
186
171
  if (option.label.toLowerCase().startsWith(char.toLowerCase())) {
@@ -189,50 +174,45 @@ var UnifiedBoxController = exports.UnifiedBoxController = /** @class */function
189
174
  }
190
175
  }
191
176
  }
192
- };
177
+ }
193
178
  /**
194
179
  * 드롭다운 표시/숨김 업데이트
195
180
  */
196
- UnifiedBoxController.prototype.updateDropdownVisibility = function (isOpen) {
181
+ updateDropdownVisibility(isOpen) {
197
182
  this.config.dropdownElement.style.display = isOpen ? 'block' : 'none';
198
- };
183
+ }
199
184
  /**
200
185
  * 옵션 표시 업데이트
201
186
  */
202
- UnifiedBoxController.prototype.updateOptionsDisplay = function (state) {
203
- var hasFilteredOptions = state.filteredOptions.length > 0;
204
- var countChanged = this.lastFilteredOptionsCount !== state.filteredOptions.length;
187
+ updateOptionsDisplay(state) {
188
+ const hasFilteredOptions = state.filteredOptions.length > 0;
189
+ const countChanged = this.lastFilteredOptionsCount !== state.filteredOptions.length;
205
190
  // 빈 옵션일 때 해시 초기화 및 전체 렌더링
206
191
  if (!hasFilteredOptions) {
207
192
  this.lastFilteredOptionsHash = '';
208
193
  this.lastFilteredOptionsCount = 0;
209
194
  } else {
210
195
  // 옵션 개수가 변경되었는지 먼저 확인 (빠른 체크)
211
- var optionsChanged = countChanged;
196
+ let optionsChanged = countChanged;
212
197
  // 개수가 변경되지 않았을 때만 해시 계산 (O(n) 연산 최소화)
213
198
  if (!optionsChanged) {
214
- var currentHash = state.filteredOptions.map(function (opt) {
215
- return opt.id;
216
- }).join(',');
199
+ const currentHash = state.filteredOptions.map(opt => opt.id).join(',');
217
200
  optionsChanged = this.lastFilteredOptionsHash !== currentHash;
218
201
  if (optionsChanged) {
219
202
  this.lastFilteredOptionsHash = currentHash;
220
203
  }
221
204
  } else {
222
205
  // 개수가 변경되었으면 해시도 재계산
223
- this.lastFilteredOptionsHash = state.filteredOptions.map(function (opt) {
224
- return opt.id;
225
- }).join(',');
206
+ this.lastFilteredOptionsHash = state.filteredOptions.map(opt => opt.id).join(',');
226
207
  }
227
208
  // 옵션이 변경되지 않았고 선택 상태만 변경된 경우 DOM 조작만 수행
228
209
  if (!optionsChanged) {
229
210
  // 선택 상태만 업데이트 (전체 재렌더링 방지)
230
- this.optionElements.forEach(function (element, index) {
231
- var _a;
232
- var optionId = (_a = state.filteredOptions[index]) === null || _a === void 0 ? void 0 : _a.id;
211
+ this.optionElements.forEach((element, index) => {
212
+ const optionId = state.filteredOptions[index]?.id;
233
213
  if (!optionId) return;
234
- var isSelected = state.selectedValues.includes(optionId);
235
- var isFocused = index === state.focusedIndex;
214
+ const isSelected = state.selectedValues.includes(optionId);
215
+ const isFocused = index === state.focusedIndex;
236
216
  // 선택 상태 업데이트
237
217
  if (isSelected) {
238
218
  element.classList.add('ncua-select-dropdown__option--selected');
@@ -252,32 +232,29 @@ var UnifiedBoxController = exports.UnifiedBoxController = /** @class */function
252
232
  }
253
233
  }
254
234
  // 옵션이 변경되었거나 빈 경우에만 전체 렌더링
255
- var renderableOptions = state.filteredOptions.map(function (option, index) {
256
- return __assign(__assign({}, option), {
257
- selected: state.selectedValues.includes(option.id),
258
- focused: index === state.focusedIndex
259
- });
260
- });
261
- var showNoResults = state.filteredOptions.length === 0 && (state.showAllItems || state.searchValue.length > 0);
262
- var optionsList = this.config.dropdownElement.querySelector('.ncua-select-dropdown__options');
235
+ const renderableOptions = state.filteredOptions.map((option, index) => ({
236
+ ...option,
237
+ selected: state.selectedValues.includes(option.id),
238
+ focused: index === state.focusedIndex
239
+ }));
240
+ const showNoResults = state.filteredOptions.length === 0 && (state.showAllItems || state.searchValue.length > 0);
241
+ const optionsList = this.config.dropdownElement.querySelector('.ncua-select-dropdown__options');
263
242
  if (optionsList) {
264
243
  this.optionElements = this.config.renderer.updateOptionsList(optionsList, renderableOptions, this.config.renderConfig, showNoResults);
265
244
  // 옵션 클릭 이벤트 등록
266
245
  this.attachOptionEventHandlers();
267
246
  // 캐시 업데이트 (이미 위에서 업데이트했으면 다시 업데이트하지 않음)
268
247
  if (!this.lastFilteredOptionsHash) {
269
- this.lastFilteredOptionsHash = state.filteredOptions.map(function (opt) {
270
- return opt.id;
271
- }).join(',');
248
+ this.lastFilteredOptionsHash = state.filteredOptions.map(opt => opt.id).join(',');
272
249
  }
273
250
  this.lastFilteredOptionsCount = state.filteredOptions.length;
274
251
  }
275
- };
252
+ }
276
253
  /**
277
254
  * 포커스된 옵션 업데이트
278
255
  */
279
- UnifiedBoxController.prototype.updateFocusedOption = function (focusedIndex) {
280
- this.optionElements.forEach(function (element, index) {
256
+ updateFocusedOption(focusedIndex) {
257
+ this.optionElements.forEach((element, index) => {
281
258
  if (index === focusedIndex) {
282
259
  element.classList.add('ncua-select-dropdown__option--focused');
283
260
  element.scrollIntoView({
@@ -287,108 +264,105 @@ var UnifiedBoxController = exports.UnifiedBoxController = /** @class */function
287
264
  element.classList.remove('ncua-select-dropdown__option--focused');
288
265
  }
289
266
  });
290
- };
267
+ }
291
268
  /**
292
269
  * 옵션 클릭 이벤트 핸들러 등록
293
270
  */
294
- UnifiedBoxController.prototype.attachOptionEventHandlers = function () {
295
- var _this = this;
271
+ attachOptionEventHandlers() {
296
272
  // 기존 이벤트 리스너 제거
297
273
  this.removeOptionEventHandlers();
298
- this.optionElements.forEach(function (element, index) {
299
- var optionId = element.getAttribute('data-value');
274
+ this.optionElements.forEach((element, index) => {
275
+ const optionId = element.getAttribute('data-value');
300
276
  // data-value가 없거나 빈 문자열인 경우에도 처리
301
277
  if (optionId === null) return;
302
278
  // 클릭 이벤트 핸들러 생성 및 저장
303
- var clickHandler = function (event) {
279
+ const clickHandler = event => {
304
280
  event.preventDefault();
305
281
  event.stopPropagation();
306
- _this.config.model.toggleOption(optionId);
282
+ this.config.model.toggleOption(optionId);
307
283
  // 단일 선택 모드에서는 선택 후 드롭다운 닫기
308
- if (!_this.config.model.isMultiple()) {
309
- setTimeout(function () {
310
- return _this.close();
311
- }, 100);
284
+ if (!this.config.model.isMultiple()) {
285
+ setTimeout(() => this.close(), 100);
312
286
  }
313
287
  };
314
- var hoverHandler = function () {
315
- if (!_this.isKeyboardNavigation) {
316
- _this.config.model.setFocusedIndex(index);
288
+ const hoverHandler = () => {
289
+ if (!this.isKeyboardNavigation) {
290
+ this.config.model.setFocusedIndex(index);
317
291
  }
318
292
  };
319
293
  // 이벤트 리스너 등록
320
294
  element.addEventListener('click', clickHandler);
321
295
  element.addEventListener('mouseenter', hoverHandler);
322
296
  // 나중에 제거할 수 있도록 핸들러 저장
323
- _this.handlerMap.set(element, {
297
+ this.handlerMap.set(element, {
324
298
  click: clickHandler,
325
299
  hover: hoverHandler
326
300
  });
327
301
  });
328
302
  // 마우스 이동 감지 (한 번만 등록)
329
303
  if (!this.mouseMoveHandlerAttached) {
330
- this.config.dropdownElement.addEventListener('mousemove', function () {
331
- _this.isKeyboardNavigation = false;
304
+ this.config.dropdownElement.addEventListener('mousemove', () => {
305
+ this.isKeyboardNavigation = false;
332
306
  });
333
307
  this.mouseMoveHandlerAttached = true;
334
308
  }
335
- };
309
+ }
336
310
  /**
337
311
  * 옵션 이벤트 핸들러 제거
338
312
  */
339
- UnifiedBoxController.prototype.removeOptionEventHandlers = function () {
340
- var _this = this;
341
- this.optionElements.forEach(function (element) {
342
- var handlers = _this.handlerMap.get(element);
313
+ removeOptionEventHandlers() {
314
+ this.optionElements.forEach(element => {
315
+ const handlers = this.handlerMap.get(element);
343
316
  if (handlers) {
344
317
  element.removeEventListener('click', handlers.click);
345
318
  element.removeEventListener('mouseenter', handlers.hover);
346
- _this.handlerMap.delete(element);
319
+ this.handlerMap.delete(element);
347
320
  }
348
321
  });
349
- };
322
+ }
350
323
  /**
351
324
  * 옵션 업데이트가 필요한지 판단
352
325
  */
353
- UnifiedBoxController.prototype.shouldUpdateOptions = function (changedFields) {
354
- return changedFields.some(function (field) {
355
- return ['options', 'filteredOptions', 'selectedValues', 'showAllItems'].includes(field);
356
- });
357
- };
326
+ shouldUpdateOptions(changedFields) {
327
+ return changedFields.some(field => ['options', 'filteredOptions', 'selectedValues', 'showAllItems'].includes(field));
328
+ }
358
329
  /**
359
330
  * 외부 클릭 감지 활성화
360
331
  */
361
- UnifiedBoxController.prototype.enableOutsideClick = function () {
332
+ enableOutsideClick() {
362
333
  document.addEventListener('mousedown', this.outsideClickHandler);
363
- };
334
+ }
364
335
  /**
365
336
  * 외부 클릭 감지 비활성화
366
337
  */
367
- UnifiedBoxController.prototype.disableOutsideClick = function () {
338
+ disableOutsideClick() {
368
339
  document.removeEventListener('mousedown', this.outsideClickHandler);
369
- };
340
+ }
370
341
  /**
371
342
  * 스크롤 잠금 활성화 (드롭다운 내부 스크롤은 허용)
372
343
  * ComboBox 또는 multiple 모드에서는 스크롤 잠금 비활성화
373
344
  */
374
- UnifiedBoxController.prototype.enableScrollLock = function () {
375
- var _this = this;
345
+ enableScrollLock() {
376
346
  // ComboBox 또는 multiple 모드에서는 스크롤 잠금 비활성화
377
347
  if (this.config.type === 'combobox' || this.config.model.isMultiple()) {
378
348
  return;
379
349
  }
380
350
  this.scrollPosition = window.pageYOffset;
381
351
  this.scrollLockHandlers = {
382
- wheel: function (e) {
352
+ wheel: e => {
383
353
  // 드롭다운 내부에서 발생한 이벤트 처리
384
- if (_this.config.dropdownElement && _this.config.dropdownElement.contains(e.target)) {
354
+ if (this.config.dropdownElement && this.config.dropdownElement.contains(e.target)) {
385
355
  // 드롭다운 내부의 스크롤 가능한 요소 찾기
386
- var scrollableElement = _this.findScrollableParent(e.target, _this.config.dropdownElement);
356
+ const scrollableElement = this.findScrollableParent(e.target, this.config.dropdownElement);
387
357
  if (scrollableElement) {
388
- var deltaY = e.deltaY;
389
- var scrollTop = scrollableElement.scrollTop,
390
- scrollHeight = scrollableElement.scrollHeight,
391
- clientHeight = scrollableElement.clientHeight;
358
+ const {
359
+ deltaY
360
+ } = e;
361
+ const {
362
+ scrollTop,
363
+ scrollHeight,
364
+ clientHeight
365
+ } = scrollableElement;
392
366
  // 스크롤이 위쪽 끝에 도달했고 위로 스크롤하려는 경우
393
367
  if (scrollTop === 0 && deltaY < 0) {
394
368
  e.preventDefault();
@@ -406,10 +380,10 @@ var UnifiedBoxController = exports.UnifiedBoxController = /** @class */function
406
380
  // 드롭다운 외부의 모든 스크롤 방지
407
381
  e.preventDefault();
408
382
  },
409
- touchmove: function (e) {
383
+ touchmove: e => {
410
384
  // 드롭다운 내부에서의 터치 스크롤 처리
411
- if (_this.config.dropdownElement && _this.config.dropdownElement.contains(e.target)) {
412
- var scrollableElement = _this.findScrollableParent(e.target, _this.config.dropdownElement);
385
+ if (this.config.dropdownElement && this.config.dropdownElement.contains(e.target)) {
386
+ const scrollableElement = this.findScrollableParent(e.target, this.config.dropdownElement);
413
387
  if (scrollableElement) {
414
388
  // 터치 스크롤은 브라우저가 자동으로 처리하도록 허용
415
389
  return;
@@ -418,9 +392,9 @@ var UnifiedBoxController = exports.UnifiedBoxController = /** @class */function
418
392
  // 드롭다운 외부의 터치 스크롤 방지
419
393
  e.preventDefault();
420
394
  },
421
- keydown: function (e) {
395
+ keydown: e => {
422
396
  // 페이지 스크롤 키만 막기 (화살표 키는 드롭다운 네비게이션에서 처리)
423
- var keys = ['PageUp', 'PageDown', 'Home', 'End', 'Space'];
397
+ const keys = ['PageUp', 'PageDown', 'Home', 'End', 'Space'];
424
398
  if (keys.includes(e.key) || e.key === ' ') {
425
399
  e.preventDefault();
426
400
  }
@@ -433,18 +407,20 @@ var UnifiedBoxController = exports.UnifiedBoxController = /** @class */function
433
407
  passive: false
434
408
  });
435
409
  document.addEventListener('keydown', this.scrollLockHandlers.keydown);
436
- };
410
+ }
437
411
  /**
438
412
  * 스크롤 가능한 부모 요소 찾기
439
413
  */
440
- UnifiedBoxController.prototype.findScrollableParent = function (element, boundary) {
441
- var current = element;
414
+ findScrollableParent(element, boundary) {
415
+ let current = element;
442
416
  while (current && current !== boundary && boundary.contains(current)) {
443
- var computedStyle = window.getComputedStyle(current);
444
- var overflowY = computedStyle.overflowY;
417
+ const computedStyle = window.getComputedStyle(current);
418
+ const overflowY = computedStyle.overflowY;
445
419
  if (overflowY === 'auto' || overflowY === 'scroll') {
446
- var scrollHeight = current.scrollHeight,
447
- clientHeight = current.clientHeight;
420
+ const {
421
+ scrollHeight,
422
+ clientHeight
423
+ } = current;
448
424
  if (scrollHeight > clientHeight) {
449
425
  return current;
450
426
  }
@@ -452,93 +428,92 @@ var UnifiedBoxController = exports.UnifiedBoxController = /** @class */function
452
428
  current = current.parentElement;
453
429
  }
454
430
  return null;
455
- };
431
+ }
456
432
  /**
457
433
  * 스크롤 잠금 해제
458
434
  */
459
- UnifiedBoxController.prototype.disableScrollLock = function () {
435
+ disableScrollLock() {
460
436
  if (this.scrollLockHandlers) {
461
437
  document.removeEventListener('wheel', this.scrollLockHandlers.wheel);
462
438
  document.removeEventListener('touchmove', this.scrollLockHandlers.touchmove);
463
439
  document.removeEventListener('keydown', this.scrollLockHandlers.keydown);
464
440
  this.scrollLockHandlers = null;
465
441
  }
466
- };
442
+ }
467
443
  /**
468
444
  * 마우스 호버 처리 (외부에서 호출용)
469
445
  */
470
- UnifiedBoxController.prototype.handleMouseHover = function (index) {
446
+ handleMouseHover(index) {
471
447
  if (!this.isKeyboardNavigation) {
472
448
  this.config.model.setFocusedIndex(index);
473
449
  }
474
- };
450
+ }
475
451
  /**
476
452
  * 옵션 배열 업데이트
477
453
  */
478
- UnifiedBoxController.prototype.updateOptions = function (options) {
479
- var _this = this;
454
+ updateOptions(options) {
480
455
  this.config.model.updateOptions(options);
481
456
  // 스크롤 리스너는 이미 등록되어 있으므로 제거/재등록 불필요
482
457
  // DOM이 완전히 교체되는 경우에만 재등록 필요 (현재는 updateContainerChildren에서 요소 재사용)
483
458
  // 옵션 업데이트 후 스크롤 감지가 필요한 경우에만 확인
484
459
  if (this.isOpen && this.config.onScrollBottom && !this.scrollBottomHandler) {
485
460
  // 스크롤 리스너가 없을 때만 등록 (드롭다운이 열려있고 리스너가 없는 경우)
486
- requestAnimationFrame(function () {
487
- _this.enableScrollBottomDetection();
461
+ requestAnimationFrame(() => {
462
+ this.enableScrollBottomDetection();
488
463
  });
489
464
  }
490
- };
491
- UnifiedBoxController.prototype.getIsOpen = function () {
465
+ }
466
+ getIsOpen() {
492
467
  return this.config.model.getState().isOpen;
493
- };
494
- UnifiedBoxController.prototype.setFocus = function (index) {
468
+ }
469
+ setFocus(index) {
495
470
  this.config.model.setFocusedIndex(index);
496
- };
497
- UnifiedBoxController.prototype.getFocusedIndex = function () {
471
+ }
472
+ getFocusedIndex() {
498
473
  return this.config.model.getState().focusedIndex;
499
- };
474
+ }
500
475
  /**
501
476
  * 드롭다운 위치 조정 (화면 크기에 따라 up/down 방향 결정)
502
477
  * 단일 선택 모드에서만 적용
503
478
  */
504
- UnifiedBoxController.prototype.adjustDropdownPosition = function () {
479
+ adjustDropdownPosition() {
505
480
  if (!this.config.dropdownElement || !this.config.triggerElement) return;
506
481
  // ComboBox 또는 multiple 모드에서는 위치 조정 비활성화
507
482
  if (this.config.type === 'combobox' || this.config.model.isMultiple()) {
508
483
  return;
509
484
  }
510
485
  // 일시적으로 드롭다운을 보이게 해서 크기 측정
511
- var dropdown = this.config.dropdownElement;
512
- var originalDisplay = dropdown.style.display;
513
- var originalVisibility = dropdown.style.visibility;
486
+ const dropdown = this.config.dropdownElement;
487
+ const originalDisplay = dropdown.style.display;
488
+ const originalVisibility = dropdown.style.visibility;
514
489
  dropdown.style.display = 'block';
515
490
  dropdown.style.visibility = 'hidden';
516
- var result = this.calculateDropdownPosition();
491
+ const result = this.calculateDropdownPosition();
517
492
  // 방향에 따른 클래스 설정
518
493
  dropdown.classList.remove('ncua-select-dropdown--up', 'ncua-select-dropdown--down');
519
- dropdown.classList.add("ncua-select-dropdown--".concat(result.direction));
494
+ dropdown.classList.add(`ncua-select-dropdown--${result.direction}`);
520
495
  // 미세 위치 조정
521
496
  this.adjustDropdownPositionDetails(dropdown);
522
497
  // 원래 상태로 복원
523
498
  dropdown.style.display = originalDisplay;
524
499
  dropdown.style.visibility = originalVisibility;
525
- };
500
+ }
526
501
  /**
527
502
  * 드롭다운 위치 계산 (React dropdownUtils.ts 로직 참고)
528
503
  */
529
- UnifiedBoxController.prototype.calculateDropdownPosition = function () {
504
+ calculateDropdownPosition() {
530
505
  if (!this.config.triggerElement || !this.config.dropdownElement) {
531
506
  return {
532
507
  direction: 'down',
533
508
  maxHeight: this.config.renderConfig.maxHeight
534
509
  };
535
510
  }
536
- var triggerRect = this.config.triggerElement.getBoundingClientRect();
537
- var viewportHeight = window.innerHeight;
538
- var dropdownHeight = Math.min(this.config.renderConfig.maxHeight, this.estimateDropdownHeight());
539
- var offset = 20; // 여유 공간
511
+ const triggerRect = this.config.triggerElement.getBoundingClientRect();
512
+ const viewportHeight = window.innerHeight;
513
+ const dropdownHeight = Math.min(this.config.renderConfig.maxHeight, this.estimateDropdownHeight());
514
+ const offset = 20; // 여유 공간
540
515
  // 아래쪽 공간이 충분한지 확인
541
- var spaceBelow = viewportHeight - triggerRect.bottom;
516
+ const spaceBelow = viewportHeight - triggerRect.bottom;
542
517
  if (spaceBelow < dropdownHeight + offset) {
543
518
  return {
544
519
  direction: 'up',
@@ -550,100 +525,98 @@ var UnifiedBoxController = exports.UnifiedBoxController = /** @class */function
550
525
  maxHeight: this.config.renderConfig.maxHeight
551
526
  };
552
527
  }
553
- };
528
+ }
554
529
  /**
555
530
  * 드롭다운 예상 높이 계산
556
531
  */
557
- UnifiedBoxController.prototype.estimateDropdownHeight = function () {
558
- var itemHeight = 40; // 대략적인 옵션 항목 높이
559
- var itemCount = this.config.model.getState().filteredOptions.length || this.config.model.getState().options.length;
532
+ estimateDropdownHeight() {
533
+ const itemHeight = 40; // 대략적인 옵션 항목 높이
534
+ const itemCount = this.config.model.getState().filteredOptions.length || this.config.model.getState().options.length;
560
535
  return Math.min(itemCount * itemHeight, this.config.renderConfig.maxHeight);
561
- };
536
+ }
562
537
  /**
563
538
  * 드롭다운 세부 위치 조정 (뷰포트 경계 처리)
564
539
  */
565
- UnifiedBoxController.prototype.adjustDropdownPositionDetails = function (dropdownElement) {
566
- var dropdownRect = dropdownElement.getBoundingClientRect();
567
- var viewportWidth = window.innerWidth;
568
- var viewportHeight = window.innerHeight;
540
+ adjustDropdownPositionDetails(dropdownElement) {
541
+ const dropdownRect = dropdownElement.getBoundingClientRect();
542
+ const viewportWidth = window.innerWidth;
543
+ const viewportHeight = window.innerHeight;
569
544
  // 좌우 위치 조정
570
545
  if (dropdownRect.right > viewportWidth) {
571
- var overflow = dropdownRect.right - viewportWidth;
572
- var currentLeft = parseInt(dropdownElement.style.left || '0');
573
- dropdownElement.style.left = "".concat(currentLeft - overflow - 10, "px");
546
+ const overflow = dropdownRect.right - viewportWidth;
547
+ const currentLeft = parseInt(dropdownElement.style.left || '0');
548
+ dropdownElement.style.left = `${currentLeft - overflow - 10}px`;
574
549
  }
575
550
  if (dropdownRect.left < 0) {
576
551
  dropdownElement.style.left = '10px';
577
552
  }
578
553
  // 상하 위치 조정 (이미 up/down 방향이 결정된 후 미세 조정)
579
554
  if (dropdownRect.bottom > viewportHeight) {
580
- var overflow = dropdownRect.bottom - viewportHeight;
581
- var currentMaxHeight = parseInt(dropdownElement.style.maxHeight || String(this.config.renderConfig.maxHeight));
582
- dropdownElement.style.maxHeight = "".concat(currentMaxHeight - overflow - 10, "px");
555
+ const overflow = dropdownRect.bottom - viewportHeight;
556
+ const currentMaxHeight = parseInt(dropdownElement.style.maxHeight || String(this.config.renderConfig.maxHeight));
557
+ dropdownElement.style.maxHeight = `${currentMaxHeight - overflow - 10}px`;
583
558
  }
584
- };
559
+ }
585
560
  /**
586
561
  * 스크롤 바닥 감지 활성화
587
562
  */
588
- UnifiedBoxController.prototype.enableScrollBottomDetection = function () {
589
- var _this = this;
563
+ enableScrollBottomDetection() {
590
564
  if (!this.config.onScrollBottom) return;
591
565
  // 이미 리스너가 등록되어 있으면 중복 등록 방지
592
566
  if (this.scrollBottomHandler) return;
593
- var optionsList = this.config.dropdownElement.querySelector('.ncua-select-dropdown__options');
567
+ const optionsList = this.config.dropdownElement.querySelector('.ncua-select-dropdown__options');
594
568
  if (!optionsList) return;
595
- this.scrollBottomHandler = function (e) {
596
- var _a, _b;
597
- var target = e.target;
598
- var scrollTop = target.scrollTop;
599
- var scrollHeight = target.scrollHeight;
600
- var clientHeight = target.clientHeight;
569
+ this.scrollBottomHandler = e => {
570
+ const target = e.target;
571
+ const scrollTop = target.scrollTop;
572
+ const scrollHeight = target.scrollHeight;
573
+ const clientHeight = target.clientHeight;
601
574
  // 바닥에서 10px 이내에 도달했을 때
602
- var threshold = 10;
603
- var isAtBottom = scrollTop + clientHeight >= scrollHeight - threshold;
575
+ const threshold = 10;
576
+ const isAtBottom = scrollTop + clientHeight >= scrollHeight - threshold;
604
577
  if (isAtBottom) {
605
- var now = Date.now();
578
+ const now = Date.now();
606
579
  // 500ms 디바운스 (중복 호출 방지)
607
- if (now - _this.lastScrollBottomTime > 100) {
608
- _this.lastScrollBottomTime = now;
609
- (_b = (_a = _this.config).onScrollBottom) === null || _b === void 0 ? void 0 : _b.call(_a);
580
+ if (now - this.lastScrollBottomTime > 100) {
581
+ this.lastScrollBottomTime = now;
582
+ this.config.onScrollBottom?.();
610
583
  }
611
584
  }
612
585
  };
613
586
  optionsList.addEventListener('scroll', this.scrollBottomHandler);
614
- };
587
+ }
615
588
  /**
616
589
  * 스크롤 바닥 감지 비활성화
617
590
  */
618
- UnifiedBoxController.prototype.disableScrollBottomDetection = function () {
591
+ disableScrollBottomDetection() {
619
592
  if (this.scrollBottomHandler) {
620
- var optionsList = this.config.dropdownElement.querySelector('.ncua-select-dropdown__options');
593
+ const optionsList = this.config.dropdownElement.querySelector('.ncua-select-dropdown__options');
621
594
  if (optionsList) {
622
595
  optionsList.removeEventListener('scroll', this.scrollBottomHandler);
623
596
  }
624
597
  this.scrollBottomHandler = undefined;
625
598
  }
626
- };
599
+ }
627
600
  /**
628
601
  * disabled 상태 설정
629
602
  */
630
- UnifiedBoxController.prototype.setDisabled = function (disabled) {
603
+ setDisabled(disabled) {
631
604
  this.config.disabled = disabled;
632
605
  // disabled로 설정될 때 드롭다운이 열려있으면 닫기
633
606
  if (disabled && this.isOpen) {
634
607
  this.close();
635
608
  }
636
- };
609
+ }
637
610
  /**
638
611
  * 정리
639
612
  */
640
- UnifiedBoxController.prototype.destroy = function () {
613
+ destroy() {
641
614
  this.config.model.removeListener(this);
642
615
  this.disableOutsideClick();
643
616
  this.disableScrollLock();
644
617
  this.removeOptionEventHandlers();
645
618
  this.disableScrollBottomDetection(); // 스크롤 감지 정리
646
619
  this.config.triggerElement.removeEventListener('keydown', this.keyDownHandler);
647
- };
648
- return UnifiedBoxController;
649
- }();
620
+ }
621
+ }
622
+ exports.UnifiedBoxController = UnifiedBoxController;