@effect-app/cli 1.23.24 → 1.24.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/CHANGELOG.md +12 -0
- package/dist/index.js +16 -177
- package/package.json +4 -4
- package/src/index.ts +15 -232
- package/vitest.config.ts.timestamp-1709838404819-f2fb28517168c.mjs +33 -0
- package/vitest.config.ts.timestamp-1709838418683-9c399c96f9d78.mjs +33 -0
- package/vitest.config.ts.timestamp-1709838649058-0e8f9431c893d.mjs +33 -0
- package/vitest.config.ts.timestamp-1711724061889-4985ba59def8.mjs +37 -0
- package/vitest.config.ts.timestamp-1711743471019-3c5e0c6ca2188.mjs +37 -0
- package/vitest.config.ts.timestamp-1711743489536-5ca18d3f67759.mjs +37 -0
- package/vitest.config.ts.timestamp-1711743593444-e40a8dcd4fc31.mjs +37 -0
- package/vitest.config.ts.timestamp-1711744615239-6a156fd39b9c9.mjs +37 -0
package/CHANGELOG.md
CHANGED
package/dist/index.js
CHANGED
|
@@ -24,17 +24,21 @@ Effect
|
|
|
24
24
|
const runNodeCommandEC = (cmd, cwd) => NodeCommand
|
|
25
25
|
.make("sh", "-c", cmd)
|
|
26
26
|
.pipe(NodeCommand.stdout("inherit"), NodeCommand.stderr("inherit"), cwd ? NodeCommand.workingDirectory(cwd) : identity, NodeCommand.exitCode);
|
|
27
|
-
/**
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
const runNodeCommand = (cmd, cwd) =>
|
|
36
|
-
|
|
37
|
-
|
|
27
|
+
// /**
|
|
28
|
+
// * Executes a shell command using Node.js Command API and captures output as string.
|
|
29
|
+
// * The command is run through the system shell (/bin/sh) for proper command parsing.
|
|
30
|
+
// *
|
|
31
|
+
// * @param cmd - The shell command to execute
|
|
32
|
+
// * @param cwd - Optional working directory to execute the command in
|
|
33
|
+
// * @returns An Effect that succeeds with the command output or fails with a PlatformError
|
|
34
|
+
// */
|
|
35
|
+
// const runNodeCommand = (cmd: string, cwd?: string) =>
|
|
36
|
+
// NodeCommand
|
|
37
|
+
// .make("sh", "-c", cmd)
|
|
38
|
+
// .pipe(
|
|
39
|
+
// cwd ? NodeCommand.workingDirectory(cwd) : identity,
|
|
40
|
+
// NodeCommand.string
|
|
41
|
+
// )
|
|
38
42
|
/**
|
|
39
43
|
* Executes a bash script file using Node.js Command API with inherited stdio streams.
|
|
40
44
|
* The script file is executed directly through the shell (/bin/sh).
|
|
@@ -452,169 +456,6 @@ Effect
|
|
|
452
456
|
yield* Effect.logInfo("All packages updated successfully");
|
|
453
457
|
}), "Stopped monitoring package.json exports for all packages")
|
|
454
458
|
.pipe(Command.withDescription("Generate and update package.json exports mappings for all packages in monorepo"));
|
|
455
|
-
const wiki = Command
|
|
456
|
-
.make("wiki", {}, Effect.fn("effa-cli.wiki")(function* () {
|
|
457
|
-
const action = yield* Prompt.select({
|
|
458
|
-
choices: [{
|
|
459
|
-
title: "sync",
|
|
460
|
-
description: "Initialize and update the documentation submodule",
|
|
461
|
-
value: "sync"
|
|
462
|
-
}, {
|
|
463
|
-
title: "update",
|
|
464
|
-
description: "Pull latest changes from remote, commit and push changes within the submodule",
|
|
465
|
-
value: "update"
|
|
466
|
-
}],
|
|
467
|
-
message: "Select wiki action"
|
|
468
|
-
});
|
|
469
|
-
const syncCommand = runNodeCommandEC("git submodule update --init --recursive --remote doc");
|
|
470
|
-
switch (action) {
|
|
471
|
-
case "sync": {
|
|
472
|
-
yield* Effect.logInfo("Initializing/updating git submodule for documentation...");
|
|
473
|
-
if ((yield* syncCommand) !== 0) {
|
|
474
|
-
return yield* Effect.fail(`Failed to sync submodule`);
|
|
475
|
-
}
|
|
476
|
-
break;
|
|
477
|
-
}
|
|
478
|
-
case "update": {
|
|
479
|
-
yield* Effect.logInfo("Pulling latest changes from remote submodule...");
|
|
480
|
-
if ((yield* syncCommand) !== 0) {
|
|
481
|
-
return yield* Effect.fail(`Failed to sync submodule`);
|
|
482
|
-
}
|
|
483
|
-
const commitMessage = yield* Prompt.text({
|
|
484
|
-
message: "Enter commit message:",
|
|
485
|
-
default: "update doc",
|
|
486
|
-
validate: (input) => input.trim().length > 0
|
|
487
|
-
? Effect.succeed(input.trim())
|
|
488
|
-
: Effect.fail("Commit message cannot be empty")
|
|
489
|
-
});
|
|
490
|
-
yield* Effect.logInfo("Committing and pushing changes in submodule...");
|
|
491
|
-
if ((yield* runNodeCommandEC(`git -C doc add . && git -C doc commit -m '${commitMessage}' && git -C doc push`)) === 0) {
|
|
492
|
-
yield* Effect.logInfo("Submodule updated and pushed successfully");
|
|
493
|
-
}
|
|
494
|
-
break;
|
|
495
|
-
}
|
|
496
|
-
default: {
|
|
497
|
-
action;
|
|
498
|
-
return yield* Effect.fail(`Unknown wiki action: ${action}. Available actions: sync, update`);
|
|
499
|
-
}
|
|
500
|
-
}
|
|
501
|
-
// check if references to submodule have changed in main repo
|
|
502
|
-
// and offer to commit these changes
|
|
503
|
-
const statusOutput = yield* runNodeCommand("git status --porcelain");
|
|
504
|
-
const hasSubmoduleChanges = statusOutput
|
|
505
|
-
.split("\n")
|
|
506
|
-
.some((line) => line.trim().endsWith("doc") && line.trim().startsWith("M "));
|
|
507
|
-
if (hasSubmoduleChanges) {
|
|
508
|
-
const shouldCommitSubmodule = yield* Prompt.confirm({
|
|
509
|
-
message: "Changes to the submodule detected in main repository. Commit these changes?",
|
|
510
|
-
initial: false
|
|
511
|
-
});
|
|
512
|
-
if (shouldCommitSubmodule) {
|
|
513
|
-
const mainCommitMessage = yield* Prompt.text({
|
|
514
|
-
message: "Enter commit message for main repository:",
|
|
515
|
-
default: "update doc submodule reference",
|
|
516
|
-
validate: (input) => input.trim().length > 0
|
|
517
|
-
? Effect.succeed(input.trim())
|
|
518
|
-
: Effect.fail("Commit message cannot be empty")
|
|
519
|
-
});
|
|
520
|
-
if ((yield* runNodeCommandEC(`git commit -m '${mainCommitMessage}' doc`)) === 0) {
|
|
521
|
-
yield* Effect.logInfo("Main repository updated with submodule changes successfully");
|
|
522
|
-
}
|
|
523
|
-
else {
|
|
524
|
-
yield* Effect.logError("Failed to commit submodule changes in main repository");
|
|
525
|
-
}
|
|
526
|
-
}
|
|
527
|
-
else {
|
|
528
|
-
yield* Effect.logInfo("Remember to commit the submodule changes in the main repository later.");
|
|
529
|
-
}
|
|
530
|
-
}
|
|
531
|
-
else {
|
|
532
|
-
yield* Effect.logInfo("No changes to the submodule detected in main repository.");
|
|
533
|
-
}
|
|
534
|
-
}))
|
|
535
|
-
.pipe(Command.withDescription(`Manage the documentation wiki git submodule with interactive action selection.
|
|
536
|
-
|
|
537
|
-
Available actions:
|
|
538
|
-
- sync: Initialize and update the documentation submodule from remote
|
|
539
|
-
- update: Pull latest changes, commit and push changes within the submodule
|
|
540
|
-
|
|
541
|
-
After any action, automatically detects and offers to commit submodule reference changes in the main repository.`));
|
|
542
|
-
const initWiki = Command
|
|
543
|
-
.make("init-wiki", {}, Effect.fn("effa-cli.initWiki")(function* ({}) {
|
|
544
|
-
yield* Effect.logInfo("⚠️ IMPORTANT: This is a one-time project setup command!");
|
|
545
|
-
// check if doc directory already exists in git index
|
|
546
|
-
const docInIndex = yield* runNodeCommand("git ls-files")
|
|
547
|
-
.pipe(Effect.map((output) => output.split("\n").some((line) => line.startsWith("doc/") || line === "doc")), Effect.catchAll(() => Effect.succeed(false)));
|
|
548
|
-
if (docInIndex) {
|
|
549
|
-
return yield* Effect.logError(`❌ ERROR: A 'doc' directory already exists in the git index!
|
|
550
|
-
|
|
551
|
-
This suggests the wiki submodule may have been initialized before, or there are conflicting files.
|
|
552
|
-
|
|
553
|
-
Required actions before proceeding:
|
|
554
|
-
1. Move existing doc files to GitHub wiki or another location
|
|
555
|
-
2. Remove the doc directory from filesystem: rm -rf doc
|
|
556
|
-
3. Remove the doc directory from git index: git rm --cached -r doc
|
|
557
|
-
4. Commit the removal: git commit -m "Remove doc directory"
|
|
558
|
-
5. Re-run this command
|
|
559
|
-
|
|
560
|
-
Operation cancelled for safety.`);
|
|
561
|
-
}
|
|
562
|
-
const confirmation = yield* Prompt.confirm({
|
|
563
|
-
message: `This command will initialize the wiki submodule for this project.
|
|
564
|
-
|
|
565
|
-
⚠️ WARNING: This is NOT the command to use for local submodule initialization!
|
|
566
|
-
|
|
567
|
-
This command should only be run ONCE in the entire project history by a project maintainer to:
|
|
568
|
-
- Set up the initial .gitmodules configuration
|
|
569
|
-
- Add the wiki submodule to the repository
|
|
570
|
-
- Commit the submodule configuration
|
|
571
|
-
|
|
572
|
-
For normal local development, use 'effa wiki sync' instead.
|
|
573
|
-
|
|
574
|
-
Are you sure you want to proceed with the one-time project setup?`,
|
|
575
|
-
initial: false
|
|
576
|
-
});
|
|
577
|
-
if (!confirmation) {
|
|
578
|
-
return yield* Effect.logInfo("Operation cancelled. Use 'effa wiki sync' for normal wiki operations.");
|
|
579
|
-
}
|
|
580
|
-
yield* Effect.logInfo("Extracting project name from git remote...");
|
|
581
|
-
const remoteUrl = yield* runNodeCommand("git config --get remote.origin.url");
|
|
582
|
-
// extract project name from URL (supports both SSH and HTTPS)
|
|
583
|
-
//
|
|
584
|
-
// - git@github.com:user/project-name.git -> project-name
|
|
585
|
-
// - https://github.com/user/project-name.git -> project-name
|
|
586
|
-
let detectedProjectName = remoteUrl
|
|
587
|
-
.split("/")
|
|
588
|
-
.pop()
|
|
589
|
-
?.replace(/\.git$/, "")
|
|
590
|
-
?.trim();
|
|
591
|
-
yield* detectedProjectName
|
|
592
|
-
? Effect.logInfo(`Detected project name from git remote: ${detectedProjectName}`)
|
|
593
|
-
: Effect.logWarning("Could not determine project name from git remote");
|
|
594
|
-
detectedProjectName = yield* Prompt.text({
|
|
595
|
-
message: detectedProjectName
|
|
596
|
-
? "Please confirm or modify the project name:"
|
|
597
|
-
: "Please enter the project name:",
|
|
598
|
-
...detectedProjectName && { default: detectedProjectName },
|
|
599
|
-
validate: (input) => input.trim().length > 0
|
|
600
|
-
? Effect.succeed(input.trim())
|
|
601
|
-
: Effect.fail("Project name cannot be empty")
|
|
602
|
-
});
|
|
603
|
-
yield* Effect.logInfo(`Using project name: ${detectedProjectName}`);
|
|
604
|
-
yield* Effect.logInfo("Creating .gitmodules file...");
|
|
605
|
-
yield* runNodeCommandEC(`echo '' >> .gitmodules`);
|
|
606
|
-
yield* runNodeCommandEC(`echo '[submodule "doc"]' >> .gitmodules`);
|
|
607
|
-
yield* runNodeCommandEC(`echo ' path = doc' >> .gitmodules`);
|
|
608
|
-
yield* runNodeCommandEC(`echo ' url = ../${detectedProjectName}.wiki.git' >> .gitmodules`);
|
|
609
|
-
yield* runNodeCommandEC(`echo ' branch = master' >> .gitmodules`);
|
|
610
|
-
yield* runNodeCommandEC(`echo ' update = merge' >> .gitmodules`);
|
|
611
|
-
yield* Effect.logInfo("Adding git submodule for documentation wiki...");
|
|
612
|
-
yield* runNodeCommandEC(`git submodule add -b master ../${detectedProjectName}.wiki.git doc`);
|
|
613
|
-
yield* Effect.logInfo("Committing wiki submodule addition...");
|
|
614
|
-
yield* runNodeCommandEC("git add . && git commit -am 'Add doc submodule'");
|
|
615
|
-
return yield* Effect.logInfo("Wiki submodule initialized successfully");
|
|
616
|
-
}))
|
|
617
|
-
.pipe(Command.withDescription("Set up the wiki submodule for the project (one-time setup)"));
|
|
618
459
|
const nuke = Command
|
|
619
460
|
.make("nuke", {
|
|
620
461
|
dryRun: Options.boolean("dry-run").pipe(Options.withDescription("Show what would be done without making changes")),
|
|
@@ -644,8 +485,6 @@ Are you sure you want to proceed with the one-time project setup?`,
|
|
|
644
485
|
indexMulti,
|
|
645
486
|
packagejson,
|
|
646
487
|
packagejsonPackages,
|
|
647
|
-
wiki,
|
|
648
|
-
initWiki,
|
|
649
488
|
nuke
|
|
650
489
|
])), {
|
|
651
490
|
name: "Effect-App CLI by jfet97 ❤️",
|
|
@@ -654,4 +493,4 @@ Are you sure you want to proceed with the one-time project setup?`,
|
|
|
654
493
|
return yield* cli(process.argv);
|
|
655
494
|
})()
|
|
656
495
|
.pipe(Effect.scoped, Effect.provide(NodeContext.layer), NodeRuntime.runMain);
|
|
657
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsa0RBQWtEO0FBQ2xELHFDQUFxQztBQUNyQyw4Q0FBOEM7QUFDOUMsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUM1RCxPQUFPLEVBQUUsT0FBTyxJQUFJLFdBQVcsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDM0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUloRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFjLE1BQU0sUUFBUSxDQUFBO0FBQ3JFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUMzRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRXRDLE1BQU07S0FDSCxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUE7SUFDdkMsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQTtJQUM3QixNQUFNLHFCQUFxQixHQUFHLEtBQUssQ0FBQyxDQUFDLDRCQUE0QixDQUFBO0lBRWpFLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLENBQUE7SUFFOUU7Ozs7Ozs7T0FPRztJQUNILE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxHQUFXLEVBQUUsR0FBWSxFQUFFLEVBQUUsQ0FDckQsV0FBVztTQUNSLElBQUksQ0FBQyxJQUFJ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
|
|
496
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsa0RBQWtEO0FBQ2xELHFDQUFxQztBQUNyQyw4Q0FBOEM7QUFDOUMsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGFBQWEsQ0FBQTtBQUM1RCxPQUFPLEVBQUUsT0FBTyxJQUFJLFdBQVcsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFDM0UsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQTtBQUloRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFjLE1BQU0sUUFBUSxDQUFBO0FBQ3JFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGNBQWMsQ0FBQTtBQUMzRCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sYUFBYSxDQUFBO0FBRXRDLE1BQU07S0FDSCxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUE7SUFDdkMsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQTtJQUM3QixNQUFNLHFCQUFxQixHQUFHLEtBQUssQ0FBQyxDQUFDLDRCQUE0QixDQUFBO0lBRWpFLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLENBQUE7SUFFOUU7Ozs7Ozs7T0FPRztJQUNILE1BQU0sZ0JBQWdCLEdBQUcsQ0FBQyxHQUFXLEVBQUUsR0FBWSxFQUFFLEVBQUUsQ0FDckQsV0FBVztTQUNSLElBQUksQ0FBQyxJQUFJ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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@effect-app/cli",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.24.0",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -14,12 +14,12 @@
|
|
|
14
14
|
"node-watch": "^0.7.4"
|
|
15
15
|
},
|
|
16
16
|
"devDependencies": {
|
|
17
|
-
"@types/node": "~24.3.
|
|
17
|
+
"@types/node": "~24.3.3",
|
|
18
18
|
"json5": "^2.2.3",
|
|
19
19
|
"typescript": "~5.9.2",
|
|
20
20
|
"vitest": "^3.2.4",
|
|
21
|
-
"effect-app": "3.
|
|
22
|
-
"@effect-app/eslint-shared-config": "0.0
|
|
21
|
+
"effect-app": "3.6.0",
|
|
22
|
+
"@effect-app/eslint-shared-config": "0.1.0"
|
|
23
23
|
},
|
|
24
24
|
"typesVersions": {
|
|
25
25
|
"*": {
|
package/src/index.ts
CHANGED
|
@@ -37,21 +37,21 @@ Effect
|
|
|
37
37
|
NodeCommand.exitCode
|
|
38
38
|
)
|
|
39
39
|
|
|
40
|
-
/**
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
const runNodeCommand = (cmd: string, cwd?: string) =>
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
40
|
+
// /**
|
|
41
|
+
// * Executes a shell command using Node.js Command API and captures output as string.
|
|
42
|
+
// * The command is run through the system shell (/bin/sh) for proper command parsing.
|
|
43
|
+
// *
|
|
44
|
+
// * @param cmd - The shell command to execute
|
|
45
|
+
// * @param cwd - Optional working directory to execute the command in
|
|
46
|
+
// * @returns An Effect that succeeds with the command output or fails with a PlatformError
|
|
47
|
+
// */
|
|
48
|
+
// const runNodeCommand = (cmd: string, cwd?: string) =>
|
|
49
|
+
// NodeCommand
|
|
50
|
+
// .make("sh", "-c", cmd)
|
|
51
|
+
// .pipe(
|
|
52
|
+
// cwd ? NodeCommand.workingDirectory(cwd) : identity,
|
|
53
|
+
// NodeCommand.string
|
|
54
|
+
// )
|
|
55
55
|
|
|
56
56
|
/**
|
|
57
57
|
* Executes a bash script file using Node.js Command API with inherited stdio streams.
|
|
@@ -698,221 +698,6 @@ Effect
|
|
|
698
698
|
Command.withDescription("Generate and update package.json exports mappings for all packages in monorepo")
|
|
699
699
|
)
|
|
700
700
|
|
|
701
|
-
const wiki = Command
|
|
702
|
-
.make(
|
|
703
|
-
"wiki",
|
|
704
|
-
{},
|
|
705
|
-
Effect.fn("effa-cli.wiki")(function*() {
|
|
706
|
-
const action = yield* Prompt.select({
|
|
707
|
-
choices: [{
|
|
708
|
-
title: "sync",
|
|
709
|
-
description: "Initialize and update the documentation submodule",
|
|
710
|
-
value: "sync"
|
|
711
|
-
}, {
|
|
712
|
-
title: "update",
|
|
713
|
-
description: "Pull latest changes from remote, commit and push changes within the submodule",
|
|
714
|
-
value: "update"
|
|
715
|
-
}],
|
|
716
|
-
message: "Select wiki action"
|
|
717
|
-
})
|
|
718
|
-
|
|
719
|
-
const syncCommand = runNodeCommandEC("git submodule update --init --recursive --remote doc")
|
|
720
|
-
|
|
721
|
-
switch (action) {
|
|
722
|
-
case "sync": {
|
|
723
|
-
yield* Effect.logInfo("Initializing/updating git submodule for documentation...")
|
|
724
|
-
|
|
725
|
-
if ((yield* syncCommand) !== 0) {
|
|
726
|
-
return yield* Effect.fail(`Failed to sync submodule`)
|
|
727
|
-
}
|
|
728
|
-
|
|
729
|
-
break
|
|
730
|
-
}
|
|
731
|
-
case "update": {
|
|
732
|
-
yield* Effect.logInfo("Pulling latest changes from remote submodule...")
|
|
733
|
-
|
|
734
|
-
if ((yield* syncCommand) !== 0) {
|
|
735
|
-
return yield* Effect.fail(`Failed to sync submodule`)
|
|
736
|
-
}
|
|
737
|
-
|
|
738
|
-
const commitMessage = yield* Prompt.text({
|
|
739
|
-
message: "Enter commit message:",
|
|
740
|
-
default: "update doc",
|
|
741
|
-
validate: (input) =>
|
|
742
|
-
input.trim().length > 0
|
|
743
|
-
? Effect.succeed(input.trim())
|
|
744
|
-
: Effect.fail("Commit message cannot be empty")
|
|
745
|
-
})
|
|
746
|
-
|
|
747
|
-
yield* Effect.logInfo("Committing and pushing changes in submodule...")
|
|
748
|
-
|
|
749
|
-
if (
|
|
750
|
-
(yield* runNodeCommandEC(
|
|
751
|
-
`git -C doc add . && git -C doc commit -m '${commitMessage}' && git -C doc push`
|
|
752
|
-
)) === 0
|
|
753
|
-
) {
|
|
754
|
-
yield* Effect.logInfo("Submodule updated and pushed successfully")
|
|
755
|
-
}
|
|
756
|
-
|
|
757
|
-
break
|
|
758
|
-
}
|
|
759
|
-
default: {
|
|
760
|
-
action satisfies never
|
|
761
|
-
return yield* Effect.fail(`Unknown wiki action: ${action}. Available actions: sync, update`)
|
|
762
|
-
}
|
|
763
|
-
}
|
|
764
|
-
|
|
765
|
-
// check if references to submodule have changed in main repo
|
|
766
|
-
// and offer to commit these changes
|
|
767
|
-
const statusOutput = yield* runNodeCommand("git status --porcelain")
|
|
768
|
-
|
|
769
|
-
const hasSubmoduleChanges = statusOutput
|
|
770
|
-
.split("\n")
|
|
771
|
-
.some((line) => line.trim().endsWith("doc") && line.trim().startsWith("M "))
|
|
772
|
-
|
|
773
|
-
if (hasSubmoduleChanges) {
|
|
774
|
-
const shouldCommitSubmodule = yield* Prompt.confirm({
|
|
775
|
-
message: "Changes to the submodule detected in main repository. Commit these changes?",
|
|
776
|
-
initial: false
|
|
777
|
-
})
|
|
778
|
-
|
|
779
|
-
if (
|
|
780
|
-
shouldCommitSubmodule
|
|
781
|
-
) {
|
|
782
|
-
const mainCommitMessage = yield* Prompt.text({
|
|
783
|
-
message: "Enter commit message for main repository:",
|
|
784
|
-
default: "update doc submodule reference",
|
|
785
|
-
validate: (input) =>
|
|
786
|
-
input.trim().length > 0
|
|
787
|
-
? Effect.succeed(input.trim())
|
|
788
|
-
: Effect.fail("Commit message cannot be empty")
|
|
789
|
-
})
|
|
790
|
-
|
|
791
|
-
if (
|
|
792
|
-
(yield* runNodeCommandEC(
|
|
793
|
-
`git commit -m '${mainCommitMessage}' doc`
|
|
794
|
-
)) === 0
|
|
795
|
-
) {
|
|
796
|
-
yield* Effect.logInfo("Main repository updated with submodule changes successfully")
|
|
797
|
-
} else {
|
|
798
|
-
yield* Effect.logError("Failed to commit submodule changes in main repository")
|
|
799
|
-
}
|
|
800
|
-
} else {
|
|
801
|
-
yield* Effect.logInfo("Remember to commit the submodule changes in the main repository later.")
|
|
802
|
-
}
|
|
803
|
-
} else {
|
|
804
|
-
yield* Effect.logInfo("No changes to the submodule detected in main repository.")
|
|
805
|
-
}
|
|
806
|
-
})
|
|
807
|
-
)
|
|
808
|
-
.pipe(Command.withDescription(
|
|
809
|
-
`Manage the documentation wiki git submodule with interactive action selection.
|
|
810
|
-
|
|
811
|
-
Available actions:
|
|
812
|
-
- sync: Initialize and update the documentation submodule from remote
|
|
813
|
-
- update: Pull latest changes, commit and push changes within the submodule
|
|
814
|
-
|
|
815
|
-
After any action, automatically detects and offers to commit submodule reference changes in the main repository.`
|
|
816
|
-
))
|
|
817
|
-
|
|
818
|
-
const initWiki = Command
|
|
819
|
-
.make(
|
|
820
|
-
"init-wiki",
|
|
821
|
-
{},
|
|
822
|
-
Effect.fn("effa-cli.initWiki")(function*({}) {
|
|
823
|
-
yield* Effect.logInfo("⚠️ IMPORTANT: This is a one-time project setup command!")
|
|
824
|
-
|
|
825
|
-
// check if doc directory already exists in git index
|
|
826
|
-
const docInIndex = yield* runNodeCommand("git ls-files")
|
|
827
|
-
.pipe(
|
|
828
|
-
Effect.map((output) => output.split("\n").some((line) => line.startsWith("doc/") || line === "doc")),
|
|
829
|
-
Effect.catchAll(() => Effect.succeed(false))
|
|
830
|
-
)
|
|
831
|
-
|
|
832
|
-
if (docInIndex) {
|
|
833
|
-
return yield* Effect.logError(`❌ ERROR: A 'doc' directory already exists in the git index!
|
|
834
|
-
|
|
835
|
-
This suggests the wiki submodule may have been initialized before, or there are conflicting files.
|
|
836
|
-
|
|
837
|
-
Required actions before proceeding:
|
|
838
|
-
1. Move existing doc files to GitHub wiki or another location
|
|
839
|
-
2. Remove the doc directory from filesystem: rm -rf doc
|
|
840
|
-
3. Remove the doc directory from git index: git rm --cached -r doc
|
|
841
|
-
4. Commit the removal: git commit -m "Remove doc directory"
|
|
842
|
-
5. Re-run this command
|
|
843
|
-
|
|
844
|
-
Operation cancelled for safety.`)
|
|
845
|
-
}
|
|
846
|
-
|
|
847
|
-
const confirmation = yield* Prompt.confirm({
|
|
848
|
-
message: `This command will initialize the wiki submodule for this project.
|
|
849
|
-
|
|
850
|
-
⚠️ WARNING: This is NOT the command to use for local submodule initialization!
|
|
851
|
-
|
|
852
|
-
This command should only be run ONCE in the entire project history by a project maintainer to:
|
|
853
|
-
- Set up the initial .gitmodules configuration
|
|
854
|
-
- Add the wiki submodule to the repository
|
|
855
|
-
- Commit the submodule configuration
|
|
856
|
-
|
|
857
|
-
For normal local development, use 'effa wiki sync' instead.
|
|
858
|
-
|
|
859
|
-
Are you sure you want to proceed with the one-time project setup?`,
|
|
860
|
-
initial: false
|
|
861
|
-
})
|
|
862
|
-
|
|
863
|
-
if (!confirmation) {
|
|
864
|
-
return yield* Effect.logInfo("Operation cancelled. Use 'effa wiki sync' for normal wiki operations.")
|
|
865
|
-
}
|
|
866
|
-
|
|
867
|
-
yield* Effect.logInfo("Extracting project name from git remote...")
|
|
868
|
-
const remoteUrl = yield* runNodeCommand("git config --get remote.origin.url")
|
|
869
|
-
|
|
870
|
-
// extract project name from URL (supports both SSH and HTTPS)
|
|
871
|
-
//
|
|
872
|
-
// - git@github.com:user/project-name.git -> project-name
|
|
873
|
-
// - https://github.com/user/project-name.git -> project-name
|
|
874
|
-
let detectedProjectName = remoteUrl
|
|
875
|
-
.split("/")
|
|
876
|
-
.pop()
|
|
877
|
-
?.replace(/\.git$/, "")
|
|
878
|
-
?.trim()
|
|
879
|
-
|
|
880
|
-
yield* detectedProjectName
|
|
881
|
-
? Effect.logInfo(`Detected project name from git remote: ${detectedProjectName}`)
|
|
882
|
-
: Effect.logWarning("Could not determine project name from git remote")
|
|
883
|
-
|
|
884
|
-
detectedProjectName = yield* Prompt.text({
|
|
885
|
-
message: detectedProjectName
|
|
886
|
-
? "Please confirm or modify the project name:"
|
|
887
|
-
: "Please enter the project name:",
|
|
888
|
-
...detectedProjectName && { default: detectedProjectName },
|
|
889
|
-
validate: (input) =>
|
|
890
|
-
input.trim().length > 0
|
|
891
|
-
? Effect.succeed(input.trim())
|
|
892
|
-
: Effect.fail("Project name cannot be empty")
|
|
893
|
-
})
|
|
894
|
-
|
|
895
|
-
yield* Effect.logInfo(`Using project name: ${detectedProjectName}`)
|
|
896
|
-
|
|
897
|
-
yield* Effect.logInfo("Creating .gitmodules file...")
|
|
898
|
-
yield* runNodeCommandEC(`echo '' >> .gitmodules`)
|
|
899
|
-
yield* runNodeCommandEC(`echo '[submodule "doc"]' >> .gitmodules`)
|
|
900
|
-
yield* runNodeCommandEC(`echo ' path = doc' >> .gitmodules`)
|
|
901
|
-
yield* runNodeCommandEC(`echo ' url = ../${detectedProjectName}.wiki.git' >> .gitmodules`)
|
|
902
|
-
yield* runNodeCommandEC(`echo ' branch = master' >> .gitmodules`)
|
|
903
|
-
yield* runNodeCommandEC(`echo ' update = merge' >> .gitmodules`)
|
|
904
|
-
|
|
905
|
-
yield* Effect.logInfo("Adding git submodule for documentation wiki...")
|
|
906
|
-
yield* runNodeCommandEC(`git submodule add -b master ../${detectedProjectName}.wiki.git doc`)
|
|
907
|
-
|
|
908
|
-
yield* Effect.logInfo("Committing wiki submodule addition...")
|
|
909
|
-
yield* runNodeCommandEC("git add . && git commit -am 'Add doc submodule'")
|
|
910
|
-
|
|
911
|
-
return yield* Effect.logInfo("Wiki submodule initialized successfully")
|
|
912
|
-
})
|
|
913
|
-
)
|
|
914
|
-
.pipe(Command.withDescription("Set up the wiki submodule for the project (one-time setup)"))
|
|
915
|
-
|
|
916
701
|
const nuke = Command
|
|
917
702
|
.make(
|
|
918
703
|
"nuke",
|
|
@@ -960,8 +745,6 @@ Are you sure you want to proceed with the one-time project setup?`,
|
|
|
960
745
|
indexMulti,
|
|
961
746
|
packagejson,
|
|
962
747
|
packagejsonPackages,
|
|
963
|
-
wiki,
|
|
964
|
-
initWiki,
|
|
965
748
|
nuke
|
|
966
749
|
])),
|
|
967
750
|
{
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
// packages/cli/vitest.config.ts
|
|
2
|
+
import { defineConfig } from "file:///Users/patrickroza/pj/effect-app/libs/node_modules/.pnpm/vite@5.1.5_@types+node@20.11.25/node_modules/vite/dist/node/index.js";
|
|
3
|
+
|
|
4
|
+
// vite.config.base.ts
|
|
5
|
+
import path from "path";
|
|
6
|
+
import fs from "fs";
|
|
7
|
+
var __vite_injected_original_dirname = "/Users/patrickroza/pj/effect-app/libs";
|
|
8
|
+
function makeConfig(dirName) {
|
|
9
|
+
const prefix = path.resolve(__vite_injected_original_dirname, "packages");
|
|
10
|
+
const packages = fs.readdirSync(prefix).map((f) => prefix + "/" + f).filter((f) => fs.lstatSync(f).isDirectory());
|
|
11
|
+
const cfg = {
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
13
|
+
//plugins: [autoImport],
|
|
14
|
+
test: {
|
|
15
|
+
include: ["./test/**/*.test.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
16
|
+
reporters: "verbose",
|
|
17
|
+
globals: true
|
|
18
|
+
},
|
|
19
|
+
resolve: packages.reduce((acc, cur) => {
|
|
20
|
+
acc[JSON.parse(fs.readFileSync(cur + "/package.json", "utf-8")).name] = path.resolve(cur, "src");
|
|
21
|
+
return acc;
|
|
22
|
+
}, {})
|
|
23
|
+
};
|
|
24
|
+
return cfg;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
// packages/cli/vitest.config.ts
|
|
28
|
+
var __vite_injected_original_dirname2 = "/Users/patrickroza/pj/effect-app/libs/packages/cli";
|
|
29
|
+
var vitest_config_default = defineConfig(makeConfig(__vite_injected_original_dirname2));
|
|
30
|
+
export {
|
|
31
|
+
vitest_config_default as default
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsicGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHMiLCAidml0ZS5jb25maWcuYmFzZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3BhY2thZ2VzL2NsaS92aXRlc3QuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tIFwidml0ZVwiXG5pbXBvcnQgbWFrZUNvbmZpZyBmcm9tIFwiLi4vLi4vdml0ZS5jb25maWcuYmFzZVwiXG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZUNvbmZpZyhtYWtlQ29uZmlnKF9fZGlybmFtZSkpXG4iLCAiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvdml0ZS5jb25maWcuYmFzZS50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3ZpdGUuY29uZmlnLmJhc2UudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5pbXBvcnQgZnMgZnJvbSBcImZzXCJcbmltcG9ydCBBdXRvSW1wb3J0IGZyb20gXCJ1bnBsdWdpbi1hdXRvLWltcG9ydC92aXRlXCJcbmltcG9ydCB7IGRlZmluZUNvbmZpZyB9IGZyb20gXCJ2aXRlc3QvY29uZmlnXCJcblxuLy8gY29uc3QgYXV0b0ltcG9ydCA9IEF1dG9JbXBvcnQoe1xuLy8gICBkdHM6IFwiLi90ZXN0L2F1dG8taW1wb3J0cy5kLnRzXCIsXG4vLyAgIC8vIGluY2x1ZGU6IFtcbi8vICAgLy8gICAvXFwudGVzdFxcLlt0al1zeD8kLyAvLyAudHMsIC50c3gsIC5qcywgLmpzeFxuLy8gICAvLyBdLFxuLy8gICBpbXBvcnRzOiBbXG4vLyAgICAgXCJ2aXRlc3RcIlxuLy8gICBdXG4vLyB9KVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBtYWtlQ29uZmlnKGRpck5hbWU/OiBzdHJpbmcpIHtcbiAgY29uc3QgcHJlZml4ID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgXCJwYWNrYWdlc1wiKVxuICBjb25zdCBwYWNrYWdlcyA9IGZzLnJlYWRkaXJTeW5jKHByZWZpeCkubWFwKGYgPT4gcHJlZml4ICsgXCIvXCIgKyBmKS5maWx0ZXIoZiA9PiBmcy5sc3RhdFN5bmMoZikuaXNEaXJlY3RvcnkoKSApXG4gIGNvbnN0IGNmZyA9IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuICAgIC8vcGx1Z2luczogW2F1dG9JbXBvcnRdLFxuICAgIHRlc3Q6IHtcbiAgICAgIGluY2x1ZGU6ICBbXCIuL3Rlc3QvKiovKi50ZXN0LntqcyxtanMsY2pzLHRzLG10cyxjdHMsanN4LHRzeH1cIl0sXG4gICAgICByZXBvcnRlcnM6IFwidmVyYm9zZVwiLFxuICAgICAgZ2xvYmFsczogdHJ1ZVxuICAgIH0sXG4gICAgcmVzb2x2ZTogcGFja2FnZXMucmVkdWNlKChhY2MsIGN1cikgPT4ge1xuICAgICAgYWNjW0pTT04ucGFyc2UoZnMucmVhZEZpbGVTeW5jKGN1ciArIFwiL3BhY2thZ2UuanNvblwiLCBcInV0Zi04XCIpKS5uYW1lXSA9IHBhdGgucmVzb2x2ZShjdXIsIFwic3JjXCIpXG4gICAgICByZXR1cm4gYWNjXG4gICAgfSwge30pXG4gIH1cbiAgLy9jb25zb2xlLmxvZyhjZmcpXG4gIHJldHVybiBjZmdcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7QUFDQSxTQUFTLG9CQUFvQjs7O0FDQTdCLE9BQU8sVUFBVTtBQUNqQixPQUFPLFFBQVE7QUFGZixJQUFNLG1DQUFtQztBQWdCMUIsU0FBUixXQUE0QixTQUFrQjtBQUNuRCxRQUFNLFNBQVMsS0FBSyxRQUFRLGtDQUFXLFVBQVU7QUFDakQsUUFBTSxXQUFXLEdBQUcsWUFBWSxNQUFNLEVBQUUsSUFBSSxPQUFLLFNBQVMsTUFBTSxDQUFDLEVBQUUsT0FBTyxPQUFLLEdBQUcsVUFBVSxDQUFDLEVBQUUsWUFBWSxDQUFFO0FBQzdHLFFBQU0sTUFBTTtBQUFBO0FBQUE7QUFBQSxJQUdWLE1BQU07QUFBQSxNQUNKLFNBQVUsQ0FBQyxrREFBa0Q7QUFBQSxNQUM3RCxXQUFXO0FBQUEsTUFDWCxTQUFTO0FBQUEsSUFDWDtBQUFBLElBQ0EsU0FBUyxTQUFTLE9BQU8sQ0FBQyxLQUFLLFFBQVE7QUFDckMsVUFBSSxLQUFLLE1BQU0sR0FBRyxhQUFhLE1BQU0saUJBQWlCLE9BQU8sQ0FBQyxFQUFFLElBQUksSUFBSSxLQUFLLFFBQVEsS0FBSyxLQUFLO0FBQy9GLGFBQU87QUFBQSxJQUNULEdBQUcsQ0FBQyxDQUFDO0FBQUEsRUFDUDtBQUVBLFNBQU87QUFDVDs7O0FEbENBLElBQU1BLG9DQUFtQztBQUl6QyxJQUFPLHdCQUFRLGFBQWEsV0FBV0MsaUNBQVMsQ0FBQzsiLAogICJuYW1lcyI6IFsiX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUiLCAiX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUiXQp9Cg==
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
// packages/cli/vitest.config.ts
|
|
2
|
+
import { defineConfig } from "file:///Users/patrickroza/pj/effect-app/libs/node_modules/.pnpm/vite@5.1.5_@types+node@20.11.25/node_modules/vite/dist/node/index.js";
|
|
3
|
+
|
|
4
|
+
// vite.config.base.ts
|
|
5
|
+
import path from "path";
|
|
6
|
+
import fs from "fs";
|
|
7
|
+
var __vite_injected_original_dirname = "/Users/patrickroza/pj/effect-app/libs";
|
|
8
|
+
function makeConfig(dirName) {
|
|
9
|
+
const prefix = path.resolve(__vite_injected_original_dirname, "packages");
|
|
10
|
+
const packages = fs.readdirSync(prefix).map((f) => prefix + "/" + f).filter((f) => fs.lstatSync(f).isDirectory());
|
|
11
|
+
const cfg = {
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
13
|
+
//plugins: [autoImport],
|
|
14
|
+
test: {
|
|
15
|
+
include: ["./test/**/*.test.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
16
|
+
reporters: "verbose",
|
|
17
|
+
globals: true
|
|
18
|
+
},
|
|
19
|
+
resolve: packages.reduce((acc, cur) => {
|
|
20
|
+
acc[JSON.parse(fs.readFileSync(cur + "/package.json", "utf-8")).name] = path.resolve(cur, "src");
|
|
21
|
+
return acc;
|
|
22
|
+
}, {})
|
|
23
|
+
};
|
|
24
|
+
return cfg;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
// packages/cli/vitest.config.ts
|
|
28
|
+
var __vite_injected_original_dirname2 = "/Users/patrickroza/pj/effect-app/libs/packages/cli";
|
|
29
|
+
var vitest_config_default = defineConfig(makeConfig(__vite_injected_original_dirname2));
|
|
30
|
+
export {
|
|
31
|
+
vitest_config_default as default
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsicGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHMiLCAidml0ZS5jb25maWcuYmFzZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3BhY2thZ2VzL2NsaS92aXRlc3QuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tIFwidml0ZVwiXG5pbXBvcnQgbWFrZUNvbmZpZyBmcm9tIFwiLi4vLi4vdml0ZS5jb25maWcuYmFzZVwiXG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZUNvbmZpZyhtYWtlQ29uZmlnKF9fZGlybmFtZSkpXG4iLCAiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvdml0ZS5jb25maWcuYmFzZS50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3ZpdGUuY29uZmlnLmJhc2UudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5pbXBvcnQgZnMgZnJvbSBcImZzXCJcbmltcG9ydCBBdXRvSW1wb3J0IGZyb20gXCJ1bnBsdWdpbi1hdXRvLWltcG9ydC92aXRlXCJcbmltcG9ydCB7IGRlZmluZUNvbmZpZyB9IGZyb20gXCJ2aXRlc3QvY29uZmlnXCJcblxuLy8gY29uc3QgYXV0b0ltcG9ydCA9IEF1dG9JbXBvcnQoe1xuLy8gICBkdHM6IFwiLi90ZXN0L2F1dG8taW1wb3J0cy5kLnRzXCIsXG4vLyAgIC8vIGluY2x1ZGU6IFtcbi8vICAgLy8gICAvXFwudGVzdFxcLlt0al1zeD8kLyAvLyAudHMsIC50c3gsIC5qcywgLmpzeFxuLy8gICAvLyBdLFxuLy8gICBpbXBvcnRzOiBbXG4vLyAgICAgXCJ2aXRlc3RcIlxuLy8gICBdXG4vLyB9KVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBtYWtlQ29uZmlnKGRpck5hbWU/OiBzdHJpbmcpIHtcbiAgY29uc3QgcHJlZml4ID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgXCJwYWNrYWdlc1wiKVxuICBjb25zdCBwYWNrYWdlcyA9IGZzLnJlYWRkaXJTeW5jKHByZWZpeCkubWFwKGYgPT4gcHJlZml4ICsgXCIvXCIgKyBmKS5maWx0ZXIoZiA9PiBmcy5sc3RhdFN5bmMoZikuaXNEaXJlY3RvcnkoKSApXG4gIGNvbnN0IGNmZyA9IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuICAgIC8vcGx1Z2luczogW2F1dG9JbXBvcnRdLFxuICAgIHRlc3Q6IHtcbiAgICAgIGluY2x1ZGU6ICBbXCIuL3Rlc3QvKiovKi50ZXN0LntqcyxtanMsY2pzLHRzLG10cyxjdHMsanN4LHRzeH1cIl0sXG4gICAgICByZXBvcnRlcnM6IFwidmVyYm9zZVwiLFxuICAgICAgZ2xvYmFsczogdHJ1ZVxuICAgIH0sXG4gICAgcmVzb2x2ZTogcGFja2FnZXMucmVkdWNlKChhY2MsIGN1cikgPT4ge1xuICAgICAgYWNjW0pTT04ucGFyc2UoZnMucmVhZEZpbGVTeW5jKGN1ciArIFwiL3BhY2thZ2UuanNvblwiLCBcInV0Zi04XCIpKS5uYW1lXSA9IHBhdGgucmVzb2x2ZShjdXIsIFwic3JjXCIpXG4gICAgICByZXR1cm4gYWNjXG4gICAgfSwge30pXG4gIH1cbiAgLy9jb25zb2xlLmxvZyhjZmcpXG4gIHJldHVybiBjZmdcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7QUFDQSxTQUFTLG9CQUFvQjs7O0FDQTdCLE9BQU8sVUFBVTtBQUNqQixPQUFPLFFBQVE7QUFGZixJQUFNLG1DQUFtQztBQWdCMUIsU0FBUixXQUE0QixTQUFrQjtBQUNuRCxRQUFNLFNBQVMsS0FBSyxRQUFRLGtDQUFXLFVBQVU7QUFDakQsUUFBTSxXQUFXLEdBQUcsWUFBWSxNQUFNLEVBQUUsSUFBSSxPQUFLLFNBQVMsTUFBTSxDQUFDLEVBQUUsT0FBTyxPQUFLLEdBQUcsVUFBVSxDQUFDLEVBQUUsWUFBWSxDQUFFO0FBQzdHLFFBQU0sTUFBTTtBQUFBO0FBQUE7QUFBQSxJQUdWLE1BQU07QUFBQSxNQUNKLFNBQVUsQ0FBQyxrREFBa0Q7QUFBQSxNQUM3RCxXQUFXO0FBQUEsTUFDWCxTQUFTO0FBQUEsSUFDWDtBQUFBLElBQ0EsU0FBUyxTQUFTLE9BQU8sQ0FBQyxLQUFLLFFBQVE7QUFDckMsVUFBSSxLQUFLLE1BQU0sR0FBRyxhQUFhLE1BQU0saUJBQWlCLE9BQU8sQ0FBQyxFQUFFLElBQUksSUFBSSxLQUFLLFFBQVEsS0FBSyxLQUFLO0FBQy9GLGFBQU87QUFBQSxJQUNULEdBQUcsQ0FBQyxDQUFDO0FBQUEsRUFDUDtBQUVBLFNBQU87QUFDVDs7O0FEbENBLElBQU1BLG9DQUFtQztBQUl6QyxJQUFPLHdCQUFRLGFBQWEsV0FBV0MsaUNBQVMsQ0FBQzsiLAogICJuYW1lcyI6IFsiX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUiLCAiX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUiXQp9Cg==
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
// packages/cli/vitest.config.ts
|
|
2
|
+
import { defineConfig } from "file:///Users/patrickroza/pj/effect-app/libs/node_modules/.pnpm/vite@5.1.5_@types+node@20.11.25/node_modules/vite/dist/node/index.js";
|
|
3
|
+
|
|
4
|
+
// vite.config.base.ts
|
|
5
|
+
import path from "path";
|
|
6
|
+
import fs from "fs";
|
|
7
|
+
var __vite_injected_original_dirname = "/Users/patrickroza/pj/effect-app/libs";
|
|
8
|
+
function makeConfig(dirName) {
|
|
9
|
+
const prefix = path.resolve(__vite_injected_original_dirname, "packages");
|
|
10
|
+
const packages = fs.readdirSync(prefix).map((f) => prefix + "/" + f).filter((f) => fs.lstatSync(f).isDirectory());
|
|
11
|
+
const cfg = {
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
13
|
+
//plugins: [autoImport],
|
|
14
|
+
test: {
|
|
15
|
+
include: ["./test/**/*.test.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
16
|
+
reporters: "verbose",
|
|
17
|
+
globals: true
|
|
18
|
+
},
|
|
19
|
+
resolve: packages.reduce((acc, cur) => {
|
|
20
|
+
acc[JSON.parse(fs.readFileSync(cur + "/package.json", "utf-8")).name] = path.resolve(cur, "src");
|
|
21
|
+
return acc;
|
|
22
|
+
}, {})
|
|
23
|
+
};
|
|
24
|
+
return cfg;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
// packages/cli/vitest.config.ts
|
|
28
|
+
var __vite_injected_original_dirname2 = "/Users/patrickroza/pj/effect-app/libs/packages/cli";
|
|
29
|
+
var vitest_config_default = defineConfig(makeConfig(__vite_injected_original_dirname2));
|
|
30
|
+
export {
|
|
31
|
+
vitest_config_default as default
|
|
32
|
+
};
|
|
33
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsicGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHMiLCAidml0ZS5jb25maWcuYmFzZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3BhY2thZ2VzL2NsaS92aXRlc3QuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tIFwidml0ZVwiXG5pbXBvcnQgbWFrZUNvbmZpZyBmcm9tIFwiLi4vLi4vdml0ZS5jb25maWcuYmFzZVwiXG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZUNvbmZpZyhtYWtlQ29uZmlnKF9fZGlybmFtZSkpXG4iLCAiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvdml0ZS5jb25maWcuYmFzZS50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3ZpdGUuY29uZmlnLmJhc2UudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5pbXBvcnQgZnMgZnJvbSBcImZzXCJcbmltcG9ydCBBdXRvSW1wb3J0IGZyb20gXCJ1bnBsdWdpbi1hdXRvLWltcG9ydC92aXRlXCJcbmltcG9ydCB7IGRlZmluZUNvbmZpZyB9IGZyb20gXCJ2aXRlc3QvY29uZmlnXCJcblxuLy8gY29uc3QgYXV0b0ltcG9ydCA9IEF1dG9JbXBvcnQoe1xuLy8gICBkdHM6IFwiLi90ZXN0L2F1dG8taW1wb3J0cy5kLnRzXCIsXG4vLyAgIC8vIGluY2x1ZGU6IFtcbi8vICAgLy8gICAvXFwudGVzdFxcLlt0al1zeD8kLyAvLyAudHMsIC50c3gsIC5qcywgLmpzeFxuLy8gICAvLyBdLFxuLy8gICBpbXBvcnRzOiBbXG4vLyAgICAgXCJ2aXRlc3RcIlxuLy8gICBdXG4vLyB9KVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBtYWtlQ29uZmlnKGRpck5hbWU/OiBzdHJpbmcpIHtcbiAgY29uc3QgcHJlZml4ID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgXCJwYWNrYWdlc1wiKVxuICBjb25zdCBwYWNrYWdlcyA9IGZzLnJlYWRkaXJTeW5jKHByZWZpeCkubWFwKGYgPT4gcHJlZml4ICsgXCIvXCIgKyBmKS5maWx0ZXIoZiA9PiBmcy5sc3RhdFN5bmMoZikuaXNEaXJlY3RvcnkoKSApXG4gIGNvbnN0IGNmZyA9IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuICAgIC8vcGx1Z2luczogW2F1dG9JbXBvcnRdLFxuICAgIHRlc3Q6IHtcbiAgICAgIGluY2x1ZGU6ICBbXCIuL3Rlc3QvKiovKi50ZXN0LntqcyxtanMsY2pzLHRzLG10cyxjdHMsanN4LHRzeH1cIl0sXG4gICAgICByZXBvcnRlcnM6IFwidmVyYm9zZVwiLFxuICAgICAgZ2xvYmFsczogdHJ1ZVxuICAgIH0sXG4gICAgcmVzb2x2ZTogcGFja2FnZXMucmVkdWNlKChhY2MsIGN1cikgPT4ge1xuICAgICAgYWNjW0pTT04ucGFyc2UoZnMucmVhZEZpbGVTeW5jKGN1ciArIFwiL3BhY2thZ2UuanNvblwiLCBcInV0Zi04XCIpKS5uYW1lXSA9IHBhdGgucmVzb2x2ZShjdXIsIFwic3JjXCIpXG4gICAgICByZXR1cm4gYWNjXG4gICAgfSwge30pXG4gIH1cbiAgLy9jb25zb2xlLmxvZyhjZmcpXG4gIHJldHVybiBjZmdcbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7QUFDQSxTQUFTLG9CQUFvQjs7O0FDQTdCLE9BQU8sVUFBVTtBQUNqQixPQUFPLFFBQVE7QUFGZixJQUFNLG1DQUFtQztBQWdCMUIsU0FBUixXQUE0QixTQUFrQjtBQUNuRCxRQUFNLFNBQVMsS0FBSyxRQUFRLGtDQUFXLFVBQVU7QUFDakQsUUFBTSxXQUFXLEdBQUcsWUFBWSxNQUFNLEVBQUUsSUFBSSxPQUFLLFNBQVMsTUFBTSxDQUFDLEVBQUUsT0FBTyxPQUFLLEdBQUcsVUFBVSxDQUFDLEVBQUUsWUFBWSxDQUFFO0FBQzdHLFFBQU0sTUFBTTtBQUFBO0FBQUE7QUFBQSxJQUdWLE1BQU07QUFBQSxNQUNKLFNBQVUsQ0FBQyxrREFBa0Q7QUFBQSxNQUM3RCxXQUFXO0FBQUEsTUFDWCxTQUFTO0FBQUEsSUFDWDtBQUFBLElBQ0EsU0FBUyxTQUFTLE9BQU8sQ0FBQyxLQUFLLFFBQVE7QUFDckMsVUFBSSxLQUFLLE1BQU0sR0FBRyxhQUFhLE1BQU0saUJBQWlCLE9BQU8sQ0FBQyxFQUFFLElBQUksSUFBSSxLQUFLLFFBQVEsS0FBSyxLQUFLO0FBQy9GLGFBQU87QUFBQSxJQUNULEdBQUcsQ0FBQyxDQUFDO0FBQUEsRUFDUDtBQUVBLFNBQU87QUFDVDs7O0FEbENBLElBQU1BLG9DQUFtQztBQUl6QyxJQUFPLHdCQUFRLGFBQWEsV0FBV0MsaUNBQVMsQ0FBQzsiLAogICJuYW1lcyI6IFsiX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUiLCAiX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUiXQp9Cg==
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// packages/cli/vitest.config.ts
|
|
2
|
+
import { defineConfig } from "file:///Users/patrickroza/pj/effect-app/libs/node_modules/.pnpm/vite@5.2.6_@types+node@20.11.30/node_modules/vite/dist/node/index.js";
|
|
3
|
+
|
|
4
|
+
// vite.config.base.ts
|
|
5
|
+
import path from "path";
|
|
6
|
+
import fs from "fs";
|
|
7
|
+
var __vite_injected_original_dirname = "/Users/patrickroza/pj/effect-app/libs";
|
|
8
|
+
function makeConfig(dirName) {
|
|
9
|
+
const prefix = path.resolve(__vite_injected_original_dirname, "packages");
|
|
10
|
+
const packages = fs.readdirSync(prefix).map((f) => prefix + "/" + f).filter((f) => fs.lstatSync(f).isDirectory());
|
|
11
|
+
const cfg = {
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
13
|
+
//plugins: [autoImport],
|
|
14
|
+
test: {
|
|
15
|
+
include: ["./test/**/*.test.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
16
|
+
reporters: "verbose",
|
|
17
|
+
globals: true
|
|
18
|
+
},
|
|
19
|
+
resolve: {
|
|
20
|
+
alias: packages.reduce((acc, cur) => {
|
|
21
|
+
acc[JSON.parse(fs.readFileSync(cur + "/package.json", "utf-8")).name] = path.resolve(cur, cur.endsWith("core") ? "dist" : "src");
|
|
22
|
+
return acc;
|
|
23
|
+
}, {})
|
|
24
|
+
// "@effect-app/core/Prelude": path.join(__dirname, "packages/core/src/Prelude.code.ts")
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
console.log(cfg);
|
|
28
|
+
return cfg;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
// packages/cli/vitest.config.ts
|
|
32
|
+
var __vite_injected_original_dirname2 = "/Users/patrickroza/pj/effect-app/libs/packages/cli";
|
|
33
|
+
var vitest_config_default = defineConfig(makeConfig(__vite_injected_original_dirname2));
|
|
34
|
+
export {
|
|
35
|
+
vitest_config_default as default
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsicGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHMiLCAidml0ZS5jb25maWcuYmFzZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3BhY2thZ2VzL2NsaS92aXRlc3QuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tIFwidml0ZVwiXG5pbXBvcnQgbWFrZUNvbmZpZyBmcm9tIFwiLi4vLi4vdml0ZS5jb25maWcuYmFzZVwiXG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZUNvbmZpZyhtYWtlQ29uZmlnKF9fZGlybmFtZSkpXG4iLCAiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvdml0ZS5jb25maWcuYmFzZS50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3ZpdGUuY29uZmlnLmJhc2UudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5pbXBvcnQgZnMgZnJvbSBcImZzXCJcbmltcG9ydCBBdXRvSW1wb3J0IGZyb20gXCJ1bnBsdWdpbi1hdXRvLWltcG9ydC92aXRlXCJcbmltcG9ydCB7IGRlZmluZUNvbmZpZyB9IGZyb20gXCJ2aXRlc3QvY29uZmlnXCJcblxuLy8gY29uc3QgYXV0b0ltcG9ydCA9IEF1dG9JbXBvcnQoe1xuLy8gICBkdHM6IFwiLi90ZXN0L2F1dG8taW1wb3J0cy5kLnRzXCIsXG4vLyAgIC8vIGluY2x1ZGU6IFtcbi8vICAgLy8gICAvXFwudGVzdFxcLlt0al1zeD8kLyAvLyAudHMsIC50c3gsIC5qcywgLmpzeFxuLy8gICAvLyBdLFxuLy8gICBpbXBvcnRzOiBbXG4vLyAgICAgXCJ2aXRlc3RcIlxuLy8gICBdXG4vLyB9KVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBtYWtlQ29uZmlnKGRpck5hbWU/OiBzdHJpbmcpIHtcbiAgY29uc3QgcHJlZml4ID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgXCJwYWNrYWdlc1wiKVxuICBjb25zdCBwYWNrYWdlcyA9IGZzLnJlYWRkaXJTeW5jKHByZWZpeCkubWFwKGYgPT4gcHJlZml4ICsgXCIvXCIgKyBmKS5maWx0ZXIoZiA9PiBmcy5sc3RhdFN5bmMoZikuaXNEaXJlY3RvcnkoKSApXG4gIGNvbnN0IGNmZyA9IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuICAgIC8vcGx1Z2luczogW2F1dG9JbXBvcnRdLFxuICAgIHRlc3Q6IHtcbiAgICAgIGluY2x1ZGU6ICBbXCIuL3Rlc3QvKiovKi50ZXN0LntqcyxtanMsY2pzLHRzLG10cyxjdHMsanN4LHRzeH1cIl0sXG4gICAgICByZXBvcnRlcnM6IFwidmVyYm9zZVwiLFxuICAgICAgZ2xvYmFsczogdHJ1ZVxuICAgIH0sXG4gICAgcmVzb2x2ZToge1xuICAgICAgYWxpYXM6IHBhY2thZ2VzLnJlZHVjZSgoYWNjLCBjdXIpID0+IHsgLy8gd29ya2Fyb3VuZCBmb3IgL1ByZWx1ZGUgaXNzdWVcbiAgICAgIGFjY1tKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhjdXIgKyBcIi9wYWNrYWdlLmpzb25cIiwgXCJ1dGYtOFwiKSkubmFtZV0gPSBwYXRoLnJlc29sdmUoY3VyLCBjdXIuZW5kc1dpdGgoXCJjb3JlXCIpID8gXCJkaXN0XCIgOiBcInNyY1wiKVxuICAgICAgcmV0dXJuIGFjY1xuICAgIH0sIHsgfSkgLy8gXCJAZWZmZWN0LWFwcC9jb3JlL1ByZWx1ZGVcIjogcGF0aC5qb2luKF9fZGlybmFtZSwgXCJwYWNrYWdlcy9jb3JlL3NyYy9QcmVsdWRlLmNvZGUudHNcIilcbiAgfVxuICB9XG4gIGNvbnNvbGUubG9nKGNmZylcbiAgcmV0dXJuIGNmZ1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUNBLFNBQVMsb0JBQW9COzs7QUNBN0IsT0FBTyxVQUFVO0FBQ2pCLE9BQU8sUUFBUTtBQUZmLElBQU0sbUNBQW1DO0FBZ0IxQixTQUFSLFdBQTRCLFNBQWtCO0FBQ25ELFFBQU0sU0FBUyxLQUFLLFFBQVEsa0NBQVcsVUFBVTtBQUNqRCxRQUFNLFdBQVcsR0FBRyxZQUFZLE1BQU0sRUFBRSxJQUFJLE9BQUssU0FBUyxNQUFNLENBQUMsRUFBRSxPQUFPLE9BQUssR0FBRyxVQUFVLENBQUMsRUFBRSxZQUFZLENBQUU7QUFDN0csUUFBTSxNQUFNO0FBQUE7QUFBQTtBQUFBLElBR1YsTUFBTTtBQUFBLE1BQ0osU0FBVSxDQUFDLGtEQUFrRDtBQUFBLE1BQzdELFdBQVc7QUFBQSxNQUNYLFNBQVM7QUFBQSxJQUNYO0FBQUEsSUFDQSxTQUFTO0FBQUEsTUFDUCxPQUFPLFNBQVMsT0FBTyxDQUFDLEtBQUssUUFBUTtBQUNyQyxZQUFJLEtBQUssTUFBTSxHQUFHLGFBQWEsTUFBTSxpQkFBaUIsT0FBTyxDQUFDLEVBQUUsSUFBSSxJQUFJLEtBQUssUUFBUSxLQUFLLElBQUksU0FBUyxNQUFNLElBQUksU0FBUyxLQUFLO0FBQy9ILGVBQU87QUFBQSxNQUNULEdBQUcsQ0FBRSxDQUFDO0FBQUE7QUFBQSxJQUNSO0FBQUEsRUFDQTtBQUNBLFVBQVEsSUFBSSxHQUFHO0FBQ2YsU0FBTztBQUNUOzs7QURwQ0EsSUFBTUEsb0NBQW1DO0FBSXpDLElBQU8sd0JBQVEsYUFBYSxXQUFXQyxpQ0FBUyxDQUFDOyIsCiAgIm5hbWVzIjogWyJfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSIsICJfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSJdCn0K
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// packages/cli/vitest.config.ts
|
|
2
|
+
import { defineConfig } from "file:///Users/patrickroza/pj/effect-app/libs/node_modules/.pnpm/vite@5.2.6_@types+node@20.11.30/node_modules/vite/dist/node/index.js";
|
|
3
|
+
|
|
4
|
+
// vite.config.base.ts
|
|
5
|
+
import path from "path";
|
|
6
|
+
import fs from "fs";
|
|
7
|
+
var __vite_injected_original_dirname = "/Users/patrickroza/pj/effect-app/libs";
|
|
8
|
+
function makeConfig(dirName) {
|
|
9
|
+
const prefix = path.resolve(__vite_injected_original_dirname, "packages");
|
|
10
|
+
const packages = fs.readdirSync(prefix).map((f) => prefix + "/" + f).filter((f) => fs.lstatSync(f).isDirectory());
|
|
11
|
+
const cfg = {
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
13
|
+
//plugins: [autoImport],
|
|
14
|
+
test: {
|
|
15
|
+
include: ["./test/**/*.test.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
16
|
+
reporters: "verbose",
|
|
17
|
+
globals: true
|
|
18
|
+
},
|
|
19
|
+
resolve: {
|
|
20
|
+
alias: packages.reduce((acc, cur) => {
|
|
21
|
+
acc[JSON.parse(fs.readFileSync(cur + "/package.json", "utf-8")).name] = path.resolve(cur, cur.endsWith("core") ? "dist" : "src");
|
|
22
|
+
return acc;
|
|
23
|
+
}, {})
|
|
24
|
+
// "@effect-app/core/Prelude": path.join(__dirname, "packages/core/src/Prelude.code.ts")
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
console.log(cfg);
|
|
28
|
+
return cfg;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
// packages/cli/vitest.config.ts
|
|
32
|
+
var __vite_injected_original_dirname2 = "/Users/patrickroza/pj/effect-app/libs/packages/cli";
|
|
33
|
+
var vitest_config_default = defineConfig(makeConfig(__vite_injected_original_dirname2));
|
|
34
|
+
export {
|
|
35
|
+
vitest_config_default as default
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsicGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHMiLCAidml0ZS5jb25maWcuYmFzZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3BhY2thZ2VzL2NsaS92aXRlc3QuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tIFwidml0ZVwiXG5pbXBvcnQgbWFrZUNvbmZpZyBmcm9tIFwiLi4vLi4vdml0ZS5jb25maWcuYmFzZVwiXG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZUNvbmZpZyhtYWtlQ29uZmlnKF9fZGlybmFtZSkpXG4iLCAiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvdml0ZS5jb25maWcuYmFzZS50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3ZpdGUuY29uZmlnLmJhc2UudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5pbXBvcnQgZnMgZnJvbSBcImZzXCJcbmltcG9ydCBBdXRvSW1wb3J0IGZyb20gXCJ1bnBsdWdpbi1hdXRvLWltcG9ydC92aXRlXCJcbmltcG9ydCB7IGRlZmluZUNvbmZpZyB9IGZyb20gXCJ2aXRlc3QvY29uZmlnXCJcblxuLy8gY29uc3QgYXV0b0ltcG9ydCA9IEF1dG9JbXBvcnQoe1xuLy8gICBkdHM6IFwiLi90ZXN0L2F1dG8taW1wb3J0cy5kLnRzXCIsXG4vLyAgIC8vIGluY2x1ZGU6IFtcbi8vICAgLy8gICAvXFwudGVzdFxcLlt0al1zeD8kLyAvLyAudHMsIC50c3gsIC5qcywgLmpzeFxuLy8gICAvLyBdLFxuLy8gICBpbXBvcnRzOiBbXG4vLyAgICAgXCJ2aXRlc3RcIlxuLy8gICBdXG4vLyB9KVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBtYWtlQ29uZmlnKGRpck5hbWU/OiBzdHJpbmcpIHtcbiAgY29uc3QgcHJlZml4ID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgXCJwYWNrYWdlc1wiKVxuICBjb25zdCBwYWNrYWdlcyA9IGZzLnJlYWRkaXJTeW5jKHByZWZpeCkubWFwKGYgPT4gcHJlZml4ICsgXCIvXCIgKyBmKS5maWx0ZXIoZiA9PiBmcy5sc3RhdFN5bmMoZikuaXNEaXJlY3RvcnkoKSApXG4gIGNvbnN0IGNmZyA9IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuICAgIC8vcGx1Z2luczogW2F1dG9JbXBvcnRdLFxuICAgIHRlc3Q6IHtcbiAgICAgIGluY2x1ZGU6ICBbXCIuL3Rlc3QvKiovKi50ZXN0LntqcyxtanMsY2pzLHRzLG10cyxjdHMsanN4LHRzeH1cIl0sXG4gICAgICByZXBvcnRlcnM6IFwidmVyYm9zZVwiLFxuICAgICAgZ2xvYmFsczogdHJ1ZVxuICAgIH0sXG4gICAgcmVzb2x2ZToge1xuICAgICAgYWxpYXM6IHBhY2thZ2VzLnJlZHVjZSgoYWNjLCBjdXIpID0+IHsgLy8gd29ya2Fyb3VuZCBmb3IgL1ByZWx1ZGUgaXNzdWVcbiAgICAgIGFjY1tKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhjdXIgKyBcIi9wYWNrYWdlLmpzb25cIiwgXCJ1dGYtOFwiKSkubmFtZV0gPSBwYXRoLnJlc29sdmUoY3VyLCBjdXIuZW5kc1dpdGgoXCJjb3JlXCIpID8gXCJkaXN0XCIgOiBcInNyY1wiKVxuICAgICAgcmV0dXJuIGFjY1xuICAgIH0sIHsgfSkgLy8gXCJAZWZmZWN0LWFwcC9jb3JlL1ByZWx1ZGVcIjogcGF0aC5qb2luKF9fZGlybmFtZSwgXCJwYWNrYWdlcy9jb3JlL3NyYy9QcmVsdWRlLmNvZGUudHNcIilcbiAgfVxuICB9XG4gIGNvbnNvbGUubG9nKGNmZylcbiAgcmV0dXJuIGNmZ1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUNBLFNBQVMsb0JBQW9COzs7QUNBN0IsT0FBTyxVQUFVO0FBQ2pCLE9BQU8sUUFBUTtBQUZmLElBQU0sbUNBQW1DO0FBZ0IxQixTQUFSLFdBQTRCLFNBQWtCO0FBQ25ELFFBQU0sU0FBUyxLQUFLLFFBQVEsa0NBQVcsVUFBVTtBQUNqRCxRQUFNLFdBQVcsR0FBRyxZQUFZLE1BQU0sRUFBRSxJQUFJLE9BQUssU0FBUyxNQUFNLENBQUMsRUFBRSxPQUFPLE9BQUssR0FBRyxVQUFVLENBQUMsRUFBRSxZQUFZLENBQUU7QUFDN0csUUFBTSxNQUFNO0FBQUE7QUFBQTtBQUFBLElBR1YsTUFBTTtBQUFBLE1BQ0osU0FBVSxDQUFDLGtEQUFrRDtBQUFBLE1BQzdELFdBQVc7QUFBQSxNQUNYLFNBQVM7QUFBQSxJQUNYO0FBQUEsSUFDQSxTQUFTO0FBQUEsTUFDUCxPQUFPLFNBQVMsT0FBTyxDQUFDLEtBQUssUUFBUTtBQUNyQyxZQUFJLEtBQUssTUFBTSxHQUFHLGFBQWEsTUFBTSxpQkFBaUIsT0FBTyxDQUFDLEVBQUUsSUFBSSxJQUFJLEtBQUssUUFBUSxLQUFLLElBQUksU0FBUyxNQUFNLElBQUksU0FBUyxLQUFLO0FBQy9ILGVBQU87QUFBQSxNQUNULEdBQUcsQ0FBRSxDQUFDO0FBQUE7QUFBQSxJQUNSO0FBQUEsRUFDQTtBQUNBLFVBQVEsSUFBSSxHQUFHO0FBQ2YsU0FBTztBQUNUOzs7QURwQ0EsSUFBTUEsb0NBQW1DO0FBSXpDLElBQU8sd0JBQVEsYUFBYSxXQUFXQyxpQ0FBUyxDQUFDOyIsCiAgIm5hbWVzIjogWyJfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSIsICJfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSJdCn0K
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// packages/cli/vitest.config.ts
|
|
2
|
+
import { defineConfig } from "file:///Users/patrickroza/pj/effect-app/libs/node_modules/.pnpm/vite@5.2.6_@types+node@20.11.30/node_modules/vite/dist/node/index.js";
|
|
3
|
+
|
|
4
|
+
// vite.config.base.ts
|
|
5
|
+
import path from "path";
|
|
6
|
+
import fs from "fs";
|
|
7
|
+
var __vite_injected_original_dirname = "/Users/patrickroza/pj/effect-app/libs";
|
|
8
|
+
function makeConfig(dirName) {
|
|
9
|
+
const prefix = path.resolve(__vite_injected_original_dirname, "packages");
|
|
10
|
+
const packages = fs.readdirSync(prefix).map((f) => prefix + "/" + f).filter((f) => fs.lstatSync(f).isDirectory());
|
|
11
|
+
const cfg = {
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
13
|
+
//plugins: [autoImport],
|
|
14
|
+
test: {
|
|
15
|
+
include: ["./test/**/*.test.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
16
|
+
reporters: "verbose",
|
|
17
|
+
globals: true
|
|
18
|
+
},
|
|
19
|
+
resolve: {
|
|
20
|
+
alias: packages.reduce((acc, cur) => {
|
|
21
|
+
acc[JSON.parse(fs.readFileSync(cur + "/package.json", "utf-8")).name] = path.resolve(cur, cur.endsWith("core") ? "dist" : "src");
|
|
22
|
+
return acc;
|
|
23
|
+
}, {})
|
|
24
|
+
// "@effect-app/core/Prelude": path.join(__dirname, "packages/core/src/Prelude.code.ts")
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
console.log(cfg);
|
|
28
|
+
return cfg;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
// packages/cli/vitest.config.ts
|
|
32
|
+
var __vite_injected_original_dirname2 = "/Users/patrickroza/pj/effect-app/libs/packages/cli";
|
|
33
|
+
var vitest_config_default = defineConfig(makeConfig(__vite_injected_original_dirname2));
|
|
34
|
+
export {
|
|
35
|
+
vitest_config_default as default
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsicGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHMiLCAidml0ZS5jb25maWcuYmFzZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3BhY2thZ2VzL2NsaS92aXRlc3QuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tIFwidml0ZVwiXG5pbXBvcnQgbWFrZUNvbmZpZyBmcm9tIFwiLi4vLi4vdml0ZS5jb25maWcuYmFzZVwiXG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZUNvbmZpZyhtYWtlQ29uZmlnKF9fZGlybmFtZSkpXG4iLCAiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvdml0ZS5jb25maWcuYmFzZS50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3ZpdGUuY29uZmlnLmJhc2UudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5pbXBvcnQgZnMgZnJvbSBcImZzXCJcbmltcG9ydCBBdXRvSW1wb3J0IGZyb20gXCJ1bnBsdWdpbi1hdXRvLWltcG9ydC92aXRlXCJcbmltcG9ydCB7IGRlZmluZUNvbmZpZyB9IGZyb20gXCJ2aXRlc3QvY29uZmlnXCJcblxuLy8gY29uc3QgYXV0b0ltcG9ydCA9IEF1dG9JbXBvcnQoe1xuLy8gICBkdHM6IFwiLi90ZXN0L2F1dG8taW1wb3J0cy5kLnRzXCIsXG4vLyAgIC8vIGluY2x1ZGU6IFtcbi8vICAgLy8gICAvXFwudGVzdFxcLlt0al1zeD8kLyAvLyAudHMsIC50c3gsIC5qcywgLmpzeFxuLy8gICAvLyBdLFxuLy8gICBpbXBvcnRzOiBbXG4vLyAgICAgXCJ2aXRlc3RcIlxuLy8gICBdXG4vLyB9KVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBtYWtlQ29uZmlnKGRpck5hbWU/OiBzdHJpbmcpIHtcbiAgY29uc3QgcHJlZml4ID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgXCJwYWNrYWdlc1wiKVxuICBjb25zdCBwYWNrYWdlcyA9IGZzLnJlYWRkaXJTeW5jKHByZWZpeCkubWFwKGYgPT4gcHJlZml4ICsgXCIvXCIgKyBmKS5maWx0ZXIoZiA9PiBmcy5sc3RhdFN5bmMoZikuaXNEaXJlY3RvcnkoKSApXG4gIGNvbnN0IGNmZyA9IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuICAgIC8vcGx1Z2luczogW2F1dG9JbXBvcnRdLFxuICAgIHRlc3Q6IHtcbiAgICAgIGluY2x1ZGU6ICBbXCIuL3Rlc3QvKiovKi50ZXN0LntqcyxtanMsY2pzLHRzLG10cyxjdHMsanN4LHRzeH1cIl0sXG4gICAgICByZXBvcnRlcnM6IFwidmVyYm9zZVwiLFxuICAgICAgZ2xvYmFsczogdHJ1ZVxuICAgIH0sXG4gICAgcmVzb2x2ZToge1xuICAgICAgYWxpYXM6IHBhY2thZ2VzLnJlZHVjZSgoYWNjLCBjdXIpID0+IHsgLy8gd29ya2Fyb3VuZCBmb3IgL1ByZWx1ZGUgaXNzdWVcbiAgICAgIGFjY1tKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhjdXIgKyBcIi9wYWNrYWdlLmpzb25cIiwgXCJ1dGYtOFwiKSkubmFtZV0gPSBwYXRoLnJlc29sdmUoY3VyLCBjdXIuZW5kc1dpdGgoXCJjb3JlXCIpID8gXCJkaXN0XCIgOiBcInNyY1wiKVxuICAgICAgcmV0dXJuIGFjY1xuICAgIH0sIHsgfSkgLy8gXCJAZWZmZWN0LWFwcC9jb3JlL1ByZWx1ZGVcIjogcGF0aC5qb2luKF9fZGlybmFtZSwgXCJwYWNrYWdlcy9jb3JlL3NyYy9QcmVsdWRlLmNvZGUudHNcIilcbiAgfVxuICB9XG4gIGNvbnNvbGUubG9nKGNmZylcbiAgcmV0dXJuIGNmZ1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUNBLFNBQVMsb0JBQW9COzs7QUNBN0IsT0FBTyxVQUFVO0FBQ2pCLE9BQU8sUUFBUTtBQUZmLElBQU0sbUNBQW1DO0FBZ0IxQixTQUFSLFdBQTRCLFNBQWtCO0FBQ25ELFFBQU0sU0FBUyxLQUFLLFFBQVEsa0NBQVcsVUFBVTtBQUNqRCxRQUFNLFdBQVcsR0FBRyxZQUFZLE1BQU0sRUFBRSxJQUFJLE9BQUssU0FBUyxNQUFNLENBQUMsRUFBRSxPQUFPLE9BQUssR0FBRyxVQUFVLENBQUMsRUFBRSxZQUFZLENBQUU7QUFDN0csUUFBTSxNQUFNO0FBQUE7QUFBQTtBQUFBLElBR1YsTUFBTTtBQUFBLE1BQ0osU0FBVSxDQUFDLGtEQUFrRDtBQUFBLE1BQzdELFdBQVc7QUFBQSxNQUNYLFNBQVM7QUFBQSxJQUNYO0FBQUEsSUFDQSxTQUFTO0FBQUEsTUFDUCxPQUFPLFNBQVMsT0FBTyxDQUFDLEtBQUssUUFBUTtBQUNyQyxZQUFJLEtBQUssTUFBTSxHQUFHLGFBQWEsTUFBTSxpQkFBaUIsT0FBTyxDQUFDLEVBQUUsSUFBSSxJQUFJLEtBQUssUUFBUSxLQUFLLElBQUksU0FBUyxNQUFNLElBQUksU0FBUyxLQUFLO0FBQy9ILGVBQU87QUFBQSxNQUNULEdBQUcsQ0FBRSxDQUFDO0FBQUE7QUFBQSxJQUNSO0FBQUEsRUFDQTtBQUNBLFVBQVEsSUFBSSxHQUFHO0FBQ2YsU0FBTztBQUNUOzs7QURwQ0EsSUFBTUEsb0NBQW1DO0FBSXpDLElBQU8sd0JBQVEsYUFBYSxXQUFXQyxpQ0FBUyxDQUFDOyIsCiAgIm5hbWVzIjogWyJfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSIsICJfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSJdCn0K
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// packages/cli/vitest.config.ts
|
|
2
|
+
import { defineConfig } from "file:///Users/patrickroza/pj/effect-app/libs/node_modules/.pnpm/vite@5.2.6_@types+node@20.11.30/node_modules/vite/dist/node/index.js";
|
|
3
|
+
|
|
4
|
+
// vite.config.base.ts
|
|
5
|
+
import path from "path";
|
|
6
|
+
import fs from "fs";
|
|
7
|
+
var __vite_injected_original_dirname = "/Users/patrickroza/pj/effect-app/libs";
|
|
8
|
+
function makeConfig(dirName) {
|
|
9
|
+
const prefix = path.resolve(__vite_injected_original_dirname, "packages");
|
|
10
|
+
const packages = fs.readdirSync(prefix).map((f) => prefix + "/" + f).filter((f) => fs.lstatSync(f).isDirectory());
|
|
11
|
+
const cfg = {
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
13
|
+
//plugins: [autoImport],
|
|
14
|
+
test: {
|
|
15
|
+
include: ["./test/**/*.test.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
16
|
+
reporters: "verbose",
|
|
17
|
+
globals: true
|
|
18
|
+
},
|
|
19
|
+
resolve: {
|
|
20
|
+
alias: packages.reduce((acc, cur) => {
|
|
21
|
+
acc[JSON.parse(fs.readFileSync(cur + "/package.json", "utf-8")).name] = path.resolve(cur, cur.endsWith("core") ? "dist" : "src");
|
|
22
|
+
return acc;
|
|
23
|
+
}, {})
|
|
24
|
+
// "@effect-app/core/Prelude": path.join(__dirname, "packages/core/src/Prelude.code.ts")
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
console.log(cfg);
|
|
28
|
+
return cfg;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
// packages/cli/vitest.config.ts
|
|
32
|
+
var __vite_injected_original_dirname2 = "/Users/patrickroza/pj/effect-app/libs/packages/cli";
|
|
33
|
+
var vitest_config_default = defineConfig(makeConfig(__vite_injected_original_dirname2));
|
|
34
|
+
export {
|
|
35
|
+
vitest_config_default as default
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsicGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHMiLCAidml0ZS5jb25maWcuYmFzZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3BhY2thZ2VzL2NsaS92aXRlc3QuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tIFwidml0ZVwiXG5pbXBvcnQgbWFrZUNvbmZpZyBmcm9tIFwiLi4vLi4vdml0ZS5jb25maWcuYmFzZVwiXG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZUNvbmZpZyhtYWtlQ29uZmlnKF9fZGlybmFtZSkpXG4iLCAiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvdml0ZS5jb25maWcuYmFzZS50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3ZpdGUuY29uZmlnLmJhc2UudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5pbXBvcnQgZnMgZnJvbSBcImZzXCJcbmltcG9ydCBBdXRvSW1wb3J0IGZyb20gXCJ1bnBsdWdpbi1hdXRvLWltcG9ydC92aXRlXCJcbmltcG9ydCB7IGRlZmluZUNvbmZpZyB9IGZyb20gXCJ2aXRlc3QvY29uZmlnXCJcblxuLy8gY29uc3QgYXV0b0ltcG9ydCA9IEF1dG9JbXBvcnQoe1xuLy8gICBkdHM6IFwiLi90ZXN0L2F1dG8taW1wb3J0cy5kLnRzXCIsXG4vLyAgIC8vIGluY2x1ZGU6IFtcbi8vICAgLy8gICAvXFwudGVzdFxcLlt0al1zeD8kLyAvLyAudHMsIC50c3gsIC5qcywgLmpzeFxuLy8gICAvLyBdLFxuLy8gICBpbXBvcnRzOiBbXG4vLyAgICAgXCJ2aXRlc3RcIlxuLy8gICBdXG4vLyB9KVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBtYWtlQ29uZmlnKGRpck5hbWU/OiBzdHJpbmcpIHtcbiAgY29uc3QgcHJlZml4ID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgXCJwYWNrYWdlc1wiKVxuICBjb25zdCBwYWNrYWdlcyA9IGZzLnJlYWRkaXJTeW5jKHByZWZpeCkubWFwKGYgPT4gcHJlZml4ICsgXCIvXCIgKyBmKS5maWx0ZXIoZiA9PiBmcy5sc3RhdFN5bmMoZikuaXNEaXJlY3RvcnkoKSApXG4gIGNvbnN0IGNmZyA9IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuICAgIC8vcGx1Z2luczogW2F1dG9JbXBvcnRdLFxuICAgIHRlc3Q6IHtcbiAgICAgIGluY2x1ZGU6ICBbXCIuL3Rlc3QvKiovKi50ZXN0LntqcyxtanMsY2pzLHRzLG10cyxjdHMsanN4LHRzeH1cIl0sXG4gICAgICByZXBvcnRlcnM6IFwidmVyYm9zZVwiLFxuICAgICAgZ2xvYmFsczogdHJ1ZVxuICAgIH0sXG4gICAgcmVzb2x2ZToge1xuICAgICAgYWxpYXM6IHBhY2thZ2VzLnJlZHVjZSgoYWNjLCBjdXIpID0+IHsgLy8gd29ya2Fyb3VuZCBmb3IgL1ByZWx1ZGUgaXNzdWVcbiAgICAgIGFjY1tKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhjdXIgKyBcIi9wYWNrYWdlLmpzb25cIiwgXCJ1dGYtOFwiKSkubmFtZV0gPSBwYXRoLnJlc29sdmUoY3VyLCBjdXIuZW5kc1dpdGgoXCJjb3JlXCIpID8gXCJkaXN0XCIgOiBcInNyY1wiKVxuICAgICAgcmV0dXJuIGFjY1xuICAgIH0sIHsgfSkgLy8gXCJAZWZmZWN0LWFwcC9jb3JlL1ByZWx1ZGVcIjogcGF0aC5qb2luKF9fZGlybmFtZSwgXCJwYWNrYWdlcy9jb3JlL3NyYy9QcmVsdWRlLmNvZGUudHNcIilcbiAgfVxuICB9XG4gIGNvbnNvbGUubG9nKGNmZylcbiAgcmV0dXJuIGNmZ1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUNBLFNBQVMsb0JBQW9COzs7QUNBN0IsT0FBTyxVQUFVO0FBQ2pCLE9BQU8sUUFBUTtBQUZmLElBQU0sbUNBQW1DO0FBZ0IxQixTQUFSLFdBQTRCLFNBQWtCO0FBQ25ELFFBQU0sU0FBUyxLQUFLLFFBQVEsa0NBQVcsVUFBVTtBQUNqRCxRQUFNLFdBQVcsR0FBRyxZQUFZLE1BQU0sRUFBRSxJQUFJLE9BQUssU0FBUyxNQUFNLENBQUMsRUFBRSxPQUFPLE9BQUssR0FBRyxVQUFVLENBQUMsRUFBRSxZQUFZLENBQUU7QUFDN0csUUFBTSxNQUFNO0FBQUE7QUFBQTtBQUFBLElBR1YsTUFBTTtBQUFBLE1BQ0osU0FBVSxDQUFDLGtEQUFrRDtBQUFBLE1BQzdELFdBQVc7QUFBQSxNQUNYLFNBQVM7QUFBQSxJQUNYO0FBQUEsSUFDQSxTQUFTO0FBQUEsTUFDUCxPQUFPLFNBQVMsT0FBTyxDQUFDLEtBQUssUUFBUTtBQUNyQyxZQUFJLEtBQUssTUFBTSxHQUFHLGFBQWEsTUFBTSxpQkFBaUIsT0FBTyxDQUFDLEVBQUUsSUFBSSxJQUFJLEtBQUssUUFBUSxLQUFLLElBQUksU0FBUyxNQUFNLElBQUksU0FBUyxLQUFLO0FBQy9ILGVBQU87QUFBQSxNQUNULEdBQUcsQ0FBRSxDQUFDO0FBQUE7QUFBQSxJQUNSO0FBQUEsRUFDQTtBQUNBLFVBQVEsSUFBSSxHQUFHO0FBQ2YsU0FBTztBQUNUOzs7QURwQ0EsSUFBTUEsb0NBQW1DO0FBSXpDLElBQU8sd0JBQVEsYUFBYSxXQUFXQyxpQ0FBUyxDQUFDOyIsCiAgIm5hbWVzIjogWyJfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSIsICJfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSJdCn0K
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// packages/cli/vitest.config.ts
|
|
2
|
+
import { defineConfig } from "file:///Users/patrickroza/pj/effect-app/libs/node_modules/.pnpm/vite@5.2.6_@types+node@20.11.30/node_modules/vite/dist/node/index.js";
|
|
3
|
+
|
|
4
|
+
// vite.config.base.ts
|
|
5
|
+
import path from "path";
|
|
6
|
+
import fs from "fs";
|
|
7
|
+
var __vite_injected_original_dirname = "/Users/patrickroza/pj/effect-app/libs";
|
|
8
|
+
function makeConfig(dirName) {
|
|
9
|
+
const prefix = path.resolve(__vite_injected_original_dirname, "packages");
|
|
10
|
+
const packages = fs.readdirSync(prefix).map((f) => prefix + "/" + f).filter((f) => fs.lstatSync(f).isDirectory());
|
|
11
|
+
const cfg = {
|
|
12
|
+
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
|
13
|
+
//plugins: [autoImport],
|
|
14
|
+
test: {
|
|
15
|
+
include: ["./test/**/*.test.{js,mjs,cjs,ts,mts,cts,jsx,tsx}"],
|
|
16
|
+
reporters: "verbose",
|
|
17
|
+
globals: true
|
|
18
|
+
},
|
|
19
|
+
resolve: {
|
|
20
|
+
alias: packages.reduce((acc, cur) => {
|
|
21
|
+
acc[JSON.parse(fs.readFileSync(cur + "/package.json", "utf-8")).name] = path.resolve(cur, cur.endsWith("core") ? "dist" : "src");
|
|
22
|
+
return acc;
|
|
23
|
+
}, {})
|
|
24
|
+
// "@effect-app/core/Prelude": path.join(__dirname, "packages/core/src/Prelude.code.ts")
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
console.log(cfg);
|
|
28
|
+
return cfg;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
// packages/cli/vitest.config.ts
|
|
32
|
+
var __vite_injected_original_dirname2 = "/Users/patrickroza/pj/effect-app/libs/packages/cli";
|
|
33
|
+
var vitest_config_default = defineConfig(makeConfig(__vite_injected_original_dirname2));
|
|
34
|
+
export {
|
|
35
|
+
vitest_config_default as default
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsicGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHMiLCAidml0ZS5jb25maWcuYmFzZS50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ZpbGVuYW1lID0gXCIvVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3BhY2thZ2VzL2NsaS92aXRlc3QuY29uZmlnLnRzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvcGFja2FnZXMvY2xpL3ZpdGVzdC5jb25maWcudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgeyBkZWZpbmVDb25maWcgfSBmcm9tIFwidml0ZVwiXG5pbXBvcnQgbWFrZUNvbmZpZyBmcm9tIFwiLi4vLi4vdml0ZS5jb25maWcuYmFzZVwiXG5cbmV4cG9ydCBkZWZhdWx0IGRlZmluZUNvbmZpZyhtYWtlQ29uZmlnKF9fZGlybmFtZSkpXG4iLCAiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIi9Vc2Vycy9wYXRyaWNrcm96YS9wai9lZmZlY3QtYXBwL2xpYnMvdml0ZS5jb25maWcuYmFzZS50c1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vVXNlcnMvcGF0cmlja3JvemEvcGovZWZmZWN0LWFwcC9saWJzL3ZpdGUuY29uZmlnLmJhc2UudHNcIjsvLy8gPHJlZmVyZW5jZSB0eXBlcz1cInZpdGVzdFwiIC8+XG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiXG5pbXBvcnQgZnMgZnJvbSBcImZzXCJcbmltcG9ydCBBdXRvSW1wb3J0IGZyb20gXCJ1bnBsdWdpbi1hdXRvLWltcG9ydC92aXRlXCJcbmltcG9ydCB7IGRlZmluZUNvbmZpZyB9IGZyb20gXCJ2aXRlc3QvY29uZmlnXCJcblxuLy8gY29uc3QgYXV0b0ltcG9ydCA9IEF1dG9JbXBvcnQoe1xuLy8gICBkdHM6IFwiLi90ZXN0L2F1dG8taW1wb3J0cy5kLnRzXCIsXG4vLyAgIC8vIGluY2x1ZGU6IFtcbi8vICAgLy8gICAvXFwudGVzdFxcLlt0al1zeD8kLyAvLyAudHMsIC50c3gsIC5qcywgLmpzeFxuLy8gICAvLyBdLFxuLy8gICBpbXBvcnRzOiBbXG4vLyAgICAgXCJ2aXRlc3RcIlxuLy8gICBdXG4vLyB9KVxuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBtYWtlQ29uZmlnKGRpck5hbWU/OiBzdHJpbmcpIHtcbiAgY29uc3QgcHJlZml4ID0gcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgXCJwYWNrYWdlc1wiKVxuICBjb25zdCBwYWNrYWdlcyA9IGZzLnJlYWRkaXJTeW5jKHByZWZpeCkubWFwKGYgPT4gcHJlZml4ICsgXCIvXCIgKyBmKS5maWx0ZXIoZiA9PiBmcy5sc3RhdFN5bmMoZikuaXNEaXJlY3RvcnkoKSApXG4gIGNvbnN0IGNmZyA9IHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXZhci1yZXF1aXJlc1xuICAgIC8vcGx1Z2luczogW2F1dG9JbXBvcnRdLFxuICAgIHRlc3Q6IHtcbiAgICAgIGluY2x1ZGU6ICBbXCIuL3Rlc3QvKiovKi50ZXN0LntqcyxtanMsY2pzLHRzLG10cyxjdHMsanN4LHRzeH1cIl0sXG4gICAgICByZXBvcnRlcnM6IFwidmVyYm9zZVwiLFxuICAgICAgZ2xvYmFsczogdHJ1ZVxuICAgIH0sXG4gICAgcmVzb2x2ZToge1xuICAgICAgYWxpYXM6IHBhY2thZ2VzLnJlZHVjZSgoYWNjLCBjdXIpID0+IHsgLy8gd29ya2Fyb3VuZCBmb3IgL1ByZWx1ZGUgaXNzdWVcbiAgICAgIGFjY1tKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhjdXIgKyBcIi9wYWNrYWdlLmpzb25cIiwgXCJ1dGYtOFwiKSkubmFtZV0gPSBwYXRoLnJlc29sdmUoY3VyLCBjdXIuZW5kc1dpdGgoXCJjb3JlXCIpID8gXCJkaXN0XCIgOiBcInNyY1wiKVxuICAgICAgcmV0dXJuIGFjY1xuICAgIH0sIHsgfSkgLy8gXCJAZWZmZWN0LWFwcC9jb3JlL1ByZWx1ZGVcIjogcGF0aC5qb2luKF9fZGlybmFtZSwgXCJwYWNrYWdlcy9jb3JlL3NyYy9QcmVsdWRlLmNvZGUudHNcIilcbiAgfVxuICB9XG4gIGNvbnNvbGUubG9nKGNmZylcbiAgcmV0dXJuIGNmZ1xufVxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUNBLFNBQVMsb0JBQW9COzs7QUNBN0IsT0FBTyxVQUFVO0FBQ2pCLE9BQU8sUUFBUTtBQUZmLElBQU0sbUNBQW1DO0FBZ0IxQixTQUFSLFdBQTRCLFNBQWtCO0FBQ25ELFFBQU0sU0FBUyxLQUFLLFFBQVEsa0NBQVcsVUFBVTtBQUNqRCxRQUFNLFdBQVcsR0FBRyxZQUFZLE1BQU0sRUFBRSxJQUFJLE9BQUssU0FBUyxNQUFNLENBQUMsRUFBRSxPQUFPLE9BQUssR0FBRyxVQUFVLENBQUMsRUFBRSxZQUFZLENBQUU7QUFDN0csUUFBTSxNQUFNO0FBQUE7QUFBQTtBQUFBLElBR1YsTUFBTTtBQUFBLE1BQ0osU0FBVSxDQUFDLGtEQUFrRDtBQUFBLE1BQzdELFdBQVc7QUFBQSxNQUNYLFNBQVM7QUFBQSxJQUNYO0FBQUEsSUFDQSxTQUFTO0FBQUEsTUFDUCxPQUFPLFNBQVMsT0FBTyxDQUFDLEtBQUssUUFBUTtBQUNyQyxZQUFJLEtBQUssTUFBTSxHQUFHLGFBQWEsTUFBTSxpQkFBaUIsT0FBTyxDQUFDLEVBQUUsSUFBSSxJQUFJLEtBQUssUUFBUSxLQUFLLElBQUksU0FBUyxNQUFNLElBQUksU0FBUyxLQUFLO0FBQy9ILGVBQU87QUFBQSxNQUNULEdBQUcsQ0FBRSxDQUFDO0FBQUE7QUFBQSxJQUNSO0FBQUEsRUFDQTtBQUNBLFVBQVEsSUFBSSxHQUFHO0FBQ2YsU0FBTztBQUNUOzs7QURwQ0EsSUFBTUEsb0NBQW1DO0FBSXpDLElBQU8sd0JBQVEsYUFBYSxXQUFXQyxpQ0FBUyxDQUFDOyIsCiAgIm5hbWVzIjogWyJfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSIsICJfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSJdCn0K
|