@grove-dev/core 0.13.0 → 0.15.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.
Files changed (42) hide show
  1. package/dist/awesome-readme.d.ts +8 -0
  2. package/dist/awesome-readme.d.ts.map +1 -1
  3. package/dist/awesome-readme.js +28 -0
  4. package/dist/awesome-readme.js.map +1 -1
  5. package/dist/build-data.d.ts.map +1 -1
  6. package/dist/build-data.js +12 -145
  7. package/dist/build-data.js.map +1 -1
  8. package/dist/decisions.d.ts +4 -4
  9. package/dist/decisions.d.ts.map +1 -1
  10. package/dist/decisions.js +15 -31
  11. package/dist/decisions.js.map +1 -1
  12. package/dist/github-cache.d.ts +44 -1
  13. package/dist/github-cache.d.ts.map +1 -1
  14. package/dist/github-cache.js +94 -2
  15. package/dist/github-cache.js.map +1 -1
  16. package/dist/health-thresholds.d.ts +39 -0
  17. package/dist/health-thresholds.d.ts.map +1 -0
  18. package/dist/health-thresholds.js +68 -0
  19. package/dist/health-thresholds.js.map +1 -0
  20. package/dist/health.d.ts.map +1 -1
  21. package/dist/health.js +18 -34
  22. package/dist/health.js.map +1 -1
  23. package/dist/index.d.ts +8 -4
  24. package/dist/index.d.ts.map +1 -1
  25. package/dist/index.js +10 -3
  26. package/dist/index.js.map +1 -1
  27. package/dist/normalize-records.d.ts +131 -0
  28. package/dist/normalize-records.d.ts.map +1 -0
  29. package/dist/normalize-records.js +199 -0
  30. package/dist/normalize-records.js.map +1 -0
  31. package/dist/repository-health.d.ts.map +1 -1
  32. package/dist/repository-health.js +9 -18
  33. package/dist/repository-health.js.map +1 -1
  34. package/dist/schema.d.ts +60 -46
  35. package/dist/schema.d.ts.map +1 -1
  36. package/dist/schema.js +34 -5
  37. package/dist/schema.js.map +1 -1
  38. package/dist/validate.d.ts +17 -15
  39. package/dist/validate.d.ts.map +1 -1
  40. package/dist/validate.js +70 -123
  41. package/dist/validate.js.map +1 -1
  42. package/package.json +1 -1
@@ -13,12 +13,13 @@ export interface ValidationResult {
13
13
  issues: ValidationIssue[];
14
14
  }
15
15
  /**
16
- * Validate a Grove project: read every record YAML under
17
- * `config.paths.recordsDir`, run full Zod parsing, and surface any
18
- * schema, slug, link, health, or decision reference issues.
16
+ * Validate a Grove project: read every record through the shared
17
+ * normalizer (`loadNormalizedRecords`) and surface any schema, slug,
18
+ * link, health, or decision reference issues.
19
19
  *
20
- * Each record is run through the same Zod schema the build pipeline
21
- * uses (see `recordsFileSchema`). Validation catches both schema
20
+ * Records are the exact ones the build publishes, so a record that
21
+ * passes here renders the same way on the site, in the README and in
22
+ * `grove cleanup`. Validation catches both schema
22
23
  * problems (missing fields, wrong types) and reference problems
23
24
  * (duplicate slugs, missing health entries, dangling decision ids).
24
25
  */
@@ -26,18 +27,19 @@ export declare function validateProject(config: GroveConfig, opts?: {
26
27
  strict?: boolean;
27
28
  }): Promise<ValidationResult>;
28
29
  /**
29
- * Load and normalize every record YAML under `config.paths.recordsDir`.
30
+ * Load every record through the shared normalizer and return the fully
31
+ * merged records (GitHub cache, overrides, health.yml and decisions
32
+ * applied) — the same records `generate()` publishes.
30
33
  *
31
- * @param config Grove config (provides `paths.recordsDir` and `blueprint`)
32
- * @param opts.onError 'skip' (default) silently drops schema failures;
33
- * 'throw' raises on the first failure with the file slug and the
34
- * Zod issue path in the error message.
35
- * @param opts.cwd Working directory to resolve `paths.recordsDir`
36
- * against. Defaults to `process.cwd()`.
34
+ * @param config Grove config (provides `paths` and `blueprint`)
35
+ * @param opts.onError 'skip' (default) drops records that fail the
36
+ * schema; 'throw' raises on the first failure with the file slug and
37
+ * the Zod issue path in the error message.
38
+ * @param opts.cwd Working directory to resolve `paths` against.
39
+ * Defaults to `process.cwd()`.
37
40
  *
38
- * For callers that want the strict-by-default behaviour, see
39
- * `loadRecordsOrThrow`. `validateProject` is the recommended
40
- * surface for surfacing failures with full error reporting.
41
+ * `validateProject` is the recommended surface for reporting failures;
42
+ * `loadNormalizedRecords` returns the records with their provenance.
41
43
  */
