buckaroo-js-core 0.8.4 → 0.11.7

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 (242) hide show
  1. package/LICENSE +24 -12
  2. package/README.md +55 -51
  3. package/dist/index.cjs.js +114 -0
  4. package/dist/index.cjs.js.map +1 -0
  5. package/dist/index.es.js +60790 -0
  6. package/dist/index.es.js.map +1 -0
  7. package/dist/index.esm.js +60790 -0
  8. package/dist/index.esm.js.map +1 -0
  9. package/dist/jest.setup.d.ts +0 -0
  10. package/dist/src/SampleComponent.d.ts +10 -0
  11. package/{buckaroo_js → dist/src}/baked_data/colorMap.d.ts +0 -1
  12. package/dist/src/baked_data/olympic-winners.d.ts +12 -0
  13. package/dist/src/components/BuckarooInfiniteWidget.flash.test.d.ts +1 -0
  14. package/dist/src/components/BuckarooStaticTable.d.ts +26 -0
  15. package/dist/src/components/BuckarooWidgetInfinite.d.ts +38 -0
  16. package/{buckaroo_js → dist/src}/components/ColumnsEditor.d.ts +5 -8
  17. package/{buckaroo_js → dist/src}/components/CommandUtils.d.ts +8 -5
  18. package/dist/src/components/DCFCell.d.ts +19 -0
  19. package/dist/src/components/DFViewerParts/ChartCell.d.ts +43 -0
  20. package/dist/src/components/DFViewerParts/DFViewerConfigs.d.ts +5 -0
  21. package/dist/src/components/DFViewerParts/DFViewerDataHelper.d.ts +20 -0
  22. package/dist/src/components/DFViewerParts/DFViewerInfinite.d.ts +43 -0
  23. package/dist/src/components/DFViewerParts/DFViewerInfinite.flash.test.d.ts +1 -0
  24. package/dist/src/components/DFViewerParts/DFViewerInfinite.test.d.ts +1 -0
  25. package/dist/src/components/DFViewerParts/DFWhole.d.ts +173 -0
  26. package/{buckaroo_js → dist/src}/components/DFViewerParts/Displayer.d.ts +20 -6
  27. package/dist/src/components/DFViewerParts/HistogramCell.d.ts +29 -0
  28. package/dist/src/components/DFViewerParts/HistogramCell.hooks.test.d.ts +1 -0
  29. package/dist/src/components/DFViewerParts/OtherRenderers.d.ts +5 -0
  30. package/dist/src/components/DFViewerParts/RowCache.d.ts +61 -0
  31. package/dist/src/components/DFViewerParts/RowCache.test.d.ts +1 -0
  32. package/dist/src/components/DFViewerParts/RowStore.d.ts +22 -0
  33. package/dist/src/components/DFViewerParts/RowStore.test.d.ts +1 -0
  34. package/dist/src/components/DFViewerParts/RowStoreGc.d.ts +22 -0
  35. package/dist/src/components/DFViewerParts/RowStoreGc.test.d.ts +1 -0
  36. package/dist/src/components/DFViewerParts/SeriesSummaryTooltip.d.ts +13 -0
  37. package/dist/src/components/DFViewerParts/SmartRowCache.d.ts +83 -0
  38. package/dist/src/components/DFViewerParts/SmartRowCache.test.d.ts +23 -0
  39. package/dist/src/components/DFViewerParts/Styler.d.ts +33 -0
  40. package/dist/src/components/DFViewerParts/TableInfinite.d.ts +10 -0
  41. package/dist/src/components/DFViewerParts/ViewRegistry.d.ts +21 -0
  42. package/dist/src/components/DFViewerParts/ViewRegistry.test.d.ts +1 -0
  43. package/dist/src/components/DFViewerParts/Views.d.ts +53 -0
  44. package/dist/src/components/DFViewerParts/Views.test.d.ts +1 -0
  45. package/dist/src/components/DFViewerParts/autocleaning.toggle.integration.test.d.ts +27 -0
  46. package/dist/src/components/DFViewerParts/gridUtils.d.ts +81 -0
  47. package/dist/src/components/DFViewerParts/gridUtils.test.d.ts +1 -0
  48. package/dist/src/components/DFViewerParts/resolveDFData.d.ts +29 -0
  49. package/dist/src/components/DFViewerParts/resolveDFData.test.d.ts +1 -0
  50. package/dist/src/components/DFViewerParts/xorqWindow.dom.test.d.ts +1 -0
  51. package/dist/src/components/DFViewerParts/xorqWindow.test.d.ts +1 -0
  52. package/{buckaroo_js → dist/src}/components/DependentTabs.d.ts +8 -13
  53. package/dist/src/components/MessageBox.d.ts +8 -0
  54. package/{buckaroo_js → dist/src}/components/OperationDetail.d.ts +4 -6
  55. package/dist/src/components/OperationExamples.d.ts +8 -0
  56. package/{buckaroo_js → dist/src}/components/OperationUtils.d.ts +1 -1
  57. package/dist/src/components/Operations.d.ts +14 -0
  58. package/dist/src/components/Operations.test.d.ts +4 -0
  59. package/dist/src/components/OperationsList.d.ts +9 -0
  60. package/dist/src/components/OperationsList.test.d.ts +0 -0
  61. package/dist/src/components/StatusBar.d.ts +15 -0
  62. package/{buckaroo_js → dist/src}/components/WidgetTypes.d.ts +3 -4
  63. package/dist/src/components/useColorScheme.d.ts +7 -0
  64. package/dist/src/components/utils.d.ts +299 -0
  65. package/dist/src/index.d.ts +59 -0
  66. package/dist/src/stories/BuckarooWidgetTest.stories.d.ts +12 -0
  67. package/dist/src/stories/ChartCell.stories.d.ts +20 -0
  68. package/dist/src/stories/ColumnsEditor.stories.d.ts +17 -0
  69. package/dist/src/stories/DFViewer.stories.d.ts +26 -0
  70. package/dist/src/stories/DFViewerInfiniteRaw.stories.d.ts +24 -0
  71. package/dist/src/stories/DFViewerInfiniteShadow.stories.d.ts +31 -0
  72. package/dist/src/stories/HistogramCell.stories.d.ts +18 -0
  73. package/dist/src/stories/InheritEdgeCases.stories.d.ts +12 -0
  74. package/dist/src/stories/InheritPinnedRows.stories.d.ts +13 -0
  75. package/dist/src/stories/MessageBox.stories.d.ts +26 -0
  76. package/dist/src/stories/OperationViewer.stories.d.ts +24 -0
  77. package/dist/src/stories/OperationsList.stories.d.ts +19 -0
  78. package/dist/src/stories/OutsideParamsInconsistency.stories.d.ts +16 -0
  79. package/dist/src/stories/PinnedRowsDynamic.stories.d.ts +12 -0
  80. package/dist/src/stories/PinnedRowsRace.stories.d.ts +12 -0
  81. package/dist/src/stories/PinnedRowsTranscriptReplayer.stories.d.ts +13 -0
  82. package/dist/src/stories/RawAGGrid.stories.d.ts +17 -0
  83. package/dist/src/stories/SmallDFScroll.stories.d.ts +11 -0
  84. package/dist/src/stories/StatusBar.stories.d.ts +19 -0
  85. package/dist/src/stories/StoryUtils.d.ts +13 -0
  86. package/dist/src/stories/Styling.stories.d.ts +15 -0
  87. package/dist/src/stories/StylingIssues.stories.d.ts +54 -0
  88. package/dist/src/stories/ThemeCustomization.stories.d.ts +22 -0
  89. package/dist/src/stories/UseMemoExamples.stories.d.ts +12 -0
  90. package/dist/src/stories/WeirdTypes.stories.d.ts +17 -0
  91. package/dist/src/test-utils/agGridSpy.d.ts +50 -0
  92. package/dist/src/widgetUtils.d.ts +1 -0
  93. package/dist/style.css +1 -0
  94. package/package.json +109 -101
  95. package/.prettierrc +0 -16
  96. package/CHANGELOG.md +0 -23
  97. package/buckaroo_js/baked_data/colorMap.d.ts.map +0 -1
  98. package/buckaroo_js/baked_data/colorMap.js +0 -520
  99. package/buckaroo_js/baked_data/colorMap.js.map +0 -1
  100. package/buckaroo_js/baked_data/staticData.d.ts +0 -124
  101. package/buckaroo_js/baked_data/staticData.d.ts.map +0 -1
  102. package/buckaroo_js/baked_data/staticData.js +0 -459
  103. package/buckaroo_js/baked_data/staticData.js.map +0 -1
  104. package/buckaroo_js/components/ColumnsEditor.d.ts.map +0 -1
  105. package/buckaroo_js/components/ColumnsEditor.js +0 -68
  106. package/buckaroo_js/components/ColumnsEditor.js.map +0 -1
  107. package/buckaroo_js/components/CommandUtils.d.ts.map +0 -1
  108. package/buckaroo_js/components/CommandUtils.js +0 -17
  109. package/buckaroo_js/components/CommandUtils.js.map +0 -1
  110. package/buckaroo_js/components/DCFCell.d.ts +0 -28
  111. package/buckaroo_js/components/DCFCell.d.ts.map +0 -1
  112. package/buckaroo_js/components/DCFCell.js +0 -120
  113. package/buckaroo_js/components/DCFCell.js.map +0 -1
  114. package/buckaroo_js/components/DFViewerParts/DFViewer.d.ts +0 -29
  115. package/buckaroo_js/components/DFViewerParts/DFViewer.d.ts.map +0 -1
  116. package/buckaroo_js/components/DFViewerParts/DFViewer.js +0 -163
  117. package/buckaroo_js/components/DFViewerParts/DFViewer.js.map +0 -1
  118. package/buckaroo_js/components/DFViewerParts/DFWhole.d.ts +0 -111
  119. package/buckaroo_js/components/DFViewerParts/DFWhole.d.ts.map +0 -1
  120. package/buckaroo_js/components/DFViewerParts/DFWhole.js +0 -17
  121. package/buckaroo_js/components/DFViewerParts/DFWhole.js.map +0 -1
  122. package/buckaroo_js/components/DFViewerParts/Displayer.d.ts.map +0 -1
  123. package/buckaroo_js/components/DFViewerParts/Displayer.js +0 -221
  124. package/buckaroo_js/components/DFViewerParts/Displayer.js.map +0 -1
  125. package/buckaroo_js/components/DFViewerParts/HistogramCell.d.ts +0 -20
  126. package/buckaroo_js/components/DFViewerParts/HistogramCell.d.ts.map +0 -1
  127. package/buckaroo_js/components/DFViewerParts/HistogramCell.js +0 -184
  128. package/buckaroo_js/components/DFViewerParts/HistogramCell.js.map +0 -1
  129. package/buckaroo_js/components/DFViewerParts/SeriesSummaryTooltip.d.ts +0 -5
  130. package/buckaroo_js/components/DFViewerParts/SeriesSummaryTooltip.d.ts.map +0 -1
  131. package/buckaroo_js/components/DFViewerParts/SeriesSummaryTooltip.js +0 -18
  132. package/buckaroo_js/components/DFViewerParts/SeriesSummaryTooltip.js.map +0 -1
  133. package/buckaroo_js/components/DFViewerParts/gridUtils.d.ts +0 -24
  134. package/buckaroo_js/components/DFViewerParts/gridUtils.d.ts.map +0 -1
  135. package/buckaroo_js/components/DFViewerParts/gridUtils.js +0 -230
  136. package/buckaroo_js/components/DFViewerParts/gridUtils.js.map +0 -1
  137. package/buckaroo_js/components/DependentTabs.d.ts.map +0 -1
  138. package/buckaroo_js/components/DependentTabs.js +0 -108
  139. package/buckaroo_js/components/DependentTabs.js.map +0 -1
  140. package/buckaroo_js/components/OperationDetail.d.ts.map +0 -1
  141. package/buckaroo_js/components/OperationDetail.js +0 -144
  142. package/buckaroo_js/components/OperationDetail.js.map +0 -1
  143. package/buckaroo_js/components/OperationUtils.d.ts.map +0 -1
  144. package/buckaroo_js/components/OperationUtils.js +0 -14
  145. package/buckaroo_js/components/OperationUtils.js.map +0 -1
  146. package/buckaroo_js/components/Operations.d.ts +0 -24
  147. package/buckaroo_js/components/Operations.d.ts.map +0 -1
  148. package/buckaroo_js/components/Operations.js +0 -209
  149. package/buckaroo_js/components/Operations.js.map +0 -1
  150. package/buckaroo_js/components/StatusBar.d.ts +0 -12
  151. package/buckaroo_js/components/StatusBar.d.ts.map +0 -1
  152. package/buckaroo_js/components/StatusBar.js +0 -155
  153. package/buckaroo_js/components/StatusBar.js.map +0 -1
  154. package/buckaroo_js/components/WidgetTypes.d.ts.map +0 -1
  155. package/buckaroo_js/components/WidgetTypes.js +0 -3
  156. package/buckaroo_js/components/WidgetTypes.js.map +0 -1
  157. package/buckaroo_js/components/bakedOperationDefaults.d.ts +0 -5
  158. package/buckaroo_js/components/bakedOperationDefaults.d.ts.map +0 -1
  159. package/buckaroo_js/components/bakedOperationDefaults.js +0 -15
  160. package/buckaroo_js/components/bakedOperationDefaults.js.map +0 -1
  161. package/buckaroo_js/components/utils.d.ts +0 -294
  162. package/buckaroo_js/components/utils.d.ts.map +0 -1
  163. package/buckaroo_js/components/utils.js +0 -143
  164. package/buckaroo_js/components/utils.js.map +0 -1
  165. package/buckaroo_js/extension.d.ts +0 -2
  166. package/buckaroo_js/extension.d.ts.map +0 -1
  167. package/buckaroo_js/extension.js +0 -20
  168. package/buckaroo_js/extension.js.map +0 -1
  169. package/buckaroo_js/index.d.ts +0 -25
  170. package/buckaroo_js/index.d.ts.map +0 -1
  171. package/buckaroo_js/index.js +0 -46
  172. package/buckaroo_js/index.js.map +0 -1
  173. package/buckaroo_js/vendor/RechartExtra.d.ts +0 -38
  174. package/buckaroo_js/vendor/RechartExtra.d.ts.map +0 -1
  175. package/buckaroo_js/vendor/RechartExtra.js +0 -17
  176. package/buckaroo_js/vendor/RechartExtra.js.map +0 -1
  177. package/buckaroo_js/vendor/RechartTooltip.d.ts +0 -82
  178. package/buckaroo_js/vendor/RechartTooltip.d.ts.map +0 -1
  179. package/buckaroo_js/vendor/RechartTooltip.js +0 -231
  180. package/buckaroo_js/vendor/RechartTooltip.js.map +0 -1
  181. package/codecov.yml +0 -16
  182. package/eslint.config.mjs +0 -88
  183. package/examples/App.tsx +0 -160
  184. package/examples/CodeBlock.tsx +0 -27
  185. package/examples/CodePenButton.tsx +0 -72
  186. package/examples/ReadmeBlock.tsx +0 -11
  187. package/examples/app.css +0 -29
  188. package/examples/ex/ColumnsEditorEx.tsx +0 -5
  189. package/examples/ex/CommandViewerEx.tsx +0 -18
  190. package/examples/ex/DFViewerEx.tsx +0 -3
  191. package/examples/ex/DFViewerEx_large.tsx +0 -266
  192. package/examples/ex/DFViewerEx_real_summary.tsx +0 -18
  193. package/examples/ex/DFViewerEx_short_data.tsx +0 -22
  194. package/examples/ex/DFViewerEx_string_index.tsx +0 -1012
  195. package/examples/ex/HistogramEx.tsx +0 -66
  196. package/examples/ex/StatusBarEx.tsx +0 -46
  197. package/examples/ex/WidgetDCFCellEx.tsx +0 -6
  198. package/examples/example.css +0 -20
  199. package/examples/index-iframe.hnottml +0 -24
  200. package/examples/index-react18.tsx +0 -8
  201. package/examples/index.html +0 -20
  202. package/examples/jsx-loader.ts +0 -16
  203. package/examples/tsconfig.json +0 -31
  204. package/index.d.ts +0 -2
  205. package/index.d.ts.map +0 -1
  206. package/index.js +0 -7
  207. package/index.js.map +0 -1
  208. package/jest.config.js +0 -24
  209. package/screen-animation.gif +0 -0
  210. package/src/buckaroo_js/baked_data/colorMap.ts +0 -523
  211. package/src/buckaroo_js/baked_data/staticData.ts +0 -503
  212. package/src/buckaroo_js/components/ColumnsEditor.tsx +0 -66
  213. package/src/buckaroo_js/components/CommandUtils.ts +0 -40
  214. package/src/buckaroo_js/components/DCFCell.tsx +0 -175
  215. package/src/buckaroo_js/components/DFViewerParts/DFViewer.tsx +0 -215
  216. package/src/buckaroo_js/components/DFViewerParts/DFWhole.ts +0 -190
  217. package/src/buckaroo_js/components/DFViewerParts/Displayer.ts +0 -215
  218. package/src/buckaroo_js/components/DFViewerParts/HistogramCell.tsx +0 -251
  219. package/src/buckaroo_js/components/DFViewerParts/SeriesSummaryTooltip.tsx +0 -20
  220. package/src/buckaroo_js/components/DFViewerParts/gridUtils.ts +0 -290
  221. package/src/buckaroo_js/components/DependentTabs.tsx +0 -134
  222. package/src/buckaroo_js/components/OperationDetail.tsx +0 -203
  223. package/src/buckaroo_js/components/OperationUtils.ts +0 -33
  224. package/src/buckaroo_js/components/Operations.tsx +0 -243
  225. package/src/buckaroo_js/components/StatusBar.tsx +0 -190
  226. package/src/buckaroo_js/components/WidgetTypes.tsx +0 -42
  227. package/src/buckaroo_js/components/bakedOperationDefaults.ts +0 -14
  228. package/src/buckaroo_js/components/utils.ts +0 -60
  229. package/src/buckaroo_js/extension.ts +0 -15
  230. package/src/buckaroo_js/index.ts +0 -34
  231. package/src/buckaroo_js/style/dcf-npm.css +0 -244
  232. package/src/buckaroo_js/style/icons/arrow-down-short-dark.svg +0 -4
  233. package/src/buckaroo_js/style/icons/arrow-down-short.svg +0 -4
  234. package/src/buckaroo_js/style/icons/arrow-up-short-dark.svg +0 -4
  235. package/src/buckaroo_js/style/icons/arrow-up-short.svg +0 -4
  236. package/src/buckaroo_js/style/icons/filter-dark.svg +0 -3
  237. package/src/buckaroo_js/style/icons/filter.svg +0 -3
  238. package/src/buckaroo_js/vendor/RechartExtra.ts +0 -60
  239. package/src/buckaroo_js/vendor/RechartTooltip.tsx +0 -356
  240. package/src/index.tsx +0 -3
  241. package/tsconfig.json +0 -41
  242. package/webpack.config.ts +0 -98
