@ncds/ui-admin 1.8.2 → 1.8.3

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 (556) hide show
  1. package/dist/cjs/assets/scripts/slider.js +26 -18
  2. package/dist/cjs/src/components/{button → action/button}/Button.js +2 -2
  3. package/dist/cjs/src/components/{button-group → action/button-group}/ButtonGroup.js +2 -2
  4. package/dist/cjs/src/components/{badge → feedback-and-status/badge}/utils.js +2 -2
  5. package/dist/cjs/src/components/{empty-state → feedback-and-status/empty-state}/EmptyState.js +1 -1
  6. package/dist/cjs/src/components/{tag → feedback-and-status/tag}/Tag.js +2 -2
  7. package/dist/cjs/src/components/{combo-box → forms-and-input/combo-box}/ComboBox.js +6 -6
  8. package/dist/cjs/src/components/{date-picker → forms-and-input/date-picker}/DatePicker.js +14 -12
  9. package/dist/cjs/src/components/{file-input → forms-and-input/file-input}/FileInput.js +3 -3
  10. package/dist/cjs/src/components/{image-file-input → forms-and-input/image-file-input}/ImageFileInput.js +3 -3
  11. package/dist/cjs/src/components/{image-file-input → forms-and-input/image-file-input}/components/ImagePreview.js +1 -1
  12. package/dist/cjs/src/components/{input-base → forms-and-input/input-base}/InputBase.js +3 -3
  13. package/dist/cjs/src/components/{number-input → forms-and-input/number-input}/NumberInput.js +2 -2
  14. package/dist/cjs/src/components/{range-date-picker-with-buttons → forms-and-input/range-date-picker-with-buttons}/RangeDatePickerWithButtons.js +3 -3
  15. package/dist/cjs/src/components/{select → forms-and-input/select}/Select.js +1 -1
  16. package/dist/cjs/src/components/{select-box → forms-and-input/select-box}/SelectBox.js +6 -6
  17. package/dist/cjs/src/components/{slider → forms-and-input/slider}/Slider.js +1 -1
  18. package/dist/cjs/src/components/{textarea → forms-and-input/textarea}/Textarea.js +2 -2
  19. package/dist/cjs/src/components/index.js +173 -173
  20. package/dist/cjs/src/components/{horizontal-tab → navigation/horizontal-tab}/HorizontalTab.js +1 -1
  21. package/dist/cjs/src/components/{pagination → navigation/pagination}/NavButton.js +1 -1
  22. package/dist/cjs/src/components/{vertical-tab → navigation/vertical-tab}/VerticalTab.js +2 -2
  23. package/dist/cjs/src/components/overlays/dropdown/Dropdown.js +453 -0
  24. package/dist/cjs/src/components/overlays/dropdown/__tests__/utils.test.js +225 -0
  25. package/dist/cjs/src/components/overlays/dropdown/utils.js +96 -0
  26. package/dist/cjs/src/components/{modal → overlays/modal}/Modal.js +2 -2
  27. package/dist/cjs/src/components/{notification → overlays/notification}/FloatingNotification.js +5 -5
  28. package/dist/cjs/src/components/{notification → overlays/notification}/FullWidthNotification.js +1 -1
  29. package/dist/cjs/src/components/{notification → overlays/notification}/MessageNotification.js +3 -3
  30. package/dist/cjs/src/components/{tooltip → overlays/tooltip}/Tooltip.js +1 -1
  31. package/dist/cjs/src/components/select-dropdown/SelectDropdown.js +1 -1
  32. package/dist/cjs/src/components/tab/TabButton.js +1 -1
  33. package/dist/cjs/vitest.config.js +1 -1
  34. package/dist/esm/assets/scripts/slider.js +26 -18
  35. package/dist/esm/src/components/{button → action/button}/Button.js +2 -2
  36. package/dist/esm/src/components/{button-group → action/button-group}/ButtonGroup.js +2 -2
  37. package/dist/esm/src/components/{badge → feedback-and-status/badge}/utils.js +2 -2
  38. package/dist/esm/src/components/{empty-state → feedback-and-status/empty-state}/EmptyState.js +1 -1
  39. package/dist/esm/src/components/{tag → feedback-and-status/tag}/Tag.js +2 -2
  40. package/dist/esm/src/components/{combo-box → forms-and-input/combo-box}/ComboBox.js +6 -6
  41. package/dist/esm/src/components/{date-picker → forms-and-input/date-picker}/DatePicker.js +14 -12
  42. package/dist/esm/src/components/{file-input → forms-and-input/file-input}/FileInput.js +3 -3
  43. package/dist/esm/src/components/{image-file-input → forms-and-input/image-file-input}/ImageFileInput.js +3 -3
  44. package/dist/esm/src/components/{image-file-input → forms-and-input/image-file-input}/components/ImagePreview.js +1 -1
  45. package/dist/esm/src/components/{input-base → forms-and-input/input-base}/InputBase.js +3 -3
  46. package/dist/esm/src/components/{number-input → forms-and-input/number-input}/NumberInput.js +2 -2
  47. package/dist/esm/src/components/{range-date-picker-with-buttons → forms-and-input/range-date-picker-with-buttons}/RangeDatePickerWithButtons.js +3 -3
  48. package/dist/esm/src/components/{select → forms-and-input/select}/Select.js +1 -1
  49. package/dist/esm/src/components/{select-box → forms-and-input/select-box}/SelectBox.js +6 -6
  50. package/dist/esm/src/components/{slider → forms-and-input/slider}/Slider.js +1 -1
  51. package/dist/esm/src/components/{textarea → forms-and-input/textarea}/Textarea.js +2 -2
  52. package/dist/esm/src/components/index.js +51 -42
  53. package/dist/esm/src/components/{horizontal-tab → navigation/horizontal-tab}/HorizontalTab.js +1 -1
  54. package/dist/esm/src/components/{pagination → navigation/pagination}/NavButton.js +1 -1
  55. package/dist/esm/src/components/{vertical-tab → navigation/vertical-tab}/VerticalTab.js +2 -2
  56. package/dist/esm/src/components/overlays/dropdown/Dropdown.js +446 -0
  57. package/dist/esm/src/components/overlays/dropdown/__tests__/utils.test.js +223 -0
  58. package/dist/esm/src/components/overlays/dropdown/utils.js +86 -0
  59. package/dist/esm/src/components/{modal → overlays/modal}/Modal.js +2 -2
  60. package/dist/esm/src/components/{notification → overlays/notification}/FloatingNotification.js +5 -5
  61. package/dist/esm/src/components/{notification → overlays/notification}/FullWidthNotification.js +1 -1
  62. package/dist/esm/src/components/{notification → overlays/notification}/MessageNotification.js +3 -3
  63. package/dist/esm/src/components/{tooltip → overlays/tooltip}/Tooltip.js +1 -1
  64. package/dist/esm/src/components/select-dropdown/SelectDropdown.js +1 -1
  65. package/dist/esm/src/components/tab/TabButton.js +1 -1
  66. package/dist/esm/vitest.config.js +1 -1
  67. package/dist/temp/assets/scripts/slider.js +26 -18
  68. package/dist/{types/src/components → temp/src/components/action}/button/Button.d.ts +3 -3
  69. package/dist/temp/src/components/{button → action/button}/Button.js +2 -2
  70. package/dist/{types/src/components → temp/src/components/action}/button/ButtonCloseX.d.ts +1 -1
  71. package/dist/{types/src/components → temp/src/components/action}/button/ButtonStepper.d.ts +1 -1
  72. package/dist/{types/src/components → temp/src/components/action}/button-group/ButtonGroup.d.ts +2 -2
  73. package/dist/temp/src/components/{button-group → action/button-group}/ButtonGroup.js +2 -2
  74. package/dist/temp/src/components/{badge → feedback-and-status/badge}/Badge.d.ts +3 -3
  75. package/dist/temp/src/components/{badge → feedback-and-status/badge}/utils.d.ts +1 -1
  76. package/dist/temp/src/components/{badge → feedback-and-status/badge}/utils.js +2 -2
  77. package/dist/temp/src/components/{badge-group → feedback-and-status/badge-group}/BadgeGroup.d.ts +3 -3
  78. package/dist/{types/src/components → temp/src/components/feedback-and-status}/empty-state/EmptyState.d.ts +1 -1
  79. package/dist/temp/src/components/{empty-state → feedback-and-status/empty-state}/EmptyState.js +1 -1
  80. package/dist/temp/src/components/{tag → feedback-and-status/tag}/Tag.d.ts +2 -2
  81. package/dist/temp/src/components/{tag → feedback-and-status/tag}/Tag.js +2 -2
  82. package/dist/{types/src/components → temp/src/components/forms-and-input}/checkbox/CheckboxInput.d.ts +1 -1
  83. package/dist/temp/src/components/{combo-box → forms-and-input/combo-box}/ComboBox.d.ts +2 -2
  84. package/dist/temp/src/components/{combo-box → forms-and-input/combo-box}/ComboBox.js +6 -6
  85. package/dist/temp/src/components/{date-picker → forms-and-input/date-picker}/CustomInput.d.ts +1 -1
  86. package/dist/{types/src/components → temp/src/components/forms-and-input}/date-picker/DatePicker.d.ts +1 -1
  87. package/dist/temp/src/components/{date-picker → forms-and-input/date-picker}/DatePicker.js +14 -13
  88. package/dist/temp/src/components/{file-input → forms-and-input/file-input}/FileInput.js +3 -3
  89. package/dist/temp/src/components/{image-file-input → forms-and-input/image-file-input}/ImageFileInput.js +3 -3
  90. package/dist/temp/src/components/{image-file-input → forms-and-input/image-file-input}/components/ImagePreview.js +1 -1
  91. package/dist/temp/src/components/{input-base → forms-and-input/input-base}/InputBase.d.ts +3 -3
  92. package/dist/temp/src/components/{input-base → forms-and-input/input-base}/InputBase.js +3 -3
  93. package/dist/temp/src/components/{number-input → forms-and-input/number-input}/NumberInput.js +2 -2
  94. package/dist/temp/src/components/{radio → forms-and-input/radio}/RadioInput.d.ts +1 -1
  95. package/dist/temp/src/components/{range-date-picker-with-buttons → forms-and-input/range-date-picker-with-buttons}/RangeDatePickerWithButtons.d.ts +1 -1
  96. package/dist/temp/src/components/{range-date-picker-with-buttons → forms-and-input/range-date-picker-with-buttons}/RangeDatePickerWithButtons.js +3 -3
  97. package/dist/temp/src/components/{select → forms-and-input/select}/Select.d.ts +2 -2
  98. package/dist/temp/src/components/{select → forms-and-input/select}/Select.js +1 -1
  99. package/dist/temp/src/components/{select-box → forms-and-input/select-box}/SelectBox.d.ts +2 -2
  100. package/dist/temp/src/components/{select-box → forms-and-input/select-box}/SelectBox.js +6 -6
  101. package/dist/temp/src/components/{slider → forms-and-input/slider}/Slider.d.ts +1 -1
  102. package/dist/temp/src/components/{slider → forms-and-input/slider}/Slider.js +1 -1
  103. package/dist/{types/src/components → temp/src/components/forms-and-input}/switch/Switch.d.ts +1 -1
  104. package/dist/{types/src/components → temp/src/components/forms-and-input}/textarea/Textarea.d.ts +1 -1
  105. package/dist/temp/src/components/{textarea → forms-and-input/textarea}/Textarea.js +2 -2
  106. package/dist/temp/src/components/{dot → image-and-icons/dot}/Dot.d.ts +2 -2
  107. package/dist/temp/src/components/{featured-icon → image-and-icons/featured-icon}/FeaturedIcon.d.ts +1 -1
  108. package/dist/temp/src/components/index.d.ts +41 -41
  109. package/dist/temp/src/components/index.js +50 -41
  110. package/dist/temp/src/components/{horizontal-tab → navigation/horizontal-tab}/HorizontalTab.d.ts +1 -1
  111. package/dist/temp/src/components/{horizontal-tab → navigation/horizontal-tab}/HorizontalTab.js +1 -1
  112. package/dist/temp/src/components/{pagination → navigation/pagination}/NavButton.d.ts +1 -1
  113. package/dist/temp/src/components/{pagination → navigation/pagination}/NavButton.js +1 -1
  114. package/dist/temp/src/components/{vertical-tab → navigation/vertical-tab}/VerticalTab.d.ts +1 -1
  115. package/dist/temp/src/components/{vertical-tab → navigation/vertical-tab}/VerticalTab.js +2 -2
  116. package/dist/temp/src/components/{dropdown → overlays/dropdown}/Dropdown.d.ts +19 -6
  117. package/dist/temp/src/components/overlays/dropdown/Dropdown.js +273 -0
  118. package/dist/temp/src/components/overlays/dropdown/__tests__/utils.test.d.ts +1 -0
  119. package/dist/temp/src/components/overlays/dropdown/__tests__/utils.test.js +122 -0
  120. package/dist/temp/src/components/overlays/dropdown/utils.d.ts +32 -0
  121. package/dist/temp/src/components/overlays/dropdown/utils.js +89 -0
  122. package/dist/{types/src/components → temp/src/components/overlays}/modal/Modal.d.ts +2 -2
  123. package/dist/temp/src/components/{modal → overlays/modal}/Modal.js +2 -2
  124. package/dist/temp/src/components/{notification → overlays/notification}/FloatingNotification.js +5 -5
  125. package/dist/temp/src/components/{notification → overlays/notification}/FullWidthNotification.js +1 -1
  126. package/dist/temp/src/components/{notification → overlays/notification}/MessageNotification.d.ts +1 -1
  127. package/dist/temp/src/components/{notification → overlays/notification}/MessageNotification.js +3 -3
  128. package/dist/temp/src/components/{notification → overlays/notification}/Notification.d.ts +3 -3
  129. package/dist/temp/src/components/{tooltip → overlays/tooltip}/Tooltip.js +1 -1
  130. package/dist/temp/src/components/select-dropdown/SelectDropdown.js +1 -1
  131. package/dist/temp/src/components/tab/TabButton.d.ts +1 -1
  132. package/dist/temp/src/components/tab/TabButton.js +1 -1
  133. package/dist/temp/src/types/component-meta.d.ts +2 -2
  134. package/dist/temp/vitest.config.js +5 -1
  135. package/dist/{temp/src/components → types/src/components/action}/button/Button.d.ts +3 -3
  136. package/dist/{temp/src/components → types/src/components/action}/button/ButtonCloseX.d.ts +1 -1
  137. package/dist/{temp/src/components → types/src/components/action}/button/ButtonStepper.d.ts +1 -1
  138. package/dist/{temp/src/components → types/src/components/action}/button-group/ButtonGroup.d.ts +2 -2
  139. package/dist/types/src/components/{badge → feedback-and-status/badge}/Badge.d.ts +3 -3
  140. package/dist/types/src/components/{badge → feedback-and-status/badge}/utils.d.ts +1 -1
  141. package/dist/types/src/components/{badge-group → feedback-and-status/badge-group}/BadgeGroup.d.ts +3 -3
  142. package/dist/{temp/src/components → types/src/components/feedback-and-status}/empty-state/EmptyState.d.ts +1 -1
  143. package/dist/types/src/components/{tag → feedback-and-status/tag}/Tag.d.ts +2 -2
  144. package/dist/{temp/src/components → types/src/components/forms-and-input}/checkbox/CheckboxInput.d.ts +1 -1
  145. package/dist/types/src/components/{combo-box → forms-and-input/combo-box}/ComboBox.d.ts +2 -2
  146. package/dist/types/src/components/{date-picker → forms-and-input/date-picker}/CustomInput.d.ts +1 -1
  147. package/dist/{temp/src/components → types/src/components/forms-and-input}/date-picker/DatePicker.d.ts +1 -1
  148. package/dist/types/src/components/{input-base → forms-and-input/input-base}/InputBase.d.ts +3 -3
  149. package/dist/types/src/components/{radio → forms-and-input/radio}/RadioInput.d.ts +1 -1
  150. package/dist/types/src/components/{range-date-picker-with-buttons → forms-and-input/range-date-picker-with-buttons}/RangeDatePickerWithButtons.d.ts +1 -1
  151. package/dist/types/src/components/{select → forms-and-input/select}/Select.d.ts +2 -2
  152. package/dist/types/src/components/{select-box → forms-and-input/select-box}/SelectBox.d.ts +2 -2
  153. package/dist/types/src/components/{slider → forms-and-input/slider}/Slider.d.ts +1 -1
  154. package/dist/{temp/src/components → types/src/components/forms-and-input}/switch/Switch.d.ts +1 -1
  155. package/dist/{temp/src/components → types/src/components/forms-and-input}/textarea/Textarea.d.ts +1 -1
  156. package/dist/types/src/components/{dot → image-and-icons/dot}/Dot.d.ts +2 -2
  157. package/dist/types/src/components/{featured-icon → image-and-icons/featured-icon}/FeaturedIcon.d.ts +1 -1
  158. package/dist/types/src/components/index.d.ts +41 -41
  159. package/dist/types/src/components/{horizontal-tab → navigation/horizontal-tab}/HorizontalTab.d.ts +1 -1
  160. package/dist/types/src/components/{pagination → navigation/pagination}/NavButton.d.ts +1 -1
  161. package/dist/types/src/components/{vertical-tab → navigation/vertical-tab}/VerticalTab.d.ts +1 -1
  162. package/dist/types/src/components/{dropdown → overlays/dropdown}/Dropdown.d.ts +19 -6
  163. package/dist/types/src/components/overlays/dropdown/__tests__/utils.test.d.ts +1 -0
  164. package/dist/types/src/components/overlays/dropdown/utils.d.ts +32 -0
  165. package/dist/{temp/src/components → types/src/components/overlays}/modal/Modal.d.ts +2 -2
  166. package/dist/types/src/components/{notification → overlays/notification}/MessageNotification.d.ts +1 -1
  167. package/dist/types/src/components/{notification → overlays/notification}/Notification.d.ts +3 -3
  168. package/dist/types/src/components/tab/TabButton.d.ts +1 -1
  169. package/dist/types/src/types/component-meta.d.ts +2 -2
  170. package/dist/ui-admin/assets/styles/style.css +248 -131
  171. package/package.json +12 -8
  172. package/dist/cjs/src/components/dropdown/Dropdown.js +0 -164
  173. package/dist/esm/src/components/dropdown/Dropdown.js +0 -157
  174. package/dist/temp/src/components/dropdown/Dropdown.js +0 -74
  175. /package/dist/cjs/src/components/{button → action/button}/ButtonCloseX.js +0 -0
  176. /package/dist/cjs/src/components/{button → action/button}/ButtonStepper.js +0 -0
  177. /package/dist/cjs/src/components/{button → action/button}/index.js +0 -0
  178. /package/dist/cjs/src/components/{button-group → action/button-group}/index.js +0 -0
  179. /package/dist/cjs/src/components/{data-grid → data-display/data-grid}/DataGrid.js +0 -0
  180. /package/dist/cjs/src/components/{data-grid → data-display/data-grid}/DataGrid.types.js +0 -0
  181. /package/dist/cjs/src/components/{data-grid → data-display/data-grid}/index.js +0 -0
  182. /package/dist/cjs/src/components/{table → data-display/table}/Table.js +0 -0
  183. /package/dist/cjs/src/components/{table → data-display/table}/index.js +0 -0
  184. /package/dist/cjs/src/components/{progress-bar → data-display/table}/types.js +0 -0
  185. /package/dist/cjs/src/components/{badge → feedback-and-status/badge}/Badge.js +0 -0
  186. /package/dist/cjs/src/components/{badge → feedback-and-status/badge}/index.js +0 -0
  187. /package/dist/cjs/src/components/{badge-group → feedback-and-status/badge-group}/BadgeGroup.js +0 -0
  188. /package/dist/cjs/src/components/{badge-group → feedback-and-status/badge-group}/index.js +0 -0
  189. /package/dist/cjs/src/components/{carousel-arrow → feedback-and-status/carousel-arrow}/CarouselArrow.js +0 -0
  190. /package/dist/cjs/src/components/{carousel-arrow → feedback-and-status/carousel-arrow}/index.js +0 -0
  191. /package/dist/cjs/src/components/{carousel-number-group → feedback-and-status/carousel-number-group}/CarouselNumberGroup.js +0 -0
  192. /package/dist/cjs/src/components/{carousel-number-group → feedback-and-status/carousel-number-group}/index.js +0 -0
  193. /package/dist/cjs/src/components/{empty-state → feedback-and-status/empty-state}/index.js +0 -0
  194. /package/dist/cjs/src/components/{progress-bar → feedback-and-status/progress-bar}/ProgressBar.js +0 -0
  195. /package/dist/cjs/src/components/{progress-bar → feedback-and-status/progress-bar}/components/SegmentBar.js +0 -0
  196. /package/dist/cjs/src/components/{progress-bar → feedback-and-status/progress-bar}/components/SegmentLabels.js +0 -0
  197. /package/dist/cjs/src/components/{progress-bar → feedback-and-status/progress-bar}/components/index.js +0 -0
  198. /package/dist/cjs/src/components/{progress-bar → feedback-and-status/progress-bar}/hooks/index.js +0 -0
  199. /package/dist/cjs/src/components/{progress-bar → feedback-and-status/progress-bar}/hooks/useProgressBar.js +0 -0
  200. /package/dist/cjs/src/components/{progress-bar → feedback-and-status/progress-bar}/index.js +0 -0
  201. /package/dist/cjs/src/components/{table → feedback-and-status/progress-bar}/types.js +0 -0
  202. /package/dist/cjs/src/components/{progress-bar → feedback-and-status/progress-bar}/utils.js +0 -0
  203. /package/dist/cjs/src/components/{progress-circle → feedback-and-status/progress-circle}/ProgressCircle.js +0 -0
  204. /package/dist/cjs/src/components/{progress-circle → feedback-and-status/progress-circle}/index.js +0 -0
  205. /package/dist/cjs/src/components/{spinner → feedback-and-status/spinner}/Spinner.js +0 -0
  206. /package/dist/cjs/src/components/{spinner → feedback-and-status/spinner}/index.js +0 -0
  207. /package/dist/cjs/src/components/{tag → feedback-and-status/tag}/index.js +0 -0
  208. /package/dist/cjs/src/components/{checkbox → forms-and-input/checkbox}/Checkbox.js +0 -0
  209. /package/dist/cjs/src/components/{checkbox → forms-and-input/checkbox}/CheckboxInput.js +0 -0
  210. /package/dist/cjs/src/components/{checkbox → forms-and-input/checkbox}/index.js +0 -0
  211. /package/dist/cjs/src/components/{combo-box → forms-and-input/combo-box}/index.js +0 -0
  212. /package/dist/cjs/src/components/{date-picker → forms-and-input/date-picker}/CustomInput.js +0 -0
  213. /package/dist/cjs/src/components/{date-picker → forms-and-input/date-picker}/index.js +0 -0
  214. /package/dist/cjs/src/components/{date-picker → forms-and-input/date-picker}/utils.js +0 -0
  215. /package/dist/cjs/src/components/{file-input → forms-and-input/file-input}/index.js +0 -0
  216. /package/dist/cjs/src/components/{image-file-input → forms-and-input/image-file-input}/components/index.js +0 -0
  217. /package/dist/cjs/src/components/{image-file-input → forms-and-input/image-file-input}/index.js +0 -0
  218. /package/dist/cjs/src/components/{input-base → forms-and-input/input-base}/index.js +0 -0
  219. /package/dist/cjs/src/components/{number-input → forms-and-input/number-input}/index.js +0 -0
  220. /package/dist/cjs/src/components/{password-input → forms-and-input/password-input}/PasswordInput.js +0 -0
  221. /package/dist/cjs/src/components/{password-input → forms-and-input/password-input}/index.js +0 -0
  222. /package/dist/cjs/src/components/{radio → forms-and-input/radio}/Radio.js +0 -0
  223. /package/dist/cjs/src/components/{radio → forms-and-input/radio}/RadioInput.js +0 -0
  224. /package/dist/cjs/src/components/{radio → forms-and-input/radio}/index.js +0 -0
  225. /package/dist/cjs/src/components/{range-date-picker → forms-and-input/range-date-picker}/RangeDatePicker.js +0 -0
  226. /package/dist/cjs/src/components/{range-date-picker → forms-and-input/range-date-picker}/index.js +0 -0
  227. /package/dist/cjs/src/components/{range-date-picker-with-buttons → forms-and-input/range-date-picker-with-buttons}/index.js +0 -0
  228. /package/dist/cjs/src/components/{select → forms-and-input/select}/index.js +0 -0
  229. /package/dist/cjs/src/components/{select-box → forms-and-input/select-box}/index.js +0 -0
  230. /package/dist/cjs/src/components/{slider → forms-and-input/slider}/index.js +0 -0
  231. /package/dist/cjs/src/components/{switch → forms-and-input/switch}/Switch.js +0 -0
  232. /package/dist/cjs/src/components/{switch → forms-and-input/switch}/index.js +0 -0
  233. /package/dist/cjs/src/components/{textarea → forms-and-input/textarea}/index.js +0 -0
  234. /package/dist/cjs/src/components/{toggle → forms-and-input/toggle}/Toggle.js +0 -0
  235. /package/dist/cjs/src/components/{toggle → forms-and-input/toggle}/index.js +0 -0
  236. /package/dist/cjs/src/components/{dot → image-and-icons/dot}/Dot.js +0 -0
  237. /package/dist/cjs/src/components/{dot → image-and-icons/dot}/index.js +0 -0
  238. /package/dist/cjs/src/components/{featured-icon → image-and-icons/featured-icon}/FeaturedIcon.js +0 -0
  239. /package/dist/cjs/src/components/{featured-icon → image-and-icons/featured-icon}/index.js +0 -0
  240. /package/dist/cjs/src/components/{divider → layout/divider}/Divider.js +0 -0
  241. /package/dist/cjs/src/components/{divider → layout/divider}/index.js +0 -0
  242. /package/dist/cjs/src/components/{bread-crumb → navigation/bread-crumb}/BreadCrumb.js +0 -0
  243. /package/dist/cjs/src/components/{bread-crumb → navigation/bread-crumb}/index.js +0 -0
  244. /package/dist/cjs/src/components/{horizontal-tab → navigation/horizontal-tab}/index.js +0 -0
  245. /package/dist/cjs/src/components/{pagination → navigation/pagination}/Pagination.js +0 -0
  246. /package/dist/cjs/src/components/{pagination → navigation/pagination}/index.js +0 -0
  247. /package/dist/cjs/src/components/{vertical-tab → navigation/vertical-tab}/index.js +0 -0
  248. /package/dist/cjs/src/components/{dropdown → overlays/dropdown}/index.js +0 -0
  249. /package/dist/cjs/src/components/{modal → overlays/modal}/index.js +0 -0
  250. /package/dist/cjs/src/components/{notification → overlays/notification}/Notification.js +0 -0
  251. /package/dist/cjs/src/components/{notification → overlays/notification}/index.js +0 -0
  252. /package/dist/cjs/src/components/{tooltip → overlays/tooltip}/index.js +0 -0
  253. /package/dist/esm/src/components/{button → action/button}/ButtonCloseX.js +0 -0
  254. /package/dist/esm/src/components/{button → action/button}/ButtonStepper.js +0 -0
  255. /package/dist/esm/src/components/{button → action/button}/index.js +0 -0
  256. /package/dist/esm/src/components/{button-group → action/button-group}/index.js +0 -0
  257. /package/dist/esm/src/components/{data-grid → data-display/data-grid}/DataGrid.js +0 -0
  258. /package/dist/esm/src/components/{data-grid → data-display/data-grid}/DataGrid.types.js +0 -0
  259. /package/dist/esm/src/components/{data-grid → data-display/data-grid}/index.js +0 -0
  260. /package/dist/esm/src/components/{table → data-display/table}/Table.js +0 -0
  261. /package/dist/esm/src/components/{table → data-display/table}/index.js +0 -0
  262. /package/dist/esm/src/components/{progress-bar → data-display/table}/types.js +0 -0
  263. /package/dist/esm/src/components/{badge → feedback-and-status/badge}/Badge.js +0 -0
  264. /package/dist/esm/src/components/{badge → feedback-and-status/badge}/index.js +0 -0
  265. /package/dist/esm/src/components/{badge-group → feedback-and-status/badge-group}/BadgeGroup.js +0 -0
  266. /package/dist/esm/src/components/{badge-group → feedback-and-status/badge-group}/index.js +0 -0
  267. /package/dist/esm/src/components/{carousel-arrow → feedback-and-status/carousel-arrow}/CarouselArrow.js +0 -0
  268. /package/dist/esm/src/components/{carousel-arrow → feedback-and-status/carousel-arrow}/index.js +0 -0
  269. /package/dist/esm/src/components/{carousel-number-group → feedback-and-status/carousel-number-group}/CarouselNumberGroup.js +0 -0
  270. /package/dist/esm/src/components/{carousel-number-group → feedback-and-status/carousel-number-group}/index.js +0 -0
  271. /package/dist/esm/src/components/{empty-state → feedback-and-status/empty-state}/index.js +0 -0
  272. /package/dist/esm/src/components/{progress-bar → feedback-and-status/progress-bar}/ProgressBar.js +0 -0
  273. /package/dist/esm/src/components/{progress-bar → feedback-and-status/progress-bar}/components/SegmentBar.js +0 -0
  274. /package/dist/esm/src/components/{progress-bar → feedback-and-status/progress-bar}/components/SegmentLabels.js +0 -0
  275. /package/dist/esm/src/components/{progress-bar → feedback-and-status/progress-bar}/components/index.js +0 -0
  276. /package/dist/esm/src/components/{progress-bar → feedback-and-status/progress-bar}/hooks/index.js +0 -0
  277. /package/dist/esm/src/components/{progress-bar → feedback-and-status/progress-bar}/hooks/useProgressBar.js +0 -0
  278. /package/dist/esm/src/components/{progress-bar → feedback-and-status/progress-bar}/index.js +0 -0
  279. /package/dist/esm/src/components/{table → feedback-and-status/progress-bar}/types.js +0 -0
  280. /package/dist/esm/src/components/{progress-bar → feedback-and-status/progress-bar}/utils.js +0 -0
  281. /package/dist/esm/src/components/{progress-circle → feedback-and-status/progress-circle}/ProgressCircle.js +0 -0
  282. /package/dist/esm/src/components/{progress-circle → feedback-and-status/progress-circle}/index.js +0 -0
  283. /package/dist/esm/src/components/{spinner → feedback-and-status/spinner}/Spinner.js +0 -0
  284. /package/dist/esm/src/components/{spinner → feedback-and-status/spinner}/index.js +0 -0
  285. /package/dist/esm/src/components/{tag → feedback-and-status/tag}/index.js +0 -0
  286. /package/dist/esm/src/components/{checkbox → forms-and-input/checkbox}/Checkbox.js +0 -0
  287. /package/dist/esm/src/components/{checkbox → forms-and-input/checkbox}/CheckboxInput.js +0 -0
  288. /package/dist/esm/src/components/{checkbox → forms-and-input/checkbox}/index.js +0 -0
  289. /package/dist/esm/src/components/{combo-box → forms-and-input/combo-box}/index.js +0 -0
  290. /package/dist/esm/src/components/{date-picker → forms-and-input/date-picker}/CustomInput.js +0 -0
  291. /package/dist/esm/src/components/{date-picker → forms-and-input/date-picker}/index.js +0 -0
  292. /package/dist/esm/src/components/{date-picker → forms-and-input/date-picker}/utils.js +0 -0
  293. /package/dist/esm/src/components/{file-input → forms-and-input/file-input}/index.js +0 -0
  294. /package/dist/esm/src/components/{image-file-input → forms-and-input/image-file-input}/components/index.js +0 -0
  295. /package/dist/esm/src/components/{image-file-input → forms-and-input/image-file-input}/index.js +0 -0
  296. /package/dist/esm/src/components/{input-base → forms-and-input/input-base}/index.js +0 -0
  297. /package/dist/esm/src/components/{number-input → forms-and-input/number-input}/index.js +0 -0
  298. /package/dist/esm/src/components/{password-input → forms-and-input/password-input}/PasswordInput.js +0 -0
  299. /package/dist/esm/src/components/{password-input → forms-and-input/password-input}/index.js +0 -0
  300. /package/dist/esm/src/components/{radio → forms-and-input/radio}/Radio.js +0 -0
  301. /package/dist/esm/src/components/{radio → forms-and-input/radio}/RadioInput.js +0 -0
  302. /package/dist/esm/src/components/{radio → forms-and-input/radio}/index.js +0 -0
  303. /package/dist/esm/src/components/{range-date-picker → forms-and-input/range-date-picker}/RangeDatePicker.js +0 -0
  304. /package/dist/esm/src/components/{range-date-picker → forms-and-input/range-date-picker}/index.js +0 -0
  305. /package/dist/esm/src/components/{range-date-picker-with-buttons → forms-and-input/range-date-picker-with-buttons}/index.js +0 -0
  306. /package/dist/esm/src/components/{select → forms-and-input/select}/index.js +0 -0
  307. /package/dist/esm/src/components/{select-box → forms-and-input/select-box}/index.js +0 -0
  308. /package/dist/esm/src/components/{slider → forms-and-input/slider}/index.js +0 -0
  309. /package/dist/esm/src/components/{switch → forms-and-input/switch}/Switch.js +0 -0
  310. /package/dist/esm/src/components/{switch → forms-and-input/switch}/index.js +0 -0
  311. /package/dist/esm/src/components/{textarea → forms-and-input/textarea}/index.js +0 -0
  312. /package/dist/esm/src/components/{toggle → forms-and-input/toggle}/Toggle.js +0 -0
  313. /package/dist/esm/src/components/{toggle → forms-and-input/toggle}/index.js +0 -0
  314. /package/dist/esm/src/components/{dot → image-and-icons/dot}/Dot.js +0 -0
  315. /package/dist/esm/src/components/{dot → image-and-icons/dot}/index.js +0 -0
  316. /package/dist/esm/src/components/{featured-icon → image-and-icons/featured-icon}/FeaturedIcon.js +0 -0
  317. /package/dist/esm/src/components/{featured-icon → image-and-icons/featured-icon}/index.js +0 -0
  318. /package/dist/esm/src/components/{divider → layout/divider}/Divider.js +0 -0
  319. /package/dist/esm/src/components/{divider → layout/divider}/index.js +0 -0
  320. /package/dist/esm/src/components/{bread-crumb → navigation/bread-crumb}/BreadCrumb.js +0 -0
  321. /package/dist/esm/src/components/{bread-crumb → navigation/bread-crumb}/index.js +0 -0
  322. /package/dist/esm/src/components/{horizontal-tab → navigation/horizontal-tab}/index.js +0 -0
  323. /package/dist/esm/src/components/{pagination → navigation/pagination}/Pagination.js +0 -0
  324. /package/dist/esm/src/components/{pagination → navigation/pagination}/index.js +0 -0
  325. /package/dist/esm/src/components/{vertical-tab → navigation/vertical-tab}/index.js +0 -0
  326. /package/dist/esm/src/components/{dropdown → overlays/dropdown}/index.js +0 -0
  327. /package/dist/esm/src/components/{modal → overlays/modal}/index.js +0 -0
  328. /package/dist/esm/src/components/{notification → overlays/notification}/Notification.js +0 -0
  329. /package/dist/esm/src/components/{notification → overlays/notification}/index.js +0 -0
  330. /package/dist/esm/src/components/{tooltip → overlays/tooltip}/index.js +0 -0
  331. /package/dist/temp/src/components/{button → action/button}/ButtonCloseX.js +0 -0
  332. /package/dist/temp/src/components/{button → action/button}/ButtonStepper.js +0 -0
  333. /package/dist/temp/src/components/{button → action/button}/index.d.ts +0 -0
  334. /package/dist/temp/src/components/{button → action/button}/index.js +0 -0
  335. /package/dist/temp/src/components/{button-group → action/button-group}/index.d.ts +0 -0
  336. /package/dist/temp/src/components/{button-group → action/button-group}/index.js +0 -0
  337. /package/dist/temp/src/components/{data-grid → data-display/data-grid}/DataGrid.d.ts +0 -0
  338. /package/dist/temp/src/components/{data-grid → data-display/data-grid}/DataGrid.js +0 -0
  339. /package/dist/temp/src/components/{data-grid → data-display/data-grid}/DataGrid.types.d.ts +0 -0
  340. /package/dist/temp/src/components/{data-grid → data-display/data-grid}/DataGrid.types.js +0 -0
  341. /package/dist/temp/src/components/{data-grid → data-display/data-grid}/index.d.ts +0 -0
  342. /package/dist/temp/src/components/{data-grid → data-display/data-grid}/index.js +0 -0
  343. /package/dist/temp/src/components/{table → data-display/table}/Table.d.ts +0 -0
  344. /package/dist/temp/src/components/{table → data-display/table}/Table.js +0 -0
  345. /package/dist/temp/src/components/{table → data-display/table}/index.d.ts +0 -0
  346. /package/dist/temp/src/components/{table → data-display/table}/index.js +0 -0
  347. /package/dist/temp/src/components/{table → data-display/table}/types.d.ts +0 -0
  348. /package/dist/temp/src/components/{progress-bar → data-display/table}/types.js +0 -0
  349. /package/dist/temp/src/components/{badge → feedback-and-status/badge}/Badge.js +0 -0
  350. /package/dist/temp/src/components/{badge → feedback-and-status/badge}/index.d.ts +0 -0
  351. /package/dist/temp/src/components/{badge → feedback-and-status/badge}/index.js +0 -0
  352. /package/dist/temp/src/components/{badge-group → feedback-and-status/badge-group}/BadgeGroup.js +0 -0
  353. /package/dist/temp/src/components/{badge-group → feedback-and-status/badge-group}/index.d.ts +0 -0
  354. /package/dist/temp/src/components/{badge-group → feedback-and-status/badge-group}/index.js +0 -0
  355. /package/dist/temp/src/components/{carousel-arrow → feedback-and-status/carousel-arrow}/CarouselArrow.d.ts +0 -0
  356. /package/dist/temp/src/components/{carousel-arrow → feedback-and-status/carousel-arrow}/CarouselArrow.js +0 -0
  357. /package/dist/temp/src/components/{carousel-arrow → feedback-and-status/carousel-arrow}/index.d.ts +0 -0
  358. /package/dist/temp/src/components/{carousel-arrow → feedback-and-status/carousel-arrow}/index.js +0 -0
  359. /package/dist/temp/src/components/{carousel-number-group → feedback-and-status/carousel-number-group}/CarouselNumberGroup.d.ts +0 -0
  360. /package/dist/temp/src/components/{carousel-number-group → feedback-and-status/carousel-number-group}/CarouselNumberGroup.js +0 -0
  361. /package/dist/temp/src/components/{carousel-number-group → feedback-and-status/carousel-number-group}/index.d.ts +0 -0
  362. /package/dist/temp/src/components/{carousel-number-group → feedback-and-status/carousel-number-group}/index.js +0 -0
  363. /package/dist/temp/src/components/{empty-state → feedback-and-status/empty-state}/index.d.ts +0 -0
  364. /package/dist/temp/src/components/{empty-state → feedback-and-status/empty-state}/index.js +0 -0
  365. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/ProgressBar.d.ts +0 -0
  366. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/ProgressBar.js +0 -0
  367. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/components/SegmentBar.d.ts +0 -0
  368. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/components/SegmentBar.js +0 -0
  369. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/components/SegmentLabels.d.ts +0 -0
  370. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/components/SegmentLabels.js +0 -0
  371. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/components/index.d.ts +0 -0
  372. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/components/index.js +0 -0
  373. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/hooks/index.d.ts +0 -0
  374. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/hooks/index.js +0 -0
  375. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/hooks/useProgressBar.d.ts +0 -0
  376. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/hooks/useProgressBar.js +0 -0
  377. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/index.d.ts +0 -0
  378. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/index.js +0 -0
  379. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/types.d.ts +0 -0
  380. /package/dist/temp/src/components/{table → feedback-and-status/progress-bar}/types.js +0 -0
  381. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/utils.d.ts +0 -0
  382. /package/dist/temp/src/components/{progress-bar → feedback-and-status/progress-bar}/utils.js +0 -0
  383. /package/dist/temp/src/components/{progress-circle → feedback-and-status/progress-circle}/ProgressCircle.d.ts +0 -0
  384. /package/dist/temp/src/components/{progress-circle → feedback-and-status/progress-circle}/ProgressCircle.js +0 -0
  385. /package/dist/temp/src/components/{progress-circle → feedback-and-status/progress-circle}/index.d.ts +0 -0
  386. /package/dist/temp/src/components/{progress-circle → feedback-and-status/progress-circle}/index.js +0 -0
  387. /package/dist/temp/src/components/{spinner → feedback-and-status/spinner}/Spinner.d.ts +0 -0
  388. /package/dist/temp/src/components/{spinner → feedback-and-status/spinner}/Spinner.js +0 -0
  389. /package/dist/temp/src/components/{spinner → feedback-and-status/spinner}/index.d.ts +0 -0
  390. /package/dist/temp/src/components/{spinner → feedback-and-status/spinner}/index.js +0 -0
  391. /package/dist/temp/src/components/{tag → feedback-and-status/tag}/index.d.ts +0 -0
  392. /package/dist/temp/src/components/{tag → feedback-and-status/tag}/index.js +0 -0
  393. /package/dist/temp/src/components/{checkbox → forms-and-input/checkbox}/Checkbox.d.ts +0 -0
  394. /package/dist/temp/src/components/{checkbox → forms-and-input/checkbox}/Checkbox.js +0 -0
  395. /package/dist/temp/src/components/{checkbox → forms-and-input/checkbox}/CheckboxInput.js +0 -0
  396. /package/dist/temp/src/components/{checkbox → forms-and-input/checkbox}/index.d.ts +0 -0
  397. /package/dist/temp/src/components/{checkbox → forms-and-input/checkbox}/index.js +0 -0
  398. /package/dist/temp/src/components/{combo-box → forms-and-input/combo-box}/index.d.ts +0 -0
  399. /package/dist/temp/src/components/{combo-box → forms-and-input/combo-box}/index.js +0 -0
  400. /package/dist/temp/src/components/{date-picker → forms-and-input/date-picker}/CustomInput.js +0 -0
  401. /package/dist/temp/src/components/{date-picker → forms-and-input/date-picker}/index.d.ts +0 -0
  402. /package/dist/temp/src/components/{date-picker → forms-and-input/date-picker}/index.js +0 -0
  403. /package/dist/temp/src/components/{date-picker → forms-and-input/date-picker}/utils.d.ts +0 -0
  404. /package/dist/temp/src/components/{date-picker → forms-and-input/date-picker}/utils.js +0 -0
  405. /package/dist/temp/src/components/{file-input → forms-and-input/file-input}/FileInput.d.ts +0 -0
  406. /package/dist/temp/src/components/{file-input → forms-and-input/file-input}/index.d.ts +0 -0
  407. /package/dist/temp/src/components/{file-input → forms-and-input/file-input}/index.js +0 -0
  408. /package/dist/temp/src/components/{image-file-input → forms-and-input/image-file-input}/ImageFileInput.d.ts +0 -0
  409. /package/dist/temp/src/components/{image-file-input → forms-and-input/image-file-input}/components/ImagePreview.d.ts +0 -0
  410. /package/dist/temp/src/components/{image-file-input → forms-and-input/image-file-input}/components/index.d.ts +0 -0
  411. /package/dist/temp/src/components/{image-file-input → forms-and-input/image-file-input}/components/index.js +0 -0
  412. /package/dist/temp/src/components/{image-file-input → forms-and-input/image-file-input}/index.d.ts +0 -0
  413. /package/dist/temp/src/components/{image-file-input → forms-and-input/image-file-input}/index.js +0 -0
  414. /package/dist/temp/src/components/{input-base → forms-and-input/input-base}/index.d.ts +0 -0
  415. /package/dist/temp/src/components/{input-base → forms-and-input/input-base}/index.js +0 -0
  416. /package/dist/temp/src/components/{number-input → forms-and-input/number-input}/NumberInput.d.ts +0 -0
  417. /package/dist/temp/src/components/{number-input → forms-and-input/number-input}/index.d.ts +0 -0
  418. /package/dist/temp/src/components/{number-input → forms-and-input/number-input}/index.js +0 -0
  419. /package/dist/temp/src/components/{password-input → forms-and-input/password-input}/PasswordInput.d.ts +0 -0
  420. /package/dist/temp/src/components/{password-input → forms-and-input/password-input}/PasswordInput.js +0 -0
  421. /package/dist/temp/src/components/{password-input → forms-and-input/password-input}/index.d.ts +0 -0
  422. /package/dist/temp/src/components/{password-input → forms-and-input/password-input}/index.js +0 -0
  423. /package/dist/temp/src/components/{radio → forms-and-input/radio}/Radio.d.ts +0 -0
  424. /package/dist/temp/src/components/{radio → forms-and-input/radio}/Radio.js +0 -0
  425. /package/dist/temp/src/components/{radio → forms-and-input/radio}/RadioInput.js +0 -0
  426. /package/dist/temp/src/components/{radio → forms-and-input/radio}/index.d.ts +0 -0
  427. /package/dist/temp/src/components/{radio → forms-and-input/radio}/index.js +0 -0
  428. /package/dist/temp/src/components/{range-date-picker → forms-and-input/range-date-picker}/RangeDatePicker.d.ts +0 -0
  429. /package/dist/temp/src/components/{range-date-picker → forms-and-input/range-date-picker}/RangeDatePicker.js +0 -0
  430. /package/dist/temp/src/components/{range-date-picker → forms-and-input/range-date-picker}/index.d.ts +0 -0
  431. /package/dist/temp/src/components/{range-date-picker → forms-and-input/range-date-picker}/index.js +0 -0
  432. /package/dist/temp/src/components/{range-date-picker-with-buttons → forms-and-input/range-date-picker-with-buttons}/index.d.ts +0 -0
  433. /package/dist/temp/src/components/{range-date-picker-with-buttons → forms-and-input/range-date-picker-with-buttons}/index.js +0 -0
  434. /package/dist/temp/src/components/{select → forms-and-input/select}/index.d.ts +0 -0
  435. /package/dist/temp/src/components/{select → forms-and-input/select}/index.js +0 -0
  436. /package/dist/temp/src/components/{select-box → forms-and-input/select-box}/index.d.ts +0 -0
  437. /package/dist/temp/src/components/{select-box → forms-and-input/select-box}/index.js +0 -0
  438. /package/dist/temp/src/components/{slider → forms-and-input/slider}/index.d.ts +0 -0
  439. /package/dist/temp/src/components/{slider → forms-and-input/slider}/index.js +0 -0
  440. /package/dist/temp/src/components/{switch → forms-and-input/switch}/Switch.js +0 -0
  441. /package/dist/temp/src/components/{switch → forms-and-input/switch}/index.d.ts +0 -0
  442. /package/dist/temp/src/components/{switch → forms-and-input/switch}/index.js +0 -0
  443. /package/dist/temp/src/components/{textarea → forms-and-input/textarea}/index.d.ts +0 -0
  444. /package/dist/temp/src/components/{textarea → forms-and-input/textarea}/index.js +0 -0
  445. /package/dist/temp/src/components/{toggle → forms-and-input/toggle}/Toggle.d.ts +0 -0
  446. /package/dist/temp/src/components/{toggle → forms-and-input/toggle}/Toggle.js +0 -0
  447. /package/dist/temp/src/components/{toggle → forms-and-input/toggle}/index.d.ts +0 -0
  448. /package/dist/temp/src/components/{toggle → forms-and-input/toggle}/index.js +0 -0
  449. /package/dist/temp/src/components/{dot → image-and-icons/dot}/Dot.js +0 -0
  450. /package/dist/temp/src/components/{dot → image-and-icons/dot}/index.d.ts +0 -0
  451. /package/dist/temp/src/components/{dot → image-and-icons/dot}/index.js +0 -0
  452. /package/dist/temp/src/components/{featured-icon → image-and-icons/featured-icon}/FeaturedIcon.js +0 -0
  453. /package/dist/temp/src/components/{featured-icon → image-and-icons/featured-icon}/index.d.ts +0 -0
  454. /package/dist/temp/src/components/{featured-icon → image-and-icons/featured-icon}/index.js +0 -0
  455. /package/dist/temp/src/components/{divider → layout/divider}/Divider.d.ts +0 -0
  456. /package/dist/temp/src/components/{divider → layout/divider}/Divider.js +0 -0
  457. /package/dist/temp/src/components/{divider → layout/divider}/index.d.ts +0 -0
  458. /package/dist/temp/src/components/{divider → layout/divider}/index.js +0 -0
  459. /package/dist/temp/src/components/{bread-crumb → navigation/bread-crumb}/BreadCrumb.d.ts +0 -0
  460. /package/dist/temp/src/components/{bread-crumb → navigation/bread-crumb}/BreadCrumb.js +0 -0
  461. /package/dist/temp/src/components/{bread-crumb → navigation/bread-crumb}/index.d.ts +0 -0
  462. /package/dist/temp/src/components/{bread-crumb → navigation/bread-crumb}/index.js +0 -0
  463. /package/dist/temp/src/components/{horizontal-tab → navigation/horizontal-tab}/index.d.ts +0 -0
  464. /package/dist/temp/src/components/{horizontal-tab → navigation/horizontal-tab}/index.js +0 -0
  465. /package/dist/temp/src/components/{pagination → navigation/pagination}/Pagination.d.ts +0 -0
  466. /package/dist/temp/src/components/{pagination → navigation/pagination}/Pagination.js +0 -0
  467. /package/dist/temp/src/components/{pagination → navigation/pagination}/index.d.ts +0 -0
  468. /package/dist/temp/src/components/{pagination → navigation/pagination}/index.js +0 -0
  469. /package/dist/temp/src/components/{vertical-tab → navigation/vertical-tab}/index.d.ts +0 -0
  470. /package/dist/temp/src/components/{vertical-tab → navigation/vertical-tab}/index.js +0 -0
  471. /package/dist/temp/src/components/{dropdown → overlays/dropdown}/index.d.ts +0 -0
  472. /package/dist/temp/src/components/{dropdown → overlays/dropdown}/index.js +0 -0
  473. /package/dist/temp/src/components/{modal → overlays/modal}/index.d.ts +0 -0
  474. /package/dist/temp/src/components/{modal → overlays/modal}/index.js +0 -0
  475. /package/dist/temp/src/components/{notification → overlays/notification}/FloatingNotification.d.ts +0 -0
  476. /package/dist/temp/src/components/{notification → overlays/notification}/FullWidthNotification.d.ts +0 -0
  477. /package/dist/temp/src/components/{notification → overlays/notification}/Notification.js +0 -0
  478. /package/dist/temp/src/components/{notification → overlays/notification}/index.d.ts +0 -0
  479. /package/dist/temp/src/components/{notification → overlays/notification}/index.js +0 -0
  480. /package/dist/temp/src/components/{tooltip → overlays/tooltip}/Tooltip.d.ts +0 -0
  481. /package/dist/temp/src/components/{tooltip → overlays/tooltip}/index.d.ts +0 -0
  482. /package/dist/temp/src/components/{tooltip → overlays/tooltip}/index.js +0 -0
  483. /package/dist/types/src/components/{button → action/button}/index.d.ts +0 -0
  484. /package/dist/types/src/components/{button-group → action/button-group}/index.d.ts +0 -0
  485. /package/dist/types/src/components/{data-grid → data-display/data-grid}/DataGrid.d.ts +0 -0
  486. /package/dist/types/src/components/{data-grid → data-display/data-grid}/DataGrid.types.d.ts +0 -0
  487. /package/dist/types/src/components/{data-grid → data-display/data-grid}/index.d.ts +0 -0
  488. /package/dist/types/src/components/{table → data-display/table}/Table.d.ts +0 -0
  489. /package/dist/types/src/components/{table → data-display/table}/index.d.ts +0 -0
  490. /package/dist/types/src/components/{table → data-display/table}/types.d.ts +0 -0
  491. /package/dist/types/src/components/{badge → feedback-and-status/badge}/index.d.ts +0 -0
  492. /package/dist/types/src/components/{badge-group → feedback-and-status/badge-group}/index.d.ts +0 -0
  493. /package/dist/types/src/components/{carousel-arrow → feedback-and-status/carousel-arrow}/CarouselArrow.d.ts +0 -0
  494. /package/dist/types/src/components/{carousel-arrow → feedback-and-status/carousel-arrow}/index.d.ts +0 -0
  495. /package/dist/types/src/components/{carousel-number-group → feedback-and-status/carousel-number-group}/CarouselNumberGroup.d.ts +0 -0
  496. /package/dist/types/src/components/{carousel-number-group → feedback-and-status/carousel-number-group}/index.d.ts +0 -0
  497. /package/dist/types/src/components/{empty-state → feedback-and-status/empty-state}/index.d.ts +0 -0
  498. /package/dist/types/src/components/{progress-bar → feedback-and-status/progress-bar}/ProgressBar.d.ts +0 -0
  499. /package/dist/types/src/components/{progress-bar → feedback-and-status/progress-bar}/components/SegmentBar.d.ts +0 -0
  500. /package/dist/types/src/components/{progress-bar → feedback-and-status/progress-bar}/components/SegmentLabels.d.ts +0 -0
  501. /package/dist/types/src/components/{progress-bar → feedback-and-status/progress-bar}/components/index.d.ts +0 -0
  502. /package/dist/types/src/components/{progress-bar → feedback-and-status/progress-bar}/hooks/index.d.ts +0 -0
  503. /package/dist/types/src/components/{progress-bar → feedback-and-status/progress-bar}/hooks/useProgressBar.d.ts +0 -0
  504. /package/dist/types/src/components/{progress-bar → feedback-and-status/progress-bar}/index.d.ts +0 -0
  505. /package/dist/types/src/components/{progress-bar → feedback-and-status/progress-bar}/types.d.ts +0 -0
  506. /package/dist/types/src/components/{progress-bar → feedback-and-status/progress-bar}/utils.d.ts +0 -0
  507. /package/dist/types/src/components/{progress-circle → feedback-and-status/progress-circle}/ProgressCircle.d.ts +0 -0
  508. /package/dist/types/src/components/{progress-circle → feedback-and-status/progress-circle}/index.d.ts +0 -0
  509. /package/dist/types/src/components/{spinner → feedback-and-status/spinner}/Spinner.d.ts +0 -0
  510. /package/dist/types/src/components/{spinner → feedback-and-status/spinner}/index.d.ts +0 -0
  511. /package/dist/types/src/components/{tag → feedback-and-status/tag}/index.d.ts +0 -0
  512. /package/dist/types/src/components/{checkbox → forms-and-input/checkbox}/Checkbox.d.ts +0 -0
  513. /package/dist/types/src/components/{checkbox → forms-and-input/checkbox}/index.d.ts +0 -0
  514. /package/dist/types/src/components/{combo-box → forms-and-input/combo-box}/index.d.ts +0 -0
  515. /package/dist/types/src/components/{date-picker → forms-and-input/date-picker}/index.d.ts +0 -0
  516. /package/dist/types/src/components/{date-picker → forms-and-input/date-picker}/utils.d.ts +0 -0
  517. /package/dist/types/src/components/{file-input → forms-and-input/file-input}/FileInput.d.ts +0 -0
  518. /package/dist/types/src/components/{file-input → forms-and-input/file-input}/index.d.ts +0 -0
  519. /package/dist/types/src/components/{image-file-input → forms-and-input/image-file-input}/ImageFileInput.d.ts +0 -0
  520. /package/dist/types/src/components/{image-file-input → forms-and-input/image-file-input}/components/ImagePreview.d.ts +0 -0
  521. /package/dist/types/src/components/{image-file-input → forms-and-input/image-file-input}/components/index.d.ts +0 -0
  522. /package/dist/types/src/components/{image-file-input → forms-and-input/image-file-input}/index.d.ts +0 -0
  523. /package/dist/types/src/components/{input-base → forms-and-input/input-base}/index.d.ts +0 -0
  524. /package/dist/types/src/components/{number-input → forms-and-input/number-input}/NumberInput.d.ts +0 -0
  525. /package/dist/types/src/components/{number-input → forms-and-input/number-input}/index.d.ts +0 -0
  526. /package/dist/types/src/components/{password-input → forms-and-input/password-input}/PasswordInput.d.ts +0 -0
  527. /package/dist/types/src/components/{password-input → forms-and-input/password-input}/index.d.ts +0 -0
  528. /package/dist/types/src/components/{radio → forms-and-input/radio}/Radio.d.ts +0 -0
  529. /package/dist/types/src/components/{radio → forms-and-input/radio}/index.d.ts +0 -0
  530. /package/dist/types/src/components/{range-date-picker → forms-and-input/range-date-picker}/RangeDatePicker.d.ts +0 -0
  531. /package/dist/types/src/components/{range-date-picker → forms-and-input/range-date-picker}/index.d.ts +0 -0
  532. /package/dist/types/src/components/{range-date-picker-with-buttons → forms-and-input/range-date-picker-with-buttons}/index.d.ts +0 -0
  533. /package/dist/types/src/components/{select → forms-and-input/select}/index.d.ts +0 -0
  534. /package/dist/types/src/components/{select-box → forms-and-input/select-box}/index.d.ts +0 -0
  535. /package/dist/types/src/components/{slider → forms-and-input/slider}/index.d.ts +0 -0
  536. /package/dist/types/src/components/{switch → forms-and-input/switch}/index.d.ts +0 -0
  537. /package/dist/types/src/components/{textarea → forms-and-input/textarea}/index.d.ts +0 -0
  538. /package/dist/types/src/components/{toggle → forms-and-input/toggle}/Toggle.d.ts +0 -0
  539. /package/dist/types/src/components/{toggle → forms-and-input/toggle}/index.d.ts +0 -0
  540. /package/dist/types/src/components/{dot → image-and-icons/dot}/index.d.ts +0 -0
  541. /package/dist/types/src/components/{featured-icon → image-and-icons/featured-icon}/index.d.ts +0 -0
  542. /package/dist/types/src/components/{divider → layout/divider}/Divider.d.ts +0 -0
  543. /package/dist/types/src/components/{divider → layout/divider}/index.d.ts +0 -0
  544. /package/dist/types/src/components/{bread-crumb → navigation/bread-crumb}/BreadCrumb.d.ts +0 -0
  545. /package/dist/types/src/components/{bread-crumb → navigation/bread-crumb}/index.d.ts +0 -0
  546. /package/dist/types/src/components/{horizontal-tab → navigation/horizontal-tab}/index.d.ts +0 -0
  547. /package/dist/types/src/components/{pagination → navigation/pagination}/Pagination.d.ts +0 -0
  548. /package/dist/types/src/components/{pagination → navigation/pagination}/index.d.ts +0 -0
  549. /package/dist/types/src/components/{vertical-tab → navigation/vertical-tab}/index.d.ts +0 -0
  550. /package/dist/types/src/components/{dropdown → overlays/dropdown}/index.d.ts +0 -0
  551. /package/dist/types/src/components/{modal → overlays/modal}/index.d.ts +0 -0
  552. /package/dist/types/src/components/{notification → overlays/notification}/FloatingNotification.d.ts +0 -0
  553. /package/dist/types/src/components/{notification → overlays/notification}/FullWidthNotification.d.ts +0 -0
  554. /package/dist/types/src/components/{notification → overlays/notification}/index.d.ts +0 -0
  555. /package/dist/types/src/components/{tooltip → overlays/tooltip}/Tooltip.d.ts +0 -0
  556. /package/dist/types/src/components/{tooltip → overlays/tooltip}/index.d.ts +0 -0