42
44
  export declare function loadRecords(config: GroveConfig, opts?: {
43
45
  onError?: 'skip' | 'throw';
@@ -1 +1 @@
1
- {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"AAUA,OAAO,EAGL,KAAK,WAAW,EAGhB,KAAK,QAAQ,EAKd,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,SAAS,CAAC;AAErD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,kBAAkB,CAAC;CAC9B;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,kEAAkE;IAClE,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAoID;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GAC9B,OAAO,CAAC,gBAAgB,CAAC,CAqe3B;AAiBD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAO,GACtD,OAAO,CAAC,QAAQ,EAAE,CAAC,CAiCrB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAO,GAC1B,OAAO,CAAC,QAAQ,EAAE,CAAC,CAErB"}
1
+ {"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"AAUA,OAAO,EAEL,KAAK,WAAW,EAGhB,KAAK,QAAQ,EAId,MAAM,aAAa,CAAC;AAErB,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,SAAS,CAAC;AAErD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,kBAAkB,CAAC;CAC9B;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,eAAe,EAAE,CAAC;IAC1B,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,kEAAkE;IAClE,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAoID;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAA;CAAO,GAC9B,OAAO,CAAC,gBAAgB,CAAC,CAyc3B;AAiBD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAO,GACtD,OAAO,CAAC,QAAQ,EAAE,CAAC,CAQrB;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,WAAW,EACnB,IAAI,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAA;CAAO,GAC1B,OAAO,CAAC,QAAQ,EAAE,CAAC,CAErB"}
package/dist/validate.js CHANGED
@@ -1,14 +1,14 @@
1
1
  import { access, readdir, readFile } from 'node:fs/promises';
2
2
  import { basename, join, relative, resolve } from 'node:path';
3
3
  import { parse as parseYaml } from 'yaml';
4
- import { ZodError } from 'zod';
5
4
  import { toCollectionEntries } from './collection-entries.js';
6
5
  import { CollectionFileError, parseCollectionFile } from './collections-io.js';
7
6
  import { runCollection } from './collector.js';
8
7
  import { readContentFile } from './content-body.js';
9
- import { loadGithubCache, resolveRecordGithub } from './github-cache.js';
8
+ import { githubSyncFreshnessOptions } from './github-cache.js';
10
9
  import { readYamlFile } from './io.js';
11
- import { blueprintKind, decisionsFileSchema, healthFileSchema, recordsFileSchema, subjectSchema, unwrapDecisions, unwrapHealth, } from './schema.js';
10
+ import { loadNormalizedRecords } from './normalize-records.js';
11
+ import { decisionsFileSchema, healthFileSchema, subjectSchema, unwrapDecisions, unwrapHealth, } from './schema.js';
12
12
  /** Related records a subject needs before a missing hub is worth a warning. */
13
13
  const SUBJECT_HUB_MIN_RECORDS = 3;
14
14
  /**
@@ -122,12 +122,13 @@ async function taxonomyIds(path) {
122
122
  }
123
123
  }
124
124
  /**
125
- * Validate a Grove project: read every record YAML under
126
- * `config.paths.recordsDir`, run full Zod parsing, and surface any
127
- * schema, slug, link, health, or decision reference issues.
125
+ * Validate a Grove project: read every record through the shared
126
+ * normalizer (`loadNormalizedRecords`) and surface any schema, slug,
127
+ * link, health, or decision reference issues.
128
128
  *
129
- * Each record is run through the same Zod schema the build pipeline
130
- * uses (see `recordsFileSchema`). Validation catches both schema
129
+ * Records are the exact ones the build publishes, so a record that
130
+ * passes here renders the same way on the site, in the README and in
131
+ * `grove cleanup`. Validation catches both schema
131
132
  * problems (missing fields, wrong types) and reference problems
132
133
  * (duplicate slugs, missing health entries, dangling decision ids).
133
134
  */
@@ -150,12 +151,11 @@ export async function validateProject(config, opts = {}) {
150
151
  });
151
152
  return finalize(errors, warnings);
152
153
  }
153
- const expectedKind = blueprintKind[config.blueprint];
154
- const entries = await readdir(recordsDir).catch(() => []);
155
- const files = entries.filter((f) => f.endsWith('.yml')).sort();
156
- // The sync bot's layer. Records resolve `github` / `health` through
157
- // it exactly as the build does (cache > inline > health.yml).
158
- const githubCache = await loadGithubCache(config);
154
+ // Records come from the shared normalizer: the same records, with the
155
+ // same cache / overrides / health.yml / decisions merge, that the
156
+ // build publishes. The checks below only add reporting on top.
157
+ const normalized = await loadNormalizedRecords(config, process.cwd());
158
+ const githubCache = normalized.githubCache;
159
159
  const cachePath = relative(process.cwd(), githubCache.dir) || '.';
160
160
  for (const { file, message } of githubCache.errors) {
161
161
  errors.push({
@@ -164,6 +164,9 @@ export async function validateProject(config, opts = {}) {
164
164
  severity: 'error',
165
165
  });
166
166
  }
167
+ const freshness = githubSyncFreshnessOptions(config);
168
+ /** Slugs whose cached health resolves as `unknown` because the sync is stale. */
169
+ const syncStale = [];
167
170
  const slugs = new Set();
168
171
  /** Slugs that have a github link and therefore need a health entry. */
169
172
  const slugsNeedingHealth = new Set();
@@ -237,36 +240,12 @@ export async function validateProject(config, opts = {}) {
237
240
  severity: 'warning',
238
241
  });
239
242
  };