@@ -0,0 +1,13 @@
1
+ import { StoryObj } from '@storybook/react';
2
+ declare const meta: {
3
+ title: string;
4
+ component: () => import("react/jsx-runtime").JSX.Element;
5
+ parameters: {
6
+ layout: string;
7
+ };
8
+ tags: string[];
9
+ };
10
+ export default meta;
11
+ type Story = StoryObj<typeof meta>;
12
+ export declare const Primary: Story;
13
+ export declare const OneSecondGap: Story;
@@ -0,0 +1,17 @@
1
+ import { StoryObj } from '@storybook/react';
2
+ import { DFData } from '../components/DFViewerParts/DFWhole';
3
+ import { ColDef } from 'ag-grid-community';
4
+ declare const meta: {
5
+ title: string;
6
+ component: ({ colDefs, data }: {
7
+ colDefs: Record<string, ColDef[]>;
8
+ data: Record<string, DFData>;
9
+ }) => import("react/jsx-runtime").JSX.Element;
10
+ parameters: {
11
+ layout: string;
12
+ };
13
+ tags: string[];
14
+ };
15
+ export default meta;
16
+ type Story = StoryObj<typeof meta>;
17
+ export declare const Default: Story;
@@ -0,0 +1,11 @@
1
+ import { StoryObj } from '@storybook/react';
2
+ declare const meta: {
3
+ title: string;
4
+ component: () => import("react/jsx-runtime").JSX.Element;
5
+ parameters: {
6
+ layout: string;
7
+ };
8
+ };
9
+ export default meta;
10
+ type Story = StoryObj<typeof meta>;
11
+ export declare const Primary: Story;
@@ -0,0 +1,19 @@
1
+ import { StoryObj } from '@storybook/react';
2
+ import { BuckarooOptions, BuckarooState, DFMeta } from '../components/WidgetTypes';
3
+ declare const meta: {
4
+ title: string;
5
+ component: ({ dfMeta, buckarooState, buckarooOptions, }: {
6
+ dfMeta: DFMeta;
7
+ buckarooState: BuckarooState;
8
+ buckarooOptions: BuckarooOptions;
9
+ }) => import("react/jsx-runtime").JSX.Element;
10
+ parameters: {
11
+ layout: string;
12
+ };
13
+ tags: string[];
14
+ argTypes: {};
15
+ };
16
+ export default meta;
17
+ type Story = StoryObj<typeof meta>;
18
+ export declare const Primary: Story;
19
+ export declare const NoCleaningNoPostProcessing: Story;
@@ -0,0 +1,13 @@
1
+ import { default as React } from 'react';
2
+ interface ShadowDomWrapperProps {
3
+ children: React.ReactNode;
4
+ }
5
+ export declare const ShadowDomWrapper: React.FC<ShadowDomWrapperProps>;
6
+ type SelectBoxProps<T extends string> = {
7
+ label: string;
8
+ options: T[];
9
+ value: T;
10
+ onChange: (value: T) => void;
11
+ };
12
+ export declare const SelectBox: <T extends string>({ label, options, value, onChange }: SelectBoxProps<T>) => import("react/jsx-runtime").JSX.Element;
13
+ export {};
@@ -0,0 +1,15 @@
1
+ import { StoryObj } from '@storybook/react';
2
+ declare const meta: {
3
+ title: string;
4
+ component: ({ a }: {
5
+ a: number;
6
+ }) => import("react/jsx-runtime").JSX.Element;
7
+ parameters: {
8
+ layout: string;
9
+ };
10
+ tags: string[];
11
+ argTypes: {};
12
+ };
13
+ export default meta;
14
+ type Story = StoryObj<typeof meta>;
15
+ export declare const Primary: Story;
@@ -0,0 +1,54 @@
1
+ import { StoryObj } from '@storybook/react';
2
+ declare const meta: {
3
+ title: string;
4
+ component: () => null;
5
+ parameters: {
6
+ layout: string;
7
+ };
8
+ };
9
+ export default meta;
10
+ type Story = StoryObj<typeof meta>;
11
+ /** Baseline – 5 cols, 1-char headers, 1-2 digit values. Should look fine. (#599) */
12
+ export declare const FewCols_ShortHdr_ShortData: Story;
13
+ /** 5 cols, 1-char headers, 6-7 digit values. Data drives width, no contention. */
14
+ export declare const FewCols_ShortHdr_LongData: Story;
15
+ /** 5 cols, 12-18 char headers, 1-2 digit values. Header wider than data. */
16
+ export declare const FewCols_LongHdr_ShortData: Story;
17
+ /** 5 cols, long headers, long data. Both are wide; no contention at 5 cols. */
18
+ export declare const FewCols_LongHdr_LongData: Story;
19
+ /** 25 cols, 1-char headers, 1-2 digit values. Primary bug case (#595/#599). */
20
+ export declare const ManyCols_ShortHdr_ShortData: Story;
21
+ /** 25 cols, 1-char headers, 6-7 digit values. Data wants space (#596). */
22
+ export declare const ManyCols_ShortHdr_LongData: Story;
23
+ /** 25 cols, 12-18 char headers, 1-2 digit values. Headers want space (#596). */
24
+ export declare const ManyCols_LongHdr_ShortData: Story;
25
+ /** 25 cols, long headers, long data. Worst-case contention (#596). */
26
+ export declare const ManyCols_LongHdr_LongData: Story;
27
+ /** 25 cols with fitGridWidth in 800px. #595 repro — values show "..." without minWidth fix. */
28
+ export declare const ManyCols_LongHdr_YearData: Story;
29
+ /** 5 cols, values 3M–5.7B, float displayer. Shows why compact is needed (#597). */
30
+ export declare const LargeNumbers_Float: Story;
31
+ /** Same data as LargeNumbers_Float but using compact_number displayer (#597 fix). */
32
+ export declare const LargeNumbers_Compact: Story;
33
+ /** 5 cols, values tightly clustered 5.60B–5.68B, float displayer (#602 baseline). */
34
+ export declare const ClusteredBillions_Float: Story;
35
+ /** Same clustered data with compact_number – exposes precision loss (#602). */
36
+ export declare const ClusteredBillions_Compact: Story;
37
+ /** 10 long-header cols + pinned summary stats + left index. Tests #587 alignment. */
38
+ export declare const PinnedIndex_FewCols: Story;
39
+ /** 20 long-header cols + pinned summary stats. #587 alignment under width contention. */
40
+ export declare const PinnedIndex_ManyCols: Story;
41
+ /** 20 narrow cols + pinned rows. Cross-issue: #595 + #587 + #599. */
42
+ export declare const Mixed_ManyNarrow_WithPinned: Story;
43
+ /** 5 wide cols + pinned rows. #587 baseline (should look fine). */
44
+ export declare const Mixed_FewWide_WithPinned: Story;
45
+ /** 25 cols with Python-computed minWidth=38. Narrow integers stay compact, no wasted space. */
46
+ export declare const PythonMinWidth_NarrowInts: Story;
47
+ /** 25 cols with Python-computed minWidth=134 (long headers force wider columns). */
48
+ export declare const PythonMinWidth_LongHeaders: Story;
49
+ /** Mixed column types with varying Python-computed minWidths (38, 134, 51px). */
50
+ export declare const PythonMinWidth_MixedTypes: Story;
51
+ /** 15 narrow-data cols with histogram pinned rows. Histogram forces 100px min (vs ~38px without). */
52
+ export declare const Histogram_NarrowCols: Story;
53
+ /** Same as Histogram_NarrowCols but with data-only minWidth=38 — histograms get crushed. */
54
+ export declare const Histogram_NarrowCols_NoHistMin: Story;
@@ -0,0 +1,22 @@
1
+ import { StoryObj } from '@storybook/react';
2
+ import { DFViewerConfig } from '../components/DFViewerParts/DFWhole';
3
+ import { DatasourceOrRaw } from '../components/DFViewerParts/DFViewerDataHelper';
4
+ declare const meta: {
5
+ title: string;
6
+ component: ({ data_wrapper, df_viewer_config, }: {
7
+ data_wrapper: DatasourceOrRaw;
8
+ df_viewer_config: DFViewerConfig;
9
+ }) => import("react/jsx-runtime").JSX.Element;
10
+ parameters: {
11
+ layout: string;
12
+ };
13
+ tags: string[];
14
+ argTypes: {};
15
+ };
16
+ export default meta;
17
+ type Story = StoryObj<typeof meta>;
18
+ export declare const DefaultNoTheme: Story;
19
+ export declare const CustomAccent: Story;
20
+ export declare const ForcedDark: Story;
21
+ export declare const ForcedLight: Story;
22
+ export declare const FullCustom: Story;
@@ -0,0 +1,12 @@
1
+ import { StoryObj } from '@storybook/react';
2
+ declare const meta: {
3
+ title: string;
4
+ component: () => import("react/jsx-runtime").JSX.Element;
5
+ parameters: {
6
+ layout: string;
7
+ };
8
+ tags: string[];
9
+ };
10
+ export default meta;
11
+ type Story = StoryObj<typeof meta>;
12
+ export declare const Default: Story;
@@ -0,0 +1,17 @@
1
+ import { StoryObj } from '@storybook/react';
2
+ import { DFData, DFViewerConfig } from '../components/DFViewerParts/DFWhole';
3
+ declare const meta: {
4
+ title: string;
5
+ component: ({ df_data, df_viewer_config, summary_stats_data, }: {
6
+ df_data: DFData;
7
+ df_viewer_config: DFViewerConfig;
8
+ summary_stats_data?: DFData;
9
+ }) => import("react/jsx-runtime").JSX.Element;
10
+ parameters: {
11
+ layout: string;
12
+ };
13
+ };
14
+ export default meta;
15
+ type Story = StoryObj<typeof meta>;
16
+ export declare const PandasWeirdTypes: Story;
17
+ export declare const PolarsWeirdTypes: Story;
@@ -0,0 +1,50 @@
1
+ import { IGetRowsParams, RefreshCellsParams } from 'ag-grid-community';
2
+ /**
3
+ * Spy harness for the ag-grid-react mock used by the flash-matrix tests.
4
+ *
5
+ * Replaces the AgGridReact component with a stub that records:
6
+ * - mountCount — how many times AgGridReact mounted
7
+ * - setGridOption[] — every (key, value) passed to setGridOption
8
+ * - refreshCells[] — every refreshCells call
9
+ * - refreshInfiniteCache — count
10
+ * - purgeInfiniteCache — count
11
+ * - getRowsCallArgs[] — every IGetRowsParams passed to the datasource
12
+ * - rowIdsByIndex — for each row index, the distinct row IDs produced
13
+ * by getRowId across renders (probes the row-id
14
+ * salting behavior)
15
+ * - lastProps — the most recent props object
16
+ *
17
+ * Use:
18
+ *
19
+ * const spy = createAgGridSpy();
20
+ * spy.install(); // call BEFORE `render()` (jest.mock is hoisted by ts-jest;
21
+ * // install() resets the captured state instead)
22
+ *
23
+ * render(<DFViewerInfinite ... />);
24
+ * expect(spy.calls.mountCount).toBe(1);
25
+ */
26
+ import * as React from "react";
27
+ export interface AgGridSpyCalls {
28
+ mountCount: number;
29
+ setGridOption: Array<[string, unknown]>;
30
+ refreshCells: RefreshCellsParams[];
31
+ refreshInfiniteCache: number;
32
+ purgeInfiniteCache: number;
33
+ getRowsCallArgs: IGetRowsParams[];
34
+ rowIdsByIndex: Map<number, Set<string>>;
35
+ lastProps: any;
36
+ onGridReadyCalled: number;
37
+ }
38
+ export declare const resetSpy: () => void;
39
+ /**
40
+ * Factory called by `jest.mock("ag-grid-react", ...)` to install the spy.
41
+ *
42
+ * NOTE: jest.mock() factory bodies must not reference out-of-scope variables.
43
+ * That's why this module exports `resetSpy` + `getSpyCalls` + the factory
44
+ * rather than a closure-capturing builder. The factory inlines a reference to
45
+ * `sharedCalls` via the module re-import, which is allowed.
46
+ */
47
+ export declare const agGridReactMockFactory: () => {
48
+ AgGridReact: React.ForwardRefExoticComponent<Omit<any, "ref"> & React.RefAttributes<unknown>>;
49
+ };
50
+ export declare const getSpyCalls: () => AgGridSpyCalls;
@@ -0,0 +1 @@
1
+ export declare const injectBuckarooCSS: (css_text: string) => void;
package/dist/style.css ADDED
@@ -0,0 +1 @@
1
+ .columns-editor{padding:2px;margin:0;border-radius:2px}.column-list{width:100%;font-size:1rem}.column-list dl{display:flex;margin:0;padding:0}.column-list dl div.list-item{padding:3px}.column-list dl div.list-item dt{float:left;max-width:90px;overflow:hidden;max-height:1rem}.column-list dl div.list-item dd{float:right}.column-list dl div.list-item .column-editor{width:100%;clear:both;height:30px}.column-list dl div.list-item .column-editor label span,.column-list dl div.list-item .column-editor label input[type=checkbox]{float:left}.dependent-tabs{font-size:.95rem;padding:2px 2px 0}.dependent-tabs ul.tabs{margin-top:0;margin-bottom:0;padding-left:0}.dependent-tabs ul.tabs li{float:left;background:var(--ag-background-color);color:var(--ag-foreground-color);border:1px solid purple;border-bottom:none;list-style:none;margin-right:2px;padding:1px 4px;font-size:.95em}.dependent-tabs ul.tabs li.active{background:var(--ag-range-selection-background-color);color:var(--ag-accent-color)}.dependent-tabs .output-area{clear:both;float:none;padding:0}.python-displayer,.command-displayer{width:100%;height:100%;background:var(--ag-background-color, hsl(0, 0%, 13%));overflow:hidden;padding:2px}.python-displayer pre,.command-displayer pre{color:#41ff00}@media (prefers-color-scheme: light){.python-displayer pre,.command-displayer pre{color:#006400}}.command-displayer pre{overflow:hidden}.modal{position:absolute;background-color:#fff;border:1px solid black;padding:16px;list-style:none}.modal>li{padding:8px}.operations-box{margin-top:1px;padding:1px 2px;background:none;border-radius:2px}.operations-box h4{font-size:.95em;margin:0 0 1px;color:#2c3e50;font-weight:600;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.operation-adder{display:flex;align-items:center;gap:1px;margin-bottom:1px;padding:1px 2px;background:none;border-radius:2px}.operation-adder span.column-name{font-weight:600;color:#2c3e50;padding:1px 2px;background-color:#e9ecef;border-radius:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-size:.95em}.operation-adder fieldset{border:none;margin:0;padding:0;display:flex;gap:1px}.operation-adder button{padding:1px 2px;background-color:var(--bk-accent-color, #007bff);color:#fff;border:none;border-radius:0;cursor:pointer;font-size:.85em;transition:background-color .2s}.operation-adder button:hover{background-color:var(--bk-accent-hover-color, #0056b3)}.operations-list{display:flex;flex-direction:row;gap:1px;flex-wrap:wrap;align-items:flex-start;margin-top:1px;margin-left:1px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen-Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}.operations-list .operation-item{display:flex;align-items:flex-start;justify-content:space-between;gap:1px;padding:1px 2px;background-color:#fff;border:1px solid #dee2e6;border-radius:2px;cursor:pointer;transition:all .2s;width:80px;box-shadow:none;font-size:.95em}.operations-list .operation-item:hover{border-color:#adb5bd}.operations-list .operation-item.active.auto_clean{background-color:#e1bee7!important;border:2px solid #4dabf7!important;color:#856404}.operations-list .operation-item.active{background-color:#fff3cd!important;border:1px solid #ffeeba!important;color:#856404}.operations-list .operation-item.auto_clean{border:2px solid #4dabf7!important;background-color:#f3e5f5!important}.operations-list .operation-item.auto_clean:hover{border-color:#339af0!important;background-color:#e1bee7!important}.operations-list .operation-item.default-operation{background-color:#fff;border:1px solid #dee2e6}.operations-list .operation-item.default-operation:hover{border-color:#adb5bd;background-color:#f8f9fa}.operations-list .operation-content{display:flex;flex-direction:column;gap:1px;flex:1;min-width:0}.operations-list .operation-content .symbol{font-weight:500;color:#495057;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.operations-list .operation-content .arg{font-size:12px;color:#868e96;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.operations-list .operation-content .clean-strategy{font-size:11px;color:#4dabf7;font-style:italic;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.operations-list .preserve-button,.operations-list .delete-button{border:none;cursor:pointer;border-radius:2px;transition:all .2s}.operations-list .preserve-button{background-color:#4dabf7;color:#fff;font-size:11px;padding:1px 2px;margin-top:1px;font-weight:400;width:100%}.operations-list .delete-button{background:none;color:#adb5bd;padding:0;font-size:14px;line-height:1;margin-left:1px}.operations-list .preserve-button:hover{background-color:#339af0}.operations-list .delete-button:hover{color:#fa5252}.operation-detail{margin-top:1px;padding:1px 2px;background-color:#fff3cd;border-radius:2px}.operation-detail .arg-getters{display:flex;flex-direction:column;gap:8px}.operation-detail .arg-getters fieldset{border:1px solid #dee2e6;border-radius:3px;padding:2px 4px;margin-bottom:2px}.operation-detail .arg-getters div.col-enum{width:100%;overflow-x:auto}.operation-detail .arg-getters div.col-enum table{width:100%;border-collapse:collapse}.operation-detail .arg-getters div.col-enum table td,.operation-detail .arg-getters div.col-enum table th{border:1px solid #dee2e6;padding:4px 8px;text-align:left}.operation-detail .arg-getters div.col-enum table th{background-color:#e9ecef;font-weight:600}.operations-viewer{border:none;border-radius:2px;padding:0;background:none;box-shadow:none;font-size:.95rem}.operations-viewer .operation-adder{clear:both}.operations-viewer .operations-box{clear:left;display:flex;overflow:auto}.operations-viewer .operations-box h4{font-size:1em;border:1px orange;color:#000}.operations-viewer .operations-box div{overflow-x:scroll}.col-enum table{margin-bottom:9px}.ag-theme-alpine-dark,.ag-theme-alpine{--ag-spacing:3px;--ag-list-item-height: 20px}div.dependent-tabs ul.tabs li.active{background:var(--bk-accent-color, rgba(33, 150, 243, .49))}.ag-row .ag-cell{font-family:monospace;white-space:pre}.left-menu{color:#000}.status-bar .ag-center-cols-viewport{min-height:unset!important}.status-bar .ag-root-wrapper{border-bottom-left-radius:0;border-bottom-right-radius:0}.buckaroo-widget .df-viewer .ag-root-wrapper{border-top-left-radius:0;border-top-right-radius:0}@media (prefers-color-scheme: light){.status-bar .ag-root-wrapper{border:1px solid #c0c0c0!important;border-bottom:none!important}.df-viewer .ag-root-wrapper{border:1px solid #c0c0c0!important}.buckaroo-widget .df-viewer .ag-root-wrapper{border-top:none!important}}.theme-hanger{background-color:var(--bk-bg-color, #181D1F)}@media (prefers-color-scheme: light){.theme-hanger{background-color:var(--bk-bg-color, #ffffff)}}.marimo .orig-df{display:flex;flex-direction:column}.marimo .statusBar{width:100%;order:1}.marimo .orig-df .df-viewer{order:1}.custom-tooltip{color:#000;background:green}.histogram-component{margin:0}.floating-tooltip{color:#000;background:#fff}.floating-tooltip dl{border:1px solid black;padding:1px 4px;margin:0;display:flow-root}.floating-tooltip dl dt{font-weight:700;float:left;margin:0;padding:0}.floating-tooltip dl dd{float:left;margin:0 0 0 10px;clear:right}.df-viewer{width:100%}.df-viewer.short-mode .ag-center-cols-viewport{min-height:50px}.df-viewer.in-iframe.short-mode .ag-center-cols-viewport,.df-viewer.in-iframe .ag-center-cols-viewport{min-height:450px}.ag-root-wrapper-body .ag-cell-inline-editing{height:100%}.buckaroo_anywidget{min-width:900px}div div div .buckaroo_anywidget{min-width:inherit}.statusBar .ag-ltr .ag-cell-focus:not(.ag-cell-range-selected):focus-within,.statusBar .ag-ltr .ag-context-menu-open .ag-cell-focus:not(.ag-cell-range-selected),.statusBar .ag-ltr .ag-full-width-row.ag-row-focus:focus .ag-cell-wrapper.ag-row-group,.statusBar .ag-ltr .ag-cell-range-single-cell,.statusBar .ag-ltr .ag-cell-range-single-cell.ag-cell-range-handle,.statusBar .ag-rtl .ag-cell-focus:not(.ag-cell-range-selected):focus-within,.statusBar .ag-rtl .ag-context-menu-open .ag-cell-focus:not(.ag-cell-range-selected),.statusBar .ag-rtl .ag-full-width-row.ag-row-focus:focus .ag-cell-wrapper.ag-row-group,.statusBar .ag-rtl .ag-cell-range-single-cell,.statusBar .ag-rtl .ag-cell-range-single-cell.ag-cell-range-handle{border-style:none;outline:initial}.statusBar .ag-column-first{padding:0}.statusBar .ag-column-first .FakeSearchEditor input{outline:none}.FakeSearchEditor{width:100%}.FakeSearchEditor input{border:none;background:transparent;color:inherit;outline:none}.FakeSearchEditor button{border:none;border-left:1px solid var(--ag-border-color, #68686e);background:transparent;color:inherit;cursor:pointer;padding:0 4px}@media (prefers-color-scheme: dark){div.cell-output-ipywidget-background{background:#1f1f1f!important}}@media (prefers-color-scheme: light){div.cell-output-ipywidget-background{background:#fff!important}}.cell-output-ipywidget-background .status-bar{margin-bottom:0}.cell-output-ipywidget-background .df-viewer{margin-top:0}.cell-output-ipywidget-background .df-viewer .theme-hanger{margin-top:-12px}.ag-header-row .left_col_configs_header,.ag-row .left_col_configs_cell{border-right:2px solid var(--ag-border-color, #717171)!important}.ag-header-row .left_col_configs_header_last,.ag-row .left_col_configs_cell_last{border-right:4px solid var(--ag-border-color, #717171)!important;border-bottom:none;border-top:none}.df-viewer .ag-header{border-bottom:4px solid var(--ag-border-color, #717171)!important}.df-viewer .ag-center-cols-viewport .ag-row:first-child{border-top:2px solid var(--ag-border-color, #717171)!important}
package/package.json CHANGED
@@ -1,120 +1,128 @@
1
1
  {
2
2
  "name": "buckaroo-js-core",
3
- "version": "0.8.4",
4
- "description": "Core JS/tsx components of buckaroo, packaged separately",
5
- "main": "index.js",
6
- "types": "index.d.ts",
7
- "scripts": {
8
- "clean": "tsc --build --clean && rimraf docs",
9
- "build": "npm run clean && npm run build:lib && npm run build:examples",
10
- "build:lib": "tsc",
11
- "build:examples": "webpack --mode=production --env production",
12
- "dev": "webpack-cli serve --mode=development --env development --open",
13
- "prod": "webpack-cli serve --mode=production --env production --open",
14
- "lint": "eslint './{examples,src}/**/*.{ts,tsx}'",
15
- "lint:fix": "eslint './{examples,src}/**/*.{ts,tsx}' --fix",
16
- "test": "jest",
17
- "test:watch": "jest --watch",
18
- "codecov": "curl -s https://codecov.io/bash | bash",
19
- "preversion": "npm run test",
20
- "version": "npm run clean && npm run build && git add package.json README.md",
21
- "postversion": "git push && git push --tags && npm run publish"
22
- },
23
- "repository": {
24
- "type": "git",
25
- "url": "git+https://github.com/paddymul/buckaroo-js-core.git"
26
- },
27
- "homepage": "https://github.com/paddymul/buckaroo-js-core",
3
+ "version": "0.11.7",
4
+ "description": "React + AG-Grid components and infinite-scroll data layer that power the Buckaroo DataFrame viewer.",
28
5
  "keywords": [
6
+ "buckaroo",
7
+ "dataframe",
8
+ "ag-grid",
29
9
  "react",
30
- "edit",
31
- "editable",
32
- "editable-table",
33
- "editable-list",
34
- "editable-grid",
35
- "list",
36
- "listview",
37
- "es6",
38
- "js",
39
- "typescript"
10
+ "pandas",
11
+ "data-viewer",
12
+ "jupyter"
40
13
  ],
41
- "author": "Paddy Mullen <paddy@paddymullen.com>",
42
- "license": "ISC",
14
+ "license": "BSD-3-Clause",
15
+ "author": "Paddy Mullen",
16
+ "homepage": "https://github.com/buckaroo-data/buckaroo",
17
+ "repository": {
18
+ "type": "git",
19
+ "url": "git+https://github.com/buckaroo-data/buckaroo.git",
20
+ "directory": "packages/buckaroo-js-core"
21
+ },
43
22
  "bugs": {
44
- "url": "https://github.com/paddymul/buckaroo-js-core/issues"
23
+ "url": "https://github.com/buckaroo-data/buckaroo/issues"
45
24
  },
46
- "dependencies": {
47
- "ag-grid-community": "^31.0.3",
48
- "ag-grid-react": "^31.0.3",
49
- "lodash": "^4.17.21",
50
- "recharts": "^2.13.0"
25
+ "packageManager": "pnpm@9.0.0",
26
+ "type": "module",
27
+ "main": "dist/index.esm.js",
28
+ "module": "dist/index.esm.js",
29
+ "types": "dist/src/index.d.ts",
30
+ "exports": {
31
+ ".": {
32
+ "types": "./dist/src/index.d.ts",
33
+ "import": "./dist/index.esm.js",
34
+ "default": "./dist/index.esm.js"
35
+ },
36
+ "./style.css": "./dist/style.css",
37
+ "./dist/style.css": "./dist/style.css",
38
+ "./package.json": "./package.json"
51
39
  },
52
- "peerDependencies": {
53
- "react": "^18.0.0",
54
- "react-dom": "^18.0.0"
40
+ "sideEffects": [
41
+ "**/*.css"
42
+ ],
43
+ "engines": {
44
+ "node": ">=18"
45
+ },
46
+ "publishConfig": {
47
+ "access": "public"
48
+ },
49
+ "scripts": {
50
+ "dev": "vite",
51
+ "build:tsc": "tsc -b",
52
+ "build:vite": "vite build",
53
+ "build": "tsc -b && vite build",
54
+ "prepublishOnly": "pnpm run build",
55
+ "lint": "eslint .",
56
+ "preview": "vite preview",
57
+ "test": "jest",
58
+ "storybook": "storybook dev -p 6006",
59
+ "build-storybook": "storybook build -o dist/storybook",
60
+ "test:pw": "pnpm exec playwright test",
61
+ "test:pw:headed": "pnpm exec playwright test --headed",
62
+ "test:pw:ui": "pnpm exec playwright test --ui",
63
+ "test:pw:report": "pnpm exec playwright show-report",
64
+ "test:integration": "pnpm exec playwright test --config playwright.config.integration.ts --reporter=line",
65
+ "test:server": "pnpm exec playwright test --config playwright.config.server.ts",
66
+ "test:server:headed": "pnpm exec playwright test --config playwright.config.server.ts --headed",
67
+ "test:marimo": "pnpm exec playwright test --config playwright.config.marimo.ts",
68
+ "test:marimo:headed": "pnpm exec playwright test --config playwright.config.marimo.ts --headed",
69
+ "test:wasm-marimo": "pnpm exec playwright test --config playwright.config.wasm-marimo.ts",
70
+ "test:wasm-marimo:headed": "pnpm exec playwright test --config playwright.config.wasm-marimo.ts --headed",
71
+ "test:static-embed": "pnpm exec playwright test --config playwright.config.static-embed.ts --reporter=line",
72
+ "test:static-embed:headed": "pnpm exec playwright test --config playwright.config.static-embed.ts --headed"
73
+ },
74
+ "files": [
75
+ "dist",
76
+ "LICENSE",
77
+ "README.md"
78
+ ],
79
+ "dependencies": {
80
+ "ag-grid-community": "^33.3.2",
81
+ "ag-grid-react": "^33.3.2",
82
+ "hyparquet": "^1.8.2",
83
+ "lodash-es": "^4.17.21",
84
+ "recharts": "^2.13.1"
55
85
  },
56
-
57
-
58
86
  "devDependencies": {
59
- "@babel/plugin-syntax-dynamic-import": "^7.8.3",
60
- "@babel/plugin-transform-async-to-generator": "7.16.8",
61
- "@babel/plugin-transform-runtime": "7.17.0",
62
- "@babel/preset-env": "7.16.11",
63
- "@babel/preset-react": "7.16.7",
64
- "@babel/preset-typescript": "7.16.7",
65
- "@babel/runtime": "7.17.9",
66
- "@eslint/compat": "^1.2.1",
67
- "@eslint/eslintrc": "^3.1.0",
87
+ "@babel/preset-typescript": "^7.26.0",
68
88
  "@eslint/js": "^9.13.0",
69
- "@testing-library/jest-dom": "^5.11.9",
70
- "@testing-library/react": "^13.0.0",
89
+ "@jest/globals": "^29.7.0",
90
+ "@playwright/test": "^1.52.0",
91
+ "@storybook/addon-essentials": "^8.5.6",
92
+ "@storybook/addon-interactions": "^8.5.6",
93
+ "@storybook/addon-links": "^8.5.6",
94
+ "@storybook/blocks": "^8.5.6",
95
+ "@storybook/react": "^8.5.6",
96
+ "@storybook/react-vite": "^8.5.6",
97
+ "@storybook/test": "^8.5.6",
98
+ "@testing-library/jest-dom": "^6.6.3",
99
+ "@testing-library/react": "^16.1.0",
71
100
  "@types/jest": "^29.5.14",
72
- "@types/node": "^14.14.25",
73
- "@types/prismjs": "^1.16.3",
74
- "@types/react": "^18.0.0",
75
- "@types/react-dom": "^18.0.0",
76
- "@types/webpack-dev-server": "^4.7.1",
77
- "@typescript-eslint/eslint-plugin": "^8.11.0",
78
- "@typescript-eslint/parser": "^8.11.0",
79
- "@typescript-eslint/typescript-estree": "^8.11.0",
80
- "bootstrap": "^5.1.3",
81
- "css-loader": "^5.0.1",
101
+ "@types/lodash-es": "^4.17.12",
102
+ "@types/node": "^22.15.3",
103
+ "@types/react": "^18.3.12",
104
+ "@types/react-dom": "^18.3.1",
105
+ "@vitejs/plugin-react": "^4.3.3",
106
+ "@welldone-software/why-did-you-render": "^8",
82
107
  "eslint": "^9.13.0",
83
- "eslint-config-prettier": "^8.3.0",
84
- "eslint-plugin-import": "^2.25.4",
85
- "eslint-plugin-prettier": "^4.0.0",
86
- "eslint-plugin-react": "^7.28.0",
87
108
  "eslint-plugin-react-hooks": "^5.0.0",
88
- "file-loader": "^6.2.0",
89
- "fork-ts-checker-webpack-plugin": "^6.1.0",
90
- "glob": "^7.1.6",
109
+ "eslint-plugin-react-refresh": "^0.4.14",
91
110
  "globals": "^15.11.0",
92
- "html-loader": "^2.1.2",
93
- "html-webpack-plugin": "^5.0.0",
94
- "jest": "^29.5.14",
95
- "jest-canvas-mock": "^2.3.1",
96
- "markdown-loader": "^7.0.0",
97
- "null-loader": "^4.0.1",
98
- "prettier": "2.6.2",
99
- "prism-themes": "^1.6.0",
100
- "prismjs": "^1.28.0",
101
- "raw-loader": "^4.0.2",
102
- "react": "^18.0.0",
103
- "react-bootstrap": "^2.0.0",
104
- "react-dom": "^18.0.0",
105
- "react-router": "^6.27.0",
106
- "react-router-dom": "^5.2.0",
107
- "react-test-renderer": "^18.0.0",
108
- "rimraf": "^6.0.1",
109
- "style-loader": "^2.0.0",
110
- "svg-url-loader": "^7.1.1",
111
+ "jest": "^29.7.0",
112
+ "jest-environment-jsdom": "^29.7.0",
113
+ "jsdom": "^26.0.0",
114
+ "storybook": "^8.4.4",
115
+ "styled-components": "^6.1.13",
111
116
  "ts-jest": "^29.2.5",
112
- "ts-loader": "^9.5.1",
113
117
  "ts-node": "^10.9.2",
114
- "tsconfig-paths-webpack-plugin": "^3.3.0",
115
- "typescript": "<5.2.0",
116
- "webpack": "^5.20.1",
117
- "webpack-cli": "^5.0.0",
118
- "webpack-dev-server": "^5.0.0"
118
+ "typescript": "~5.6.2",
119
+ "typescript-eslint": "^8.11.0",
120
+ "vite": "^5.4.10",
121
+ "vite-plugin-dts": "^4.3.0",
122
+ "vite-tsconfig-paths": "^5.1.4"
123
+ },
124
+ "peerDependencies": {
125
+ "react": "^18.2.0 || ^19.0.0",
126
+ "react-dom": "^18.2.0 || ^19.0.0"
119
127
  }
120
128
  }
package/.prettierrc DELETED
@@ -1,16 +0,0 @@
1
- {
2
- "printWidth": 100,
3
- "trailingComma": "none",
4
- "tabWidth": 4,
5
- "semi": true,
6
- "singleQuote": true,
7
- "bracketSpacing": false,
8
- "bracketSameLine": false,
9
- "arrowParens": "always",
10
- "endOfLine": "auto",
11
- "jsxSingleQuote": true,
12
- "proseWrap": "preserve",
13
- "quoteProps": "as-needed",
14
- "useTabs": false,
15
- "htmlWhitespaceSensitivity": "css"
16
- }
package/CHANGELOG.md DELETED
@@ -1,23 +0,0 @@
1
- # Changelog
2
-
3
- All notable changes to this project will be documented in this file.
4
-
5
- The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
- and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
-
8
- ### [1.1.1] WIP
9
-
10
- - Render the examples in React 18 mode when available
11
- - Add automatic loading to CodePen for the examples
12
-
13
- ## [1.1.0] 2021-05-04
14
-
15
- - Support custom grid elements
16
- - Support reference forwarding
17
- - Support externally triggered data refresh
18
- - Support custom fillers and default values
19
- - Support integration with `sortablejs` for drag&drop reordering
20
-
21
- # [1.0.0] 2021-05-02
22
-
23
- - First release
@@ -1 +0,0 @@
1
- {"version":3,"file":"colorMap.d.ts","sourceRoot":"","sources":["../../src/buckaroo_js/baked_data/colorMap.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,wBAAwB,UAiQpC,CAAC;AAGF,eAAO,MAAM,cAAc,UAiQ1B,CAAC"}