@ceed/cds 0.0.187-treeshaking.1 → 0.0.187

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 (335) hide show
  1. package/dist/components/Accordions/index.d.ts +2 -2
  2. package/dist/components/Autocomplete/index.d.ts +2 -2
  3. package/dist/components/Avatar/index.d.ts +2 -2
  4. package/dist/components/Box/index.d.ts +2 -2
  5. package/dist/components/Breadcrumbs/index.d.ts +2 -2
  6. package/dist/components/Button/index.d.ts +2 -2
  7. package/dist/components/Calendar/Calendar.d.ts +1 -1
  8. package/dist/components/Calendar/hooks/use-calendar-props.d.ts +3 -3
  9. package/dist/components/Calendar/hooks/use-calendar.d.ts +1 -1
  10. package/dist/components/Calendar/index.d.ts +2 -2
  11. package/dist/components/Card/index.d.ts +2 -2
  12. package/dist/components/Checkbox/index.d.ts +2 -2
  13. package/dist/components/Chip/index.d.ts +2 -2
  14. package/dist/components/Container/index.d.ts +2 -2
  15. package/dist/components/CurrencyInput/index.d.ts +2 -2
  16. package/dist/components/DataTable/DataTable.d.ts +1 -1
  17. package/dist/components/DataTable/index.d.ts +2 -2
  18. package/dist/components/DataTable/types.d.ts +7 -7
  19. package/dist/components/DatePicker/DatePicker.d.ts +1 -1
  20. package/dist/components/DatePicker/index.d.ts +2 -2
  21. package/dist/components/DateRangePicker/DateRangePicker.d.ts +1 -1
  22. package/dist/components/DateRangePicker/index.d.ts +2 -2
  23. package/dist/components/DialogActions/index.d.ts +2 -2
  24. package/dist/components/DialogContent/index.d.ts +2 -2
  25. package/dist/components/DialogFrame/DialogFrame.d.ts +1 -1
  26. package/dist/components/DialogFrame/index.d.ts +2 -2
  27. package/dist/components/DialogTitle/index.d.ts +2 -2
  28. package/dist/components/Divider/index.d.ts +2 -2
  29. package/dist/components/Drawer/index.d.ts +2 -2
  30. package/dist/components/Dropdown/index.d.ts +2 -2
  31. package/dist/components/FormControl/index.d.ts +2 -2
  32. package/dist/components/FormHelperText/index.d.ts +2 -2
  33. package/dist/components/FormLabel/index.d.ts +2 -2
  34. package/dist/components/Grid/index.d.ts +2 -2
  35. package/dist/components/IconButton/index.d.ts +2 -2
  36. package/dist/components/Input/Input.d.ts +1 -1
  37. package/dist/components/Input/index.d.ts +2 -2
  38. package/dist/components/InsetDrawer/index.d.ts +2 -2
  39. package/dist/components/Markdown/Markdown.d.ts +22 -6
  40. package/dist/components/Markdown/index.d.ts +2 -2
  41. package/dist/components/Menu/index.d.ts +2 -2
  42. package/dist/components/MenuButton/MenuButton.d.ts +1 -1
  43. package/dist/components/Modal/Modal.d.ts +4 -4
  44. package/dist/components/Modal/index.d.ts +2 -2
  45. package/dist/components/MonthPicker/MonthPicker.d.ts +1 -1
  46. package/dist/components/MonthPicker/index.d.ts +2 -2
  47. package/dist/components/MonthRangePicker/MonthRangePicker.d.ts +1 -1
  48. package/dist/components/MonthRangePicker/index.d.ts +2 -2
  49. package/dist/components/NavigationGroup/index.d.ts +2 -2
  50. package/dist/components/NavigationItem/index.d.ts +2 -2
  51. package/dist/components/Navigator/index.d.ts +2 -2
  52. package/dist/components/Pagination/Pagination.d.ts +2 -2
  53. package/dist/components/Pagination/index.d.ts +2 -2
  54. package/dist/components/PercentageInput/index.d.ts +2 -2
  55. package/dist/components/Radio/index.d.ts +2 -2
  56. package/dist/components/RadioList/RadioList.d.ts +1 -1
  57. package/dist/components/RadioList/index.d.ts +2 -2
  58. package/dist/components/Select/Select.d.ts +1 -1
  59. package/dist/components/Select/index.d.ts +2 -2
  60. package/dist/components/Sheet/index.d.ts +2 -2
  61. package/dist/components/Stack/index.d.ts +2 -2
  62. package/dist/components/Stepper/index.d.ts +2 -2
  63. package/dist/components/Switch/index.d.ts +2 -2
  64. package/dist/components/Table/index.d.ts +2 -2
  65. package/dist/components/Tabs/index.d.ts +2 -2
  66. package/dist/components/Textarea/Textarea.d.ts +17 -3
  67. package/dist/components/Textarea/index.d.ts +2 -2
  68. package/dist/components/ThemeProvider/ThemeProvider.d.ts +7 -7
  69. package/dist/components/ThemeProvider/index.d.ts +2 -2
  70. package/dist/components/Tooltip/index.d.ts +2 -2
  71. package/dist/components/Typography/index.d.ts +2 -2
  72. package/dist/components/Uploader/Uploader.d.ts +3 -4
  73. package/dist/components/Uploader/index.d.ts +2 -2
  74. package/dist/components/index.d.ts +53 -53
  75. package/dist/index.d.ts +1 -1
  76. package/dist/index.js +2 -52
  77. package/framer/index.js +30 -30
  78. package/package.json +4 -8
  79. package/dist/_virtual/_commonjsHelpers.js +0 -30
  80. package/dist/_virtual/bind-all.js +0 -3
  81. package/dist/_virtual/bind.js +0 -3
  82. package/dist/_virtual/colorManipulator.js +0 -5
  83. package/dist/_virtual/colorManipulator2.js +0 -3
  84. package/dist/_virtual/createStyled.js +0 -7
  85. package/dist/_virtual/createStyled2.js +0 -3
  86. package/dist/_virtual/extends.js +0 -3
  87. package/dist/_virtual/index.js +0 -5
  88. package/dist/_virtual/index10.js +0 -6
  89. package/dist/_virtual/index11.js +0 -6
  90. package/dist/_virtual/index12.js +0 -6
  91. package/dist/_virtual/index2.js +0 -3
  92. package/dist/_virtual/index3.js +0 -7
  93. package/dist/_virtual/index4.js +0 -3
  94. package/dist/_virtual/index5.js +0 -6
  95. package/dist/_virtual/index6.js +0 -6
  96. package/dist/_virtual/index7.js +0 -6
  97. package/dist/_virtual/index8.js +0 -6
  98. package/dist/_virtual/index9.js +0 -6
  99. package/dist/_virtual/interopRequireDefault.js +0 -3
  100. package/dist/_virtual/objectWithoutPropertiesLoose.js +0 -3
  101. package/dist/components/Accordions/Accordions.js +0 -43
  102. package/dist/components/Autocomplete/Autocomplete.js +0 -196
  103. package/dist/components/Autocomplete/index.js +0 -5
  104. package/dist/components/Avatar/Avatar.js +0 -42
  105. package/dist/components/Box/Box.js +0 -8
  106. package/dist/components/Box/index.js +0 -5
  107. package/dist/components/Breadcrumbs/Breadcrumbs.js +0 -47
  108. package/dist/components/Button/Button.js +0 -20
  109. package/dist/components/Button/index.js +0 -5
  110. package/dist/components/Calendar/Calendar.js +0 -333
  111. package/dist/components/Calendar/hooks/use-calendar-props.js +0 -74
  112. package/dist/components/Calendar/hooks/use-calendar.js +0 -247
  113. package/dist/components/Calendar/index.js +0 -5
  114. package/dist/components/Calendar/utils/index.js +0 -74
  115. package/dist/components/Card/Card.js +0 -20
  116. package/dist/components/Checkbox/Checkbox.js +0 -19
  117. package/dist/components/Checkbox/index.js +0 -5
  118. package/dist/components/Chip/Chip.js +0 -8
  119. package/dist/components/Chip/index.js +0 -5
  120. package/dist/components/Container/Container.js +0 -49
  121. package/dist/components/CurrencyInput/CurrencyInput.js +0 -91
  122. package/dist/components/CurrencyInput/hooks/use-currency-setting.js +0 -167
  123. package/dist/components/CurrencyInput/index.js +0 -5
  124. package/dist/components/DataTable/DataTable.js +0 -568
  125. package/dist/components/DatePicker/DatePicker.js +0 -210
  126. package/dist/components/DatePicker/index.js +0 -5
  127. package/dist/components/DateRangePicker/DateRangePicker.js +0 -213
  128. package/dist/components/DialogActions/DialogActions.js +0 -14
  129. package/dist/components/DialogActions/index.js +0 -5
  130. package/dist/components/DialogContent/DialogContent.js +0 -11
  131. package/dist/components/DialogContent/index.js +0 -5
  132. package/dist/components/DialogFrame/DialogFrame.js +0 -31
  133. package/dist/components/DialogTitle/DialogTitle.js +0 -11
  134. package/dist/components/DialogTitle/index.js +0 -5
  135. package/dist/components/Divider/Divider.js +0 -19
  136. package/dist/components/Drawer/Drawer.js +0 -40
  137. package/dist/components/Dropdown/Dropdown.js +0 -8
  138. package/dist/components/Dropdown/index.js +0 -5
  139. package/dist/components/FormControl/FormControl.js +0 -15
  140. package/dist/components/FormControl/index.js +0 -5
  141. package/dist/components/FormHelperText/FormHelperText.js +0 -8
  142. package/dist/components/FormHelperText/index.js +0 -5
  143. package/dist/components/FormLabel/FormLabel.js +0 -8
  144. package/dist/components/FormLabel/index.js +0 -5
  145. package/dist/components/IconButton/IconButton.js +0 -20
  146. package/dist/components/IconButton/index.js +0 -5
  147. package/dist/components/Input/Input.js +0 -60
  148. package/dist/components/Input/index.js +0 -5
  149. package/dist/components/InsetDrawer/InsetDrawer.js +0 -30
  150. package/dist/components/Markdown/Markdown.js +0 -36
  151. package/dist/components/Menu/Menu.js +0 -43
  152. package/dist/components/Menu/index.js +0 -6
  153. package/dist/components/MenuButton/MenuButton.js +0 -26
  154. package/dist/components/Modal/Modal.js +0 -43
  155. package/dist/components/MonthPicker/MonthPicker.js +0 -162
  156. package/dist/components/MonthRangePicker/MonthRangePicker.js +0 -172
  157. package/dist/components/NavigationGroup/NavigationGroup.js +0 -42
  158. package/dist/components/NavigationItem/NavigationItem.js +0 -45
  159. package/dist/components/Navigator/Navigator.js +0 -30
  160. package/dist/components/Pagination/Pagination.js +0 -117
  161. package/dist/components/Pagination/index.js +0 -5
  162. package/dist/components/PercentageInput/PercentageInput.js +0 -85
  163. package/dist/components/Radio/Radio.js +0 -11
  164. package/dist/components/RadioList/RadioList.js +0 -18
  165. package/dist/components/Select/Select.js +0 -56
  166. package/dist/components/Select/index.js +0 -6
  167. package/dist/components/Sheet/Sheet.js +0 -8
  168. package/dist/components/Sheet/index.js +0 -5
  169. package/dist/components/Stack/index.js +0 -2
  170. package/dist/components/Stepper/Stepper.js +0 -66
  171. package/dist/components/Switch/Switch.js +0 -46
  172. package/dist/components/Table/Table.js +0 -64
  173. package/dist/components/Tabs/Tabs.js +0 -17
  174. package/dist/components/Textarea/Textarea.js +0 -31
  175. package/dist/components/Textarea/index.js +0 -5
  176. package/dist/components/ThemeProvider/ThemeProvider.js +0 -240
  177. package/dist/components/Tooltip/Tooltip.js +0 -19
  178. package/dist/components/Tooltip/index.js +0 -5
  179. package/dist/components/Typography/Typography.js +0 -19
  180. package/dist/components/Typography/index.js +0 -5
  181. package/dist/components/Uploader/Uploader.js +0 -402
  182. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/adapter/element-adapter-native-data-key.js +0 -8
  183. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/adapter/external-adapter.js +0 -245
  184. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/entry-point/combine.js +0 -1
  185. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/entry-point/external/adapter.js +0 -1
  186. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/entry-point/external/file.js +0 -1
  187. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/entry-point/prevent-unhandled.js +0 -1
  188. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/honey-pot-fix/get-element-from-point-without-honey-pot.js +0 -19
  189. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/honey-pot-fix/honey-pot-data-attribute.js +0 -5
  190. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/honey-pot-fix/is-honey-pot-element.js +0 -7
  191. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/ledger/dispatch-consumer-event.js +0 -128
  192. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/ledger/lifecycle-manager.js +0 -340
  193. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/ledger/usage-ledger.js +0 -33
  194. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/make-adapter/make-adapter.js +0 -60
  195. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/make-adapter/make-drop-target.js +0 -312
  196. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/make-adapter/make-monitor.js +0 -96
  197. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/public-utils/combine.js +0 -13
  198. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/public-utils/external/file.js +0 -23
  199. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/public-utils/once.js +0 -18
  200. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/public-utils/prevent-unhandled.js +0 -102
  201. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/util/add-attribute.js +0 -10
  202. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/util/android.js +0 -3
  203. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/util/changing-window/count-events-for-safari.js +0 -123
  204. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/util/changing-window/is-entering-window.js +0 -55
  205. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/util/changing-window/is-from-another-window.js +0 -18
  206. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/util/changing-window/is-leaving-window.js +0 -55
  207. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/util/detect-broken-drag.js +0 -49
  208. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/util/get-input.js +0 -16
  209. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/util/is-firefox.js +0 -15
  210. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/util/is-safari.js +0 -18
  211. package/dist/external/@atlaskit/pragmatic-drag-and-drop/dist/esm/util/media-types/text-media-type.js +0 -8
  212. package/dist/external/@atlaskit/pragmatic-drag-and-drop/external/@babel/runtime/helpers/esm/arrayLikeToArray.js +0 -7
  213. package/dist/external/@atlaskit/pragmatic-drag-and-drop/external/@babel/runtime/helpers/esm/arrayWithHoles.js +0 -5
  214. package/dist/external/@atlaskit/pragmatic-drag-and-drop/external/@babel/runtime/helpers/esm/arrayWithoutHoles.js +0 -7
  215. package/dist/external/@atlaskit/pragmatic-drag-and-drop/external/@babel/runtime/helpers/esm/defineProperty.js +0 -18
  216. package/dist/external/@atlaskit/pragmatic-drag-and-drop/external/@babel/runtime/helpers/esm/iterableToArray.js +0 -5
  217. package/dist/external/@atlaskit/pragmatic-drag-and-drop/external/@babel/runtime/helpers/esm/iterableToArrayLimit.js +0 -26
  218. package/dist/external/@atlaskit/pragmatic-drag-and-drop/external/@babel/runtime/helpers/esm/nonIterableRest.js +0 -5
  219. package/dist/external/@atlaskit/pragmatic-drag-and-drop/external/@babel/runtime/helpers/esm/nonIterableSpread.js +0 -5
  220. package/dist/external/@atlaskit/pragmatic-drag-and-drop/external/@babel/runtime/helpers/esm/slicedToArray.js +0 -10
  221. package/dist/external/@atlaskit/pragmatic-drag-and-drop/external/@babel/runtime/helpers/esm/toConsumableArray.js +0 -10
  222. package/dist/external/@atlaskit/pragmatic-drag-and-drop/external/@babel/runtime/helpers/esm/toPrimitive.js +0 -14
  223. package/dist/external/@atlaskit/pragmatic-drag-and-drop/external/@babel/runtime/helpers/esm/toPropertyKey.js +0 -9
  224. package/dist/external/@atlaskit/pragmatic-drag-and-drop/external/@babel/runtime/helpers/esm/typeof.js +0 -11
  225. package/dist/external/@atlaskit/pragmatic-drag-and-drop/external/@babel/runtime/helpers/esm/unsupportedIterableToArray.js +0 -12
  226. package/dist/external/@babel/runtime/helpers/esm/extends.js +0 -16
  227. package/dist/external/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +0 -14
  228. package/dist/external/@babel/runtime/helpers/extends.js +0 -28
  229. package/dist/external/@babel/runtime/helpers/interopRequireDefault.js +0 -19
  230. package/dist/external/@babel/runtime/helpers/objectWithoutPropertiesLoose.js +0 -26
  231. package/dist/external/@emotion/cache/dist/emotion-cache.esm.js +0 -653
  232. package/dist/external/@emotion/memoize/dist/emotion-memoize.esm.js +0 -9
  233. package/dist/external/@emotion/sheet/dist/emotion-sheet.esm.js +0 -154
  234. package/dist/external/@emotion/weak-memoize/dist/emotion-weak-memoize.esm.js +0 -16
  235. package/dist/external/@mui/icons-material/esm/ArrowUpwardRounded.js +0 -8
  236. package/dist/external/@mui/icons-material/esm/CalendarToday.js +0 -8
  237. package/dist/external/@mui/icons-material/esm/Check.js +0 -8
  238. package/dist/external/@mui/icons-material/esm/ChevronLeft.js +0 -8
  239. package/dist/external/@mui/icons-material/esm/ChevronRight.js +0 -8
  240. package/dist/external/@mui/icons-material/esm/ClearRounded.js +0 -8
  241. package/dist/external/@mui/icons-material/esm/Close.js +0 -8
  242. package/dist/external/@mui/icons-material/esm/CloudUploadRounded.js +0 -8
  243. package/dist/external/@mui/icons-material/esm/ExpandMore.js +0 -8
  244. package/dist/external/@mui/icons-material/esm/Info.js +0 -8
  245. package/dist/external/@mui/icons-material/esm/UploadFileRounded.js +0 -8
  246. package/dist/external/@mui/material/SvgIcon/SvgIcon.js +0 -186
  247. package/dist/external/@mui/material/SvgIcon/svgIconClasses.js +0 -9
  248. package/dist/external/@mui/material/colors/blue.js +0 -18
  249. package/dist/external/@mui/material/colors/common.js +0 -6
  250. package/dist/external/@mui/material/colors/green.js +0 -18
  251. package/dist/external/@mui/material/colors/grey.js +0 -18
  252. package/dist/external/@mui/material/colors/lightBlue.js +0 -18
  253. package/dist/external/@mui/material/colors/orange.js +0 -18
  254. package/dist/external/@mui/material/colors/purple.js +0 -18
  255. package/dist/external/@mui/material/colors/red.js +0 -18
  256. package/dist/external/@mui/material/styles/createMixins.js +0 -19
  257. package/dist/external/@mui/material/styles/createPalette.js +0 -308
  258. package/dist/external/@mui/material/styles/createTheme.js +0 -82
  259. package/dist/external/@mui/material/styles/createTransitions.js +0 -91
  260. package/dist/external/@mui/material/styles/createTypography.js +0 -93
  261. package/dist/external/@mui/material/styles/defaultTheme.js +0 -5
  262. package/dist/external/@mui/material/styles/identifier.js +0 -3
  263. package/dist/external/@mui/material/styles/rootShouldForwardProp.js +0 -5
  264. package/dist/external/@mui/material/styles/shadows.js +0 -11
  265. package/dist/external/@mui/material/styles/slotShouldForwardProp.js +0 -6
  266. package/dist/external/@mui/material/styles/styled.js +0 -12
  267. package/dist/external/@mui/material/styles/useThemeProps.js +0 -17
  268. package/dist/external/@mui/material/styles/zIndex.js +0 -14
  269. package/dist/external/@mui/material/utils/capitalize.js +0 -5
  270. package/dist/external/@mui/material/utils/createSvgIcon.js +0 -24
  271. package/dist/external/@mui/styled-engine/GlobalStyles/GlobalStyles.js +0 -24
  272. package/dist/external/@mui/styled-engine/StyledEngineProvider/StyledEngineProvider.js +0 -37
  273. package/dist/external/@mui/styled-engine/index.js +0 -38
  274. package/dist/external/@mui/system/colorManipulator.js +0 -385
  275. package/dist/external/@mui/system/createStyled.js +0 -270
  276. package/dist/external/@mui/system/esm/borders.js +0 -51
  277. package/dist/external/@mui/system/esm/breakpoints.js +0 -66
  278. package/dist/external/@mui/system/esm/compose.js +0 -26
  279. package/dist/external/@mui/system/esm/createTheme/applyStyles.js +0 -76
  280. package/dist/external/@mui/system/esm/createTheme/createBreakpoints.js +0 -82
  281. package/dist/external/@mui/system/esm/createTheme/createSpacing.js +0 -34
  282. package/dist/external/@mui/system/esm/createTheme/createTheme.js +0 -45
  283. package/dist/external/@mui/system/esm/createTheme/index.js +0 -3
  284. package/dist/external/@mui/system/esm/createTheme/shape.js +0 -5
  285. package/dist/external/@mui/system/esm/cssGrid.js +0 -86
  286. package/dist/external/@mui/system/esm/memoize.js +0 -11
  287. package/dist/external/@mui/system/esm/merge.js +0 -12
  288. package/dist/external/@mui/system/esm/palette.js +0 -28
  289. package/dist/external/@mui/system/esm/responsivePropType.js +0 -5
  290. package/dist/external/@mui/system/esm/sizing.js +0 -67
  291. package/dist/external/@mui/system/esm/spacing.js +0 -144
  292. package/dist/external/@mui/system/esm/style.js +0 -77
  293. package/dist/external/@mui/system/esm/styleFunctionSx/defaultSxConfig.js +0 -293
  294. package/dist/external/@mui/system/esm/styleFunctionSx/extendSxProp.js +0 -51
  295. package/dist/external/@mui/system/esm/styleFunctionSx/index.js +0 -3
  296. package/dist/external/@mui/system/esm/styleFunctionSx/styleFunctionSx.js +0 -129
  297. package/dist/external/@mui/system/esm/useTheme.js +0 -9
  298. package/dist/external/@mui/system/esm/useThemeProps/getThemeProps.js +0 -15
  299. package/dist/external/@mui/system/esm/useThemeProps/useThemeProps.js +0 -22
  300. package/dist/external/@mui/system/esm/useThemeWithoutDefault.js +0 -12
  301. package/dist/external/@mui/utils/ClassNameGenerator/ClassNameGenerator.js +0 -18
  302. package/dist/external/@mui/utils/capitalize/capitalize.js +0 -14
  303. package/dist/external/@mui/utils/capitalize/index.js +0 -1
  304. package/dist/external/@mui/utils/clamp/clamp.js +0 -5
  305. package/dist/external/@mui/utils/clamp/index.js +0 -1
  306. package/dist/external/@mui/utils/composeClasses/composeClasses.js +0 -23
  307. package/dist/external/@mui/utils/deepmerge/deepmerge.js +0 -44
  308. package/dist/external/@mui/utils/deepmerge/index.js +0 -1
  309. package/dist/external/@mui/utils/formatMuiErrorMessage/formatMuiErrorMessage.js +0 -21
  310. package/dist/external/@mui/utils/formatMuiErrorMessage/index.js +0 -1
  311. package/dist/external/@mui/utils/generateUtilityClass/generateUtilityClass.js +0 -22
  312. package/dist/external/@mui/utils/generateUtilityClasses/generateUtilityClasses.js +0 -11
  313. package/dist/external/@mui/utils/getDisplayName/getDisplayName.js +0 -49
  314. package/dist/external/@mui/utils/getDisplayName/index.js +0 -1
  315. package/dist/external/@mui/utils/resolveProps/resolveProps.js +0 -37
  316. package/dist/external/bind-event-listener/dist/bind-all.js +0 -54
  317. package/dist/external/bind-event-listener/dist/bind.js +0 -21
  318. package/dist/external/bind-event-listener/dist/index.js +0 -21
  319. package/dist/external/clsx/dist/clsx.js +0 -3
  320. package/dist/external/object-assign/index.js +0 -99
  321. package/dist/external/prop-types/checkPropTypes.js +0 -115
  322. package/dist/external/prop-types/factoryWithThrowingShims.js +0 -74
  323. package/dist/external/prop-types/factoryWithTypeCheckers.js +0 -625
  324. package/dist/external/prop-types/index.js +0 -33
  325. package/dist/external/prop-types/lib/ReactPropTypesSecret.js +0 -21
  326. package/dist/external/prop-types/lib/has.js +0 -11
  327. package/dist/external/raf-schd/dist/raf-schd.esm.js +0 -34
  328. package/dist/external/stylis/src/Enum.js +0 -12
  329. package/dist/external/stylis/src/Middleware.js +0 -32
  330. package/dist/external/stylis/src/Parser.js +0 -193
  331. package/dist/external/stylis/src/Serializer.js +0 -38
  332. package/dist/external/stylis/src/Tokenizer.js +0 -223
  333. package/dist/external/stylis/src/Utility.js +0 -117
  334. package/dist/hooks/use-controlled-state/index.js +0 -23
  335. package/dist/libs/rehype-accent/index.js +0 -39