240
- for (const file of files) {
241
- const fileSlug = basename(file, '.yml');
242
- const text = await readFile(join(recordsDir, file), 'utf8');
243
- // `schema: 'core'` disables custom-tag interpretation; a malicious
244
- // record with `!!binary` / `!!js/function` would otherwise be parsed
245
- // into a host object by the YAML package's default schema.
246
- // Implementation-checklist.md #27.
247
- const raw = parseYaml(text, { schema: 'core' });
248
- if (raw === null || typeof raw !== 'object' || Array.isArray(raw)) {
249
- errors.push({
250
- code: 'schema_error',
251
- message: `${fileSlug}: record file is empty or not a YAML mapping`,
252
- severity: 'error',
253
- });
254
- slugs.add(fileSlug);
255
- continue;
256
- }
257
- // Cache wins over a legacy inline copy — but a disagreement between
258
- // the two is a second source of truth, so say which fields differ.
259
- const resolved = resolveRecordGithub(raw, githubCache.entries.get(fileSlug));
260
- if (resolved.conflicts.length > 0) {
261
- warnings.push({
262
- code: 'github_cache_mismatch',
263
- message: `${fileSlug}: inline github/health disagrees with ${cachePath}/${fileSlug}.json — ${resolved.conflicts.join(', ')}. The cache wins; run \`grove migrate github-cache\` to drop the inline copy.`,
264
- severity: 'warning',
265
- });
266
- }
267
- const obj = resolved.record;
268
- // Slug uniqueness — even if a record later fails Zod parse, we
269
- // still need to flag a duplicate filename as an error.
243
+ for (const entry of normalized.entries) {
244
+ const fileSlug = entry.slug;
245
+ if (entry.syncStale)
246
+ syncStale.push(fileSlug);
247
+ // Slug uniqueness — even if a record fails to parse, a duplicate
248
+ // slug is still an error.
270
249
  if (slugs.has(fileSlug)) {
271
250
  errors.push({
272
251
  code: 'duplicate_slug',
@@ -275,38 +254,22 @@ export async function validateProject(config, opts = {}) {
275
254
  });
276
255
  }
277
256
  slugs.add(fileSlug);
278
- // Full Zod parse — this is the source of truth for "is this a
279
- // valid record". Each issue becomes a `zod_error` validation
280
- // issue with the issue path baked into the message. If the
281
- // parse throws something that isn't a ZodError (e.g. file
282
- // doesn't exist anymore), surface it as a generic schema error.
283
- if (!obj.kind)
284
- obj.kind = expectedKind;
285
- let parsed;
286
- try {
287
- parsed = recordsFileSchema.parse(obj);
257
+ // Parse and schema failures (`schema_error`, `zod_error`, one per
258
+ // Zod issue) and cache disagreements (`github_cache_mismatch`).
259
+ for (const issue of entry.issues) {
260
+ (issue.severity === 'error' ? errors : warnings).push({
261
+ code: issue.code,
262
+ message: issue.message,
263
+ severity: issue.severity,
264
+ });
288
265
  }
289
- catch (err) {
290
- if (err instanceof ZodError) {
291
- for (const issue of err.issues) {
292
- const where = issue.path.length > 0 ? issue.path.join('.') : '(root)';
293
- errors.push({
294
- code: 'zod_error',
295
- message: `${fileSlug}: ${where} ${issue.message}`,
296
- severity: 'error',
297
- });
298
- }
299
- }
300
- else {
301
- errors.push({
302
- code: 'schema_error',
303
- message: `${fileSlug}: ${err.message}`,
304
- severity: 'error',
305
- });
306
- }
266
+ if (!entry.record)
307
267
  continue;
308
- }
309
- parsedRecords.push({ ...parsed, slug: fileSlug });
268
+ // `base` is the record before health.yml and decisions: the health
269
+ // checks below compare exactly that against health.yml. Collections
270
+ // see the fully merged record, as the build renders it.
271
+ const parsed = entry.record.base;
272
+ parsedRecords.push(entry.record.record);
310
273
  for (const relation of parsed.relations) {
311
274
  if (!subjectIds.has(relation.to)) {
312
275
  errors.push({
@@ -320,13 +283,12 @@ export async function validateProject(config, opts = {}) {
320
283
  related.add(fileSlug);
321
284
  relatedRecords.set(relation.to, related);
322
285
  }
323
- // Override the filename-derived slug with the record's own slug
324
- // before downstream checks (links/health) consume it. Filename
325
- // and record.slug must agree; mismatch is itself a warning.
326
- if (parsed.slug !== fileSlug) {
286
+ // The file name is the slug; a different `slug` in the file is
287
+ // ignored, and worth a warning.
288
+ if (entry.record.declaredSlug !== fileSlug) {
327
289
  warnings.push({
328
290
  code: 'slug_mismatch',
329
- message: `${fileSlug}: record slug "${parsed.slug}" does not match filename`,
291
+ message: `${fileSlug}: record slug "${String(entry.record.declaredSlug)}" does not match filename`,
330
292
  severity: 'warning',
331
293
  });
332
294
  }
@@ -387,7 +349,7 @@ export async function validateProject(config, opts = {}) {
387
349
  if (parsed.kind === 'project' && parsed.health) {
388
350
  const github = parsed.github;
389
351
  inlineHealth.set(fileSlug, {
390
- source: resolved.health === 'cache' ? 'cache' : 'inline',
352
+ source: entry.record.provenance.health === 'cache' ? 'cache' : 'inline',
391
353
  status: parsed.health.status,
392
354
  tier: parsed.health.tier,
393
355
  visibility: parsed.health.visibility,
@@ -399,6 +361,17 @@ export async function validateProject(config, opts = {}) {
399
361
  });
400
362
  }
401
363
  }
364
+ // One warning for the whole run: a broken sync goes stale for every
365
+ // record at once, and per-record lines would bury everything else.
366
+ if (syncStale.length > 0) {
367
+ const shown = syncStale.slice(0, 5).join(', ');
368
+ const more = syncStale.length > 5 ? ` and ${syncStale.length - 5} more` : '';
369
+ warnings.push({
370
+ code: 'github_sync_stale',
371
+ message: `${syncStale.length} record(s) have a stale GitHub sync (a failure newer than lastSuccessAt, or no success within ${freshness.maxAgeDays} days); their health resolves as status "unknown": ${shown}${more}. Run \`grove sync github\`.`,
372
+ severity: 'warning',
373
+ });
374
+ }
402
375
  for (const slug of githubCache.entries.keys()) {
403
376
  if (slugs.has(slug))
404
377
  continue;
@@ -610,55 +583,29 @@ function finalize(errors, warnings, strict = false) {
610
583
  };
611
584
  }
612
585
  /**
613
- * Load and normalize every record YAML under `config.paths.recordsDir`.
586
+ * Load every record through the shared normalizer and return the fully
587
+ * merged records (GitHub cache, overrides, health.yml and decisions
588
+ * applied) — the same records `generate()` publishes.
614
589
  *
615
- * @param config Grove config (provides `paths.recordsDir` and `blueprint`)
616
- * @param opts.onError 'skip' (default) silently drops schema failures;
617
- * 'throw' raises on the first failure with the file slug and the
618
- * Zod issue path in the error message.
619
- * @param opts.cwd Working directory to resolve `paths.recordsDir`
620
- * against. Defaults to `process.cwd()`.
590
+ * @param config Grove config (provides `paths` and `blueprint`)
591
+ * @param opts.onError 'skip' (default) drops records that fail the
592
+ * schema; 'throw' raises on the first failure with the file slug and
593
+ * the Zod issue path in the error message.
594
+ * @param opts.cwd Working directory to resolve `paths` against.
595
+ * Defaults to `process.cwd()`.
621
596
  *
622
- * For callers that want the strict-by-default behaviour, see
623
- * `loadRecordsOrThrow`. `validateProject` is the recommended
624
- * surface for surfacing failures with full error reporting.
597
+ * `validateProject` is the recommended surface for reporting failures;
598
+ * `loadNormalizedRecords` returns the records with their provenance.
625
599
  */
626
600
  export async function loadRecords(config, opts = {}) {
627
601
  const onError = opts.onError ?? 'skip';
628
- const cwd = opts.cwd ?? process.cwd();
629
- const recordsDir = resolve(cwd, config.paths.recordsDir);
630
- const entries = await readdir(recordsDir).catch(() => []);
631
- const files = entries.filter((f) => f.endsWith('.yml')).sort();
632
- const expectedKind = blueprintKind[config.blueprint];
633
- const githubCache = await loadGithubCache(config, cwd);
634
- const out = [];
635
- for (const file of files) {
636
- const fileSlug = basename(file, '.yml');
637
- const text = await readFile(join(recordsDir, file), 'utf8');
638
- // `schema: 'core'` disables custom-tag interpretation. Same
639
- // rationale as the `readRecords` block above.
640
- const raw = parseYaml(text, { schema: 'core' });
641
- if (!raw || typeof raw !== 'object') {
642
- if (onError === 'throw') {
643
- throw new Error(`${fileSlug}: record file is empty or not a YAML mapping`);
644
- }
645
- continue;
646
- }
647
- const record = resolveRecordGithub(raw, githubCache.entries.get(fileSlug)).record;
648
- if (!record.kind)
649
- record.kind = expectedKind;
650
- try {
651
- const parsed = recordsFileSchema.parse(record);
652
- parsed.slug = fileSlug;
653
- out.push(parsed);
654
- }
655
- catch (err) {
656
- if (onError === 'throw')
657
- throw err;
658
- // skip — validation should have caught this
659
- }
602
+ const normalized = await loadNormalizedRecords(config, opts.cwd ?? process.cwd());
603
+ if (onError === 'throw') {
604
+ const first = normalized.issues.find((issue) => issue.severity === 'error');
605
+ if (first)
606
+ throw new Error(first.message);
660
607
  }
661
- return out;
608
+ return normalized.records.map((entry) => entry.record);
662
609
  }
663
610
  /**
664
611
  * Strict variant of `loadRecords` — throws on the first schema failure
@@ -1 +1 @@
1
- {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validate.js","sourceRoot":"","sources":["../src/validate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,MAAM,CAAC;AAC1C,OAAO,EAA+B,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EACL,mBAAmB,EAGnB,gBAAgB,EAEhB,aAAa,EACb,eAAe,EACf,YAAY,GACb,MAAM,aAAa,CAAC;AAkBrB,+EAA+E;AAC/E,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAElC;;;;;;;;;;;;;;GAcG;AACH,SAAS,QAAQ,CAAC,IAAY;IAC5B,OAAO,IAAI;SACR,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC;SACrC,KAAK,CAAC,OAAO,CAAC;SACd,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,OAAO,KAAK,EAAE;YAAE,OAAO,KAAK,CAAC;QACjC,IAAI,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAC;QAClD,IAAI,wCAAwC,CAAC,IAAI,CAAC,OAAO,CAAC;YAAE,OAAO,KAAK,CAAC;QACzE,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;AACP,CAAC;AAED,KAAK,UAAU,MAAM,CAAC,IAAY;IAChC,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAWD,MAAM,oBAAoB,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,CAAU,CAAC;AAEvF,SAAS,WAAW,CAAC,CAAgB,EAAE,CAAgB;IACrD,yEAAyE;IACzE,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC1C,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzB,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzB,OAAO,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC;AACpE,CAAC;AAED;;;;GAIG;AACH,SAAS,kBAAkB,CACzB,UAAkB,EAClB,OAAsB,EACtB,MAAuC,EACvC,WAAwB;IAExB,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAChE,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,6BAA6B;gBACnC,OAAO,EAAE,GAAG,IAAI,SAAS,MAAM,CAAC,MAAM,2BAA2B,UAAU,EAAE;gBAC7E,QAAQ,EAAE,SAAS;aACpB,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,MAAM,UAAU,GAAuC;YACrD,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM;YAC3B,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI;YACvB,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU;YACnC,YAAY,EAAE,KAAK,CAAC,MAAM,EAAE,QAAQ,IAAI,IAAI;SAC7C,CAAC;QACF,MAAM,SAAS,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CACtD,KAAK,KAAK,cAAc;YACtB,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,CAAC,YAAY,CAAC;YAC5D,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,UAAU,CAAC,KAAK,CAAC,CACxC,CAAC;QACF,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACrC,MAAM,MAAM,GAAG,SAAS;aACrB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,MAAM,QAAQ,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC;aAC7F,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,wBAAwB;YAC9B,OAAO,EAAE,GAAG,IAAI,KAAK,MAAM,CAAC,MAAM,0BAA0B,UAAU,MAAM,MAAM,EAAE;YACpF,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC;IACD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;YAAE,SAAS;QACxC,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,0BAA0B;YAChC,OAAO,EAAE,GAAG,UAAU,YAAY,KAAK,CAAC,EAAE,0BAA0B;YACpE,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,IAAY;IACrC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACxE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,GAAG,EAAE,CAAC;QAC1C,OAAO,IAAI,GAAG,CACZ,GAAG;aACA,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACb,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAE,KAA0B,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAChF;aACA,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,OAAO,EAAE,KAAK,QAAQ,CAAC,CACxD,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,GAAG,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAAmB,EACnB,OAA6B,EAAE;IAE/B,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAsB,EAAE,CAAC;IACvC,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IAEnE,IAAI,MAAM,CAAC,MAAM,EAAE,eAAe,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACpE,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,sCAAsC;YAC5C,OAAO,EACL,2GAA2G;YAC7G,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,qBAAqB;YAC3B,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,iBAAiB;YACpD,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACpC,CAAC;IAED,sEAAsE;IACtE,kEAAkE;IAClE,+DAA+D;IAC/D,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACtE,MAAM,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;IAC3C,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;IAClE,KAAK,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,sBAAsB;YAC5B,OAAO,EAAE,GAAG,SAAS,IAAI,IAAI,KAAK,OAAO,EAAE;YAC3C,QAAQ,EAAE,OAAO;SAClB,CAAC,CAAC;IACL,CAAC;IACD,MAAM,SAAS,GAAG,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACrD,iFAAiF;IACjF,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,uEAAuE;IACvE,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC7C,gGAAgG;IAChG,MAAM,YAAY,GAAG,IAAI,GAAG,EAA8B,CAAC;IAC3D,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,IAAI,eAAe,CAAC;IAChE,MAAM,QAAQ,GAAG;QACf,UAAU,EAAE,MAAM,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,gBAAgB,CAAC,CAAC;QACpF,MAAM,EAAE,MAAM,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;QAC5E,SAAS,EAAE,MAAM,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;KACnF,CAAC;IACF,sEAAsE;IACtE,oEAAoE;IACpE,mEAAmE;IACnE,oEAAoE;IACpE,MAAM,YAAY,GAAG,GAAG,WAAW,eAAe,CAAC;IACnD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IACrC,IAAI,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC;QACvD,IAAI,WAAoB,CAAC;QACzB,IAAI,CAAC;YACH,WAAW,GAAG,SAAS,CAAC,MAAM,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,EAAE;gBACpF,MAAM,EAAE,MAAM;aACf,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE,GAAG,YAAY,KAAM,GAAa,CAAC,OAAO,EAAE;gBACrD,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,CAAC;QACD,IAAI,WAAW,KAAK,SAAS,IAAI,WAAW,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YACrF,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE,GAAG,YAAY,oCAAoC;gBAC5D,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YACtF,MAAM,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YACpD,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;gBAC3B,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;oBAC/C,MAAM,CAAC,IAAI,CAAC;wBACV,IAAI,EAAE,iBAAiB;wBACvB,OAAO,EAAE,GAAG,YAAY,IAAI,KAAK,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,IAAI,KAAK,CAAC,OAAO,EAAE;wBAC1F,QAAQ,EAAE,OAAO;qBAClB,CAAC,CAAC;gBACL,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC1C,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,mBAAmB;oBACzB,OAAO,EAAE,GAAG,YAAY,cAAc,aAAa,CAAC,IAAI,CAAC,EAAE,oBAAoB;oBAC/E,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;YACL,CAAC;YACD,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IACD,uDAAuD;IACvD,MAAM,cAAc,GAAG,IAAI,GAAG,EAAuB,CAAC;IAEtD,6EAA6E;IAC7E,MAAM,aAAa,GAAe,EAAE,CAAC;IAErC,MAAM,mBAAmB,GAAG,CAC1B,QAAgB,EAChB,KAAa,EACb,KAAa,EACb,GAAgB,EAChB,QAAgB,EAChB,EAAE;QACF,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,OAAO;QAC7C,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,wBAAwB;YAC9B,OAAO,EAAE,GAAG,QAAQ,KAAK,KAAK,KAAK,KAAK,uBAAuB,WAAW,IAAI,QAAQ,EAAE;YACxF,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC;QAC5B,IAAI,KAAK,CAAC,SAAS;YAAE,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC9C,iEAAiE;QACjE,0BAA0B;QAC1B,IAAI,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE,0BAA0B,QAAQ,EAAE;gBAC7C,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACpB,kEAAkE;QAClE,gEAAgE;QAChE,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjC,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC;gBACpD,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,SAAS;QAC5B,mEAAmE;QACnE,oEAAoE;QACpE,wDAAwD;QACxD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC;QACjC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACxC,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;YACxC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;gBACjC,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,iBAAiB;oBACvB,OAAO,EAAE,GAAG,QAAQ,kBAAkB,QAAQ,CAAC,EAAE,uBAAuB,YAAY,EAAE;oBACtF,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;YACD,MAAM,OAAO,GAAG,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,IAAI,GAAG,EAAU,CAAC;YACrE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACtB,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAC3C,CAAC;QACD,+DAA+D;QAC/D,gCAAgC;QAChC,IAAI,KAAK,CAAC,MAAM,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;YAC3C,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,GAAG,QAAQ,kBAAkB,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,2BAA2B;gBAClG,QAAQ,EAAE,SAAS;aACpB,CAAC,CAAC;QACL,CAAC;QACD,kEAAkE;QAClE,kEAAkE;QAClE,mEAAmE;QACnE,yCAAyC;QACzC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,GAAG,QAAQ,kFAAkF;gBACtG,QAAQ,EAAE,SAAS;aACpB,CAAC,CAAC;QACL,CAAC;QACD,kEAAkE;QAClE,+DAA+D;QAC/D,6DAA6D;QAC7D,mEAAmE;QACnE,yCAAyC;QACzC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC7C,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,yBAAyB;oBAC/B,OAAO,EAAE,GAAG,QAAQ,cAAc,MAAM,CAAC,OAAO,8BAA8B;oBAC9E,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChC,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,uBAAuB;oBAC7B,OAAO,EAAE,GAAG,QAAQ,cAAc,MAAM,CAAC,OAAO,oDAAoD;oBACpG,QAAQ,EAAE,SAAS;iBACpB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,mBAAmB,CACjB,QAAQ,EACR,UAAU,EACV,MAAM,CAAC,QAAQ,EACf,QAAQ,CAAC,UAAU,EACnB,gBAAgB,CACjB,CAAC;QACF,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC9B,8DAA8D;YAC9D,2DAA2D;YAC3D,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACjB,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;YACtF,CAAC;YACD,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;gBACxC,mBAAmB,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,EAAE,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC;QACD,kEAAkE;QAClE,+DAA+D;QAC/D,iEAAiE;QACjE,qBAAqB;QACrB,MAAM,OAAO,GAAI,MAA+B,CAAC,OAAO,CAAC;QACzD,MAAM,WAAW,GAAI,MAAM,CAAC,KAAyC,EAAE,MAAM,CAAC;QAC9E,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC5E,IAAI,CAAC,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YACjD,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAC/C,MAAM,MAAM,GAAG,MAAM,CAAC,MAET,CAAC;YACd,YAAY,CAAC,GAAG,CAAC,QAAQ,EAAE;gBACzB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ;gBACvE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM;gBAC5B,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;gBACxB,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU;gBACpC,8DAA8D;gBAC9D,YAAY,EACT,MAA2C,CAAC,YAAY;oBACzD,MAAM,EAAE,QAAQ;oBAChB,MAAM,EAAE,UAAU,EAAE,SAAS;oBAC7B,IAAI;aACP,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,oEAAoE;IACpE,mEAAmE;IACnE,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,SAAS,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7E,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,mBAAmB;YACzB,OAAO,EAAE,GAAG,SAAS,CAAC,MAAM,iGAAiG,SAAS,CAAC,UAAU,sDAAsD,KAAK,GAAG,IAAI,8BAA8B;YACjP,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9C,IAAI,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,SAAS;QAC9B,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,qBAAqB;YAC3B,OAAO,EAAE,GAAG,SAAS,IAAI,IAAI,8BAA8B;YAC3D,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;QAC9D,IAAI,MAAM,GAAoC,EAAE,CAAC;QACjD,IAAI,YAAY,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,GAAG,YAAY,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YACvF,YAAY,GAAG,IAAI,CAAC;QACtB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,KAAM,GAAa,CAAC,OAAO,EAAE;gBAC5D,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,CAAC;QACD,2EAA2E;QAC3E,qEAAqE;QACrE,oEAAoE;QACpE,IAAI,YAAY;YACd,QAAQ,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC;QACzF,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3D,KAAK,MAAM,IAAI,IAAI,kBAAkB,EAAE,CAAC;YACtC,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,SAAS;YAClC,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,gBAAgB;gBACtB,OAAO,EAAE,GAAG,IAAI,wCAAwC;gBACxD,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,IAAI,kBAAkB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACvC,gEAAgE;QAChE,6DAA6D;QAC7D,4DAA4D;QAC5D,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,qBAAqB;YAC3B,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,mBAAmB,kBAAkB,CAAC,IAAI,iCAAiC;YAC1G,QAAQ,EAAE,SAAS;SACpB,CAAC,CAAC;IACL,CAAC;IAED,IAAI,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QACjE,IAAI,SAAS,GAAuC,EAAE,CAAC;QACvD,IAAI,CAAC;YACH,SAAS,GAAG,eAAe,CACzB,mBAAmB,CAAC,KAAK,CAAC,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CACtE,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,wBAAwB;gBAC9B,OAAO,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,SAAS,KAAM,GAAa,CAAC,OAAO,EAAE;gBAC/D,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,CAAC;QACD,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;gBAC5B,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,yBAAyB;oBAC/B,OAAO,EAAE,uCAAuC,QAAQ,CAAC,EAAE,EAAE;oBAC7D,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,qEAAqE;IACrE,kEAAkE;IAClE,oCAAoC;IACpC,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,kBAAkB,CAAC,CAAC;IAClE,MAAM,eAAe,GAAG,CAAC,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAc,CAAC,CAAC;SAChF,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;SACjC,IAAI,EAAE,CAAC;IACV,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;IAClD,MAAM,iBAAiB,GAAG,mBAAmB,CAAC,aAAyC,EAAE;QACvF,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,IAAI,UAAU;KAClD,CAAC,CAAC;IACH,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACvE,wDAAwD;IACxD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,eAAe,EAAE,CAAC;QACnC,MAAM,KAAK,GAAG,eAAe,IAAI,EAAE,CAAC;QACpC,IAAI,UAAkD,CAAC;QACvD,IAAI,CAAC;YACH,UAAU,GAAG,mBAAmB,CAAC,IAAI,EAAE,MAAM,QAAQ,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QAC7F,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,QAAQ,GAAG,GAAG,YAAY,mBAAmB,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC;YAC9F,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;gBAC/B,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,oBAAoB;oBAC1B,OAAO,EAAE,GAAG,KAAK,KAAK,OAAO,EAAE;oBAC/B,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;YACL,CAAC;YACD,SAAS;QACX,CAAC;QACD,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACvD,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,2BAA2B;gBACjC,OAAO,EAAE,GAAG,KAAK,WAAW,UAAU,CAAC,IAAI,oCAAoC,SAAS,EAAE;gBAC1F,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3C,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;YAC/C,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,0BAA0B;gBAChC,OAAO,EAAE,GAAG,KAAK,WAAW,UAAU,CAAC,IAAI,gCAAgC;gBAC3E,QAAQ,EAAE,SAAS;aACpB,CAAC,CAAC;QACL,CAAC;QACD,MAAM,UAAU,GAAG;YACjB,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACnD,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,QAAQ,IAAI,EAAE,CAAC;SAChD,CAAC;QACF,KAAK,MAAM,EAAE,IAAI,IAAI,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACxB,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,4BAA4B;oBAClC,OAAO,EAAE,GAAG,KAAK,cAAc,EAAE,uBAAuB,YAAY,EAAE;oBACtE,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAC9C,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,uBAAuB;oBAC7B,OAAO,EAAE,GAAG,KAAK,cAAc,UAAU,CAAC,OAAO,oCAAoC,QAAQ,EAAE;oBAC/F,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;QACD,KAAK,MAAM,EAAE,IAAI,UAAU,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC;YACnD,mBAAmB,CAAC,KAAK,EAAE,kBAAkB,EAAE,EAAE,EAAE,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;QAC5F,CAAC;QACD,KAAK,MAAM,EAAE,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;YAC/C,mBAAmB,CAAC,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;QAChF,CAAC;QACD,KAAK,MAAM,EAAE,IAAI,UAAU,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;YAClD,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,EAAE,EAAE,EAAE,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QACzF,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,0BAA0B;oBAChC,OAAO,EAAE,GAAG,KAAK,oBAAoB,IAAI,CAAC,IAAI,0BAA0B;oBACxE,QAAQ,EAAE,OAAO;iBAClB,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpC,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,yBAAyB;oBAC/B,OAAO,EAAE,GAAG,KAAK,oBAAoB,IAAI,CAAC,IAAI,mDAAmD;oBACjG,QAAQ,EAAE,SAAS;iBACpB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,IAAI,UAAU,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;YACtF,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,yBAAyB;gBAC/B,OAAO,EAAE,GAAG,KAAK,cAAc,UAAU,CAAC,OAAO,kBAAkB;gBACnE,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAC;QACL,CAAC;QACD,IAAI,aAAa,CAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC,OAAO,EAAE,CAAC;YACzD,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,kBAAkB;gBACxB,OAAO,EAAE,GAAG,KAAK,6CAA6C;gBAC9D,QAAQ,EAAE,SAAS;aACpB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,iEAAiE;IACjE,oEAAoE;IACpE,oCAAoC;IACpC,KAAK,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,cAAc,EAAE,CAAC;QAChD,IAAI,OAAO,CAAC,IAAI,IAAI,uBAAuB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YAClE,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,4BAA4B;gBAClC,OAAO,EAAE,YAAY,OAAO,SAAS,OAAO,CAAC,IAAI,0DAA0D,OAAO,IAAI;gBACtH,QAAQ,EAAE,SAAS;aACpB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,QAAQ,CACf,MAAyB,EACzB,QAA2B,EAC3B,MAAM,GAAG,KAAK;IAEd,iDAAiD;IACjD,MAAM,EAAE,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC;IACrE,OAAO;QACL,EAAE;QACF,MAAM;QACN,QAAQ;QACR,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,QAAQ,CAAC;KACjC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAmB,EACnB,OAAqD,EAAE;IAEvD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC;IACvC,MAAM,UAAU,GAAG,MAAM,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAClF,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;QAC5E,IAAI,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AACzD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAChC,MAAmB,EACnB,OAAyB,EAAE;IAE3B,OAAO,WAAW,CAAC,MAAM,EAAE,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;AAC5D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@grove-dev/core",
3
- "version": "0.13.0",
3
+ "version": "0.15.0",
4
4
  "type": "module",
5
5
  "description": "Headless engine for Grove: resource schema, config, importers, validators, taxonomy, sitemap, llms.txt, and the data build pipeline.",
6
6
  "license": "MIT",