podlite 0.0.57 → 0.0.59

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 (72) hide show
  1. package/CHANGELOG.podlite +14 -0
  2. package/esm/cli.js +31 -5
  3. package/esm/cli.js.map +1 -1
  4. package/esm/index.js +10 -2
  5. package/esm/index.js.map +1 -1
  6. package/esm/lint/formatters/json.d.ts +9 -0
  7. package/esm/lint/formatters/json.js +5 -0
  8. package/esm/lint/formatters/json.js.map +1 -0
  9. package/esm/lint/formatters/text.d.ts +9 -0
  10. package/esm/lint/formatters/text.js +41 -0
  11. package/esm/lint/formatters/text.js.map +1 -0
  12. package/esm/lint/grammar/lint.d.ts +14 -0
  13. package/esm/lint/grammar/lint.js +910 -0
  14. package/esm/lint/grammar/lint.js.map +1 -0
  15. package/esm/lint/grammar/scan.d.ts +9 -0
  16. package/esm/lint/grammar/scan.js +36 -0
  17. package/esm/lint/grammar/scan.js.map +1 -0
  18. package/esm/lint/index.d.ts +7 -1
  19. package/esm/lint/index.js +45 -10
  20. package/esm/lint/index.js.map +1 -1
  21. package/esm/lint/loader.d.ts +5 -0
  22. package/esm/lint/loader.js +19 -0
  23. package/esm/lint/loader.js.map +1 -0
  24. package/esm/lint/rules/heading-hierarchy.d.ts +3 -0
  25. package/esm/lint/rules/heading-hierarchy.js +27 -0
  26. package/esm/lint/rules/heading-hierarchy.js.map +1 -0
  27. package/esm/lint/rules/id-unique.d.ts +10 -0
  28. package/esm/lint/rules/id-unique.js +41 -0
  29. package/esm/lint/rules/id-unique.js.map +1 -0
  30. package/esm/lint/rules/index.d.ts +2 -0
  31. package/esm/lint/rules/index.js +4 -0
  32. package/esm/lint/rules/index.js.map +1 -0
  33. package/esm/lint/rules/syntax-valid.d.ts +4 -0
  34. package/esm/lint/rules/syntax-valid.js +30 -0
  35. package/esm/lint/rules/syntax-valid.js.map +1 -0
  36. package/esm/lint/types.d.ts +4 -0
  37. package/lib/cli.js +31 -5
  38. package/lib/cli.js.map +1 -1
  39. package/lib/index.js +10 -2
  40. package/lib/index.js.map +1 -1
  41. package/lib/lint/formatters/json.d.ts +9 -0
  42. package/lib/lint/formatters/json.js +9 -0
  43. package/lib/lint/formatters/json.js.map +1 -0
  44. package/lib/lint/formatters/text.d.ts +9 -0
  45. package/lib/lint/formatters/text.js +45 -0
  46. package/lib/lint/formatters/text.js.map +1 -0
  47. package/lib/lint/grammar/lint.d.ts +14 -0
  48. package/lib/lint/grammar/lint.js +910 -0
  49. package/lib/lint/grammar/lint.js.map +1 -0
  50. package/lib/lint/grammar/scan.d.ts +9 -0
  51. package/lib/lint/grammar/scan.js +40 -0
  52. package/lib/lint/grammar/scan.js.map +1 -0
  53. package/lib/lint/index.d.ts +7 -1
  54. package/lib/lint/index.js +45 -10
  55. package/lib/lint/index.js.map +1 -1
  56. package/lib/lint/loader.d.ts +5 -0
  57. package/lib/lint/loader.js +44 -0
  58. package/lib/lint/loader.js.map +1 -0
  59. package/lib/lint/rules/heading-hierarchy.d.ts +3 -0
  60. package/lib/lint/rules/heading-hierarchy.js +30 -0
  61. package/lib/lint/rules/heading-hierarchy.js.map +1 -0
  62. package/lib/lint/rules/id-unique.d.ts +10 -0
  63. package/lib/lint/rules/id-unique.js +45 -0
  64. package/lib/lint/rules/id-unique.js.map +1 -0
  65. package/lib/lint/rules/index.d.ts +2 -0
  66. package/lib/lint/rules/index.js +7 -0
  67. package/lib/lint/rules/index.js.map +1 -0
  68. package/lib/lint/rules/syntax-valid.d.ts +4 -0
  69. package/lib/lint/rules/syntax-valid.js +34 -0
  70. package/lib/lint/rules/syntax-valid.js.map +1 -0
  71. package/lib/lint/types.d.ts +4 -0
  72. package/package.json +11 -8
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lint.js","sourceRoot":"","sources":["../../../src/lint/grammar/lint.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { Violation, SourceRule } from '../types';
2
+ export declare const ATTR_NESTED_ANGLE_RULE_ID = "attr-nested-angle";
3
+ export declare const DELIMITED_BLOCK_BALANCE_RULE_ID = "delimited-block-balance";
4
+ export declare const ATTR_CONTINUATION_DROPPED_RULE_ID = "attr-continuation-dropped";
5
+ export declare const attrNestedAngleRule: SourceRule;
6
+ export declare const delimitedBlockBalanceRule: SourceRule;
7
+ export declare const attrContinuationDroppedRule: SourceRule;
8
+ export declare const SOURCE_RULES: SourceRule[];
9
+ export declare function scanSourceRules(content: string): Violation[];
@@ -0,0 +1,36 @@
1
+ const lintGrammar = require('./lint.js');
2
+ export const ATTR_NESTED_ANGLE_RULE_ID = 'attr-nested-angle';
3
+ export const DELIMITED_BLOCK_BALANCE_RULE_ID = 'delimited-block-balance';
4
+ export const ATTR_CONTINUATION_DROPPED_RULE_ID = 'attr-continuation-dropped';
5
+ export const attrNestedAngleRule = {
6
+ id: ATTR_NESTED_ANGLE_RULE_ID,
7
+ severity: 'error',
8
+ };
9
+ export const delimitedBlockBalanceRule = {
10
+ id: DELIMITED_BLOCK_BALANCE_RULE_ID,
11
+ severity: 'error',
12
+ };
13
+ export const attrContinuationDroppedRule = {
14
+ id: ATTR_CONTINUATION_DROPPED_RULE_ID,
15
+ severity: 'warning',
16
+ };
17
+ export const SOURCE_RULES = [attrNestedAngleRule, delimitedBlockBalanceRule, attrContinuationDroppedRule];
18
+ export function scanSourceRules(content) {
19
+ const opts = { diagnostics: [], _blockStack: [], _inDirective: false };
20
+ try {
21
+ lintGrammar.parse(content, opts);
22
+ }
23
+ catch {
24
+ // Grammar has a `.` fallback for any character — should not fail; swallow defensively.
25
+ }
26
+ for (const item of opts._blockStack) {
27
+ opts.diagnostics.push({
28
+ rule: DELIMITED_BLOCK_BALANCE_RULE_ID,
29
+ severity: 'error',
30
+ message: `=begin ${item.name} is not closed before end of file`,
31
+ location: item.location,
32
+ });
33
+ }
34
+ return opts.diagnostics;
35
+ }
36
+ //# sourceMappingURL=scan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan.js","sourceRoot":"","sources":["../../../src/lint/grammar/scan.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;AAExC,MAAM,CAAC,MAAM,yBAAyB,GAAG,mBAAmB,CAAA;AAC5D,MAAM,CAAC,MAAM,+BAA+B,GAAG,yBAAyB,CAAA;AACxE,MAAM,CAAC,MAAM,iCAAiC,GAAG,2BAA2B,CAAA;AAE5E,MAAM,CAAC,MAAM,mBAAmB,GAAe;IAC7C,EAAE,EAAE,yBAAyB;IAC7B,QAAQ,EAAE,OAAO;CAClB,CAAA;AAED,MAAM,CAAC,MAAM,yBAAyB,GAAe;IACnD,EAAE,EAAE,+BAA+B;IACnC,QAAQ,EAAE,OAAO;CAClB,CAAA;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAe;IACrD,EAAE,EAAE,iCAAiC;IACrC,QAAQ,EAAE,SAAS;CACpB,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAiB,CAAC,mBAAmB,EAAE,yBAAyB,EAAE,2BAA2B,CAAC,CAAA;AASvH,MAAM,UAAU,eAAe,CAAC,OAAe;IAC7C,MAAM,IAAI,GAAmB,EAAE,WAAW,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAA;IACtF,IAAI;QACF,WAAW,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;KACjC;IAAC,MAAM;QACN,uFAAuF;KACxF;IACD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE;QACnC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;YACpB,IAAI,EAAE,+BAA+B;YACrC,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,UAAU,IAAI,CAAC,IAAI,mCAAmC;YAC/D,QAAQ,EAAE,IAAI,CAAC,QAAQ;SACxB,CAAC,CAAA;KACH;IACD,OAAO,IAAI,CAAC,WAAW,CAAA;AACzB,CAAC"}
@@ -1 +1,7 @@
1
- export declare function runLint(files: string[]): number;
1
+ export declare type LintFormat = 'text' | 'json';
2
+ export declare type LintOptions = {
3
+ strict: boolean;
4
+ format: LintFormat;
5
+ configPath?: string;
6
+ };
7
+ export declare function runLint(files: string[], options: LintOptions): number;
package/esm/lint/index.js CHANGED
@@ -1,13 +1,48 @@
1
- /* =begin pod
2
- =head2 C<runLint>
3
-
4
- Stub entry point for the C<podlite lint> subcommand. Returns the exit code
5
- the CLI should propagate. Until rules land (Track 7 phase 2), it logs a
6
- placeholder and exits cleanly.
7
-
8
- =end pod */
9
- export function runLint(files) {
10
- console.log(`lint: stub — received ${files.length} file(s); rules not yet implemented`);
1
+ import { makeSyntaxViolation } from './rules/syntax-valid';
2
+ import { DEFAULT_RULES } from './rules';
3
+ import { runRules } from './engine';
4
+ import { detectFileType, readFile, parseContent } from './loader';
5
+ import { formatText } from './formatters/text';
6
+ import { formatJson } from './formatters/json';
7
+ import { scanSourceRules } from './grammar/scan';
8
+ function lintFile(filePath) {
9
+ const violations = [];
10
+ let content;
11
+ try {
12
+ content = readFile(filePath);
13
+ }
14
+ catch (e) {
15
+ violations.push({
16
+ rule: 'io',
17
+ severity: 'error',
18
+ message: `Cannot read file: ${e.message}`,
19
+ });
20
+ return violations;
21
+ }
22
+ violations.push(...scanSourceRules(content));
23
+ const fileType = detectFileType(filePath);
24
+ try {
25
+ const ast = parseContent(content, fileType);
26
+ const ctx = { filePath, fileType, config: {} };
27
+ violations.push(...runRules(ast, DEFAULT_RULES, ctx));
28
+ }
29
+ catch (e) {
30
+ violations.push(makeSyntaxViolation(e, filePath));
31
+ }
32
+ return violations;
33
+ }
34
+ export function runLint(files, options) {
35
+ const reports = files.map(filePath => ({ filePath, violations: lintFile(filePath) }));
36
+ const output = options.format === 'json' ? formatJson(reports) : formatText(reports, { color: process.stdout.isTTY === true });
37
+ if (output)
38
+ process.stdout.write(output);
39
+ const totals = reports.flatMap(r => r.violations);
40
+ const hasError = totals.some(v => v.severity === 'error');
41
+ const hasWarning = totals.some(v => v.severity === 'warning');
42
+ if (hasError)
43
+ return 1;
44
+ if (options.strict && hasWarning)
45
+ return 1;
11
46
  return 0;
12
47
  }
13
48
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lint/index.ts"],"names":[],"mappings":"AAAA;;;;;;;WAOW;AACX,MAAM,UAAU,OAAO,CAAC,KAAe;IACrC,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,CAAC,MAAM,qCAAqC,CAAC,CAAA;IACvF,OAAO,CAAC,CAAA;AACV,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/lint/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACnC,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACjE,OAAO,EAAE,UAAU,EAAc,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAUhD,SAAS,QAAQ,CAAC,QAAgB;IAChC,MAAM,UAAU,GAAgB,EAAE,CAAA;IAClC,IAAI,OAAe,CAAA;IACnB,IAAI;QACF,OAAO,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAA;KAC7B;IAAC,OAAO,CAAC,EAAE;QACV,UAAU,CAAC,IAAI,CAAC;YACd,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,qBAAsB,CAAW,CAAC,OAAO,EAAE;SACrD,CAAC,CAAA;QACF,OAAO,UAAU,CAAA;KAClB;IACD,UAAU,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC,CAAA;IAE5C,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAA;IACzC,IAAI;QACF,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;QAC3C,MAAM,GAAG,GAAgB,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAA;QAC3D,UAAU,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC,CAAA;KACtD;IAAC,OAAO,CAAC,EAAE;QACV,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAA;KAClD;IACD,OAAO,UAAU,CAAA;AACnB,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAAe,EAAE,OAAoB;IAC3D,MAAM,OAAO,GAAiB,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAA;IAEnG,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC,CAAA;IACjH,IAAI,MAAM;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;IAExC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;IACjD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAA;IACzD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAA;IAC7D,IAAI,QAAQ;QAAE,OAAO,CAAC,CAAA;IACtB,IAAI,OAAO,CAAC,MAAM,IAAI,UAAU;QAAE,OAAO,CAAC,CAAA;IAC1C,OAAO,CAAC,CAAA;AACV,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { PodliteDocument } from '@podlite/schema';
2
+ import type { FileType } from './types';
3
+ export declare function detectFileType(filePath: string): FileType;
4
+ export declare function readFile(filePath: string): string;
5
+ export declare function parseContent(content: string, fileType: FileType): PodliteDocument;
@@ -0,0 +1,19 @@
1
+ import * as fs from 'fs';
2
+ import * as path from 'path';
3
+ import { podlitePluggable } from '@podlite/schema';
4
+ import { parseMd } from '@podlite/markdown';
5
+ const podliteParser = podlitePluggable();
6
+ export function detectFileType(filePath) {
7
+ const ext = path.extname(filePath).toLowerCase();
8
+ return ext === '.md' ? 'md' : 'podlite';
9
+ }
10
+ export function readFile(filePath) {
11
+ return fs.readFileSync(filePath, 'utf-8');
12
+ }
13
+ export function parseContent(content, fileType) {
14
+ if (fileType === 'md') {
15
+ return parseMd(content);
16
+ }
17
+ return podliteParser.parse(content, { podMode: 1 });
18
+ }
19
+ //# sourceMappingURL=loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/lint/loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAC5B,OAAO,EAAE,gBAAgB,EAAmB,MAAM,iBAAiB,CAAA;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAA;AAG3C,MAAM,aAAa,GAAG,gBAAgB,EAAE,CAAA;AAExC,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAA;IAChD,OAAO,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;AACzC,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,QAAgB;IACvC,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;AAC3C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAe,EAAE,QAAkB;IAC9D,IAAI,QAAQ,KAAK,IAAI,EAAE;QACrB,OAAO,OAAO,CAAC,OAAO,CAA+B,CAAA;KACtD;IACD,OAAO,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAA;AACrD,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Rule } from '../types';
2
+ export declare const HEADING_HIERARCHY_RULE_ID = "heading-hierarchy";
3
+ export declare const headingHierarchyRule: Rule;
@@ -0,0 +1,27 @@
1
+ import { getFromTree } from '@podlite/schema';
2
+ export const HEADING_HIERARCHY_RULE_ID = 'heading-hierarchy';
3
+ export const headingHierarchyRule = {
4
+ id: HEADING_HIERARCHY_RULE_ID,
5
+ severity: 'warning',
6
+ check: (ast, _ctx) => {
7
+ const heads = getFromTree(ast, 'head');
8
+ const violations = [];
9
+ let prev = null;
10
+ for (const node of heads) {
11
+ const level = Number(node.level);
12
+ if (!Number.isFinite(level) || level < 1)
13
+ continue;
14
+ if (prev !== null && level - prev > 1) {
15
+ violations.push({
16
+ rule: HEADING_HIERARCHY_RULE_ID,
17
+ severity: 'warning',
18
+ message: `Heading level jump from ${prev} to ${level}`,
19
+ location: node.location,
20
+ });
21
+ }
22
+ prev = level;
23
+ }
24
+ return violations;
25
+ },
26
+ };
27
+ //# sourceMappingURL=heading-hierarchy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"heading-hierarchy.js","sourceRoot":"","sources":["../../../src/lint/rules/heading-hierarchy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAmB,MAAM,iBAAiB,CAAA;AAG9D,MAAM,CAAC,MAAM,yBAAyB,GAAG,mBAAmB,CAAA;AAE5D,MAAM,CAAC,MAAM,oBAAoB,GAAS;IACxC,EAAE,EAAE,yBAAyB;IAC7B,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,CAAC,GAAoB,EAAE,IAAiB,EAAe,EAAE;QAC9D,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QACtC,MAAM,UAAU,GAAgB,EAAE,CAAA;QAClC,IAAI,IAAI,GAAkB,IAAI,CAAA;QAC9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACxB,MAAM,KAAK,GAAG,MAAM,CAAE,IAAoC,CAAC,KAAK,CAAC,CAAA;YACjE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC;gBAAE,SAAQ;YAClD,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,GAAG,IAAI,GAAG,CAAC,EAAE;gBACrC,UAAU,CAAC,IAAI,CAAC;oBACd,IAAI,EAAE,yBAAyB;oBAC/B,QAAQ,EAAE,SAAS;oBACnB,OAAO,EAAE,2BAA2B,IAAI,OAAO,KAAK,EAAE;oBACtD,QAAQ,EAAG,IAA6C,CAAC,QAAQ;iBAClE,CAAC,CAAA;aACH;YACD,IAAI,GAAG,KAAK,CAAA;SACb;QACD,OAAO,UAAU,CAAA;IACnB,CAAC;CACF,CAAA"}
@@ -0,0 +1,10 @@
1
+ import { PodliteDocument } from '@podlite/schema';
2
+ import type { Rule, Violation } from '../types';
3
+ export declare const ID_UNIQUE_RULE_ID = "id-unique";
4
+ declare type IdEntry = {
5
+ value: string;
6
+ location?: Violation['location'];
7
+ };
8
+ export declare function collectExplicitIds(ast: PodliteDocument): IdEntry[];
9
+ export declare const idUniqueRule: Rule;
10
+ export {};
@@ -0,0 +1,41 @@
1
+ import { getFromTree } from '@podlite/schema';
2
+ export const ID_UNIQUE_RULE_ID = 'id-unique';
3
+ export function collectExplicitIds(ast) {
4
+ const nodes = getFromTree(ast, () => true);
5
+ const entries = [];
6
+ for (const node of nodes) {
7
+ const config = Array.isArray(node.config) ? node.config : [];
8
+ for (const item of config) {
9
+ if (item && item.name === 'id' && item.value !== undefined && item.value !== null) {
10
+ entries.push({ value: String(item.value), location: node.location });
11
+ }
12
+ }
13
+ }
14
+ return entries;
15
+ }
16
+ export const idUniqueRule = {
17
+ id: ID_UNIQUE_RULE_ID,
18
+ severity: 'error',
19
+ check: (ast, _ctx) => {
20
+ const entries = collectExplicitIds(ast);
21
+ if (entries.length === 0)
22
+ return [];
23
+ const seen = new Set();
24
+ const violations = [];
25
+ for (const entry of entries) {
26
+ if (seen.has(entry.value)) {
27
+ violations.push({
28
+ rule: ID_UNIQUE_RULE_ID,
29
+ severity: 'error',
30
+ message: `Duplicate :id<${entry.value}>`,
31
+ location: entry.location,
32
+ });
33
+ }
34
+ else {
35
+ seen.add(entry.value);
36
+ }
37
+ }
38
+ return violations;
39
+ },
40
+ };
41
+ //# sourceMappingURL=id-unique.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"id-unique.js","sourceRoot":"","sources":["../../../src/lint/rules/id-unique.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAmB,MAAM,iBAAiB,CAAA;AAG9D,MAAM,CAAC,MAAM,iBAAiB,GAAG,WAAW,CAAA;AAI5C,MAAM,UAAU,kBAAkB,CAAC,GAAoB;IACrD,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,CAGvC,CAAA;IACF,MAAM,OAAO,GAAc,EAAE,CAAA;IAC7B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAA;QAC5D,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE;YACzB,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,EAAE;gBACjF,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;aACrE;SACF;KACF;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAS;IAChC,EAAE,EAAE,iBAAiB;IACrB,QAAQ,EAAE,OAAO;IACjB,KAAK,EAAE,CAAC,GAAoB,EAAE,IAAiB,EAAe,EAAE;QAC9D,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAA;QACvC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,CAAA;QACnC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAA;QAC9B,MAAM,UAAU,GAAgB,EAAE,CAAA;QAClC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE;YAC3B,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;gBACzB,UAAU,CAAC,IAAI,CAAC;oBACd,IAAI,EAAE,iBAAiB;oBACvB,QAAQ,EAAE,OAAO;oBACjB,OAAO,EAAE,iBAAiB,KAAK,CAAC,KAAK,GAAG;oBACxC,QAAQ,EAAE,KAAK,CAAC,QAAQ;iBACzB,CAAC,CAAA;aACH;iBAAM;gBACL,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;aACtB;SACF;QACD,OAAO,UAAU,CAAA;IACnB,CAAC;CACF,CAAA"}
@@ -0,0 +1,2 @@
1
+ import type { Rule } from '../types';
2
+ export declare const DEFAULT_RULES: Rule[];
@@ -0,0 +1,4 @@
1
+ import { headingHierarchyRule } from './heading-hierarchy';
2
+ import { idUniqueRule } from './id-unique';
3
+ export const DEFAULT_RULES = [headingHierarchyRule, idUniqueRule];
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lint/rules/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE1C,MAAM,CAAC,MAAM,aAAa,GAAW,CAAC,oBAAoB,EAAE,YAAY,CAAC,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { Rule, Violation } from '../types';
2
+ export declare const SYNTAX_VALID_RULE_ID = "syntax-valid";
3
+ export declare function makeSyntaxViolation(err: unknown, filePath: string): Violation;
4
+ export declare const syntaxValidRule: Rule;
@@ -0,0 +1,30 @@
1
+ export const SYNTAX_VALID_RULE_ID = 'syntax-valid';
2
+ export function makeSyntaxViolation(err, filePath) {
3
+ const e = err;
4
+ const start = e?.location?.start;
5
+ return {
6
+ rule: SYNTAX_VALID_RULE_ID,
7
+ severity: 'error',
8
+ message: e?.message ? String(e.message).split('\n')[0] : 'Parse error',
9
+ location: e?.location
10
+ ? {
11
+ start: {
12
+ line: start?.line ?? 1,
13
+ column: start?.column ?? 1,
14
+ offset: start?.offset ?? 0,
15
+ },
16
+ end: {
17
+ line: start?.line ?? 1,
18
+ column: start?.column ?? 1,
19
+ offset: start?.offset ?? 0,
20
+ },
21
+ }
22
+ : undefined,
23
+ };
24
+ }
25
+ export const syntaxValidRule = {
26
+ id: SYNTAX_VALID_RULE_ID,
27
+ severity: 'error',
28
+ check: (_ast, _ctx) => [],
29
+ };
30
+ //# sourceMappingURL=syntax-valid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"syntax-valid.js","sourceRoot":"","sources":["../../../src/lint/rules/syntax-valid.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,oBAAoB,GAAG,cAAc,CAAA;AAElD,MAAM,UAAU,mBAAmB,CAAC,GAAY,EAAE,QAAgB;IAChE,MAAM,CAAC,GAAG,GAAuG,CAAA;IACjH,MAAM,KAAK,GAAG,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAA;IAChC,OAAO;QACL,IAAI,EAAE,oBAAoB;QAC1B,QAAQ,EAAE,OAAO;QACjB,OAAO,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa;QACtE,QAAQ,EAAE,CAAC,EAAE,QAAQ;YACnB,CAAC,CAAC;gBACE,KAAK,EAAE;oBACL,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC;oBACtB,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC;oBAC1B,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC;iBAC3B;gBACD,GAAG,EAAE;oBACH,IAAI,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC;oBACtB,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC;oBAC1B,MAAM,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC;iBAC3B;aACF;YACH,CAAC,CAAC,SAAS;KACd,CAAA;AACH,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAS;IACnC,EAAE,EAAE,oBAAoB;IACxB,QAAQ,EAAE,OAAO;IACjB,KAAK,EAAE,CAAC,IAAqB,EAAE,IAAiB,EAAe,EAAE,CAAC,EAAE;CACrE,CAAA"}
@@ -18,3 +18,7 @@ export declare type Rule = {
18
18
  severity: Severity;
19
19
  check: (ast: PodliteDocument, ctx: LintContext) => Violation[];
20
20
  };
21
+ export declare type SourceRule = {
22
+ id: string;
23
+ severity: Severity;
24
+ };
package/lib/cli.js CHANGED
@@ -30,10 +30,11 @@ const FORMATS = {
30
30
  html: '.html',
31
31
  };
32
32
  const QUERY_FORMATS = ['podlite', 'md', 'html', 'json'];
33
+ const LINT_FORMATS = ['text', 'json'];
33
34
  function usage() {
34
35
  console.log(`Usage:
35
36
  podlite convert <files...> --to <format> [-o <output>]
36
- podlite lint <files...>
37
+ podlite lint <files...> [--strict] [--format <text|json>] [--config <path>]
37
38
  podlite query <selector> <files...> [--to <format>] [--fail-on-empty] [--quiet]
38
39
 
39
40
  Commands:
@@ -45,6 +46,9 @@ Options:
45
46
  --to Output format
46
47
  convert: md (markdown), html
47
48
  query: podlite (default), md, html, json
49
+ --format lint output format: text (default), json
50
+ --strict lint: promote warnings to errors
51
+ --config lint: path to .podlitelintrc.{json,js}
48
52
  -o Output file or directory (default: same dir, new extension)
49
53
  --fail-on-empty query: exit 1 if no blocks matched
50
54
  --quiet query: suppress match count on stderr
@@ -59,7 +63,8 @@ Examples:
59
63
  podlite query '*[:applies-nfr~<N004>]' rules/*.podlite --fail-on-empty
60
64
  cat doc.podlite | podlite query 'head1'
61
65
  podlite query 'table' --to json - < report.podlite
62
- podlite lint docs/*.podlite`);
66
+ podlite lint docs/*.podlite
67
+ podlite lint docs/ --strict --format json`);
63
68
  }
64
69
  function parseArgs(argv) {
65
70
  const args = {
@@ -69,6 +74,9 @@ function parseArgs(argv) {
69
74
  output: '',
70
75
  failOnEmpty: false,
71
76
  quiet: false,
77
+ strict: false,
78
+ format: '',
79
+ configPath: '',
72
80
  };
73
81
  if (argv.length === 0 || argv[0] === '--help' || argv[0] === '-h') {
74
82
  return null;
@@ -89,6 +97,15 @@ function parseArgs(argv) {
89
97
  else if (arg === '--quiet') {
90
98
  args.quiet = true;
91
99
  }
100
+ else if (arg === '--strict') {
101
+ args.strict = true;
102
+ }
103
+ else if (arg === '--format') {
104
+ args.format = argv[++i] || '';
105
+ }
106
+ else if (arg === '--config') {
107
+ args.configPath = argv[++i] || '';
108
+ }
92
109
  else if (arg === '--help' || arg === '-h') {
93
110
  return null;
94
111
  }
@@ -214,11 +231,20 @@ function main() {
214
231
  }
215
232
  if (args.command === 'lint') {
216
233
  if (args.files.length === 0) {
217
- console.error('No input files specified');
234
+ console.error('podlite lint: no input files specified');
218
235
  usage();
219
- process.exit(1);
236
+ process.exit(2);
237
+ }
238
+ const format = (args.format || 'text');
239
+ if (!LINT_FORMATS.includes(format)) {
240
+ console.error(`podlite lint: unknown --format "${format}". Supported: ${LINT_FORMATS.join(', ')}`);
241
+ process.exit(2);
220
242
  }
221
- process.exit((0, lint_1.runLint)(args.files));
243
+ process.exit((0, lint_1.runLint)(args.files, {
244
+ strict: args.strict,
245
+ format,
246
+ configPath: args.configPath || undefined,
247
+ }));
222
248
  }
223
249
  if (args.command !== 'convert') {
224
250
  console.error(`Unknown command: ${args.command}`);
package/lib/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/lib/index.js CHANGED
@@ -5,10 +5,18 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.version = exports.podlite = void 0;
7
7
  const schema_1 = require("@podlite/schema");
8
+ const markdown_1 = require("@podlite/markdown");
8
9
  const extrnal_1 = __importDefault(require("./plugins/extrnal"));
9
10
  const podlite = ({ importPlugins = true }) => {
10
- let plugins = importPlugins ? extrnal_1.default : {};
11
- return (0, schema_1.podlitePluggable)({ plugins });
11
+ const plugins = importPlugins ? extrnal_1.default : {};
12
+ const instance = (0, schema_1.podlitePluggable)({ plugins });
13
+ const baseParse = instance.parse;
14
+ instance.parse = (text, opt = {}) => {
15
+ if (opt.mode === 'md')
16
+ return (0, markdown_1.parseMd)(text);
17
+ return baseParse(text, opt);
18
+ };
19
+ return instance;
12
20
  };
13
21
  exports.podlite = podlite;
14
22
  // Cannot be `import` as it's not under TS root dir
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,4CAA2D;AAC3D,gEAA+C;AAKxC,MAAM,OAAO,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,EAAc,EAAW,EAAE;IACvE,IAAI,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,iBAAe,CAAC,CAAC,CAAC,EAAE,CAAA;IAClD,OAAO,IAAA,yBAAgB,EAAC,EAAE,OAAO,EAAE,CAAC,CAAA;AACtC,CAAC,CAAA;AAHY,QAAA,OAAO,WAGnB;AAED,mDAAmD;AACnD,gIAAgI;AAEhI,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;AACnC,0BAAO"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAsF;AACtF,gDAA2C;AAC3C,gEAA+C;AAKxC,MAAM,OAAO,GAAG,CAAC,EAAE,aAAa,GAAG,IAAI,EAAc,EAAW,EAAE;IACvE,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,CAAC,iBAAe,CAAC,CAAC,CAAC,EAAE,CAAA;IACpD,MAAM,QAAQ,GAAG,IAAA,yBAAgB,EAAC,EAAE,OAAO,EAAE,CAAC,CAAA;IAC9C,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAA;IAChC,QAAQ,CAAC,KAAK,GAAG,CAAC,IAAY,EAAE,MAAgB,EAAE,EAAmB,EAAE;QACrE,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI;YAAE,OAAO,IAAA,kBAAO,EAAC,IAAI,CAA+B,CAAA;QACzE,OAAO,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;IAC7B,CAAC,CAAA;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC,CAAA;AATY,QAAA,OAAO,WASnB;AAED,mDAAmD;AACnD,gIAAgI;AAEhI,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;AACnC,0BAAO"}
@@ -0,0 +1,9 @@
1
+ import type { Violation } from '../types';
2
+ export declare type FileReport = {
3
+ filePath: string;
4
+ violations: Violation[];
5
+ };
6
+ export declare type JsonDiagnostic = Violation & {
7
+ file: string;
8
+ };
9
+ export declare function formatJson(reports: FileReport[]): string;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.formatJson = void 0;
4
+ function formatJson(reports) {
5
+ const payload = reports.flatMap(r => r.violations.map(v => ({ file: r.filePath, ...v })));
6
+ return JSON.stringify(payload, null, 2) + '\n';
7
+ }
8
+ exports.formatJson = formatJson;
9
+ //# sourceMappingURL=json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"json.js","sourceRoot":"","sources":["../../../src/lint/formatters/json.ts"],"names":[],"mappings":";;;AAMA,SAAgB,UAAU,CAAC,OAAqB;IAC9C,MAAM,OAAO,GAAqB,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC3G,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAA;AAChD,CAAC;AAHD,gCAGC"}
@@ -0,0 +1,9 @@
1
+ import type { Violation } from '../types';
2
+ export declare type FileReport = {
3
+ filePath: string;
4
+ violations: Violation[];
5
+ };
6
+ export declare type TextFormatOptions = {
7
+ color: boolean;
8
+ };
9
+ export declare function formatText(reports: FileReport[], opts: TextFormatOptions): string;
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.formatText = void 0;
4
+ const ANSI = {
5
+ red: '\x1b[31m',
6
+ yellow: '\x1b[33m',
7
+ cyan: '\x1b[36m',
8
+ reset: '\x1b[0m',
9
+ };
10
+ function colourize(severity, color) {
11
+ if (!color)
12
+ return severity;
13
+ if (severity === 'error')
14
+ return `${ANSI.red}${severity}${ANSI.reset}`;
15
+ if (severity === 'warning')
16
+ return `${ANSI.yellow}${severity}${ANSI.reset}`;
17
+ return `${ANSI.cyan}${severity}${ANSI.reset}`;
18
+ }
19
+ function plural(n, singular, plural) {
20
+ return `${n} ${n === 1 ? singular : plural}`;
21
+ }
22
+ function summaryLine(reports) {
23
+ const totals = reports.flatMap(r => r.violations);
24
+ const nFiles = reports.length;
25
+ const nErrors = totals.filter(v => v.severity === 'error').length;
26
+ const nWarnings = totals.filter(v => v.severity === 'warning').length;
27
+ return `${plural(nFiles, 'file', 'files')} checked, ${plural(nErrors, 'error', 'errors')}, ${plural(nWarnings, 'warning', 'warnings')}`;
28
+ }
29
+ function formatText(reports, opts) {
30
+ const lines = [];
31
+ for (const r of reports) {
32
+ for (const v of r.violations) {
33
+ const line = v.location?.start?.line ?? 1;
34
+ const column = v.location?.start?.column ?? 1;
35
+ lines.push(`${r.filePath}:${line}:${column}: ${colourize(v.severity, opts.color)}: ${v.message} (${v.rule})`);
36
+ }
37
+ }
38
+ if (reports.length === 0)
39
+ return '';
40
+ if (lines.length === 0)
41
+ return `${summaryLine(reports)}\n`;
42
+ return `${lines.join('\n')}\n\n${summaryLine(reports)}\n`;
43
+ }
44
+ exports.formatText = formatText;
45
+ //# sourceMappingURL=text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.js","sourceRoot":"","sources":["../../../src/lint/formatters/text.ts"],"names":[],"mappings":";;;AAMA,MAAM,IAAI,GAAG;IACX,GAAG,EAAE,UAAU;IACf,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,SAAS;CACjB,CAAA;AAED,SAAS,SAAS,CAAC,QAAkB,EAAE,KAAc;IACnD,IAAI,CAAC,KAAK;QAAE,OAAO,QAAQ,CAAA;IAC3B,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,GAAG,IAAI,CAAC,GAAG,GAAG,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,CAAA;IACtE,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,CAAA;IAC3E,OAAO,GAAG,IAAI,CAAC,IAAI,GAAG,QAAQ,GAAG,IAAI,CAAC,KAAK,EAAE,CAAA;AAC/C,CAAC;AAED,SAAS,MAAM,CAAC,CAAS,EAAE,QAAgB,EAAE,MAAc;IACzD,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAA;AAC9C,CAAC;AAED,SAAS,WAAW,CAAC,OAAqB;IACxC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAA;IACjD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAA;IAC7B,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM,CAAA;IACjE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,MAAM,CAAA;IACrE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,aAAa,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAK,MAAM,CACjG,SAAS,EACT,SAAS,EACT,UAAU,CACX,EAAE,CAAA;AACL,CAAC;AAED,SAAgB,UAAU,CAAC,OAAqB,EAAE,IAAuB;IACvE,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE;QACvB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE;YAC5B,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,IAAI,CAAC,CAAA;YACzC,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,CAAA;YAC7C,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,IAAI,IAAI,IAAI,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC,CAAA;SAC9G;KACF;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAA;IACnC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,CAAA;IAC1D,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,WAAW,CAAC,OAAO,CAAC,IAAI,CAAA;AAC3D,CAAC;AAZD,gCAYC"}