@@ -0,0 +1,273 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { combine } from '@atlaskit/pragmatic-drag-and-drop/combine';
3
+ import { draggable, dropTargetForElements, monitorForElements, } from '@atlaskit/pragmatic-drag-and-drop/element/adapter';
4
+ import { pointerOutsideOfPreview } from '@atlaskit/pragmatic-drag-and-drop/element/pointer-outside-of-preview';
5
+ import { setCustomNativeDragPreview } from '@atlaskit/pragmatic-drag-and-drop/element/set-custom-native-drag-preview';
6
+ import { autoScrollForElements } from '@atlaskit/pragmatic-drag-and-drop-auto-scroll/element';
7
+ import { attachClosestEdge, extractClosestEdge, } from '@atlaskit/pragmatic-drag-and-drop-hitbox/closest-edge';
8
+ import { DotsGrid02, DotsVertical, Eye, EyeOff } from '@ncds/ui-admin-icon';
9
+ import { useEffect, useLayoutEffect, useRef, useState } from 'react';
10
+ import { Button } from '../../action/button';
11
+ import { applyDraftToItems, arrayReorderByEdge, hasDraftChanged, initDraftState } from './utils';
12
+ const DROPDOWN_ID_RADIX = 36;
13
+ const DROPDOWN_ID_SLICE_START = 2;
14
+ const DROPDOWN_ID_SLICE_END = 9;
15
+ const SortableConfigItem = ({ item, isVisible, showVisibilityToggle, sortable, dropdownId, onToggleVisibility, onMoveBy, }) => {
16
+ const ref = useRef(null);
17
+ const handleRef = useRef(null);
18
+ const ItemIcon = item.icon;
19
+ const [closestEdge, setClosestEdge] = useState(null);
20
+ useEffect(() => {
21
+ if (!sortable || !ref.current || !handleRef.current)
22
+ return;
23
+ const itemEl = ref.current;
24
+ return combine(draggable({
25
+ element: handleRef.current,
26
+ getInitialData: () => ({ id: item.id, dropdownId }),
27
+ onGenerateDragPreview: ({ nativeSetDragImage }) => {
28
+ setCustomNativeDragPreview({
29
+ nativeSetDragImage,
30
+ getOffset: pointerOutsideOfPreview({ x: '8px', y: '8px' }),
31
+ render: ({ container }) => {
32
+ const clone = itemEl.cloneNode(true);
33
+ clone.classList.add('ncua-dropdown__item--drag-preview');
34
+ clone.style.width = `${itemEl.getBoundingClientRect().width}px`;
35
+ container.appendChild(clone);
36
+ return () => {
37
+ container.removeChild(clone);
38
+ };
39
+ },
40
+ });
41
+ },
42
+ onDragStart: () => {
43
+ itemEl.classList.add('is-dragging');
44
+ },
45
+ onDrop: () => {
46
+ itemEl.classList.remove('is-dragging');
47
+ },
48
+ }), dropTargetForElements({
49
+ element: ref.current,
50
+ getData: ({ input, element }) => attachClosestEdge({ id: item.id, dropdownId }, { input, element, allowedEdges: ['top', 'bottom'] }),
51
+ onDragEnter: ({ self, source }) => {
52
+ if (source.data.id === item.id)
53
+ return;
54
+ setClosestEdge(extractClosestEdge(self.data));
55
+ },
56
+ onDrag: ({ self, source }) => {
57
+ if (source.data.id === item.id)
58
+ return;
59
+ setClosestEdge(extractClosestEdge(self.data));
60
+ },
61
+ onDragLeave: () => setClosestEdge(null),
62
+ onDrop: () => setClosestEdge(null),
63
+ }));
64
+ }, [sortable, item.id, dropdownId]);
65
+ const itemClasses = [
66
+ 'ncua-dropdown__item',
67
+ 'ncua-dropdown__item--config',
68
+ item.disabled ? 'is-disabled' : '',
69
+ isVisible ? '' : 'is-hidden',
70
+ item.className,
71
+ ]
72
+ .filter(Boolean)
73
+ .join(' ');
74
+ return (_jsxs("div", { ref: ref, className: itemClasses, children: [closestEdge && (_jsx("div", { className: `ncua-dropdown__item-drop-indicator ncua-dropdown__item-drop-indicator--${closestEdge}` })), sortable && (_jsx("button", { ref: handleRef, type: "button", className: "ncua-dropdown__item-drag-handle", "aria-label": "\uC21C\uC11C \uBCC0\uACBD (\uC704/\uC544\uB798 \uBC29\uD5A5\uD0A4)", onKeyDown: (e) => {
75
+ if (e.key === 'ArrowUp') {
76
+ e.preventDefault();
77
+ onMoveBy(item.id, -1);
78
+ }
79
+ else if (e.key === 'ArrowDown') {
80
+ e.preventDefault();
81
+ onMoveBy(item.id, 1);
82
+ }
83
+ }, children: _jsx(DotsGrid02, {}) })), _jsx("div", { className: "ncua-dropdown__item-content", children: _jsxs("div", { className: "ncua-dropdown__item-text-group", children: [ItemIcon && _jsx(ItemIcon, { className: "ncua-dropdown__item-icon" }), _jsx("span", { className: "ncua-dropdown__item-text", children: item.text })] }) }), showVisibilityToggle && (_jsx("button", { type: "button", className: "ncua-dropdown__item-visibility", "aria-label": `${item.text} 노출`, "aria-pressed": isVisible, onClick: () => onToggleVisibility(item.id), children: isVisible ? _jsx(Eye, {}) : _jsx(EyeOff, {}) }))] }));
84
+ };
85
+ export const Dropdown = (props) => {
86
+ const { trigger, align = 'left', header, groups, className, opened = false, closeOnClickOutside = true } = props;
87
+ const variant = props.variant ?? 'action';
88
+ const closeOnClickItem = variant === 'action' ? (props.closeOnClickItem ?? true) : false;
89
+ const [isOpen, setIsOpen] = useState(opened);
90
+ const dropdownRef = useRef(null);
91
+ const triggerRef = useRef(null);
92
+ const menuItemsRef = useRef(null);
93
+ const dropdownIdRef = useRef(`ncua-dropdown-${Math.random().toString(DROPDOWN_ID_RADIX).slice(DROPDOWN_ID_SLICE_START, DROPDOWN_ID_SLICE_END)}`);
94
+ const dropdownId = dropdownIdRef.current;
95
+ useEffect(() => {
96
+ setIsOpen(opened);
97
+ }, [opened]);
98
+ const initialDraft = variant === 'config' ? initDraftState(groups) : null;
99
+ const [draft, setDraft] = useState(initialDraft);
100
+ // Reset draft to props baseline synchronously before paint to avoid a flash
101
+ // of "previous draft" state when reopening after a dismissed change.
102
+ useLayoutEffect(() => {
103
+ if (variant !== 'config')
104
+ return;
105
+ if (isOpen) {
106
+ setDraft(initDraftState(groups));
107
+ }
108
+ else {
109
+ setDraft(null);
110
+ }
111
+ }, [isOpen, variant, groups]);
112
+ // Listen for drag-drop events scoped to this dropdown
113
+ useEffect(() => {
114
+ if (variant !== 'config' || !isOpen)
115
+ return;
116
+ return monitorForElements({
117
+ canMonitor: ({ source }) => typeof source.data.id === 'string' && source.data.dropdownId === dropdownId,
118
+ onDrop: ({ source, location }) => {
119
+ const target = location.current.dropTargets[0];
120
+ if (!target)
121
+ return;
122
+ const fromId = source.data.id;
123
+ const toId = target.data.id;
124
+ if (typeof fromId !== 'string' || typeof toId !== 'string' || fromId === toId)
125
+ return;
126
+ const edge = extractClosestEdge(target.data);
127
+ const resolvedEdge = edge === 'bottom' ? 'bottom' : 'top';
128
+ setDraft((prev) => prev ? { ...prev, order: arrayReorderByEdge(prev.order, fromId, toId, resolvedEdge) } : prev);
129
+ },
130
+ });
131
+ }, [variant, isOpen, dropdownId]);
132
+ // Auto-scroll the items area while dragging near edges
133
+ useEffect(() => {
134
+ if (variant !== 'config' || !isOpen || !menuItemsRef.current)
135
+ return;
136
+ return autoScrollForElements({ element: menuItemsRef.current });
137
+ }, [variant, isOpen]);
138
+ const toggleDropdown = () => {
139
+ setIsOpen(!isOpen);
140
+ };
141
+ // 닫고 + 포커스를 trigger로 복귀 (a11y 권장)
142
+ const closeAndRestoreFocus = () => {
143
+ setIsOpen(false);
144
+ triggerRef.current?.focus();
145
+ };
146
+ const handleClickOutside = (event) => {
147
+ if (dropdownRef.current && !dropdownRef.current.contains(event.target)) {
148
+ setIsOpen(false);
149
+ }
150
+ };
151
+ const handleClickItem = (item) => {
152
+ if (!item.disabled && item.onClick) {
153
+ item.onClick();
154
+ if (closeOnClickItem) {
155
+ setIsOpen(false);
156
+ }
157
+ }
158
+ };
159
+ useEffect(() => {
160
+ if (closeOnClickOutside) {
161
+ document.addEventListener('mousedown', handleClickOutside);
162
+ return () => {
163
+ document.removeEventListener('mousedown', handleClickOutside);
164
+ };
165
+ }
166
+ }, [closeOnClickOutside]);
167
+ // ESC 키로 닫고 trigger로 포커스 복귀
168
+ useEffect(() => {
169
+ if (!isOpen)
170
+ return;
171
+ const handleEsc = (event) => {
172
+ if (event.key === 'Escape') {
173
+ closeAndRestoreFocus();
174
+ }
175
+ };
176
+ document.addEventListener('keydown', handleEsc);
177
+ return () => document.removeEventListener('keydown', handleEsc);
178
+ }, [isOpen]);
179
+ const renderTrigger = () => {
180
+ switch (trigger.type) {
181
+ case 'custom':
182
+ return (_jsx("button", { ref: triggerRef, type: "button", className: "ncua-dropdown__trigger", onClick: toggleDropdown, children: trigger.children }));
183
+ case 'icon': {
184
+ const TriggerIcon = trigger.icon ?? DotsVertical;
185
+ return (_jsx("button", { ref: triggerRef, type: "button", className: "ncua-dropdown__trigger ncua-dropdown__trigger--icon", onClick: toggleDropdown, children: _jsx(TriggerIcon, {}) }));
186
+ }
187
+ case 'avatar':
188
+ return (_jsx("button", { ref: triggerRef, type: "button", className: "ncua-dropdown__trigger ncua-dropdown__trigger--avatar", onClick: toggleDropdown, children: _jsx("div", { className: "ncua-dropdown__avatar", children: _jsx("img", { src: trigger.avatar, alt: "avatar" }) }) }));
189
+ case 'button':
190
+ return (_jsx("button", { ref: triggerRef, type: "button", className: "ncua-dropdown__trigger ncua-dropdown__trigger--button", onClick: toggleDropdown, children: trigger.text }));
191
+ default:
192
+ return null;
193
+ }
194
+ };
195
+ const renderHeader = () => {
196
+ if (!header)
197
+ return null;
198
+ if (header.type === 'avatar' && header.avatar) {
199
+ return (_jsx("div", { className: "ncua-dropdown__header", children: _jsxs("div", { className: "ncua-dropdown__header-avatar-group", children: [_jsx("div", { className: "ncua-dropdown__avatar", children: _jsx("img", { src: header.avatar, alt: "avatar" }) }), _jsxs("div", { className: "ncua-dropdown__header-text", children: [header.title && _jsx("div", { className: "ncua-dropdown__header-title", children: header.title }), header.subtitle && _jsx("div", { className: "ncua-dropdown__header-subtitle", children: header.subtitle })] })] }) }));
200
+ }
201
+ if (header.type === 'text' && header.title) {
202
+ return (_jsx("div", { className: "ncua-dropdown__header", children: _jsx("div", { className: "ncua-dropdown__header-title", children: header.title }) }));
203
+ }
204
+ return null;
205
+ };
206
+ const renderActionItem = (item) => {
207
+ const ItemIcon = item.icon;
208
+ const itemClasses = [
209
+ 'ncua-dropdown__item',
210
+ item.disabled ? 'is-disabled' : '',
211
+ item.type === 'danger' ? 'is-danger' : '',
212
+ item.className,
213
+ ]
214
+ .filter(Boolean)
215
+ .join(' ');
216
+ return (_jsx("button", { type: "button", className: itemClasses, onClick: () => handleClickItem(item), disabled: item.disabled, children: _jsxs("div", { className: "ncua-dropdown__item-content", children: [_jsxs("div", { className: "ncua-dropdown__item-text-group", children: [ItemIcon && _jsx(ItemIcon, { className: "ncua-dropdown__item-icon" }), _jsx("span", { className: "ncua-dropdown__item-text", children: item.text })] }), item.shortcut && _jsx("span", { className: "ncua-dropdown__item-shortcut", children: item.shortcut })] }) }, item.id));
217
+ };
218
+ const toggleVisibility = (id) => {
219
+ setDraft((prev) => {
220
+ if (!prev)
221
+ return prev;
222
+ return {
223
+ ...prev,
224
+ visibility: { ...prev.visibility, [id]: !prev.visibility[id] },
225
+ };
226
+ });
227
+ };
228
+ const handleMoveBy = (id, delta) => {
229
+ setDraft((prev) => {
230
+ if (!prev)
231
+ return prev;
232
+ const fromIndex = prev.order.indexOf(id);
233
+ if (fromIndex === -1)
234
+ return prev;
235
+ const toIndex = fromIndex + delta;
236
+ if (toIndex < 0 || toIndex >= prev.order.length)
237
+ return prev;
238
+ const next = [...prev.order];
239
+ const [moved] = next.splice(fromIndex, 1);
240
+ next.splice(toIndex, 0, moved);
241
+ return { ...prev, order: next };
242
+ });
243
+ };
244
+ const handleApply = () => {
245
+ if (variant !== 'config' || !draft)
246
+ return;
247
+ if (props.variant === 'config') {
248
+ props.onApply(applyDraftToItems(groups, draft));
249
+ }
250
+ closeAndRestoreFocus();
251
+ };
252
+ const renderConfigItem = (item, sortable) => (_jsx(SortableConfigItem, { item: item, isVisible: draft?.visibility[item.id] ?? true, showVisibilityToggle: item.visible !== undefined && !item.required, sortable: sortable, dropdownId: dropdownId, onToggleVisibility: toggleVisibility, onMoveBy: handleMoveBy }, item.id));
253
+ const renderFooter = () => {
254
+ if (variant !== 'config' || !draft || props.variant !== 'config')
255
+ return null;
256
+ const original = initDraftState(groups);
257
+ const enabled = hasDraftChanged(original, draft);
258
+ const text = props.applyButtonText ?? '설정 완료';
259
+ return (_jsx("div", { className: "ncua-dropdown__footer", children: _jsx(Button, { hierarchy: "secondary", size: "xs", onClick: handleApply, disabled: !enabled, label: text }) }));
260
+ };
261
+ const dropdownClasses = ['ncua-dropdown', className, align === 'right' ? 'ncua-dropdown--right' : '']
262
+ .filter(Boolean)
263
+ .join(' ');
264
+ return (_jsxs("div", { className: dropdownClasses, ref: dropdownRef, children: [renderTrigger(), isOpen && (_jsxs("div", { className: "ncua-dropdown__menu", role: variant === 'config' ? 'dialog' : 'menu', "aria-label": variant === 'config' ? '설정' : undefined, children: [renderHeader(), _jsx("div", { ref: menuItemsRef, className: "ncua-dropdown__menu-items", children: groups.map((group) => {
265
+ // config variant uses draft.order to drive the rendered order
266
+ const orderedItems = variant === 'config' && draft
267
+ ? draft.order
268
+ .map((id) => group.items.find((i) => i.id === id))
269
+ .filter((i) => i !== undefined)
270
+ : group.items;
271
+ return (_jsx("div", { className: "ncua-dropdown__group", children: orderedItems.map((item) => variant === 'config' ? renderConfigItem(item, group.sortable === true) : renderActionItem(item)) }, group.items[0]?.id));
272
+ }) }), renderFooter()] }))] }));
273
+ };
@@ -0,0 +1,122 @@
1
+ import { describe, expect, it } from 'vitest';
2
+ import { applyDraftToItems, arrayMoveById, hasDraftChanged, initDraftState } from '../utils';
3
+ describe('arrayMoveById', () => {
4
+ it('fromId를 toId 위치로 이동시킨다', () => {
5
+ const order = ['a', 'b', 'c', 'd'];
6
+ expect(arrayMoveById(order, 'a', 'c')).toEqual(['b', 'c', 'a', 'd']);
7
+ });
8
+ it('같은 id로 이동 시 원본을 그대로 반환한다', () => {
9
+ const order = ['a', 'b', 'c'];
10
+ expect(arrayMoveById(order, 'b', 'b')).toEqual(['a', 'b', 'c']);
11
+ });
12
+ it('존재하지 않는 id가 있으면 원본을 그대로 반환한다', () => {
13
+ const order = ['a', 'b', 'c'];
14
+ expect(arrayMoveById(order, 'a', 'z')).toEqual(['a', 'b', 'c']);
15
+ expect(arrayMoveById(order, 'z', 'a')).toEqual(['a', 'b', 'c']);
16
+ });
17
+ it('원본 배열을 변형하지 않는다 (immutable)', () => {
18
+ const order = ['a', 'b', 'c'];
19
+ arrayMoveById(order, 'a', 'c');
20
+ expect(order).toEqual(['a', 'b', 'c']);
21
+ });
22
+ });
23
+ describe('initDraftState', () => {
24
+ it('groups의 모든 item id를 순서대로 order에 담는다', () => {
25
+ const groups = [
26
+ {
27
+ items: [
28
+ { id: 'a', text: 'A' },
29
+ { id: 'b', text: 'B' },
30
+ ],
31
+ },
32
+ { items: [{ id: 'c', text: 'C' }] },
33
+ ];
34
+ expect(initDraftState(groups).order).toEqual(['a', 'b', 'c']);
35
+ });
36
+ it('item.visible이 정의되지 않았으면 visibility는 true', () => {
37
+ const groups = [{ items: [{ id: 'a', text: 'A' }] }];
38
+ expect(initDraftState(groups).visibility).toEqual({ a: true });
39
+ });
40
+ it('item.visible이 false면 visibility는 false', () => {
41
+ const groups = [
42
+ {
43
+ items: [
44
+ { id: 'a', text: 'A', visible: false },
45
+ { id: 'b', text: 'B', visible: true },
46
+ ],
47
+ },
48
+ ];
49
+ expect(initDraftState(groups).visibility).toEqual({ a: false, b: true });
50
+ });
51
+ });
52
+ describe('applyDraftToItems', () => {
53
+ it('draft.order 순서로 items를 재배열한다', () => {
54
+ const groups = [
55
+ {
56
+ items: [
57
+ { id: 'a', text: 'A' },
58
+ { id: 'b', text: 'B' },
59
+ { id: 'c', text: 'C' },
60
+ ],
61
+ },
62
+ ];
63
+ const draft = { order: ['c', 'a', 'b'], visibility: { a: true, b: true, c: true } };
64
+ const result = applyDraftToItems(groups, draft);
65
+ expect(result.map((i) => i.id)).toEqual(['c', 'a', 'b']);
66
+ });
67
+ it('draft.visibility 값을 각 item.visible에 반영한다', () => {
68
+ const groups = [
69
+ {
70
+ items: [
71
+ { id: 'a', text: 'A', visible: true },
72
+ { id: 'b', text: 'B', visible: true },
73
+ ],
74
+ },
75
+ ];
76
+ const draft = { order: ['a', 'b'], visibility: { a: false, b: true } };
77
+ const result = applyDraftToItems(groups, draft);
78
+ expect(result[0].visible).toBe(false);
79
+ expect(result[1].visible).toBe(true);
80
+ });
81
+ it('item의 다른 필드 (id, text, icon 등)는 그대로 보존한다', () => {
82
+ const groups = [{ items: [{ id: 'a', text: 'Alpha', shortcut: 'Cmd+A' }] }];
83
+ const draft = { order: ['a'], visibility: { a: true } };
84
+ const result = applyDraftToItems(groups, draft);
85
+ expect(result[0]).toEqual({ id: 'a', text: 'Alpha', shortcut: 'Cmd+A' });
86
+ });
87
+ it('item.visible이 원래 undefined였으면 결과도 visible 필드 없이 보존한다', () => {
88
+ const groups = [{ items: [{ id: 'a', text: 'A' }] }];
89
+ const draft = { order: ['a'], visibility: { a: true } };
90
+ const result = applyDraftToItems(groups, draft);
91
+ expect(result[0].visible).toBeUndefined();
92
+ });
93
+ });
94
+ describe('hasDraftChanged', () => {
95
+ it('original과 동일하면 false', () => {
96
+ const groups = [
97
+ {
98
+ items: [
99
+ { id: 'a', text: 'A', visible: true },
100
+ { id: 'b', text: 'B', visible: false },
101
+ ],
102
+ },
103
+ ];
104
+ const original = initDraftState(groups);
105
+ expect(hasDraftChanged(original, original)).toBe(false);
106
+ });
107
+ it('order가 다르면 true', () => {
108
+ const original = { order: ['a', 'b'], visibility: { a: true, b: true } };
109
+ const draft = { order: ['b', 'a'], visibility: { a: true, b: true } };
110
+ expect(hasDraftChanged(original, draft)).toBe(true);
111
+ });
112
+ it('visibility가 다르면 true', () => {
113
+ const original = { order: ['a', 'b'], visibility: { a: true, b: true } };
114
+ const draft = { order: ['a', 'b'], visibility: { a: false, b: true } };
115
+ expect(hasDraftChanged(original, draft)).toBe(true);
116
+ });
117
+ it('order·visibility 둘 다 같으면 false', () => {
118
+ const original = { order: ['a', 'b'], visibility: { a: true, b: false } };
119
+ const draft = { order: ['a', 'b'], visibility: { a: true, b: false } };
120
+ expect(hasDraftChanged(original, draft)).toBe(false);
121
+ });
122
+ });
@@ -0,0 +1,32 @@
1
+ import type { DropdownGroup, DropdownItemType } from './Dropdown';
2
+ /**
3
+ * 배열에서 fromId 위치의 요소를 toId 위치로 이동.
4
+ * id 중 하나라도 없으면 원본 그대로 반환. immutable.
5
+ */
6
+ export declare function arrayMoveById(order: string[], fromId: string, toId: string): string[];
7
+ /**
8
+ * fromId 요소를 toId 기준 edge('top'=직전, 'bottom'=직후)에 삽입.
9
+ * indicator 위치와 정확히 일치하는 reorder를 위해 사용.
10
+ */
11
+ export declare function arrayReorderByEdge(order: string[], fromId: string, toId: string, edge: 'top' | 'bottom'): string[];
12
+ export type DraftState = {
13
+ order: string[];
14
+ visibility: Record<string, boolean>;
15
+ };
16
+ /**
17
+ * groups를 받아 초기 draft state를 만든다.
18
+ * - order: 모든 그룹·아이템의 id를 순서대로 평탄화
19
+ * - visibility: item.visible (undefined면 true)
20
+ */
21
+ export declare function initDraftState(groups: DropdownGroup[]): DraftState;
22
+ /**
23
+ * 모든 그룹의 items를 평탄화하고, draft.order 순서로 재배열.
24
+ * 각 item의 visible은 원래 visible이 정의되어 있던 경우에만 draft.visibility 값으로 갱신.
25
+ * 그 외 필드는 props 원본 그대로 보존.
26
+ */
27
+ export declare function applyDraftToItems(groups: DropdownGroup[], draft: DraftState): DropdownItemType[];
28
+ /**
29
+ * draft가 original과 비교해 변경되었는지 판단.
30
+ * order 배열 또는 visibility 객체 중 하나라도 다르면 true.
31
+ */
32
+ export declare function hasDraftChanged(original: DraftState, draft: DraftState): boolean;
@@ -0,0 +1,89 @@
1
+ /**
2
+ * 배열에서 fromId 위치의 요소를 toId 위치로 이동.
3
+ * id 중 하나라도 없으면 원본 그대로 반환. immutable.
4
+ */
5
+ export function arrayMoveById(order, fromId, toId) {
6
+ const fromIndex = order.indexOf(fromId);
7
+ const toIndex = order.indexOf(toId);
8
+ if (fromIndex === -1 || toIndex === -1 || fromIndex === toIndex) {
9
+ return order;
10
+ }
11
+ const next = [...order];
12
+ const [moved] = next.splice(fromIndex, 1);
13
+ next.splice(toIndex, 0, moved);
14
+ return next;
15
+ }
16
+ /**
17
+ * fromId 요소를 toId 기준 edge('top'=직전, 'bottom'=직후)에 삽입.
18
+ * indicator 위치와 정확히 일치하는 reorder를 위해 사용.
19
+ */
20
+ export function arrayReorderByEdge(order, fromId, toId, edge) {
21
+ if (fromId === toId)
22
+ return order;
23
+ const fromIndex = order.indexOf(fromId);
24
+ const toIndex = order.indexOf(toId);
25
+ if (fromIndex === -1 || toIndex === -1)
26
+ return order;
27
+ const next = [...order];
28
+ next.splice(fromIndex, 1);
29
+ // 목표 인덱스 재계산 (제거로 인해 toIndex가 한 칸 당겨질 수 있음)
30
+ const adjustedToIndex = fromIndex < toIndex ? toIndex - 1 : toIndex;
31
+ const insertIndex = edge === 'bottom' ? adjustedToIndex + 1 : adjustedToIndex;
32
+ next.splice(insertIndex, 0, fromId);
33
+ return next;
34
+ }
35
+ /**
36
+ * groups를 받아 초기 draft state를 만든다.
37
+ * - order: 모든 그룹·아이템의 id를 순서대로 평탄화
38
+ * - visibility: item.visible (undefined면 true)
39
+ */
40
+ export function initDraftState(groups) {
41
+ const order = [];
42
+ const visibility = {};
43
+ for (const group of groups) {
44
+ for (const item of group.items) {
45
+ order.push(item.id);
46
+ visibility[item.id] = item.visible ?? true;
47
+ }
48
+ }
49
+ return { order, visibility };
50
+ }
51
+ /**
52
+ * 모든 그룹의 items를 평탄화하고, draft.order 순서로 재배열.
53
+ * 각 item의 visible은 원래 visible이 정의되어 있던 경우에만 draft.visibility 값으로 갱신.
54
+ * 그 외 필드는 props 원본 그대로 보존.
55
+ */
56
+ export function applyDraftToItems(groups, draft) {
57
+ const itemsById = new Map();
58
+ for (const group of groups) {
59
+ for (const item of group.items) {
60
+ itemsById.set(item.id, item);
61
+ }
62
+ }
63
+ return draft.order
64
+ .map((id) => itemsById.get(id))
65
+ .filter((item) => item !== undefined)
66
+ .map((item) => {
67
+ if (item.visible === undefined)
68
+ return item;
69
+ return { ...item, visible: draft.visibility[item.id] };
70
+ });
71
+ }
72
+ /**
73
+ * draft가 original과 비교해 변경되었는지 판단.
74
+ * order 배열 또는 visibility 객체 중 하나라도 다르면 true.
75
+ */
76
+ export function hasDraftChanged(original, draft) {
77
+ if (original.order.length !== draft.order.length)
78
+ return true;
79
+ for (let i = 0; i < original.order.length; i++) {
80
+ if (original.order[i] !== draft.order[i])
81
+ return true;
82
+ }
83
+ const keys = new Set([...Object.keys(original.visibility), ...Object.keys(draft.visibility)]);
84
+ for (const key of keys) {
85
+ if (original.visibility[key] !== draft.visibility[key])
86
+ return true;
87
+ }
88
+ return false;
89
+ }
@@ -1,6 +1,6 @@
1
1
  import { type ReactNode } from 'react';
