@rpamis/comet 0.3.3 → 0.3.5
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/README.md +88 -68
- package/assets/skills/comet/SKILL.md +21 -10
- package/assets/skills/comet/scripts/comet-state.sh +171 -2
- package/assets/skills/comet-build/SKILL.md +8 -6
- package/assets/skills/comet-design/SKILL.md +14 -2
- package/assets/skills/comet-hotfix/SKILL.md +2 -2
- package/assets/skills/comet-open/SKILL.md +25 -1
- package/assets/skills/comet-tweak/SKILL.md +2 -2
- package/assets/skills/comet-verify/SKILL.md +18 -4
- package/assets/skills-zh/comet/SKILL.md +21 -10
- package/assets/skills-zh/comet-build/SKILL.md +8 -6
- package/assets/skills-zh/comet-design/SKILL.md +14 -2
- package/assets/skills-zh/comet-hotfix/SKILL.md +2 -2
- package/assets/skills-zh/comet-open/SKILL.md +25 -1
- package/assets/skills-zh/comet-tweak/SKILL.md +2 -2
- package/assets/skills-zh/comet-verify/SKILL.md +18 -4
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +18 -7
- package/dist/commands/doctor.js.map +1 -1
- package/dist/core/openspec.d.ts +7 -3
- package/dist/core/openspec.d.ts.map +1 -1
- package/dist/core/openspec.js +74 -17
- package/dist/core/openspec.js.map +1 -1
- package/dist/core/superpowers.d.ts +8 -2
- package/dist/core/superpowers.d.ts.map +1 -1
- package/dist/core/superpowers.js +25 -12
- package/dist/core/superpowers.js.map +1 -1
- package/dist/utils/file-system.d.ts.map +1 -1
- package/dist/utils/file-system.js +6 -2
- package/dist/utils/file-system.js.map +1 -1
- package/package.json +1 -1
package/dist/core/openspec.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { execFileSync } from 'child_process';
|
|
2
2
|
import fs from 'fs';
|
|
3
3
|
import os from 'os';
|
|
4
4
|
import path from 'path';
|
|
@@ -18,15 +18,15 @@ const ALL_OPENSPEC_WORKFLOWS = [
|
|
|
18
18
|
'verify',
|
|
19
19
|
'onboard',
|
|
20
20
|
];
|
|
21
|
-
function
|
|
22
|
-
|
|
23
|
-
return `"${value.replace(/"/g, '\\"').replace(/\\+$/, (match) => match + match)}"`;
|
|
24
|
-
}
|
|
25
|
-
return `'${value.replace(/'/g, `'\\''`)}'`;
|
|
21
|
+
function getNpmExecutable(platform = process.platform) {
|
|
22
|
+
return platform === 'win32' ? 'npm.cmd' : 'npm';
|
|
26
23
|
}
|
|
27
|
-
function
|
|
24
|
+
function buildOpenSpecInitInvocation(projectPath, toolIds, scope, homeDir = os.homedir()) {
|
|
28
25
|
const targetPath = scope === 'global' ? homeDir : projectPath;
|
|
29
|
-
return
|
|
26
|
+
return {
|
|
27
|
+
command: 'openspec',
|
|
28
|
+
args: ['init', targetPath, '--tools', toolIds.join(','), '--profile', 'custom'],
|
|
29
|
+
};
|
|
30
30
|
}
|
|
31
31
|
const ALL_WORKFLOWS_CONFIG = JSON.stringify({
|
|
32
32
|
featureFlags: {},
|
|
@@ -119,8 +119,8 @@ function restoreDefaultConfig(backup) {
|
|
|
119
119
|
}
|
|
120
120
|
function isCommandAvailable(command) {
|
|
121
121
|
try {
|
|
122
|
-
const
|
|
123
|
-
|
|
122
|
+
const checker = process.platform === 'win32' ? 'where' : 'which';
|
|
123
|
+
execFileSync(checker, [command], { stdio: 'ignore', timeout: 10_000 });
|
|
124
124
|
return true;
|
|
125
125
|
}
|
|
126
126
|
catch {
|
|
@@ -133,10 +133,15 @@ async function ensureOpenSpecCli(scope, projectPath) {
|
|
|
133
133
|
}
|
|
134
134
|
console.log(` Installing OpenSpec CLI...`);
|
|
135
135
|
try {
|
|
136
|
-
const
|
|
137
|
-
? '
|
|
138
|
-
: '
|
|
139
|
-
|
|
136
|
+
const npmArgs = scope === 'global'
|
|
137
|
+
? ['install', '-g', '@fission-ai/openspec@latest']
|
|
138
|
+
: ['install', '@fission-ai/openspec@latest'];
|
|
139
|
+
execFileSync(getNpmExecutable(), npmArgs, {
|
|
140
|
+
cwd: projectPath,
|
|
141
|
+
stdio: 'inherit',
|
|
142
|
+
timeout: 120_000,
|
|
143
|
+
shell: process.platform === 'win32',
|
|
144
|
+
});
|
|
140
145
|
return isCommandAvailable('openspec');
|
|
141
146
|
}
|
|
142
147
|
catch (error) {
|
|
@@ -145,6 +150,53 @@ async function ensureOpenSpecCli(scope, projectPath) {
|
|
|
145
150
|
return false;
|
|
146
151
|
}
|
|
147
152
|
}
|
|
153
|
+
function migrateOpenCodeOpenSpecPaths(homeDir) {
|
|
154
|
+
const opencodePlatform = PLATFORMS.find((p) => p.id === 'opencode');
|
|
155
|
+
if (!opencodePlatform?.globalSkillsDir)
|
|
156
|
+
return;
|
|
157
|
+
// OpenSpec hardcodes skillsDir as '.opencode' in its AI_TOOLS, so it writes
|
|
158
|
+
// to ~/.opencode/ even for global installs. OpenCode actually reads from
|
|
159
|
+
// ~/.config/opencode/ (Comet's globalSkillsDir). Move the files over.
|
|
160
|
+
const wrongDir = path.join(homeDir, opencodePlatform.skillsDir);
|
|
161
|
+
const correctDir = path.join(homeDir, opencodePlatform.globalSkillsDir);
|
|
162
|
+
const migrations = [
|
|
163
|
+
[path.join(wrongDir, 'skills'), path.join(correctDir, 'skills'), 'skills'],
|
|
164
|
+
[path.join(wrongDir, 'commands'), path.join(correctDir, 'commands'), 'commands'],
|
|
165
|
+
];
|
|
166
|
+
for (const [srcDir, destDir, label] of migrations) {
|
|
167
|
+
if (srcDir === destDir)
|
|
168
|
+
continue;
|
|
169
|
+
if (!fs.existsSync(srcDir))
|
|
170
|
+
continue;
|
|
171
|
+
try {
|
|
172
|
+
const entries = fs.readdirSync(srcDir);
|
|
173
|
+
if (entries.length === 0)
|
|
174
|
+
continue;
|
|
175
|
+
fs.mkdirSync(destDir, { recursive: true });
|
|
176
|
+
for (const entry of entries) {
|
|
177
|
+
const srcPath = path.join(srcDir, entry);
|
|
178
|
+
const destPath = path.join(destDir, entry);
|
|
179
|
+
fs.cpSync(srcPath, destPath, { recursive: true, force: true });
|
|
180
|
+
}
|
|
181
|
+
fs.rmSync(srcDir, { recursive: true, force: true });
|
|
182
|
+
}
|
|
183
|
+
catch (error) {
|
|
184
|
+
console.error(` Warning: failed to migrate OpenSpec ${label} from ${srcDir} to ${destDir}: ${error.message}`);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
// Remove wrong parent directory if both skills and commands have been migrated
|
|
188
|
+
if (fs.existsSync(wrongDir)) {
|
|
189
|
+
try {
|
|
190
|
+
const remaining = fs.readdirSync(wrongDir);
|
|
191
|
+
if (remaining.length === 0) {
|
|
192
|
+
fs.rmdirSync(wrongDir);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
catch {
|
|
196
|
+
// Best-effort cleanup
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
}
|
|
148
200
|
async function installOpenSpec(projectPath, toolIds, scope) {
|
|
149
201
|
const cliReady = await ensureOpenSpecCli(scope, projectPath);
|
|
150
202
|
if (!cliReady) {
|
|
@@ -159,14 +211,19 @@ async function installOpenSpec(projectPath, toolIds, scope) {
|
|
|
159
211
|
let configBackup = null;
|
|
160
212
|
try {
|
|
161
213
|
const openspecEnv = createOpenSpecAllWorkflowsEnv();
|
|
214
|
+
const invocation = buildOpenSpecInitInvocation(projectPath, toolIds, scope);
|
|
162
215
|
configHome = openspecEnv.configHome;
|
|
163
216
|
configBackup = writeAllWorkflowsToDefaultConfig();
|
|
164
|
-
|
|
217
|
+
execFileSync(invocation.command, invocation.args, {
|
|
165
218
|
cwd: projectPath,
|
|
166
219
|
env: openspecEnv.env,
|
|
167
|
-
stdio: '
|
|
220
|
+
stdio: 'inherit',
|
|
168
221
|
timeout: 120_000,
|
|
222
|
+
shell: process.platform === 'win32',
|
|
169
223
|
});
|
|
224
|
+
if (scope === 'global' && toolIds.includes('opencode')) {
|
|
225
|
+
migrateOpenCodeOpenSpecPaths(os.homedir());
|
|
226
|
+
}
|
|
170
227
|
return 'installed';
|
|
171
228
|
}
|
|
172
229
|
catch (error) {
|
|
@@ -181,5 +238,5 @@ async function installOpenSpec(projectPath, toolIds, scope) {
|
|
|
181
238
|
}
|
|
182
239
|
}
|
|
183
240
|
}
|
|
184
|
-
export { installOpenSpec, isCommandAvailable,
|
|
241
|
+
export { installOpenSpec, isCommandAvailable, buildOpenSpecInitInvocation, getNpmExecutable, migrateOpenCodeOpenSpecPaths, };
|
|
185
242
|
//# sourceMappingURL=openspec.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openspec.js","sourceRoot":"","sources":["../../src/core/openspec.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"openspec.js","sourceRoot":"","sources":["../../src/core/openspec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
import type { InstallScope } from './types.js';
|
|
2
2
|
declare const SKILLS_AGENT_MAP: Record<string, string | null>;
|
|
3
|
-
declare function buildSuperpowersInstallCommand(_projectPath: string, scope: InstallScope, platformIds: string[]
|
|
4
|
-
|
|
3
|
+
declare function buildSuperpowersInstallCommand(_projectPath: string, scope: InstallScope, platformIds: string[]): {
|
|
4
|
+
command: string;
|
|
5
|
+
args: string[];
|
|
6
|
+
};
|
|
7
|
+
declare function buildLingmaSuperpowersStageCommand(): {
|
|
8
|
+
command: string;
|
|
9
|
+
args: string[];
|
|
10
|
+
};
|
|
5
11
|
declare function installSuperpowersForPlatforms(projectPath: string, scope: InstallScope, platformIds: string[]): Promise<'installed' | 'failed' | 'skipped'>;
|
|
6
12
|
export { installSuperpowersForPlatforms, buildSuperpowersInstallCommand, buildLingmaSuperpowersStageCommand, SKILLS_AGENT_MAP, };
|
|
7
13
|
//# sourceMappingURL=superpowers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"superpowers.d.ts","sourceRoot":"","sources":["../../src/core/superpowers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"superpowers.d.ts","sourceRoot":"","sources":["../../src/core/superpowers.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,QAAA,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CA6BnD,CAAC;AAOF,iBAAS,8BAA8B,CACrC,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,YAAY,EACnB,WAAW,EAAE,MAAM,EAAE,GACpB;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAwBrC;AAED,iBAAS,kCAAkC,IAAI;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAKjF;AAwDD,iBAAe,8BAA8B,CAC3C,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,YAAY,EACnB,WAAW,EAAE,MAAM,EAAE,GACpB,OAAO,CAAC,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC,CAiC7C;AAED,OAAO,EACL,8BAA8B,EAC9B,8BAA8B,EAC9B,kCAAkC,EAClC,gBAAgB,GACjB,CAAC"}
|
package/dist/core/superpowers.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { execFileSync } from 'child_process';
|
|
2
2
|
import os from 'os';
|
|
3
3
|
import path from 'path';
|
|
4
4
|
import { cp, mkdir, mkdtemp, readdir, rm } from 'fs/promises';
|
|
5
5
|
import { printCommandErrorDetails } from './command-error.js';
|
|
6
|
-
import { quoteShellArg } from './openspec.js';
|
|
7
6
|
import { getPlatformSkillsDir, PLATFORMS } from './platforms.js';
|
|
8
7
|
const SKILLS_AGENT_MAP = {
|
|
9
8
|
claude: 'claude-code',
|
|
@@ -39,7 +38,7 @@ const VALID_PLATFORM_IDS = new Set(Object.keys(SKILLS_AGENT_MAP));
|
|
|
39
38
|
const SUPERPOWERS_INSTALL_TIMEOUT_MS = 300_000;
|
|
40
39
|
const LINGMA_PLATFORM_ID = 'lingma';
|
|
41
40
|
const LINGMA_STAGE_AGENT = 'claude-code';
|
|
42
|
-
function buildSuperpowersInstallCommand(_projectPath, scope, platformIds
|
|
41
|
+
function buildSuperpowersInstallCommand(_projectPath, scope, platformIds) {
|
|
43
42
|
const unknownIds = platformIds.filter((id) => !VALID_PLATFORM_IDS.has(id));
|
|
44
43
|
if (unknownIds.length > 0) {
|
|
45
44
|
throw new Error(`Unknown platform IDs: ${unknownIds.join(', ')}`);
|
|
@@ -50,12 +49,23 @@ function buildSuperpowersInstallCommand(_projectPath, scope, platformIds, platfo
|
|
|
50
49
|
if (agentNames.length === 0) {
|
|
51
50
|
throw new Error(`No skills CLI agent names resolved for platforms: ${platformIds.join(', ')}`);
|
|
52
51
|
}
|
|
53
|
-
const
|
|
54
|
-
|
|
55
|
-
|
|
52
|
+
const args = ['skills', 'add', 'obra/superpowers', '-y'];
|
|
53
|
+
if (scope === 'global') {
|
|
54
|
+
args.push('-g');
|
|
55
|
+
}
|
|
56
|
+
for (const name of agentNames) {
|
|
57
|
+
args.push('--agent', name);
|
|
58
|
+
}
|
|
59
|
+
return { command: getNpxExecutable(), args };
|
|
60
|
+
}
|
|
61
|
+
function buildLingmaSuperpowersStageCommand() {
|
|
62
|
+
return {
|
|
63
|
+
command: getNpxExecutable(),
|
|
64
|
+
args: ['skills', 'add', 'obra/superpowers', '-y', '--agent', LINGMA_STAGE_AGENT],
|
|
65
|
+
};
|
|
56
66
|
}
|
|
57
|
-
function
|
|
58
|
-
return
|
|
67
|
+
function getNpxExecutable(platform = process.platform) {
|
|
68
|
+
return platform === 'win32' ? 'npx.cmd' : 'npx';
|
|
59
69
|
}
|
|
60
70
|
async function copyDirectoryContents(srcDir, destDir) {
|
|
61
71
|
await mkdir(destDir, { recursive: true });
|
|
@@ -76,10 +86,12 @@ async function installSuperpowersForLingma(projectPath, scope) {
|
|
|
76
86
|
}
|
|
77
87
|
const tempDir = await mkdtemp(path.join(os.tmpdir(), 'comet-lingma-superpowers-'));
|
|
78
88
|
try {
|
|
79
|
-
|
|
89
|
+
const stageCommand = buildLingmaSuperpowersStageCommand();
|
|
90
|
+
execFileSync(stageCommand.command, stageCommand.args, {
|
|
80
91
|
cwd: tempDir,
|
|
81
|
-
stdio: '
|
|
92
|
+
stdio: 'inherit',
|
|
82
93
|
timeout: SUPERPOWERS_INSTALL_TIMEOUT_MS,
|
|
94
|
+
shell: process.platform === 'win32',
|
|
83
95
|
});
|
|
84
96
|
const stagedSkillsDir = path.join(tempDir, '.claude', 'skills');
|
|
85
97
|
const baseDir = scope === 'global' ? os.homedir() : projectPath;
|
|
@@ -107,10 +119,11 @@ async function installSuperpowersForPlatforms(projectPath, scope, platformIds) {
|
|
|
107
119
|
if (skillsCliPlatformIds.length > 0) {
|
|
108
120
|
const command = buildSuperpowersInstallCommand(projectPath, scope, skillsCliPlatformIds);
|
|
109
121
|
try {
|
|
110
|
-
|
|
122
|
+
execFileSync(command.command, command.args, {
|
|
111
123
|
cwd: projectPath,
|
|
112
|
-
stdio: '
|
|
124
|
+
stdio: 'inherit',
|
|
113
125
|
timeout: SUPERPOWERS_INSTALL_TIMEOUT_MS,
|
|
126
|
+
shell: process.platform === 'win32',
|
|
114
127
|
});
|
|
115
128
|
}
|
|
116
129
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"superpowers.js","sourceRoot":"","sources":["../../src/core/superpowers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"superpowers.js","sourceRoot":"","sources":["../../src/core/superpowers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-system.d.ts","sourceRoot":"","sources":["../../src/utils/file-system.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE1D;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGvE;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAOnE;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAGxE;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhF;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,
|
|
1
|
+
{"version":3,"file":"file-system.d.ts","sourceRoot":"","sources":["../../src/utils/file-system.ts"],"names":[],"mappings":"AAGA;;GAEG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE1D;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGvE;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAOnE;AAED;;GAEG;AACH,wBAAsB,QAAQ,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAGxE;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGhF;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAWhE"}
|
|
@@ -46,8 +46,12 @@ export async function readDir(dirPath) {
|
|
|
46
46
|
try {
|
|
47
47
|
return await fs.readdir(dirPath);
|
|
48
48
|
}
|
|
49
|
-
catch {
|
|
50
|
-
|
|
49
|
+
catch (error) {
|
|
50
|
+
const code = error?.code;
|
|
51
|
+
if (code === 'ENOENT' || code === 'ENOTDIR') {
|
|
52
|
+
return [];
|
|
53
|
+
}
|
|
54
|
+
throw error;
|
|
51
55
|
}
|
|
52
56
|
}
|
|
53
57
|
//# sourceMappingURL=file-system.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file-system.js","sourceRoot":"","sources":["../../src/utils/file-system.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW;IACzC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,GAAW,EAAE,IAAY;IACtD,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACpC,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,QAAgB;IAC/C,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAc,QAAgB;IAC1D,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACrD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAM,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,QAAgB,EAAE,OAAe;IAC/D,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxC,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAAe;IAC3C,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"file-system.js","sourceRoot":"","sources":["../../src/utils/file-system.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,GAAW;IACzC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;AAC3C,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,GAAW,EAAE,IAAY;IACtD,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IACpC,MAAM,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,QAAgB;IAC/C,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAc,QAAgB;IAC1D,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACrD,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAM,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,QAAgB,EAAE,OAAe;IAC/D,MAAM,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IACxC,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAAe;IAC3C,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,GAAI,KAA+B,EAAE,IAAI,CAAC;QACpD,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YAC5C,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|