emdash-emit 0.1.8 → 0.1.10
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 +132 -28
- package/dist/bin/emit.d.ts.map +1 -1
- package/dist/bin/emit.js +6 -0
- package/dist/bin/emit.js.map +1 -1
- package/dist/cli/commands/conflicts.d.ts +4 -0
- package/dist/cli/commands/conflicts.d.ts.map +1 -0
- package/dist/cli/commands/conflicts.js +153 -0
- package/dist/cli/commands/conflicts.js.map +1 -0
- package/dist/cli/commands/delete.d.ts +4 -0
- package/dist/cli/commands/delete.d.ts.map +1 -0
- package/dist/cli/commands/delete.js +89 -0
- package/dist/cli/commands/delete.js.map +1 -0
- package/dist/cli/commands/doctor.d.ts +4 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -0
- package/dist/cli/commands/doctor.js +82 -0
- package/dist/cli/commands/doctor.js.map +1 -0
- package/dist/cli/commands/new.d.ts.map +1 -1
- package/dist/cli/commands/new.js +52 -22
- package/dist/cli/commands/new.js.map +1 -1
- package/dist/cli/commands/profile.d.ts.map +1 -1
- package/dist/cli/commands/profile.js +67 -13
- package/dist/cli/commands/profile.js.map +1 -1
- package/dist/cli/commands/pull.d.ts +5 -0
- package/dist/cli/commands/pull.d.ts.map +1 -1
- package/dist/cli/commands/pull.js +119 -39
- package/dist/cli/commands/pull.js.map +1 -1
- package/dist/cli/commands/push.d.ts.map +1 -1
- package/dist/cli/commands/push.js +38 -1
- package/dist/cli/commands/push.js.map +1 -1
- package/dist/cli/commands/status.d.ts +19 -0
- package/dist/cli/commands/status.d.ts.map +1 -1
- package/dist/cli/commands/status.js +87 -5
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/context.d.ts +38 -1
- package/dist/cli/context.d.ts.map +1 -1
- package/dist/cli/context.js +129 -16
- package/dist/cli/context.js.map +1 -1
- package/dist/client/auth.d.ts +1 -0
- package/dist/client/auth.d.ts.map +1 -1
- package/dist/client/auth.js +1 -0
- package/dist/client/auth.js.map +1 -1
- package/dist/client/http.d.ts.map +1 -1
- package/dist/client/http.js +27 -10
- package/dist/client/http.js.map +1 -1
- package/dist/db/cache.d.ts +3 -0
- package/dist/db/cache.d.ts.map +1 -1
- package/dist/db/cache.js +39 -0
- package/dist/db/cache.js.map +1 -1
- package/dist/mcp/context.d.ts +8 -0
- package/dist/mcp/context.d.ts.map +1 -1
- package/dist/mcp/server.d.ts +8 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +91 -15
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tool-errors.d.ts +16 -0
- package/dist/mcp/tool-errors.d.ts.map +1 -0
- package/dist/mcp/tool-errors.js +137 -0
- package/dist/mcp/tool-errors.js.map +1 -0
- package/dist/mcp/tools/profile.d.ts +9 -2
- package/dist/mcp/tools/profile.d.ts.map +1 -1
- package/dist/mcp/tools/profile.js +53 -36
- package/dist/mcp/tools/profile.js.map +1 -1
- package/dist/mcp/tools/sync-conflicts.d.ts +4 -0
- package/dist/mcp/tools/sync-conflicts.d.ts.map +1 -0
- package/dist/mcp/tools/sync-conflicts.js +100 -0
- package/dist/mcp/tools/sync-conflicts.js.map +1 -0
- package/dist/mcp/tools/sync-delete.d.ts +4 -0
- package/dist/mcp/tools/sync-delete.d.ts.map +1 -0
- package/dist/mcp/tools/sync-delete.js +77 -0
- package/dist/mcp/tools/sync-delete.js.map +1 -0
- package/dist/mcp/tools/sync-diff.d.ts.map +1 -1
- package/dist/mcp/tools/sync-diff.js +22 -8
- package/dist/mcp/tools/sync-diff.js.map +1 -1
- package/dist/mcp/tools/sync-doctor.d.ts +4 -0
- package/dist/mcp/tools/sync-doctor.d.ts.map +1 -0
- package/dist/mcp/tools/sync-doctor.js +57 -0
- package/dist/mcp/tools/sync-doctor.js.map +1 -0
- package/dist/mcp/tools/sync-new.d.ts.map +1 -1
- package/dist/mcp/tools/sync-new.js +49 -23
- package/dist/mcp/tools/sync-new.js.map +1 -1
- package/dist/mcp/tools/sync-pull.d.ts.map +1 -1
- package/dist/mcp/tools/sync-pull.js +132 -73
- package/dist/mcp/tools/sync-pull.js.map +1 -1
- package/dist/mcp/tools/sync-push.d.ts.map +1 -1
- package/dist/mcp/tools/sync-push.js +39 -33
- package/dist/mcp/tools/sync-push.js.map +1 -1
- package/dist/mcp/tools/sync-status.d.ts.map +1 -1
- package/dist/mcp/tools/sync-status.js +103 -11
- package/dist/mcp/tools/sync-status.js.map +1 -1
- package/dist/sync/conflicts.d.ts +89 -0
- package/dist/sync/conflicts.d.ts.map +1 -0
- package/dist/sync/conflicts.js +374 -0
- package/dist/sync/conflicts.js.map +1 -0
- package/dist/sync/delete.d.ts +58 -0
- package/dist/sync/delete.d.ts.map +1 -0
- package/dist/sync/delete.js +221 -0
- package/dist/sync/delete.js.map +1 -0
- package/dist/sync/diff.d.ts.map +1 -1
- package/dist/sync/diff.js +6 -3
- package/dist/sync/diff.js.map +1 -1
- package/dist/sync/doctor.d.ts +31 -0
- package/dist/sync/doctor.d.ts.map +1 -0
- package/dist/sync/doctor.js +224 -0
- package/dist/sync/doctor.js.map +1 -0
- package/dist/sync/media.d.ts +22 -0
- package/dist/sync/media.d.ts.map +1 -1
- package/dist/sync/media.js +342 -94
- package/dist/sync/media.js.map +1 -1
- package/dist/sync/new.d.ts +31 -0
- package/dist/sync/new.d.ts.map +1 -1
- package/dist/sync/new.js +139 -2
- package/dist/sync/new.js.map +1 -1
- package/dist/sync/orchestrator.d.ts +6 -0
- package/dist/sync/orchestrator.d.ts.map +1 -1
- package/dist/sync/orchestrator.js +54 -27
- package/dist/sync/orchestrator.js.map +1 -1
- package/dist/sync/preflight.d.ts.map +1 -1
- package/dist/sync/preflight.js +29 -3
- package/dist/sync/preflight.js.map +1 -1
- package/dist/sync/pull.d.ts +51 -0
- package/dist/sync/pull.d.ts.map +1 -1
- package/dist/sync/pull.js +289 -58
- package/dist/sync/pull.js.map +1 -1
- package/dist/sync/push.d.ts +12 -0
- package/dist/sync/push.d.ts.map +1 -1
- package/dist/sync/push.js +69 -24
- package/dist/sync/push.js.map +1 -1
- package/dist/sync/status.d.ts +21 -1
- package/dist/sync/status.d.ts.map +1 -1
- package/dist/sync/status.js +66 -6
- package/dist/sync/status.js.map +1 -1
- package/dist/sync/taxonomies.d.ts +14 -5
- package/dist/sync/taxonomies.d.ts.map +1 -1
- package/dist/sync/taxonomies.js +142 -9
- package/dist/sync/taxonomies.js.map +1 -1
- package/dist/utils/config.d.ts +23 -0
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +41 -4
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/frontmatter.d.ts +51 -2
- package/dist/utils/frontmatter.d.ts.map +1 -1
- package/dist/utils/frontmatter.js +234 -9
- package/dist/utils/frontmatter.js.map +1 -1
- package/dist/utils/profile.d.ts +3 -3
- package/dist/utils/profile.d.ts.map +1 -1
- package/dist/utils/profile.js +105 -8
- package/dist/utils/profile.js.map +1 -1
- package/package.json +1 -1
|
@@ -19,10 +19,21 @@
|
|
|
19
19
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
20
|
* SOFTWARE.
|
|
21
21
|
*/
|
|
22
|
-
import { pullArticle } from '../../sync/pull.js';
|
|
22
|
+
import { pullArticle, formatQuarantineNotice } from '../../sync/pull.js';
|
|
23
23
|
import { pullBatch, SyncPruneConflictError } from '../../sync/orchestrator.js';
|
|
24
24
|
import { pullTaxonomies, getLocalTaxonomiesSummary, formatTaxonomiesHint, } from '../../sync/taxonomies.js';
|
|
25
25
|
import { pullMedia } from '../../sync/media.js';
|
|
26
|
+
import { ApiError } from '../../client/error.js';
|
|
27
|
+
export function formatPullWindowLabel(status, limit) {
|
|
28
|
+
return status === 'all' ? `${limit}/status` : `${limit}`;
|
|
29
|
+
}
|
|
30
|
+
export function formatPullStatusBreakdown(status, items) {
|
|
31
|
+
if (status !== 'all')
|
|
32
|
+
return '';
|
|
33
|
+
const publishedCount = items.filter((i) => !i.deleted && i.status === 'published').length;
|
|
34
|
+
const draftCount = items.filter((i) => !i.deleted && i.status === 'draft').length;
|
|
35
|
+
return ` [${publishedCount} published, ${draftCount} draft]`;
|
|
36
|
+
}
|
|
26
37
|
export function registerPullCommands(program, resolveContext) {
|
|
27
38
|
// emit pull [id]
|
|
28
39
|
program
|
|
@@ -80,7 +91,8 @@ export function registerPullCommands(program, resolveContext) {
|
|
|
80
91
|
const concurrency = options.concurrency
|
|
81
92
|
? parseInt(options.concurrency, 10)
|
|
82
93
|
: ctx.config.concurrency || 8;
|
|
83
|
-
|
|
94
|
+
const windowLabel = formatPullWindowLabel(options.status, limit);
|
|
95
|
+
console.log(`Fetching articles from remote (${collection}, status: ${options.status}, window: ${windowLabel}, concurrency: ${concurrency})...`);
|
|
84
96
|
const batchResult = await pullBatch({
|
|
85
97
|
collection,
|
|
86
98
|
workspaceRoot: ctx.root,
|
|
@@ -97,6 +109,12 @@ export function registerPullCommands(program, resolveContext) {
|
|
|
97
109
|
if (item.deleted) {
|
|
98
110
|
console.log(` [${current}/${total}] 🗑️ Pruned ${item.slug} -> ${item.filePath}`);
|
|
99
111
|
}
|
|
112
|
+
else if (item.healed) {
|
|
113
|
+
console.log(` [${current}/${total}] 🛠️ Repaired frontmatter syntax for ${item.slug} (${item.filePath}, local body preserved)`);
|
|
114
|
+
}
|
|
115
|
+
else if (item.localEditsPreserved) {
|
|
116
|
+
console.log(`\n [${current}/${total}] 🛡️ Kept local edits for ${item.slug} (${item.filePath})`);
|
|
117
|
+
}
|
|
100
118
|
else if (!item.skipped) {
|
|
101
119
|
console.log(` [${current}/${total}] ✅ Pulled ${item.slug} -> ${item.filePath}`);
|
|
102
120
|
}
|
|
@@ -110,7 +128,17 @@ export function registerPullCommands(program, resolveContext) {
|
|
|
110
128
|
return;
|
|
111
129
|
}
|
|
112
130
|
const deletedMsg = batchResult.deleted ? `, ${batchResult.deleted} pruned` : '';
|
|
113
|
-
|
|
131
|
+
const statusBreakdown = formatPullStatusBreakdown(options.status, batchResult.items);
|
|
132
|
+
console.log(`\n🎉 Articles: ${batchResult.total} total${statusBreakdown} (${batchResult.updated} updated, ${batchResult.skipped} skipped/up-to-date${deletedMsg})`);
|
|
133
|
+
if (batchResult.preserved && batchResult.preserved > 0) {
|
|
134
|
+
console.log(`🛡️ ${batchResult.preserved} article(s) had unpushed local edits: Emit kept your local version (remote changes were NOT applied). ` +
|
|
135
|
+
`Push them with "emit push <filePath>", or re-run with --force to accept the remote version.`);
|
|
136
|
+
}
|
|
137
|
+
for (const item of batchResult.items) {
|
|
138
|
+
const notice = formatQuarantineNotice(item.quarantined);
|
|
139
|
+
if (notice)
|
|
140
|
+
console.log(`\n${notice}`);
|
|
141
|
+
}
|
|
114
142
|
// 3. Pull media (if --media)
|
|
115
143
|
if (includeMedia) {
|
|
116
144
|
const mediaLimit = ctx.config.mediaSyncLimit || 300;
|
|
@@ -140,12 +168,22 @@ export function registerPullCommands(program, resolveContext) {
|
|
|
140
168
|
if (res.deleted) {
|
|
141
169
|
console.log(`🗑️ Remote article was deleted. Pruned local file: ${res.filePath}`);
|
|
142
170
|
}
|
|
171
|
+
else if (res.healed) {
|
|
172
|
+
console.log(`🛠️ Repaired frontmatter syntax for ${res.slug} (${res.filePath}; unpushed local body was strictly preserved).`);
|
|
173
|
+
}
|
|
174
|
+
else if (res.localEditsPreserved) {
|
|
175
|
+
console.log(`🛡️ Kept your local edits for ${res.slug} (${res.filePath}); remote changes were NOT applied.`);
|
|
176
|
+
console.log(` Push them with "emit push ${res.filePath}", or re-run with --force to accept the remote version.`);
|
|
177
|
+
}
|
|
143
178
|
else if (res.skipped) {
|
|
144
179
|
console.log(`ℹ️ Article ${res.slug} is already up-to-date (${res.filePath})`);
|
|
145
180
|
}
|
|
146
181
|
else {
|
|
147
182
|
console.log(`✅ Pulled ${res.slug} -> ${res.filePath}`);
|
|
148
183
|
}
|
|
184
|
+
const quarantineNotice = formatQuarantineNotice(res.quarantined);
|
|
185
|
+
if (quarantineNotice)
|
|
186
|
+
console.log(`\n${quarantineNotice}`);
|
|
149
187
|
}
|
|
150
188
|
}
|
|
151
189
|
catch (error) {
|
|
@@ -153,6 +191,10 @@ export function registerPullCommands(program, resolveContext) {
|
|
|
153
191
|
console.error(`\n❌ ${error.message}`);
|
|
154
192
|
process.exit(1);
|
|
155
193
|
}
|
|
194
|
+
if (error instanceof ApiError) {
|
|
195
|
+
console.error(`\n${error.toActionableString()}`);
|
|
196
|
+
process.exit(1);
|
|
197
|
+
}
|
|
156
198
|
throw error;
|
|
157
199
|
}
|
|
158
200
|
});
|
|
@@ -163,36 +205,50 @@ export function registerPullCommands(program, resolveContext) {
|
|
|
163
205
|
.option('-p, --profile <name>', 'Explicitly use a specific connection profile')
|
|
164
206
|
.action(async (options) => {
|
|
165
207
|
const ctx = resolveContext(options.profile);
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
208
|
+
try {
|
|
209
|
+
console.log('Pulling categories and tags from remote...');
|
|
210
|
+
const res = await pullTaxonomies({
|
|
211
|
+
workspaceRoot: ctx.root,
|
|
212
|
+
origin: ctx.origin,
|
|
213
|
+
token: ctx.auth.token,
|
|
214
|
+
refreshToken: ctx.auth.refreshToken,
|
|
215
|
+
});
|
|
216
|
+
const prunedCatMsg = res.deletedCategoriesCount
|
|
217
|
+
? `, ${res.deletedCategoriesCount} categories pruned`
|
|
218
|
+
: '';
|
|
219
|
+
const prunedTagMsg = res.deletedTagsCount ? `, ${res.deletedTagsCount} tags pruned` : '';
|
|
220
|
+
if (res.categoriesFailed) {
|
|
221
|
+
console.warn('⚠️ Failed to fetch remote categories: preserved existing local definitions.');
|
|
222
|
+
}
|
|
223
|
+
if (res.tagsFailed) {
|
|
224
|
+
console.warn('⚠️ Failed to fetch remote tags: preserved existing local definitions.');
|
|
225
|
+
}
|
|
226
|
+
if (!res.categoriesFailed || !res.tagsFailed) {
|
|
227
|
+
console.log(`✅ Successfully synced taxonomies: ${res.categoriesCount} categories, ${res.tagsCount} tags${prunedCatMsg}${prunedTagMsg}.`);
|
|
228
|
+
}
|
|
229
|
+
const taxSummary = getLocalTaxonomiesSummary(ctx.root);
|
|
230
|
+
const taxHint = formatTaxonomiesHint(taxSummary, { maxTags: 60 });
|
|
231
|
+
if (taxHint) {
|
|
232
|
+
console.log(`\n${taxHint}`);
|
|
233
|
+
}
|
|
234
|
+
if (res.categoriesFailed && res.tagsFailed) {
|
|
235
|
+
process.exit(1);
|
|
236
|
+
}
|
|
185
237
|
}
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
238
|
+
catch (error) {
|
|
239
|
+
if (error instanceof ApiError) {
|
|
240
|
+
console.error(`\n${error.toActionableString()}`);
|
|
241
|
+
process.exit(1);
|
|
242
|
+
}
|
|
243
|
+
throw error;
|
|
190
244
|
}
|
|
191
245
|
});
|
|
192
246
|
// emit pull-media
|
|
193
247
|
program
|
|
194
248
|
.command('pull-media')
|
|
195
249
|
.description('Pull remote media files and metadata YAML into local media/ directory')
|
|
250
|
+
.option('-a, --article <id-or-path>', 'Target specific article ID (ULID) or Markdown file path to pull only referenced media')
|
|
251
|
+
.option('-c, --collection <collection>', 'Collection name when using --article (defaults to "posts")')
|
|
196
252
|
.option('-l, --limit <number>', 'Maximum media items to fetch (default: 300 or config)')
|
|
197
253
|
.option('--all', 'Fetch ALL media files from remote')
|
|
198
254
|
.option('--prune', 'Prune local media files that no longer exist on remote')
|
|
@@ -205,19 +261,43 @@ export function registerPullCommands(program, resolveContext) {
|
|
|
205
261
|
: options.limit
|
|
206
262
|
? parseInt(options.limit, 10)
|
|
207
263
|
: ctx.config.mediaSyncLimit || 300;
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
264
|
+
try {
|
|
265
|
+
if (options.article) {
|
|
266
|
+
console.log(`Pulling media referenced by article '${options.article}'...`);
|
|
267
|
+
const res = await pullMedia({
|
|
268
|
+
workspaceRoot: ctx.root,
|
|
269
|
+
origin: ctx.origin,
|
|
270
|
+
token: ctx.auth.token,
|
|
271
|
+
refreshToken: ctx.auth.refreshToken,
|
|
272
|
+
article: options.article,
|
|
273
|
+
collection: options.collection || ctx.config.defaultCollection,
|
|
274
|
+
downloadFiles: !options.metadataOnly,
|
|
275
|
+
});
|
|
276
|
+
const failedMsg = res.failed ? `, ${res.failed} failed` : '';
|
|
277
|
+
console.log(`✅ Media sync for article '${res.articleId || options.article}' complete: ${res.total} referenced item(s) (${res.downloaded} downloaded, ${res.skipped} skipped/up-to-date${failedMsg}).`);
|
|
278
|
+
return;
|
|
279
|
+
}
|
|
280
|
+
console.log(`Pulling media from remote (${options.all ? 'all' : `limit: ${limit}`})...`);
|
|
281
|
+
const res = await pullMedia({
|
|
282
|
+
workspaceRoot: ctx.root,
|
|
283
|
+
origin: ctx.origin,
|
|
284
|
+
token: ctx.auth.token,
|
|
285
|
+
refreshToken: ctx.auth.refreshToken,
|
|
286
|
+
limit,
|
|
287
|
+
all: options.all,
|
|
288
|
+
prune: options.prune,
|
|
289
|
+
downloadFiles: !options.metadataOnly,
|
|
290
|
+
});
|
|
291
|
+
const deletedMsg = res.deleted ? `, ${res.deleted} pruned` : '';
|
|
292
|
+
console.log(`✅ Media sync complete: ${res.total} total items (${res.downloaded} downloaded, ${res.skipped} skipped/up-to-date${deletedMsg}).`);
|
|
293
|
+
}
|
|
294
|
+
catch (error) {
|
|
295
|
+
if (error instanceof ApiError) {
|
|
296
|
+
console.error(`\n${error.toActionableString()}`);
|
|
297
|
+
process.exit(1);
|
|
298
|
+
}
|
|
299
|
+
throw error;
|
|
300
|
+
}
|
|
221
301
|
});
|
|
222
302
|
}
|
|
223
303
|
//# sourceMappingURL=pull.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pull.js","sourceRoot":"","sources":["../../../src/cli/commands/pull.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pull.js","sourceRoot":"","sources":["../../../src/cli/commands/pull.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/push.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIzC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAExD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,kBAAkB,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"push.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/push.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIzC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAExD,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,kBAAkB,GAAG,IAAI,CAqI9F"}
|
|
@@ -41,12 +41,32 @@ export function registerPushCommand(program, resolveContext) {
|
|
|
41
41
|
refreshToken: ctx.auth.refreshToken,
|
|
42
42
|
allowPublish: options.allowPublish,
|
|
43
43
|
});
|
|
44
|
+
if (pushResult.invalid > 0) {
|
|
45
|
+
console.warn(`⚠️ Skipped ${pushResult.invalid} file(s) with invalid YAML frontmatter (run "emit status" or "emit pull" to inspect/repair).`);
|
|
46
|
+
}
|
|
44
47
|
if (pushResult.total === 0) {
|
|
45
|
-
console.log('✨ All articles are already in sync. Nothing to push.');
|
|
48
|
+
console.log('✨ All valid articles are already in sync. Nothing to push.');
|
|
46
49
|
return;
|
|
47
50
|
}
|
|
48
51
|
for (const res of pushResult.results) {
|
|
49
52
|
console.log(`✅ Pushed ${res.id} (${res.filePath})`);
|
|
53
|
+
if (res.previousId) {
|
|
54
|
+
console.log(` 🆔 Server assigned ULID: ${res.previousId} -> ${res.id}`);
|
|
55
|
+
}
|
|
56
|
+
if (res.previousFilePath) {
|
|
57
|
+
console.log(` 📄 Renamed local file: ${res.previousFilePath} -> ${res.filePath}`);
|
|
58
|
+
}
|
|
59
|
+
if (res.resolvedTaxonomies) {
|
|
60
|
+
for (const [tax, items] of Object.entries(res.resolvedTaxonomies)) {
|
|
61
|
+
if (Array.isArray(items)) {
|
|
62
|
+
for (const item of items) {
|
|
63
|
+
if (item.input !== item.resolved) {
|
|
64
|
+
console.log(` 🏷️ Canonicalized ${tax}: '${item.input}' -> '${item.resolved}'`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
}
|
|
50
70
|
if (res.warnings && res.warnings.length > 0) {
|
|
51
71
|
console.warn(` ⚠️ Warnings (${res.warnings.length}):`);
|
|
52
72
|
for (const w of res.warnings) {
|
|
@@ -77,6 +97,23 @@ export function registerPushCommand(program, resolveContext) {
|
|
|
77
97
|
}
|
|
78
98
|
else {
|
|
79
99
|
console.log(`✅ Successfully pushed ${res.id} -> ${res.filePath} (rev: ${res.rev})`);
|
|
100
|
+
if (res.previousId) {
|
|
101
|
+
console.log(` 🆔 Server assigned ULID: ${res.previousId} -> ${res.id}`);
|
|
102
|
+
}
|
|
103
|
+
if (res.previousFilePath) {
|
|
104
|
+
console.log(` 📄 Renamed local file: ${res.previousFilePath} -> ${res.filePath}`);
|
|
105
|
+
}
|
|
106
|
+
if (res.resolvedTaxonomies) {
|
|
107
|
+
for (const [tax, items] of Object.entries(res.resolvedTaxonomies)) {
|
|
108
|
+
if (Array.isArray(items)) {
|
|
109
|
+
for (const item of items) {
|
|
110
|
+
if (item.input !== item.resolved) {
|
|
111
|
+
console.log(` 🏷️ Canonicalized ${tax}: '${item.input}' -> '${item.resolved}'`);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
80
117
|
if (res.warnings && res.warnings.length > 0) {
|
|
81
118
|
console.warn(`\n⚠️ Warnings (${res.warnings.length}):`);
|
|
82
119
|
for (const w of res.warnings) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"push.js","sourceRoot":"","sources":["../../../src/cli/commands/push.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAGjD,MAAM,UAAU,mBAAmB,CAAC,OAAgB,EAAE,cAAkC;IACtF,OAAO;SACJ,OAAO,CAAC,aAAa,CAAC;SACtB,WAAW,CACV,sFAAsF,CACvF;SACA,MAAM,CAAC,iBAAiB,EAAE,mCAAmC,CAAC;SAC9D,MAAM,CAAC,OAAO,EAAE,sCAAsC,CAAC;SACvD,MAAM,CAAC,sBAAsB,EAAE,8CAA8C,CAAC;SAC9E,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE;QAC9B,MAAM,GAAG,GAAG,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAE5C,IAAI,CAAC;YACH,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;gBAChB,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC;oBAC/B,aAAa,EAAE,GAAG,CAAC,IAAI;oBACvB,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,MAAM,EAAE,GAAG,CAAC,MAAM;oBAClB,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK;oBACrB,YAAY,EAAE,GAAG,CAAC,IAAI,CAAC,YAAY;oBACnC,YAAY,EAAE,OAAO,CAAC,YAAY;iBACnC,CAAC,CAAC;gBAEH,IAAI,UAAU,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;oBAC3B,OAAO,CAAC,GAAG,CAAC,
|
|
1
|
+
{"version":3,"file":"push.js","sourceRoot":"","sources":["../../../src/cli/commands/push.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,23 @@
|
|
|
1
1
|
import type { Command } from 'commander';
|
|
2
2
|
import type { CliContextResolver } from '../context.js';
|
|
3
|
+
import type { ResolveProfileResult } from '../../utils/profile.js';
|
|
4
|
+
export interface InitPlanResult {
|
|
5
|
+
effectiveOrigin?: string;
|
|
6
|
+
shouldLinkProfile: boolean;
|
|
7
|
+
/** Actionable warning when a higher-precedence origin source silently overrides a lower one. */
|
|
8
|
+
warning: string | null;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Determines the effective origin for `emit init` and whether the resolved profile
|
|
12
|
+
* should be automatically linked to the workspace (3-guard check: link enabled,
|
|
13
|
+
* profile workspace unset, and profile origin matches effective origin).
|
|
14
|
+
*
|
|
15
|
+
* Origin precedence mirrors runtime resolution (`resolveOriginPriority`):
|
|
16
|
+
* explicit `--origin` > `EMDASH_ORIGIN` > auto-resolved profile.
|
|
17
|
+
*/
|
|
18
|
+
export declare function resolveInitPlan(options: {
|
|
19
|
+
origin?: string;
|
|
20
|
+
link?: boolean;
|
|
21
|
+
}, resolvedProfile: ResolveProfileResult | null, envOrigin?: string): InitPlanResult;
|
|
3
22
|
export declare function registerStatusInitCommands(program: Command, resolveContext: CliContextResolver): void;
|
|
4
23
|
//# sourceMappingURL=status.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAExD,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,kBAAkB,GACjC,IAAI,
|
|
1
|
+
{"version":3,"file":"status.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGzC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAExD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAEnE,MAAM,WAAW,cAAc;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,gGAAgG;IAChG,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,EAC5C,eAAe,EAAE,oBAAoB,GAAG,IAAI,EAC5C,SAAS,CAAC,EAAE,MAAM,GACjB,cAAc,CAiBhB;AAED,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,OAAO,EAChB,cAAc,EAAE,kBAAkB,GACjC,IAAI,CAkMN"}
|
|
@@ -19,21 +19,60 @@
|
|
|
19
19
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
20
20
|
* SOFTWARE.
|
|
21
21
|
*/
|
|
22
|
-
import { getWorkspaceStatus } from '../../sync/status.js';
|
|
22
|
+
import { getWorkspaceStatus, filterStatusItems } from '../../sync/status.js';
|
|
23
23
|
import { inspectArticleDiff } from '../../sync/diff.js';
|
|
24
|
+
import { sameOrigin } from '../context.js';
|
|
25
|
+
/**
|
|
26
|
+
* Determines the effective origin for `emit init` and whether the resolved profile
|
|
27
|
+
* should be automatically linked to the workspace (3-guard check: link enabled,
|
|
28
|
+
* profile workspace unset, and profile origin matches effective origin).
|
|
29
|
+
*
|
|
30
|
+
* Origin precedence mirrors runtime resolution (`resolveOriginPriority`):
|
|
31
|
+
* explicit `--origin` > `EMDASH_ORIGIN` > auto-resolved profile.
|
|
32
|
+
*/
|
|
33
|
+
export function resolveInitPlan(options, resolvedProfile, envOrigin) {
|
|
34
|
+
const effectiveOrigin = options.origin || envOrigin || resolvedProfile?.config.origin;
|
|
35
|
+
const shouldLinkProfile = Boolean(options.link !== false &&
|
|
36
|
+
resolvedProfile &&
|
|
37
|
+
!resolvedProfile.config.workspace &&
|
|
38
|
+
sameOrigin(resolvedProfile.config.origin, effectiveOrigin || ''));
|
|
39
|
+
let warning = null;
|
|
40
|
+
if (envOrigin && resolvedProfile && !sameOrigin(envOrigin, resolvedProfile.config.origin)) {
|
|
41
|
+
warning = options.origin
|
|
42
|
+
? null
|
|
43
|
+
: `⚠️ Warning: EMDASH_ORIGIN (${envOrigin}) overrides resolved profile "${resolvedProfile.name}" origin (${resolvedProfile.config.origin}). The workspace was initialized for EMDASH_ORIGIN and was not linked to that profile.`;
|
|
44
|
+
}
|
|
45
|
+
return { effectiveOrigin, shouldLinkProfile, warning };
|
|
46
|
+
}
|
|
24
47
|
export function registerStatusInitCommands(program, resolveContext) {
|
|
25
48
|
// emit status
|
|
26
49
|
program
|
|
27
50
|
.command('status')
|
|
28
51
|
.description('Show sync status of articles in local workspace')
|
|
29
52
|
.option('-c, --collection <collection>', 'Collection to check (default: posts)')
|
|
53
|
+
.option('-s, --search <term>', 'Filter articles by search term (title, slug, ID, filePath)')
|
|
54
|
+
.option('--slug <slug>', 'Filter articles by slug')
|
|
55
|
+
.option('--status <status>', 'Filter by publication status (draft or published)')
|
|
56
|
+
.option('--sync-status <status>', 'Filter by sync state (synced, modified, untracked, invalid)')
|
|
30
57
|
.option('-p, --profile <name>', 'Explicitly use a specific connection profile')
|
|
31
58
|
.action((options) => {
|
|
32
59
|
const ctx = resolveContext(options.profile);
|
|
33
60
|
const collection = options.collection || ctx.config.defaultCollection;
|
|
34
61
|
const status = getWorkspaceStatus(ctx.root, ctx.cache, collection);
|
|
62
|
+
const isFiltered = Boolean(options.search || options.slug || options.status || options.syncStatus);
|
|
63
|
+
const displayItems = isFiltered
|
|
64
|
+
? filterStatusItems(status.items, {
|
|
65
|
+
search: options.search,
|
|
66
|
+
slugFilter: options.slug,
|
|
67
|
+
status: options.status,
|
|
68
|
+
syncStatus: options.syncStatus,
|
|
69
|
+
})
|
|
70
|
+
: status.items;
|
|
35
71
|
console.log(`\n--- Workspace Status (${collection} | origin: ${ctx.origin}) ---`);
|
|
36
|
-
|
|
72
|
+
if (isFiltered) {
|
|
73
|
+
console.log(` (Filtered: showing ${displayItems.length} of ${status.items.length} articles)\n`);
|
|
74
|
+
}
|
|
75
|
+
for (const item of displayItems) {
|
|
37
76
|
let icon = '🟢';
|
|
38
77
|
let label = 'synced ';
|
|
39
78
|
if (item.syncStatus === 'modified') {
|
|
@@ -44,11 +83,34 @@ export function registerStatusInitCommands(program, resolveContext) {
|
|
|
44
83
|
icon = '⚪';
|
|
45
84
|
label = 'untracked';
|
|
46
85
|
}
|
|
86
|
+
else if (item.syncStatus === 'invalid') {
|
|
87
|
+
icon = '🔴';
|
|
88
|
+
label = 'invalid ';
|
|
89
|
+
}
|
|
47
90
|
const titleDisplay = item.title ? ` (${item.title})` : '';
|
|
91
|
+
const cacheTag = item.syncStatus === 'invalid' && item.cached === false ? ' [uncached]' : '';
|
|
92
|
+
const errorDisplay = item.error ? ` — ${item.error}` : '';
|
|
48
93
|
const paddedStatus = (item.status || '').padEnd(9, ' ');
|
|
49
|
-
console.log(` ${icon} [${label}] ${paddedStatus} ${item.filePath}${titleDisplay}`);
|
|
94
|
+
console.log(` ${icon} [${label}] ${paddedStatus} ${item.filePath}${titleDisplay}${cacheTag}${errorDisplay}`);
|
|
95
|
+
}
|
|
96
|
+
const invalidSuffix = status.summary.invalid > 0 ? `, ${status.summary.invalid} invalid` : '';
|
|
97
|
+
console.log(`\nSummary: ${status.summary.total} total (${status.summary.synced} synced, ${status.summary.modified} modified, ${status.summary.untracked} untracked${invalidSuffix})\n`);
|
|
98
|
+
if (status.summary.invalid > 0) {
|
|
99
|
+
const uncachedInvalid = status.items.filter((i) => i.syncStatus === 'invalid' && i.cached === false);
|
|
100
|
+
if (uncachedInvalid.length > 0) {
|
|
101
|
+
const exampleId = uncachedInvalid.find((i) => i.id && i.id !== 'unknown')?.id || '<ULID>';
|
|
102
|
+
console.log(`💡 Hint: Run "emit pull" to automatically repair cached invalid frontmatter (local body is strictly preserved). For ${uncachedInvalid.length} uncached file(s) outside the sync window, run "emit pull ${exampleId}".\n`);
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
console.log('💡 Hint: Run "emit pull" to automatically re-serialize and repair frontmatter syntax (local body is strictly preserved).\n');
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
if (status.summary.conflicts > 0) {
|
|
109
|
+
console.log(`🩹 ${status.summary.conflicts} preserved local copy(ies) in ${collection}/conflicts/ ` +
|
|
110
|
+
`(rescue copies created when a pull found divergent content).`);
|
|
111
|
+
console.log(' Review each copy, merge any valuable content into the canonical article, then delete it. ' +
|
|
112
|
+
'They are never pushed or pruned; pushing one directly is refused (QUARANTINED_COPY_NOT_PUSHABLE).\n');
|
|
50
113
|
}
|
|
51
|
-
console.log(`\nSummary: ${status.summary.total} total (${status.summary.synced} synced, ${status.summary.modified} modified, ${status.summary.untracked} untracked)\n`);
|
|
52
114
|
});
|
|
53
115
|
// emit diff [filePath]
|
|
54
116
|
program
|
|
@@ -109,15 +171,35 @@ export function registerStatusInitCommands(program, resolveContext) {
|
|
|
109
171
|
.command('init')
|
|
110
172
|
.description('Initialize current directory as an Emit local workspace')
|
|
111
173
|
.option('--origin <url>', 'EmDash instance origin URL')
|
|
174
|
+
.option('--no-link', 'Do not automatically link this workspace directory to the resolved profile')
|
|
112
175
|
.action(async (options) => {
|
|
113
176
|
const root = process.cwd();
|
|
114
177
|
const { initWorkspace } = await import('../../utils/config.js');
|
|
115
178
|
const { getWorkspacePaths } = await import('../../utils/workspace.js');
|
|
116
|
-
|
|
179
|
+
const { resolveTargetProfile, setProfile } = await import('../../utils/profile.js');
|
|
180
|
+
let resolvedProfile = null;
|
|
181
|
+
try {
|
|
182
|
+
resolvedProfile = resolveTargetProfile({ cwd: root });
|
|
183
|
+
}
|
|
184
|
+
catch {
|
|
185
|
+
// Ignore AmbiguousProfileError during init; user can pass --origin explicitly
|
|
186
|
+
}
|
|
187
|
+
const { effectiveOrigin, shouldLinkProfile, warning } = resolveInitPlan(options, resolvedProfile, process.env.EMDASH_ORIGIN);
|
|
188
|
+
if (warning) {
|
|
189
|
+
console.warn(warning);
|
|
190
|
+
}
|
|
191
|
+
initWorkspace(root, effectiveOrigin ? { origin: effectiveOrigin } : undefined);
|
|
117
192
|
const paths = getWorkspacePaths(root);
|
|
118
193
|
console.log(`✅ Initialized Emit workspace at: ${root}`);
|
|
119
194
|
console.log(` Config: ${paths.configPath}`);
|
|
120
195
|
console.log(` Database: ${paths.dbPath}`);
|
|
196
|
+
if (shouldLinkProfile && resolvedProfile) {
|
|
197
|
+
setProfile(resolvedProfile.name, {
|
|
198
|
+
...resolvedProfile.config,
|
|
199
|
+
workspace: root,
|
|
200
|
+
});
|
|
201
|
+
console.log(`🔗 Linked profile "${resolvedProfile.name}" -> workspace ${root}`);
|
|
202
|
+
}
|
|
121
203
|
});
|
|
122
204
|
}
|
|
123
205
|
//# sourceMappingURL=status.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/cli/commands/status.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/context.d.ts
CHANGED
|
@@ -10,6 +10,43 @@ export interface CliContext {
|
|
|
10
10
|
auth: ResolvedAuth;
|
|
11
11
|
origin: string;
|
|
12
12
|
}
|
|
13
|
-
export type CliContextResolver = (profileName?: string
|
|
13
|
+
export type CliContextResolver = (profileName?: string, options?: {
|
|
14
|
+
optionalAuth?: boolean;
|
|
15
|
+
}) => CliContext;
|
|
16
|
+
/** Compares origins ignoring surrounding whitespace and trailing slashes. */
|
|
17
|
+
export declare const normalizeOrigin: (value: string) => string;
|
|
18
|
+
export declare const sameOrigin: (a: string, b: string) => boolean;
|
|
19
|
+
export interface OriginSources {
|
|
20
|
+
/** Explicitly selected profile name (`--profile` / MCP `profile` parameter), if any. */
|
|
21
|
+
explicitProfileName?: string;
|
|
22
|
+
/** Origin of the explicitly selected profile. */
|
|
23
|
+
explicitProfileOrigin?: string;
|
|
24
|
+
/** `EMDASH_ORIGIN` override, kept separate from the workspace config value. */
|
|
25
|
+
envOrigin?: string;
|
|
26
|
+
/** Origin written in `.emit/config.json` (already filtered to undefined when DEFAULT_ORIGIN). */
|
|
27
|
+
configuredOrigin?: string;
|
|
28
|
+
/** Origin of the automatically resolved profile (cwd match / unique origin match / single). */
|
|
29
|
+
autoProfileOrigin?: string;
|
|
30
|
+
autoProfileName?: string;
|
|
31
|
+
/** Origin carried by the resolved auth (env token, emdash-cli auth.json, emit credentials). */
|
|
32
|
+
authOrigin?: string;
|
|
33
|
+
}
|
|
34
|
+
export interface OriginResolution {
|
|
35
|
+
origin: string;
|
|
36
|
+
warning: string | null;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Resolves the effective origin and returns an actionable warning whenever a higher-precedence
|
|
40
|
+
* source silently overrides a lower one.
|
|
41
|
+
*
|
|
42
|
+
* Precedence (most explicit first):
|
|
43
|
+
* explicit --profile > EMDASH_ORIGIN > auto-resolved profile > resolved auth origin
|
|
44
|
+
* > .emit/config.json > DEFAULT_ORIGIN
|
|
45
|
+
*
|
|
46
|
+
* `EMDASH_ORIGIN` outranks an *implicitly* resolved profile so CI/staging overrides actually take
|
|
47
|
+
* effect, while an *explicitly* selected profile outranks the ambient env var because it is a
|
|
48
|
+
* deliberate in-band instruction. Every conflict is surfaced instead of swallowed.
|
|
49
|
+
*/
|
|
50
|
+
export declare function resolveOriginPriority(sources: OriginSources): OriginResolution;
|
|
14
51
|
export declare function createCliContextResolver(): CliContextResolver;
|
|
15
52
|
//# sourceMappingURL=context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/cli/context.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/cli/context.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAe,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAIL,KAAK,cAAc,EACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAA4C,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAO/F,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,cAAc,CAAC;IACtB,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,kBAAkB,GAAG,CAC/B,WAAW,CAAC,EAAE,MAAM,EACpB,OAAO,CAAC,EAAE;IAAE,YAAY,CAAC,EAAE,OAAO,CAAA;CAAE,KACjC,UAAU,CAAC;AAEhB,6EAA6E;AAC7E,eAAO,MAAM,eAAe,UAAW,MAAM,KAAG,MAA0C,CAAC;AAC3F,eAAO,MAAM,UAAU,MAAO,MAAM,KAAK,MAAM,KAAG,OACP,CAAC;AAE5C,MAAM,WAAW,aAAa;IAC5B,wFAAwF;IACxF,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iDAAiD;IACjD,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,+EAA+E;IAC/E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iGAAiG;IACjG,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,+FAA+F;IAC/F,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,+FAA+F;IAC/F,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,aAAa,GAAG,gBAAgB,CAmE9E;AAED,wBAAgB,wBAAwB,IAAI,kBAAkB,CAiG7D"}
|