trix-ui 0.1.8 → 0.2.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/__tests__/__mocks__/cli-mocks.d.ts +1 -0
- package/dist/commands/add/__tests__/__mocks__/cli-mocks.js +21 -0
- package/dist/commands/add/__tests__/__mocks__/cli-mocks.js.map +1 -0
- package/dist/commands/add/__tests__/add.mocks.d.ts +19 -0
- package/dist/commands/add/__tests__/add.mocks.js +60 -0
- package/dist/commands/add/__tests__/add.mocks.js.map +1 -0
- package/dist/commands/add/__tests__/add.test.d.ts +2 -0
- package/dist/commands/add/__tests__/add.test.js +129 -0
- package/dist/commands/add/__tests__/add.test.js.map +1 -0
- package/dist/commands/add/command.js +12 -7
- package/dist/commands/add/command.js.map +1 -1
- package/dist/commands/add/project-files.js +5 -3
- package/dist/commands/add/project-files.js.map +1 -1
- package/dist/commands/add-collection.d.ts +1 -0
- package/dist/commands/add-collection.js +2 -0
- package/dist/commands/add-collection.js.map +1 -0
- package/dist/commands/add-section.js +162 -60
- package/dist/commands/add-section.js.map +1 -1
- package/dist/commands/add-wrapper.js +162 -60
- package/dist/commands/add-wrapper.js.map +1 -1
- package/dist/commands/init/command.js +6 -12
- package/dist/commands/init/command.js.map +1 -1
- package/dist/commands/init/tsconfig.d.ts +2 -0
- package/dist/commands/init/tsconfig.js +274 -0
- package/dist/commands/init/tsconfig.js.map +1 -0
- package/dist/commands/shared/add-collection.d.ts +49 -0
- package/dist/commands/shared/add-collection.js +210 -0
- package/dist/commands/shared/add-collection.js.map +1 -0
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/config.d.ts +9 -1
- package/dist/lib/config.js +3 -0
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/install.d.ts +1 -1
- package/dist/lib/install.js +4 -2
- package/dist/lib/install.js.map +1 -1
- package/dist/lib/logger.js +25 -5
- package/dist/lib/logger.js.map +1 -1
- package/dist/lib/paths.d.ts +2 -0
- package/dist/lib/paths.js +8 -2
- package/dist/lib/paths.js.map +1 -1
- package/dist/lib/registry.d.ts +7 -1
- package/dist/lib/registry.js +157 -11
- package/dist/lib/registry.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const exitSpy: import("vitest").Mock<(code?: number | string | null) => never>;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { vi } from "vitest";
|
|
2
|
+
export const exitSpy = vi
|
|
3
|
+
.spyOn(process, "exit")
|
|
4
|
+
// @ts-expect-error
|
|
5
|
+
.mockImplementation(() => undefined);
|
|
6
|
+
vi.mock("ora", () => ({
|
|
7
|
+
default: () => ({
|
|
8
|
+
start: vi.fn(),
|
|
9
|
+
succeed: vi.fn(),
|
|
10
|
+
fail: vi.fn(),
|
|
11
|
+
stop: vi.fn()
|
|
12
|
+
})
|
|
13
|
+
}));
|
|
14
|
+
vi.mock("../../../../lib/logger.js", () => ({
|
|
15
|
+
logger: {
|
|
16
|
+
info: vi.fn(),
|
|
17
|
+
warn: vi.fn(),
|
|
18
|
+
error: vi.fn()
|
|
19
|
+
}
|
|
20
|
+
}));
|
|
21
|
+
//# sourceMappingURL=cli-mocks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli-mocks.js","sourceRoot":"","sources":["../../../../../src/commands/add/__tests__/__mocks__/cli-mocks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE5B,MAAM,CAAC,MAAM,OAAO,GAAG,EAAE;KACtB,KAAK,CAAC,OAAO,EAAE,MAAM,CAAC;IACvB,mBAAmB;KAClB,kBAAkB,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;AAEvC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;IACpB,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;QACd,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;QACd,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE;QAChB,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;QACb,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;KACd,CAAC;CACH,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,MAAM,EAAE;QACN,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;QACb,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;QACb,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;KACf;CACF,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Mock } from "vitest";
|
|
2
|
+
export declare const directoryExists: Mock;
|
|
3
|
+
export declare const loadConfig: Mock;
|
|
4
|
+
export declare const loadLockfile: Mock;
|
|
5
|
+
export declare const saveLockfile: Mock;
|
|
6
|
+
export declare const loadRegistry: Mock;
|
|
7
|
+
export declare const getComponentNames: Mock;
|
|
8
|
+
export declare const analyzeDependencies: Mock;
|
|
9
|
+
export declare const ensureProjectFiles: Mock;
|
|
10
|
+
export declare const installComponents: Mock;
|
|
11
|
+
export declare const installNpmDependencies: Mock;
|
|
12
|
+
export declare const updateBarrelFile: Mock;
|
|
13
|
+
export declare const validateComponents: Mock;
|
|
14
|
+
export declare const confirmInstallation: Mock;
|
|
15
|
+
export declare const confirmOverwrite: Mock;
|
|
16
|
+
export declare const confirmDependencyInstallation: Mock;
|
|
17
|
+
export declare const displayInstallationPlan: Mock;
|
|
18
|
+
export declare const displayManualInstallInstructions: Mock;
|
|
19
|
+
export declare const displayResults: Mock;
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { vi } from "vitest";
|
|
2
|
+
export const directoryExists = vi.fn();
|
|
3
|
+
export const loadConfig = vi.fn();
|
|
4
|
+
export const loadLockfile = vi.fn();
|
|
5
|
+
export const saveLockfile = vi.fn();
|
|
6
|
+
export const loadRegistry = vi.fn();
|
|
7
|
+
export const getComponentNames = vi.fn();
|
|
8
|
+
export const analyzeDependencies = vi.fn();
|
|
9
|
+
export const ensureProjectFiles = vi.fn();
|
|
10
|
+
export const installComponents = vi.fn();
|
|
11
|
+
export const installNpmDependencies = vi.fn();
|
|
12
|
+
export const updateBarrelFile = vi.fn();
|
|
13
|
+
export const validateComponents = vi.fn();
|
|
14
|
+
export const confirmInstallation = vi.fn();
|
|
15
|
+
export const confirmOverwrite = vi.fn();
|
|
16
|
+
export const confirmDependencyInstallation = vi.fn();
|
|
17
|
+
export const displayInstallationPlan = vi.fn();
|
|
18
|
+
export const displayManualInstallInstructions = vi.fn();
|
|
19
|
+
export const displayResults = vi.fn();
|
|
20
|
+
vi.mock("../../../lib/fs.js", () => ({
|
|
21
|
+
directoryExists
|
|
22
|
+
}));
|
|
23
|
+
vi.mock("../../../lib/config.js", () => ({
|
|
24
|
+
loadConfig
|
|
25
|
+
}));
|
|
26
|
+
vi.mock("../../../lib/lockfile.js", () => ({
|
|
27
|
+
loadLockfile,
|
|
28
|
+
saveLockfile
|
|
29
|
+
}));
|
|
30
|
+
vi.mock("../../../lib/registry.js", () => ({
|
|
31
|
+
loadRegistry
|
|
32
|
+
}));
|
|
33
|
+
vi.mock("../registry.js", () => ({
|
|
34
|
+
getComponentNames
|
|
35
|
+
}));
|
|
36
|
+
vi.mock("../analysis.js", () => ({
|
|
37
|
+
analyzeDependencies
|
|
38
|
+
}));
|
|
39
|
+
vi.mock("../project-files.js", () => ({
|
|
40
|
+
ensureProjectFiles
|
|
41
|
+
}));
|
|
42
|
+
vi.mock("../install.js", () => ({
|
|
43
|
+
installComponents,
|
|
44
|
+
installNpmDependencies,
|
|
45
|
+
updateBarrelFile
|
|
46
|
+
}));
|
|
47
|
+
vi.mock("../validation.js", () => ({
|
|
48
|
+
validateComponents
|
|
49
|
+
}));
|
|
50
|
+
vi.mock("../prompts.js", () => ({
|
|
51
|
+
confirmInstallation,
|
|
52
|
+
confirmOverwrite,
|
|
53
|
+
confirmDependencyInstallation
|
|
54
|
+
}));
|
|
55
|
+
vi.mock("../ui.js", () => ({
|
|
56
|
+
displayInstallationPlan,
|
|
57
|
+
displayManualInstallInstructions,
|
|
58
|
+
displayResults
|
|
59
|
+
}));
|
|
60
|
+
//# sourceMappingURL=add.mocks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add.mocks.js","sourceRoot":"","sources":["../../../../src/commands/add/__tests__/add.mocks.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
import { describe, it, expect, vi, beforeEach } from "vitest";
|
|
2
|
+
import "./__mocks__/cli-mocks.js";
|
|
3
|
+
import "./add.mocks.js";
|
|
4
|
+
import { addCommand } from "../../add.js";
|
|
5
|
+
import { analyzeDependencies, directoryExists, getComponentNames, installComponents, loadConfig, loadLockfile, loadRegistry, validateComponents } from "./add.mocks.js";
|
|
6
|
+
describe("add command", () => {
|
|
7
|
+
beforeEach(() => {
|
|
8
|
+
vi.resetAllMocks();
|
|
9
|
+
});
|
|
10
|
+
it("exits if directory does not exist", async () => {
|
|
11
|
+
directoryExists.mockResolvedValue(false);
|
|
12
|
+
await addCommand.parseAsync(["node", "cli", "add", "button"]);
|
|
13
|
+
expect(process.exit).toHaveBeenCalledWith(1);
|
|
14
|
+
});
|
|
15
|
+
it("exits if component does not exist", async () => {
|
|
16
|
+
directoryExists.mockResolvedValue(true);
|
|
17
|
+
loadConfig.mockResolvedValue({});
|
|
18
|
+
loadRegistry.mockResolvedValue({});
|
|
19
|
+
loadLockfile.mockResolvedValue({});
|
|
20
|
+
validateComponents.mockReturnValue({
|
|
21
|
+
valid: [],
|
|
22
|
+
invalid: ["button"],
|
|
23
|
+
suggestions: []
|
|
24
|
+
});
|
|
25
|
+
await addCommand.parseAsync(["node", "cli", "add", "button"]);
|
|
26
|
+
expect(process.exit).toHaveBeenCalledWith(1);
|
|
27
|
+
});
|
|
28
|
+
it("installs a valid component successfully", async () => {
|
|
29
|
+
directoryExists.mockResolvedValue(true);
|
|
30
|
+
loadConfig.mockResolvedValue({ barrel: false });
|
|
31
|
+
loadRegistry.mockResolvedValue({});
|
|
32
|
+
loadLockfile.mockResolvedValue({});
|
|
33
|
+
validateComponents.mockReturnValue({
|
|
34
|
+
valid: ["button"],
|
|
35
|
+
invalid: [],
|
|
36
|
+
suggestions: []
|
|
37
|
+
});
|
|
38
|
+
analyzeDependencies.mockReturnValue({
|
|
39
|
+
components: ["button"],
|
|
40
|
+
conflicts: [],
|
|
41
|
+
totalToInstall: 1
|
|
42
|
+
});
|
|
43
|
+
installComponents.mockResolvedValue({
|
|
44
|
+
installed: ["button"],
|
|
45
|
+
failed: [],
|
|
46
|
+
npmDependencies: new Set()
|
|
47
|
+
});
|
|
48
|
+
await addCommand.parseAsync(["node", "cli", "add", "button", "--yes"]);
|
|
49
|
+
expect(installComponents).toHaveBeenCalled();
|
|
50
|
+
});
|
|
51
|
+
it("installs all components when 'all' is used", async () => {
|
|
52
|
+
directoryExists.mockResolvedValue(true);
|
|
53
|
+
loadConfig.mockResolvedValue({});
|
|
54
|
+
loadRegistry.mockResolvedValue({});
|
|
55
|
+
loadLockfile.mockResolvedValue({});
|
|
56
|
+
getComponentNames.mockReturnValue(["button", "card"]);
|
|
57
|
+
validateComponents.mockReturnValue({
|
|
58
|
+
valid: ["button", "card"],
|
|
59
|
+
invalid: [],
|
|
60
|
+
suggestions: []
|
|
61
|
+
});
|
|
62
|
+
analyzeDependencies.mockReturnValue({
|
|
63
|
+
components: ["button", "card"],
|
|
64
|
+
conflicts: [],
|
|
65
|
+
totalToInstall: 2
|
|
66
|
+
});
|
|
67
|
+
installComponents.mockResolvedValue({
|
|
68
|
+
installed: ["button", "card"],
|
|
69
|
+
failed: [],
|
|
70
|
+
npmDependencies: new Set()
|
|
71
|
+
});
|
|
72
|
+
await addCommand.parseAsync(["node", "cli", "add", "all", "--yes"]);
|
|
73
|
+
expect(installComponents).toHaveBeenCalled();
|
|
74
|
+
});
|
|
75
|
+
it("forces overwrite when --force is passed", async () => {
|
|
76
|
+
directoryExists.mockResolvedValue(true);
|
|
77
|
+
loadConfig.mockResolvedValue({});
|
|
78
|
+
loadRegistry.mockResolvedValue({});
|
|
79
|
+
loadLockfile.mockResolvedValue({});
|
|
80
|
+
validateComponents.mockReturnValue({
|
|
81
|
+
valid: ["button"],
|
|
82
|
+
invalid: [],
|
|
83
|
+
suggestions: []
|
|
84
|
+
});
|
|
85
|
+
analyzeDependencies.mockReturnValue({
|
|
86
|
+
components: ["button"],
|
|
87
|
+
conflicts: ["button"],
|
|
88
|
+
totalToInstall: 0
|
|
89
|
+
});
|
|
90
|
+
installComponents.mockResolvedValue({
|
|
91
|
+
installed: ["button"],
|
|
92
|
+
failed: [],
|
|
93
|
+
npmDependencies: new Set()
|
|
94
|
+
});
|
|
95
|
+
await addCommand.parseAsync([
|
|
96
|
+
"node",
|
|
97
|
+
"cli",
|
|
98
|
+
"add",
|
|
99
|
+
"button",
|
|
100
|
+
"--force",
|
|
101
|
+
"--yes"
|
|
102
|
+
]);
|
|
103
|
+
expect(installComponents).toHaveBeenCalled();
|
|
104
|
+
});
|
|
105
|
+
it("exits with failure if install fails", async () => {
|
|
106
|
+
directoryExists.mockResolvedValue(true);
|
|
107
|
+
loadConfig.mockResolvedValue({});
|
|
108
|
+
loadRegistry.mockResolvedValue({});
|
|
109
|
+
loadLockfile.mockResolvedValue({});
|
|
110
|
+
validateComponents.mockReturnValue({
|
|
111
|
+
valid: ["button"],
|
|
112
|
+
invalid: [],
|
|
113
|
+
suggestions: []
|
|
114
|
+
});
|
|
115
|
+
analyzeDependencies.mockReturnValue({
|
|
116
|
+
components: ["button"],
|
|
117
|
+
conflicts: [],
|
|
118
|
+
totalToInstall: 1
|
|
119
|
+
});
|
|
120
|
+
installComponents.mockResolvedValue({
|
|
121
|
+
installed: [],
|
|
122
|
+
failed: ["button"],
|
|
123
|
+
npmDependencies: new Set()
|
|
124
|
+
});
|
|
125
|
+
await addCommand.parseAsync(["node", "cli", "add", "button", "--yes"]);
|
|
126
|
+
expect(process.exit).toHaveBeenCalledWith(1);
|
|
127
|
+
});
|
|
128
|
+
});
|
|
129
|
+
//# sourceMappingURL=add.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add.test.js","sourceRoot":"","sources":["../../../../src/commands/add/__tests__/add.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
|
-
import { Command } from "commander";
|
|
3
2
|
import chalk from "chalk";
|
|
3
|
+
import { Command } from "commander";
|
|
4
4
|
import ora from "ora";
|
|
5
5
|
import { loadConfig } from "../../lib/config.js";
|
|
6
6
|
import { directoryExists } from "../../lib/fs.js";
|
|
7
7
|
import { loadLockfile, saveLockfile } from "../../lib/lockfile.js";
|
|
8
|
-
import { loadRegistry } from "../../lib/registry.js";
|
|
9
8
|
import { logger } from "../../lib/logger.js";
|
|
9
|
+
import { loadRegistry } from "../../lib/registry.js";
|
|
10
10
|
import { analyzeDependencies } from "./analysis.js";
|
|
11
|
+
import { installComponents, installNpmDependencies, updateBarrelFile, } from "./install.js";
|
|
11
12
|
import { ensureProjectFiles } from "./project-files.js";
|
|
12
|
-
import { confirmDependencyInstallation, confirmInstallation, confirmOverwrite } from "./prompts.js";
|
|
13
|
-
import { installComponents, installNpmDependencies, updateBarrelFile } from "./install.js";
|
|
13
|
+
import { confirmDependencyInstallation, confirmInstallation, confirmOverwrite, } from "./prompts.js";
|
|
14
14
|
import { getComponentNames } from "./registry.js";
|
|
15
|
-
import { displayInstallationPlan, displayManualInstallInstructions, displayResults } from "./ui.js";
|
|
15
|
+
import { displayInstallationPlan, displayManualInstallInstructions, displayResults, } from "./ui.js";
|
|
16
16
|
import { validateComponents } from "./validation.js";
|
|
17
17
|
function normalizeComponents(components) {
|
|
18
18
|
const unique = new Set();
|
|
@@ -89,6 +89,7 @@ export const addCommand = new Command("add")
|
|
|
89
89
|
validation.suggestions.forEach((suggestion) => console.log(chalk.gray(` \u0007 ${suggestion}`)));
|
|
90
90
|
}
|
|
91
91
|
process.exit(1);
|
|
92
|
+
return;
|
|
92
93
|
}
|
|
93
94
|
spinner?.start("Analyzing dependencies...");
|
|
94
95
|
const analysis = analyzeDependencies(validation.valid, registry, lockfile);
|
|
@@ -110,6 +111,7 @@ export const addCommand = new Command("add")
|
|
|
110
111
|
if (!shouldOverwrite) {
|
|
111
112
|
logger.info("Installation cancelled");
|
|
112
113
|
process.exit(0);
|
|
114
|
+
return;
|
|
113
115
|
}
|
|
114
116
|
forceInstall = true;
|
|
115
117
|
}
|
|
@@ -122,6 +124,7 @@ export const addCommand = new Command("add")
|
|
|
122
124
|
if (!shouldInstall) {
|
|
123
125
|
logger.info("Installation cancelled");
|
|
124
126
|
process.exit(0);
|
|
127
|
+
return;
|
|
125
128
|
}
|
|
126
129
|
}
|
|
127
130
|
spinner?.start("Verifying project setup...");
|
|
@@ -136,7 +139,7 @@ export const addCommand = new Command("add")
|
|
|
136
139
|
components: analysis.components,
|
|
137
140
|
conflicts: analysis.conflicts,
|
|
138
141
|
force: forceInstall,
|
|
139
|
-
spinner
|
|
142
|
+
spinner,
|
|
140
143
|
});
|
|
141
144
|
const installedMessage = `Installed ${result.installed.length} component${result.installed.length !== 1 ? "s" : ""}`;
|
|
142
145
|
if (result.failed.length > 0) {
|
|
@@ -161,7 +164,7 @@ export const addCommand = new Command("add")
|
|
|
161
164
|
await installNpmDependencies({
|
|
162
165
|
cwd,
|
|
163
166
|
dependencies: result.npmDependencies,
|
|
164
|
-
spinner
|
|
167
|
+
spinner,
|
|
165
168
|
});
|
|
166
169
|
}
|
|
167
170
|
else {
|
|
@@ -178,6 +181,7 @@ export const addCommand = new Command("add")
|
|
|
178
181
|
}
|
|
179
182
|
if (result.failed.length > 0) {
|
|
180
183
|
process.exit(1);
|
|
184
|
+
return;
|
|
181
185
|
}
|
|
182
186
|
}
|
|
183
187
|
catch (error) {
|
|
@@ -187,6 +191,7 @@ export const addCommand = new Command("add")
|
|
|
187
191
|
console.error(error);
|
|
188
192
|
}
|
|
189
193
|
process.exit(1);
|
|
194
|
+
return;
|
|
190
195
|
}
|
|
191
196
|
});
|
|
192
197
|
//# sourceMappingURL=command.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/commands/add/command.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,
|
|
1
|
+
{"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/commands/add/command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
2
|
import { copyFileSafe, fileExists } from "../../lib/fs.js";
|
|
3
|
-
import {
|
|
3
|
+
import { resolveTemplatePath } from "../../lib/paths.js";
|
|
4
|
+
import { resolveRegistrySource } from "../../lib/registry.js";
|
|
4
5
|
import { inferScriptExtension } from "./config.js";
|
|
5
6
|
export async function ensureProjectFiles(cwd, config) {
|
|
7
|
+
const { templatesPath } = resolveRegistrySource(config, cwd);
|
|
6
8
|
const utilsPath = path.resolve(cwd, config.paths.utils);
|
|
7
9
|
if (!(await fileExists(utilsPath))) {
|
|
8
10
|
const ext = inferScriptExtension(config);
|
|
9
|
-
await copyFileSafe(
|
|
11
|
+
await copyFileSafe(resolveTemplatePath(`lib/utils.${ext}`, templatesPath), utilsPath, true);
|
|
10
12
|
}
|
|
11
13
|
const stylesPath = path.resolve(cwd, config.paths.styles);
|
|
12
14
|
if (!(await fileExists(stylesPath))) {
|
|
13
|
-
await copyFileSafe(
|
|
15
|
+
await copyFileSafe(resolveTemplatePath("styles/globals.css", templatesPath), stylesPath, true);
|
|
14
16
|
}
|
|
15
17
|
}
|
|
16
18
|
//# sourceMappingURL=project-files.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-files.js","sourceRoot":"","sources":["../../../src/commands/add/project-files.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"project-files.js","sourceRoot":"","sources":["../../../src/commands/add/project-files.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAA;AAE5B,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAE7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAElD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,GAAW,EACX,MAAiB;IAEjB,MAAM,EAAE,aAAa,EAAE,GAAG,qBAAqB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;IAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACvD,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QACnC,MAAM,GAAG,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;QACxC,MAAM,YAAY,CAChB,mBAAmB,CAAC,aAAa,GAAG,EAAE,EAAE,aAAa,CAAC,EACtD,SAAS,EACT,IAAI,CACL,CAAA;IACH,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IACzD,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;QACpC,MAAM,YAAY,CAChB,mBAAmB,CAAC,oBAAoB,EAAE,aAAa,CAAC,EACxD,UAAU,EACV,IAAI,CACL,CAAA;IACH,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./shared/add-collection.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"add-collection.js","sourceRoot":"","sources":["../../src/commands/add-collection.ts"],"names":[],"mappings":"AAAA,cAAc,4BAA4B,CAAA"}
|