Skip to content

Commit 7755f72

Browse files
Merge pull request #108 from datum-cloud/chore/dependency-updates
chore(deps): dependency updates incl. 4 major upgrades
2 parents d02ce39 + f0495ef commit 7755f72

15 files changed

Lines changed: 3426 additions & 3603 deletions

File tree

.changeset/dependency-updates.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
---
2+
'@datum-cloud/datum-ui': patch
3+
---
4+
5+
Update dependencies across the workspace, including four major upgrades, with the affected components migrated.
6+
7+
- Minor & patch bumps for ~37 packages (react 19.2.7, recharts 3.8.1, zod 4.4.3, react-hook-form 7.77, motion 12.40, tiptap 3.24, storybook 10.4.1, next 16.2.7, turbo 2.9.16, and others).
8+
- `@antfu/eslint-config` v8 → v9 and `@eslint-react/eslint-plugin` v3 → v5 (removed the obsolete `react/component-hook-factories` rule override).
9+
- `fumadocs-mdx` v14 → v15 (Vite/rolldown bundler; no config changes needed).
10+
- `react-day-picker` v9 → v10: Calendar migrated to the v10 API — `month_grid` classNames key, `startMonth`/`endMonth` navigation props, and `autoFocus`. Behavior is unchanged.
11+
12+
Compatibility fixes: `recharts` 3.8 chart tooltip key coercion. Test setup gains a jsdom `elementFromPoint` polyfill for tiptap 3.24.

apps/docs/package.json

Lines changed: 29 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -10,32 +10,32 @@
1010
},
1111
"dependencies": {
1212
"@datum-cloud/datum-ui": "workspace:*",
13-
"@radix-ui/react-avatar": "^1",
14-
"@radix-ui/react-checkbox": "^1",
15-
"@radix-ui/react-collapsible": "^1",
16-
"@radix-ui/react-dialog": "^1",
17-
"@radix-ui/react-dropdown-menu": "^2",
18-
"@radix-ui/react-hover-card": "^1",
19-
"@radix-ui/react-label": "^2",
20-
"@radix-ui/react-popover": "^1",
21-
"@radix-ui/react-radio-group": "^1",
22-
"@radix-ui/react-select": "^2",
23-
"@radix-ui/react-separator": "^1",
24-
"@radix-ui/react-slot": "^1",
25-
"@radix-ui/react-switch": "^1",
26-
"@radix-ui/react-tabs": "^1",
27-
"@radix-ui/react-tooltip": "^1",
28-
"@radix-ui/react-visually-hidden": "^1",
13+
"@radix-ui/react-avatar": "^1.1.11",
14+
"@radix-ui/react-checkbox": "^1.3.3",
15+
"@radix-ui/react-collapsible": "^1.1.12",
16+
"@radix-ui/react-dialog": "^1.1.15",
17+
"@radix-ui/react-dropdown-menu": "^2.1.16",
18+
"@radix-ui/react-hover-card": "^1.1.15",
19+
"@radix-ui/react-label": "^2.1.8",
20+
"@radix-ui/react-popover": "^1.1.15",
21+
"@radix-ui/react-radio-group": "^1.3.8",
22+
"@radix-ui/react-select": "^2.2.6",
23+
"@radix-ui/react-separator": "^1.1.8",
24+
"@radix-ui/react-slot": "^1.2.4",
25+
"@radix-ui/react-switch": "^1.2.6",
26+
"@radix-ui/react-tabs": "^1.1.13",
27+
"@radix-ui/react-tooltip": "^1.2.8",
28+
"@radix-ui/react-visually-hidden": "^1.2.4",
2929
"cmdk": "^1.1.1",
30-
"fumadocs-core": "^16",
31-
"fumadocs-mdx": "~14.2.9",
32-
"fumadocs-ui": "^16",
33-
"lucide-react": "^1.14.0",
34-
"next": "^16.2.6",
35-
"react": "^19.2",
36-
"react-dom": "^19.2",
37-
"recharts": "^3",
38-
"sonner": "^2"
30+
"fumadocs-core": "^16.9.3",
31+
"fumadocs-mdx": "~15.0.10",
32+
"fumadocs-ui": "^16.9.3",
33+
"lucide-react": "^1.17.0",
34+
"next": "^16.2.7",
35+
"react": "^19.2.7",
36+
"react-dom": "^19.2.7",
37+
"recharts": "^3.8.1",
38+
"sonner": "^2.0.7"
3939
},
4040
"devDependencies": {
4141
"@repo/config": "workspace:*",
@@ -45,17 +45,17 @@
4545
"@types/leaflet.fullscreen": "^5.2.0",
4646
"@types/leaflet.markercluster": "^1.5.6",
4747
"@types/mdx": "^2.0.13",
48-
"@types/node": "25.6.2",
49-
"@types/react": "^19",
50-
"@types/react-dom": "^19",
48+
"@types/node": "25.9.1",
49+
"@types/react": "^19.2.16",
50+
"@types/react-dom": "^19.2.3",
5151
"leaflet": "^1.9.4",
5252
"leaflet-draw": "^1.0.4",
5353
"leaflet.fullscreen": "^5.3.1",
5454
"leaflet.markercluster": "^1.5.3",
5555
"react-leaflet": "^5.0.0",
5656
"react-leaflet-markercluster": "5.0.0-rc.0",
5757
"tailwindcss": "^4.3.0",
58-
"typescript": "^6.0",
58+
"typescript": "^6.0.3",
5959
"zod": "^4.4.3"
6060
}
6161
}