@@ -1,568 +0,0 @@
1
- import React__default, { useId, useRef, useMemo, useCallback, useState, useEffect } from 'react';
2
- import { useVirtualizer } from '@tanstack/react-virtual';
3
- import { styled, Stack, LinearProgress, Link } from '@mui/joy';
4
- import SortIcon from '../../external/@mui/icons-material/esm/ArrowUpwardRounded.js';
5
- import InfoIcon from '../../external/@mui/icons-material/esm/Info.js';
6
- import { Sheet } from '../Sheet/Sheet.js';
7
- import { Table } from '../Table/Table.js';
8
- import { Checkbox } from '../Checkbox/Checkbox.js';
9
- import { Box } from '../Box/Box.js';
10
- import { Typography } from '../Typography/Typography.js';
11
- import { Button } from '../Button/Button.js';
12
- import { CurrencyInput } from '../CurrencyInput/CurrencyInput.js';
13
- import { DatePicker } from '../DatePicker/DatePicker.js';
14
- import { Input } from '../Input/Input.js';
15
- import { Textarea } from '../Textarea/Textarea.js';
16
- import { Autocomplete } from '../Autocomplete/Autocomplete.js';
17
- import { Select } from '../Select/Select.js';
18
- import { Tooltip } from '../Tooltip/Tooltip.js';
19
- import { motion } from 'framer-motion';
20
- import { useControlledState } from '../../hooks/use-controlled-state/index.js';
21
- import { Pagination } from '../Pagination/Pagination.js';
22
-
23
- function getTextAlign(props) {
24
- return !props.editMode &&
25
- ["number", "date", "currency"].includes(props.type || "")
26
- ? "end"
27
- : "start";
28
- }
29
- const OverlayWrapper = styled("tr", {
30
- name: "DataTable",
31
- slot: "overlayWrapper",
32
- })({
33
- position: "sticky",
34
- top: `calc(var(--unstable_TableCell-height, 32px))`,
35
- left: 0,
36
- right: 0,
37
- zIndex: 1,
38
- "& > td": {
39
- height: 0,
40
- padding: 0,
41
- border: "none !important",
42
- },
43
- });
44
- const numberFormatter = (value) => "Intl" in window ? new Intl.NumberFormat().format(value) : value;
45
- const Resizer = (ref) => (React__default.createElement(Box, { sx: {
46
- position: "absolute",
47
- top: 0,
48
- right: 0,
49
- bottom: 0,
50
- width: "4px",
51
- cursor: "col-resize",
52
- },
53
- // NOTE: Resize가 정렬을 변경하면 안된다.
54
- onClick: (e) => e.stopPropagation(), onMouseDown: (e) => {
55
- const initialX = e.clientX;
56
- const initialWidth = ref.current?.getBoundingClientRect().width;
57
- const onMouseMove = (e) => {
58
- if (initialWidth && initialX) {
59
- ref.current.style.width = `${initialWidth + (e.clientX - initialX)}px`;
60
- }
61
- };
62
- const onMouseUp = () => {
63
- document.removeEventListener("mousemove", onMouseMove);
64
- document.removeEventListener("mouseup", onMouseUp);
65
- };
66
- document.addEventListener("mousemove", onMouseMove);
67
- document.addEventListener("mouseup", onMouseUp);
68
- } }));
69
- const VirtualizedTableBody = styled("tbody", {
70
- name: "DataTable",
71
- slot: "tableBody",
72
- })({
73
- // HACK: for virtualization: tbody의 height를 렌더링 된 tr의 총 높이 보다 높은 값으로 지정하고도 tr의 size를 유지하기 위한 꼼수
74
- "&::after": {
75
- content: "''",
76
- display: "block",
77
- height: "0.01em",
78
- },
79
- });
80
- const VirtualizedTableRow = styled("tr", {
81
- name: "DataTable",
82
- slot: "tableRow",
83
- shouldForwardProp: (prop) => prop !== "striped",
84
- })(({ striped }) => ({
85
- ...(striped && {
86
- background: "var(--TableRow-stripeBackground, var(--ceed-palette-background-level2))",
87
- color: "var(--ceed-palette-text-primary)",
88
- }),
89
- "&:hover": {
90
- background: "var(--TableRow-hoverBackground, var(--ceed-palette-background-level3))",
91
- },
92
- }));
93
- const Asterisk = styled("span", {
94
- name: "DataTable",
95
- slot: "headCellAsterisk",
96
- })(({ theme }) => ({
97
- color: "var(--ceed-palette-danger-500)",
98
- marginLeft: theme.spacing(0.5),
99
- }));
100
- const MotionSortIcon = motion(SortIcon);
101
- const HeadCell = (props) => {
102
- // prop destruction
103
- const { width, maxWidth, minWidth, stickyHeader, resizable, field, tableId, headerName, required, editMode, sort, onSortChange, sortable = true, sortOrder, description, } = props;
104
- // lib hooks
105
- // state, ref, querystring hooks
106
- const ref = useRef(null);
107
- // form hooks
108
- // query hooks
109
- // calculated values
110
- const headId = useMemo(() => `${tableId}_header_${headerName ?? field}`.trim(), [tableId, headerName, field]);
111
- const resizer = resizable ?? true ? Resizer(ref) : null;
112
- const style = {
113
- width: width,
114
- minWidth: minWidth ?? "50px",
115
- maxWidth: maxWidth,
116
- position: stickyHeader ? undefined : "relative",
117
- cursor: sortable ? "pointer" : "default",
118
- // TODO: multi-sort때문에 일단 추가한 property, joy-ui에서는 multi-sort시 th에 user-select: none을 적용하고 툴팁을 띄워준다.
119
- userSelect: "none",
120
- };
121
- const textAlign = getTextAlign(props);
122
- const initialSort = sortOrder[0];
123
- const sortIcon = sortable && (React__default.createElement(MotionSortIcon, { style: {
124
- width: "16px",
125
- height: "16px",
126
- },
127
- // @ts-ignore: material-icon을 js로 import해서 role property에 대한 타입을 못찾는다.
128
- role: "img", "aria-labelledby": headId, "aria-description": (sort ?? initialSort) === "desc" ? "descending" : "ascending", "data-testid": undefined,
129
- // #region framer-motion
130
- variants: {
131
- hover: { opacity: 1 },
132
- initial: { opacity: 0 },
133
- }, animate: {
134
- color: !!sort
135
- ? "var(--ceed-palette-text-secondary)"
136
- : "var(--ceed-palette-primary-solidDisabledColor)",
137
- rotate: (sort ?? initialSort) === "desc" ? 180 : 0,
138
- opacity: !!sort ? 1 : 0,
139
- }, transition: {
140
- duration: 0,
141
- rotate: { duration: 0.2, ease: "easeOut" },
142
- color: { duration: 0.2, ease: "easeInOut" },
143
- opacity: { duration: 0.2, ease: "easeInOut" },
144
- } }));
145
- const descriptionTooltip = description ? (React__default.createElement(Tooltip, { onClick: (e) => e.stopPropagation(), title: React__default.createElement(React__default.Fragment, null, description?.split("\n").map((line, i) => (React__default.createElement("div", { key: i }, line)))), placement: "top" },
146
- React__default.createElement(InfoIcon, { fontSize: "small" }))) : null;
147
- // effects
148
- // handlers
149
- return (React__default.createElement(motion.th, { id: headId, "aria-label": headerName ?? field, "aria-sort": sort
150
- ? { asc: "ascending", desc: "descending" }[sort]
151
- : "none", ref: ref, key: field, style: style, onClick: (e) => sortable &&
152
- onSortChange?.({ field, currentSort: sort, multiple: e.shiftKey }), whileHover: "hover", initial: "initial" },
153
- React__default.createElement(Stack, { gap: 1, direction: "row", justifyContent: textAlign, alignItems: "center" },
154
- textAlign === "end" && sortIcon,
155
- textAlign === "end" && descriptionTooltip,
156
- React__default.createElement("div", null,
157
- headerName ?? field,
158
- editMode && required && React__default.createElement(Asterisk, null, "*")),
159
- textAlign === "start" && descriptionTooltip,
160
- textAlign === "start" && sortIcon),
161
- resizer));
162
- };
163
- const BodyCell = (props) => {
164
- // prop destruction
165
- const { tableId, field, type, renderCell, renderEditCell, isCellEditable, noWrap, row, rowId, } = props;
166
- // lib hooks
167
- // state, ref, querystring hooks
168
- const [value, setValue] = useState(row[field]);
169
- const cellRef = useRef(null);
170
- // form hooks
171
- // query hooks
172
- // calculated values
173
- const params = useMemo(() => ({
174
- row,
175
- value,
176
- id: rowId,
177
- }), [row, rowId, value]);
178
- const editMode = useMemo(() => !!(props.editMode &&
179
- (typeof isCellEditable === "function"
180
- ? isCellEditable(params)
181
- : isCellEditable ?? true)), [props.editMode, isCellEditable, params]);
182
- const componentProps = useMemo(() => ({
183
- ...(typeof props.componentProps === "function"
184
- ? props.componentProps(params)
185
- : props.componentProps || {}),
186
- size: "sm",
187
- }), [props, params]);
188
- const editModeComponentProps = useMemo(() => ({
189
- ...componentProps,
190
- onChange: (e) => {
191
- componentProps.onChange?.(e);
192
- setValue(e.target.value);
193
- if (type === "select") {
194
- props.onCellEditStop?.({
195
- ...params,
196
- originalRow: row,
197
- row: {
198
- ...params.row,
199
- [field]: e.target.value,
200
- },
201
- value: e.target.value,
202
- });
203
- }
204
- },
205
- onFocus: (e) => {
206
- componentProps.onFocus?.(e);
207
- props.onCellEditStart?.({
208
- ...params,
209
- originalRow: row,
210
- row: {
211
- ...params.row,
212
- value,
213
- },
214
- value,
215
- });
216
- },
217
- onBlur: (e) => {
218
- componentProps.onBlur?.(e);
219
- if (type &&
220
- ["number", "text", "longText", "currency", "date"].includes(type)) {
221
- props.onCellEditStop?.({
222
- ...params,
223
- originalRow: row,
224
- row: {
225
- ...params.row,
226
- [field]: value,
227
- },
228
- value,
229
- });
230
- }
231
- },
232
- ...(type === "autocomplete" && {
233
- onChangeComplete: (e) => {
234
- componentProps.onChangeComplete?.(e);
235
- setValue(e.target.value);
236
- props.onCellEditStop?.({
237
- ...params,
238
- originalRow: row,
239
- row: {
240
- ...params.row,
241
- [field]: e.target.value,
242
- },
243
- value: e.target.value,
244
- });
245
- },
246
- }),
247
- }), [params, row, field, value, componentProps, type, props]);
248
- const EditModeComponent = useMemo(() => {
249
- if (renderEditCell) {
250
- return renderEditCell(params);
251
- }
252
- return {
253
- date: (React__default.createElement(DatePicker, { value: value, ...editModeComponentProps })),
254
- currency: (React__default.createElement(CurrencyInput, { value: value, ...editModeComponentProps })),
255
- number: (React__default.createElement(Input, { value: value, type: "number", ...editModeComponentProps })),
256
- text: (React__default.createElement(Input, { value: value, type: "text", ...editModeComponentProps })),
257
- longText: (React__default.createElement(Textarea, { value: value, ...editModeComponentProps })),
258
- autocomplete: (React__default.createElement(Autocomplete, { value: value, options: editModeComponentProps.options || [value], ...editModeComponentProps })),
259
- select: (React__default.createElement(Select, { value: value,
260
- // @ts-expect-error NOTE: editComponentProps로 option이 넘어오면 Override되어야 한다
261
- options: editModeComponentProps.options || [value], ...editModeComponentProps })),
262
- }[type || "text"];
263
- }, [value, editModeComponentProps, type]);
264
- const ReadModeComponent = useMemo(() => {
265
- if (renderCell) {
266
- return renderCell(params);
267
- }
268
- const innerText = value;
269
- const typedComponent = {
270
- link: React__default.createElement(props.component || Link, {
271
- children: innerText,
272
- ...componentProps,
273
- }),
274
- }[type || "text"];
275
- return typedComponent || innerText;
276
- }, [value, renderCell, params, type, componentProps, props]);
277
- const CellComponent = useMemo(() => editMode && EditModeComponent ? EditModeComponent : ReadModeComponent, [editMode, EditModeComponent, ReadModeComponent]);
278
- const showTooltip = useMemo(() => noWrap && props.type === "longText", [noWrap, props.type]);
279
- // effects
280
- useEffect(() => {
281
- setValue(row[field]);
282
- }, [row, field]);
283
- // handlers
284
- return (React__default.createElement("td", { ref: cellRef, key: field, headers: `${tableId}_header_${props.headerName ?? field}`, style: {
285
- textAlign: getTextAlign({ type }),
286
- verticalAlign: editMode ? "top" : "middle",
287
- } }, showTooltip ? (React__default.createElement(Tooltip, { title: value, placement: "bottom", style: { maxWidth: "100%" }, enterDelay: 1500, enterNextDelay: 1500 },
288
- React__default.createElement("div", { style: {
289
- overflow: "hidden",
290
- textOverflow: "ellipsis",
291
- } }, CellComponent))) : (CellComponent)));
292
- };
293
- const BodyRow = (props) => {
294
- // prop destruction
295
- const { tableId, columns, rowId, editMode, noWrap, row } = props;
296
- // lib hooks
297
- // state, ref, querystring hooks
298
- // form hooks
299
- // query hooks
300
- // calculated values
301
- // effects
302
- // handlers
303
- return (React__default.createElement(React__default.Fragment, null, columns.map((column, i) => (React__default.createElement(BodyCell, { ...column, tableId: tableId, key: `${rowId}_${column.field.toString()}_${i}`, row: row, rowId: rowId, editMode: editMode, noWrap: noWrap })))));
304
- };
305
- function useDataTableRenderer({ rows: _rows, columns: columnsProp, rowCount: totalRowsProp, initialState, pagination, paginationMode, paginationModel, onPaginationModelChange, sortModel: controlledSortModel, sortOrder: _sortOrder = ["asc", "desc", null], selectionModel = [], onSortModelChange, onSelectionModelChange, editMode, getId: _getId, isTotalSelected: _isTotalSelected, }) {
306
- const [sortModel, setSortModel] = useControlledState(controlledSortModel, initialState?.sorting?.sortModel ?? [], useCallback((sortModel) => onSortModelChange?.(sortModel), [onSortModelChange]));
307
- const columnsByField = useMemo(() => columnsProp.reduce((acc, curr) => ({ ...acc, [curr.field]: curr }), {}), [columnsProp]);
308
- const sortComparator = useCallback((rowA, rowB) => {
309
- for (const sort of sortModel) {
310
- const { field, sort: direction } = sort;
311
- const a = rowA[field];
312
- const b = rowB[field];
313
- const column = columnsByField[field];
314
- let comparison = 0;
315
- if (column.sortComparator) {
316
- comparison = column.sortComparator({
317
- rowA,
318
- rowB,
319
- });
320
- }
321
- else if (typeof a === "string" && typeof b === "string") {
322
- comparison = a.localeCompare(b);
323
- }
324
- else if (typeof a === "number" && typeof b === "number") {
325
- comparison = a - b;
326
- }
327
- else if (a instanceof Date && b instanceof Date) {
328
- comparison = a.getTime() - b.getTime();
329
- }
330
- if (comparison !== 0) {
331
- return direction === "asc" ? comparison : -comparison;
332
- }
333
- }
334
- return 0;
335
- }, [sortModel, columnsByField]);
336
- const rows = useMemo(() => (sortModel.length ? [..._rows].sort(sortComparator) : _rows), [_rows, sortModel, sortComparator]);
337
- const sortOrder = useMemo(() => Array.from(new Set(_sortOrder)), [_sortOrder]);
338
- const [page, setPage] = useState(paginationModel?.page || 1);
339
- const pageSize = paginationModel?.pageSize || 20;
340
- const getId = useCallback((row, index) => _getId?.(row) ??
341
- row.id ??
342
- `${(index || 0) + (page - 1) * pageSize}`, [_getId, page, pageSize]);
343
- const selectedModelSet = useMemo(() => new Set(selectionModel), [selectionModel]);
344
- const dataInPage = useMemo(() => !pagination || paginationMode === "server"
345
- ? rows
346
- : rows.slice((page - 1) * pageSize, (page - 1) * pageSize + pageSize), [rows, page, pageSize, paginationMode, pagination]);
347
- const isAllSelected = useMemo(() => dataInPage.length > 0 &&
348
- dataInPage.every((row, i) => selectedModelSet.has(getId(row, i))), [dataInPage, selectedModelSet, getId]);
349
- const rowCount = totalRowsProp || rows.length;
350
- const isTotalSelected = useMemo(() => _isTotalSelected ?? (rowCount > 0 && selectionModel.length === rowCount), [_isTotalSelected, selectionModel, rowCount]);
351
- const columns = useMemo(() => {
352
- const baseColumns = columnsProp ||
353
- // fallback
354
- Object.keys(rows[0] || {}).map((key) => ({
355
- field: key,
356
- }));
357
- return baseColumns.map((column) => ({
358
- ...column,
359
- isCellEditable: editMode &&
360
- (typeof column.isCellEditable === "function"
361
- ? column.isCellEditable
362
- : column.isCellEditable ?? true),
363
- sort: sortModel.find((sort) => sort.field === column.field)?.sort,
364
- sortOrder: columnsByField[column.field]?.sortOrder || sortOrder,
365
- }));
366
- }, [rows, columnsProp, editMode, sortModel, columnsByField, sortOrder]);
367
- const handlePageChange = useCallback((newPage) => {
368
- setPage(newPage);
369
- onPaginationModelChange?.({ page: newPage, pageSize });
370
- }, [onPaginationModelChange, pageSize]);
371
- const handleSortChange = useCallback((props) => {
372
- const { field, currentSort, multiple } = props;
373
- const column = columnsByField[field];
374
- const columnSortOrder = column.sortOrder || sortOrder;
375
- if (currentSort !== undefined) {
376
- const currentOrderIndex = columnSortOrder.indexOf(currentSort);
377
- const nextSortOrderIndex = (currentOrderIndex + 1) % columnSortOrder.length;
378
- const nextSortOrder = columnSortOrder[nextSortOrderIndex];
379
- if (!nextSortOrder) {
380
- const newSortModel = multiple
381
- ? sortModel.filter((model) => model.field !== field)
382
- : [];
383
- setSortModel(newSortModel);
384
- return;
385
- }
386
- const newSortModel = multiple
387
- ? sortModel.map((model) => model.field === field ? { field, sort: nextSortOrder } : model)
388
- : [{ field, sort: nextSortOrder }];
389
- setSortModel(newSortModel);
390
- }
391
- else {
392
- const newSortModel = multiple
393
- ? [...sortModel, { field, sort: columnSortOrder[0] }]
394
- : [{ field, sort: columnSortOrder[0] }];
395
- setSortModel(newSortModel);
396
- }
397
- }, [sortOrder, columnsByField, sortModel, setSortModel]);
398
- useEffect(() => {
399
- // if uncontrolled, reset page to 1
400
- if (!paginationModel) {
401
- handlePageChange(1);
402
- }
403
- }, [rowCount, handlePageChange, paginationModel]);
404
- useEffect(() => {
405
- const lastPage = Math.max(1, Math.ceil(rowCount / pageSize));
406
- if (page > lastPage) {
407
- handlePageChange(lastPage);
408
- }
409
- }, [page, rowCount, pageSize, handlePageChange]);
410
- useEffect(() => {
411
- onSelectionModelChange?.([]);
412
- }, [page]);
413
- return {
414
- rowCount,
415
- page,
416
- pageSize,
417
- onPaginationModelChange: handlePageChange,
418
- getId,
419
- HeadCell,
420
- BodyRow,
421
- dataInPage,
422
- handleSortChange,
423
- isAllSelected, // all rows are selected on this page
424
- isTotalSelected,
425
- isSelectedRow: useCallback((model) => selectedModelSet.has(model), [selectedModelSet]),
426
- onAllCheckboxChange: useCallback(() => {
427
- onSelectionModelChange?.(isAllSelected ? [] : dataInPage.map(getId));
428
- }, [isAllSelected, dataInPage, onSelectionModelChange, getId]),
429
- onCheckboxChange: useCallback((event, selectedModel) => {
430
- if (selectedModelSet.has(selectedModel)) {
431
- const newSelectionModel = selectionModel.filter((model) => model !== selectedModel);
432
- onSelectionModelChange?.(newSelectionModel);
433
- }
434
- else {
435
- const newSelectionModel = [...selectionModel, selectedModel];
436
- onSelectionModelChange?.(newSelectionModel);
437
- }
438
- }, [selectionModel, onSelectionModelChange, selectedModelSet]),
439
- columns,
440
- onTotalSelect: useCallback(() => {
441
- onSelectionModelChange?.(isTotalSelected ? [] : rows.map(getId), !isTotalSelected);
442
- }, [isTotalSelected, rows, onSelectionModelChange, getId]),
443
- };
444
- }
445
- function DataTable(props) {
446
- // prop destruction
447
- const { rows, checkboxSelection, editMode, selectionModel, onSelectionModelChange, disableSelectionOnClick, onRowClick, rowCount: _, // rowCount is used in useDataTableRenderer
448
- columns: __, // columns is used in useDataTableRenderer
449
- onPaginationModelChange: ___, // onPaginationModelChange is used in useDataTableRenderer
450
- pagination, paginationMode: ____, // paginationMode is used in useDataTableRenderer
451
- paginationModel: _____, // paginationModel is used in useDataTableRenderer
452
- sortModel: ______, // sortModel is used in useDataTableRenderer
453
- sortOrder: _______, // sortOrder is used in useDataTableRenderer
454
- onSortModelChange: ________, // onSortModelChange is used in useDataTableRenderer
455
- initialState: _________, // initialState is used in useDataTableRenderer
456
- loading, slots: { checkbox: RenderCheckbox = Checkbox, toolbar: Toolbar, footer: Footer, loadingOverlay: LoadingOverlay = () => (React__default.createElement(LinearProgress, { value: 8, variant: "plain" })), } = {}, slotProps: { checkbox: checkboxProps = {}, toolbar: toolbarProps, background: backgroundProps = {}, } = {}, stripe, ...innerProps } = props;
457
- // state, ref, querystring hooks
458
- const tableId = useId();
459
- const parentRef = useRef(null);
460
- // lib hooks
461
- const { columns, isAllSelected, isSelectedRow, onAllCheckboxChange, onCheckboxChange, getId, rowCount, page, pageSize, onPaginationModelChange, handleSortChange, dataInPage, isTotalSelected, onTotalSelect, HeadCell, BodyRow, } = useDataTableRenderer(props);
462
- const virtualizer = useVirtualizer({
463
- count: dataInPage.length,
464
- getScrollElement: () => parentRef.current,
465
- estimateSize: () => 32,
466
- measureElement: (element) => element.clientHeight,
467
- overscan: 20,
468
- });
469
- // form hooks
470
- // query hooks
471
- // calculated values
472
- const paginationModel = useMemo(() => ({ page, pageSize }), [page, pageSize]);
473
- const totalSize = virtualizer.getTotalSize();
474
- const virtualizedItems = virtualizer.getVirtualItems();
475
- // effects
476
- // handlers
477
- return (React__default.createElement(Box, { sx: {
478
- maxHeight: "100%",
479
- overflow: "auto",
480
- display: "flex",
481
- flexDirection: "column",
482
- } },
483
- (!!checkboxSelection || !!Toolbar) && (React__default.createElement(Stack, { direction: "row", sx: {
484
- pt: 1,
485
- pb: 1,
486
- }, justifyContent: "space-between", alignItems: "center" },
487
- !!checkboxSelection && (React__default.createElement(Stack, { direction: "row", spacing: 1 },
488
- !isAllSelected && (React__default.createElement(Typography, { level: "body-xs" },
489
- numberFormatter(selectionModel?.length || 0),
490
- " items selected")),
491
- isAllSelected && !isTotalSelected && (React__default.createElement(Stack, { direction: "row", spacing: 1, alignItems: "center" },
492
- React__default.createElement(Typography, { level: "body-xs" },
493
- "All ",
494
- numberFormatter(selectionModel?.length || 0),
495
- " items on this page are selected."),
496
- React__default.createElement(Button, { size: "sm", variant: "plain", onClick: onTotalSelect },
497
- "Select all ",
498
- numberFormatter(rowCount ?? rows.length),
499
- " items"))),
500
- isTotalSelected && (React__default.createElement(Stack, { direction: "row", spacing: 1, alignItems: "center" },
501
- React__default.createElement(Typography, { level: "body-xs" },
502
- "All ",
503
- numberFormatter(rowCount ?? rows.length),
504
- " items are selected."),
505
- React__default.createElement(Button, { size: "sm", variant: "plain", color: "danger", onClick: onTotalSelect }, "Cancel"))))),
506
- Toolbar && React__default.createElement(Toolbar, { ...(toolbarProps || {}) }))),
507
- React__default.createElement(Sheet, { variant: "outlined", sx: {
508
- height: "100%",
509
- overflow: "auto",
510
- width: "100%",
511
- boxShadow: "sm",
512
- borderRadius: "sm",
513
- }, ref: parentRef, ...backgroundProps },
514
- React__default.createElement(Table, { ...innerProps },
515
- React__default.createElement("thead", null,
516
- React__default.createElement("tr", null,
517
- checkboxSelection && (React__default.createElement("th", { style: {
518
- width: "40px",
519
- textAlign: "center",
520
- } },
521
- React__default.createElement(RenderCheckbox, { onChange: onAllCheckboxChange, checked: isAllSelected, indeterminate: (selectionModel || []).length > 0 && !isAllSelected, ...checkboxProps }))),
522
- columns.map((c, i) => (React__default.createElement(HeadCell, { tableId: tableId, key: `${c.field.toString()}_${i}`, stickyHeader: props.stickyHeader, editMode: !!c.isCellEditable, onSortChange: handleSortChange, ...c }))))),
523
- React__default.createElement(VirtualizedTableBody, { style: {
524
- height: `${totalSize}px`,
525
- } },
526
- !!loading && (React__default.createElement(OverlayWrapper, null,
527
- React__default.createElement("td", null,
528
- React__default.createElement(Box, { sx: {
529
- position: "absolute",
530
- top: 0,
531
- left: 0,
532
- right: 0,
533
- } },
534
- React__default.createElement(LoadingOverlay, null))))),
535
- virtualizedItems.map((virtualizedRow, index) => {
536
- const rowIndex = virtualizedRow.index;
537
- const row = dataInPage[rowIndex];
538
- const rowId = getId(row, rowIndex);
539
- const striped = stripe &&
540
- ((stripe === "even" && (rowIndex + 1) % 2 === 0) ||
541
- (stripe === "odd" && (rowIndex + 1) % 2 === 1));
542
- return (React__default.createElement(VirtualizedTableRow, { key: rowId, role: checkboxSelection && !disableSelectionOnClick
543
- ? "checkbox"
544
- : undefined, tabIndex: checkboxSelection && !disableSelectionOnClick
545
- ? -1
546
- : undefined, onClick: (e) => {
547
- onRowClick?.({ row, rowId }, e);
548
- checkboxSelection &&
549
- !disableSelectionOnClick &&
550
- onCheckboxChange(e, rowId);
551
- }, "aria-checked": checkboxSelection && !disableSelectionOnClick
552
- ? isSelectedRow(rowId)
553
- : undefined, striped: striped, style: {
554
- height: `${virtualizedRow.size}px`,
555
- transform: `translateY(${virtualizedRow.start - index * virtualizedRow.size}px)`,
556
- } },
557
- checkboxSelection && (React__default.createElement("th", { scope: "row", style: {
558
- textAlign: "center",
559
- } },
560
- React__default.createElement(RenderCheckbox, { onClick: (e) => e.stopPropagation(), onChange: (e) => onCheckboxChange(e, rowId), checked: isSelectedRow(rowId), ...checkboxProps }))),
561
- React__default.createElement(BodyRow, { tableId: tableId, columns: columns, row: row, rowId: rowId, editMode: editMode, noWrap: props.noWrap })));
562
- })),
563
- Footer && React__default.createElement(Footer, null))),
564
- pagination && (React__default.createElement(Pagination, { py: 2, size: "sm", alignItems: "flex-end", paginationModel: paginationModel, rowCount: rowCount, onPageChange: onPaginationModelChange }))));
565
- }
566
- DataTable.displayName = "DataTable";
567
-
568
- export { DataTable };