trix-ui 0.2.13 → 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/commands/add/analysis.d.ts +4 -4
- package/dist/commands/add/analysis.js +56 -56
- package/dist/commands/add/command.d.ts +2 -2
- package/dist/commands/add/command.js +205 -202
- package/dist/commands/add/command.js.map +1 -1
- package/dist/commands/add/config.d.ts +2 -2
- package/dist/commands/add/config.js +11 -11
- package/dist/commands/add/install.d.ts +27 -27
- package/dist/commands/add/install.js +80 -80
- package/dist/commands/add/package-manager.d.ts +1 -1
- package/dist/commands/add/package-manager.js +4 -4
- package/dist/commands/add/project-files.d.ts +2 -2
- package/dist/commands/add/project-files.js +17 -17
- package/dist/commands/add/prompts.d.ts +3 -3
- package/dist/commands/add/prompts.js +28 -28
- package/dist/commands/add/registry.d.ts +4 -4
- package/dist/commands/add/registry.js +6 -6
- package/dist/commands/add/types.d.ts +33 -33
- package/dist/commands/add/types.js +1 -1
- package/dist/commands/add/ui.d.ts +4 -4
- package/dist/commands/add/ui.js +55 -55
- package/dist/commands/add/validation.d.ts +3 -3
- package/dist/commands/add/validation.js +30 -30
- package/dist/commands/add-collection.d.ts +1 -1
- package/dist/commands/add-collection.js +1 -1
- package/dist/commands/add-composite.d.ts +2 -2
- package/dist/commands/add-composite.js +205 -201
- package/dist/commands/add-composite.js.map +1 -1
- package/dist/commands/add-section.d.ts +2 -2
- package/dist/commands/add-section.js +205 -201
- package/dist/commands/add-section.js.map +1 -1
- package/dist/commands/add-wrapper.d.ts +2 -2
- package/dist/commands/add-wrapper.js +205 -201
- package/dist/commands/add-wrapper.js.map +1 -1
- package/dist/commands/add.d.ts +1 -1
- package/dist/commands/add.js +1 -1
- package/dist/commands/build.d.ts +2 -2
- package/dist/commands/build.js +104 -104
- package/dist/commands/build.js.map +1 -1
- package/dist/commands/doctor.d.ts +2 -2
- package/dist/commands/doctor.js +67 -67
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/init/command.d.ts +8 -2
- package/dist/commands/init/command.js +186 -114
- package/dist/commands/init/command.js.map +1 -1
- package/dist/commands/init/config.d.ts +9 -2
- package/dist/commands/init/config.js +45 -25
- package/dist/commands/init/config.js.map +1 -1
- package/dist/commands/init/constants.d.ts +3 -3
- package/dist/commands/init/constants.js +105 -105
- package/dist/commands/init/dependencies.d.ts +22 -5
- package/dist/commands/init/dependencies.js +86 -52
- package/dist/commands/init/dependencies.js.map +1 -1
- package/dist/commands/init/filesystem.d.ts +7 -1
- package/dist/commands/init/filesystem.js +16 -10
- package/dist/commands/init/filesystem.js.map +1 -1
- package/dist/commands/init/lockfile.d.ts +1 -1
- package/dist/commands/init/lockfile.js +1 -1
- package/dist/commands/init/package-json.d.ts +17 -6
- package/dist/commands/init/package-json.js +28 -18
- package/dist/commands/init/package-json.js.map +1 -1
- package/dist/commands/init/project.d.ts +15 -3
- package/dist/commands/init/project.js +120 -97
- package/dist/commands/init/project.js.map +1 -1
- package/dist/commands/init/tailwind.d.ts +14 -3
- package/dist/commands/init/tailwind.js +141 -33
- package/dist/commands/init/tailwind.js.map +1 -1
- package/dist/commands/init/templates.d.ts +15 -3
- package/dist/commands/init/templates.js +27 -15
- package/dist/commands/init/templates.js.map +1 -1
- package/dist/commands/init/tsconfig.d.ts +14 -2
- package/dist/commands/init/tsconfig.js +561 -273
- package/dist/commands/init/tsconfig.js.map +1 -1
- package/dist/commands/init/types.d.ts +34 -33
- package/dist/commands/init/types.js +1 -1
- package/dist/commands/init/ui.d.ts +12 -3
- package/dist/commands/init/ui.js +45 -33
- package/dist/commands/init/ui.js.map +1 -1
- package/dist/commands/init/vite.d.ts +1 -1
- package/dist/commands/init/vite.js +17 -27
- package/dist/commands/init/vite.js.map +1 -1
- package/dist/commands/init.d.ts +1 -1
- package/dist/commands/init.js +1 -1
- package/dist/commands/list.d.ts +2 -2
- package/dist/commands/list.js +69 -62
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/remove.d.ts +2 -2
- package/dist/commands/remove.js +95 -93
- package/dist/commands/remove.js.map +1 -1
- package/dist/commands/shared/add-collection.d.ts +50 -50
- package/dist/commands/shared/add-collection.js +206 -206
- package/dist/commands/shared/list-entries.d.ts +6 -6
- package/dist/commands/shared/list-entries.js +12 -12
- package/dist/commands/shared/name-utils.d.ts +1 -1
- package/dist/commands/shared/name-utils.js +13 -13
- package/dist/commands/shared/remove-entries.d.ts +16 -16
- package/dist/commands/shared/remove-entries.js +41 -41
- package/dist/icons/index.d.ts +1 -1
- package/dist/icons/index.js +1 -1
- package/dist/icons/libraries.d.ts +37 -37
- package/dist/icons/libraries.js +34 -34
- package/dist/index.d.ts +1 -2
- package/dist/index.js +29 -30
- package/dist/index.js.map +1 -1
- package/dist/lib/config.d.ts +45 -45
- package/dist/lib/config.js +97 -97
- package/dist/lib/fs.d.ts +82 -76
- package/dist/lib/fs.js +299 -302
- package/dist/lib/fs.js.map +1 -1
- package/dist/lib/highlighter.d.ts +6 -6
- package/dist/lib/highlighter.js +7 -7
- package/dist/lib/install.d.ts +19 -19
- package/dist/lib/install.js +101 -55
- package/dist/lib/install.js.map +1 -1
- package/dist/lib/lockfile.d.ts +63 -63
- package/dist/lib/lockfile.js +179 -173
- package/dist/lib/lockfile.js.map +1 -1
- package/dist/lib/logger.d.ts +8 -8
- package/dist/lib/logger.js +41 -41
- package/dist/lib/logger.js.map +1 -1
- package/dist/lib/paths.d.ts +14 -14
- package/dist/lib/paths.js +41 -31
- package/dist/lib/paths.js.map +1 -1
- package/dist/lib/registry.d.ts +35 -35
- package/dist/lib/registry.js +180 -180
- package/dist/schema/index.d.ts +1128 -1128
- package/dist/schema/index.js +237 -238
- package/dist/schema/index.js.map +1 -1
- package/dist/styles/create-style-map.d.ts +4 -4
- package/dist/styles/create-style-map.js +68 -68
- package/dist/styles/transform-style-map.d.ts +3 -3
- package/dist/styles/transform-style-map.js +428 -428
- package/dist/styles/transform.d.ts +10 -10
- package/dist/styles/transform.js +15 -15
- package/dist/utils/index.d.ts +6 -6
- package/dist/utils/index.js +5 -5
- package/dist/utils/transformers/transform-icons.d.ts +2 -2
- package/dist/utils/transformers/transform-icons.js +164 -164
- package/dist/utils/transformers/transform-menu.d.ts +2 -2
- package/dist/utils/transformers/transform-menu.js +39 -39
- package/dist/utils/transformers/transform-render.d.ts +2 -2
- package/dist/utils/transformers/transform-render.js +97 -97
- package/dist/utils/transformers/types.d.ts +14 -14
- package/dist/utils/transformers/types.js +1 -1
- package/package.json +3 -2
- package/dist/__tests__/contracts/registry.test.d.ts +0 -1
- package/dist/__tests__/contracts/registry.test.js +0 -42
- package/dist/__tests__/contracts/registry.test.js.map +0 -1
- package/dist/__tests__/e2e/cli.test.d.ts +0 -1
- package/dist/__tests__/e2e/cli.test.js +0 -67
- package/dist/__tests__/e2e/cli.test.js.map +0 -1
- package/dist/__tests__/helpers/fs.d.ts +0 -5
- package/dist/__tests__/helpers/fs.js +0 -26
- package/dist/__tests__/helpers/fs.js.map +0 -1
- package/dist/__tests__/integration/commands.integration.test.d.ts +0 -1
- package/dist/__tests__/integration/commands.integration.test.js +0 -184
- package/dist/__tests__/integration/commands.integration.test.js.map +0 -1
- package/dist/commands/__tests__/add-composite.test.d.ts +0 -2
- package/dist/commands/__tests__/add-composite.test.js +0 -171
- package/dist/commands/__tests__/add-composite.test.js.map +0 -1
- package/dist/commands/__tests__/add-entry.mocks.d.ts +0 -23
- package/dist/commands/__tests__/add-entry.mocks.js +0 -64
- package/dist/commands/__tests__/add-entry.mocks.js.map +0 -1
- package/dist/commands/__tests__/add-section.test.d.ts +0 -2
- package/dist/commands/__tests__/add-section.test.js +0 -191
- package/dist/commands/__tests__/add-section.test.js.map +0 -1
- package/dist/commands/__tests__/add-wrapper.test.d.ts +0 -2
- package/dist/commands/__tests__/add-wrapper.test.js +0 -171
- package/dist/commands/__tests__/add-wrapper.test.js.map +0 -1
- package/dist/commands/__tests__/cli-mocks.d.ts +0 -1
- package/dist/commands/__tests__/cli-mocks.js +0 -24
- package/dist/commands/__tests__/cli-mocks.js.map +0 -1
- package/dist/commands/__tests__/doctor.mocks.d.ts +0 -6
- package/dist/commands/__tests__/doctor.mocks.js +0 -20
- package/dist/commands/__tests__/doctor.mocks.js.map +0 -1
- package/dist/commands/__tests__/doctor.test.d.ts +0 -2
- package/dist/commands/__tests__/doctor.test.js +0 -80
- package/dist/commands/__tests__/doctor.test.js.map +0 -1
- package/dist/commands/__tests__/list.mocks.d.ts +0 -8
- package/dist/commands/__tests__/list.mocks.js +0 -20
- package/dist/commands/__tests__/list.mocks.js.map +0 -1
- package/dist/commands/__tests__/list.test.d.ts +0 -2
- package/dist/commands/__tests__/list.test.js +0 -60
- package/dist/commands/__tests__/list.test.js.map +0 -1
- package/dist/commands/__tests__/remove.mocks.d.ts +0 -9
- package/dist/commands/__tests__/remove.mocks.js +0 -26
- package/dist/commands/__tests__/remove.mocks.js.map +0 -1
- package/dist/commands/__tests__/remove.test.d.ts +0 -2
- package/dist/commands/__tests__/remove.test.js +0 -116
- package/dist/commands/__tests__/remove.test.js.map +0 -1
- package/dist/commands/add/__tests__/__mocks__/cli-mocks.d.ts +0 -1
- package/dist/commands/add/__tests__/__mocks__/cli-mocks.js +0 -21
- package/dist/commands/add/__tests__/__mocks__/cli-mocks.js.map +0 -1
- package/dist/commands/add/__tests__/add.mocks.d.ts +0 -19
- package/dist/commands/add/__tests__/add.mocks.js +0 -60
- package/dist/commands/add/__tests__/add.mocks.js.map +0 -1
- package/dist/commands/add/__tests__/add.test.d.ts +0 -2
- package/dist/commands/add/__tests__/add.test.js +0 -141
- package/dist/commands/add/__tests__/add.test.js.map +0 -1
- package/dist/commands/init/__tests__/init.mocks.d.ts +0 -24
- package/dist/commands/init/__tests__/init.mocks.js +0 -84
- package/dist/commands/init/__tests__/init.mocks.js.map +0 -1
- package/dist/commands/init/__tests__/init.test.d.ts +0 -2
- package/dist/commands/init/__tests__/init.test.js +0 -283
- package/dist/commands/init/__tests__/init.test.js.map +0 -1
- package/dist/commands/init/__tests__/tailwind.test.d.ts +0 -1
- package/dist/commands/init/__tests__/tailwind.test.js +0 -56
- package/dist/commands/init/__tests__/tailwind.test.js.map +0 -1
- package/dist/commands/init/__tests__/tsconfig.test.d.ts +0 -1
- package/dist/commands/init/__tests__/tsconfig.test.js +0 -108
- package/dist/commands/init/__tests__/tsconfig.test.js.map +0 -1
- package/dist/commands/init/__tests__/vite.test.d.ts +0 -1
- package/dist/commands/init/__tests__/vite.test.js +0 -66
- package/dist/commands/init/__tests__/vite.test.js.map +0 -1
- package/dist/commands/list-sections.d.ts +0 -2
- package/dist/commands/list-sections.js +0 -20
- package/dist/commands/list-sections.js.map +0 -1
- package/dist/commands/list-wrappers.d.ts +0 -2
- package/dist/commands/list-wrappers.js +0 -20
- package/dist/commands/list-wrappers.js.map +0 -1
- package/dist/commands/remove-section.d.ts +0 -2
- package/dist/commands/remove-section.js +0 -37
- package/dist/commands/remove-section.js.map +0 -1
- package/dist/commands/remove-wrapper.d.ts +0 -2
- package/dist/commands/remove-wrapper.js +0 -37
- package/dist/commands/remove-wrapper.js.map +0 -1
- package/dist/lib/__tests__/config.test.d.ts +0 -1
- package/dist/lib/__tests__/config.test.js +0 -49
- package/dist/lib/__tests__/config.test.js.map +0 -1
- package/dist/lib/__tests__/install.test.d.ts +0 -1
- package/dist/lib/__tests__/install.test.js +0 -149
- package/dist/lib/__tests__/install.test.js.map +0 -1
- package/dist/lib/__tests__/lockfile.test.d.ts +0 -1
- package/dist/lib/__tests__/lockfile.test.js +0 -89
- package/dist/lib/__tests__/lockfile.test.js.map +0 -1
- package/dist/lib/__tests__/paths.test.d.ts +0 -1
- package/dist/lib/__tests__/paths.test.js +0 -39
- package/dist/lib/__tests__/paths.test.js.map +0 -1
- package/dist/lib/__tests__/registry.test.d.ts +0 -1
- package/dist/lib/__tests__/registry.test.js +0 -76
- package/dist/lib/__tests__/registry.test.js.map +0 -1
|
@@ -1,106 +1,106 @@
|
|
|
1
|
-
export const TAILWIND_CONTENT_PATHS = {
|
|
2
|
-
next: [
|
|
3
|
-
"./app/**/*.{js,ts,jsx,tsx,mdx}",
|
|
4
|
-
"./pages/**/*.{js,ts,jsx,tsx,mdx}",
|
|
5
|
-
"./components/**/*.{js,ts,jsx,tsx,mdx}",
|
|
6
|
-
"./src/**/*.{js,ts,jsx,tsx,mdx}"
|
|
7
|
-
],
|
|
8
|
-
react: ["./src/**/*.{js,ts,jsx,tsx}", "./index.html"],
|
|
9
|
-
vite: ["./src/**/*.{js,ts,jsx,tsx}", "./index.html"],
|
|
10
|
-
unknown: ["./src/**/*.{js,ts,jsx,tsx}", "./index.html"]
|
|
11
|
-
};
|
|
12
|
-
export const BASE_CSS_VARS = `@import "tailwindcss";
|
|
13
|
-
|
|
14
|
-
@custom-variant dark (&:is(.dark *));
|
|
15
|
-
|
|
16
|
-
@theme inline {
|
|
17
|
-
--color-background: var(--background);
|
|
18
|
-
--color-foreground: var(--foreground);
|
|
19
|
-
--font-sans: var(--font-geist-sans);
|
|
20
|
-
--font-mono: var(--font-geist-mono);
|
|
21
|
-
--color-sidebar-ring: var(--sidebar-ring);
|
|
22
|
-
--color-sidebar-border: var(--sidebar-border);
|
|
23
|
-
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
|
|
24
|
-
--color-sidebar-accent: var(--sidebar-accent);
|
|
25
|
-
--color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
|
|
26
|
-
--color-sidebar-primary: var(--sidebar-primary);
|
|
27
|
-
--color-sidebar-foreground: var(--sidebar-foreground);
|
|
28
|
-
--color-sidebar: var(--sidebar);
|
|
29
|
-
--color-ring: var(--ring);
|
|
30
|
-
--color-input: var(--input);
|
|
31
|
-
--color-border: var(--border);
|
|
32
|
-
--color-destructive: var(--destructive);
|
|
33
|
-
--color-accent-foreground: var(--accent-foreground);
|
|
34
|
-
--color-accent: var(--accent);
|
|
35
|
-
--color-muted-foreground: var(--muted-foreground);
|
|
36
|
-
--color-muted: var(--muted);
|
|
37
|
-
--color-secondary-foreground: var(--secondary-foreground);
|
|
38
|
-
--color-secondary: var(--secondary);
|
|
39
|
-
--color-primary-foreground: var(--primary-foreground);
|
|
40
|
-
--color-primary: var(--primary);
|
|
41
|
-
--color-popover-foreground: var(--popover-foreground);
|
|
42
|
-
--color-popover: var(--popover);
|
|
43
|
-
--color-card-foreground: var(--card-foreground);
|
|
44
|
-
--color-card: var(--card);
|
|
45
|
-
--radius-sm: calc(var(--radius) - 4px);
|
|
46
|
-
--radius-md: calc(var(--radius) - 2px);
|
|
47
|
-
--radius-lg: var(--radius);
|
|
48
|
-
--radius-xl: calc(var(--radius) + 4px);
|
|
49
|
-
--radius-2xl: calc(var(--radius) + 8px);
|
|
50
|
-
--radius-3xl: calc(var(--radius) + 12px);
|
|
51
|
-
--radius-4xl: calc(var(--radius) + 16px);
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
:root {
|
|
55
|
-
--radius: 0.625rem;
|
|
56
|
-
--background: oklch(1 0 0);
|
|
57
|
-
--foreground: oklch(0.145 0 0);
|
|
58
|
-
--card: oklch(1 0 0);
|
|
59
|
-
--card-foreground: oklch(0.145 0 0);
|
|
60
|
-
--popover: oklch(1 0 0);
|
|
61
|
-
--popover-foreground: oklch(0.145 0 0);
|
|
62
|
-
--primary: oklch(54.61% 0.215 262.88);
|
|
63
|
-
--primary-foreground: oklch(0.985 0 0);
|
|
64
|
-
--secondary: oklch(0.97 0 0);
|
|
65
|
-
--secondary-foreground: oklch(0.205 0 0);
|
|
66
|
-
--muted: oklch(0.97 0 0);
|
|
67
|
-
--muted-foreground: oklch(0.556 0 0);
|
|
68
|
-
--accent: oklch(0.97 0 0);
|
|
69
|
-
--accent-foreground: oklch(0.205 0 0);
|
|
70
|
-
--destructive: oklch(0.577 0.245 27.325);
|
|
71
|
-
--border: oklch(0.922 0 0);
|
|
72
|
-
--input: oklch(0.922 0 0);
|
|
73
|
-
--ring: oklch(0.708 0 0);
|
|
74
|
-
}
|
|
75
|
-
|
|
76
|
-
.dark {
|
|
77
|
-
--background: oklch(0.145 0 0);
|
|
78
|
-
--foreground: oklch(0.985 0 0);
|
|
79
|
-
--card: oklch(0.205 0 0);
|
|
80
|
-
--card-foreground: oklch(0.985 0 0);
|
|
81
|
-
--popover: oklch(0.205 0 0);
|
|
82
|
-
--popover-foreground: oklch(0.985 0 0);
|
|
83
|
-
--primary: oklch(54.61% 0.215 262.88);
|
|
84
|
-
--primary-foreground: oklch(0.205 0 0);
|
|
85
|
-
--secondary: oklch(0.269 0 0);
|
|
86
|
-
--secondary-foreground: oklch(0.985 0 0);
|
|
87
|
-
--muted: oklch(0.269 0 0);
|
|
88
|
-
--muted-foreground: oklch(0.708 0 0);
|
|
89
|
-
--accent: oklch(0.269 0 0);
|
|
90
|
-
--accent-foreground: oklch(0.985 0 0);
|
|
91
|
-
--destructive: oklch(0.704 0.191 22.216);
|
|
92
|
-
--border: oklch(1 0 0 / 10%);
|
|
93
|
-
--input: oklch(1 0 0 / 15%);
|
|
94
|
-
--ring: oklch(0.556 0 0);
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
@layer base {
|
|
98
|
-
* {
|
|
99
|
-
@apply border-border outline-ring/50;
|
|
100
|
-
}
|
|
101
|
-
body {
|
|
102
|
-
@apply bg-background text-foreground;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
`;
|
|
1
|
+
export const TAILWIND_CONTENT_PATHS = {
|
|
2
|
+
next: [
|
|
3
|
+
"./app/**/*.{js,ts,jsx,tsx,mdx}",
|
|
4
|
+
"./pages/**/*.{js,ts,jsx,tsx,mdx}",
|
|
5
|
+
"./components/**/*.{js,ts,jsx,tsx,mdx}",
|
|
6
|
+
"./src/**/*.{js,ts,jsx,tsx,mdx}"
|
|
7
|
+
],
|
|
8
|
+
react: ["./src/**/*.{js,ts,jsx,tsx}", "./index.html"],
|
|
9
|
+
vite: ["./src/**/*.{js,ts,jsx,tsx}", "./index.html"],
|
|
10
|
+
unknown: ["./src/**/*.{js,ts,jsx,tsx}", "./index.html"]
|
|
11
|
+
};
|
|
12
|
+
export const BASE_CSS_VARS = `@import "tailwindcss";
|
|
13
|
+
|
|
14
|
+
@custom-variant dark (&:is(.dark *));
|
|
15
|
+
|
|
16
|
+
@theme inline {
|
|
17
|
+
--color-background: var(--background);
|
|
18
|
+
--color-foreground: var(--foreground);
|
|
19
|
+
--font-sans: var(--font-geist-sans);
|
|
20
|
+
--font-mono: var(--font-geist-mono);
|
|
21
|
+
--color-sidebar-ring: var(--sidebar-ring);
|
|
22
|
+
--color-sidebar-border: var(--sidebar-border);
|
|
23
|
+
--color-sidebar-accent-foreground: var(--sidebar-accent-foreground);
|
|
24
|
+
--color-sidebar-accent: var(--sidebar-accent);
|
|
25
|
+
--color-sidebar-primary-foreground: var(--sidebar-primary-foreground);
|
|
26
|
+
--color-sidebar-primary: var(--sidebar-primary);
|
|
27
|
+
--color-sidebar-foreground: var(--sidebar-foreground);
|
|
28
|
+
--color-sidebar: var(--sidebar);
|
|
29
|
+
--color-ring: var(--ring);
|
|
30
|
+
--color-input: var(--input);
|
|
31
|
+
--color-border: var(--border);
|
|
32
|
+
--color-destructive: var(--destructive);
|
|
33
|
+
--color-accent-foreground: var(--accent-foreground);
|
|
34
|
+
--color-accent: var(--accent);
|
|
35
|
+
--color-muted-foreground: var(--muted-foreground);
|
|
36
|
+
--color-muted: var(--muted);
|
|
37
|
+
--color-secondary-foreground: var(--secondary-foreground);
|
|
38
|
+
--color-secondary: var(--secondary);
|
|
39
|
+
--color-primary-foreground: var(--primary-foreground);
|
|
40
|
+
--color-primary: var(--primary);
|
|
41
|
+
--color-popover-foreground: var(--popover-foreground);
|
|
42
|
+
--color-popover: var(--popover);
|
|
43
|
+
--color-card-foreground: var(--card-foreground);
|
|
44
|
+
--color-card: var(--card);
|
|
45
|
+
--radius-sm: calc(var(--radius) - 4px);
|
|
46
|
+
--radius-md: calc(var(--radius) - 2px);
|
|
47
|
+
--radius-lg: var(--radius);
|
|
48
|
+
--radius-xl: calc(var(--radius) + 4px);
|
|
49
|
+
--radius-2xl: calc(var(--radius) + 8px);
|
|
50
|
+
--radius-3xl: calc(var(--radius) + 12px);
|
|
51
|
+
--radius-4xl: calc(var(--radius) + 16px);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
:root {
|
|
55
|
+
--radius: 0.625rem;
|
|
56
|
+
--background: oklch(1 0 0);
|
|
57
|
+
--foreground: oklch(0.145 0 0);
|
|
58
|
+
--card: oklch(1 0 0);
|
|
59
|
+
--card-foreground: oklch(0.145 0 0);
|
|
60
|
+
--popover: oklch(1 0 0);
|
|
61
|
+
--popover-foreground: oklch(0.145 0 0);
|
|
62
|
+
--primary: oklch(54.61% 0.215 262.88);
|
|
63
|
+
--primary-foreground: oklch(0.985 0 0);
|
|
64
|
+
--secondary: oklch(0.97 0 0);
|
|
65
|
+
--secondary-foreground: oklch(0.205 0 0);
|
|
66
|
+
--muted: oklch(0.97 0 0);
|
|
67
|
+
--muted-foreground: oklch(0.556 0 0);
|
|
68
|
+
--accent: oklch(0.97 0 0);
|
|
69
|
+
--accent-foreground: oklch(0.205 0 0);
|
|
70
|
+
--destructive: oklch(0.577 0.245 27.325);
|
|
71
|
+
--border: oklch(0.922 0 0);
|
|
72
|
+
--input: oklch(0.922 0 0);
|
|
73
|
+
--ring: oklch(0.708 0 0);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.dark {
|
|
77
|
+
--background: oklch(0.145 0 0);
|
|
78
|
+
--foreground: oklch(0.985 0 0);
|
|
79
|
+
--card: oklch(0.205 0 0);
|
|
80
|
+
--card-foreground: oklch(0.985 0 0);
|
|
81
|
+
--popover: oklch(0.205 0 0);
|
|
82
|
+
--popover-foreground: oklch(0.985 0 0);
|
|
83
|
+
--primary: oklch(54.61% 0.215 262.88);
|
|
84
|
+
--primary-foreground: oklch(0.205 0 0);
|
|
85
|
+
--secondary: oklch(0.269 0 0);
|
|
86
|
+
--secondary-foreground: oklch(0.985 0 0);
|
|
87
|
+
--muted: oklch(0.269 0 0);
|
|
88
|
+
--muted-foreground: oklch(0.708 0 0);
|
|
89
|
+
--accent: oklch(0.269 0 0);
|
|
90
|
+
--accent-foreground: oklch(0.985 0 0);
|
|
91
|
+
--destructive: oklch(0.704 0.191 22.216);
|
|
92
|
+
--border: oklch(1 0 0 / 10%);
|
|
93
|
+
--input: oklch(1 0 0 / 15%);
|
|
94
|
+
--ring: oklch(0.556 0 0);
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
@layer base {
|
|
98
|
+
* {
|
|
99
|
+
@apply border-border outline-ring/50;
|
|
100
|
+
}
|
|
101
|
+
body {
|
|
102
|
+
@apply bg-background text-foreground;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
`;
|
|
106
106
|
//# sourceMappingURL=constants.js.map
|
|
@@ -1,5 +1,22 @@
|
|
|
1
|
-
import type { Ora } from "ora";
|
|
2
|
-
import type { DependencyInstallation, ProjectInfo } from "./types.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import type { Ora } from "ora";
|
|
2
|
+
import type { DependencyInstallation, ProjectInfo } from "./types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Determine which packages init expects and which are missing from the project.
|
|
5
|
+
*
|
|
6
|
+
* The list is intentionally small and framework-aware (e.g. Vite gets
|
|
7
|
+
* `vite-tsconfig-paths`; projects without Tailwind get Tailwind + PostCSS).
|
|
8
|
+
*/
|
|
9
|
+
export declare function checkDependencies(cwd: string, projectInfo: ProjectInfo): Promise<DependencyInstallation>;
|
|
10
|
+
/**
|
|
11
|
+
* Ask the user whether missing dependencies should be installed.
|
|
12
|
+
*
|
|
13
|
+
* `--yes` callers should skip this and install automatically.
|
|
14
|
+
*/
|
|
15
|
+
export declare function confirmInstallation(dependencies: DependencyInstallation): Promise<boolean>;
|
|
16
|
+
/**
|
|
17
|
+
* Install missing runtime and dev dependencies with the project's package manager.
|
|
18
|
+
*
|
|
19
|
+
* Uses the shared spinner (when provided) for consistent CLI output. Throws if
|
|
20
|
+
* the install command fails so the caller can exit with a clear status code.
|
|
21
|
+
*/
|
|
22
|
+
export declare function installDependencies(cwd: string, projectInfo: ProjectInfo, dependencies: DependencyInstallation, spinner: Ora | null): Promise<void>;
|
|
@@ -1,53 +1,87 @@
|
|
|
1
|
-
import { execa } from "execa";
|
|
2
|
-
import prompts from "prompts";
|
|
3
|
-
import { collectDependencies, readPackageJson } from "./package-json.js";
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
const
|
|
33
|
-
const
|
|
34
|
-
const
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
1
|
+
import { execa } from "execa";
|
|
2
|
+
import prompts from "prompts";
|
|
3
|
+
import { collectDependencies, readPackageJson } from "./package-json.js";
|
|
4
|
+
function parseMajorVersion(value) {
|
|
5
|
+
const match = value.match(/(\d+)/);
|
|
6
|
+
if (!match) {
|
|
7
|
+
return null;
|
|
8
|
+
}
|
|
9
|
+
const parsed = Number.parseInt(match[1], 10);
|
|
10
|
+
return Number.isFinite(parsed) ? parsed : null;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Determine which packages init expects and which are missing from the project.
|
|
14
|
+
*
|
|
15
|
+
* The list is intentionally small and framework-aware (e.g. Vite gets
|
|
16
|
+
* `vite-tsconfig-paths`; projects without Tailwind get Tailwind + PostCSS).
|
|
17
|
+
*/
|
|
18
|
+
export async function checkDependencies(cwd, projectInfo) {
|
|
19
|
+
const packageJson = await readPackageJson(cwd);
|
|
20
|
+
const allDeps = collectDependencies(packageJson);
|
|
21
|
+
const required = ["clsx", "tailwind-merge"];
|
|
22
|
+
const devDependencies = projectInfo.tailwind
|
|
23
|
+
? []
|
|
24
|
+
: ["tailwindcss", "@tailwindcss/postcss"];
|
|
25
|
+
if (projectInfo.framework === "vite") {
|
|
26
|
+
devDependencies.push("vite-tsconfig-paths");
|
|
27
|
+
}
|
|
28
|
+
const missing = [
|
|
29
|
+
...required.filter((dep) => !allDeps[dep]),
|
|
30
|
+
...devDependencies.filter((dep) => !allDeps[dep])
|
|
31
|
+
];
|
|
32
|
+
const tailwindRange = packageJson.devDependencies?.tailwindcss ?? packageJson.dependencies?.tailwindcss;
|
|
33
|
+
const tailwindMajor = typeof tailwindRange === "string" ? parseMajorVersion(tailwindRange) : null;
|
|
34
|
+
const shouldUpgradeTailwind = !projectInfo.tailwind && tailwindMajor !== null && tailwindMajor < 4;
|
|
35
|
+
if (shouldUpgradeTailwind && !missing.includes("tailwindcss")) {
|
|
36
|
+
missing.push("tailwindcss");
|
|
37
|
+
}
|
|
38
|
+
return {
|
|
39
|
+
required,
|
|
40
|
+
devDependencies,
|
|
41
|
+
missing
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Ask the user whether missing dependencies should be installed.
|
|
46
|
+
*
|
|
47
|
+
* `--yes` callers should skip this and install automatically.
|
|
48
|
+
*/
|
|
49
|
+
export async function confirmInstallation(dependencies) {
|
|
50
|
+
const { shouldInstall } = await prompts({
|
|
51
|
+
type: "confirm",
|
|
52
|
+
name: "shouldInstall",
|
|
53
|
+
message: `Install missing dependencies? (${dependencies.missing.join(", ")})`,
|
|
54
|
+
initial: true
|
|
55
|
+
});
|
|
56
|
+
return shouldInstall;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Install missing runtime and dev dependencies with the project's package manager.
|
|
60
|
+
*
|
|
61
|
+
* Uses the shared spinner (when provided) for consistent CLI output. Throws if
|
|
62
|
+
* the install command fails so the caller can exit with a clear status code.
|
|
63
|
+
*/
|
|
64
|
+
export async function installDependencies(cwd, projectInfo, dependencies, spinner) {
|
|
65
|
+
const requiredMissing = dependencies.missing.filter((dep) => dependencies.required.includes(dep));
|
|
66
|
+
const devMissing = dependencies.missing.filter((dep) => dependencies.devDependencies.includes(dep));
|
|
67
|
+
const pm = projectInfo.packageManager;
|
|
68
|
+
const installCmd = pm === "npm" ? "install" : "add";
|
|
69
|
+
try {
|
|
70
|
+
if (requiredMissing.length > 0) {
|
|
71
|
+
spinner?.start(`Installing dependencies with ${pm}...`);
|
|
72
|
+
await execa(pm, [installCmd, ...requiredMissing], { cwd });
|
|
73
|
+
spinner?.succeed("Dependencies installed");
|
|
74
|
+
}
|
|
75
|
+
if (devMissing.length > 0) {
|
|
76
|
+
spinner?.start(`Installing dev dependencies with ${pm}...`);
|
|
77
|
+
const devFlag = pm === "npm" ? "--save-dev" : "-D";
|
|
78
|
+
await execa(pm, [installCmd, devFlag, ...devMissing], { cwd });
|
|
79
|
+
spinner?.succeed("Dev dependencies installed");
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
catch (error) {
|
|
83
|
+
spinner?.fail("Failed to install dependencies");
|
|
84
|
+
throw new Error(`Failed to install dependencies: ${error.message}`);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
53
87
|
//# sourceMappingURL=dependencies.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../../src/commands/init/dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,OAAO,MAAM,SAAS,CAAA;AAG7B,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAMxE,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,GAAW,EACX,WAAwB;IAExB,MAAM,WAAW,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAA;IAC9C,MAAM,OAAO,GAAG,mBAAmB,CAAC,WAAW,CAAC,CAAA;IAEhD,MAAM,QAAQ,GAAa,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../../src/commands/init/dependencies.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Check whether a path exists and is a directory.
|
|
3
|
+
*
|
|
4
|
+
* This is used by the init CLI to fail fast on obvious path issues without
|
|
5
|
+
* surfacing low-level `fs.stat` errors to users.
|
|
6
|
+
*/
|
|
7
|
+
export declare function directoryExists(dir: string): Promise<boolean>;
|
|
@@ -1,11 +1,17 @@
|
|
|
1
|
-
import fs from "node:fs/promises";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
1
|
+
import fs from "node:fs/promises";
|
|
2
|
+
/**
|
|
3
|
+
* Check whether a path exists and is a directory.
|
|
4
|
+
*
|
|
5
|
+
* This is used by the init CLI to fail fast on obvious path issues without
|
|
6
|
+
* surfacing low-level `fs.stat` errors to users.
|
|
7
|
+
*/
|
|
8
|
+
export async function directoryExists(dir) {
|
|
9
|
+
try {
|
|
10
|
+
const stat = await fs.stat(dir);
|
|
11
|
+
return stat.isDirectory();
|
|
12
|
+
}
|
|
13
|
+
catch {
|
|
14
|
+
return false;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
11
17
|
//# sourceMappingURL=filesystem.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filesystem.js","sourceRoot":"","sources":["../../../src/commands/init/filesystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAEjC,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAW;IAC/C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC/B,OAAO,IAAI,CAAC,WAAW,EAAE,CAAA;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"filesystem.js","sourceRoot":"","sources":["../../../src/commands/init/filesystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAEjC;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAW;IAC/C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC/B,OAAO,IAAI,CAAC,WAAW,EAAE,CAAA;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {};
|
|
1
|
+
export {};
|
|
2
2
|
//# sourceMappingURL=lockfile.js.map
|
|
@@ -1,6 +1,17 @@
|
|
|
1
|
-
export type PackageJson = {
|
|
2
|
-
dependencies?: Record<string, string>;
|
|
3
|
-
devDependencies?: Record<string, string>;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
export type PackageJson = {
|
|
2
|
+
dependencies?: Record<string, string>;
|
|
3
|
+
devDependencies?: Record<string, string>;
|
|
4
|
+
type?: string;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Read and parse the project's `package.json` from the given working directory.
|
|
8
|
+
*
|
|
9
|
+
* Throws with a friendlier error message when JSON parsing fails.
|
|
10
|
+
*/
|
|
11
|
+
export declare function readPackageJson(cwd: string): Promise<PackageJson>;
|
|
12
|
+
/**
|
|
13
|
+
* Flatten `dependencies` and `devDependencies` into a single lookup table.
|
|
14
|
+
*
|
|
15
|
+
* This is used for lightweight feature detection (framework, Tailwind, etc.).
|
|
16
|
+
*/
|
|
17
|
+
export declare function collectDependencies(packageJson: PackageJson): Record<string, string>;
|
|
@@ -1,19 +1,29 @@
|
|
|
1
|
-
import path from "node:path";
|
|
2
|
-
import { readFile } from "../../lib/fs.js";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
1
|
+
import path from "node:path";
|
|
2
|
+
import { readFile } from "../../lib/fs.js";
|
|
3
|
+
/**
|
|
4
|
+
* Read and parse the project's `package.json` from the given working directory.
|
|
5
|
+
*
|
|
6
|
+
* Throws with a friendlier error message when JSON parsing fails.
|
|
7
|
+
*/
|
|
8
|
+
export async function readPackageJson(cwd) {
|
|
9
|
+
const packageJsonPath = path.join(cwd, "package.json");
|
|
10
|
+
const raw = await readFile(packageJsonPath);
|
|
11
|
+
try {
|
|
12
|
+
return JSON.parse(raw);
|
|
13
|
+
}
|
|
14
|
+
catch (error) {
|
|
15
|
+
throw new Error(`Failed to parse package.json: ${error.message}`);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Flatten `dependencies` and `devDependencies` into a single lookup table.
|
|
20
|
+
*
|
|
21
|
+
* This is used for lightweight feature detection (framework, Tailwind, etc.).
|
|
22
|
+
*/
|
|
23
|
+
export function collectDependencies(packageJson) {
|
|
24
|
+
return {
|
|
25
|
+
...packageJson.dependencies,
|
|
26
|
+
...packageJson.devDependencies
|
|
27
|
+
};
|
|
28
|
+
}
|
|
19
29
|
//# sourceMappingURL=package-json.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"package-json.js","sourceRoot":"","sources":["../../../src/commands/init/package-json.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"package-json.js","sourceRoot":"","sources":["../../../src/commands/init/package-json.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAQ1C;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,GAAW;IAC/C,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAA;IACtD,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,eAAe,CAAC,CAAA;IAE3C,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAgB,CAAA;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,iCAAkC,KAAe,CAAC,OAAO,EAAE,CAC5D,CAAA;IACH,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,WAAwB;IAExB,OAAO;QACL,GAAG,WAAW,CAAC,YAAY;QAC3B,GAAG,WAAW,CAAC,eAAe;KAC/B,CAAA;AACH,CAAC"}
|
|
@@ -1,3 +1,15 @@
|
|
|
1
|
-
import type { ProjectInfo, ValidationResult } from "./types.js";
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import type { ProjectInfo, ValidationResult } from "./types.js";
|
|
2
|
+
/**
|
|
3
|
+
* Infer the project's shape (framework, TS, Tailwind, common directories) from `cwd`.
|
|
4
|
+
*
|
|
5
|
+
* The result drives init decisions like which config templates to write and where
|
|
6
|
+
* to place `globals.css`.
|
|
7
|
+
*/
|
|
8
|
+
export declare function detectProject(cwd: string): Promise<ProjectInfo>;
|
|
9
|
+
/**
|
|
10
|
+
* Validate that the project is compatible with `trix-ui init`.
|
|
11
|
+
*
|
|
12
|
+
* Returns hard errors for missing requirements (React/ReactDOM) and softer
|
|
13
|
+
* warnings for common footguns (missing TS types, mixed Next.js routers).
|
|
14
|
+
*/
|
|
15
|
+
export declare function validateProject(cwd: string, projectInfo: ProjectInfo): Promise<ValidationResult>;
|