2
- import type { SlotIconComponent } from '../../types/side-slot';
3
- import { type FeaturedIconColor, type FeaturedIconTheme } from '../featured-icon';
2
+ import type { SlotIconComponent } from '../../../types/side-slot';
3
+ import { type FeaturedIconColor, type FeaturedIconTheme } from '../../image-and-icons/featured-icon';
4
4
  type ModalSize = 'sm' | 'md' | 'lg' | 'xl' | '2xl';
5
5
  type ModalHeaderAlign = 'left' | 'center' | 'horizontal';
6
6
  type ModalActionsAlign = 'left' | 'center' | 'right' | 'stretch';
@@ -2,8 +2,8 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
2
2
  import classnames from 'classnames';
3
3
  import { useEffect, useRef } from 'react';
4
4
  import ReactDOM from 'react-dom';
5
- import { ButtonCloseX } from '../button/ButtonCloseX';
6
- import { FeaturedIcon } from '../featured-icon';
5
+ import { ButtonCloseX } from '../../action/button/ButtonCloseX';
6
+ import { FeaturedIcon } from '../../image-and-icons/featured-icon';
7
7
  const Modal = ({ isOpen, onClose, children, size = 'md', closeOnBackdropClick = false, closeOnEsc = true, className, zIndex, ...restProps }) => {
8
8
  const modalRef = useRef(null);
9
9
  const handleBackdropClick = (e) => {
@@ -2,11 +2,11 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { AlertCircle, AlertTriangle, CheckCircle, Pin02 } from '@ncds/ui-admin-icon';
3
3
  import classNames from 'classnames';
4
4
  import { forwardRef, useEffect, useRef, useState } from 'react';
5
- import { MEDIA_QUERY } from '../../constant/breakpoint';
6
- import { useMediaQuery } from '../../hooks/useMediaQuery';
7
- import { Button } from '../button';
8
- import { ButtonCloseX } from '../button/ButtonCloseX';
9
- import { FeaturedIcon } from '../featured-icon/FeaturedIcon';
5
+ import { MEDIA_QUERY } from '../../../constant/breakpoint';
6
+ import { useMediaQuery } from '../../../hooks/useMediaQuery';
7
+ import { Button } from '../../action/button';
8
+ import { ButtonCloseX } from '../../action/button/ButtonCloseX';
9
+ import { FeaturedIcon, } from '../../image-and-icons/featured-icon/FeaturedIcon';
10
10
  const iconMap = {
11
11
  neutral: Pin02,
12
12
  error: AlertTriangle,
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { AlertTriangle, CheckCircle, InfoCircle, MessageChatSquare, XClose } from '@ncds/ui-admin-icon';
3
3
  import classNames from 'classnames';
4
4
  import { forwardRef, useEffect, useRef, useState } from 'react';
5
- import { COLOR } from '../../../constant/color';
5
+ import { COLOR } from '../../../../constant/color';
6
6
  const iconMap = {
7
7
  neutral: MessageChatSquare,
8
8
  error: AlertTriangle,
@@ -1,5 +1,5 @@
1
1
  import { type ComponentPropsWithoutRef, type ReactNode } from 'react';
2
- import type { SlotIconComponent } from '../../types/side-slot';
2
+ import type { SlotIconComponent } from '../../../types/side-slot';
3
3
  import type { NotificationAction, NotificationColor } from './Notification';
4
4
  interface MessageNotificationProps extends Omit<ComponentPropsWithoutRef<'div'>, 'title'> {
5
5
  /**
@@ -2,9 +2,9 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { AlertCircle, AlertTriangle, CheckCircle, Pin02, XClose } from '@ncds/ui-admin-icon';
3
3
  import classNames from 'classnames';
4
4
  import { forwardRef } from 'react';
5
- import { COLOR } from '../../../constant/color';
6
- import { Button } from '../button';
7
- import { FeaturedIcon } from '../featured-icon/FeaturedIcon';
5
+ import { COLOR } from '../../../../constant/color';
6
+ import { Button } from '../../action/button';
7
+ import { FeaturedIcon, } from '../../image-and-icons/featured-icon/FeaturedIcon';
8
8
  const iconMap = {
9
9
  neutral: Pin02,
10
10
  error: AlertTriangle,
@@ -1,7 +1,7 @@
1
1
  import { type ComponentPropsWithoutRef, type ReactNode } from 'react';
2
- import type { ColorTone } from '../../../constant/color';
3
- import type { SlotIconComponent } from '../../types/side-slot';
4
- import type { ButtonTheme } from '../button';
2
+ import type { ColorTone } from '../../../../constant/color';
3
+ import type { SlotIconComponent } from '../../../types/side-slot';
4
+ import type { ButtonTheme } from '../../action/button';
5
5
  type NotificationType = 'floating' | 'full-width' | 'message';
6
6
  type NotificationColor = Extract<ColorTone, 'neutral' | 'error' | 'warning' | 'success' | 'info'>;
7
7
  type NotificationSize = 'desktop' | 'mobile';
@@ -3,7 +3,7 @@ import { AlertCircle, AlertCircleFill, HelpCircle, HelpCircleFill } from '@ncds/
3
3
  import classNames from 'classnames';
4
4
  import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
5
5
  import { createPortal } from 'react-dom';
6
- import { ButtonCloseX } from '../button/ButtonCloseX';
6
+ import { ButtonCloseX } from '../../action/button/ButtonCloseX';
7
7
  const ICON_SIZE_SM = 14;
8
8
  const ICON_SIZE_DEFAULT = 16;
9
9
  // HTML 구현체(assets/scripts/tooltip)와 동일한 상수
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import classNames from 'classnames';
3
3
  import { forwardRef } from 'react';
4
- import { Button } from '../button';
4
+ import { Button } from '../action/button';
5
5
  const SelectDropdown = forwardRef(({ isOpen, direction = 'down', size = 'xs', options, value, focusedIndex, maxHeight, listboxId = 'selectbox-options-default', onOptionSelect, onMouseMove, isKeyboardNavigation, onOptionHover, children, multiple = false, showFooterButtons = false, selectAllButtonText = '전체 선택', onSelectAll, onEdit, onComplete, className, activeDescendantId, componentType, align = 'left', ...props }, ref) => {
6
6
  if (!isOpen)
7
7
  return null;
@@ -1,5 +1,5 @@
1
1
  import type { AnchorHTMLAttributes, ButtonHTMLAttributes, ReactNode } from 'react';
2
- import { type BadgeProps } from '../badge/Badge';
2
+ import { type BadgeProps } from '../feedback-and-status/badge/Badge';
3
3
  type TabSize = 'sm' | 'md' | 'lg';
4
4
  type TabType = 'button-primary' | 'button-white' | 'underline' | 'underline-fill' | 'line-vertical';
5
5
  type BaseTabButtonProps = {
@@ -1,7 +1,7 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { XClose } from '@ncds/ui-admin-icon';
3
3
  import classNames from 'classnames';
4
- import { Badge } from '../badge/Badge';
4
+ import { Badge } from '../feedback-and-status/badge/Badge';
5
5
  const TabButton = ({ id, label, size = 'sm', tabButtonType, type, isActive = false, badgeInfo, className, children, ...props }) => {
6
6
  const componentClassName = classNames('ncua-tab-button', { 'is-active': isActive }, className);
7
7
  if ('href' in props && props.href) {