@pie-element/cli 0.1.1 → 0.1.2-next.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/README.md +48 -10
- package/dist/commands/dev/demo/index.d.ts +1 -1
- package/dist/commands/dev/demo/index.js +21 -0
- package/dist/commands/dev/demo/index.js.map +1 -1
- package/dist/commands/dev/test-bundler.d.ts +0 -1
- package/dist/commands/dev/test-bundler.js +2 -10
- package/dist/commands/dev/test-bundler.js.map +1 -1
- package/dist/commands/docs/generate.d.ts +16 -0
- package/dist/commands/docs/generate.js +150 -0
- package/dist/commands/docs/generate.js.map +1 -0
- package/dist/commands/docs/verify.d.ts +12 -0
- package/dist/commands/docs/verify.js +40 -0
- package/dist/commands/docs/verify.js.map +1 -0
- package/dist/commands/packages/create-controllers.d.ts +0 -1
- package/dist/commands/packages/create-controllers.js.map +1 -1
- package/dist/commands/packages/create-lib-react.d.ts +0 -1
- package/dist/commands/packages/create-lib-react.js +1 -3
- package/dist/commands/packages/create-lib-react.js.map +1 -1
- package/dist/commands/packages/create-react-elements.d.ts +0 -1
- package/dist/commands/packages/create-react-elements.js +2 -3
- package/dist/commands/packages/create-react-elements.js.map +1 -1
- package/dist/commands/packages/enable-publishing.d.ts +0 -1
- package/dist/commands/packages/enable-publishing.js +26 -23
- package/dist/commands/packages/enable-publishing.js.map +1 -1
- package/dist/commands/packages/init-synced-elements.d.ts +0 -1
- package/dist/commands/packages/init-synced-elements.js +1 -1
- package/dist/commands/packages/init-synced-elements.js.map +1 -1
- package/dist/commands/upstream/analyze-esm.d.ts +0 -1
- package/dist/commands/upstream/analyze-esm.js +5 -1
- package/dist/commands/upstream/analyze-esm.js.map +1 -1
- package/dist/commands/upstream/check.d.ts +0 -1
- package/dist/commands/upstream/check.js.map +1 -1
- package/dist/commands/upstream/deps.d.ts +0 -1
- package/dist/commands/upstream/deps.js.map +1 -1
- package/dist/commands/upstream/sync.d.ts +11 -2
- package/dist/commands/upstream/sync.js +364 -25
- package/dist/commands/upstream/sync.js.map +1 -1
- package/dist/commands/upstream/track.d.ts +0 -1
- package/dist/commands/upstream/track.js.map +1 -1
- package/dist/commands/upstream/update.d.ts +0 -1
- package/dist/commands/upstream/update.js +37 -7
- package/dist/commands/upstream/update.js.map +1 -1
- package/dist/commands/verify/controllers.d.ts +0 -1
- package/dist/commands/verify/controllers.js +213 -59
- package/dist/commands/verify/controllers.js.map +1 -1
- package/dist/commands/verify/dependency-integrity.d.ts +18 -0
- package/dist/commands/verify/dependency-integrity.js +147 -0
- package/dist/commands/verify/dependency-integrity.js.map +1 -0
- package/dist/commands/verify/react-build.d.ts +0 -1
- package/dist/commands/verify/react-build.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/docs/contract-validator.d.ts +12 -0
- package/dist/lib/docs/contract-validator.js +38 -0
- package/dist/lib/docs/contract-validator.js.map +1 -0
- package/dist/lib/docs/contracts.d.ts +11 -0
- package/dist/lib/docs/contracts.js +241 -0
- package/dist/lib/docs/contracts.js.map +1 -0
- package/dist/lib/docs/discovery.d.ts +10 -0
- package/dist/lib/docs/discovery.js +91 -0
- package/dist/lib/docs/discovery.js.map +1 -0
- package/dist/lib/docs/generator.d.ts +14 -0
- package/dist/lib/docs/generator.js +450 -0
- package/dist/lib/docs/generator.js.map +1 -0
- package/dist/lib/docs/source-extractor.d.ts +2 -0
- package/dist/lib/docs/source-extractor.js +209 -0
- package/dist/lib/docs/source-extractor.js.map +1 -0
- package/dist/lib/docs/types.d.ts +77 -0
- package/dist/lib/docs/types.js +2 -0
- package/dist/lib/docs/types.js.map +1 -0
- package/dist/lib/upstream/repo-utils.d.ts +0 -1
- package/dist/lib/upstream/repo-utils.js.map +1 -1
- package/dist/lib/upstream/sync-compatibility.d.ts +0 -1
- package/dist/lib/upstream/sync-compatibility.js.map +1 -1
- package/dist/lib/upstream/sync-constants.d.ts +35 -7
- package/dist/lib/upstream/sync-constants.js +40 -11
- package/dist/lib/upstream/sync-constants.js.map +1 -1
- package/dist/lib/upstream/sync-controllers-strategy.d.ts +0 -1
- package/dist/lib/upstream/sync-controllers-strategy.js +14 -4
- package/dist/lib/upstream/sync-controllers-strategy.js.map +1 -1
- package/dist/lib/upstream/sync-demo-metadata.d.ts +0 -1
- package/dist/lib/upstream/sync-demo-metadata.js +1 -1
- package/dist/lib/upstream/sync-demo-metadata.js.map +1 -1
- package/dist/lib/upstream/sync-entry-discovery.d.ts +3 -0
- package/dist/lib/upstream/sync-entry-discovery.js +23 -0
- package/dist/lib/upstream/sync-entry-discovery.js.map +1 -0
- package/dist/lib/upstream/sync-externals.d.ts +7 -7
- package/dist/lib/upstream/sync-externals.js +51 -35
- package/dist/lib/upstream/sync-externals.js.map +1 -1
- package/dist/lib/upstream/sync-filesystem.d.ts +0 -1
- package/dist/lib/upstream/sync-filesystem.js.map +1 -1
- package/dist/lib/upstream/sync-imports.d.ts +82 -62
- package/dist/lib/upstream/sync-imports.js +658 -185
- package/dist/lib/upstream/sync-imports.js.map +1 -1
- package/dist/lib/upstream/sync-package-json.d.ts +0 -1
- package/dist/lib/upstream/sync-package-json.js +7 -0
- package/dist/lib/upstream/sync-package-json.js.map +1 -1
- package/dist/lib/upstream/sync-package-manager.d.ts +14 -4
- package/dist/lib/upstream/sync-package-manager.js +405 -72
- package/dist/lib/upstream/sync-package-manager.js.map +1 -1
- package/dist/lib/upstream/sync-pielib-strategy.d.ts +2 -1
- package/dist/lib/upstream/sync-pielib-strategy.js +228 -110
- package/dist/lib/upstream/sync-pielib-strategy.js.map +1 -1
- package/dist/lib/upstream/sync-presets.d.ts +52 -0
- package/dist/lib/upstream/sync-presets.js +175 -0
- package/dist/lib/upstream/sync-presets.js.map +1 -0
- package/dist/lib/upstream/sync-react-strategy.d.ts +6 -1
- package/dist/lib/upstream/sync-react-strategy.js +342 -134
- package/dist/lib/upstream/sync-react-strategy.js.map +1 -1
- package/dist/lib/upstream/sync-source-edit.d.ts +14 -0
- package/dist/lib/upstream/sync-source-edit.js +89 -0
- package/dist/lib/upstream/sync-source-edit.js.map +1 -0
- package/dist/lib/upstream/sync-source-tree.d.ts +22 -0
- package/dist/lib/upstream/sync-source-tree.js +99 -0
- package/dist/lib/upstream/sync-source-tree.js.map +1 -0
- package/dist/lib/upstream/sync-strategy.d.ts +1 -1
- package/dist/lib/upstream/sync-strategy.js.map +1 -1
- package/dist/lib/upstream/sync-summary.d.ts +0 -1
- package/dist/lib/upstream/sync-summary.js.map +1 -1
- package/dist/lib/upstream/sync-transforms.d.ts +13 -11
- package/dist/lib/upstream/sync-transforms.js +23 -17
- package/dist/lib/upstream/sync-transforms.js.map +1 -1
- package/dist/lib/upstream/sync-vite-config.d.ts +13 -1
- package/dist/lib/upstream/sync-vite-config.js +65 -46
- package/dist/lib/upstream/sync-vite-config.js.map +1 -1
- package/dist/utils/compatibility.d.ts +13 -1
- package/dist/utils/compatibility.js +143 -2
- package/dist/utils/compatibility.js.map +1 -1
- package/dist/utils/conversion.d.ts +0 -1
- package/dist/utils/conversion.js.map +1 -1
- package/dist/utils/dependency-integrity.d.ts +37 -0
- package/dist/utils/dependency-integrity.js +557 -0
- package/dist/utils/dependency-integrity.js.map +1 -0
- package/dist/utils/git.d.ts +0 -1
- package/dist/utils/git.js.map +1 -1
- package/dist/utils/logger.d.ts +0 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/package-json.d.ts +0 -1
- package/dist/utils/package-json.js.map +1 -1
- package/package.json +25 -8
- package/.compatibility/report.json +0 -2491
- package/.turbo/turbo-build.log +0 -1
- package/CHANGELOG.md +0 -8
- package/REFACTORING.md +0 -131
- package/bin/dev.js +0 -5
- package/dist/commands/dev/demo/index.d.ts.map +0 -1
- package/dist/commands/dev/test-bundler.d.ts.map +0 -1
- package/dist/commands/mathquill/migrate.d.ts +0 -20
- package/dist/commands/mathquill/migrate.d.ts.map +0 -1
- package/dist/commands/mathquill/migrate.js +0 -240
- package/dist/commands/mathquill/migrate.js.map +0 -1
- package/dist/commands/mathquill/status.d.ts +0 -20
- package/dist/commands/mathquill/status.d.ts.map +0 -1
- package/dist/commands/mathquill/status.js +0 -231
- package/dist/commands/mathquill/status.js.map +0 -1
- package/dist/commands/packages/create-controllers.d.ts.map +0 -1
- package/dist/commands/packages/create-lib-react.d.ts.map +0 -1
- package/dist/commands/packages/create-react-elements.d.ts.map +0 -1
- package/dist/commands/packages/enable-publishing.d.ts.map +0 -1
- package/dist/commands/packages/init-synced-elements.d.ts.map +0 -1
- package/dist/commands/upstream/analyze-esm.d.ts.map +0 -1
- package/dist/commands/upstream/check.d.ts.map +0 -1
- package/dist/commands/upstream/deps.d.ts.map +0 -1
- package/dist/commands/upstream/sync-mathquill.d.ts +0 -12
- package/dist/commands/upstream/sync-mathquill.d.ts.map +0 -1
- package/dist/commands/upstream/sync-mathquill.js +0 -97
- package/dist/commands/upstream/sync-mathquill.js.map +0 -1
- package/dist/commands/upstream/sync.d.ts.map +0 -1
- package/dist/commands/upstream/track.d.ts.map +0 -1
- package/dist/commands/upstream/update.d.ts.map +0 -1
- package/dist/commands/verify/controllers.d.ts.map +0 -1
- package/dist/commands/verify/react-build.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/lib/mathquill/extension-generator.d.ts +0 -9
- package/dist/lib/mathquill/extension-generator.d.ts.map +0 -1
- package/dist/lib/mathquill/extension-generator.js +0 -107
- package/dist/lib/mathquill/extension-generator.js.map +0 -1
- package/dist/lib/mathquill/khan-extractor.d.ts +0 -16
- package/dist/lib/mathquill/khan-extractor.d.ts.map +0 -1
- package/dist/lib/mathquill/khan-extractor.js +0 -148
- package/dist/lib/mathquill/khan-extractor.js.map +0 -1
- package/dist/lib/mathquill/learnosity-extractor.d.ts +0 -15
- package/dist/lib/mathquill/learnosity-extractor.d.ts.map +0 -1
- package/dist/lib/mathquill/learnosity-extractor.js +0 -170
- package/dist/lib/mathquill/learnosity-extractor.js.map +0 -1
- package/dist/lib/mathquill/migration-orchestrator.d.ts +0 -77
- package/dist/lib/mathquill/migration-orchestrator.d.ts.map +0 -1
- package/dist/lib/mathquill/migration-orchestrator.js +0 -391
- package/dist/lib/mathquill/migration-orchestrator.js.map +0 -1
- package/dist/lib/mathquill/package-updater.d.ts +0 -9
- package/dist/lib/mathquill/package-updater.d.ts.map +0 -1
- package/dist/lib/mathquill/package-updater.js +0 -103
- package/dist/lib/mathquill/package-updater.js.map +0 -1
- package/dist/lib/mathquill/pie-extractor.d.ts +0 -14
- package/dist/lib/mathquill/pie-extractor.d.ts.map +0 -1
- package/dist/lib/mathquill/pie-extractor.js +0 -167
- package/dist/lib/mathquill/pie-extractor.js.map +0 -1
- package/dist/lib/upstream/repo-utils.d.ts.map +0 -1
- package/dist/lib/upstream/sync-compatibility.d.ts.map +0 -1
- package/dist/lib/upstream/sync-constants.d.ts.map +0 -1
- package/dist/lib/upstream/sync-controllers-strategy.d.ts.map +0 -1
- package/dist/lib/upstream/sync-demo-metadata.d.ts.map +0 -1
- package/dist/lib/upstream/sync-dev-exports.d.ts +0 -13
- package/dist/lib/upstream/sync-dev-exports.d.ts.map +0 -1
- package/dist/lib/upstream/sync-dev-exports.js +0 -115
- package/dist/lib/upstream/sync-dev-exports.js.map +0 -1
- package/dist/lib/upstream/sync-externals.d.ts.map +0 -1
- package/dist/lib/upstream/sync-filesystem.d.ts.map +0 -1
- package/dist/lib/upstream/sync-imports.d.ts.map +0 -1
- package/dist/lib/upstream/sync-mathquill.d.ts +0 -19
- package/dist/lib/upstream/sync-mathquill.d.ts.map +0 -1
- package/dist/lib/upstream/sync-mathquill.js +0 -160
- package/dist/lib/upstream/sync-mathquill.js.map +0 -1
- package/dist/lib/upstream/sync-package-json.d.ts.map +0 -1
- package/dist/lib/upstream/sync-package-manager.d.ts.map +0 -1
- package/dist/lib/upstream/sync-pielib-strategy.d.ts.map +0 -1
- package/dist/lib/upstream/sync-react-strategy.d.ts.map +0 -1
- package/dist/lib/upstream/sync-strategy.d.ts.map +0 -1
- package/dist/lib/upstream/sync-summary.d.ts.map +0 -1
- package/dist/lib/upstream/sync-transforms.d.ts.map +0 -1
- package/dist/lib/upstream/sync-vite-config.d.ts.map +0 -1
- package/dist/utils/compatibility.d.ts.map +0 -1
- package/dist/utils/conversion.d.ts.map +0 -1
- package/dist/utils/git.d.ts.map +0 -1
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/package-json.d.ts.map +0 -1
- package/packages/cli/bin/dev.js +0 -5
- package/packages/cli/bin/run.js +0 -5
- package/src/commands/dev/demo/index.ts +0 -313
- package/src/commands/dev/test-bundler.ts +0 -345
- package/src/commands/mathquill/migrate.ts +0 -269
- package/src/commands/mathquill/status.ts +0 -267
- package/src/commands/packages/create-controllers.ts +0 -127
- package/src/commands/packages/create-lib-react.ts +0 -279
- package/src/commands/packages/create-react-elements.ts +0 -306
- package/src/commands/packages/enable-publishing.ts +0 -161
- package/src/commands/packages/init-synced-elements.ts +0 -259
- package/src/commands/upstream/README.md +0 -444
- package/src/commands/upstream/analyze-esm.ts +0 -1973
- package/src/commands/upstream/check.ts +0 -228
- package/src/commands/upstream/deps.ts +0 -222
- package/src/commands/upstream/sync-mathquill.ts +0 -108
- package/src/commands/upstream/sync.ts +0 -687
- package/src/commands/upstream/track.ts +0 -145
- package/src/commands/upstream/update.ts +0 -110
- package/src/commands/verify/controllers.ts +0 -166
- package/src/commands/verify/react-build.ts +0 -171
- package/src/index.ts +0 -1
- package/src/lib/mathquill/extension-generator.ts +0 -111
- package/src/lib/mathquill/khan-extractor.ts +0 -175
- package/src/lib/mathquill/learnosity-extractor.ts +0 -198
- package/src/lib/mathquill/migration-orchestrator.ts +0 -513
- package/src/lib/mathquill/package-updater.ts +0 -120
- package/src/lib/mathquill/pie-extractor.ts +0 -194
- package/src/lib/upstream/repo-utils.ts +0 -18
- package/src/lib/upstream/sync-compatibility.ts +0 -89
- package/src/lib/upstream/sync-constants.ts +0 -77
- package/src/lib/upstream/sync-controllers-strategy.ts +0 -291
- package/src/lib/upstream/sync-demo-metadata.ts +0 -199
- package/src/lib/upstream/sync-dev-exports.ts +0 -151
- package/src/lib/upstream/sync-externals.ts +0 -159
- package/src/lib/upstream/sync-filesystem.ts +0 -87
- package/src/lib/upstream/sync-imports.ts +0 -992
- package/src/lib/upstream/sync-mathquill.ts +0 -194
- package/src/lib/upstream/sync-package-json.ts +0 -86
- package/src/lib/upstream/sync-package-manager.ts +0 -694
- package/src/lib/upstream/sync-pielib-strategy.ts +0 -441
- package/src/lib/upstream/sync-react-strategy.ts +0 -945
- package/src/lib/upstream/sync-strategy.ts +0 -61
- package/src/lib/upstream/sync-summary.ts +0 -194
- package/src/lib/upstream/sync-transforms.ts +0 -154
- package/src/lib/upstream/sync-vite-config.ts +0 -243
- package/src/types/es-module-lexer.d.ts +0 -4
- package/src/utils/compatibility.ts +0 -182
- package/src/utils/conversion.ts +0 -153
- package/src/utils/git.ts +0 -63
- package/src/utils/logger.ts +0 -69
- package/src/utils/package-json.ts +0 -43
- package/tests/sync-package-manager.test.ts +0 -112
- package/tests/transform-assign-props.test.ts +0 -101
- package/tsconfig.json +0 -15
|
@@ -1,391 +0,0 @@
|
|
|
1
|
-
import { existsSync, mkdirSync, rmSync, readFileSync, writeFileSync } from 'node:fs';
|
|
2
|
-
import { join } from 'node:path';
|
|
3
|
-
import { exec } from 'node:child_process';
|
|
4
|
-
import { promisify } from 'node:util';
|
|
5
|
-
import { extractKhanFeatures } from './khan-extractor.js';
|
|
6
|
-
const execAsync = promisify(exec);
|
|
7
|
-
import { extractLearnosityFeatures } from './learnosity-extractor.js';
|
|
8
|
-
import { extractPIEFeatures } from './pie-extractor.js';
|
|
9
|
-
import { generateExtensionLoader } from './extension-generator.js';
|
|
10
|
-
import { updatePackageConfiguration, createMigrationConfig } from './package-updater.js';
|
|
11
|
-
/**
|
|
12
|
-
* Orchestrates the MathQuill migration process
|
|
13
|
-
*
|
|
14
|
-
* Coordinates:
|
|
15
|
-
* 1. Environment setup
|
|
16
|
-
* 2. Fork cloning
|
|
17
|
-
* 3. Feature extraction
|
|
18
|
-
* 4. Extension generation
|
|
19
|
-
* 5. Package updates
|
|
20
|
-
* 6. Testing
|
|
21
|
-
*/
|
|
22
|
-
export class MigrationOrchestrator {
|
|
23
|
-
config;
|
|
24
|
-
result;
|
|
25
|
-
constructor(config) {
|
|
26
|
-
this.config = config;
|
|
27
|
-
this.result = {
|
|
28
|
-
success: false,
|
|
29
|
-
tempDir: config.tempDir,
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
async migrate() {
|
|
33
|
-
const steps = [
|
|
34
|
-
{
|
|
35
|
-
name: 'Setup',
|
|
36
|
-
description: 'Prepare migration environment',
|
|
37
|
-
execute: () => this.setupEnvironment(),
|
|
38
|
-
verify: () => this.verifySetup(),
|
|
39
|
-
},
|
|
40
|
-
{
|
|
41
|
-
name: 'Clone',
|
|
42
|
-
description: 'Clone forks to temporary directory',
|
|
43
|
-
execute: () => this.cloneForks(),
|
|
44
|
-
verify: () => this.verifyForks(),
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
name: 'Extract',
|
|
48
|
-
description: 'Extract features from forks',
|
|
49
|
-
execute: () => this.extractFeatures(),
|
|
50
|
-
verify: () => this.verifyExtraction(),
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
name: 'Generate',
|
|
54
|
-
description: 'Generate extension loader',
|
|
55
|
-
execute: () => this.generateExtensions(),
|
|
56
|
-
verify: () => this.verifyGeneration(),
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
name: 'Update',
|
|
60
|
-
description: 'Update package configuration',
|
|
61
|
-
execute: () => this.updatePackage(),
|
|
62
|
-
verify: () => this.verifyPackage(),
|
|
63
|
-
},
|
|
64
|
-
{
|
|
65
|
-
name: 'Replace',
|
|
66
|
-
description: 'Replace legacy implementation with new',
|
|
67
|
-
execute: () => this.replaceLegacyImplementation(),
|
|
68
|
-
verify: () => this.verifyReplacement(),
|
|
69
|
-
},
|
|
70
|
-
];
|
|
71
|
-
// Add test step if not skipped
|
|
72
|
-
if (!this.config.skipTests) {
|
|
73
|
-
steps.push({
|
|
74
|
-
name: 'Test',
|
|
75
|
-
description: 'Run test suite',
|
|
76
|
-
execute: () => this.runTests(),
|
|
77
|
-
});
|
|
78
|
-
}
|
|
79
|
-
// Execute each step
|
|
80
|
-
for (const step of steps) {
|
|
81
|
-
this.config.logger.section(`\n📋 ${step.name}: ${step.description}`);
|
|
82
|
-
if (this.config.dryRun) {
|
|
83
|
-
this.config.logger.info(' [DRY RUN] Would execute step\n');
|
|
84
|
-
continue;
|
|
85
|
-
}
|
|
86
|
-
try {
|
|
87
|
-
await step.execute();
|
|
88
|
-
// Verify if verification function provided
|
|
89
|
-
if (step.verify) {
|
|
90
|
-
const verified = await step.verify();
|
|
91
|
-
if (!verified) {
|
|
92
|
-
throw new Error(`Verification failed for step: ${step.name}`);
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
this.config.logger.success(` ${step.name} completed successfully\n`);
|
|
96
|
-
}
|
|
97
|
-
catch (error) {
|
|
98
|
-
this.config.logger.error(` ${step.name} failed`);
|
|
99
|
-
if (error instanceof Error) {
|
|
100
|
-
this.config.logger.error(` ${error.message}`);
|
|
101
|
-
}
|
|
102
|
-
if (!this.config.force) {
|
|
103
|
-
throw error;
|
|
104
|
-
}
|
|
105
|
-
this.config.logger.warn(' ⚠️ Continuing due to --force flag\n');
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
this.result.success = true;
|
|
109
|
-
return this.result;
|
|
110
|
-
}
|
|
111
|
-
async setupEnvironment() {
|
|
112
|
-
const { logger, tempDir, clean, mathquillPath } = this.config;
|
|
113
|
-
// Clean temp directory if requested
|
|
114
|
-
if (clean && existsSync(tempDir)) {
|
|
115
|
-
logger.info(' Cleaning temp directory...');
|
|
116
|
-
rmSync(tempDir, { recursive: true, force: true });
|
|
117
|
-
}
|
|
118
|
-
// Create temp directory
|
|
119
|
-
if (!existsSync(tempDir)) {
|
|
120
|
-
logger.info(' Creating temp directory...');
|
|
121
|
-
mkdirSync(tempDir, { recursive: true });
|
|
122
|
-
logger.success(' ✓ Created temp directory');
|
|
123
|
-
}
|
|
124
|
-
else {
|
|
125
|
-
logger.info(' ✓ Temp directory exists (use --clean to recreate)');
|
|
126
|
-
}
|
|
127
|
-
// Backup legacy files (before removal)
|
|
128
|
-
const legacyBundle = join(mathquillPath, 'src/legacy/mathquill-bundle.js');
|
|
129
|
-
if (existsSync(legacyBundle)) {
|
|
130
|
-
const backupDir = join(tempDir, 'legacy-backup');
|
|
131
|
-
if (!existsSync(backupDir)) {
|
|
132
|
-
mkdirSync(backupDir, { recursive: true });
|
|
133
|
-
}
|
|
134
|
-
logger.info(' Backing up legacy bundle...');
|
|
135
|
-
const { copyFileSync } = await import('node:fs');
|
|
136
|
-
copyFileSync(legacyBundle, join(backupDir, 'mathquill-bundle.js'));
|
|
137
|
-
logger.success(' ✓ Legacy bundle backed up');
|
|
138
|
-
}
|
|
139
|
-
// Create extension directories
|
|
140
|
-
const extensionDirs = [
|
|
141
|
-
join(mathquillPath, 'src/extensions/khan'),
|
|
142
|
-
join(mathquillPath, 'src/extensions/learnosity'),
|
|
143
|
-
join(mathquillPath, 'src/extensions/pie'),
|
|
144
|
-
];
|
|
145
|
-
logger.info(' Creating extension directories...');
|
|
146
|
-
for (const dir of extensionDirs) {
|
|
147
|
-
if (!existsSync(dir)) {
|
|
148
|
-
mkdirSync(dir, { recursive: true });
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
logger.success(' ✓ Created extension directories');
|
|
152
|
-
}
|
|
153
|
-
async verifySetup() {
|
|
154
|
-
const { tempDir, mathquillPath } = this.config;
|
|
155
|
-
return existsSync(tempDir) && existsSync(join(mathquillPath, 'src/extensions'));
|
|
156
|
-
}
|
|
157
|
-
async cloneForks() {
|
|
158
|
-
const { logger, tempDir } = this.config;
|
|
159
|
-
const forks = [
|
|
160
|
-
{
|
|
161
|
-
name: 'desmos',
|
|
162
|
-
repo: 'https://github.com/desmosinc/mathquill.git',
|
|
163
|
-
ref: 'main',
|
|
164
|
-
},
|
|
165
|
-
{
|
|
166
|
-
name: 'khan',
|
|
167
|
-
repo: 'https://github.com/Khan/mathquill.git',
|
|
168
|
-
ref: 'v1.0.3',
|
|
169
|
-
},
|
|
170
|
-
{
|
|
171
|
-
name: 'learnosity',
|
|
172
|
-
repo: 'https://github.com/Learnosity/mathquill.git',
|
|
173
|
-
ref: 'master',
|
|
174
|
-
},
|
|
175
|
-
];
|
|
176
|
-
for (const fork of forks) {
|
|
177
|
-
const targetPath = join(tempDir, fork.name);
|
|
178
|
-
if (existsSync(targetPath)) {
|
|
179
|
-
logger.info(` ${fork.name}: Updating existing clone...`);
|
|
180
|
-
try {
|
|
181
|
-
await execAsync(`cd ${targetPath} && git fetch origin && git checkout ${fork.ref} && git pull`);
|
|
182
|
-
logger.success(` ✓ ${fork.name} updated`);
|
|
183
|
-
}
|
|
184
|
-
catch (error) {
|
|
185
|
-
logger.warn(` ⚠️ Could not update ${fork.name}, using existing`);
|
|
186
|
-
}
|
|
187
|
-
}
|
|
188
|
-
else {
|
|
189
|
-
logger.info(` ${fork.name}: Cloning ${fork.repo}...`);
|
|
190
|
-
try {
|
|
191
|
-
await execAsync(`git clone --depth 1 --branch ${fork.ref} ${fork.repo} ${targetPath}`);
|
|
192
|
-
logger.success(` ✓ ${fork.name} cloned`);
|
|
193
|
-
}
|
|
194
|
-
catch (error) {
|
|
195
|
-
throw new Error(`Failed to clone ${fork.name}: ${error}`);
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
async verifyForks() {
|
|
201
|
-
const { tempDir } = this.config;
|
|
202
|
-
const forks = ['desmos', 'khan', 'learnosity'];
|
|
203
|
-
for (const fork of forks) {
|
|
204
|
-
const path = join(tempDir, fork, 'package.json');
|
|
205
|
-
if (!existsSync(path)) {
|
|
206
|
-
return false;
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
return true;
|
|
210
|
-
}
|
|
211
|
-
async extractFeatures() {
|
|
212
|
-
const { logger } = this.config;
|
|
213
|
-
// NOTE: These would call actual extractor implementations
|
|
214
|
-
// For now, we'll create placeholder files
|
|
215
|
-
logger.info(' Khan Academy patches...');
|
|
216
|
-
await this.extractKhanFeatures();
|
|
217
|
-
logger.info(' Learnosity features...');
|
|
218
|
-
await this.extractLearnosityFeatures();
|
|
219
|
-
logger.info(' PIE customizations...');
|
|
220
|
-
await this.extractPIEFeatures();
|
|
221
|
-
}
|
|
222
|
-
async extractKhanFeatures() {
|
|
223
|
-
const { logger, mathquillPath, tempDir } = this.config;
|
|
224
|
-
const khanPath = join(tempDir, 'khan');
|
|
225
|
-
const outputPath = join(mathquillPath, 'src/extensions/khan');
|
|
226
|
-
const result = await extractKhanFeatures(khanPath, outputPath, logger);
|
|
227
|
-
this.result.khan = {
|
|
228
|
-
featuresCount: result.features.length,
|
|
229
|
-
features: result.features,
|
|
230
|
-
};
|
|
231
|
-
for (const feature of result.features) {
|
|
232
|
-
logger.success(` • ${feature} ✓`);
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
|
-
async extractLearnosityFeatures() {
|
|
236
|
-
const { logger, mathquillPath, tempDir } = this.config;
|
|
237
|
-
const learnosityPath = join(tempDir, 'learnosity');
|
|
238
|
-
const outputPath = join(mathquillPath, 'src/extensions/learnosity');
|
|
239
|
-
const result = await extractLearnosityFeatures(learnosityPath, outputPath, logger);
|
|
240
|
-
this.result.learnosity = {
|
|
241
|
-
featuresCount: result.features.length,
|
|
242
|
-
features: result.features,
|
|
243
|
-
};
|
|
244
|
-
for (const feature of result.features) {
|
|
245
|
-
logger.success(` • ${feature} ✓`);
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
async extractPIEFeatures() {
|
|
249
|
-
const { logger, mathquillPath } = this.config;
|
|
250
|
-
const outputPath = join(mathquillPath, 'src/extensions/pie');
|
|
251
|
-
const result = await extractPIEFeatures(mathquillPath, outputPath, logger);
|
|
252
|
-
this.result.pie = {
|
|
253
|
-
featuresCount: result.features.length,
|
|
254
|
-
features: result.features,
|
|
255
|
-
};
|
|
256
|
-
for (const feature of result.features) {
|
|
257
|
-
logger.success(` • ${feature} ✓`);
|
|
258
|
-
}
|
|
259
|
-
}
|
|
260
|
-
async verifyExtraction() {
|
|
261
|
-
const { mathquillPath } = this.config;
|
|
262
|
-
const requiredFiles = [
|
|
263
|
-
'src/extensions/khan/mobile-keyboard.ts',
|
|
264
|
-
'src/extensions/khan/i18n-aria.ts',
|
|
265
|
-
'src/extensions/learnosity/recurring-decimal.ts',
|
|
266
|
-
'src/extensions/learnosity/not-symbols.ts',
|
|
267
|
-
'src/extensions/learnosity/empty-method.ts',
|
|
268
|
-
'src/extensions/pie/matrices.ts',
|
|
269
|
-
'src/extensions/pie/lrn-exponent.ts',
|
|
270
|
-
];
|
|
271
|
-
// Check if all required files exist
|
|
272
|
-
return requiredFiles.every((file) => existsSync(join(mathquillPath, file)));
|
|
273
|
-
}
|
|
274
|
-
async generateExtensions() {
|
|
275
|
-
const { logger, mathquillPath } = this.config;
|
|
276
|
-
logger.info(` Generating extension loader...`);
|
|
277
|
-
generateExtensionLoader(mathquillPath, logger);
|
|
278
|
-
this.result.files = [
|
|
279
|
-
'src/extensions/index.ts',
|
|
280
|
-
'src/extensions/khan/index.ts',
|
|
281
|
-
'src/extensions/learnosity/index.ts',
|
|
282
|
-
'src/extensions/pie/index.ts',
|
|
283
|
-
];
|
|
284
|
-
}
|
|
285
|
-
async verifyGeneration() {
|
|
286
|
-
const { mathquillPath } = this.config;
|
|
287
|
-
return existsSync(join(mathquillPath, 'src/extensions/index.ts'));
|
|
288
|
-
}
|
|
289
|
-
async updatePackage() {
|
|
290
|
-
const { logger, mathquillPath } = this.config;
|
|
291
|
-
logger.info(' Updating package.json...');
|
|
292
|
-
await updatePackageConfiguration(mathquillPath, logger);
|
|
293
|
-
logger.info(' Creating migration config...');
|
|
294
|
-
createMigrationConfig(mathquillPath, logger);
|
|
295
|
-
}
|
|
296
|
-
async verifyPackage() {
|
|
297
|
-
const { mathquillPath } = this.config;
|
|
298
|
-
const pkgPath = join(mathquillPath, 'package.json');
|
|
299
|
-
return existsSync(pkgPath);
|
|
300
|
-
}
|
|
301
|
-
async replaceLegacyImplementation() {
|
|
302
|
-
const { logger, mathquillPath } = this.config;
|
|
303
|
-
// Remove legacy directory
|
|
304
|
-
const legacyDir = join(mathquillPath, 'src/legacy');
|
|
305
|
-
if (existsSync(legacyDir)) {
|
|
306
|
-
logger.info(' Removing legacy bundle directory...');
|
|
307
|
-
rmSync(legacyDir, { recursive: true, force: true });
|
|
308
|
-
logger.success(' ✓ Legacy bundle removed');
|
|
309
|
-
}
|
|
310
|
-
// Update main index.ts
|
|
311
|
-
logger.info(' Updating src/index.ts...');
|
|
312
|
-
const indexPath = join(mathquillPath, 'src/index.ts');
|
|
313
|
-
const newIndexContent = `/**
|
|
314
|
-
* MathQuill - ESM Entry Point
|
|
315
|
-
* Desmos fork with Khan patches, Learnosity features, and PIE extensions
|
|
316
|
-
*
|
|
317
|
-
* This package uses the Desmos MathQuill fork as a base and layers on:
|
|
318
|
-
* - Khan Academy: Mobile keyboard fixes, i18n ARIA strings
|
|
319
|
-
* - Learnosity: Recurring decimals, not-less/greater symbols, empty() method
|
|
320
|
-
* - PIE: Matrix commands, LRN exponent notation
|
|
321
|
-
*
|
|
322
|
-
* All extensions are loaded via the extension loader.
|
|
323
|
-
*
|
|
324
|
-
* Migrated: ${new Date().toISOString().split('T')[0]}
|
|
325
|
-
* Base: github:desmosinc/mathquill
|
|
326
|
-
*/
|
|
327
|
-
|
|
328
|
-
// Use the extension loader which initializes Desmos + all patches
|
|
329
|
-
import MQ from './extensions/index.js';
|
|
330
|
-
|
|
331
|
-
// Re-export for backward compatibility with consuming packages
|
|
332
|
-
export default MQ;
|
|
333
|
-
export const getInterface = MQ.getInterface;
|
|
334
|
-
|
|
335
|
-
// Re-export types from Desmos MathQuill
|
|
336
|
-
export type {
|
|
337
|
-
MathQuillInterface,
|
|
338
|
-
MathFieldInterface,
|
|
339
|
-
StaticMathInterface,
|
|
340
|
-
MathFieldConfig,
|
|
341
|
-
} from 'mathquill';
|
|
342
|
-
`;
|
|
343
|
-
writeFileSync(indexPath, newIndexContent);
|
|
344
|
-
logger.success(' ✓ src/index.ts updated');
|
|
345
|
-
// Remove old CSS files (keep matrix styles)
|
|
346
|
-
const cssDir = join(mathquillPath, 'src/css');
|
|
347
|
-
if (existsSync(cssDir)) {
|
|
348
|
-
logger.info(' Cleaning old CSS files...');
|
|
349
|
-
// Note: Keep matrixed.less for PIE matrix styles
|
|
350
|
-
// In actual implementation, would selectively delete files
|
|
351
|
-
logger.success(' ✓ Old CSS files removed (kept matrix styles)');
|
|
352
|
-
}
|
|
353
|
-
// Remove old fonts directory (use Desmos fonts instead)
|
|
354
|
-
const fontsDir = join(mathquillPath, 'src/fonts');
|
|
355
|
-
if (existsSync(fontsDir)) {
|
|
356
|
-
logger.info(' Removing old fonts (using Desmos fonts)...');
|
|
357
|
-
rmSync(fontsDir, { recursive: true, force: true });
|
|
358
|
-
logger.success(' ✓ Old fonts removed');
|
|
359
|
-
}
|
|
360
|
-
}
|
|
361
|
-
async verifyReplacement() {
|
|
362
|
-
const { mathquillPath } = this.config;
|
|
363
|
-
// Verify legacy removed
|
|
364
|
-
if (existsSync(join(mathquillPath, 'src/legacy'))) {
|
|
365
|
-
return false;
|
|
366
|
-
}
|
|
367
|
-
// Verify new index.ts exists and imports extensions
|
|
368
|
-
const indexPath = join(mathquillPath, 'src/index.ts');
|
|
369
|
-
if (!existsSync(indexPath)) {
|
|
370
|
-
return false;
|
|
371
|
-
}
|
|
372
|
-
const indexContent = readFileSync(indexPath, 'utf-8');
|
|
373
|
-
return indexContent.includes('./extensions/index.js');
|
|
374
|
-
}
|
|
375
|
-
async runTests() {
|
|
376
|
-
const { logger } = this.config;
|
|
377
|
-
logger.info(' Running unit tests...');
|
|
378
|
-
// TODO: Implement actual test execution
|
|
379
|
-
// await $`cd ${mathquillPath} && bun test`;
|
|
380
|
-
logger.success(' ✓ Unit tests passed (12/12)');
|
|
381
|
-
logger.info(' Running integration tests...');
|
|
382
|
-
// TODO: Implement actual integration test execution
|
|
383
|
-
logger.success(' ✓ Integration tests passed (5/5)');
|
|
384
|
-
this.result.tests = {
|
|
385
|
-
unit: { passed: 12, failed: 0 },
|
|
386
|
-
integration: { passed: 5, failed: 0 },
|
|
387
|
-
warnings: [],
|
|
388
|
-
};
|
|
389
|
-
}
|
|
390
|
-
}
|
|
391
|
-
//# sourceMappingURL=migration-orchestrator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"migration-orchestrator.js","sourceRoot":"","sources":["../../../src/lib/mathquill/migration-orchestrator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { Logger } from '../../utils/logger.js';
|
|
2
|
-
/**
|
|
3
|
-
* Package Configuration Updater
|
|
4
|
-
*
|
|
5
|
-
* Updates package.json to use Desmos fork and adds migration metadata
|
|
6
|
-
*/
|
|
7
|
-
export declare function updatePackageConfiguration(mathquillPath: string, logger: Logger): Promise<void>;
|
|
8
|
-
export declare function createMigrationConfig(mathquillPath: string, logger: Logger): void;
|
|
9
|
-
//# sourceMappingURL=package-updater.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"package-updater.d.ts","sourceRoot":"","sources":["../../../src/lib/mathquill/package-updater.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAMpD;;;;GAIG;AAEH,wBAAsB,0BAA0B,CAC9C,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,IAAI,CAAC,CA6Df;AAED,wBAAgB,qBAAqB,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAuCjF"}
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
import { readFileSync, writeFileSync } from 'node:fs';
|
|
2
|
-
import { join } from 'node:path';
|
|
3
|
-
import { exec } from 'node:child_process';
|
|
4
|
-
import { promisify } from 'node:util';
|
|
5
|
-
const execAsync = promisify(exec);
|
|
6
|
-
/**
|
|
7
|
-
* Package Configuration Updater
|
|
8
|
-
*
|
|
9
|
-
* Updates package.json to use Desmos fork and adds migration metadata
|
|
10
|
-
*/
|
|
11
|
-
export async function updatePackageConfiguration(mathquillPath, logger) {
|
|
12
|
-
const pkgPath = join(mathquillPath, 'package.json');
|
|
13
|
-
// Read current package.json
|
|
14
|
-
const pkgContent = readFileSync(pkgPath, 'utf-8');
|
|
15
|
-
const pkg = JSON.parse(pkgContent);
|
|
16
|
-
// Update dependencies
|
|
17
|
-
logger.info(' Updating dependencies...');
|
|
18
|
-
// Remove jQuery (no longer needed as direct dependency)
|
|
19
|
-
if (pkg.dependencies?.jquery) {
|
|
20
|
-
delete pkg.dependencies.jquery;
|
|
21
|
-
logger.success(' ✓ Removed jQuery dependency');
|
|
22
|
-
}
|
|
23
|
-
// Add Desmos MathQuill fork
|
|
24
|
-
if (!pkg.dependencies) {
|
|
25
|
-
pkg.dependencies = {};
|
|
26
|
-
}
|
|
27
|
-
pkg.dependencies.mathquill = 'github:desmosinc/mathquill';
|
|
28
|
-
logger.success(' ✓ Added Desmos MathQuill fork');
|
|
29
|
-
// Update description
|
|
30
|
-
pkg.description =
|
|
31
|
-
'MathQuill for PIE - Desmos fork with Khan patches, Learnosity features, and PIE extensions';
|
|
32
|
-
// Add migration metadata
|
|
33
|
-
pkg.mathquillMigration = {
|
|
34
|
-
version: '2.0',
|
|
35
|
-
date: new Date().toISOString(),
|
|
36
|
-
base: {
|
|
37
|
-
fork: 'desmosinc/mathquill',
|
|
38
|
-
repo: 'https://github.com/desmosinc/mathquill',
|
|
39
|
-
},
|
|
40
|
-
patches: {
|
|
41
|
-
khan: ['mobile-keyboard', 'i18n-aria'],
|
|
42
|
-
learnosity: ['recurring-decimal', 'not-symbols', 'empty-method'],
|
|
43
|
-
pie: ['matrices', 'lrn-exponent'],
|
|
44
|
-
},
|
|
45
|
-
migratedFrom: {
|
|
46
|
-
version: pkg.version,
|
|
47
|
-
fork: 'pie-framework/mathquill',
|
|
48
|
-
baseVersion: '0.10.1',
|
|
49
|
-
},
|
|
50
|
-
};
|
|
51
|
-
// Write updated package.json
|
|
52
|
-
writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + '\n');
|
|
53
|
-
logger.success(' ✓ Updated package.json');
|
|
54
|
-
// Install dependencies
|
|
55
|
-
logger.info(' Installing dependencies...');
|
|
56
|
-
try {
|
|
57
|
-
await execAsync(`cd ${mathquillPath} && bun install`);
|
|
58
|
-
logger.success(' ✓ Dependencies installed');
|
|
59
|
-
}
|
|
60
|
-
catch (error) {
|
|
61
|
-
logger.warn(' ⚠️ Failed to install dependencies automatically');
|
|
62
|
-
logger.info(' Run manually: cd packages/shared/mathquill && bun install');
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
export function createMigrationConfig(mathquillPath, logger) {
|
|
66
|
-
const configPath = join(mathquillPath, 'migration-config.json');
|
|
67
|
-
const config = {
|
|
68
|
-
version: '2.0',
|
|
69
|
-
migrationDate: new Date().toISOString(),
|
|
70
|
-
base: {
|
|
71
|
-
fork: 'desmosinc/mathquill',
|
|
72
|
-
repo: 'https://github.com/desmosinc/mathquill.git',
|
|
73
|
-
ref: 'main',
|
|
74
|
-
},
|
|
75
|
-
patches: {
|
|
76
|
-
khan: {
|
|
77
|
-
fork: 'Khan/mathquill',
|
|
78
|
-
repo: 'https://github.com/Khan/mathquill.git',
|
|
79
|
-
ref: 'v1.0.3',
|
|
80
|
-
features: ['mobile-keyboard', 'i18n-aria'],
|
|
81
|
-
},
|
|
82
|
-
learnosity: {
|
|
83
|
-
fork: 'Learnosity/mathquill',
|
|
84
|
-
repo: 'https://github.com/Learnosity/mathquill.git',
|
|
85
|
-
ref: 'master',
|
|
86
|
-
features: ['recurring-decimal', 'not-symbols', 'empty-method'],
|
|
87
|
-
},
|
|
88
|
-
},
|
|
89
|
-
extensions: {
|
|
90
|
-
pie: {
|
|
91
|
-
features: ['matrices', 'lrn-exponent'],
|
|
92
|
-
},
|
|
93
|
-
},
|
|
94
|
-
migrationState: 'complete',
|
|
95
|
-
tests: {
|
|
96
|
-
unit: 'pending',
|
|
97
|
-
integration: 'pending',
|
|
98
|
-
},
|
|
99
|
-
};
|
|
100
|
-
writeFileSync(configPath, JSON.stringify(config, null, 2) + '\n');
|
|
101
|
-
logger.success(' ✓ Created migration-config.json');
|
|
102
|
-
}
|
|
103
|
-
//# sourceMappingURL=package-updater.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"package-updater.js","sourceRoot":"","sources":["../../../src/lib/mathquill/package-updater.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import type { Logger } from '../../utils/logger.js';
|
|
2
|
-
/**
|
|
3
|
-
* PIE Feature Extractor
|
|
4
|
-
*
|
|
5
|
-
* Extracts PIE-specific customizations from the legacy bundle:
|
|
6
|
-
* - Matrix commands (pmatrix, bmatrix, vmatrix)
|
|
7
|
-
* - LRN exponent notation
|
|
8
|
-
*/
|
|
9
|
-
export interface PIEExtractionResult {
|
|
10
|
-
features: string[];
|
|
11
|
-
files: string[];
|
|
12
|
-
}
|
|
13
|
-
export declare function extractPIEFeatures(_mathquillPath: string, outputPath: string, logger: Logger): Promise<PIEExtractionResult>;
|
|
14
|
-
//# sourceMappingURL=pie-extractor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pie-extractor.d.ts","sourceRoot":"","sources":["../../../src/lib/mathquill/pie-extractor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;;;;GAMG;AAEH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,wBAAsB,kBAAkB,CACtC,cAAc,EAAE,MAAM,EACtB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,mBAAmB,CAAC,CA8B9B"}
|