stack-dev 0.1.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/.idea/modules.xml +8 -0
- package/.idea/prettier.xml +7 -0
- package/.idea/stack-dev.iml +12 -0
- package/.idea/vcs.xml +6 -0
- package/apps/cli/eslint.config.mjs +3 -0
- package/apps/cli/node_modules/.bin/acorn +21 -0
- package/apps/cli/node_modules/.bin/esbuild +21 -0
- package/apps/cli/node_modules/.bin/eslint +21 -0
- package/apps/cli/node_modules/.bin/glob +21 -0
- package/apps/cli/node_modules/.bin/json5 +21 -0
- package/apps/cli/node_modules/.bin/prettier +21 -0
- package/apps/cli/node_modules/.bin/stack-prettier +21 -0
- package/apps/cli/node_modules/.bin/tsc +21 -0
- package/apps/cli/node_modules/.bin/tsserver +21 -0
- package/apps/cli/node_modules/.bin/tsup +21 -0
- package/apps/cli/node_modules/.bin/tsup-node +21 -0
- package/apps/cli/node_modules/.bin/yaml +21 -0
- package/apps/cli/package.json +35 -0
- package/apps/cli/prettier.config.mjs +3 -0
- package/apps/cli/src/file-generator/file-generator-imp.ts +20 -0
- package/apps/cli/src/file-generator/file-generator.ts +5 -0
- package/apps/cli/src/file-generator/index.ts +3 -0
- package/apps/cli/src/file-generator/package-json-generator.ts +23 -0
- package/apps/cli/src/index.ts +185 -0
- package/apps/cli/src/link-packages.ts +65 -0
- package/apps/cli/src/package-json/dependency.ts +28 -0
- package/apps/cli/src/package-json/index.ts +3 -0
- package/apps/cli/src/package-json/package-json.ts +269 -0
- package/apps/cli/src/packages/create-config-package.ts +29 -0
- package/apps/cli/src/packages/index.ts +4 -0
- package/apps/cli/src/packages/library-package/create-library-package.ts +85 -0
- package/apps/cli/src/packages/library-package/files/add-file-generator.ts +8 -0
- package/apps/cli/src/packages/library-package/files/add-spec-file-generator.ts +17 -0
- package/apps/cli/src/packages/library-package/files/eslint-config-file-generator.ts +11 -0
- package/apps/cli/src/packages/library-package/files/index-file-generator.ts +9 -0
- package/apps/cli/src/packages/library-package/files/prettier-config-file-generator.ts +11 -0
- package/apps/cli/src/packages/library-package/files/tsconfig-file-generator.ts +15 -0
- package/apps/cli/src/packages/library-package/files/tsup-config-file-generator.ts +23 -0
- package/apps/cli/src/packages/library-package/files/vitest-config-file-generator.ts +19 -0
- package/apps/cli/src/packages/library-package/index.ts +1 -0
- package/apps/cli/src/packages/react-package/create-react-package.ts +25 -0
- package/apps/cli/src/packages/react-package/create-tailwind-react-package.ts +30 -0
- package/apps/cli/src/packages/react-package/create-unstyled-react-package.ts +3 -0
- package/apps/cli/src/packages/react-package/css-react-package/create-css-react-package.ts +103 -0
- package/apps/cli/src/packages/react-package/css-react-package/files/button-css-module-file-generator.ts +16 -0
- package/apps/cli/src/packages/react-package/css-react-package/files/button-file-generator.ts +14 -0
- package/apps/cli/src/packages/react-package/css-react-package/files/button-spec-file-generator.ts +33 -0
- package/apps/cli/src/packages/react-package/css-react-package/files/eslint-config-file-generator.ts +18 -0
- package/apps/cli/src/packages/react-package/css-react-package/files/index-file-generator.ts +9 -0
- package/apps/cli/src/packages/react-package/css-react-package/files/prettier-config-file-generator.ts +11 -0
- package/apps/cli/src/packages/react-package/css-react-package/files/tsconfig-file-generator.ts +15 -0
- package/apps/cli/src/packages/react-package/css-react-package/files/tsup-config-file-generator.ts +24 -0
- package/apps/cli/src/packages/react-package/css-react-package/files/vitest-config-file-generator.ts +23 -0
- package/apps/cli/src/packages/react-package/index.ts +1 -0
- package/apps/cli/src/packages/react-package/styled-components-react-package/create-styled-components-react-package.ts +112 -0
- package/apps/cli/src/packages/react-package/styled-components-react-package/files/button-file-generator.ts +30 -0
- package/apps/cli/src/packages/react-package/styled-components-react-package/files/button-spec-file-generator.ts +33 -0
- package/apps/cli/src/packages/react-package/styled-components-react-package/files/eslint-config-file-generator.ts +18 -0
- package/apps/cli/src/packages/react-package/styled-components-react-package/files/index-file-generator.ts +9 -0
- package/apps/cli/src/packages/react-package/styled-components-react-package/files/prettier-config-file-generator.ts +11 -0
- package/apps/cli/src/packages/react-package/styled-components-react-package/files/tsconfig-file-generator.ts +15 -0
- package/apps/cli/src/packages/react-package/styled-components-react-package/files/tsup-config-file-generator.ts +21 -0
- package/apps/cli/src/packages/react-package/styled-components-react-package/files/vitest-config-file-generator.ts +23 -0
- package/apps/cli/src/packages/vite-react-app/create-vite-react-app.ts +79 -0
- package/apps/cli/src/packages/vite-react-app/files/app-file-generator.ts +28 -0
- package/apps/cli/src/packages/vite-react-app/files/eslint-config-file-generator.ts +11 -0
- package/apps/cli/src/packages/vite-react-app/files/index-html-file-generator.ts +20 -0
- package/apps/cli/src/packages/vite-react-app/files/main-file-generator.ts +14 -0
- package/apps/cli/src/packages/vite-react-app/files/prettier-config-file-generator.ts +11 -0
- package/apps/cli/src/packages/vite-react-app/files/tsconfig-file-generator.ts +15 -0
- package/apps/cli/src/packages/vite-react-app/files/vite-config-file-generator.ts +17 -0
- package/apps/cli/src/packages/vite-react-app/files/vitest-config-file-generator.ts +19 -0
- package/apps/cli/src/tsconfig/compiler-options.ts +83 -0
- package/apps/cli/src/tsconfig/index.ts +4 -0
- package/apps/cli/src/tsconfig/reference.ts +21 -0
- package/apps/cli/src/tsconfig/tsconfig.ts +137 -0
- package/apps/cli/src/unlink-packages.ts +47 -0
- package/apps/cli/src/utils/package-generator.ts +41 -0
- package/apps/cli/src/utils/package-type.ts +44 -0
- package/apps/cli/src/utils/package.ts +126 -0
- package/apps/cli/src/utils/style-type.ts +41 -0
- package/apps/cli/src/utils/utils.ts +28 -0
- package/apps/cli/src/utils/workspace.ts +78 -0
- package/apps/cli/src/workspace/create-workspace.ts +39 -0
- package/apps/cli/src/workspace/index.ts +1 -0
- package/apps/cli/src/workspace/root-package.ts +195 -0
- package/apps/cli/src/workspace/typescript-config.ts +84 -0
- package/apps/cli/tsconfig.json +14 -0
- package/apps/cli/tsup.config.ts +16 -0
- package/apps/demo/eslint.config.mjs +3 -0
- package/apps/demo/index.html +12 -0
- package/apps/demo/node_modules/.bin/browserslist +21 -0
- package/apps/demo/node_modules/.bin/eslint +21 -0
- package/apps/demo/node_modules/.bin/prettier +21 -0
- package/apps/demo/node_modules/.bin/tsc +21 -0
- package/apps/demo/node_modules/.bin/tsserver +21 -0
- package/apps/demo/node_modules/.bin/vite +21 -0
- package/apps/demo/node_modules/.vite/deps/_metadata.json +52 -0
- package/apps/demo/node_modules/.vite/deps/chunk-IGB2AZES.js +1930 -0
- package/apps/demo/node_modules/.vite/deps/chunk-IGB2AZES.js.map +7 -0
- package/apps/demo/node_modules/.vite/deps/chunk-NEPDRNXC.js +21626 -0
- package/apps/demo/node_modules/.vite/deps/chunk-NEPDRNXC.js.map +7 -0
- package/apps/demo/node_modules/.vite/deps/package.json +3 -0
- package/apps/demo/node_modules/.vite/deps/react-dom.js +6 -0
- package/apps/demo/node_modules/.vite/deps/react-dom.js.map +7 -0
- package/apps/demo/node_modules/.vite/deps/react-dom_client.js +38 -0
- package/apps/demo/node_modules/.vite/deps/react-dom_client.js.map +7 -0
- package/apps/demo/node_modules/.vite/deps/react.js +5 -0
- package/apps/demo/node_modules/.vite/deps/react.js.map +7 -0
- package/apps/demo/node_modules/.vite/deps/react_jsx-dev-runtime.js +911 -0
- package/apps/demo/node_modules/.vite/deps/react_jsx-dev-runtime.js.map +7 -0
- package/apps/demo/node_modules/.vite/deps/react_jsx-runtime.js +923 -0
- package/apps/demo/node_modules/.vite/deps/react_jsx-runtime.js.map +7 -0
- package/apps/demo/node_modules/.vite/deps/styled-components.js +1366 -0
- package/apps/demo/node_modules/.vite/deps/styled-components.js.map +7 -0
- package/apps/demo/package.json +32 -0
- package/apps/demo/prettier.config.mjs +3 -0
- package/apps/demo/src/App.tsx +50 -0
- package/apps/demo/src/main.tsx +9 -0
- package/apps/demo/tsconfig.json +17 -0
- package/apps/demo/vite.config.ts +9 -0
- package/apps/demo/vitest.config.ts +11 -0
- package/configs/eslint-config/base.mjs +15 -0
- package/configs/eslint-config/node_modules/.bin/acorn +21 -0
- package/configs/eslint-config/node_modules/.bin/eslint +21 -0
- package/configs/eslint-config/node_modules/.bin/tsc +21 -0
- package/configs/eslint-config/node_modules/.bin/tsserver +21 -0
- package/configs/eslint-config/package.json +12 -0
- package/configs/eslint-config/react.mjs +17 -0
- package/configs/prettier-config/base.mjs +11 -0
- package/configs/prettier-config/node_modules/.bin/prettier +21 -0
- package/configs/prettier-config/node_modules/.bin/tsc +21 -0
- package/configs/prettier-config/node_modules/.bin/tsserver +21 -0
- package/configs/prettier-config/package.json +9 -0
- package/configs/typescript-config/global.d.ts +12 -0
- package/configs/typescript-config/node_modules/.bin/tsc +21 -0
- package/configs/typescript-config/node_modules/.bin/tsserver +21 -0
- package/configs/typescript-config/package.json +7 -0
- package/configs/typescript-config/tsconfig.base.json +19 -0
- package/configs/typescript-config/tsconfig.node.json +6 -0
- package/configs/typescript-config/tsconfig.react.json +8 -0
- package/package.json +16 -0
- package/packages/core/eslint.config.mjs +3 -0
- package/packages/core/node_modules/.bin/eslint +21 -0
- package/packages/core/node_modules/.bin/prettier +21 -0
- package/packages/core/node_modules/.bin/tsc +21 -0
- package/packages/core/node_modules/.bin/tsserver +21 -0
- package/packages/core/node_modules/.bin/tsup +21 -0
- package/packages/core/node_modules/.bin/tsup-node +21 -0
- package/packages/core/node_modules/.bin/vite +21 -0
- package/packages/core/node_modules/.bin/vitest +21 -0
- package/packages/core/node_modules/.bin/yaml +21 -0
- package/packages/core/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -0
- package/packages/core/package.json +35 -0
- package/packages/core/prettier.config.mjs +3 -0
- package/packages/core/src/are-objects-equal.ts +26 -0
- package/packages/core/src/have-same-items.ts +84 -0
- package/packages/core/src/index.ts +6 -0
- package/packages/core/src/snapshot.ts +11 -0
- package/packages/core/src/sort-keys.ts +7 -0
- package/packages/core/src/spec/are-objects-equal.spec.ts +30 -0
- package/packages/core/src/spec/have-same-items.spec.ts +29 -0
- package/packages/core/src/spec/sort-keys.spec.ts +57 -0
- package/packages/core/tsconfig.json +7 -0
- package/packages/core/tsup.config.ts +15 -0
- package/packages/core/vitest.config.mts +11 -0
- package/packages/react-css/eslint.config.mjs +10 -0
- package/packages/react-css/node_modules/.bin/esbuild +21 -0
- package/packages/react-css/node_modules/.bin/eslint +21 -0
- package/packages/react-css/node_modules/.bin/prettier +21 -0
- package/packages/react-css/node_modules/.bin/tsc +21 -0
- package/packages/react-css/node_modules/.bin/tsserver +21 -0
- package/packages/react-css/node_modules/.bin/tsup +21 -0
- package/packages/react-css/node_modules/.bin/tsup-node +21 -0
- package/packages/react-css/node_modules/.bin/vitest +21 -0
- package/packages/react-css/node_modules/.bin/yaml +21 -0
- package/packages/react-css/package.json +50 -0
- package/packages/react-css/prettier.config.mjs +3 -0
- package/packages/react-css/src/button.module.css +8 -0
- package/packages/react-css/src/button.spec.tsx +25 -0
- package/packages/react-css/src/button.tsx +11 -0
- package/packages/react-css/src/index.ts +1 -0
- package/packages/react-css/tsconfig.json +7 -0
- package/packages/react-css/tsup.config.ts +17 -0
- package/packages/react-css/vitest.config.ts +15 -0
- package/packages/react-styled-components/eslint.config.mjs +10 -0
- package/packages/react-styled-components/node_modules/.bin/eslint +21 -0
- package/packages/react-styled-components/node_modules/.bin/prettier +21 -0
- package/packages/react-styled-components/node_modules/.bin/tsc +21 -0
- package/packages/react-styled-components/node_modules/.bin/tsserver +21 -0
- package/packages/react-styled-components/node_modules/.bin/tsup +21 -0
- package/packages/react-styled-components/node_modules/.bin/tsup-node +21 -0
- package/packages/react-styled-components/node_modules/.bin/vitest +21 -0
- package/packages/react-styled-components/node_modules/.bin/yaml +21 -0
- package/packages/react-styled-components/package.json +51 -0
- package/packages/react-styled-components/prettier.config.mjs +3 -0
- package/packages/react-styled-components/src/button.spec.tsx +27 -0
- package/packages/react-styled-components/src/button.tsx +21 -0
- package/packages/react-styled-components/src/index.ts +1 -0
- package/packages/react-styled-components/tsconfig.json +7 -0
- package/packages/react-styled-components/tsup.config.ts +16 -0
- package/packages/react-styled-components/vitest.config.ts +15 -0
- package/pnpm-workspace.yaml +4 -0
- package/turbo.json +13 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import fs from 'node:fs/promises';
|
|
2
|
+
import path from 'node:path';
|
|
3
|
+
import { PackageJSON } from '../package-json/package-json';
|
|
4
|
+
|
|
5
|
+
export async function getDirectoryPackageJson(
|
|
6
|
+
directory: string,
|
|
7
|
+
): Promise<PackageJSON> {
|
|
8
|
+
const packageJsonPath = getPackageJSONPath(directory);
|
|
9
|
+
const packageJsonText = await fs.readFile(packageJsonPath, {
|
|
10
|
+
encoding: 'utf-8',
|
|
11
|
+
});
|
|
12
|
+
|
|
13
|
+
return PackageJSON.parse(packageJsonText);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export function getPackageJSONPath(directory: string) {
|
|
17
|
+
return path.join(directory, 'package.json');
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export async function fileExists(filepath: string): Promise<boolean> {
|
|
21
|
+
try {
|
|
22
|
+
await fs.access(filepath, fs.constants.F_OK);
|
|
23
|
+
|
|
24
|
+
return true;
|
|
25
|
+
} catch {
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { fileExists, getDirectoryPackageJson } from './utils';
|
|
2
|
+
|
|
3
|
+
import { Snapshot } from '@stack-dev/core';
|
|
4
|
+
import fs from 'node:fs/promises';
|
|
5
|
+
import path from 'path';
|
|
6
|
+
import yaml from 'yaml';
|
|
7
|
+
|
|
8
|
+
export type WorkspaceYaml = {
|
|
9
|
+
packages: ReadonlyArray<string>;
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
export async function getDirectoryWorkspaceFile(
|
|
13
|
+
directory: string,
|
|
14
|
+
): Promise<WorkspaceYaml> {
|
|
15
|
+
const raw = await getRawDirectoryWorkspaceFile(directory);
|
|
16
|
+
|
|
17
|
+
if ('packages' in raw && raw.packages instanceof Array) {
|
|
18
|
+
return {
|
|
19
|
+
packages: raw.packages.filter((p): p is string => typeof p === 'string'),
|
|
20
|
+
};
|
|
21
|
+
} else {
|
|
22
|
+
return { packages: [] };
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
async function getRawDirectoryWorkspaceFile(
|
|
27
|
+
directory: string,
|
|
28
|
+
): Promise<Snapshot> {
|
|
29
|
+
const case1 = path.join(directory, 'pnpm-workspace.yaml');
|
|
30
|
+
const case2 = path.join(directory, 'pnpm-workspace.yml');
|
|
31
|
+
|
|
32
|
+
if (await fileExists(case1)) {
|
|
33
|
+
return yaml.parse(await fs.readFile(case1, { encoding: 'utf-8' }));
|
|
34
|
+
} else if (await fileExists(case2)) {
|
|
35
|
+
return yaml.parse(await fs.readFile(case2, { encoding: 'utf-8' }));
|
|
36
|
+
} else {
|
|
37
|
+
throw new Error(`Directory "${directory}" is not a workspace.`);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export async function isWorkspaceRoot(directory: string): Promise<boolean> {
|
|
42
|
+
return (
|
|
43
|
+
(await fileExists(path.join(directory, 'pnpm-workspace.yaml'))) ||
|
|
44
|
+
(await fileExists(path.join(directory, 'pnpm-workspace.yml')))
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export async function getWorkspaceRoot(
|
|
49
|
+
directory: string = process.cwd(),
|
|
50
|
+
): Promise<string> {
|
|
51
|
+
const parent = path.dirname(directory);
|
|
52
|
+
|
|
53
|
+
if (parent === directory) {
|
|
54
|
+
throw new Error('Not a workspace.');
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
if (await isWorkspaceRoot(directory)) {
|
|
58
|
+
return directory;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
return getWorkspaceRoot(parent);
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
export async function getNamespace(
|
|
65
|
+
directory: string = process.cwd(),
|
|
66
|
+
): Promise<string> {
|
|
67
|
+
const root = await getWorkspaceRoot(directory);
|
|
68
|
+
|
|
69
|
+
const packageJson = await getDirectoryPackageJson(root);
|
|
70
|
+
|
|
71
|
+
const result = packageJson.name;
|
|
72
|
+
|
|
73
|
+
if (!result) {
|
|
74
|
+
throw new Error('Missing name.');
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
return `@${result}`;
|
|
78
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import fs from 'fs/promises';
|
|
2
|
+
import path from 'path';
|
|
3
|
+
import { getNamespace } from '../utils/workspace';
|
|
4
|
+
import { makeRootPackage } from './root-package';
|
|
5
|
+
import { makeTypescriptConfig } from './typescript-config';
|
|
6
|
+
|
|
7
|
+
export async function createWorkspace(name: string, directory: string) {
|
|
8
|
+
await validateNotInWorkspace(directory);
|
|
9
|
+
|
|
10
|
+
console.log(`✨ Creating workspace: @${name}`);
|
|
11
|
+
|
|
12
|
+
const fullPath = path.join(directory, name);
|
|
13
|
+
|
|
14
|
+
await fs.mkdir(fullPath, { recursive: true });
|
|
15
|
+
|
|
16
|
+
const namespace = `@${name}`;
|
|
17
|
+
const PACKAGES = [
|
|
18
|
+
await makeRootPackage(fullPath, name),
|
|
19
|
+
await makeTypescriptConfig(fullPath, namespace),
|
|
20
|
+
];
|
|
21
|
+
|
|
22
|
+
await Promise.all(PACKAGES.map((p) => p.generate()));
|
|
23
|
+
|
|
24
|
+
await fs.mkdir(path.join(fullPath, 'apps'));
|
|
25
|
+
await fs.mkdir(path.join(fullPath, 'configs'));
|
|
26
|
+
await fs.mkdir(path.join(fullPath, 'packages'));
|
|
27
|
+
|
|
28
|
+
console.log(`✅ Workspace created at: ${fullPath}`);
|
|
29
|
+
console.log('');
|
|
30
|
+
console.log(`Run "cd ${fullPath}" followed by "pnpm install"`);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
async function validateNotInWorkspace(directory: string): Promise<void> {
|
|
34
|
+
const namespace = await getNamespace(directory);
|
|
35
|
+
|
|
36
|
+
if (namespace !== undefined) {
|
|
37
|
+
throw new Error(`Currently in workspace "${namespace}".`);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './create-workspace';
|
|
@@ -0,0 +1,195 @@
|
|
|
1
|
+
import { PackageJsonGenerator } from '../file-generator';
|
|
2
|
+
import { FileGeneratorImp } from '../file-generator/file-generator-imp';
|
|
3
|
+
import { Dependency, PackageJSON } from '../package-json';
|
|
4
|
+
import { PackageGenerator } from '../utils/package-generator';
|
|
5
|
+
|
|
6
|
+
export async function makeRootPackage(
|
|
7
|
+
directory: string,
|
|
8
|
+
name: string,
|
|
9
|
+
): Promise<PackageGenerator> {
|
|
10
|
+
const packageJsonModel = new PackageJSON({
|
|
11
|
+
name: name,
|
|
12
|
+
devDependencies: [new Dependency('turbo', '^2.5.4')],
|
|
13
|
+
additionalData: {
|
|
14
|
+
description: '',
|
|
15
|
+
keywords: [],
|
|
16
|
+
author: '',
|
|
17
|
+
license: 'ISC',
|
|
18
|
+
packageManager: 'pnpm@10.13.1',
|
|
19
|
+
},
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
const PNPM_WORKSPACE = new FileGeneratorImp(
|
|
23
|
+
'pnpm-workspace.yaml',
|
|
24
|
+
['packages:', ' - apps/*', ' - packages/*', ' - configs/*'].join('\n'),
|
|
25
|
+
);
|
|
26
|
+
|
|
27
|
+
const GITIGNORE = new FileGeneratorImp('.gitignore', GITIGNORE_CONTENT);
|
|
28
|
+
|
|
29
|
+
const TURBO_JSON = new FileGeneratorImp(
|
|
30
|
+
'turbo.json',
|
|
31
|
+
JSON.stringify(
|
|
32
|
+
{
|
|
33
|
+
tasks: {
|
|
34
|
+
build: {
|
|
35
|
+
dependsOn: ['^build'],
|
|
36
|
+
outputs: ['dist/**'],
|
|
37
|
+
},
|
|
38
|
+
lint: {},
|
|
39
|
+
test: {},
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
null,
|
|
43
|
+
2,
|
|
44
|
+
),
|
|
45
|
+
);
|
|
46
|
+
|
|
47
|
+
return new PackageGenerator(
|
|
48
|
+
directory,
|
|
49
|
+
new PackageJsonGenerator(packageJsonModel, ''),
|
|
50
|
+
[PNPM_WORKSPACE, GITIGNORE, TURBO_JSON],
|
|
51
|
+
);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
const GITIGNORE_CONTENT = `# Logs
|
|
55
|
+
logs
|
|
56
|
+
*.log
|
|
57
|
+
npm-debug.log*
|
|
58
|
+
yarn-debug.log*
|
|
59
|
+
yarn-error.log*
|
|
60
|
+
lerna-debug.log*
|
|
61
|
+
|
|
62
|
+
# Diagnostic reports (https://nodejs.org/api/report.html)
|
|
63
|
+
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
|
|
64
|
+
|
|
65
|
+
# Runtime data
|
|
66
|
+
pids
|
|
67
|
+
*.pid
|
|
68
|
+
*.seed
|
|
69
|
+
*.pid.lock
|
|
70
|
+
|
|
71
|
+
# Directory for instrumented libs generated by jscoverage/JSCover
|
|
72
|
+
lib-cov
|
|
73
|
+
|
|
74
|
+
# Coverage directory used by tools like istanbul
|
|
75
|
+
coverage
|
|
76
|
+
*.lcov
|
|
77
|
+
|
|
78
|
+
# nyc test coverage
|
|
79
|
+
.nyc_output
|
|
80
|
+
|
|
81
|
+
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
|
|
82
|
+
.grunt
|
|
83
|
+
|
|
84
|
+
# Bower dependency directory (https://bower.io/)
|
|
85
|
+
bower_components
|
|
86
|
+
|
|
87
|
+
# node-waf configuration
|
|
88
|
+
.lock-wscript
|
|
89
|
+
|
|
90
|
+
# Compiled binary addons (https://nodejs.org/api/addons.html)
|
|
91
|
+
build/Release
|
|
92
|
+
|
|
93
|
+
# Dependency directories
|
|
94
|
+
node_modules/
|
|
95
|
+
jspm_packages/
|
|
96
|
+
|
|
97
|
+
# Snowpack dependency directory (https://snowpack.dev/)
|
|
98
|
+
web_modules/
|
|
99
|
+
|
|
100
|
+
# TypeScript cache
|
|
101
|
+
*.tsbuildinfo
|
|
102
|
+
|
|
103
|
+
# Optional npm cache directory
|
|
104
|
+
.npm
|
|
105
|
+
|
|
106
|
+
# Optional eslint cache
|
|
107
|
+
.eslintcache
|
|
108
|
+
|
|
109
|
+
# Optional stylelint cache
|
|
110
|
+
.stylelintcache
|
|
111
|
+
|
|
112
|
+
# Optional REPL history
|
|
113
|
+
.node_repl_history
|
|
114
|
+
|
|
115
|
+
# Output of 'npm pack'
|
|
116
|
+
*.tgz
|
|
117
|
+
|
|
118
|
+
# Yarn Integrity file
|
|
119
|
+
.yarn-integrity
|
|
120
|
+
|
|
121
|
+
# dotenv environment variable files
|
|
122
|
+
.env
|
|
123
|
+
.env.*
|
|
124
|
+
!.env.example
|
|
125
|
+
|
|
126
|
+
# parcel-bundler cache (https://parceljs.org/)
|
|
127
|
+
.cache
|
|
128
|
+
.parcel-cache
|
|
129
|
+
|
|
130
|
+
# Next.js build output
|
|
131
|
+
.next
|
|
132
|
+
out
|
|
133
|
+
|
|
134
|
+
# Nuxt.js build / generate output
|
|
135
|
+
.nuxt
|
|
136
|
+
dist
|
|
137
|
+
|
|
138
|
+
# Gatsby files
|
|
139
|
+
.cache/
|
|
140
|
+
# Comment in the public line in if your project uses Gatsby and not Next.js
|
|
141
|
+
# https://nextjs.org/blog/next-9-1#public-directory-support
|
|
142
|
+
# public
|
|
143
|
+
|
|
144
|
+
# vuepress build output
|
|
145
|
+
.vuepress/dist
|
|
146
|
+
|
|
147
|
+
# vuepress v2.x temp and cache directory
|
|
148
|
+
.temp
|
|
149
|
+
.cache
|
|
150
|
+
|
|
151
|
+
# Sveltekit cache directory
|
|
152
|
+
.svelte-kit/
|
|
153
|
+
|
|
154
|
+
# vitepress build output
|
|
155
|
+
**/.vitepress/dist
|
|
156
|
+
|
|
157
|
+
# vitepress cache directory
|
|
158
|
+
**/.vitepress/cache
|
|
159
|
+
|
|
160
|
+
# Docusaurus cache and generated files
|
|
161
|
+
.docusaurus
|
|
162
|
+
|
|
163
|
+
# Serverless directories
|
|
164
|
+
.serverless/
|
|
165
|
+
|
|
166
|
+
# FuseBox cache
|
|
167
|
+
.fusebox/
|
|
168
|
+
|
|
169
|
+
# DynamoDB Local files
|
|
170
|
+
.dynamodb/
|
|
171
|
+
|
|
172
|
+
# Firebase cache directory
|
|
173
|
+
.firebase/
|
|
174
|
+
|
|
175
|
+
# TernJS port file
|
|
176
|
+
.tern-port
|
|
177
|
+
|
|
178
|
+
# Stores VSCode versions used for testing VSCode extensions
|
|
179
|
+
.vscode-test
|
|
180
|
+
|
|
181
|
+
# yarn v3
|
|
182
|
+
.pnp.*
|
|
183
|
+
.yarn/*
|
|
184
|
+
!.yarn/patches
|
|
185
|
+
!.yarn/plugins
|
|
186
|
+
!.yarn/releases
|
|
187
|
+
!.yarn/sdks
|
|
188
|
+
!.yarn/versions
|
|
189
|
+
|
|
190
|
+
# Vite logs files
|
|
191
|
+
vite.config.js.timestamp-*
|
|
192
|
+
vite.config.ts.timestamp-*
|
|
193
|
+
|
|
194
|
+
.turbo
|
|
195
|
+
`;
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import path from 'path';
|
|
2
|
+
import { PackageJSON } from '../package-json';
|
|
3
|
+
import { PackageJsonGenerator } from '../file-generator';
|
|
4
|
+
import { FileGeneratorImp } from '../file-generator/file-generator-imp';
|
|
5
|
+
import { Dependency } from '../package-json';
|
|
6
|
+
import { PackageGenerator } from '../utils/package-generator';
|
|
7
|
+
|
|
8
|
+
export async function makeTypescriptConfig(
|
|
9
|
+
directory: string,
|
|
10
|
+
namespace: string,
|
|
11
|
+
): Promise<PackageGenerator> {
|
|
12
|
+
const packageJsonModel = new PackageJSON({
|
|
13
|
+
name: `${namespace}/typescript-config`,
|
|
14
|
+
devDependencies: [new Dependency('typescript', '^5.8.3')],
|
|
15
|
+
additionalData: {
|
|
16
|
+
version: '0.1.0',
|
|
17
|
+
private: true,
|
|
18
|
+
files: ['*.json'],
|
|
19
|
+
},
|
|
20
|
+
});
|
|
21
|
+
|
|
22
|
+
const fullPath = path.join(directory, 'configs/typescript-config');
|
|
23
|
+
|
|
24
|
+
return new PackageGenerator(
|
|
25
|
+
fullPath,
|
|
26
|
+
new PackageJsonGenerator(packageJsonModel, namespace),
|
|
27
|
+
[BASE, REACT, NODE],
|
|
28
|
+
);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export const BASE = new FileGeneratorImp(
|
|
32
|
+
'tsconfig.base.json',
|
|
33
|
+
JSON.stringify(
|
|
34
|
+
{
|
|
35
|
+
compilerOptions: {
|
|
36
|
+
target: 'ES2022',
|
|
37
|
+
module: 'ESNext',
|
|
38
|
+
moduleResolution: 'bundler',
|
|
39
|
+
resolveJsonModule: true,
|
|
40
|
+
isolatedModules: true,
|
|
41
|
+
strict: true,
|
|
42
|
+
skipLibCheck: true,
|
|
43
|
+
forceConsistentCasingInFileNames: true,
|
|
44
|
+
esModuleInterop: true,
|
|
45
|
+
allowSyntheticDefaultImports: true,
|
|
46
|
+
noEmit: true,
|
|
47
|
+
types: [],
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
null,
|
|
51
|
+
2,
|
|
52
|
+
),
|
|
53
|
+
);
|
|
54
|
+
|
|
55
|
+
const REACT = new FileGeneratorImp(
|
|
56
|
+
'tsconfig.react.json',
|
|
57
|
+
JSON.stringify(
|
|
58
|
+
{
|
|
59
|
+
extends: './tsconfig.base.json',
|
|
60
|
+
compilerOptions: {
|
|
61
|
+
jsx: 'react-jsx',
|
|
62
|
+
lib: ['DOM', 'DOM.Iterable', 'ES2022'],
|
|
63
|
+
types: [],
|
|
64
|
+
},
|
|
65
|
+
},
|
|
66
|
+
null,
|
|
67
|
+
2,
|
|
68
|
+
),
|
|
69
|
+
);
|
|
70
|
+
|
|
71
|
+
const NODE = new FileGeneratorImp(
|
|
72
|
+
'tsconfig.node.json',
|
|
73
|
+
JSON.stringify(
|
|
74
|
+
{
|
|
75
|
+
extends: './tsconfig.base.json',
|
|
76
|
+
compilerOptions: {
|
|
77
|
+
lib: ['ES2022'],
|
|
78
|
+
types: ['node'],
|
|
79
|
+
},
|
|
80
|
+
},
|
|
81
|
+
null,
|
|
82
|
+
2,
|
|
83
|
+
),
|
|
84
|
+
);
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { defineConfig } from 'tsup';
|
|
2
|
+
|
|
3
|
+
export default defineConfig({
|
|
4
|
+
entry: ['src/index.ts'],
|
|
5
|
+
outDir: 'dist',
|
|
6
|
+
format: ['esm'],
|
|
7
|
+
target: 'node18',
|
|
8
|
+
splitting: false,
|
|
9
|
+
clean: true,
|
|
10
|
+
dts: true,
|
|
11
|
+
outExtension({ format }) {
|
|
12
|
+
return {
|
|
13
|
+
js: format === 'esm' ? '.mjs' : '.js',
|
|
14
|
+
};
|
|
15
|
+
},
|
|
16
|
+
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<title>Vite + React + Stack-Dev</title>
|
|
7
|
+
</head>
|
|
8
|
+
<body>
|
|
9
|
+
<div id="root"></div>
|
|
10
|
+
<script type="module" src="/src/main.tsx"></script>
|
|
11
|
+
</body>
|
|
12
|
+
</html>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
|
3
|
+
|
|
4
|
+
case `uname` in
|
|
5
|
+
*CYGWIN*|*MINGW*|*MSYS*)
|
|
6
|
+
if command -v cygpath > /dev/null 2>&1; then
|
|
7
|
+
basedir=`cygpath -w "$basedir"`
|
|
8
|
+
fi
|
|
9
|
+
;;
|
|
10
|
+
esac
|
|
11
|
+
|
|
12
|
+
if [ -z "$NODE_PATH" ]; then
|
|
13
|
+
export NODE_PATH="/home/benmclean/projects/stack-dev/node_modules/.pnpm/browserslist@4.28.1/node_modules/browserslist/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/browserslist@4.28.1/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/node_modules"
|
|
14
|
+
else
|
|
15
|
+
export NODE_PATH="/home/benmclean/projects/stack-dev/node_modules/.pnpm/browserslist@4.28.1/node_modules/browserslist/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/browserslist@4.28.1/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/node_modules:$NODE_PATH"
|
|
16
|
+
fi
|
|
17
|
+
if [ -x "$basedir/node" ]; then
|
|
18
|
+
exec "$basedir/node" "$basedir/../../../../node_modules/.pnpm/browserslist@4.28.1/node_modules/browserslist/cli.js" "$@"
|
|
19
|
+
else
|
|
20
|
+
exec node "$basedir/../../../../node_modules/.pnpm/browserslist@4.28.1/node_modules/browserslist/cli.js" "$@"
|
|
21
|
+
fi
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
|
3
|
+
|
|
4
|
+
case `uname` in
|
|
5
|
+
*CYGWIN*|*MINGW*|*MSYS*)
|
|
6
|
+
if command -v cygpath > /dev/null 2>&1; then
|
|
7
|
+
basedir=`cygpath -w "$basedir"`
|
|
8
|
+
fi
|
|
9
|
+
;;
|
|
10
|
+
esac
|
|
11
|
+
|
|
12
|
+
if [ -z "$NODE_PATH" ]; then
|
|
13
|
+
export NODE_PATH="/home/benmclean/projects/stack-dev/node_modules/.pnpm/eslint@9.32.0/node_modules/eslint/bin/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/eslint@9.32.0/node_modules/eslint/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/eslint@9.32.0/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/node_modules"
|
|
14
|
+
else
|
|
15
|
+
export NODE_PATH="/home/benmclean/projects/stack-dev/node_modules/.pnpm/eslint@9.32.0/node_modules/eslint/bin/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/eslint@9.32.0/node_modules/eslint/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/eslint@9.32.0/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/node_modules:$NODE_PATH"
|
|
16
|
+
fi
|
|
17
|
+
if [ -x "$basedir/node" ]; then
|
|
18
|
+
exec "$basedir/node" "$basedir/../eslint/bin/eslint.js" "$@"
|
|
19
|
+
else
|
|
20
|
+
exec node "$basedir/../eslint/bin/eslint.js" "$@"
|
|
21
|
+
fi
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
|
3
|
+
|
|
4
|
+
case `uname` in
|
|
5
|
+
*CYGWIN*|*MINGW*|*MSYS*)
|
|
6
|
+
if command -v cygpath > /dev/null 2>&1; then
|
|
7
|
+
basedir=`cygpath -w "$basedir"`
|
|
8
|
+
fi
|
|
9
|
+
;;
|
|
10
|
+
esac
|
|
11
|
+
|
|
12
|
+
if [ -z "$NODE_PATH" ]; then
|
|
13
|
+
export NODE_PATH="/home/benmclean/projects/stack-dev/node_modules/.pnpm/prettier@3.6.2/node_modules/prettier/bin/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/prettier@3.6.2/node_modules/prettier/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/prettier@3.6.2/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/node_modules"
|
|
14
|
+
else
|
|
15
|
+
export NODE_PATH="/home/benmclean/projects/stack-dev/node_modules/.pnpm/prettier@3.6.2/node_modules/prettier/bin/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/prettier@3.6.2/node_modules/prettier/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/prettier@3.6.2/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/node_modules:$NODE_PATH"
|
|
16
|
+
fi
|
|
17
|
+
if [ -x "$basedir/node" ]; then
|
|
18
|
+
exec "$basedir/node" "$basedir/../prettier/bin/prettier.cjs" "$@"
|
|
19
|
+
else
|
|
20
|
+
exec node "$basedir/../prettier/bin/prettier.cjs" "$@"
|
|
21
|
+
fi
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
|
3
|
+
|
|
4
|
+
case `uname` in
|
|
5
|
+
*CYGWIN*|*MINGW*|*MSYS*)
|
|
6
|
+
if command -v cygpath > /dev/null 2>&1; then
|
|
7
|
+
basedir=`cygpath -w "$basedir"`
|
|
8
|
+
fi
|
|
9
|
+
;;
|
|
10
|
+
esac
|
|
11
|
+
|
|
12
|
+
if [ -z "$NODE_PATH" ]; then
|
|
13
|
+
export NODE_PATH="/home/benmclean/projects/stack-dev/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/bin/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/typescript@5.8.3/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/node_modules"
|
|
14
|
+
else
|
|
15
|
+
export NODE_PATH="/home/benmclean/projects/stack-dev/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/bin/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/typescript@5.8.3/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/node_modules:$NODE_PATH"
|
|
16
|
+
fi
|
|
17
|
+
if [ -x "$basedir/node" ]; then
|
|
18
|
+
exec "$basedir/node" "$basedir/../typescript/bin/tsc" "$@"
|
|
19
|
+
else
|
|
20
|
+
exec node "$basedir/../typescript/bin/tsc" "$@"
|
|
21
|
+
fi
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
|
3
|
+
|
|
4
|
+
case `uname` in
|
|
5
|
+
*CYGWIN*|*MINGW*|*MSYS*)
|
|
6
|
+
if command -v cygpath > /dev/null 2>&1; then
|
|
7
|
+
basedir=`cygpath -w "$basedir"`
|
|
8
|
+
fi
|
|
9
|
+
;;
|
|
10
|
+
esac
|
|
11
|
+
|
|
12
|
+
if [ -z "$NODE_PATH" ]; then
|
|
13
|
+
export NODE_PATH="/home/benmclean/projects/stack-dev/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/bin/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/typescript@5.8.3/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/node_modules"
|
|
14
|
+
else
|
|
15
|
+
export NODE_PATH="/home/benmclean/projects/stack-dev/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/bin/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/typescript@5.8.3/node_modules/typescript/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/typescript@5.8.3/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/node_modules:$NODE_PATH"
|
|
16
|
+
fi
|
|
17
|
+
if [ -x "$basedir/node" ]; then
|
|
18
|
+
exec "$basedir/node" "$basedir/../typescript/bin/tsserver" "$@"
|
|
19
|
+
else
|
|
20
|
+
exec node "$basedir/../typescript/bin/tsserver" "$@"
|
|
21
|
+
fi
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
#!/bin/sh
|
|
2
|
+
basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
|
|
3
|
+
|
|
4
|
+
case `uname` in
|
|
5
|
+
*CYGWIN*|*MINGW*|*MSYS*)
|
|
6
|
+
if command -v cygpath > /dev/null 2>&1; then
|
|
7
|
+
basedir=`cygpath -w "$basedir"`
|
|
8
|
+
fi
|
|
9
|
+
;;
|
|
10
|
+
esac
|
|
11
|
+
|
|
12
|
+
if [ -z "$NODE_PATH" ]; then
|
|
13
|
+
export NODE_PATH="/home/benmclean/projects/stack-dev/node_modules/.pnpm/vite@5.4.21_@types+node@24.0.15/node_modules/vite/bin/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/vite@5.4.21_@types+node@24.0.15/node_modules/vite/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/vite@5.4.21_@types+node@24.0.15/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/node_modules"
|
|
14
|
+
else
|
|
15
|
+
export NODE_PATH="/home/benmclean/projects/stack-dev/node_modules/.pnpm/vite@5.4.21_@types+node@24.0.15/node_modules/vite/bin/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/vite@5.4.21_@types+node@24.0.15/node_modules/vite/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/vite@5.4.21_@types+node@24.0.15/node_modules:/home/benmclean/projects/stack-dev/node_modules/.pnpm/node_modules:$NODE_PATH"
|
|
16
|
+
fi
|
|
17
|
+
if [ -x "$basedir/node" ]; then
|
|
18
|
+
exec "$basedir/node" "$basedir/../vite/bin/vite.js" "$@"
|
|
19
|
+
else
|
|
20
|
+
exec node "$basedir/../vite/bin/vite.js" "$@"
|
|
21
|
+
fi
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hash": "8da73743",
|
|
3
|
+
"configHash": "a0fa381c",
|
|
4
|
+
"lockfileHash": "e2c64e92",
|
|
5
|
+
"browserHash": "b9d8cca0",
|
|
6
|
+
"optimized": {
|
|
7
|
+
"react": {
|
|
8
|
+
"src": "../../../../../node_modules/.pnpm/react@18.3.1/node_modules/react/index.js",
|
|
9
|
+
"file": "react.js",
|
|
10
|
+
"fileHash": "10c799b3",
|
|
11
|
+
"needsInterop": true
|
|
12
|
+
},
|
|
13
|
+
"react-dom": {
|
|
14
|
+
"src": "../../../../../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/index.js",
|
|
15
|
+
"file": "react-dom.js",
|
|
16
|
+
"fileHash": "3add3dbf",
|
|
17
|
+
"needsInterop": true
|
|
18
|
+
},
|
|
19
|
+
"react/jsx-dev-runtime": {
|
|
20
|
+
"src": "../../../../../node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-dev-runtime.js",
|
|
21
|
+
"file": "react_jsx-dev-runtime.js",
|
|
22
|
+
"fileHash": "a8c5a39f",
|
|
23
|
+
"needsInterop": true
|
|
24
|
+
},
|
|
25
|
+
"react/jsx-runtime": {
|
|
26
|
+
"src": "../../../../../node_modules/.pnpm/react@18.3.1/node_modules/react/jsx-runtime.js",
|
|
27
|
+
"file": "react_jsx-runtime.js",
|
|
28
|
+
"fileHash": "c4c2e0a3",
|
|
29
|
+
"needsInterop": true
|
|
30
|
+
},
|
|
31
|
+
"react-dom/client": {
|
|
32
|
+
"src": "../../../../../node_modules/.pnpm/react-dom@18.3.1_react@18.3.1/node_modules/react-dom/client.js",
|
|
33
|
+
"file": "react-dom_client.js",
|
|
34
|
+
"fileHash": "23edecd6",
|
|
35
|
+
"needsInterop": true
|
|
36
|
+
},
|
|
37
|
+
"styled-components": {
|
|
38
|
+
"src": "../../../../../node_modules/.pnpm/styled-components@6.1.19_react-dom@18.3.1_react@18.3.1__react@18.3.1/node_modules/styled-components/dist/styled-components.browser.esm.js",
|
|
39
|
+
"file": "styled-components.js",
|
|
40
|
+
"fileHash": "5ea42d34",
|
|
41
|
+
"needsInterop": false
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"chunks": {
|
|
45
|
+
"chunk-NEPDRNXC": {
|
|
46
|
+
"file": "chunk-NEPDRNXC.js"
|
|
47
|
+
},
|
|
48
|
+
"chunk-IGB2AZES": {
|
|
49
|
+
"file": "chunk-IGB2AZES.js"
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|