@asteby/metacore-app-providers 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/platform-config-provider.d.ts +40 -0
- package/dist/platform-config-provider.d.ts.map +1 -0
- package/dist/platform-config-provider.js +178 -0
- package/dist/platform-config-provider.js.map +1 -0
- package/package.json +4 -2
package/dist/index.d.ts
CHANGED
|
@@ -3,4 +3,5 @@ export { FontProvider, useFont, type FontProviderProps } from './font-provider';
|
|
|
3
3
|
export { LayoutProvider, useLayout, type Collapsible, type Variant, } from './layout-provider';
|
|
4
4
|
export { SearchProvider, useSearch, type SearchProviderProps } from './search-provider';
|
|
5
5
|
export { getCookie, setCookie, removeCookie } from './cookies';
|
|
6
|
+
export { PlatformConfigProvider, usePlatformConfig, applyBranding, applyCachedBranding, FALLBACK_BRANDING, type PlatformBranding, type BrandingFetcher, type PlatformConfigProviderProps, } from './platform-config-provider';
|
|
6
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACtF,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAC/E,OAAO,EACL,cAAc,EACd,SAAS,EACT,KAAK,WAAW,EAChB,KAAK,OAAO,GACb,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvF,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,KAAK,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACtF,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAA;AAC/E,OAAO,EACL,cAAc,EACd,SAAS,EACT,KAAK,WAAW,EAChB,KAAK,OAAO,GACb,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AACvF,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAC9D,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,2BAA2B,GACjC,MAAM,4BAA4B,CAAA"}
|
package/dist/index.js
CHANGED
|
@@ -3,4 +3,5 @@ export { FontProvider, useFont } from './font-provider';
|
|
|
3
3
|
export { LayoutProvider, useLayout, } from './layout-provider';
|
|
4
4
|
export { SearchProvider, useSearch } from './search-provider';
|
|
5
5
|
export { getCookie, setCookie, removeCookie } from './cookies';
|
|
6
|
+
export { PlatformConfigProvider, usePlatformConfig, applyBranding, applyCachedBranding, FALLBACK_BRANDING, } from './platform-config-provider';
|
|
6
7
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAkB,MAAM,sBAAsB,CAAA;AACtF,OAAO,EAAE,YAAY,EAAE,OAAO,EAA0B,MAAM,iBAAiB,CAAA;AAC/E,OAAO,EACL,cAAc,EACd,SAAS,GAGV,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,cAAc,EAAE,SAAS,EAA4B,MAAM,mBAAmB,CAAA;AACvF,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAkB,MAAM,sBAAsB,CAAA;AACtF,OAAO,EAAE,YAAY,EAAE,OAAO,EAA0B,MAAM,iBAAiB,CAAA;AAC/E,OAAO,EACL,cAAc,EACd,SAAS,GAGV,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,cAAc,EAAE,SAAS,EAA4B,MAAM,mBAAmB,CAAA;AACvF,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAC9D,OAAO,EACL,sBAAsB,EACtB,iBAAiB,EACjB,aAAa,EACb,mBAAmB,EACnB,iBAAiB,GAIlB,MAAM,4BAA4B,CAAA"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
export interface PlatformBranding {
|
|
3
|
+
platform_name: string;
|
|
4
|
+
platform_logo: string;
|
|
5
|
+
primary_color: string;
|
|
6
|
+
accent_color: string;
|
|
7
|
+
favicon_url: string;
|
|
8
|
+
support_email: string;
|
|
9
|
+
support_url: string;
|
|
10
|
+
}
|
|
11
|
+
export declare const FALLBACK_BRANDING: PlatformBranding;
|
|
12
|
+
interface PlatformConfigContextType extends PlatformBranding {
|
|
13
|
+
refetch: () => void;
|
|
14
|
+
}
|
|
15
|
+
export declare function applyBranding(data: Partial<PlatformBranding>, defaults?: PlatformBranding): void;
|
|
16
|
+
export declare function applyCachedBranding(storageKey?: string): void;
|
|
17
|
+
export type BrandingFetcher = () => Promise<Partial<PlatformBranding>>;
|
|
18
|
+
export interface PlatformConfigProviderProps {
|
|
19
|
+
children: ReactNode;
|
|
20
|
+
/**
|
|
21
|
+
* Fetches the current tenant's branding. Apps wire their own transport
|
|
22
|
+
* (axios, fetch, ofetch). Resolve to a partial — the provider merges over
|
|
23
|
+
* `defaults`. Reject to fall back to defaults.
|
|
24
|
+
*/
|
|
25
|
+
fetcher: BrandingFetcher;
|
|
26
|
+
/**
|
|
27
|
+
* Defaults applied when the fetcher hasn't resolved yet OR when it returns
|
|
28
|
+
* empty fields. Apps pass their static brand (name, primary color) as the
|
|
29
|
+
* baseline so the UI never paints with FALLBACK_BRANDING's empty name.
|
|
30
|
+
*/
|
|
31
|
+
defaults?: PlatformBranding;
|
|
32
|
+
/** TanStack Query staleTime, defaults to 5 minutes. */
|
|
33
|
+
staleTime?: number;
|
|
34
|
+
/** localStorage key for the persisted branding cache. */
|
|
35
|
+
storageKey?: string;
|
|
36
|
+
}
|
|
37
|
+
export declare function PlatformConfigProvider({ children, fetcher, defaults, staleTime, storageKey, }: PlatformConfigProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
38
|
+
export declare function usePlatformConfig(): PlatformConfigContextType;
|
|
39
|
+
export {};
|
|
40
|
+
//# sourceMappingURL=platform-config-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-config-provider.d.ts","sourceRoot":"","sources":["../src/platform-config-provider.tsx"],"names":[],"mappings":"AASA,OAAO,EAIL,KAAK,SAAS,EACf,MAAM,OAAO,CAAA;AAGd,MAAM,WAAW,gBAAgB;IAC/B,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,eAAO,MAAM,iBAAiB,EAAE,gBAQ/B,CAAA;AAED,UAAU,yBAA0B,SAAQ,gBAAgB;IAC1D,OAAO,EAAE,MAAM,IAAI,CAAA;CACpB;AAiGD,wBAAgB,aAAa,CAC3B,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,EAC/B,QAAQ,GAAE,gBAAoC,QAqB/C;AAOD,wBAAgB,mBAAmB,CAAC,UAAU,GAAE,MAAoB,QAQnE;AAED,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAA;AAEtE,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,SAAS,CAAA;IACnB;;;;OAIG;IACH,OAAO,EAAE,eAAe,CAAA;IACxB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,gBAAgB,CAAA;IAC3B,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,yDAAyD;IACzD,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,wBAAgB,sBAAsB,CAAC,EACrC,QAAQ,EACR,OAAO,EACP,QAA4B,EAC5B,SAAyB,EACzB,UAAwB,GACzB,EAAE,2BAA2B,2CA8C7B;AAED,wBAAgB,iBAAiB,8BAEhC"}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// Centralized branding/theming for any metacore app. Apps fetch their tenant
|
|
3
|
+
// branding (name, logo, primary color) from a backend endpoint they own; this
|
|
4
|
+
// provider caches it, applies CSS variables to <html>, persists in
|
|
5
|
+
// localStorage so subsequent loads paint the right brand pre-React, and
|
|
6
|
+
// re-applies on dark/light toggles.
|
|
7
|
+
//
|
|
8
|
+
// Decoupled from the app: callers pass a `fetcher` (any async function returning
|
|
9
|
+
// a partial branding payload). No axios/api imports here — apps wire whatever
|
|
10
|
+
// transport they already use (axios, fetch, ofetch, etc.).
|
|
11
|
+
import { createContext, useContext, useEffect, } from 'react';
|
|
12
|
+
import { useQuery, useQueryClient } from '@tanstack/react-query';
|
|
13
|
+
export const FALLBACK_BRANDING = {
|
|
14
|
+
platform_name: '',
|
|
15
|
+
platform_logo: '',
|
|
16
|
+
primary_color: '#6366f1',
|
|
17
|
+
accent_color: '#8b5cf6',
|
|
18
|
+
favicon_url: '',
|
|
19
|
+
support_email: '',
|
|
20
|
+
support_url: '',
|
|
21
|
+
};
|
|
22
|
+
const PlatformConfigContext = createContext({
|
|
23
|
+
...FALLBACK_BRANDING,
|
|
24
|
+
refetch: () => { },
|
|
25
|
+
});
|
|
26
|
+
// sRGB hex (#rrggbb) → CSS oklch() string. Returns null on bad input.
|
|
27
|
+
function hexToOklch(hex) {
|
|
28
|
+
if (!hex || !hex.startsWith('#'))
|
|
29
|
+
return null;
|
|
30
|
+
const r = parseInt(hex.slice(1, 3), 16) / 255;
|
|
31
|
+
const g = parseInt(hex.slice(3, 5), 16) / 255;
|
|
32
|
+
const b = parseInt(hex.slice(5, 7), 16) / 255;
|
|
33
|
+
const toLinear = (c) => c <= 0.04045 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4);
|
|
34
|
+
const lr = toLinear(r), lg = toLinear(g), lb = toLinear(b);
|
|
35
|
+
const l_ = 0.4122214708 * lr + 0.5363325363 * lg + 0.0514459929 * lb;
|
|
36
|
+
const m_ = 0.2119034982 * lr + 0.6806995451 * lg + 0.1073969566 * lb;
|
|
37
|
+
const s_ = 0.0883024619 * lr + 0.2817188376 * lg + 0.6299787005 * lb;
|
|
38
|
+
const l = Math.cbrt(l_), m = Math.cbrt(m_), s = Math.cbrt(s_);
|
|
39
|
+
const L = 0.2104542553 * l + 0.7936177850 * m - 0.0040720468 * s;
|
|
40
|
+
const a = 1.9779984951 * l - 2.4285922050 * m + 0.4505937099 * s;
|
|
41
|
+
const bOk = 0.0259040371 * l + 0.7827717662 * m - 0.8086757660 * s;
|
|
42
|
+
const C = Math.sqrt(a * a + bOk * bOk);
|
|
43
|
+
let h = Math.atan2(bOk, a) * (180 / Math.PI);
|
|
44
|
+
if (h < 0)
|
|
45
|
+
h += 360;
|
|
46
|
+
return `oklch(${L.toFixed(4)} ${C.toFixed(4)} ${h.toFixed(4)})`;
|
|
47
|
+
}
|
|
48
|
+
function generateThemeVars(primaryHex, accentHex) {
|
|
49
|
+
const primary = hexToOklch(primaryHex);
|
|
50
|
+
const accent = hexToOklch(accentHex);
|
|
51
|
+
if (!primary || !accent)
|
|
52
|
+
return null;
|
|
53
|
+
const parseOklch = (s) => {
|
|
54
|
+
const m = s.match(/oklch\(([\d.]+)\s+([\d.]+)\s+([\d.]+)\)/);
|
|
55
|
+
if (!m || !m[1] || !m[2] || !m[3])
|
|
56
|
+
return null;
|
|
57
|
+
return { l: parseFloat(m[1]), c: parseFloat(m[2]), h: parseFloat(m[3]) };
|
|
58
|
+
};
|
|
59
|
+
const p = parseOklch(primary);
|
|
60
|
+
if (!p)
|
|
61
|
+
return null;
|
|
62
|
+
const isDark = document.documentElement.classList.contains('dark');
|
|
63
|
+
const vars = {};
|
|
64
|
+
if (isDark) {
|
|
65
|
+
vars['--primary'] = `oklch(${(p.l + 0.05).toFixed(4)} ${p.c.toFixed(4)} ${p.h.toFixed(4)})`;
|
|
66
|
+
vars['--ring'] = vars['--primary'];
|
|
67
|
+
vars['--sidebar-primary'] = vars['--primary'];
|
|
68
|
+
vars['--sidebar-accent-foreground'] = vars['--primary'];
|
|
69
|
+
vars['--sidebar-ring'] = vars['--primary'];
|
|
70
|
+
vars['--chart-2'] = vars['--primary'];
|
|
71
|
+
vars['--secondary'] = `oklch(0.29 0.02 ${p.h.toFixed(4)})`;
|
|
72
|
+
vars['--muted'] = `oklch(0.29 0.02 ${p.h.toFixed(4)})`;
|
|
73
|
+
vars['--accent'] = `oklch(0.28 0.05 ${p.h.toFixed(4)})`;
|
|
74
|
+
vars['--accent-foreground'] = `oklch(0.80 0.10 ${p.h.toFixed(4)})`;
|
|
75
|
+
vars['--border'] = `oklch(0.33 0.02 ${p.h.toFixed(4)})`;
|
|
76
|
+
vars['--input'] = `oklch(0.33 0.02 ${p.h.toFixed(4)})`;
|
|
77
|
+
vars['--background'] = `oklch(0.22 0.01 ${p.h.toFixed(4)})`;
|
|
78
|
+
vars['--card'] = `oklch(0.24 0.01 ${p.h.toFixed(4)})`;
|
|
79
|
+
vars['--popover'] = `oklch(0.24 0.01 ${p.h.toFixed(4)})`;
|
|
80
|
+
vars['--sidebar'] = `oklch(0.20 0.01 ${p.h.toFixed(4)})`;
|
|
81
|
+
vars['--sidebar-accent'] = `oklch(0.29 0.02 ${p.h.toFixed(4)})`;
|
|
82
|
+
vars['--sidebar-border'] = `oklch(0.33 0.02 ${p.h.toFixed(4)})`;
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
vars['--primary'] = primary;
|
|
86
|
+
vars['--ring'] = `oklch(0 0 0)`;
|
|
87
|
+
vars['--sidebar-primary'] = `oklch(0 0 0)`;
|
|
88
|
+
vars['--chart-2'] = primary;
|
|
89
|
+
vars['--secondary'] = `oklch(0.9540 0.0063 ${p.h.toFixed(4)})`;
|
|
90
|
+
vars['--accent'] = `oklch(0.94 0.03 ${p.h.toFixed(4)})`;
|
|
91
|
+
vars['--accent-foreground'] = `oklch(0.5445 0.1903 ${p.h.toFixed(4)})`;
|
|
92
|
+
vars['--border'] = `oklch(0.9300 0.0094 ${p.h.toFixed(4)})`;
|
|
93
|
+
vars['--sidebar'] = `oklch(0.9777 0.0051 ${p.h.toFixed(4)})`;
|
|
94
|
+
}
|
|
95
|
+
return vars;
|
|
96
|
+
}
|
|
97
|
+
function applyThemeVars(vars) {
|
|
98
|
+
const root = document.documentElement;
|
|
99
|
+
for (const [key, value] of Object.entries(vars)) {
|
|
100
|
+
root.style.setProperty(key, value);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
export function applyBranding(data, defaults = FALLBACK_BRANDING) {
|
|
104
|
+
if (data.primary_color || data.accent_color) {
|
|
105
|
+
const vars = generateThemeVars(data.primary_color || defaults.primary_color, data.accent_color || defaults.accent_color);
|
|
106
|
+
if (vars)
|
|
107
|
+
applyThemeVars(vars);
|
|
108
|
+
}
|
|
109
|
+
if (data.platform_name) {
|
|
110
|
+
document.title = data.platform_name;
|
|
111
|
+
}
|
|
112
|
+
const root = document.documentElement;
|
|
113
|
+
if (data.primary_color) {
|
|
114
|
+
root.style.setProperty('--brand-primary', data.primary_color);
|
|
115
|
+
}
|
|
116
|
+
if (data.accent_color) {
|
|
117
|
+
root.style.setProperty('--brand-accent', data.accent_color);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
const STORAGE_KEY = 'platform-branding';
|
|
121
|
+
// Paint cached branding before React mounts so the initial frame matches the
|
|
122
|
+
// tenant theme. Safe to call on module import — guarded by try/catch and
|
|
123
|
+
// browser-only checks.
|
|
124
|
+
export function applyCachedBranding(storageKey = STORAGE_KEY) {
|
|
125
|
+
if (typeof window === 'undefined')
|
|
126
|
+
return;
|
|
127
|
+
try {
|
|
128
|
+
const cached = window.localStorage.getItem(storageKey);
|
|
129
|
+
if (cached)
|
|
130
|
+
applyBranding(JSON.parse(cached));
|
|
131
|
+
}
|
|
132
|
+
catch {
|
|
133
|
+
// ignore — corrupted JSON or quota errors aren't fatal
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
export function PlatformConfigProvider({ children, fetcher, defaults = FALLBACK_BRANDING, staleTime = 5 * 60 * 1000, storageKey = STORAGE_KEY, }) {
|
|
137
|
+
const queryClient = useQueryClient();
|
|
138
|
+
const { data: branding } = useQuery({
|
|
139
|
+
queryKey: ['platform-branding', storageKey],
|
|
140
|
+
queryFn: async () => {
|
|
141
|
+
const res = await fetcher();
|
|
142
|
+
return { ...defaults, ...res };
|
|
143
|
+
},
|
|
144
|
+
staleTime,
|
|
145
|
+
retry: 1,
|
|
146
|
+
});
|
|
147
|
+
const current = branding || defaults;
|
|
148
|
+
useEffect(() => {
|
|
149
|
+
if (branding) {
|
|
150
|
+
applyBranding(branding, defaults);
|
|
151
|
+
try {
|
|
152
|
+
window.localStorage.setItem(storageKey, JSON.stringify(branding));
|
|
153
|
+
}
|
|
154
|
+
catch {
|
|
155
|
+
// ignore quota errors
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}, [branding, defaults, storageKey]);
|
|
159
|
+
useEffect(() => {
|
|
160
|
+
const observer = new MutationObserver(() => {
|
|
161
|
+
if (current.primary_color)
|
|
162
|
+
applyBranding(current, defaults);
|
|
163
|
+
});
|
|
164
|
+
observer.observe(document.documentElement, {
|
|
165
|
+
attributes: true,
|
|
166
|
+
attributeFilter: ['class'],
|
|
167
|
+
});
|
|
168
|
+
return () => observer.disconnect();
|
|
169
|
+
}, [current, defaults]);
|
|
170
|
+
const refetch = () => {
|
|
171
|
+
queryClient.invalidateQueries({ queryKey: ['platform-branding', storageKey] });
|
|
172
|
+
};
|
|
173
|
+
return (_jsx(PlatformConfigContext, { value: { ...current, refetch }, children: children }));
|
|
174
|
+
}
|
|
175
|
+
export function usePlatformConfig() {
|
|
176
|
+
return useContext(PlatformConfigContext);
|
|
177
|
+
}
|
|
178
|
+
//# sourceMappingURL=platform-config-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"platform-config-provider.js","sourceRoot":"","sources":["../src/platform-config-provider.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@asteby/metacore-app-providers",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Providers genéricos reutilizables para apps metacore (direction, font, layout, search)",
|
|
3
|
+
"version": "0.3.0",
|
|
4
|
+
"description": "Providers genéricos reutilizables para apps metacore (direction, font, layout, search, platform-config)",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -23,11 +23,13 @@
|
|
|
23
23
|
},
|
|
24
24
|
"peerDependencies": {
|
|
25
25
|
"@radix-ui/react-direction": "^1.1.0",
|
|
26
|
+
"@tanstack/react-query": ">=5",
|
|
26
27
|
"react": ">=18",
|
|
27
28
|
"react-dom": ">=18"
|
|
28
29
|
},
|
|
29
30
|
"devDependencies": {
|
|
30
31
|
"@radix-ui/react-direction": "^1.1.1",
|
|
32
|
+
"@tanstack/react-query": "^5.59.0",
|
|
31
33
|
"@types/react": "^19.0.0",
|
|
32
34
|
"@types/react-dom": "^19.0.0",
|
|
33
35
|
"react": "^19.2.4",
|