@auto-engineer/generate-react-client 1.64.0 → 1.65.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/CHANGELOG.md +21 -0
- package/dist/starter/.storybook/main.ts +17 -22
- package/dist/starter/.storybook/manager-head.html +31 -31
- package/dist/starter/.storybook/manager.ts +133 -133
- package/dist/starter/.storybook/preview-head.html +12 -12
- package/dist/starter/.storybook/preview.tsx +79 -79
- package/dist/starter/biome.json +126 -0
- package/dist/starter/codegen.ts +11 -11
- package/dist/starter/components.json +27 -27
- package/dist/starter/package.json +86 -80
- package/dist/starter/public/mockServiceWorker.js +261 -261
- package/dist/starter/scripts/build-component-db.ts +17 -20
- package/dist/starter/src/App.tsx +15 -17
- package/dist/starter/src/components/ui/Accordion.stories.tsx +35 -35
- package/dist/starter/src/components/ui/Accordion.tsx +33 -33
- package/dist/starter/src/components/ui/Alert.stories.tsx +15 -15
- package/dist/starter/src/components/ui/Alert.tsx +32 -32
- package/dist/starter/src/components/ui/AlertDialog.stories.tsx +50 -50
- package/dist/starter/src/components/ui/AlertDialog.tsx +114 -115
- package/dist/starter/src/components/ui/AspectRatio.stories.tsx +20 -20
- package/dist/starter/src/components/ui/AspectRatio.tsx +1 -1
- package/dist/starter/src/components/ui/Avatar.stories.tsx +27 -27
- package/dist/starter/src/components/ui/Avatar.tsx +63 -63
- package/dist/starter/src/components/ui/Badge.stories.tsx +14 -14
- package/dist/starter/src/components/ui/Badge.tsx +27 -27
- package/dist/starter/src/components/ui/Breadcrumb.stories.tsx +38 -38
- package/dist/starter/src/components/ui/Breadcrumb.tsx +63 -62
- package/dist/starter/src/components/ui/Button.stories.tsx +55 -55
- package/dist/starter/src/components/ui/Button.tsx +49 -49
- package/dist/starter/src/components/ui/ButtonGroup.stories.tsx +17 -17
- package/dist/starter/src/components/ui/ButtonGroup.tsx +52 -53
- package/dist/starter/src/components/ui/Calendar.stories.tsx +20 -19
- package/dist/starter/src/components/ui/Calendar.tsx +142 -143
- package/dist/starter/src/components/ui/Card.stories.tsx +29 -29
- package/dist/starter/src/components/ui/Card.tsx +31 -31
- package/dist/starter/src/components/ui/Carousel.stories.tsx +41 -41
- package/dist/starter/src/components/ui/Carousel.tsx +171 -172
- package/dist/starter/src/components/ui/Chart.stories.tsx +21 -21
- package/dist/starter/src/components/ui/Chart.tsx +244 -247
- package/dist/starter/src/components/ui/Checkbox.stories.tsx +11 -11
- package/dist/starter/src/components/ui/Checkbox.tsx +18 -18
- package/dist/starter/src/components/ui/Collapsible.stories.tsx +40 -40
- package/dist/starter/src/components/ui/Collapsible.tsx +3 -3
- package/dist/starter/src/components/ui/Combobox.stories.tsx +48 -48
- package/dist/starter/src/components/ui/Combobox.tsx +204 -205
- package/dist/starter/src/components/ui/Command.stories.tsx +55 -55
- package/dist/starter/src/components/ui/Command.tsx +102 -103
- package/dist/starter/src/components/ui/ContextMenu.stories.tsx +52 -52
- package/dist/starter/src/components/ui/ContextMenu.tsx +151 -151
- package/dist/starter/src/components/ui/DesignSystem-Colors.stories.tsx +92 -92
- package/dist/starter/src/components/ui/DesignSystem-Layout.stories.tsx +139 -139
- package/dist/starter/src/components/ui/DesignSystem-Overview.stories.tsx +676 -657
- package/dist/starter/src/components/ui/DesignSystem-Typography.stories.tsx +59 -59
- package/dist/starter/src/components/ui/Dialog.stories.tsx +56 -56
- package/dist/starter/src/components/ui/Dialog.tsx +97 -98
- package/dist/starter/src/components/ui/Direction.stories.tsx +20 -20
- package/dist/starter/src/components/ui/Direction.tsx +7 -7
- package/dist/starter/src/components/ui/Drawer.stories.tsx +54 -54
- package/dist/starter/src/components/ui/Drawer.tsx +70 -70
- package/dist/starter/src/components/ui/DropdownMenu.stories.tsx +58 -58
- package/dist/starter/src/components/ui/DropdownMenu.tsx +157 -157
- package/dist/starter/src/components/ui/Empty.stories.tsx +22 -22
- package/dist/starter/src/components/ui/Empty.tsx +58 -58
- package/dist/starter/src/components/ui/Field.stories.tsx +31 -31
- package/dist/starter/src/components/ui/Field.tsx +180 -181
- package/dist/starter/src/components/ui/Form.stories.tsx +29 -29
- package/dist/starter/src/components/ui/Form.tsx +93 -96
- package/dist/starter/src/components/ui/HoverCard.stories.tsx +34 -34
- package/dist/starter/src/components/ui/HoverCard.tsx +21 -21
- package/dist/starter/src/components/ui/Input.stories.tsx +18 -18
- package/dist/starter/src/components/ui/Input.tsx +14 -14
- package/dist/starter/src/components/ui/InputGroup.stories.tsx +34 -34
- package/dist/starter/src/components/ui/InputGroup.tsx +110 -111
- package/dist/starter/src/components/ui/InputOTP.stories.tsx +28 -28
- package/dist/starter/src/components/ui/InputOTP.tsx +43 -43
- package/dist/starter/src/components/ui/Item.stories.tsx +45 -45
- package/dist/starter/src/components/ui/Item.tsx +113 -114
- package/dist/starter/src/components/ui/Kbd.stories.tsx +31 -31
- package/dist/starter/src/components/ui/Kbd.tsx +11 -11
- package/dist/starter/src/components/ui/Label.stories.tsx +62 -62
- package/dist/starter/src/components/ui/Label.tsx +26 -25
- package/dist/starter/src/components/ui/Menubar.stories.tsx +62 -62
- package/dist/starter/src/components/ui/Menubar.tsx +173 -173
- package/dist/starter/src/components/ui/NativeSelect.stories.tsx +26 -26
- package/dist/starter/src/components/ui/NativeSelect.tsx +29 -29
- package/dist/starter/src/components/ui/NavigationMenu.stories.tsx +64 -64
- package/dist/starter/src/components/ui/NavigationMenu.tsx +103 -103
- package/dist/starter/src/components/ui/Pagination.stories.tsx +61 -61
- package/dist/starter/src/components/ui/Pagination.tsx +69 -71
- package/dist/starter/src/components/ui/Popover.stories.tsx +38 -38
- package/dist/starter/src/components/ui/Popover.tsx +25 -25
- package/dist/starter/src/components/ui/Progress.stories.tsx +9 -9
- package/dist/starter/src/components/ui/Progress.tsx +14 -14
- package/dist/starter/src/components/ui/RadioGroup.stories.tsx +35 -35
- package/dist/starter/src/components/ui/RadioGroup.tsx +19 -19
- package/dist/starter/src/components/ui/Resizable.stories.tsx +54 -54
- package/dist/starter/src/components/ui/Resizable.tsx +29 -29
- package/dist/starter/src/components/ui/ScrollArea.stories.tsx +27 -27
- package/dist/starter/src/components/ui/ScrollArea.tsx +34 -34
- package/dist/starter/src/components/ui/Select.stories.tsx +43 -43
- package/dist/starter/src/components/ui/Select.tsx +120 -120
- package/dist/starter/src/components/ui/Separator.stories.tsx +27 -27
- package/dist/starter/src/components/ui/Separator.tsx +17 -17
- package/dist/starter/src/components/ui/Sheet.stories.tsx +53 -53
- package/dist/starter/src/components/ui/Sheet.tsx +69 -69
- package/dist/starter/src/components/ui/Sidebar.stories.tsx +77 -77
- package/dist/starter/src/components/ui/Sidebar.tsx +563 -564
- package/dist/starter/src/components/ui/Skeleton.stories.tsx +25 -25
- package/dist/starter/src/components/ui/Skeleton.tsx +1 -1
- package/dist/starter/src/components/ui/Slider.stories.tsx +5 -5
- package/dist/starter/src/components/ui/Slider.tsx +45 -44
- package/dist/starter/src/components/ui/Sonner.stories.tsx +32 -32
- package/dist/starter/src/components/ui/Sonner.tsx +23 -23
- package/dist/starter/src/components/ui/Spinner.stories.tsx +8 -8
- package/dist/starter/src/components/ui/Spinner.tsx +1 -1
- package/dist/starter/src/components/ui/Switch.stories.tsx +16 -17
- package/dist/starter/src/components/ui/Switch.tsx +24 -24
- package/dist/starter/src/components/ui/Table.stories.tsx +50 -50
- package/dist/starter/src/components/ui/Table.tsx +45 -45
- package/dist/starter/src/components/ui/Tabs.stories.tsx +39 -39
- package/dist/starter/src/components/ui/Tabs.tsx +47 -47
- package/dist/starter/src/components/ui/Textarea.stories.tsx +9 -9
- package/dist/starter/src/components/ui/Textarea.tsx +11 -11
- package/dist/starter/src/components/ui/Toast.stories.tsx +77 -77
- package/dist/starter/src/components/ui/Toast.tsx +75 -75
- package/dist/starter/src/components/ui/Toaster.tsx +17 -19
- package/dist/starter/src/components/ui/Toggle.stories.tsx +20 -20
- package/dist/starter/src/components/ui/Toggle.tsx +26 -26
- package/dist/starter/src/components/ui/ToggleGroup.stories.tsx +41 -41
- package/dist/starter/src/components/ui/ToggleGroup.tsx +61 -62
- package/dist/starter/src/components/ui/Tooltip.stories.tsx +26 -26
- package/dist/starter/src/components/ui/Tooltip.tsx +24 -24
- package/dist/starter/src/gql/execute.ts +1 -1
- package/dist/starter/src/gql/fragment-masking.ts +1 -1
- package/dist/starter/src/gql/graphql.ts +3 -0
- package/dist/starter/src/hooks/use-mobile.ts +11 -11
- package/dist/starter/src/hooks/use-toast.ts +135 -135
- package/dist/starter/src/index.css +105 -105
- package/dist/starter/src/lib/utils.ts +1 -1
- package/dist/starter/src/main.tsx +4 -1
- package/dist/starter/tsconfig.app.json +24 -24
- package/dist/starter/tsconfig.json +8 -8
- package/dist/starter/vite.config.ts +38 -37
- package/package.json +3 -3
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<style>
|
|
2
2
|
/* Immediate CSS-based dark mode detection - no JS needed for initial paint */
|
|
3
3
|
html, body {
|
|
4
|
-
transition: none
|
|
4
|
+
transition: none;
|
|
5
5
|
background-color: #FFFFFF;
|
|
6
6
|
color-scheme: light;
|
|
7
7
|
}
|
|
@@ -14,13 +14,13 @@
|
|
|
14
14
|
}
|
|
15
15
|
/* When .dark class is set by JS */
|
|
16
16
|
html.dark, html.dark body {
|
|
17
|
-
background-color: #1a1f2e
|
|
18
|
-
color-scheme: dark
|
|
17
|
+
background-color: #1a1f2e;
|
|
18
|
+
color-scheme: dark;
|
|
19
19
|
}
|
|
20
20
|
/* When .light class is set by JS (overrides prefers-color-scheme) */
|
|
21
21
|
html.light, html.light body {
|
|
22
|
-
background-color: #FFFFFF
|
|
23
|
-
color-scheme: light
|
|
22
|
+
background-color: #FFFFFF;
|
|
23
|
+
color-scheme: light;
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
/* Fix inner iframe loading states */
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
html.dark .sb-wrapper,
|
|
30
30
|
html.dark #storybook-root,
|
|
31
31
|
html.dark #storybook-docs {
|
|
32
|
-
background-color: #1a1f2e
|
|
33
|
-
color-scheme: dark
|
|
32
|
+
background-color: #1a1f2e;
|
|
33
|
+
color-scheme: dark;
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
/* Make spinner transparent in both light and dark mode */
|
|
@@ -38,18 +38,18 @@
|
|
|
38
38
|
.sb-loader *,
|
|
39
39
|
[class*="loader"],
|
|
40
40
|
[class*="loader"] * {
|
|
41
|
-
fill: transparent
|
|
42
|
-
background: transparent
|
|
43
|
-
background-color: transparent
|
|
41
|
+
fill: transparent;
|
|
42
|
+
background: transparent;
|
|
43
|
+
background-color: transparent;
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
/* Set dark background on all iframes in dark mode to reduce flash from external content */
|
|
47
47
|
html.dark iframe {
|
|
48
|
-
background-color: #1a1f2e
|
|
48
|
+
background-color: #1a1f2e;
|
|
49
49
|
}
|
|
50
50
|
</style>
|
|
51
51
|
<script>
|
|
52
|
-
(
|
|
52
|
+
(() => {
|
|
53
53
|
var isDark = false;
|
|
54
54
|
var stored, parsed, urlParams, urlTheme;
|
|
55
55
|
try {
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
+
import { DocsContainer } from '@storybook/addon-docs/blocks';
|
|
1
2
|
import type { Preview } from '@storybook/react-vite';
|
|
3
|
+
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
|
|
4
|
+
import { DARK_MODE_EVENT_NAME } from '@vueless/storybook-dark-mode';
|
|
5
|
+
import { initialize, mswLoader } from 'msw-storybook-addon';
|
|
2
6
|
import type { PropsWithChildren } from 'react';
|
|
3
7
|
import { useEffect, useState } from 'react';
|
|
4
8
|
import { addons } from 'storybook/preview-api';
|
|
5
9
|
import { themes } from 'storybook/theming';
|
|
6
|
-
import { DocsContainer } from '@storybook/addon-docs/blocks';
|
|
7
|
-
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
|
|
8
|
-
import { DARK_MODE_EVENT_NAME } from '@vueless/storybook-dark-mode';
|
|
9
|
-
import { initialize, mswLoader } from 'msw-storybook-addon';
|
|
10
10
|
import '../src/index.css';
|
|
11
11
|
|
|
12
12
|
initialize({
|
|
13
|
-
|
|
13
|
+
onUnhandledRequest: 'bypass',
|
|
14
14
|
});
|
|
15
15
|
|
|
16
16
|
// Apply theme to the preview iframe (for component styling and background)
|
|
17
17
|
const applyTheme = (isDark: boolean) => {
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
18
|
+
if (isDark) {
|
|
19
|
+
document.documentElement.classList.add('dark');
|
|
20
|
+
} else {
|
|
21
|
+
document.documentElement.classList.remove('dark');
|
|
22
|
+
}
|
|
23
|
+
// Update background color to match Storybook theme
|
|
24
|
+
document.documentElement.style.backgroundColor = isDark ? '#222325' : '#FFFFFF';
|
|
25
|
+
document.documentElement.style.colorScheme = isDark ? 'dark' : 'light';
|
|
26
26
|
};
|
|
27
27
|
|
|
28
28
|
// Get initial theme from URL parameter or localStorage
|
|
29
29
|
const urlParams = new URLSearchParams(window.location.search);
|
|
30
30
|
const urlTheme = urlParams.get('theme');
|
|
31
31
|
const getStoredDarkMode = (): boolean => {
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
32
|
+
try {
|
|
33
|
+
const stored = localStorage.getItem('sb-addon-themes-3');
|
|
34
|
+
if (stored) {
|
|
35
|
+
const parsed = JSON.parse(stored);
|
|
36
|
+
return parsed?.current === 'dark';
|
|
37
|
+
}
|
|
38
|
+
} catch {}
|
|
39
|
+
return false;
|
|
40
40
|
};
|
|
41
41
|
const initialIsDark = urlTheme ? urlTheme === 'dark' : getStoredDarkMode();
|
|
42
42
|
applyTheme(initialIsDark);
|
|
@@ -44,77 +44,77 @@ applyTheme(initialIsDark);
|
|
|
44
44
|
// Listen to dark mode addon changes and sync with our CSS class
|
|
45
45
|
const channel = addons.getChannel();
|
|
46
46
|
channel.on(DARK_MODE_EVENT_NAME, (isDark: boolean) => {
|
|
47
|
-
|
|
47
|
+
applyTheme(isDark);
|
|
48
48
|
});
|
|
49
49
|
|
|
50
50
|
const queryClient = new QueryClient({
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
51
|
+
defaultOptions: {
|
|
52
|
+
queries: {
|
|
53
|
+
retry: false,
|
|
54
|
+
},
|
|
55
|
+
},
|
|
56
56
|
});
|
|
57
57
|
|
|
58
58
|
// Themed docs container that responds to dark mode
|
|
59
59
|
function ThemedDocsContainer({
|
|
60
|
-
|
|
61
|
-
|
|
60
|
+
children,
|
|
61
|
+
context,
|
|
62
62
|
}: PropsWithChildren<{ context: Parameters<typeof DocsContainer>[0]['context'] }>) {
|
|
63
|
-
|
|
63
|
+
const [isDark, setIsDark] = useState(initialIsDark);
|
|
64
64
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
65
|
+
useEffect(() => {
|
|
66
|
+
const ch = addons.getChannel();
|
|
67
|
+
ch.on(DARK_MODE_EVENT_NAME, setIsDark);
|
|
68
|
+
return () => ch.off(DARK_MODE_EVENT_NAME, setIsDark);
|
|
69
|
+
}, []);
|
|
70
70
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
71
|
+
return (
|
|
72
|
+
<DocsContainer context={context} theme={isDark ? themes.dark : themes.light}>
|
|
73
|
+
{children}
|
|
74
|
+
</DocsContainer>
|
|
75
|
+
);
|
|
76
76
|
}
|
|
77
77
|
|
|
78
78
|
const preview: Preview = {
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
79
|
+
tags: ['autodocs'],
|
|
80
|
+
decorators: [
|
|
81
|
+
(Story) => (
|
|
82
|
+
<QueryClientProvider client={queryClient}>
|
|
83
|
+
<Story />
|
|
84
|
+
</QueryClientProvider>
|
|
85
|
+
),
|
|
86
|
+
],
|
|
87
|
+
parameters: {
|
|
88
|
+
controls: {
|
|
89
|
+
matchers: {
|
|
90
|
+
color: /(background|color)$/i,
|
|
91
|
+
date: /Date$/i,
|
|
92
|
+
},
|
|
93
|
+
},
|
|
94
|
+
viewport: {
|
|
95
|
+
defaultViewport: 'desktop',
|
|
96
|
+
},
|
|
97
|
+
layout: 'padded',
|
|
98
|
+
options: {
|
|
99
|
+
showPanel: false,
|
|
100
|
+
storySort: {
|
|
101
|
+
order: ['Design System', ['Overview', '*'], 'UI Components'],
|
|
102
|
+
},
|
|
103
|
+
},
|
|
104
|
+
darkMode: {
|
|
105
|
+
current: initialIsDark ? 'dark' : 'light',
|
|
106
|
+
stylePreview: true,
|
|
107
|
+
dark: themes.dark,
|
|
108
|
+
light: themes.light,
|
|
109
|
+
},
|
|
110
|
+
docs: {
|
|
111
|
+
container: ThemedDocsContainer,
|
|
112
|
+
},
|
|
113
|
+
},
|
|
114
|
+
initialGlobals: {
|
|
115
|
+
showPanel: false,
|
|
116
|
+
},
|
|
117
|
+
loaders: [mswLoader],
|
|
118
118
|
};
|
|
119
119
|
|
|
120
120
|
export default preview;
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://biomejs.dev/schemas/2.3.10/schema.json",
|
|
3
|
+
"vcs": {
|
|
4
|
+
"enabled": true,
|
|
5
|
+
"clientKind": "git",
|
|
6
|
+
"useIgnoreFile": true
|
|
7
|
+
},
|
|
8
|
+
"files": {
|
|
9
|
+
"ignoreUnknown": true
|
|
10
|
+
},
|
|
11
|
+
"formatter": {
|
|
12
|
+
"indentStyle": "tab",
|
|
13
|
+
"indentWidth": 2,
|
|
14
|
+
"lineWidth": 120,
|
|
15
|
+
"lineEnding": "lf"
|
|
16
|
+
},
|
|
17
|
+
"css": {
|
|
18
|
+
"parser": {
|
|
19
|
+
"tailwindDirectives": true
|
|
20
|
+
}
|
|
21
|
+
},
|
|
22
|
+
"javascript": {
|
|
23
|
+
"formatter": {
|
|
24
|
+
"quoteStyle": "single",
|
|
25
|
+
"trailingCommas": "all",
|
|
26
|
+
"semicolons": "always",
|
|
27
|
+
"arrowParentheses": "always",
|
|
28
|
+
"bracketSameLine": false,
|
|
29
|
+
"jsxQuoteStyle": "double"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
"linter": {
|
|
33
|
+
"rules": {
|
|
34
|
+
"recommended": true,
|
|
35
|
+
"a11y": {
|
|
36
|
+
"useSemanticElements": "off",
|
|
37
|
+
"noSvgWithoutTitle": "off"
|
|
38
|
+
},
|
|
39
|
+
"correctness": {
|
|
40
|
+
"noUnusedImports": "error",
|
|
41
|
+
"noUnusedVariables": "error"
|
|
42
|
+
},
|
|
43
|
+
"suspicious": {
|
|
44
|
+
"noExplicitAny": "error",
|
|
45
|
+
"noConsole": "warn",
|
|
46
|
+
"noEmptyBlockStatements": "error"
|
|
47
|
+
},
|
|
48
|
+
"style": {
|
|
49
|
+
"useConst": "error",
|
|
50
|
+
"noNonNullAssertion": "error",
|
|
51
|
+
"useImportType": "error",
|
|
52
|
+
"useExportType": "error",
|
|
53
|
+
"useNodejsImportProtocol": "error",
|
|
54
|
+
"noParameterAssign": "error",
|
|
55
|
+
"useEnumInitializers": "off"
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
"assist": {
|
|
60
|
+
"actions": {
|
|
61
|
+
"source": {
|
|
62
|
+
"organizeImports": "on"
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
"overrides": [
|
|
67
|
+
{
|
|
68
|
+
"includes": ["**/*.stories.tsx", "**/*.stories.ts"],
|
|
69
|
+
"linter": {
|
|
70
|
+
"rules": {
|
|
71
|
+
"a11y": {
|
|
72
|
+
"useButtonType": "off",
|
|
73
|
+
"useValidAnchor": "off"
|
|
74
|
+
},
|
|
75
|
+
"suspicious": {
|
|
76
|
+
"noConsole": "off",
|
|
77
|
+
"noEmptyBlockStatements": "off",
|
|
78
|
+
"noArrayIndexKey": "off"
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
"includes": ["scripts/**"],
|
|
85
|
+
"linter": {
|
|
86
|
+
"rules": {
|
|
87
|
+
"suspicious": {
|
|
88
|
+
"noConsole": "off"
|
|
89
|
+
},
|
|
90
|
+
"style": {
|
|
91
|
+
"noNonNullAssertion": "off"
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
"includes": [".storybook/*.ts", ".storybook/*.tsx"],
|
|
98
|
+
"linter": {
|
|
99
|
+
"rules": {
|
|
100
|
+
"suspicious": {
|
|
101
|
+
"noEmptyBlockStatements": "off",
|
|
102
|
+
"noConsole": "off"
|
|
103
|
+
},
|
|
104
|
+
"style": {
|
|
105
|
+
"noNonNullAssertion": "off"
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
"includes": [".storybook/*.html"],
|
|
112
|
+
"linter": {
|
|
113
|
+
"enabled": false
|
|
114
|
+
}
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"includes": ["src/gql/**"],
|
|
118
|
+
"linter": {
|
|
119
|
+
"enabled": false
|
|
120
|
+
},
|
|
121
|
+
"formatter": {
|
|
122
|
+
"enabled": false
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
]
|
|
126
|
+
}
|
package/dist/starter/codegen.ts
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import type { CodegenConfig } from '@graphql-codegen/cli';
|
|
2
2
|
|
|
3
3
|
const config: CodegenConfig = {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
4
|
+
schema: '../.context/schema.graphql',
|
|
5
|
+
documents: ['src/graphql/**/*.ts'],
|
|
6
|
+
ignoreNoDocuments: true,
|
|
7
|
+
generates: {
|
|
8
|
+
'./src/gql/': {
|
|
9
|
+
preset: 'client',
|
|
10
|
+
config: {
|
|
11
|
+
documentMode: 'string',
|
|
12
|
+
},
|
|
13
|
+
},
|
|
14
|
+
},
|
|
15
15
|
};
|
|
16
16
|
|
|
17
17
|
export default config;
|
|
@@ -1,29 +1,29 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
2
|
+
"$schema": "https://ui.shadcn.com/schema.json",
|
|
3
|
+
"style": "new-york",
|
|
4
|
+
"rsc": false,
|
|
5
|
+
"tsx": true,
|
|
6
|
+
"tailwind": {
|
|
7
|
+
"config": "",
|
|
8
|
+
"css": "src/index.css",
|
|
9
|
+
"baseColor": "neutral",
|
|
10
|
+
"cssVariables": true,
|
|
11
|
+
"prefix": ""
|
|
12
|
+
},
|
|
13
|
+
"aliases": {
|
|
14
|
+
"components": "@/components",
|
|
15
|
+
"utils": "@/lib/utils",
|
|
16
|
+
"ui": "@/components/ui",
|
|
17
|
+
"lib": "@/lib",
|
|
18
|
+
"hooks": "@/hooks"
|
|
19
|
+
},
|
|
20
|
+
"iconLibrary": "lucide",
|
|
21
|
+
"registries": {
|
|
22
|
+
"@shadcraft": {
|
|
23
|
+
"url": "https://registry-shadcraft.vercel.app/r/{name}",
|
|
24
|
+
"headers": {
|
|
25
|
+
"X-License-Key": "${SHADCRAFT_LICENSE_KEY}"
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
29
|
}
|
|
@@ -1,82 +1,88 @@
|
|
|
1
1
|
{
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
2
|
+
"name": "react-client",
|
|
3
|
+
"private": true,
|
|
4
|
+
"version": "0.0.0",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"scripts": {
|
|
7
|
+
"dev": "vite",
|
|
8
|
+
"build": "tsc -b && vite build",
|
|
9
|
+
"test": "vitest run",
|
|
10
|
+
"test:watch": "vitest",
|
|
11
|
+
"test:ui": "vitest --ui",
|
|
12
|
+
"test:coverage": "vitest run --coverage",
|
|
13
|
+
"preview": "vite preview",
|
|
14
|
+
"type-check": "tsc --noEmit -p tsconfig.app.json",
|
|
15
|
+
"lint": "biome check .",
|
|
16
|
+
"lint:fix": "biome check --write .",
|
|
17
|
+
"format": "biome format .",
|
|
18
|
+
"format:fix": "biome format --write .",
|
|
19
|
+
"check": "biome check --write .",
|
|
20
|
+
"storybook": "storybook dev -p 6006",
|
|
21
|
+
"storybook:fast": "STORYBOOK_FAST=1 storybook dev -p 6006",
|
|
22
|
+
"build-storybook": "storybook build",
|
|
23
|
+
"codegen": "graphql-codegen",
|
|
24
|
+
"codegen:watch": "graphql-codegen --watch",
|
|
25
|
+
"build:component-db": "tsx scripts/build-component-db.ts"
|
|
26
|
+
},
|
|
27
|
+
"dependencies": {
|
|
28
|
+
"@base-ui/react": "^1.1.0",
|
|
29
|
+
"@hookform/resolvers": "^5.2.2",
|
|
30
|
+
"@tanstack/react-query": "^5.90.19",
|
|
31
|
+
"class-variance-authority": "^0.7.1",
|
|
32
|
+
"clsx": "^2.1.1",
|
|
33
|
+
"cmdk": "^1.1.1",
|
|
34
|
+
"date-fns": "^4.1.0",
|
|
35
|
+
"embla-carousel-react": "^8.6.0",
|
|
36
|
+
"graphql-request": "^7.4.0",
|
|
37
|
+
"input-otp": "^1.4.2",
|
|
38
|
+
"lucide-react": "^0.539.0",
|
|
39
|
+
"next-themes": "^0.4.6",
|
|
40
|
+
"radix-ui": "^1.4.3",
|
|
41
|
+
"react": "^19.0.0",
|
|
42
|
+
"react-day-picker": "^9.13.0",
|
|
43
|
+
"react-dom": "^19.0.0",
|
|
44
|
+
"react-hook-form": "^7.71.1",
|
|
45
|
+
"react-resizable-panels": "^4.6.1",
|
|
46
|
+
"react-router-dom": "^7.13.0",
|
|
47
|
+
"recharts": "2.15.4",
|
|
48
|
+
"sonner": "^2.0.7",
|
|
49
|
+
"tailwind-merge": "^3.3.1",
|
|
50
|
+
"vaul": "^1.1.2",
|
|
51
|
+
"zod": "^4.3.6"
|
|
52
|
+
},
|
|
53
|
+
"devDependencies": {
|
|
54
|
+
"@biomejs/biome": "^2.3.10",
|
|
55
|
+
"@graphql-codegen/cli": "^6.1.1",
|
|
56
|
+
"@graphql-codegen/client-preset": "^5.2.2",
|
|
57
|
+
"@parcel/watcher": "^2.5.6",
|
|
58
|
+
"@storybook/addon-docs": "^10.2.8",
|
|
59
|
+
"@storybook/addon-mcp": "^0.2.2",
|
|
60
|
+
"@storybook/react-vite": "^10.2.8",
|
|
61
|
+
"@tailwindcss/vite": "^4.1.16",
|
|
62
|
+
"@testing-library/jest-dom": "^6.6.3",
|
|
63
|
+
"@testing-library/react": "^16.3.0",
|
|
64
|
+
"@testing-library/user-event": "^14.6.1",
|
|
65
|
+
"@types/react": "^19.2.7",
|
|
66
|
+
"@types/react-dom": "^19.2.3",
|
|
67
|
+
"@vitejs/plugin-react-swc": "^4.2.2",
|
|
68
|
+
"@vitest/coverage-v8": "^3.2.1",
|
|
69
|
+
"@vitest/ui": "^3.2.1",
|
|
70
|
+
"@vueless/storybook-dark-mode": "^10.0.7",
|
|
71
|
+
"graphql": "^16.12.0",
|
|
72
|
+
"happy-dom": "^18.0.1",
|
|
73
|
+
"jsdom": "^26.1.0",
|
|
74
|
+
"msw": "^2.12.10",
|
|
75
|
+
"msw-storybook-addon": "^2.0.6",
|
|
76
|
+
"storybook": "^10.2.8",
|
|
77
|
+
"tailwindcss": "^4.1.16",
|
|
78
|
+
"tw-animate-css": "^1.3.7",
|
|
79
|
+
"typescript": "^5.9.3",
|
|
80
|
+
"vite": "^7.3.0",
|
|
81
|
+
"vitest": "^3.2.1"
|
|
82
|
+
},
|
|
83
|
+
"msw": {
|
|
84
|
+
"workerDirectory": [
|
|
85
|
+
"public"
|
|
86
|
+
]
|
|
87
|
+
}
|
|
82
88
|
}
|