@mmnto/cli 1.101.0 → 1.101.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/doctor-parity.d.ts.map +1 -1
- package/dist/commands/doctor-parity.js +11 -5
- package/dist/commands/doctor-parity.js.map +1 -1
- package/dist/commands/doctor.d.ts +36 -6
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +27 -0
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/doctor.test.js +46 -1
- package/dist/commands/doctor.test.js.map +1 -1
- package/dist/commands/ecl-gc.d.ts.map +1 -1
- package/dist/commands/ecl-gc.js +16 -4
- package/dist/commands/ecl-gc.js.map +1 -1
- package/dist/commands/eject.d.ts +37 -2
- package/dist/commands/eject.d.ts.map +1 -1
- package/dist/commands/eject.js +79 -9
- package/dist/commands/eject.js.map +1 -1
- package/dist/commands/eject.test.js +169 -7
- package/dist/commands/eject.test.js.map +1 -1
- package/dist/commands/gate-install.test.js +22 -1
- package/dist/commands/gate-install.test.js.map +1 -1
- package/dist/commands/init-templates.js +8 -8
- package/dist/commands/install-hooks-exit-contract.test.js +171 -2
- package/dist/commands/install-hooks-exit-contract.test.js.map +1 -1
- package/dist/commands/install-hooks.d.ts +30 -0
- package/dist/commands/install-hooks.d.ts.map +1 -1
- package/dist/commands/install-hooks.js +151 -20
- package/dist/commands/install-hooks.js.map +1 -1
- package/dist/commands/mail-cli-wiring.test.d.ts +15 -0
- package/dist/commands/mail-cli-wiring.test.d.ts.map +1 -0
- package/dist/commands/mail-cli-wiring.test.js +106 -0
- package/dist/commands/mail-cli-wiring.test.js.map +1 -0
- package/dist/commands/mail.d.ts +80 -0
- package/dist/commands/mail.d.ts.map +1 -1
- package/dist/commands/mail.js +291 -19
- package/dist/commands/mail.js.map +1 -1
- package/dist/commands/mail.test.js +432 -4
- package/dist/commands/mail.test.js.map +1 -1
- package/dist/commands/shield-generated.d.ts +145 -0
- package/dist/commands/shield-generated.d.ts.map +1 -0
- package/dist/commands/shield-generated.js +266 -0
- package/dist/commands/shield-generated.js.map +1 -0
- package/dist/commands/shield-generated.test.d.ts +2 -0
- package/dist/commands/shield-generated.test.d.ts.map +1 -0
- package/dist/commands/shield-generated.test.js +323 -0
- package/dist/commands/shield-generated.test.js.map +1 -0
- package/dist/commands/shield.d.ts +2 -2
- package/dist/commands/shield.d.ts.map +1 -1
- package/dist/commands/shield.js +49 -4
- package/dist/commands/shield.js.map +1 -1
- package/dist/commands/shield.test.js +23 -0
- package/dist/commands/shield.test.js.map +1 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +26 -2
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/status.test.js +55 -1
- package/dist/commands/status.test.js.map +1 -1
- package/dist/index.js +28 -7
- package/dist/index.js.map +1 -1
- package/dist/parse-nits.d.ts +20 -3
- package/dist/parse-nits.d.ts.map +1 -1
- package/dist/parse-nits.js +111 -6
- package/dist/parse-nits.js.map +1 -1
- package/dist/parse-nits.test.js +141 -0
- package/dist/parse-nits.test.js.map +1 -1
- package/dist/parsers/bot-review-parser.d.ts.map +1 -1
- package/dist/parsers/bot-review-parser.js +12 -2
- package/dist/parsers/bot-review-parser.js.map +1 -1
- package/dist/utils.d.ts +1 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +5 -0
- package/dist/utils.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { spawnSync } from 'node:child_process';
|
|
1
2
|
import * as fs from 'node:fs';
|
|
2
3
|
import * as path from 'node:path';
|
|
3
4
|
import { stdin as input, stdout as output } from 'node:process';
|
|
@@ -11,6 +12,91 @@ export const TOTEM_PRECOMMIT_MARKER = '[totem] pre-commit hook';
|
|
|
11
12
|
export const TOTEM_PRECOMMIT_END = '[totem] end pre-commit';
|
|
12
13
|
export const TOTEM_PREPUSH_MARKER = '[totem] pre-push hook';
|
|
13
14
|
export const TOTEM_PREPUSH_END = '[totem] end pre-push';
|
|
15
|
+
// ─── Hooks-directory resolution (mmnto-ai/totem#2418) ─────────
|
|
16
|
+
/**
|
|
17
|
+
* Resolve the git hooks directory for `gitRoot`. In a plain checkout this is
|
|
18
|
+
* `.git/hooks`, but in a linked worktree (or submodule) `.git` is a FILE
|
|
19
|
+
* (`gitdir: <path>` pointer) and hooks live under the resolved git dir — shared
|
|
20
|
+
* across worktrees via `commondir` — so a blind `.git/hooks` join makes
|
|
21
|
+
* `mkdirSync` crash with ENOTDIR (mmnto-ai/totem#2418; the owner-repo
|
|
22
|
+
* `tools/install-hooks.js` variant already discriminates). Resolution is
|
|
23
|
+
* delegated to `git rev-parse --git-path hooks` — git's own worktree/commondir
|
|
24
|
+
* walk, which also honors `core.hooksPath` — with a filesystem probe as the
|
|
25
|
+
* offline fallback for the plain-directory layout. Returns null when no hooks
|
|
26
|
+
* directory can be resolved: the #2410 declared-skip class — callers skip
|
|
27
|
+
* loudly instead of guessing a path.
|
|
28
|
+
*/
|
|
29
|
+
export function resolveHooksDir(gitRoot) {
|
|
30
|
+
// Raw spawnSync (the doctor.ts idiom): a builtin, so the heavy core barrel
|
|
31
|
+
// stays off the CLI cold-start graph, and a failed invocation reports via
|
|
32
|
+
// `status`/`error` instead of throwing — the probe below is the fallback.
|
|
33
|
+
const resolved = spawnSync('git', ['rev-parse', '--git-path', 'hooks'], {
|
|
34
|
+
cwd: gitRoot,
|
|
35
|
+
encoding: 'utf-8',
|
|
36
|
+
});
|
|
37
|
+
if (resolved.status === 0 && resolved.stdout && resolved.stdout.trim()) {
|
|
38
|
+
// git prints forward slashes even on Windows, and a repo-relative path in
|
|
39
|
+
// the common case — normalize and anchor at the git root.
|
|
40
|
+
const hooksDir = path.resolve(gitRoot, path.normalize(resolved.stdout.trim()));
|
|
41
|
+
// `core.hooksPath` can aim hooks at a non-directory (the /dev/null
|
|
42
|
+
// hooks-disabled idiom) — an existing non-directory can never receive hook
|
|
43
|
+
// files, so it joins the declared-skip class instead of crashing the write
|
|
44
|
+
// (#2422 review round).
|
|
45
|
+
if (fs.existsSync(hooksDir) && !fs.statSync(hooksDir).isDirectory()) {
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
return hooksDir;
|
|
49
|
+
}
|
|
50
|
+
const gitPath = path.join(gitRoot, '.git');
|
|
51
|
+
if (fs.existsSync(gitPath) && fs.statSync(gitPath).isDirectory()) {
|
|
52
|
+
return path.join(gitPath, 'hooks');
|
|
53
|
+
}
|
|
54
|
+
// `.git` is a pointer file git could not resolve for us — never guess.
|
|
55
|
+
return null;
|
|
56
|
+
}
|
|
57
|
+
/** Skip line shared by every caller that hits an unresolvable hooks directory. */
|
|
58
|
+
const HOOKS_DIR_UNRESOLVED_MSG = '[Totem] .git is not a directory or a resolvable gitdir pointer — skipping git hook installation.';
|
|
59
|
+
/**
|
|
60
|
+
* Whether `err` (typically the TotemGitError thrown by `resolveGitRoot`) stems
|
|
61
|
+
* from a malformed `.git` pointer FILE — git's `fatal: invalid gitfile format`.
|
|
62
|
+
* This is the "unparseable gitdir pointer (worktree/submodule)" member of the
|
|
63
|
+
* #2410 declared-skip class: `totem hook install` must exit 0 on it, not
|
|
64
|
+
* propagate a crash into the consumer's `prepare` lifecycle
|
|
65
|
+
* (mmnto-ai/totem#2418). Walks the cause chain the same bounded way core's
|
|
66
|
+
* not-a-git-repo matcher does.
|
|
67
|
+
*/
|
|
68
|
+
function isUnparseableGitFileError(err) {
|
|
69
|
+
let cursor = err;
|
|
70
|
+
for (let depth = 0; depth < 5 && cursor !== undefined && cursor !== null; depth++) {
|
|
71
|
+
const text = cursor instanceof Error ? cursor.message : String(cursor);
|
|
72
|
+
if (/invalid gitfile format/i.test(text))
|
|
73
|
+
return true;
|
|
74
|
+
cursor = cursor instanceof Error ? cursor.cause : undefined;
|
|
75
|
+
}
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* `resolveGitRoot` for hook-install paths: maps the malformed `.git` pointer
|
|
80
|
+
* FILE to `{ gitRoot: null, unparseablePointer: true }` instead of letting the
|
|
81
|
+
* throw reach `handleError` → exit 1 — EVERY hook-install entry point owes the
|
|
82
|
+
* #2410 declared skip on it, including the hidden legacy `totem install-hooks`
|
|
83
|
+
* command and the direct `installHooksNonInteractive` API (#2422 review round:
|
|
84
|
+
* only `hooksCommand` was guarded). All other failures stay fail-loud.
|
|
85
|
+
*
|
|
86
|
+
* Exported so the hook-REMOVAL path (`eject`) resolves the git root the SAME way
|
|
87
|
+
* every install entry point does, instead of hand-rolling a second resolver
|
|
88
|
+
* (mmnto-ai/totem#2426).
|
|
89
|
+
*/
|
|
90
|
+
export function resolveGitRootForHookPath(cwd) {
|
|
91
|
+
try {
|
|
92
|
+
return { gitRoot: resolveGitRoot(cwd), unparseablePointer: false };
|
|
93
|
+
}
|
|
94
|
+
catch (err) {
|
|
95
|
+
if (isUnparseableGitFileError(err))
|
|
96
|
+
return { gitRoot: null, unparseablePointer: true };
|
|
97
|
+
throw err;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
14
100
|
/**
|
|
15
101
|
* Determine the package-manager fallback command for invoking totem.
|
|
16
102
|
* Used inside the runtime resolve block when `totem` is not on PATH.
|
|
@@ -205,10 +291,14 @@ function printHookManagerGuidance(manager) {
|
|
|
205
291
|
}
|
|
206
292
|
}
|
|
207
293
|
export async function installPostMergeHook(cwd, rl, options) {
|
|
208
|
-
// Guard: must be a git repo — resolve root from any subdirectory
|
|
209
|
-
|
|
294
|
+
// Guard: must be a git repo — resolve root from any subdirectory. A malformed
|
|
295
|
+
// `.git` pointer file is the same declared-skip class, not a crash (#2422 round:
|
|
296
|
+
// the legacy `totem install-hooks` path previously let it reach handleError).
|
|
297
|
+
const { gitRoot, unparseablePointer } = resolveGitRootForHookPath(cwd);
|
|
210
298
|
if (!gitRoot) {
|
|
211
|
-
console.
|
|
299
|
+
console.error(unparseablePointer
|
|
300
|
+
? HOOKS_DIR_UNRESOLVED_MSG
|
|
301
|
+
: '[Totem] Not a git repository — skipping hook installation.');
|
|
212
302
|
return;
|
|
213
303
|
}
|
|
214
304
|
const fallbackCmd = getFallbackCommand(gitRoot);
|
|
@@ -222,7 +312,12 @@ export async function installPostMergeHook(cwd, rl, options) {
|
|
|
222
312
|
if (answer.trim().toLowerCase() !== 'y' && answer.trim().toLowerCase() !== 'yes') {
|
|
223
313
|
return;
|
|
224
314
|
}
|
|
225
|
-
const hooksDir =
|
|
315
|
+
const hooksDir = resolveHooksDir(gitRoot);
|
|
316
|
+
if (!hooksDir) {
|
|
317
|
+
// stderr like every other skip/diagnostic line (#2422 round: stream parity).
|
|
318
|
+
console.error(HOOKS_DIR_UNRESOLVED_MSG);
|
|
319
|
+
return;
|
|
320
|
+
}
|
|
226
321
|
const hookPath = path.join(hooksDir, 'post-merge');
|
|
227
322
|
// Idempotency: check if already installed
|
|
228
323
|
if (fs.existsSync(hookPath)) {
|
|
@@ -525,8 +620,10 @@ export function installGitHook(hooksDir, hookName, hookContent, marker, force, e
|
|
|
525
620
|
*/
|
|
526
621
|
export async function installEnforcementHooks(cwd, rl, options) {
|
|
527
622
|
const skip = { preCommit: 'skipped', prePush: 'skipped' };
|
|
528
|
-
// Guard: must be a git repo — resolve root from any subdirectory
|
|
529
|
-
|
|
623
|
+
// Guard: must be a git repo — resolve root from any subdirectory. Both skip
|
|
624
|
+
// classes stay silent here: installPostMergeHook always runs next in the two
|
|
625
|
+
// callers (init + the legacy install-hooks command) and prints the one line.
|
|
626
|
+
const { gitRoot } = resolveGitRootForHookPath(cwd);
|
|
530
627
|
if (!gitRoot) {
|
|
531
628
|
return skip;
|
|
532
629
|
}
|
|
@@ -541,8 +638,13 @@ export async function installEnforcementHooks(cwd, rl, options) {
|
|
|
541
638
|
if (answer.trim().toLowerCase() === 'n' || answer.trim().toLowerCase() === 'no') {
|
|
542
639
|
return skip;
|
|
543
640
|
}
|
|
641
|
+
const hooksDir = resolveHooksDir(gitRoot);
|
|
642
|
+
if (!hooksDir) {
|
|
643
|
+
// stderr like every other skip/diagnostic line (#2422 round: stream parity).
|
|
644
|
+
console.error(HOOKS_DIR_UNRESOLVED_MSG);
|
|
645
|
+
return skip;
|
|
646
|
+
}
|
|
544
647
|
const fallbackCmd = getFallbackCommand(gitRoot);
|
|
545
|
-
const hooksDir = path.join(gitRoot, '.git', 'hooks');
|
|
546
648
|
const preCommit = installGitHook(hooksDir, 'pre-commit', buildPreCommitHook(options?.tier), TOTEM_PRECOMMIT_MARKER, undefined, TOTEM_PRECOMMIT_END);
|
|
547
649
|
const prePush = installGitHook(hooksDir, 'pre-push', buildPrePushHook(fallbackCmd, options?.tier), TOTEM_PREPUSH_MARKER, undefined, TOTEM_PREPUSH_END);
|
|
548
650
|
// Warn about non-shell hooks that Totem cannot safely append to
|
|
@@ -560,10 +662,12 @@ export async function installHooksCommand() {
|
|
|
560
662
|
try {
|
|
561
663
|
await installEnforcementHooks(cwd, rl);
|
|
562
664
|
await installPostMergeHook(cwd, rl);
|
|
563
|
-
// Silently install post-checkout alongside post-merge (same guard — only if
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
665
|
+
// Silently install post-checkout alongside post-merge (same guard — only if
|
|
666
|
+
// post-merge was accepted). Bad-pointer skip stays silent: installPostMergeHook
|
|
667
|
+
// above already printed the line.
|
|
668
|
+
const { gitRoot } = resolveGitRootForHookPath(cwd);
|
|
669
|
+
const hooksDir = gitRoot ? resolveHooksDir(gitRoot) : null;
|
|
670
|
+
if (gitRoot && hooksDir && !detectHookManager(gitRoot)) {
|
|
567
671
|
const postMerge = path.join(hooksDir, 'post-merge');
|
|
568
672
|
const hasPostMerge = fs.existsSync(postMerge) && fs.readFileSync(postMerge, 'utf-8').includes(TOTEM_HOOK_MARKER);
|
|
569
673
|
if (hasPostMerge) {
|
|
@@ -581,9 +685,14 @@ export async function installHooksCommand() {
|
|
|
581
685
|
* Installs pre-commit, pre-push, and post-merge hooks without prompting.
|
|
582
686
|
*/
|
|
583
687
|
export function installHooksNonInteractive(cwd, force, options) {
|
|
584
|
-
// Guard: must be a git repo — resolve root from any subdirectory
|
|
585
|
-
|
|
688
|
+
// Guard: must be a git repo — resolve root from any subdirectory. Not-a-repo
|
|
689
|
+
// stays a silent null (the documented contract — callers print); the malformed
|
|
690
|
+
// pointer prints its declared-skip line here so a direct API caller honors the
|
|
691
|
+
// #2410 contract without hooksCommand's pre-guard (#2422 round).
|
|
692
|
+
const { gitRoot, unparseablePointer } = resolveGitRootForHookPath(cwd);
|
|
586
693
|
if (!gitRoot) {
|
|
694
|
+
if (unparseablePointer)
|
|
695
|
+
console.error(HOOKS_DIR_UNRESOLVED_MSG);
|
|
587
696
|
return null;
|
|
588
697
|
}
|
|
589
698
|
const fallbackCmd = getFallbackCommand(gitRoot);
|
|
@@ -594,7 +703,14 @@ export function installHooksNonInteractive(cwd, force, options) {
|
|
|
594
703
|
printHookManagerGuidance(manager);
|
|
595
704
|
return null;
|
|
596
705
|
}
|
|
597
|
-
const hooksDir =
|
|
706
|
+
const hooksDir = resolveHooksDir(gitRoot);
|
|
707
|
+
if (!hooksDir) {
|
|
708
|
+
// Unresolvable hooks dir (worktree/submodule pointer git could not follow) —
|
|
709
|
+
// the #2410 declared-skip class: report and exit 0, never mkdir '.git/hooks'
|
|
710
|
+
// blind (the mmnto-ai/totem#2418 ENOTDIR crash).
|
|
711
|
+
console.error(HOOKS_DIR_UNRESOLVED_MSG);
|
|
712
|
+
return null;
|
|
713
|
+
}
|
|
598
714
|
const preCommit = installGitHook(hooksDir, 'pre-commit', buildPreCommitHook(options?.tier), TOTEM_PRECOMMIT_MARKER, force, TOTEM_PRECOMMIT_END);
|
|
599
715
|
const prePush = installGitHook(hooksDir, 'pre-push', buildPrePushHook(fallbackCmd, options?.tier), TOTEM_PREPUSH_MARKER, force, TOTEM_PREPUSH_END);
|
|
600
716
|
const postMergeContent = buildHookContent(fallbackCmd);
|
|
@@ -607,11 +723,18 @@ export function installHooksNonInteractive(cwd, force, options) {
|
|
|
607
723
|
* Check that all Totem hooks are installed. Returns true if all present.
|
|
608
724
|
*/
|
|
609
725
|
export function checkHooksInstalled(cwd) {
|
|
610
|
-
|
|
726
|
+
// Malformed pointer → false like not-a-repo: a verify that cannot locate the
|
|
727
|
+
// hooks has nothing to certify (hooksCommand's pre-guard already declared the
|
|
728
|
+
// skip on the CLI --check path).
|
|
729
|
+
const { gitRoot } = resolveGitRootForHookPath(cwd);
|
|
611
730
|
if (!gitRoot) {
|
|
612
731
|
return false;
|
|
613
732
|
}
|
|
614
|
-
const hooksDir =
|
|
733
|
+
const hooksDir = resolveHooksDir(gitRoot);
|
|
734
|
+
if (!hooksDir) {
|
|
735
|
+
console.error('[Totem] Git hooks directory could not be resolved — cannot check hooks.');
|
|
736
|
+
return false;
|
|
737
|
+
}
|
|
615
738
|
const markers = [
|
|
616
739
|
{ file: 'pre-commit', marker: TOTEM_PRECOMMIT_MARKER },
|
|
617
740
|
{ file: 'pre-push', marker: TOTEM_PREPUSH_MARKER },
|
|
@@ -639,10 +762,15 @@ export function checkHooksInstalled(cwd) {
|
|
|
639
762
|
*/
|
|
640
763
|
export async function hooksCommand(opts) {
|
|
641
764
|
const cwd = process.cwd();
|
|
642
|
-
// Resolve git root once — guards both --check and install paths
|
|
643
|
-
|
|
765
|
+
// Resolve git root once — guards both --check and install paths. A malformed
|
|
766
|
+
// `.git` pointer FILE is the "unparseable gitdir pointer (worktree/submodule)"
|
|
767
|
+
// member of the #2410 declared-skip class: exit 0 with a truthful skip line
|
|
768
|
+
// instead of crashing the consumer's `prepare` lifecycle (mmnto-ai/totem#2418).
|
|
769
|
+
const { gitRoot, unparseablePointer } = resolveGitRootForHookPath(cwd);
|
|
644
770
|
if (!gitRoot) {
|
|
645
|
-
console.error(
|
|
771
|
+
console.error(unparseablePointer
|
|
772
|
+
? HOOKS_DIR_UNRESOLVED_MSG
|
|
773
|
+
: '[Totem] Not a git repository — skipping hook installation.');
|
|
646
774
|
return;
|
|
647
775
|
}
|
|
648
776
|
if (opts.check) {
|
|
@@ -833,7 +961,10 @@ export function upgradePrePushHookIfNeeded(cwd) {
|
|
|
833
961
|
const gitRoot = resolveGitRoot(cwd);
|
|
834
962
|
if (!gitRoot)
|
|
835
963
|
return false;
|
|
836
|
-
const
|
|
964
|
+
const hooksDir = resolveHooksDir(gitRoot);
|
|
965
|
+
if (!hooksDir)
|
|
966
|
+
return false;
|
|
967
|
+
const hookPath = path.join(hooksDir, 'pre-push');
|
|
837
968
|
if (!fs.existsSync(hookPath))
|
|
838
969
|
return false;
|
|
839
970
|
const content = fs.readFileSync(hookPath, 'utf-8');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-hooks.js","sourceRoot":"","sources":["../../src/commands/install-hooks.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"install-hooks.js","sourceRoot":"","sources":["../../src/commands/install-hooks.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Command-surface (Commander parser) tests for the `totem mail reply`/`mail
|
|
3
|
+
* mark` wiring (mmnto-ai/totem#2396, CR outside-diff on index.ts 881-931).
|
|
4
|
+
*
|
|
5
|
+
* `index.ts` builds its `program` at module scope and auto-runs `parseAsync`
|
|
6
|
+
* on import, so it cannot be imported without executing the CLI against the
|
|
7
|
+
* test runner's argv. This reconstructs the EXACT subcommand wiring — the
|
|
8
|
+
* `--no-mark` boolean-negation translation (`const { mark, ...rest } = opts;
|
|
9
|
+
* noMark: mark === false`) and the `mail mark <source>` positional dispatch —
|
|
10
|
+
* with the command-module functions stubbed, verifying the Commander parser
|
|
11
|
+
* produces the options the lib is invoked with. Kept intentionally light
|
|
12
|
+
* (parser-level, no real fs/network).
|
|
13
|
+
*/
|
|
14
|
+
export {};
|
|
15
|
+
//# sourceMappingURL=mail-cli-wiring.test.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mail-cli-wiring.test.d.ts","sourceRoot":"","sources":["../../src/commands/mail-cli-wiring.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG"}
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Command-surface (Commander parser) tests for the `totem mail reply`/`mail
|
|
3
|
+
* mark` wiring (mmnto-ai/totem#2396, CR outside-diff on index.ts 881-931).
|
|
4
|
+
*
|
|
5
|
+
* `index.ts` builds its `program` at module scope and auto-runs `parseAsync`
|
|
6
|
+
* on import, so it cannot be imported without executing the CLI against the
|
|
7
|
+
* test runner's argv. This reconstructs the EXACT subcommand wiring — the
|
|
8
|
+
* `--no-mark` boolean-negation translation (`const { mark, ...rest } = opts;
|
|
9
|
+
* noMark: mark === false`) and the `mail mark <source>` positional dispatch —
|
|
10
|
+
* with the command-module functions stubbed, verifying the Commander parser
|
|
11
|
+
* produces the options the lib is invoked with. Kept intentionally light
|
|
12
|
+
* (parser-level, no real fs/network).
|
|
13
|
+
*/
|
|
14
|
+
import { Command } from 'commander';
|
|
15
|
+
import { describe, expect, it, vi } from 'vitest';
|
|
16
|
+
/** Mirror of the `mail reply` / `mail mark` registration in index.ts. */
|
|
17
|
+
function buildMailProgram(handlers) {
|
|
18
|
+
const program = new Command();
|
|
19
|
+
program.exitOverride(); // throw on parse error instead of process.exit
|
|
20
|
+
const mailCmd = program.command('mail');
|
|
21
|
+
mailCmd
|
|
22
|
+
.command('reply <source>')
|
|
23
|
+
.option('--from <agent>', 'Sender agent-id')
|
|
24
|
+
.option('--to <agent>', 'Override the inferred recipient')
|
|
25
|
+
.option('--subject <text>', 'Override the inferred subject')
|
|
26
|
+
.option('--no-mark', 'Do NOT mark the source dispatch processed')
|
|
27
|
+
.action((source, opts) => {
|
|
28
|
+
// EXACT translation from index.ts: strip the CLI-only negation flag and
|
|
29
|
+
// map it into the lib's opt-out.
|
|
30
|
+
const { mark, ...rest } = opts;
|
|
31
|
+
handlers.mailReply(source, { ...rest, noMark: mark === false });
|
|
32
|
+
});
|
|
33
|
+
mailCmd
|
|
34
|
+
.command('mark <source>')
|
|
35
|
+
.option('--agent-id <id>', 'Seat whose processed/ cursor to mark into')
|
|
36
|
+
.action((source, opts) => {
|
|
37
|
+
handlers.markSource(source, opts);
|
|
38
|
+
});
|
|
39
|
+
return program;
|
|
40
|
+
}
|
|
41
|
+
describe('mail CLI command-surface (Commander wiring, mmnto-ai/totem#2396)', () => {
|
|
42
|
+
it('reply WITHOUT --no-mark → noMark: false (marking on by default)', () => {
|
|
43
|
+
const mailReply = vi.fn();
|
|
44
|
+
const markSource = vi.fn();
|
|
45
|
+
buildMailProgram({ mailReply, markSource }).parse(['node', 'totem', 'mail', 'reply', 'SRC.md']);
|
|
46
|
+
expect(mailReply).toHaveBeenCalledTimes(1);
|
|
47
|
+
expect(mailReply.mock.calls[0][0]).toBe('SRC.md');
|
|
48
|
+
expect(mailReply.mock.calls[0][1].noMark).toBe(false);
|
|
49
|
+
expect(markSource).not.toHaveBeenCalled();
|
|
50
|
+
});
|
|
51
|
+
it('reply --no-mark → noMark: true (Commander boolean-negation)', () => {
|
|
52
|
+
const mailReply = vi.fn();
|
|
53
|
+
const markSource = vi.fn();
|
|
54
|
+
buildMailProgram({ mailReply, markSource }).parse([
|
|
55
|
+
'node',
|
|
56
|
+
'totem',
|
|
57
|
+
'mail',
|
|
58
|
+
'reply',
|
|
59
|
+
'SRC.md',
|
|
60
|
+
'--no-mark',
|
|
61
|
+
]);
|
|
62
|
+
expect(mailReply.mock.calls[0][1].noMark).toBe(true);
|
|
63
|
+
});
|
|
64
|
+
it('reply strips the CLI-only `mark` flag out of the lib options (GCA @1392)', () => {
|
|
65
|
+
const mailReply = vi.fn();
|
|
66
|
+
const markSource = vi.fn();
|
|
67
|
+
buildMailProgram({ mailReply, markSource }).parse([
|
|
68
|
+
'node',
|
|
69
|
+
'totem',
|
|
70
|
+
'mail',
|
|
71
|
+
'reply',
|
|
72
|
+
'SRC.md',
|
|
73
|
+
'--from',
|
|
74
|
+
'totem-claude',
|
|
75
|
+
]);
|
|
76
|
+
const opts = mailReply.mock.calls[0][1];
|
|
77
|
+
expect('mark' in opts).toBe(false); // never leaks into the core actuator
|
|
78
|
+
expect(opts['from']).toBe('totem-claude');
|
|
79
|
+
expect(opts['noMark']).toBe(false);
|
|
80
|
+
});
|
|
81
|
+
it('mark <source> is registered and dispatches to markSource with --agent-id', () => {
|
|
82
|
+
const mailReply = vi.fn();
|
|
83
|
+
const markSource = vi.fn();
|
|
84
|
+
buildMailProgram({ mailReply, markSource }).parse([
|
|
85
|
+
'node',
|
|
86
|
+
'totem',
|
|
87
|
+
'mail',
|
|
88
|
+
'mark',
|
|
89
|
+
'SRC.md',
|
|
90
|
+
'--agent-id',
|
|
91
|
+
'totem-claude',
|
|
92
|
+
]);
|
|
93
|
+
expect(markSource).toHaveBeenCalledTimes(1);
|
|
94
|
+
expect(markSource.mock.calls[0][0]).toBe('SRC.md');
|
|
95
|
+
expect(markSource.mock.calls[0][1].agentId).toBe('totem-claude');
|
|
96
|
+
expect(mailReply).not.toHaveBeenCalled();
|
|
97
|
+
});
|
|
98
|
+
it('mark <source> without --agent-id dispatches with agentId undefined (self-resolve)', () => {
|
|
99
|
+
const mailReply = vi.fn();
|
|
100
|
+
const markSource = vi.fn();
|
|
101
|
+
buildMailProgram({ mailReply, markSource }).parse(['node', 'totem', 'mail', 'mark', 'SRC.md']);
|
|
102
|
+
expect(markSource).toHaveBeenCalledTimes(1);
|
|
103
|
+
expect(markSource.mock.calls[0][1].agentId).toBeUndefined();
|
|
104
|
+
});
|
|
105
|
+
});
|
|
106
|
+
//# sourceMappingURL=mail-cli-wiring.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mail-cli-wiring.test.js","sourceRoot":"","sources":["../../src/commands/mail-cli-wiring.test.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/mail.d.ts
CHANGED
|
@@ -88,6 +88,26 @@ export interface MailCommandOptions {
|
|
|
88
88
|
*/
|
|
89
89
|
includeProcessed?: boolean;
|
|
90
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* Normalize an ECL dispatch basename to its portable, NTFS-safe form by
|
|
93
|
+
* STRIPPING COLONS — the compact `...T0510Z...` shape the send actuator already
|
|
94
|
+
* emits (mmnto-ai/totem#2431). A colon in a filename is an NTFS Alternate Data
|
|
95
|
+
* Stream separator: `fs.writeFileSync` to `...T05:10Z-x.md` "succeeds" but
|
|
96
|
+
* writes a 0-byte base file (`...T05`) with the real bytes in an invisible
|
|
97
|
+
* `:10Z-x.md` stream that `fs.readdirSync` NEVER lists — so a colon-bearing
|
|
98
|
+
* `processed/` mark is unreadable and its dispatch reports UNREAD forever
|
|
99
|
+
* (agy root-cause, live-verified with `Get-Item -Stream *`). Applied on ALL
|
|
100
|
+
* platforms (not just win32) so marks stay portable across checkouts: a mark
|
|
101
|
+
* written on a colon-legal filesystem must still be found on Windows. This is
|
|
102
|
+
* the single normalization seam — the writer (`markSource`) stores under the
|
|
103
|
+
* sanitized name, and the reader normalizes BOTH inbound outbox basenames AND
|
|
104
|
+
* mark basenames through it before comparison, so sanitized marks subtract
|
|
105
|
+
* colon-bearing inbound names and pre-existing corrupted 0-byte marks stop
|
|
106
|
+
* mattering once a healed mark lands. Idempotent — a colon-free basename passes
|
|
107
|
+
* through unchanged. Colons ONLY: broadening to other characters would perturb
|
|
108
|
+
* the reader's positional-token bucketing (which keys on the raw filename).
|
|
109
|
+
*/
|
|
110
|
+
export declare function sanitizeEclBasename(name: string): string;
|
|
91
111
|
/**
|
|
92
112
|
* Programmatic entry point. Returns a structured `MailPollResult` for
|
|
93
113
|
* consumers that want to render their own output (hooks, MCP audits,
|
|
@@ -181,6 +201,12 @@ export interface MailSendResult {
|
|
|
181
201
|
header: DispatchHeader;
|
|
182
202
|
/** Content-class warnings surfaced at emit-time; dispatch still written. */
|
|
183
203
|
warnings: string[];
|
|
204
|
+
/**
|
|
205
|
+
* Present only on a `mailReply` that atomically marked the source dispatch
|
|
206
|
+
* consumed (ADR-106 § A1.4; mmnto-ai/totem#2396). Absent on `mailSend` and on
|
|
207
|
+
* a `--no-mark` (stage-only) reply.
|
|
208
|
+
*/
|
|
209
|
+
mark?: MailMarkResult;
|
|
184
210
|
}
|
|
185
211
|
/**
|
|
186
212
|
* Serialize a dispatch header + body to ADR-098 v0.4 markdown. Pure +
|
|
@@ -230,11 +256,65 @@ export declare function mailSend(opts: MailSendOptions): MailSendResult;
|
|
|
230
256
|
export declare function mailReply(source: string, opts?: Omit<MailSendOptions, 'to' | 'subject' | 'inReplyTo'> & {
|
|
231
257
|
to?: string;
|
|
232
258
|
subject?: string;
|
|
259
|
+
/**
|
|
260
|
+
* Skip the atomic consume-mark (ADR-106 § A1.4; mmnto-ai/totem#2396).
|
|
261
|
+
* Default (undefined/false) copies the source into the replying seat's own
|
|
262
|
+
* `processed/` cursor the moment the reply lands — reply IS consumption, so
|
|
263
|
+
* the mark is a side-effect of the read tool (A1.3 "never a separate
|
|
264
|
+
* ritual"), never the dropped-copy step that re-surfaces as phantom-unread.
|
|
265
|
+
* `--no-mark` opts out for stage-only reply workflows.
|
|
266
|
+
*/
|
|
267
|
+
noMark?: boolean;
|
|
233
268
|
}): MailSendResult;
|
|
269
|
+
export interface MailMarkOptions {
|
|
270
|
+
/**
|
|
271
|
+
* Seat whose `processed/` cursor receives the mark. Precedence mirrors the
|
|
272
|
+
* `ecl-gc` single-seat self-resolver (`resolveSelfSender`): explicit
|
|
273
|
+
* `--agent-id` > unambiguous resolved self > error. Ambiguous/zero self is a
|
|
274
|
+
* hard usage error — a seat may only mark into its OWN subtree (§ A2.3
|
|
275
|
+
* single-writer), so the command never guesses which seat consumed a dispatch.
|
|
276
|
+
*/
|
|
277
|
+
agentId?: string;
|
|
278
|
+
/** Walk-start for the repo-root resolver (default: cwd — same contract as
|
|
279
|
+
* `pollMail`/`eclCompact`). Test injection point. */
|
|
280
|
+
repoRoot?: string;
|
|
281
|
+
/** Env override (default: process.env). Test injection point. */
|
|
282
|
+
env?: Record<string, string | undefined>;
|
|
283
|
+
}
|
|
284
|
+
export interface MailMarkResult {
|
|
285
|
+
/** Absolute path of the mark (written, or the pre-existing one on a no-op). */
|
|
286
|
+
markPath: string;
|
|
287
|
+
/** Basename of the mark — matches the source dispatch (the reader's dedupe key). */
|
|
288
|
+
fileName: string;
|
|
289
|
+
/** The seat whose `processed/` cursor now holds the mark. */
|
|
290
|
+
agent: string;
|
|
291
|
+
/** True iff the mark landed under `processed/_broadcast/` (source is a broadcast). */
|
|
292
|
+
broadcast: boolean;
|
|
293
|
+
/** True iff a same-basename mark already existed — the operation was an idempotent no-op. */
|
|
294
|
+
alreadyMarked: boolean;
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* `totem mail mark <source>` — copy a consumed dispatch into the consuming
|
|
298
|
+
* seat's own `processed/` cursor WITHOUT replying (read-and-acted-elsewhere).
|
|
299
|
+
* The binary-guaranteed path for the marking obligation ADR-106 § A1.3 puts on
|
|
300
|
+
* the recipient. Shared by the standalone command and `mailReply`'s atomic mark.
|
|
301
|
+
*
|
|
302
|
+
* HARD-errors (fail-loud, Tenet 4 — a dropped mark is the phantom-unread class
|
|
303
|
+
* this closes) on: an unreadable/unparseable source, an unresolvable/ambiguous
|
|
304
|
+
* seat, an unsafe agent-id, or a write that did not land. Idempotent: a
|
|
305
|
+
* same-basename mark already present is a no-op (safe to run twice).
|
|
306
|
+
*/
|
|
307
|
+
export declare function markSource(source: string, opts?: MailMarkOptions): MailMarkResult;
|
|
234
308
|
/**
|
|
235
309
|
* CLI wrapper for `mail send` / `mail reply`. Surfaces content warnings LOUDLY
|
|
236
310
|
* on stderr at emit-time (inv6: the dispatch still wrote — this is the typo
|
|
237
311
|
* backstop, not a block), then confirms the written path.
|
|
238
312
|
*/
|
|
239
313
|
export declare function mailSendCommand(result: MailSendResult): Promise<MailSendResult>;
|
|
314
|
+
/**
|
|
315
|
+
* CLI wrapper for `mail mark`. Confirms the mark (or reports the idempotent
|
|
316
|
+
* no-op) on stderr — the informational, non-primary-data path the mail surface
|
|
317
|
+
* uses throughout.
|
|
318
|
+
*/
|
|
319
|
+
export declare function mailMarkCommand(result: MailMarkResult): Promise<MailMarkResult>;
|
|
240
320
|
//# sourceMappingURL=mail.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mail.d.ts","sourceRoot":"","sources":["../../src/commands/mail.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH,OAAO,EAKL,KAAK,mBAAmB,EAEzB,MAAM,cAAc,CAAC;AAoBtB,mDAAmD;AACnD,MAAM,WAAW,SAAS;IACxB,6EAA6E;IAC7E,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,iFAAiF;IACjF,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,EAAE,EAAE,MAAM,CAAC;IACX,4HAA4H;IAC5H,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,kEAAkE;IAClE,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,yCAAyC;AACzC,MAAM,WAAW,cAAc;IAC7B;;;iDAG6C;IAC7C,UAAU,EAAE;QACV,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;KACvC,CAAC;IACF,+EAA+E;IAC/E,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB,kEAAkE;IAClE,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,SAAS,EAAE,OAAO,CAAC;IACnB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,gDAAgD;IAChD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,iFAAiF;IACjF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC;iFAC6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;
|
|
1
|
+
{"version":3,"file":"mail.d.ts","sourceRoot":"","sources":["../../src/commands/mail.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH,OAAO,EAKL,KAAK,mBAAmB,EAEzB,MAAM,cAAc,CAAC;AAoBtB,mDAAmD;AACnD,MAAM,WAAW,SAAS;IACxB,6EAA6E;IAC7E,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,iFAAiF;IACjF,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,EAAE,EAAE,MAAM,CAAC;IACX,4HAA4H;IAC5H,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,kEAAkE;IAClE,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,yCAAyC;AACzC,MAAM,WAAW,cAAc;IAC7B;;;iDAG6C;IAC7C,UAAU,EAAE;QACV,MAAM,EAAE,MAAM,EAAE,CAAC;QACjB,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;KACvC,CAAC;IACF,+EAA+E;IAC/E,IAAI,EAAE,SAAS,EAAE,CAAC;IAClB,kEAAkE;IAClE,OAAO,EAAE,MAAM,CAAC;IAChB,wEAAwE;IACxE,SAAS,EAAE,OAAO,CAAC;IACnB,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,gDAAgD;IAChD,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,iFAAiF;IACjF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC;iFAC6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC5B;AAgMD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExD;AA2LD;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,IAAI,GAAE,kBAAuB,GAAG,cAAc,CAsStE;AAID;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,GAAG,CAAC,GAAG,CAAC,CAEjE;AA2CD,wBAAsB,WAAW,CAC/B,IAAI,GAAE,kBAAuB,GAC5B,OAAO,CAAC;IAAE,MAAM,EAAE,cAAc,CAAC;IAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,CAAA;CAAE,CAAC,CA2BtD;AA0BD;;;;;;;;;GASG;AACH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,wEAAwE;IACxE,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,+EAA+E;IAC/E,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,2CAA2C;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,kEAAkE;IAClE,OAAO,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8EAA8E;IAC9E,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+BAA+B;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,sEAAsE;IACtE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gEAAgE;IAChE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sDAAsD;IACtD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iEAAiE;IACjE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IACzC,uEAAuE;IACvE,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;IACjB,qEAAqE;IACrE,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,cAAc;IAC7B,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,MAAM,EAAE,cAAc,CAAC;IACvB,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB;;;;OAIG;IACH,IAAI,CAAC,EAAE,cAAc,CAAC;CACvB;AA4BD;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAuB5E;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,EAC1C,WAAW,EAAE,SAAS,MAAM,EAAE,GAC7B,MAAM,EAAE,CAiBV;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EACvC,YAAY,CAAC,EAAE,MAAM,GACpB,MAAM,CAkBR;AA6ED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,eAAe,GAAG,cAAc,CAwH9D;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CACvB,MAAM,EAAE,MAAM,EACd,IAAI,GAAE,IAAI,CAAC,eAAe,EAAE,IAAI,GAAG,SAAS,GAAG,WAAW,CAAC,GAAG;IAC5D,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;;;OAOG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;CACb,GACL,cAAc,CAqEhB;AAuCD,MAAM,WAAW,eAAe;IAC9B;;;;;;OAMG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;yDACqD;IACrD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iEAAiE;IACjE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,cAAc;IAC7B,+EAA+E;IAC/E,QAAQ,EAAE,MAAM,CAAC;IACjB,oFAAoF;IACpF,QAAQ,EAAE,MAAM,CAAC;IACjB,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAC;IACd,sFAAsF;IACtF,SAAS,EAAE,OAAO,CAAC;IACnB,6FAA6F;IAC7F,aAAa,EAAE,OAAO,CAAC;CACxB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,GAAE,eAAoB,GAAG,cAAc,CAsJrF;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAqBrF;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC,CAYrF"}
|