openclaw-telegram-manager 2.8.0 → 2.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -13
- package/dist/commands/archive.d.ts.map +1 -1
- package/dist/commands/archive.js +0 -33
- package/dist/commands/archive.js.map +1 -1
- package/dist/commands/autopilot.d.ts +11 -1
- package/dist/commands/autopilot.d.ts.map +1 -1
- package/dist/commands/autopilot.js +70 -11
- package/dist/commands/autopilot.js.map +1 -1
- package/dist/commands/daily-report-all.d.ts +28 -0
- package/dist/commands/daily-report-all.d.ts.map +1 -0
- package/dist/commands/daily-report-all.js +255 -0
- package/dist/commands/daily-report-all.js.map +1 -0
- package/dist/commands/daily-report.d.ts +1 -1
- package/dist/commands/daily-report.d.ts.map +1 -1
- package/dist/commands/daily-report.js +7 -5
- package/dist/commands/daily-report.js.map +1 -1
- package/dist/commands/doctor-all.d.ts +1 -0
- package/dist/commands/doctor-all.d.ts.map +1 -1
- package/dist/commands/doctor-all.js +22 -4
- package/dist/commands/doctor-all.js.map +1 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +12 -3
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +0 -22
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/status.d.ts +0 -1
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +3 -5
- package/dist/commands/status.js.map +1 -1
- package/dist/lib/auth.d.ts.map +1 -1
- package/dist/lib/auth.js +2 -0
- package/dist/lib/auth.js.map +1 -1
- package/dist/lib/capsule.d.ts +4 -2
- package/dist/lib/capsule.d.ts.map +1 -1
- package/dist/lib/capsule.js +80 -37
- package/dist/lib/capsule.js.map +1 -1
- package/dist/lib/cron.d.ts +11 -0
- package/dist/lib/cron.d.ts.map +1 -1
- package/dist/lib/cron.js +40 -0
- package/dist/lib/cron.js.map +1 -1
- package/dist/lib/doctor-checks.d.ts +7 -11
- package/dist/lib/doctor-checks.d.ts.map +1 -1
- package/dist/lib/doctor-checks.js +34 -109
- package/dist/lib/doctor-checks.js.map +1 -1
- package/dist/lib/include-generator.d.ts.map +1 -1
- package/dist/lib/include-generator.js +6 -7
- package/dist/lib/include-generator.js.map +1 -1
- package/dist/lib/registry.d.ts.map +1 -1
- package/dist/lib/registry.js +7 -0
- package/dist/lib/registry.js.map +1 -1
- package/dist/lib/telegram.d.ts.map +1 -1
- package/dist/lib/telegram.js +3 -2
- package/dist/lib/telegram.js.map +1 -1
- package/dist/lib/types.d.ts +4 -3
- package/dist/lib/types.d.ts.map +1 -1
- package/dist/lib/types.js +7 -11
- package/dist/lib/types.js.map +1 -1
- package/dist/plugin.js +828 -712
- package/dist/setup.js +4 -8
- package/dist/setup.js.map +1 -1
- package/dist/tool.d.ts.map +1 -1
- package/dist/tool.js +23 -0
- package/dist/tool.js.map +1 -1
- package/package.json +1 -1
- package/skills/tm/SKILL.md +15 -9
package/dist/lib/capsule.js
CHANGED
|
@@ -4,29 +4,68 @@ import { BASE_FILES, OVERLAY_FILES, CAPSULE_VERSION } from './types.js';
|
|
|
4
4
|
import { jailCheck, rejectSymlink } from './security.js';
|
|
5
5
|
// ── Template content (embedded string constants) ───────────────────────
|
|
6
6
|
// These are the source-of-truth defaults, matching src/templates/.
|
|
7
|
+
const README_UNIVERSAL = (name) => `# ${name}
|
|
8
|
+
|
|
9
|
+
## What is this about?
|
|
10
|
+
|
|
11
|
+
_Describe what this topic is about._
|
|
12
|
+
|
|
13
|
+
## Goal
|
|
14
|
+
|
|
15
|
+
_What does success look like?_
|
|
16
|
+
|
|
17
|
+
## Key resources
|
|
18
|
+
|
|
19
|
+
_URLs, repos, paths, dashboards — anything the AI needs after a reset._
|
|
20
|
+
`;
|
|
21
|
+
const README_TYPE_SECTIONS = {
|
|
22
|
+
coding: () => `
|
|
23
|
+
## Architecture
|
|
24
|
+
|
|
25
|
+
_Components, data flow, key decisions._
|
|
26
|
+
|
|
27
|
+
## Deployment
|
|
28
|
+
|
|
29
|
+
_Environments, deploy steps, rollback._
|
|
30
|
+
|
|
31
|
+
## Commands
|
|
32
|
+
|
|
33
|
+
_Build, test, deploy — kept here so they survive a reset._
|
|
34
|
+
`,
|
|
35
|
+
research: () => `
|
|
36
|
+
## Sources
|
|
37
|
+
|
|
38
|
+
_Papers, articles, datasets, APIs._
|
|
39
|
+
|
|
40
|
+
## Findings
|
|
41
|
+
|
|
42
|
+
_Key findings, evidence, recommendations._
|
|
43
|
+
`,
|
|
44
|
+
marketing: () => `
|
|
45
|
+
## Campaigns
|
|
46
|
+
|
|
47
|
+
_Active campaigns, audiences, channels._
|
|
48
|
+
|
|
49
|
+
## Metrics
|
|
50
|
+
|
|
51
|
+
_KPIs, targets, tracking dashboards._
|
|
52
|
+
`,
|
|
53
|
+
general: () => '',
|
|
54
|
+
};
|
|
7
55
|
const BASE_TEMPLATES = {
|
|
8
|
-
'README.md': (name) =>
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
'
|
|
14
|
-
'NOTES.md': (name) => `# Notes: ${name}\n\n_Anything worth remembering about this topic._\n`,
|
|
56
|
+
'README.md': (name, type) => {
|
|
57
|
+
const universal = README_UNIVERSAL(name);
|
|
58
|
+
const extra = type ? README_TYPE_SECTIONS[type](name) : '';
|
|
59
|
+
return universal + extra;
|
|
60
|
+
},
|
|
61
|
+
'STATUS.md': (name) => `# Status: ${name}\n\n## Last done (UTC)\n\n${new Date().toISOString()}\nTopic created. Waiting for first instructions.\n\n## Next actions (now)\n\n_None yet._\n\n## Upcoming actions\n\n_None yet._\n\n## Backlog\n\n- [T-1] _e.g. Set up project scaffolding_\n\n## Completed\n\n_None yet._\n`,
|
|
15
62
|
'LEARNINGS.md': (name) => `# Learnings: ${name}\n\n_Hard-won insights, mistakes, and workarounds._\n_Agent prepends here automatically. Most recent entries first._\n`,
|
|
16
63
|
};
|
|
17
|
-
const OVERLAY_TEMPLATES = {
|
|
18
|
-
'ARCHITECTURE.md': (name) => `# Architecture: ${name}\n\n## Components\n\n_None yet._\n\n## Data flow\n\n_None yet._\n\n## Key decisions\n\n_None yet._\n`,
|
|
19
|
-
'DEPLOY.md': (name) => `# Deployment: ${name}\n\n## Paths\n\n_Repository and runtime/data paths go here._\n\n## Environments\n\n_None yet._\n\n## Deploy steps\n\n_None yet._\n\n## Rollback\n\n_None yet._\n`,
|
|
20
|
-
'SOURCES.md': (name) => `# Sources: ${name}\n\n## Papers & articles\n\n_None yet._\n\n## Datasets & APIs\n\n_None yet._\n\n## Other references\n\n_None yet._\n`,
|
|
21
|
-
'FINDINGS.md': (name) => `# Findings: ${name}\n\n## Key findings\n\n_None yet._\n\n## Evidence & data\n\n_None yet._\n\n## Recommendations\n\n_None yet._\n`,
|
|
22
|
-
'CAMPAIGNS.md': (name) => `# Campaigns: ${name}\n\n## Active campaigns\n\n_None yet._\n\n## Audiences & channels\n\n_None yet._\n\n## Timeline & budget\n\n_None yet._\n`,
|
|
23
|
-
'METRICS.md': (name) => `# Metrics: ${name}\n\n## KPIs & targets\n\n_None yet._\n\n## Tracking & dashboards\n\n_None yet._\n\n## Performance data\n\n_None yet._\n`,
|
|
24
|
-
};
|
|
25
64
|
// ── File permissions ───────────────────────────────────────────────────
|
|
26
65
|
const CAPSULE_FILE_MODE = 0o640;
|
|
27
66
|
// ── Scaffold ───────────────────────────────────────────────────────────
|
|
28
67
|
/**
|
|
29
|
-
* Scaffold a new capsule directory with base kit + type
|
|
68
|
+
* Scaffold a new capsule directory with base kit + type-specific README sections.
|
|
30
69
|
* Uses fs.mkdirSync with exclusive flag as the atomic reservation mechanism.
|
|
31
70
|
* Throws if the directory already exists (collision).
|
|
32
71
|
*
|
|
@@ -50,22 +89,15 @@ export function scaffoldCapsule(projectsBase, slug, name, type) {
|
|
|
50
89
|
const templateFn = BASE_TEMPLATES[file];
|
|
51
90
|
if (templateFn) {
|
|
52
91
|
const filePath = path.join(capsuleDir, file);
|
|
53
|
-
fs.writeFileSync(filePath, templateFn(name), { mode: CAPSULE_FILE_MODE });
|
|
54
|
-
}
|
|
55
|
-
}
|
|
56
|
-
// Write overlay files for the type
|
|
57
|
-
const overlays = OVERLAY_FILES[type];
|
|
58
|
-
for (const file of overlays) {
|
|
59
|
-
const templateFn = OVERLAY_TEMPLATES[file];
|
|
60
|
-
if (templateFn) {
|
|
61
|
-
const filePath = path.join(capsuleDir, file);
|
|
62
|
-
fs.writeFileSync(filePath, templateFn(name), { mode: CAPSULE_FILE_MODE });
|
|
92
|
+
fs.writeFileSync(filePath, templateFn(name, type), { mode: CAPSULE_FILE_MODE });
|
|
63
93
|
}
|
|
64
94
|
}
|
|
65
95
|
}
|
|
66
96
|
/**
|
|
67
97
|
* Upgrade an existing capsule to the latest template version.
|
|
68
|
-
*
|
|
98
|
+
* v3→v4: append Backlog + Completed sections to STATUS.md if missing,
|
|
99
|
+
* replace default README.md with new template if still at default.
|
|
100
|
+
* Never deletes old files (LINKS.md, TODO.md, etc.) — they may have user content.
|
|
69
101
|
*
|
|
70
102
|
* @param slug - stable ID used for directory name
|
|
71
103
|
* @param name - human-readable label used in template headers
|
|
@@ -88,20 +120,31 @@ export function upgradeCapsule(projectsBase, slug, name, type, currentVersion) {
|
|
|
88
120
|
if (!fs.existsSync(filePath)) {
|
|
89
121
|
const templateFn = BASE_TEMPLATES[file];
|
|
90
122
|
if (templateFn) {
|
|
91
|
-
fs.writeFileSync(filePath, templateFn(name), { mode: CAPSULE_FILE_MODE });
|
|
123
|
+
fs.writeFileSync(filePath, templateFn(name, type), { mode: CAPSULE_FILE_MODE });
|
|
92
124
|
addedFiles.push(file);
|
|
93
125
|
}
|
|
94
126
|
}
|
|
95
127
|
}
|
|
96
|
-
//
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
const
|
|
100
|
-
if (
|
|
101
|
-
const
|
|
102
|
-
if (
|
|
103
|
-
|
|
104
|
-
|
|
128
|
+
// v3→v4 specific upgrades
|
|
129
|
+
if (currentVersion < 4) {
|
|
130
|
+
// Append Backlog + Completed sections to STATUS.md if missing
|
|
131
|
+
const statusPath = path.join(capsuleDir, 'STATUS.md');
|
|
132
|
+
if (fs.existsSync(statusPath)) {
|
|
133
|
+
const content = fs.readFileSync(statusPath, 'utf-8');
|
|
134
|
+
if (!content.includes('## Backlog')) {
|
|
135
|
+
const appendix = '\n## Backlog\n\n- [T-1] _e.g. Set up project scaffolding_\n\n## Completed\n\n_None yet._\n';
|
|
136
|
+
fs.writeFileSync(statusPath, content.trimEnd() + '\n' + appendix, { mode: CAPSULE_FILE_MODE });
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
// Replace README.md with new template if still at default
|
|
140
|
+
const readmePath = path.join(capsuleDir, 'README.md');
|
|
141
|
+
if (fs.existsSync(readmePath)) {
|
|
142
|
+
const content = fs.readFileSync(readmePath, 'utf-8');
|
|
143
|
+
if (content.includes('_Describe what this topic is about._') && !content.includes('## Goal')) {
|
|
144
|
+
const templateFn = BASE_TEMPLATES['README.md'];
|
|
145
|
+
if (templateFn) {
|
|
146
|
+
fs.writeFileSync(readmePath, templateFn(name, type), { mode: CAPSULE_FILE_MODE });
|
|
147
|
+
}
|
|
105
148
|
}
|
|
106
149
|
}
|
|
107
150
|
}
|
package/dist/lib/capsule.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"capsule.js","sourceRoot":"","sources":["../../src/lib/capsule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAExE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEzD,0EAA0E;AAC1E,mEAAmE;AAEnE,MAAM,
|
|
1
|
+
{"version":3,"file":"capsule.js","sourceRoot":"","sources":["../../src/lib/capsule.ts"],"names":[],"mappings":"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"}
|
package/dist/lib/cron.d.ts
CHANGED
|
@@ -23,6 +23,17 @@ export interface CronAddResult {
|
|
|
23
23
|
* Non-critical — callers should log failures but not block on them.
|
|
24
24
|
*/
|
|
25
25
|
export declare function registerDailyReportCron(rpc: RpcInterface | null | undefined, params: CronJobParams, logger: Logger): Promise<CronAddResult>;
|
|
26
|
+
export interface CombinedCronResult {
|
|
27
|
+
jobId: string | null;
|
|
28
|
+
error?: string;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Register a single Gateway cron job that runs daily-report --all
|
|
32
|
+
* then doctor --all. Replaces per-topic cron jobs.
|
|
33
|
+
*
|
|
34
|
+
* Returns the job ID on success, or null with error message on failure.
|
|
35
|
+
*/
|
|
36
|
+
export declare function registerCombinedCron(rpc: RpcInterface | null | undefined, logger: Logger, schedule?: string, tz?: string): Promise<CombinedCronResult>;
|
|
26
37
|
/**
|
|
27
38
|
* Remove a Gateway cron job by ID.
|
|
28
39
|
*
|
package/dist/lib/cron.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cron.d.ts","sourceRoot":"","sources":["../../src/lib/cron.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAIvD,eAAO,MAAM,qBAAqB,cAAc,CAAC;AACjD,eAAO,MAAM,eAAe,QAAQ,CAAC;AAIrC,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAID;;;;;;;;GAQG;AACH,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EACpC,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,aAAa,CAAC,CAiDxB;AAID;;;;GAIG;AACH,wBAAsB,aAAa,CACjC,GAAG,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EACpC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC,CAclB"}
|
|
1
|
+
{"version":3,"file":"cron.d.ts","sourceRoot":"","sources":["../../src/lib/cron.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAIvD,eAAO,MAAM,qBAAqB,cAAc,CAAC;AACjD,eAAO,MAAM,eAAe,QAAQ,CAAC;AAIrC,MAAM,WAAW,aAAa;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAID;;;;;;;;GAQG;AACH,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EACpC,MAAM,EAAE,aAAa,EACrB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,aAAa,CAAC,CAiDxB;AAID,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EACpC,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,EACjB,EAAE,CAAC,EAAE,MAAM,GACV,OAAO,CAAC,kBAAkB,CAAC,CAqC7B;AAID;;;;GAIG;AACH,wBAAsB,aAAa,CACjC,GAAG,EAAE,YAAY,GAAG,IAAI,GAAG,SAAS,EACpC,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,OAAO,CAAC,CAclB"}
|
package/dist/lib/cron.js
CHANGED
|
@@ -60,6 +60,46 @@ export async function registerDailyReportCron(rpc, params, logger) {
|
|
|
60
60
|
return { jobId: null, error: msg };
|
|
61
61
|
}
|
|
62
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Register a single Gateway cron job that runs daily-report --all
|
|
65
|
+
* then doctor --all. Replaces per-topic cron jobs.
|
|
66
|
+
*
|
|
67
|
+
* Returns the job ID on success, or null with error message on failure.
|
|
68
|
+
*/
|
|
69
|
+
export async function registerCombinedCron(rpc, logger, schedule, tz) {
|
|
70
|
+
if (!rpc) {
|
|
71
|
+
return { jobId: null, error: 'RPC not available' };
|
|
72
|
+
}
|
|
73
|
+
const cronExpr = schedule ?? DEFAULT_CRON_SCHEDULE;
|
|
74
|
+
const timezone = tz ?? DEFAULT_CRON_TZ;
|
|
75
|
+
try {
|
|
76
|
+
const result = await rpc.call('cron.add', {
|
|
77
|
+
name: 'tm-daily-combined',
|
|
78
|
+
schedule: {
|
|
79
|
+
kind: 'cron',
|
|
80
|
+
expr: cronExpr,
|
|
81
|
+
tz: timezone,
|
|
82
|
+
},
|
|
83
|
+
sessionTarget: 'isolated',
|
|
84
|
+
wakeMode: 'now',
|
|
85
|
+
payload: {
|
|
86
|
+
kind: 'agentTurn',
|
|
87
|
+
message: 'Run topic_manager with command "daily-report --all" to post daily reports for all eligible topics. Then run topic_manager with command "doctor --all" to health-check all active topics.',
|
|
88
|
+
},
|
|
89
|
+
});
|
|
90
|
+
const jobId = (result['jobId'] ?? result['id'] ?? null);
|
|
91
|
+
if (jobId) {
|
|
92
|
+
logger.info(`[cron] Created combined daily job "${jobId}" (${cronExpr} ${timezone})`);
|
|
93
|
+
return { jobId };
|
|
94
|
+
}
|
|
95
|
+
return { jobId: null, error: 'Gateway did not return a job ID' };
|
|
96
|
+
}
|
|
97
|
+
catch (err) {
|
|
98
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
99
|
+
logger.error(`[cron] Failed to create combined daily job: ${msg}`);
|
|
100
|
+
return { jobId: null, error: msg };
|
|
101
|
+
}
|
|
102
|
+
}
|
|
63
103
|
// ── Remove a cron job ──────────────────────────────────────────────────
|
|
64
104
|
/**
|
|
65
105
|
* Remove a Gateway cron job by ID.
|
package/dist/lib/cron.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cron.js","sourceRoot":"","sources":["../../src/lib/cron.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cron.js","sourceRoot":"","sources":["../../src/lib/cron.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ export declare function runRegistryChecks(entry: TopicEntry, projectsBase: strin
|
|
|
8
8
|
*/
|
|
9
9
|
export declare function runOrphanCheck(projectsBase: string, registrySlugs: Set<string>): DoctorCheckResult[];
|
|
10
10
|
/**
|
|
11
|
-
* Check capsule structure: required files
|
|
11
|
+
* Check capsule structure: required files and capsule version.
|
|
12
12
|
*/
|
|
13
13
|
export declare function runCapsuleChecks(entry: TopicEntry, projectsBase: string): DoctorCheckResult[];
|
|
14
14
|
/**
|
|
@@ -16,17 +16,13 @@ export declare function runCapsuleChecks(entry: TopicEntry, projectsBase: string
|
|
|
16
16
|
*/
|
|
17
17
|
export declare function runStatusQualityChecks(statusContent: string, entry: TopicEntry): DoctorCheckResult[];
|
|
18
18
|
/**
|
|
19
|
-
* Check that task IDs in "Next actions (now)" exist in
|
|
19
|
+
* Check that task IDs in "Next actions (now)" exist in the Backlog section of STATUS.md.
|
|
20
20
|
*/
|
|
21
|
-
export declare function
|
|
21
|
+
export declare function runNextVsBacklogChecks(statusContent: string): DoctorCheckResult[];
|
|
22
22
|
/**
|
|
23
|
-
* Check
|
|
23
|
+
* Check if README.md still has the default template placeholder.
|
|
24
24
|
*/
|
|
25
|
-
export declare function
|
|
26
|
-
/**
|
|
27
|
-
* Check CRON.md for job ID presence and optionally validate against cron/jobs.json.
|
|
28
|
-
*/
|
|
29
|
-
export declare function runCronChecks(cronContent: string, cronJobsPath?: string): DoctorCheckResult[];
|
|
25
|
+
export declare function runUnfilledContextCheck(capsuleFiles: Map<string, string>): DoctorCheckResult[];
|
|
30
26
|
/**
|
|
31
27
|
* Check per-topic systemPrompt and skills against canonical templates.
|
|
32
28
|
*/
|
|
@@ -50,9 +46,9 @@ export declare function runPostErrorCheck(entry: TopicEntry): DoctorCheckResult[
|
|
|
50
46
|
* This is a convenience function for command handlers.
|
|
51
47
|
* It reads capsule files and runs all checks.
|
|
52
48
|
*/
|
|
53
|
-
export declare function runAllChecksForTopic(entry: TopicEntry, projectsBase: string, includeContent?: string, registry?: Registry
|
|
49
|
+
export declare function runAllChecksForTopic(entry: TopicEntry, projectsBase: string, includeContent?: string, registry?: Registry): DoctorCheckResult[];
|
|
54
50
|
/**
|
|
55
|
-
* Snapshot STATUS.md
|
|
51
|
+
* Snapshot STATUS.md to .tm-backup/ when all checks pass.
|
|
56
52
|
* Only creates a backup if no ERROR or WARN findings exist.
|
|
57
53
|
*/
|
|
58
54
|
export declare function backupCapsuleIfHealthy(projectsBase: string, slug: string, results: DoctorCheckResult[]): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-checks.d.ts","sourceRoot":"","sources":["../../src/lib/doctor-checks.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"doctor-checks.d.ts","sourceRoot":"","sources":["../../src/lib/doctor-checks.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAkB1E;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,UAAU,EACjB,YAAY,EAAE,MAAM,GACnB,iBAAiB,EAAE,CA2BrB;AAID;;GAEG;AACH,wBAAgB,cAAc,CAC5B,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,GAAG,CAAC,MAAM,CAAC,GACzB,iBAAiB,EAAE,CA4BrB;AAID;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,UAAU,EACjB,YAAY,EAAE,MAAM,GACnB,iBAAiB,EAAE,CA0BrB;AAUD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,MAAM,EACrB,KAAK,EAAE,UAAU,GAChB,iBAAiB,EAAE,CAyErB;AAMD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,aAAa,EAAE,MAAM,GACpB,iBAAiB,EAAE,CA8CrB;AAID;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAChC,iBAAiB,EAAE,CAgBrB;AAID;;GAEG;AACH,wBAAgB,eAAe,CAC7B,KAAK,EAAE,UAAU,EACjB,cAAc,EAAE,MAAM,EACtB,QAAQ,EAAE,QAAQ,GACjB,iBAAiB,EAAE,CA4CrB;AAID;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,kBAAkB,EAAE,MAAM,EAC1B,QAAQ,EAAE,QAAQ,GACjB,iBAAiB,EAAE,CAgCrB;AAID;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,UAAU,GAChB,iBAAiB,EAAE,CAgBrB;AAID;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,UAAU,GAChB,iBAAiB,EAAE,CAgBrB;AAID;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,UAAU,EACjB,YAAY,EAAE,MAAM,EACpB,cAAc,CAAC,EAAE,MAAM,EACvB,QAAQ,CAAC,EAAE,QAAQ,GAClB,iBAAiB,EAAE,CA6CrB;AAOD;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,iBAAiB,EAAE,GAC3B,IAAI,CAkBN"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as fs from 'node:fs';
|
|
2
2
|
import * as path from 'node:path';
|
|
3
3
|
import JSON5 from 'json5';
|
|
4
|
-
import { Severity, CAPSULE_VERSION,
|
|
4
|
+
import { Severity, CAPSULE_VERSION, SPAM_THRESHOLD, } from './types.js';
|
|
5
5
|
import { jailCheck } from './security.js';
|
|
6
6
|
import { computeRegistryHash, extractRegistryHash } from './include-generator.js';
|
|
7
7
|
function check(severity, checkId, message, fixable, remediation) {
|
|
@@ -60,7 +60,7 @@ export function runOrphanCheck(projectsBase, registrySlugs) {
|
|
|
60
60
|
}
|
|
61
61
|
// ── Capsule structure checks ───────────────────────────────────────────
|
|
62
62
|
/**
|
|
63
|
-
* Check capsule structure: required files
|
|
63
|
+
* Check capsule structure: required files and capsule version.
|
|
64
64
|
*/
|
|
65
65
|
export function runCapsuleChecks(entry, projectsBase) {
|
|
66
66
|
const results = [];
|
|
@@ -71,17 +71,6 @@ export function runCapsuleChecks(entry, projectsBase) {
|
|
|
71
71
|
if (!fs.existsSync(path.join(capsuleDir, 'STATUS.md'))) {
|
|
72
72
|
results.push(check(Severity.ERROR, 'statusMissing', 'Status file is missing', true, 'Run /tm upgrade to recreate it'));
|
|
73
73
|
}
|
|
74
|
-
// TODO.md is important
|
|
75
|
-
if (!fs.existsSync(path.join(capsuleDir, 'TODO.md'))) {
|
|
76
|
-
results.push(check(Severity.WARN, 'todoMissing', 'TODO file is missing', true, 'Run /tm upgrade to recreate it'));
|
|
77
|
-
}
|
|
78
|
-
// Overlay files are optional but worth noting
|
|
79
|
-
const overlays = OVERLAY_FILES[entry.type] ?? [];
|
|
80
|
-
for (const file of overlays) {
|
|
81
|
-
if (!fs.existsSync(path.join(capsuleDir, file))) {
|
|
82
|
-
results.push(check(Severity.INFO, `overlayMissing:${file}`, `Optional overlay ${file} missing for type "${entry.type}"`, true));
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
74
|
// Capsule version behind
|
|
86
75
|
if (entry.capsuleVersion < CAPSULE_VERSION) {
|
|
87
76
|
results.push(check(Severity.INFO, 'capsuleVersionBehind', `Topic files are outdated (v${entry.capsuleVersion} → v${CAPSULE_VERSION}). Will auto-upgrade on next command.`, false));
|
|
@@ -146,11 +135,12 @@ export function runStatusQualityChecks(statusContent, entry) {
|
|
|
146
135
|
}
|
|
147
136
|
return results;
|
|
148
137
|
}
|
|
149
|
-
// ── Next vs
|
|
138
|
+
// ── Next vs Backlog cross-reference ────────────────────────────────────
|
|
139
|
+
const BACKLOG_RE = /^##\s*Backlog/im;
|
|
150
140
|
/**
|
|
151
|
-
* Check that task IDs in "Next actions (now)" exist in
|
|
141
|
+
* Check that task IDs in "Next actions (now)" exist in the Backlog section of STATUS.md.
|
|
152
142
|
*/
|
|
153
|
-
export function
|
|
143
|
+
export function runNextVsBacklogChecks(statusContent) {
|
|
154
144
|
const results = [];
|
|
155
145
|
// Extract next actions section
|
|
156
146
|
const nextActionsIndex = statusContent.search(NEXT_ACTIONS_RE);
|
|
@@ -165,84 +155,33 @@ export function runNextVsTodoChecks(statusContent, todoContent) {
|
|
|
165
155
|
const nextTaskIds = nextActionsSection.match(TASK_ID_RE) ?? [];
|
|
166
156
|
if (nextTaskIds.length === 0)
|
|
167
157
|
return results;
|
|
168
|
-
//
|
|
169
|
-
const
|
|
170
|
-
|
|
171
|
-
|
|
158
|
+
// Extract Backlog section from STATUS.md
|
|
159
|
+
const backlogIndex = statusContent.search(BACKLOG_RE);
|
|
160
|
+
if (backlogIndex < 0)
|
|
161
|
+
return results;
|
|
162
|
+
const backlogAfter = statusContent.slice(backlogIndex);
|
|
163
|
+
const backlogNextSection = backlogAfter.indexOf('\n## ', 1);
|
|
164
|
+
const backlogSection = backlogNextSection > 0
|
|
165
|
+
? backlogAfter.slice(0, backlogNextSection)
|
|
166
|
+
: backlogAfter;
|
|
167
|
+
const backlogTaskIds = new Set(backlogSection.match(TASK_ID_RE) ?? []);
|
|
168
|
+
// Find task IDs in next that are not in Backlog
|
|
169
|
+
const missing = nextTaskIds.filter((id) => !backlogTaskIds.has(id));
|
|
172
170
|
// Only warn if 2+ are missing (allows 1 stale reference)
|
|
173
171
|
if (missing.length >= 2) {
|
|
174
|
-
results.push(check(Severity.WARN, '
|
|
172
|
+
results.push(check(Severity.WARN, 'nextNotInBacklog', `${missing.length} tasks referenced in next actions don't exist in the backlog: ${missing.join(', ')}`, false, 'The AI will clean these up on next interaction'));
|
|
175
173
|
}
|
|
176
174
|
return results;
|
|
177
175
|
}
|
|
178
|
-
// ──
|
|
176
|
+
// ── Unfilled context check ─────────────────────────────────────────────
|
|
179
177
|
/**
|
|
180
|
-
* Check
|
|
178
|
+
* Check if README.md still has the default template placeholder.
|
|
181
179
|
*/
|
|
182
|
-
export function
|
|
180
|
+
export function runUnfilledContextCheck(capsuleFiles) {
|
|
183
181
|
const results = [];
|
|
184
|
-
|
|
185
|
-
if (
|
|
186
|
-
|
|
187
|
-
if (commandsContent !== undefined && isEffectivelyEmpty(commandsContent)) {
|
|
188
|
-
results.push(check(Severity.INFO, 'commandsEmpty', 'COMMANDS.md is empty for a coding topic', false, 'Add build/test/deploy commands to COMMANDS.md'));
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
// LINKS.md empty for coding or research
|
|
192
|
-
if (entry.type === 'coding' || entry.type === 'research') {
|
|
193
|
-
const linksContent = capsuleFiles.get('LINKS.md');
|
|
194
|
-
if (linksContent !== undefined && isEffectivelyEmpty(linksContent)) {
|
|
195
|
-
results.push(check(Severity.INFO, 'linksEmpty', 'LINKS.md is empty for a coding/research topic', false, 'Add URLs and endpoints to LINKS.md'));
|
|
196
|
-
}
|
|
197
|
-
}
|
|
198
|
-
return results;
|
|
199
|
-
}
|
|
200
|
-
/**
|
|
201
|
-
* Check if a markdown file is effectively empty (only has a heading and template text).
|
|
202
|
-
*/
|
|
203
|
-
function isEffectivelyEmpty(content) {
|
|
204
|
-
// Remove markdown heading lines and template placeholders
|
|
205
|
-
const stripped = content
|
|
206
|
-
.replace(/^#.*$/gm, '') // headings
|
|
207
|
-
.replace(/^_.*_$/gm, '') // italic template text
|
|
208
|
-
.replace(/\s+/g, '') // whitespace
|
|
209
|
-
.trim();
|
|
210
|
-
return stripped.length === 0;
|
|
211
|
-
}
|
|
212
|
-
// ── Cron checks ────────────────────────────────────────────────────────
|
|
213
|
-
const JOB_ID_RE = /[a-zA-Z0-9_-]{8,}/;
|
|
214
|
-
/**
|
|
215
|
-
* Check CRON.md for job ID presence and optionally validate against cron/jobs.json.
|
|
216
|
-
*/
|
|
217
|
-
export function runCronChecks(cronContent, cronJobsPath) {
|
|
218
|
-
const results = [];
|
|
219
|
-
// Skip if cron content is effectively empty
|
|
220
|
-
if (isEffectivelyEmpty(cronContent))
|
|
221
|
-
return results;
|
|
222
|
-
// Check for job IDs in CRON.md
|
|
223
|
-
const lines = cronContent.split('\n').filter((l) => !l.startsWith('#') && l.trim().length > 0);
|
|
224
|
-
const hasJobIds = lines.some((line) => JOB_ID_RE.test(line));
|
|
225
|
-
if (!hasJobIds) {
|
|
226
|
-
results.push(check(Severity.WARN, 'cronNoJobIds', 'Scheduled jobs are listed but have no recognizable job IDs', false));
|
|
227
|
-
return results;
|
|
228
|
-
}
|
|
229
|
-
// Optionally validate job IDs against cron/jobs.json
|
|
230
|
-
if (cronJobsPath && fs.existsSync(cronJobsPath)) {
|
|
231
|
-
try {
|
|
232
|
-
const jobsRaw = fs.readFileSync(cronJobsPath, 'utf-8');
|
|
233
|
-
const jobs = JSON.parse(jobsRaw);
|
|
234
|
-
const knownJobIds = new Set(Object.keys(jobs));
|
|
235
|
-
// Extract job IDs from CRON.md lines
|
|
236
|
-
for (const line of lines) {
|
|
237
|
-
const match = line.match(JOB_ID_RE);
|
|
238
|
-
if (match && !knownJobIds.has(match[0])) {
|
|
239
|
-
results.push(check(Severity.WARN, 'cronJobNotFound', `Scheduled job "${match[0]}" not found in the jobs registry`, false));
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
catch {
|
|
244
|
-
// Can't read jobs file — skip validation
|
|
245
|
-
}
|
|
182
|
+
const readmeContent = capsuleFiles.get('README.md');
|
|
183
|
+
if (readmeContent && readmeContent.includes('_Describe what this topic is about._')) {
|
|
184
|
+
results.push(check(Severity.INFO, 'contextUnfilled', 'Topic context is empty — tell the AI about your project to get better help.', false));
|
|
246
185
|
}
|
|
247
186
|
return results;
|
|
248
187
|
}
|
|
@@ -305,7 +244,7 @@ export function runIncludeDriftCheck(includeFileContent, registry) {
|
|
|
305
244
|
export function runSpamControlCheck(entry) {
|
|
306
245
|
const results = [];
|
|
307
246
|
if (entry.consecutiveSilentDoctors >= SPAM_THRESHOLD) {
|
|
308
|
-
results.push(check(Severity.INFO, 'spamControl', `No activity for a while
|
|
247
|
+
results.push(check(Severity.INFO, 'spamControl', `No activity for a while — auto-snoozing for 30 days`, true, 'Send a message to resume'));
|
|
309
248
|
}
|
|
310
249
|
return results;
|
|
311
250
|
}
|
|
@@ -328,7 +267,7 @@ export function runPostErrorCheck(entry) {
|
|
|
328
267
|
* This is a convenience function for command handlers.
|
|
329
268
|
* It reads capsule files and runs all checks.
|
|
330
269
|
*/
|
|
331
|
-
export function runAllChecksForTopic(entry, projectsBase, includeContent, registry
|
|
270
|
+
export function runAllChecksForTopic(entry, projectsBase, includeContent, registry) {
|
|
332
271
|
const results = [];
|
|
333
272
|
const capsuleDir = path.join(projectsBase, entry.slug);
|
|
334
273
|
// Registry checks
|
|
@@ -346,19 +285,11 @@ export function runAllChecksForTopic(entry, projectsBase, includeContent, regist
|
|
|
346
285
|
const statusContent = capsuleFiles.get('STATUS.md');
|
|
347
286
|
if (statusContent) {
|
|
348
287
|
results.push(...runStatusQualityChecks(statusContent, entry));
|
|
349
|
-
// Next vs
|
|
350
|
-
|
|
351
|
-
if (todoContent) {
|
|
352
|
-
results.push(...runNextVsTodoChecks(statusContent, todoContent));
|
|
353
|
-
}
|
|
354
|
-
}
|
|
355
|
-
// Commands / Links checks
|
|
356
|
-
results.push(...runCommandsLinksChecks(entry, capsuleFiles));
|
|
357
|
-
// Cron checks
|
|
358
|
-
const cronContent = capsuleFiles.get('CRON.md');
|
|
359
|
-
if (cronContent) {
|
|
360
|
-
results.push(...runCronChecks(cronContent, cronJobsPath));
|
|
288
|
+
// Next vs Backlog checks (Backlog section is in STATUS.md itself)
|
|
289
|
+
results.push(...runNextVsBacklogChecks(statusContent));
|
|
361
290
|
}
|
|
291
|
+
// Unfilled context check
|
|
292
|
+
results.push(...runUnfilledContextCheck(capsuleFiles));
|
|
362
293
|
// Config checks (if include content provided)
|
|
363
294
|
if (includeContent && registry) {
|
|
364
295
|
results.push(...runConfigChecks(entry, includeContent, registry));
|
|
@@ -373,9 +304,9 @@ export function runAllChecksForTopic(entry, projectsBase, includeContent, regist
|
|
|
373
304
|
}
|
|
374
305
|
// ── Backup helper ──────────────────────────────────────────────────────
|
|
375
306
|
const BACKUP_DIR = '.tm-backup';
|
|
376
|
-
const BACKUP_FILES = ['STATUS.md'
|
|
307
|
+
const BACKUP_FILES = ['STATUS.md'];
|
|
377
308
|
/**
|
|
378
|
-
* Snapshot STATUS.md
|
|
309
|
+
* Snapshot STATUS.md to .tm-backup/ when all checks pass.
|
|
379
310
|
* Only creates a backup if no ERROR or WARN findings exist.
|
|
380
311
|
*/
|
|
381
312
|
export function backupCapsuleIfHealthy(projectsBase, slug, results) {
|
|
@@ -398,13 +329,7 @@ export function backupCapsuleIfHealthy(projectsBase, slug, results) {
|
|
|
398
329
|
// ── File reading helper ────────────────────────────────────────────────
|
|
399
330
|
function readCapsuleFiles(capsuleDir) {
|
|
400
331
|
const files = new Map();
|
|
401
|
-
const filenames = [
|
|
402
|
-
'STATUS.md', 'TODO.md', 'COMMANDS.md', 'LINKS.md',
|
|
403
|
-
'CRON.md', 'NOTES.md', 'README.md', 'LEARNINGS.md',
|
|
404
|
-
'ARCHITECTURE.md', 'DEPLOY.md',
|
|
405
|
-
'SOURCES.md', 'FINDINGS.md',
|
|
406
|
-
'CAMPAIGNS.md', 'METRICS.md',
|
|
407
|
-
];
|
|
332
|
+
const filenames = ['README.md', 'STATUS.md', 'LEARNINGS.md'];
|
|
408
333
|
for (const name of filenames) {
|
|
409
334
|
const filePath = path.join(capsuleDir, name);
|
|
410
335
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-checks.js","sourceRoot":"","sources":["../../src/lib/doctor-checks.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctor-checks.js","sourceRoot":"","sources":["../../src/lib/doctor-checks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,QAAQ,EACR,eAAe,EACf,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAElF,SAAS,KAAK,CACZ,QAAuC,EACvC,OAAe,EACf,OAAe,EACf,OAAgB,EAChB,WAAoB;IAEpB,OAAO,WAAW;QAChB,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE;QACtD,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AAC9C,CAAC;AAED,0EAA0E;AAE1E;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC/B,KAAiB,EACjB,YAAoB;IAEpB,MAAM,OAAO,GAAwB,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAEvD,oBAAoB;IACpB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,EAAE,uCAAuC,KAAK,CAAC,IAAI,IAAI,EAAE,KAAK,EAAE,6BAA6B,CAAC,CAClI,CAAC;QACF,OAAO,OAAO,CAAC,CAAC,kDAAkD;IACpE,CAAC;IAED,8CAA8C;IAC9C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,YAAY,EAAE,uCAAuC,EAAE,KAAK,CAAC,CACpF,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,gBAAgB,EAAE,oCAAoC,EAAE,KAAK,CAAC,CACrF,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0EAA0E;AAE1E;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,YAAoB,EACpB,aAA0B;IAE1B,MAAM,OAAO,GAAwB,EAAE,CAAC;IAExC,IAAI,OAAoB,CAAC;IACzB,IAAI,CAAC;QACH,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,YAAY,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC,CAAC,8BAA8B;IAChD,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;YAAE,SAAS;QACpC,qCAAqC;QACrC,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,KAAK,aAAa;YAAE,SAAS;QAE3E,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,OAAO,CAAC,IAAI,CACV,KAAK,CACH,QAAQ,CAAC,IAAI,EACb,cAAc,EACd,8BAA8B,MAAM,CAAC,IAAI,EAAE,EAC3C,KAAK,CACN,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0EAA0E;AAE1E;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAiB,EACjB,YAAoB;IAEpB,MAAM,OAAO,GAAwB,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAEvD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,OAAO,CAAC;IAE/C,wBAAwB;IACxB,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC;QACvD,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,eAAe,EAAE,wBAAwB,EAAE,IAAI,EAAE,gCAAgC,CAAC,CACzG,CAAC;IACJ,CAAC;IAED,yBAAyB;IACzB,IAAI,KAAK,CAAC,cAAc,GAAG,eAAe,EAAE,CAAC;QAC3C,OAAO,CAAC,IAAI,CACV,KAAK,CACH,QAAQ,CAAC,IAAI,EACb,sBAAsB,EACtB,8BAA8B,KAAK,CAAC,cAAc,OAAO,eAAe,uCAAuC,EAC/G,KAAK,CACN,CACF,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0EAA0E;AAE1E,MAAM,YAAY,GAAG,6BAA6B,CAAC;AACnD,MAAM,eAAe,GAAG,0CAA0C,CAAC;AACnE,MAAM,YAAY,GAAG,+BAA+B,CAAC;AACrD,MAAM,UAAU,GAAG,YAAY,CAAC;AAChC,MAAM,QAAQ,GAAG,aAAa,CAAC;AAE/B;;GAEG;AACH,MAAM,UAAU,sBAAsB,CACpC,aAAqB,EACrB,KAAiB;IAEjB,MAAM,OAAO,GAAwB,EAAE,CAAC;IAExC,kCAAkC;IAClC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QACtC,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,EAAE,kDAAkD,EAAE,IAAI,EAAE,0CAA0C,CAAC,CAC/I,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,qCAAqC;QACrC,MAAM,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACzD,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QACxD,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC1D,MAAM,eAAe,GAAG,gBAAgB,GAAG,CAAC;YAC1C,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC;YACzC,CAAC,CAAC,YAAY,CAAC;QAEjB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;YACxC,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,qBAAqB,EAAE,gCAAgC,EAAE,IAAI,EAAE,0CAA0C,CAAC,CACjI,CAAC;QACJ,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACrC,wCAAwC;YACxC,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACpD,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,EAAE,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChC,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;gBACpE,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;oBAChB,OAAO,CAAC,IAAI,CACV,KAAK,CACH,QAAQ,CAAC,IAAI,EACb,eAAe,EACf,mBAAmB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAC7C,KAAK,EACL,uDAAuD,CACxD,CACF,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,qCAAqC;IACrC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;QACzC,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,oBAAoB,EAAE,iDAAiD,EAAE,IAAI,EAAE,0CAA0C,CAAC,CACjJ,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,2CAA2C;QAC3C,MAAM,gBAAgB,GAAG,aAAa,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAC/D,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAC3D,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC1D,MAAM,kBAAkB,GAAG,gBAAgB,GAAG,CAAC;YAC7C,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC;YACzC,CAAC,CAAC,YAAY,CAAC;QAEjB,MAAM,OAAO,GAAG,kBAAkB,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;QAC3D,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAExD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChD,OAAO,CAAC,IAAI,CACV,KAAK,CACH,QAAQ,CAAC,IAAI,EACb,kBAAkB,EAClB,6BAA6B,EAC7B,KAAK,EACL,mDAAmD,CACpD,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0EAA0E;AAE1E,MAAM,UAAU,GAAG,iBAAiB,CAAC;AAErC;;GAEG;AACH,MAAM,UAAU,sBAAsB,CACpC,aAAqB;IAErB,MAAM,OAAO,GAAwB,EAAE,CAAC;IAExC,+BAA+B;IAC/B,MAAM,gBAAgB,GAAG,aAAa,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAC/D,IAAI,gBAAgB,GAAG,CAAC;QAAE,OAAO,OAAO,CAAC;IAEzC,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC3D,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC1D,MAAM,kBAAkB,GAAG,gBAAgB,GAAG,CAAC;QAC7C,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC;QACzC,CAAC,CAAC,YAAY,CAAC;IAEjB,iCAAiC;IACjC,MAAM,WAAW,GAAG,kBAAkB,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;IAC/D,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,OAAO,CAAC;IAE7C,yCAAyC;IACzC,MAAM,YAAY,GAAG,aAAa,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACtD,IAAI,YAAY,GAAG,CAAC;QAAE,OAAO,OAAO,CAAC;IAErC,MAAM,YAAY,GAAG,aAAa,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACvD,MAAM,kBAAkB,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC5D,MAAM,cAAc,GAAG,kBAAkB,GAAG,CAAC;QAC3C,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,kBAAkB,CAAC;QAC3C,CAAC,CAAC,YAAY,CAAC;IAEjB,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;IAEvE,gDAAgD;IAChD,MAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAEpE,yDAAyD;IACzD,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CACV,KAAK,CACH,QAAQ,CAAC,IAAI,EACb,kBAAkB,EAClB,GAAG,OAAO,CAAC,MAAM,iEAAiE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EACtG,KAAK,EACL,gDAAgD,CACjD,CACF,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0EAA0E;AAE1E;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,YAAiC;IAEjC,MAAM,OAAO,GAAwB,EAAE,CAAC;IACxC,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAEpD,IAAI,aAAa,IAAI,aAAa,CAAC,QAAQ,CAAC,sCAAsC,CAAC,EAAE,CAAC;QACpF,OAAO,CAAC,IAAI,CACV,KAAK,CACH,QAAQ,CAAC,IAAI,EACb,iBAAiB,EACjB,6EAA6E,EAC7E,KAAK,CACN,CACF,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0EAA0E;AAE1E;;GAEG;AACH,MAAM,UAAU,eAAe,CAC7B,KAAiB,EACjB,cAAsB,EACtB,QAAkB;IAElB,MAAM,OAAO,GAAwB,EAAE,CAAC;IAExC,sFAAsF;IACtF,IAAI,UAAmC,CAAC;IACxC,IAAI,CAAC;QACH,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,cAAc,CAA4B,CAAC;IACtE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,WAAW,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAwC,CAAC;IACrF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,KAAK,EAAE,qBAAqB,CAAC,CAClG,CAAC;QACF,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAwC,CAAC;IAC5E,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAwC,CAAC;IAEpF,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,oBAAoB,EAAE,kCAAkC,EAAE,KAAK,EAAE,qBAAqB,CAAC,CAC7G,CAAC;QACF,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,4BAA4B;IAC5B,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,EAAE,CAAC;QACjC,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,sBAAsB,EAAE,4CAA4C,EAAE,KAAK,EAAE,qBAAqB,CAAC,CACzH,CAAC;IACJ,CAAC;IAED,qBAAqB;IACrB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QACpE,OAAO,CAAC,IAAI,CACV,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,EAAE,wCAAwC,EAAE,KAAK,EAAE,qBAAqB,CAAC,CAC/G,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0EAA0E;AAE1E;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAClC,kBAA0B,EAC1B,QAAkB;IAElB,MAAM,OAAO,GAAwB,EAAE,CAAC;IAExC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;IACzD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,IAAI,CACV,KAAK,CACH,QAAQ,CAAC,IAAI,EACb,cAAc,EACd,wCAAwC,EACxC,KAAK,EACL,qBAAqB,CACtB,CACF,CAAC;QACF,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,WAAW,GAAG,mBAAmB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEzD,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;QAC7B,OAAO,CAAC,IAAI,CACV,KAAK,CACH,QAAQ,CAAC,IAAI,EACb,cAAc,EACd,wCAAwC,EACxC,KAAK,EACL,qBAAqB,CACtB,CACF,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0EAA0E;AAE1E;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,KAAiB;IAEjB,MAAM,OAAO,GAAwB,EAAE,CAAC;IAExC,IAAI,KAAK,CAAC,wBAAwB,IAAI,cAAc,EAAE,CAAC;QACrD,OAAO,CAAC,IAAI,CACV,KAAK,CACH,QAAQ,CAAC,IAAI,EACb,aAAa,EACb,qDAAqD,EACrD,IAAI,EACJ,0BAA0B,CAC3B,CACF,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,uEAAuE;AAEvE;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAC/B,KAAiB;IAEjB,MAAM,OAAO,GAAwB,EAAE,CAAC;IAExC,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;QACxB,OAAO,CAAC,IAAI,CACV,KAAK,CACH,QAAQ,CAAC,IAAI,EACb,gBAAgB,EAChB,gCAAgC,KAAK,CAAC,aAAa,EAAE,EACrD,KAAK,EACL,qDAAqD,CACtD,CACF,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0EAA0E;AAE1E;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAAiB,EACjB,YAAoB,EACpB,cAAuB,EACvB,QAAmB;IAEnB,MAAM,OAAO,GAAwB,EAAE,CAAC;IACxC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAEvD,kBAAkB;IAClB,OAAO,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;IAExD,qDAAqD;IACrD,OAAO,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;IAE1C,uDAAuD;IACvD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,OAAO,CAAC;IAE/C,2BAA2B;IAC3B,OAAO,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC;IAEvD,8CAA8C;IAC9C,MAAM,YAAY,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAAC;IAElD,wBAAwB;IACxB,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACpD,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,GAAG,sBAAsB,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC;QAE9D,kEAAkE;QAClE,OAAO,CAAC,IAAI,CAAC,GAAG,sBAAsB,CAAC,aAAa,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,yBAAyB;IACzB,OAAO,CAAC,IAAI,CAAC,GAAG,uBAAuB,CAAC,YAAY,CAAC,CAAC,CAAC;IAEvD,8CAA8C;IAC9C,IAAI,cAAc,IAAI,QAAQ,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC;IACpE,CAAC;IAED,8CAA8C;IAC9C,IAAI,cAAc,IAAI,QAAQ,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC,CAAC;IAClE,CAAC;IAED,eAAe;IACf,OAAO,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC;IAE5C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0EAA0E;AAE1E,MAAM,UAAU,GAAG,YAAY,CAAC;AAChC,MAAM,YAAY,GAAG,CAAC,WAAW,CAAC,CAAC;AAEnC;;;GAGG;AACH,MAAM,UAAU,sBAAsB,CACpC,YAAoB,EACpB,IAAY,EACZ,OAA4B;IAE5B,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,IAAI,CAAC,CAAC;IACnG,IAAI,SAAS;QAAE,OAAO;IAEtB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAEpD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACvC,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACvB,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;AACH,CAAC;AAED,0EAA0E;AAE1E,SAAS,gBAAgB,CAAC,UAAkB;IAC1C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxC,MAAM,SAAS,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;IAE7D,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC;YACH,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,KAAK,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;YACtD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,wBAAwB;QAC1B,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"include-generator.d.ts","sourceRoot":"","sources":["../../src/lib/include-generator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAyB,MAAM,YAAY,CAAC;AASlE;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"include-generator.d.ts","sourceRoot":"","sources":["../../src/lib/include-generator.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAyB,MAAM,YAAY,CAAC;AASlE;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,GAAG,MAAM,CAiDzG;AAID;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,MAAM,CAMtE;AAID;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,QAAQ,EAClB,YAAY,EAAE,MAAM,EACpB,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAC/C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA2CzB;AAoBD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC7B,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,MAAM,GAChB,IAAI,CAoDN;AAID;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGzE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAErD"}
|