apps/storybook/package.json

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -14,34 +14,34 @@
1414
},
1515
"dependencies": {
1616
"@datum-cloud/datum-ui": "workspace:*",
17-
"date-fns": "^4.1.0",
18-
"lucide-react": "^1.14.0",
19-
"react": "^19",
20-
"react-dom": "^19",
17+
"date-fns": "^4.4.0",
18+
"lucide-react": "^1.17.0",
19+
"react": "^19.2.7",
20+
"react-dom": "^19.2.7",
2121
"zod": "^4.4.3"
2222
},
2323
"devDependencies": {
2424
"@repo/config": "workspace:*",
2525
"@repo/shadcn": "workspace:*",
26-
"@rsbuild/core": "^2.0.5",
27-
"@rsbuild/plugin-react": "^2.0.0",
28-
"@storybook/addon-a11y": "^10.3.6",
29-
"@storybook/addon-interactions": "^8",
30-
"@storybook/addon-links": "^10.3.6",
31-
"@storybook/test": "^8",
26+
"@rsbuild/core": "^2.0.9",
27+
"@rsbuild/plugin-react": "^2.0.1",
28+
"@storybook/addon-a11y": "^10.4.1",
29+
"@storybook/addon-interactions": "^8.6.14",
30+
"@storybook/addon-links": "^10.4.1",
31+
"@storybook/test": "^8.6.15",
3232
"@tailwindcss/postcss": "^4.3.0",
3333
"@tanstack/react-table": "^8.21.3",
34-
"@types/react": "^19",
35-
"eslint": "^10.3.0",
36-
"react-day-picker": "^9.14.0",
37-
"recharts": "^3",
38-
"storybook": "^10",
39-
"storybook-addon-pseudo-states": "^10.3.6",
34+
"@types/react": "^19.2.16",
35+
"eslint": "^10.4.1",
36+
"react-day-picker": "^10.0.1",
37+
"recharts": "^3.8.1",
38+
"storybook": "^10.4.1",
39+
"storybook-addon-pseudo-states": "^10.4.1",
4040
"storybook-addon-tag-badges": "^3.1.0",
41-
"storybook-react-rsbuild": "^3",
41+
"storybook-react-rsbuild": "^3.3.4",
4242
"tailwind-scrollbar-hide": "^4.0.0",
43-
"tailwindcss": "^4",
43+
"tailwindcss": "^4.3.0",
4444
"tw-animate-css": "^1.4.0",
45-
"typescript": "^6.0"
45+
"typescript": "^6.0.3"
4646
}
4747
}

