@sharpee/devkit 1.0.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/cli.d.ts +3 -0
- package/cli.d.ts.map +1 -0
- package/cli.js +219 -0
- package/cli.js.map +1 -0
- package/commands/browser.d.ts +10 -0
- package/commands/browser.d.ts.map +1 -0
- package/commands/browser.js +107 -0
- package/commands/browser.js.map +1 -0
- package/commands/build.d.ts +38 -0
- package/commands/build.d.ts.map +1 -0
- package/commands/build.js +165 -0
- package/commands/build.js.map +1 -0
- package/commands/bundle.d.ts +9 -0
- package/commands/bundle.d.ts.map +1 -0
- package/commands/bundle.js +46 -0
- package/commands/bundle.js.map +1 -0
- package/commands/clean.d.ts +7 -0
- package/commands/clean.d.ts.map +1 -0
- package/commands/clean.js +31 -0
- package/commands/clean.js.map +1 -0
- package/commands/register.d.ts +5 -0
- package/commands/register.d.ts.map +1 -0
- package/commands/register.js +45 -0
- package/commands/register.js.map +1 -0
- package/commands/test-npm.d.ts +34 -0
- package/commands/test-npm.d.ts.map +1 -0
- package/commands/test-npm.js +155 -0
- package/commands/test-npm.js.map +1 -0
- package/commands/verify.d.ts +7 -0
- package/commands/verify.d.ts.map +1 -0
- package/commands/verify.js +27 -0
- package/commands/verify.js.map +1 -0
- package/commands/zifmia.d.ts +10 -0
- package/commands/zifmia.d.ts.map +1 -0
- package/commands/zifmia.js +56 -0
- package/commands/zifmia.js.map +1 -0
- package/consumer-gen.d.ts +49 -0
- package/consumer-gen.d.ts.map +1 -0
- package/consumer-gen.js +137 -0
- package/consumer-gen.js.map +1 -0
- package/index.d.ts +29 -0
- package/index.d.ts.map +1 -0
- package/index.js +55 -0
- package/index.js.map +1 -0
- package/package.json +42 -0
- package/registry.d.ts +33 -0
- package/registry.d.ts.map +1 -0
- package/registry.js +81 -0
- package/registry.js.map +1 -0
- package/repo.d.ts +64 -0
- package/repo.d.ts.map +1 -0
- package/repo.js +185 -0
- package/repo.js.map +1 -0
- package/standalone/build-browser.d.ts +10 -0
- package/standalone/build-browser.d.ts.map +1 -0
- package/standalone/build-browser.js +208 -0
- package/standalone/build-browser.js.map +1 -0
- package/standalone/build.d.ts +8 -0
- package/standalone/build.d.ts.map +1 -0
- package/standalone/build.js +319 -0
- package/standalone/build.js.map +1 -0
- package/standalone/ifid.d.ts +2 -0
- package/standalone/ifid.d.ts.map +1 -0
- package/standalone/ifid.js +71 -0
- package/standalone/ifid.js.map +1 -0
- package/standalone/init-browser.d.ts +10 -0
- package/standalone/init-browser.d.ts.map +1 -0
- package/standalone/init-browser.js +194 -0
- package/standalone/init-browser.js.map +1 -0
- package/standalone/init.d.ts +10 -0
- package/standalone/init.d.ts.map +1 -0
- package/standalone/init.js +183 -0
- package/standalone/init.js.map +1 -0
|
@@ -0,0 +1,319 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* CLI: sharpee build
|
|
4
|
+
*
|
|
5
|
+
* Builds a .sharpee story bundle and browser client from a story project.
|
|
6
|
+
* With --test, also compiles the story and runs transcript tests.
|
|
7
|
+
*/
|
|
8
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
11
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
12
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(o, k2, desc);
|
|
15
|
+
}) : (function(o, m, k, k2) {
|
|
16
|
+
if (k2 === undefined) k2 = k;
|
|
17
|
+
o[k2] = m[k];
|
|
18
|
+
}));
|
|
19
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
20
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
21
|
+
}) : function(o, v) {
|
|
22
|
+
o["default"] = v;
|
|
23
|
+
});
|
|
24
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
+
var ownKeys = function(o) {
|
|
26
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
+
var ar = [];
|
|
28
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
+
return ar;
|
|
30
|
+
};
|
|
31
|
+
return ownKeys(o);
|
|
32
|
+
};
|
|
33
|
+
return function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.runBuildCommand = runBuildCommand;
|
|
43
|
+
const fs = __importStar(require("fs"));
|
|
44
|
+
const path = __importStar(require("path"));
|
|
45
|
+
const child_process_1 = require("child_process");
|
|
46
|
+
const fflate_1 = require("fflate");
|
|
47
|
+
const build_browser_1 = require("./build-browser");
|
|
48
|
+
function readRecursive(dir, base = '') {
|
|
49
|
+
const entries = {};
|
|
50
|
+
for (const item of fs.readdirSync(dir)) {
|
|
51
|
+
const full = path.join(dir, item);
|
|
52
|
+
const rel = base ? `${base}/${item}` : item;
|
|
53
|
+
if (fs.statSync(full).isDirectory()) {
|
|
54
|
+
Object.assign(entries, readRecursive(full, rel));
|
|
55
|
+
}
|
|
56
|
+
else {
|
|
57
|
+
entries[rel] = new Uint8Array(fs.readFileSync(full));
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return entries;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Find transcript files matching a glob pattern in a directory.
|
|
64
|
+
* Returns sorted file paths.
|
|
65
|
+
*/
|
|
66
|
+
function findTranscriptFiles(dir, pattern) {
|
|
67
|
+
if (!fs.existsSync(dir))
|
|
68
|
+
return [];
|
|
69
|
+
const files = [];
|
|
70
|
+
for (const entry of fs.readdirSync(dir)) {
|
|
71
|
+
if (entry.endsWith('.transcript')) {
|
|
72
|
+
// Simple glob: 'wt-*.transcript' matches files starting with 'wt-'
|
|
73
|
+
if (!pattern || entry.match(new RegExp('^' + pattern.replace(/\*/g, '.*') + '$'))) {
|
|
74
|
+
files.push(path.join(dir, entry));
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return files.sort();
|
|
79
|
+
}
|
|
80
|
+
async function runBuildCommand(args, projectDirArg) {
|
|
81
|
+
if (args.includes('--help') || args.includes('-h')) {
|
|
82
|
+
showHelp();
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
const runTests = args.includes('--test');
|
|
86
|
+
const verbose = args.includes('--verbose') || args.includes('-v');
|
|
87
|
+
const stopOnFailure = args.includes('--stop-on-failure');
|
|
88
|
+
// Default to cwd (author in their project); a registered story name resolves to its dir.
|
|
89
|
+
const projectDir = projectDirArg || process.cwd();
|
|
90
|
+
const packagePath = path.join(projectDir, 'package.json');
|
|
91
|
+
if (!fs.existsSync(packagePath)) {
|
|
92
|
+
console.error('Error: No package.json found. Run from a story project directory.');
|
|
93
|
+
process.exit(1);
|
|
94
|
+
}
|
|
95
|
+
const pkg = JSON.parse(fs.readFileSync(packagePath, 'utf-8'));
|
|
96
|
+
const config = pkg.sharpee || {};
|
|
97
|
+
const storyName = config.title?.toLowerCase().replace(/\s+/g, '-') || pkg.name?.replace(/^@.*\//, '') || 'story';
|
|
98
|
+
const storySrc = path.join(projectDir, 'src', 'index.ts');
|
|
99
|
+
if (!fs.existsSync(storySrc)) {
|
|
100
|
+
console.error('Error: src/index.ts not found.');
|
|
101
|
+
process.exit(1);
|
|
102
|
+
}
|
|
103
|
+
console.log(`\nBuilding: ${config.title || storyName}\n`);
|
|
104
|
+
// --- Compile TypeScript (needed for both bundle and testing) ---
|
|
105
|
+
console.log('--- Compiling TypeScript ---\n');
|
|
106
|
+
const tsconfigPath = path.join(projectDir, 'tsconfig.json');
|
|
107
|
+
try {
|
|
108
|
+
(0, child_process_1.execSync)('npx tsc', { cwd: projectDir, stdio: 'pipe' });
|
|
109
|
+
console.log(' TypeScript compiled successfully\n');
|
|
110
|
+
}
|
|
111
|
+
catch (error) {
|
|
112
|
+
console.error(' TypeScript compilation failed');
|
|
113
|
+
if (error.stdout)
|
|
114
|
+
console.error(error.stdout.toString());
|
|
115
|
+
if (error.stderr)
|
|
116
|
+
console.error(error.stderr.toString());
|
|
117
|
+
process.exit(1);
|
|
118
|
+
}
|
|
119
|
+
// --- .sharpee bundle ---
|
|
120
|
+
console.log('--- Story Bundle (.sharpee) ---\n');
|
|
121
|
+
const distDir = path.join(projectDir, 'dist');
|
|
122
|
+
fs.mkdirSync(distDir, { recursive: true });
|
|
123
|
+
// 1. esbuild story ā ESM with @sharpee/* external
|
|
124
|
+
const storyJsPath = path.join(distDir, 'story.js');
|
|
125
|
+
const tsconfigArg = fs.existsSync(tsconfigPath) ? `--tsconfig=${tsconfigPath}` : '';
|
|
126
|
+
try {
|
|
127
|
+
(0, child_process_1.execSync)(`npx esbuild "${storySrc}" --bundle --platform=browser --format=esm --target=es2020 --outfile="${storyJsPath}" --external:@sharpee/* ${tsconfigArg}`, { cwd: projectDir, stdio: 'pipe' });
|
|
128
|
+
console.log(' story.js');
|
|
129
|
+
}
|
|
130
|
+
catch (error) {
|
|
131
|
+
console.error(' Failed to build story.js');
|
|
132
|
+
if (error.stderr)
|
|
133
|
+
console.error(error.stderr.toString());
|
|
134
|
+
process.exit(1);
|
|
135
|
+
}
|
|
136
|
+
// 2. Generate meta.json
|
|
137
|
+
const meta = {
|
|
138
|
+
format: 'sharpee-story',
|
|
139
|
+
formatVersion: 1,
|
|
140
|
+
id: pkg.name,
|
|
141
|
+
title: config.title || pkg.name,
|
|
142
|
+
author: config.author || 'Unknown',
|
|
143
|
+
version: pkg.version,
|
|
144
|
+
description: config.headline || pkg.description || '',
|
|
145
|
+
sharpeeVersion: '>=0.9.0',
|
|
146
|
+
ifid: config.ifid || '',
|
|
147
|
+
hasAssets: fs.existsSync(path.join(projectDir, 'assets')),
|
|
148
|
+
hasTheme: fs.existsSync(path.join(projectDir, 'theme.css')),
|
|
149
|
+
preferredTheme: config.preferredTheme || 'classic-light',
|
|
150
|
+
};
|
|
151
|
+
// 3. Assemble zip contents
|
|
152
|
+
const zipEntries = {};
|
|
153
|
+
zipEntries['story.js'] = new Uint8Array(fs.readFileSync(storyJsPath));
|
|
154
|
+
zipEntries['meta.json'] = (0, fflate_1.strToU8)(JSON.stringify(meta, null, 2) + '\n');
|
|
155
|
+
const assetsDir = path.join(projectDir, 'assets');
|
|
156
|
+
if (fs.existsSync(assetsDir)) {
|
|
157
|
+
const assetEntries = readRecursive(assetsDir, 'assets');
|
|
158
|
+
Object.assign(zipEntries, assetEntries);
|
|
159
|
+
console.log(` assets/ (${Object.keys(assetEntries).length} files)`);
|
|
160
|
+
}
|
|
161
|
+
const themePath = path.join(projectDir, 'theme.css');
|
|
162
|
+
if (fs.existsSync(themePath)) {
|
|
163
|
+
zipEntries['theme.css'] = new Uint8Array(fs.readFileSync(themePath));
|
|
164
|
+
console.log(' theme.css');
|
|
165
|
+
}
|
|
166
|
+
// 4. Create .sharpee zip
|
|
167
|
+
const zipped = (0, fflate_1.zipSync)(zipEntries);
|
|
168
|
+
const outFile = path.join(distDir, `${storyName}.sharpee`);
|
|
169
|
+
fs.writeFileSync(outFile, zipped);
|
|
170
|
+
const sizeKb = (fs.statSync(outFile).size / 1024).toFixed(1);
|
|
171
|
+
console.log(` meta.json`);
|
|
172
|
+
console.log(`\n Output: ${path.relative(projectDir, outFile)} (${sizeKb} KB)\n`);
|
|
173
|
+
// Clean up temp story.js
|
|
174
|
+
fs.unlinkSync(storyJsPath);
|
|
175
|
+
// --- Browser client ---
|
|
176
|
+
console.log('--- Browser Client ---\n');
|
|
177
|
+
const browserEntry = path.join(projectDir, 'src', 'browser-entry.ts');
|
|
178
|
+
if (fs.existsSync(browserEntry)) {
|
|
179
|
+
await (0, build_browser_1.runBuildBrowserCommand)(args.filter(a => a !== '--help' && a !== '-h' && a !== '--test' && a !== '--verbose' && a !== '-v' && a !== '--stop-on-failure'), projectDir);
|
|
180
|
+
}
|
|
181
|
+
else {
|
|
182
|
+
console.log(' Skipped (no src/browser-entry.ts)\n');
|
|
183
|
+
console.log(' Run "sharpee init-browser" to add browser support.\n');
|
|
184
|
+
}
|
|
185
|
+
// --- Run transcript tests ---
|
|
186
|
+
if (runTests) {
|
|
187
|
+
console.log('--- Running Transcript Tests ---\n');
|
|
188
|
+
await runTranscriptTests(projectDir, { verbose, stopOnFailure });
|
|
189
|
+
}
|
|
190
|
+
console.log('Build complete!\n');
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* Run transcript tests for a story project.
|
|
194
|
+
* Loads the compiled story from dist/, finds transcript files, and runs them.
|
|
195
|
+
*/
|
|
196
|
+
async function runTranscriptTests(projectDir, options) {
|
|
197
|
+
// Lazy-load transcript-tester to avoid import issues when not testing
|
|
198
|
+
const { loadStory, parseTranscriptFile, runTranscript, reportTranscript, reportTestRun, getExitCode } = require("../../transcript-tester/index.js");
|
|
199
|
+
const { TranscriptResult, TestRunResult } = require("../../transcript-tester/index.js");
|
|
200
|
+
// Find transcript files
|
|
201
|
+
const walkthroughDir = path.join(projectDir, 'walkthroughs');
|
|
202
|
+
const unitTestDir = path.join(projectDir, 'tests', 'transcripts');
|
|
203
|
+
const walkthroughs = findTranscriptFiles(walkthroughDir, 'wt-*.transcript');
|
|
204
|
+
const unitTests = findTranscriptFiles(unitTestDir, '*.transcript');
|
|
205
|
+
if (walkthroughs.length === 0 && unitTests.length === 0) {
|
|
206
|
+
console.log(' No transcript files found.\n');
|
|
207
|
+
console.log(' Place walkthroughs in walkthroughs/wt-*.transcript');
|
|
208
|
+
console.log(' Place unit tests in tests/transcripts/*.transcript\n');
|
|
209
|
+
return;
|
|
210
|
+
}
|
|
211
|
+
// Load the story from compiled dist/
|
|
212
|
+
let game;
|
|
213
|
+
try {
|
|
214
|
+
game = await loadStory(projectDir);
|
|
215
|
+
}
|
|
216
|
+
catch (error) {
|
|
217
|
+
console.error(` Failed to load story: ${error.message}`);
|
|
218
|
+
console.error(' Make sure TypeScript compiled successfully (dist/index.js exists).\n');
|
|
219
|
+
process.exit(1);
|
|
220
|
+
}
|
|
221
|
+
const allResults = [];
|
|
222
|
+
let totalPassed = 0;
|
|
223
|
+
let totalFailed = 0;
|
|
224
|
+
let totalExpectedFailures = 0;
|
|
225
|
+
let totalSkipped = 0;
|
|
226
|
+
let totalDuration = 0;
|
|
227
|
+
// Run walkthrough chain (state persists between transcripts)
|
|
228
|
+
if (walkthroughs.length > 0) {
|
|
229
|
+
console.log(` Walkthroughs: ${walkthroughs.length} files (chained)\n`);
|
|
230
|
+
for (const wtPath of walkthroughs) {
|
|
231
|
+
const transcript = parseTranscriptFile(wtPath);
|
|
232
|
+
const result = await runTranscript(transcript, game, {
|
|
233
|
+
verbose: options.verbose,
|
|
234
|
+
stopOnFailure: options.stopOnFailure,
|
|
235
|
+
savesDirectory: path.join(projectDir, '.test-saves'),
|
|
236
|
+
});
|
|
237
|
+
reportTranscript(result, { verbose: options.verbose });
|
|
238
|
+
allResults.push(result);
|
|
239
|
+
totalPassed += result.passed;
|
|
240
|
+
totalFailed += result.failed;
|
|
241
|
+
totalExpectedFailures += result.expectedFailures;
|
|
242
|
+
totalSkipped += result.skipped;
|
|
243
|
+
totalDuration += result.duration;
|
|
244
|
+
if (options.stopOnFailure && result.failed > 0) {
|
|
245
|
+
break;
|
|
246
|
+
}
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
// Run unit tests (each gets a fresh game instance)
|
|
250
|
+
if (unitTests.length > 0 && !(options.stopOnFailure && totalFailed > 0)) {
|
|
251
|
+
console.log(`\n Unit tests: ${unitTests.length} files\n`);
|
|
252
|
+
for (const utPath of unitTests) {
|
|
253
|
+
// Create fresh game for each unit test
|
|
254
|
+
let unitGame;
|
|
255
|
+
try {
|
|
256
|
+
unitGame = await loadStory(projectDir);
|
|
257
|
+
}
|
|
258
|
+
catch (error) {
|
|
259
|
+
console.error(` Failed to reload story for unit test: ${error.message}`);
|
|
260
|
+
continue;
|
|
261
|
+
}
|
|
262
|
+
const transcript = parseTranscriptFile(utPath);
|
|
263
|
+
const result = await runTranscript(transcript, unitGame, {
|
|
264
|
+
verbose: options.verbose,
|
|
265
|
+
stopOnFailure: options.stopOnFailure,
|
|
266
|
+
savesDirectory: path.join(projectDir, '.test-saves'),
|
|
267
|
+
});
|
|
268
|
+
reportTranscript(result, { verbose: options.verbose });
|
|
269
|
+
allResults.push(result);
|
|
270
|
+
totalPassed += result.passed;
|
|
271
|
+
totalFailed += result.failed;
|
|
272
|
+
totalExpectedFailures += result.expectedFailures;
|
|
273
|
+
totalSkipped += result.skipped;
|
|
274
|
+
totalDuration += result.duration;
|
|
275
|
+
if (options.stopOnFailure && result.failed > 0) {
|
|
276
|
+
break;
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
// Report summary
|
|
281
|
+
const testRunResult = {
|
|
282
|
+
transcripts: allResults,
|
|
283
|
+
totalPassed,
|
|
284
|
+
totalFailed,
|
|
285
|
+
totalExpectedFailures,
|
|
286
|
+
totalSkipped,
|
|
287
|
+
totalDuration,
|
|
288
|
+
};
|
|
289
|
+
reportTestRun(testRunResult);
|
|
290
|
+
if (totalFailed > 0) {
|
|
291
|
+
process.exit(1);
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
function showHelp() {
|
|
295
|
+
console.log(`
|
|
296
|
+
sharpee build - Build story bundle, browser client, and run tests
|
|
297
|
+
|
|
298
|
+
Usage: sharpee build [options]
|
|
299
|
+
|
|
300
|
+
Options:
|
|
301
|
+
--test Compile story and run transcript tests after building
|
|
302
|
+
--verbose, -v Show detailed test output
|
|
303
|
+
--stop-on-failure Stop on first test failure
|
|
304
|
+
--no-minify Skip minification (browser client)
|
|
305
|
+
--no-sourcemap Skip source map generation (browser client)
|
|
306
|
+
|
|
307
|
+
Output:
|
|
308
|
+
dist/<story>.sharpee Story bundle for Zifmia runner
|
|
309
|
+
dist/web/ Browser client (if browser-entry.ts exists)
|
|
310
|
+
|
|
311
|
+
Test files:
|
|
312
|
+
walkthroughs/wt-*.transcript Walkthrough chain (state persists between files)
|
|
313
|
+
tests/transcripts/*.transcript Unit tests (fresh game per file)
|
|
314
|
+
|
|
315
|
+
Run from a story project directory with a package.json containing
|
|
316
|
+
a "sharpee" config block.
|
|
317
|
+
`);
|
|
318
|
+
}
|
|
319
|
+
//# sourceMappingURL=build.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/devkit/src/standalone/build.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ifid.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/devkit/src/standalone/ifid.ts"],"names":[],"mappings":"AAKA,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI,CAmBnD"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// packages/sharpee/src/cli/ifid.ts
|
|
3
|
+
// IFID CLI commands
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.runIfidCommand = runIfidCommand;
|
|
6
|
+
const core_1 = require("../../core/index.js");
|
|
7
|
+
function runIfidCommand(args) {
|
|
8
|
+
const subcommand = args[0];
|
|
9
|
+
switch (subcommand) {
|
|
10
|
+
case 'generate':
|
|
11
|
+
handleGenerate();
|
|
12
|
+
break;
|
|
13
|
+
case 'validate':
|
|
14
|
+
handleValidate(args.slice(1));
|
|
15
|
+
break;
|
|
16
|
+
case undefined:
|
|
17
|
+
case 'help':
|
|
18
|
+
showHelp();
|
|
19
|
+
break;
|
|
20
|
+
default:
|
|
21
|
+
console.error(`Unknown ifid subcommand: ${subcommand}`);
|
|
22
|
+
showHelp();
|
|
23
|
+
process.exit(1);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
function handleGenerate() {
|
|
27
|
+
const ifid = (0, core_1.generateIfid)();
|
|
28
|
+
console.log(ifid);
|
|
29
|
+
}
|
|
30
|
+
function handleValidate(args) {
|
|
31
|
+
const ifid = args[0];
|
|
32
|
+
if (!ifid) {
|
|
33
|
+
console.error('Usage: sharpee ifid validate <ifid>');
|
|
34
|
+
process.exit(1);
|
|
35
|
+
}
|
|
36
|
+
const isValid = (0, core_1.validateIfid)(ifid);
|
|
37
|
+
if (isValid) {
|
|
38
|
+
console.log(`Valid IFID: ${ifid}`);
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
// Try normalizing (uppercase conversion)
|
|
42
|
+
const normalized = (0, core_1.normalizeIfid)(ifid);
|
|
43
|
+
if (normalized) {
|
|
44
|
+
console.log(`Valid after normalization:`);
|
|
45
|
+
console.log(` Original: ${ifid}`);
|
|
46
|
+
console.log(` Normalized: ${normalized}`);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
console.error(`Invalid IFID: ${ifid}`);
|
|
50
|
+
console.error('IFID requirements:');
|
|
51
|
+
console.error(' - Length: 8-63 characters');
|
|
52
|
+
console.error(' - Characters: A-Z, 0-9, and hyphens only');
|
|
53
|
+
console.error(' - Recommended: UUID format (uppercase)');
|
|
54
|
+
process.exit(1);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
function showHelp() {
|
|
59
|
+
console.log(`
|
|
60
|
+
sharpee ifid - IFID utilities
|
|
61
|
+
|
|
62
|
+
Commands:
|
|
63
|
+
generate Generate a new IFID (UUID format)
|
|
64
|
+
validate <ifid> Validate an IFID string
|
|
65
|
+
|
|
66
|
+
Examples:
|
|
67
|
+
sharpee ifid generate
|
|
68
|
+
sharpee ifid validate A1B2C3D4-E5F6-7890-ABCD-EF1234567890
|
|
69
|
+
`);
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=ifid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ifid.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/devkit/src/standalone/ifid.ts"],"names":[],"mappings":";AAAA,mCAAmC;AACnC,oBAAoB;;AAIpB,wCAmBC;AArBD,wCAA0E;AAE1E,SAAgB,cAAc,CAAC,IAAc;IAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAE3B,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,UAAU;YACb,cAAc,EAAE,CAAC;YACjB,MAAM;QACR,KAAK,UAAU;YACb,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9B,MAAM;QACR,KAAK,SAAS,CAAC;QACf,KAAK,MAAM;YACT,QAAQ,EAAE,CAAC;YACX,MAAM;QACR;YACE,OAAO,CAAC,KAAK,CAAC,4BAA4B,UAAU,EAAE,CAAC,CAAC;YACxD,QAAQ,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,SAAS,cAAc;IACrB,MAAM,IAAI,GAAG,IAAA,mBAAY,GAAE,CAAC;IAC5B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AACpB,CAAC;AAED,SAAS,cAAc,CAAC,IAAc;IACpC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAErB,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GAAG,IAAA,mBAAY,EAAC,IAAI,CAAC,CAAC;IAEnC,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,yCAAyC;QACzC,MAAM,UAAU,GAAG,IAAA,oBAAa,EAAC,IAAI,CAAC,CAAC;QACvC,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,iBAAiB,UAAU,EAAE,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;YACvC,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACpC,OAAO,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC7C,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;YAC5D,OAAO,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,QAAQ;IACf,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;CAUb,CAAC,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CLI: sharpee init-browser
|
|
3
|
+
*
|
|
4
|
+
* Adds browser client files to an existing Sharpee story project.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Run the init-browser command
|
|
8
|
+
*/
|
|
9
|
+
export declare function runInitBrowserCommand(args: string[]): Promise<void>;
|
|
10
|
+
//# sourceMappingURL=init-browser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init-browser.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/devkit/src/standalone/init-browser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA6DH;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAgGzE"}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* CLI: sharpee init-browser
|
|
4
|
+
*
|
|
5
|
+
* Adds browser client files to an existing Sharpee story project.
|
|
6
|
+
*/
|
|
7
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
8
|
+
if (k2 === undefined) k2 = k;
|
|
9
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
10
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
11
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
12
|
+
}
|
|
13
|
+
Object.defineProperty(o, k2, desc);
|
|
14
|
+
}) : (function(o, m, k, k2) {
|
|
15
|
+
if (k2 === undefined) k2 = k;
|
|
16
|
+
o[k2] = m[k];
|
|
17
|
+
}));
|
|
18
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
19
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
20
|
+
}) : function(o, v) {
|
|
21
|
+
o["default"] = v;
|
|
22
|
+
});
|
|
23
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
24
|
+
var ownKeys = function(o) {
|
|
25
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
26
|
+
var ar = [];
|
|
27
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
28
|
+
return ar;
|
|
29
|
+
};
|
|
30
|
+
return ownKeys(o);
|
|
31
|
+
};
|
|
32
|
+
return function (mod) {
|
|
33
|
+
if (mod && mod.__esModule) return mod;
|
|
34
|
+
var result = {};
|
|
35
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
36
|
+
__setModuleDefault(result, mod);
|
|
37
|
+
return result;
|
|
38
|
+
};
|
|
39
|
+
})();
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
exports.runInitBrowserCommand = runInitBrowserCommand;
|
|
42
|
+
const fs = __importStar(require("fs"));
|
|
43
|
+
const path = __importStar(require("path"));
|
|
44
|
+
// In source: src/cli/ ā ../../templates. In npm publish: cli/ ā ../templates.
|
|
45
|
+
const TEMPLATES_DIR = fs.existsSync(path.join(__dirname, '..', 'templates', 'browser'))
|
|
46
|
+
? path.join(__dirname, '..', 'templates', 'browser')
|
|
47
|
+
: path.join(__dirname, '..', '..', 'templates', 'browser');
|
|
48
|
+
/**
|
|
49
|
+
* Read story info from package.json or index.ts
|
|
50
|
+
*/
|
|
51
|
+
function getProjectInfo(projectDir) {
|
|
52
|
+
// Try package.json first
|
|
53
|
+
const packagePath = path.join(projectDir, 'package.json');
|
|
54
|
+
if (fs.existsSync(packagePath)) {
|
|
55
|
+
try {
|
|
56
|
+
const pkg = JSON.parse(fs.readFileSync(packagePath, 'utf-8'));
|
|
57
|
+
return {
|
|
58
|
+
storyId: pkg.name || 'my-story',
|
|
59
|
+
storyTitle: pkg.description || pkg.name || 'My Story',
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
catch {
|
|
63
|
+
// Fall through
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
// Try reading from src/index.ts
|
|
67
|
+
const indexPath = path.join(projectDir, 'src', 'index.ts');
|
|
68
|
+
if (fs.existsSync(indexPath)) {
|
|
69
|
+
const content = fs.readFileSync(indexPath, 'utf-8');
|
|
70
|
+
const idMatch = content.match(/id:\s*['"]([^'"]+)['"]/);
|
|
71
|
+
const titleMatch = content.match(/title:\s*['"]([^'"]+)['"]/);
|
|
72
|
+
if (idMatch || titleMatch) {
|
|
73
|
+
return {
|
|
74
|
+
storyId: idMatch?.[1] || 'my-story',
|
|
75
|
+
storyTitle: titleMatch?.[1] || 'My Story',
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return null;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Read template file and replace placeholders
|
|
83
|
+
*/
|
|
84
|
+
function processTemplate(templatePath, info) {
|
|
85
|
+
const content = fs.readFileSync(templatePath, 'utf-8');
|
|
86
|
+
return content
|
|
87
|
+
.replace(/\{\{STORY_ID\}\}/g, info.storyId)
|
|
88
|
+
.replace(/\{\{STORY_TITLE\}\}/g, info.storyTitle);
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Run the init-browser command
|
|
92
|
+
*/
|
|
93
|
+
async function runInitBrowserCommand(args) {
|
|
94
|
+
// Check for help
|
|
95
|
+
if (args.includes('--help') || args.includes('-h')) {
|
|
96
|
+
showHelp();
|
|
97
|
+
return;
|
|
98
|
+
}
|
|
99
|
+
const projectDir = process.cwd();
|
|
100
|
+
console.log('\nš Adding browser client to your Sharpee project\n');
|
|
101
|
+
// Check if this is a Sharpee project
|
|
102
|
+
const info = getProjectInfo(projectDir);
|
|
103
|
+
if (!info) {
|
|
104
|
+
console.error('Error: This does not appear to be a Sharpee project.');
|
|
105
|
+
console.error('Make sure you have a package.json or src/index.ts with story config.');
|
|
106
|
+
console.error('\nRun "sharpee init" first to create a project.');
|
|
107
|
+
process.exit(1);
|
|
108
|
+
}
|
|
109
|
+
console.log(` Story: ${info.storyTitle} (${info.storyId})`);
|
|
110
|
+
// Check if browser-entry.ts already exists
|
|
111
|
+
const browserEntryPath = path.join(projectDir, 'src', 'browser-entry.ts');
|
|
112
|
+
if (fs.existsSync(browserEntryPath)) {
|
|
113
|
+
console.error('\nError: src/browser-entry.ts already exists.');
|
|
114
|
+
console.error('Remove it first if you want to regenerate.');
|
|
115
|
+
process.exit(1);
|
|
116
|
+
}
|
|
117
|
+
// Create browser directory for templates (optional, for customization)
|
|
118
|
+
const browserDir = path.join(projectDir, 'browser');
|
|
119
|
+
fs.mkdirSync(browserDir, { recursive: true });
|
|
120
|
+
// Copy browser-entry.ts template
|
|
121
|
+
const browserEntryTemplate = path.join(TEMPLATES_DIR, 'browser-entry.ts.template');
|
|
122
|
+
if (fs.existsSync(browserEntryTemplate)) {
|
|
123
|
+
const content = processTemplate(browserEntryTemplate, info);
|
|
124
|
+
fs.writeFileSync(browserEntryPath, content);
|
|
125
|
+
console.log(' ā Created src/browser-entry.ts');
|
|
126
|
+
}
|
|
127
|
+
else {
|
|
128
|
+
console.error(' ā Template not found: browser-entry.ts.template');
|
|
129
|
+
process.exit(1);
|
|
130
|
+
}
|
|
131
|
+
// Copy HTML template
|
|
132
|
+
const htmlTemplate = path.join(TEMPLATES_DIR, 'index.html');
|
|
133
|
+
if (fs.existsSync(htmlTemplate)) {
|
|
134
|
+
const content = processTemplate(htmlTemplate, info);
|
|
135
|
+
fs.writeFileSync(path.join(browserDir, 'index.html'), content);
|
|
136
|
+
console.log(' ā Created browser/index.html');
|
|
137
|
+
}
|
|
138
|
+
// Copy CSS
|
|
139
|
+
const cssTemplate = path.join(TEMPLATES_DIR, 'styles.css');
|
|
140
|
+
if (fs.existsSync(cssTemplate)) {
|
|
141
|
+
fs.copyFileSync(cssTemplate, path.join(browserDir, 'styles.css'));
|
|
142
|
+
console.log(' ā Created browser/styles.css');
|
|
143
|
+
}
|
|
144
|
+
// Update package.json to add esbuild dev dependency and build script
|
|
145
|
+
const packagePath = path.join(projectDir, 'package.json');
|
|
146
|
+
if (fs.existsSync(packagePath)) {
|
|
147
|
+
try {
|
|
148
|
+
const pkg = JSON.parse(fs.readFileSync(packagePath, 'utf-8'));
|
|
149
|
+
// Add esbuild to devDependencies
|
|
150
|
+
pkg.devDependencies = pkg.devDependencies || {};
|
|
151
|
+
if (!pkg.devDependencies.esbuild) {
|
|
152
|
+
pkg.devDependencies.esbuild = '^0.20.0';
|
|
153
|
+
}
|
|
154
|
+
// Add build:browser script
|
|
155
|
+
pkg.scripts = pkg.scripts || {};
|
|
156
|
+
if (!pkg.scripts['build:browser']) {
|
|
157
|
+
pkg.scripts['build:browser'] = 'npx sharpee build-browser';
|
|
158
|
+
}
|
|
159
|
+
fs.writeFileSync(packagePath, JSON.stringify(pkg, null, 2) + '\n');
|
|
160
|
+
console.log(' ā Updated package.json');
|
|
161
|
+
}
|
|
162
|
+
catch (e) {
|
|
163
|
+
console.warn(' ā Could not update package.json');
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
console.log('\nā
Browser client added!\n');
|
|
167
|
+
console.log('Next steps:');
|
|
168
|
+
console.log(' npm install # Install esbuild');
|
|
169
|
+
console.log(' npm run build:browser # Build web bundle');
|
|
170
|
+
console.log('');
|
|
171
|
+
console.log('Output will be in dist/web/');
|
|
172
|
+
console.log('');
|
|
173
|
+
console.log('Customize the UI:');
|
|
174
|
+
console.log(' browser/index.html # HTML template');
|
|
175
|
+
console.log(' browser/styles.css # Styles');
|
|
176
|
+
console.log('');
|
|
177
|
+
}
|
|
178
|
+
function showHelp() {
|
|
179
|
+
console.log(`
|
|
180
|
+
sharpee init-browser - Add browser client to a Sharpee project
|
|
181
|
+
|
|
182
|
+
Usage: sharpee init-browser
|
|
183
|
+
|
|
184
|
+
This command adds the files needed to build a web browser version
|
|
185
|
+
of your interactive fiction game:
|
|
186
|
+
|
|
187
|
+
src/browser-entry.ts Entry point for browser bundle
|
|
188
|
+
browser/index.html HTML template
|
|
189
|
+
browser/styles.css Infocom-style CSS
|
|
190
|
+
|
|
191
|
+
Run this in the root of your Sharpee project directory.
|
|
192
|
+
`);
|
|
193
|
+
}
|
|
194
|
+
//# sourceMappingURL=init-browser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init-browser.js","sourceRoot":"","sources":["../../../../../../../repos/sharpee/packages/devkit/src/standalone/init-browser.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgEH,sDAgGC;AA9JD,uCAAyB;AACzB,2CAA6B;AAE7B,8EAA8E;AAC9E,MAAM,aAAa,GAAG,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IACrF,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC;IACpD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;AAO7D;;GAEG;AACH,SAAS,cAAc,CAAC,UAAkB;IACxC,yBAAyB;IACzB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAC1D,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;YAC9D,OAAO;gBACL,OAAO,EAAE,GAAG,CAAC,IAAI,IAAI,UAAU;gBAC/B,UAAU,EAAE,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC,IAAI,IAAI,UAAU;aACtD,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IAC3D,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QACxD,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAE9D,IAAI,OAAO,IAAI,UAAU,EAAE,CAAC;YAC1B,OAAO;gBACL,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,UAAU;gBACnC,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,UAAU;aAC1C,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,YAAoB,EAAE,IAAiB;IAC9D,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACvD,OAAO,OAAO;SACX,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC,OAAO,CAAC;SAC1C,OAAO,CAAC,sBAAsB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;AACtD,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,qBAAqB,CAAC,IAAc;IACxD,iBAAiB;IACjB,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACnD,QAAQ,EAAE,CAAC;QACX,OAAO;IACT,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAEjC,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;IAEpE,qCAAqC;IACrC,MAAM,IAAI,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;IACxC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;QACtE,OAAO,CAAC,KAAK,CAAC,sEAAsE,CAAC,CAAC;QACtF,OAAO,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC;IAE7D,2CAA2C;IAC3C,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC;IAC1E,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAC/D,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,uEAAuE;IACvE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACpD,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAE9C,iCAAiC;IACjC,MAAM,oBAAoB,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,2BAA2B,CAAC,CAAC;IACnF,IAAI,EAAE,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,eAAe,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;QAC5D,EAAE,CAAC,aAAa,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;IAClD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,qBAAqB;IACrB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAC5D,IAAI,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,MAAM,OAAO,GAAG,eAAe,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QACpD,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,OAAO,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAChD,CAAC;IAED,WAAW;IACX,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;IAC3D,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/B,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;IAChD,CAAC;IAED,qEAAqE;IACrE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;IAC1D,IAAI,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC;YAE9D,iCAAiC;YACjC,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC;YAChD,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;gBACjC,GAAG,CAAC,eAAe,CAAC,OAAO,GAAG,SAAS,CAAC;YAC1C,CAAC;YAED,2BAA2B;YAC3B,GAAG,CAAC,OAAO,GAAG,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;YAChC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;gBAClC,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,GAAG,2BAA2B,CAAC;YAC7D,CAAC;YAED,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;YACnE,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC3B,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;IACxD,OAAO,CAAC,GAAG,CAAC,6CAA6C,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACjC,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,QAAQ;IACf,OAAO,CAAC,GAAG,CAAC;;;;;;;;;;;;;CAab,CAAC,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../../../../repos/sharpee/packages/devkit/src/standalone/init.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA2DH;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAuFlE"}
|