apps/storybook/stories/base/chart.stories.tsx

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import type { ChartConfig } from '@datum-cloud/datum-ui/chart'
1+
import type { ChartConfig, CustomTooltipProps } from '@datum-cloud/datum-ui/chart'
22
import type { Meta, StoryObj } from 'storybook-react-rsbuild'
33
import {
44
ChartContainer,
@@ -48,7 +48,9 @@ export const Default: Story = {
4848
<CartesianGrid vertical={false} />
4949
<XAxis dataKey="month" tickLine={false} axisLine={false} />
5050
<YAxis tickLine={false} axisLine={false} />
51-
<ChartTooltip content={props => <ChartTooltipContent {...props} />} />
51+
<ChartTooltip
52+
content={props => <ChartTooltipContent {...(props as CustomTooltipProps)} />}
53+
/>
5254
<Bar dataKey="desktop" fill="var(--color-desktop)" radius={4} />
5355
<Bar dataKey="mobile" fill="var(--color-mobile)" radius={4} />
5456
</BarChart>

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
"devDependencies": {
2222
"@changesets/cli": "^2.31.0",
2323
"lefthook": "^2.1.9",
24-
"turbo": "^2.9.14"
24+
"turbo": "^2.9.16"
2525
},
2626
"pnpm": {
2727
"onlyBuiltDependencies": [

packages/config/eslint/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ export function createConfig(options?: { react?: boolean, markdown?: boolean }):
1717
// Demoted to warn after the @antfu/eslint-config 4 → 8 jump promoted
1818
// these. Library code is not HMR'd; factory and test-harness patterns
1919
// are intentional. Re-tighten case-by-case in follow-up PRs.
20+
// Note: react/component-hook-factories was removed in @eslint-react v5.
2021
'react-refresh/only-export-components': 'warn',
21-
'react/component-hook-factories': 'warn',
2222
'react/exhaustive-deps': 'warn',
2323
'react/set-state-in-effect': 'warn',
2424
},

packages/config/package.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@
1010
"./eslint": "./eslint/index.ts"
1111
},
1212
"devDependencies": {
13-
"@antfu/eslint-config": "^8.2.0",
14-
"@eslint-react/eslint-plugin": "^3",
15-
"eslint": "^10.3.0",
13+
"@antfu/eslint-config": "^9.0.0",
14+
"@eslint-react/eslint-plugin": "^5.8.9",
15+
"eslint": "^10.4.1",
1616
"eslint-plugin-format": "^2.0.1",
17-
"eslint-plugin-react-hooks": "^7",
18-
"eslint-plugin-react-refresh": "^0.5",
19-
"typescript": "^6.0"
17+
"eslint-plugin-react-hooks": "^7.1.1",
18+
"eslint-plugin-react-refresh": "^0.5.2",
19+
"typescript": "^6.0.3"
2020
}
2121
}

packages/datum-ui/package.json

Lines changed: 46 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -560,85 +560,85 @@
560560
},
561561
"dependencies": {
562562
"@dnd-kit/utilities": "^3.2.2",
563-
"@radix-ui/react-avatar": "^1",
564-
"@radix-ui/react-checkbox": "^1",
565-
"@radix-ui/react-collapsible": "^1",
566-
"@radix-ui/react-dialog": "^1",
567-
"@radix-ui/react-dropdown-menu": "^2",
568-
"@radix-ui/react-hover-card": "^1",
569-
"@radix-ui/react-label": "^2",
570-
"@radix-ui/react-popover": "^1",
571-
"@radix-ui/react-radio-group": "^1",
572-
"@radix-ui/react-select": "^2",
573-
"@radix-ui/react-separator": "^1",
574-
"@radix-ui/react-slot": "^1",
575-
"@radix-ui/react-switch": "^1",
576-
"@radix-ui/react-tabs": "^1",
577-
"@radix-ui/react-tooltip": "^1",
578-
"@radix-ui/react-visually-hidden": "^1",
563+
"@radix-ui/react-avatar": "^1.1.11",
564+
"@radix-ui/react-checkbox": "^1.3.3",
565+
"@radix-ui/react-collapsible": "^1.1.12",
566+
"@radix-ui/react-dialog": "^1.1.15",
567+
"@radix-ui/react-dropdown-menu": "^2.1.16",
568+
"@radix-ui/react-hover-card": "^1.1.15",
569+
"@radix-ui/react-label": "^2.1.8",
570+
"@radix-ui/react-popover": "^1.1.15",
571+
"@radix-ui/react-radio-group": "^1.3.8",
572+
"@radix-ui/react-select": "^2.2.6",
573+
"@radix-ui/react-separator": "^1.1.8",
574+
"@radix-ui/react-slot": "^1.2.4",
575+
"@radix-ui/react-switch": "^1.2.6",
576+
"@radix-ui/react-tabs": "^1.1.13",
577+
"@radix-ui/react-tooltip": "^1.2.8",
578+
"@radix-ui/react-visually-hidden": "^1.2.4",
579579
"class-variance-authority": "^0.7.1",
580580
"clsx": "^2.1.1",
581581
"cmdk": "^1.1.1",
582-
"isomorphic-dompurify": "^3.12.0",
582+
"isomorphic-dompurify": "^3.15.0",
583583
"tailwind-merge": "^3.6.0",
584-
"tw-animate-css": "^1"
584+
"tw-animate-css": "^1.4.0"
585585
},
586586
"devDependencies": {
587-
"@conform-to/react": "^1.19.2",
588-
"@conform-to/zod": "^1.19.2",
587+
"@conform-to/react": "^1.19.3",
588+
"@conform-to/zod": "^1.19.3",
589589
"@dnd-kit/core": "^6.3.1",
590590
"@dnd-kit/sortable": "^10.0.0",
591-
"@hookform/resolvers": "^5.2.2",
591+
"@hookform/resolvers": "^5.4.0",
592592
"@monaco-editor/react": "^4.7.0",
593593
"@repo/config": "workspace:*",
594594
"@repo/shadcn": "workspace:*",
595595
"@stepperize/react": "^6.1.0",
596596
"@tanstack/react-table": "^8.21.3",
597-
"@tanstack/react-virtual": "^3.13.24",
598-
"@testing-library/jest-dom": "^6",
599-
"@testing-library/react": "^16",
600-
"@testing-library/user-event": "^14",
601-
"@tiptap/extension-character-count": "^3.23.1",
602-
"@tiptap/extension-link": "^3.23.1",
603-
"@tiptap/extension-placeholder": "^3.23.1",
604-
"@tiptap/extension-underline": "^3.23.1",
605-
"@tiptap/react": "^3.23.1",
606-
"@tiptap/starter-kit": "^3.23.1",
597+
"@tanstack/react-virtual": "^3.14.1",
598+
"@testing-library/jest-dom": "^6.9.1",
599+
"@testing-library/react": "^16.3.2",
600+
"@testing-library/user-event": "^14.6.1",
601+
"@tiptap/extension-character-count": "^3.24.0",
602+
"@tiptap/extension-link": "^3.24.0",
603+
"@tiptap/extension-placeholder": "^3.24.0",
604+
"@tiptap/extension-underline": "^3.24.0",
605+
"@tiptap/react": "^3.24.0",
606+
"@tiptap/starter-kit": "^3.24.0",
607607
"@types/js-yaml": "^4.0.9",
608608
"@types/leaflet": "^1.9.21",
609609
"@types/leaflet-draw": "^1.0.13",
610610
"@types/leaflet.fullscreen": "^5.2.0",
611611
"@types/leaflet.markercluster": "^1.5.6",
612612
"@types/nprogress": "^0.2.3",
613-
"@types/react": "^19",
614-
"@types/react-dom": "^19",
615-
"date-fns": "^4.1.0",
613+
"@types/react": "^19.2.16",
614+
"@types/react-dom": "^19.2.3",
615+
"date-fns": "^4.4.0",
616616
"date-fns-tz": "^3.2.0",
617-
"eslint": "^10.3.0",
618-
"js-yaml": "^4.1.1",
619-
"jsdom": "^29",
617+
"eslint": "^10.4.1",
618+
"js-yaml": "^4.2.0",
619+
"jsdom": "^29.1.1",
620620
"leaflet": "^1.9.4",
621621
"leaflet-draw": "^1.0.4",
622622
"leaflet.fullscreen": "^5.3.1",
623623
"leaflet.markercluster": "^1.5.3",
624-
"lucide-react": "^1.14",
624+
"lucide-react": "^1.17.0",
625625
"monaco-editor": "^0.55.1",
626-
"motion": "^12.38.0",
626+
"motion": "^12.40.0",
627627
"nprogress": "^0.2.0",
628628
"nuqs": "^2.8.9",
629-
"react": "^19",
630-
"react-day-picker": "^9.14.0",
631-
"react-dom": "^19",
629+
"react": "^19.2.7",
630+
"react-day-picker": "^10.0.1",
631+
"react-dom": "^19.2.7",
632632
"react-dropzone": "^15.0.0",
633-
"react-hook-form": "^7.75.0",
633+
"react-hook-form": "^7.77.0",
634634
"react-leaflet": "^5.0.0",
635635
"react-leaflet-markercluster": "5.0.0-rc.0",
636636
"react-number-format": "^5.4.5",
637637
"sonner": "^2.0.7",
638638
"tailwindcss": "^4.3.0",
639-
"tsdown": "^0.22.0",
640-
"typescript": "^6.0",
641-
"vitest": "^4",
639+
"tsdown": "^0.22.1",
640+
"typescript": "^6.0.3",
641+
"vitest": "^4.1.8",
642642
"zod": "^4.4.3"
643643
},
644644
"publishConfig": {

packages/datum-ui/src/components/base/calendar/calendar.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ function Calendar({
9898
: 'rounded-md pl-2 pr-1 flex items-center gap-1 text-sm h-8 [&>svg]:text-muted-foreground [&>svg]:size-3.5',
9999
defaultClassNames.caption_label,
100100
),
101-
table: 'w-full border-collapse',
101+
month_grid: 'w-full border-collapse',
102102
weekdays: cn('flex', defaultClassNames.weekdays),
103103
weekday: cn(
104104
'text-muted-foreground rounded-md flex-1 font-normal text-[0.8rem] select-none',

packages/datum-ui/src/components/features/picker/components/calendar.tsx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -79,8 +79,8 @@ export function PickerCalendar({
7979
onMonthChange={actions.setMonthFrom}
8080
numberOfMonths={numberOfMonths}
8181
disabled={isDateDisabled}
82-
fromDate={effectiveMinDate}
83-
toDate={effectiveMaxDate}
82+
startMonth={effectiveMinDate}
83+
endMonth={effectiveMaxDate}
8484
className={className}
8585
classNames={CALENDAR_RESPONSIVE_CLASSNAMES}
8686
/>
@@ -112,8 +112,8 @@ export function PickerCalendar({
112112
month={month}
113113
onMonthChange={actions.setMonthFrom}
114114
disabled={isDateDisabled}
115-
fromDate={effectiveMinDate}
116-
toDate={effectiveMaxDate}
115+
startMonth={effectiveMinDate}
116+
endMonth={effectiveMaxDate}
117117
className={className}
118118
classNames={CALENDAR_RESPONSIVE_CLASSNAMES}
119119
/>

0 commit comments

Comments
 (0)