@piqit/resolvers 0.0.8 → 0.0.11-rc.1

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.
@@ -6,6 +6,7 @@
6
6
  */
7
7
  import type { Resolver, StandardSchema, Infer } from "piqit";
8
8
  import { type PathParams } from "./path-pattern";
9
+ import { type FrontmatterParseOptions } from "./frontmatter";
9
10
  import { type BodyOptions, type BodyResult, type Heading } from "./markdown";
10
11
  /**
11
12
  * Options for creating a file markdown resolver.
@@ -26,6 +27,10 @@ export interface FileMarkdownOptions<TPath extends string, TFrontmatter extends
26
27
  * The schema's inferred type defines filter parameters.
27
28
  */
28
29
  frontmatter: TFrontmatter;
30
+ /**
31
+ * Low-level frontmatter parsing options.
32
+ */
33
+ frontmatterParse?: FrontmatterParseOptions;
29
34
  /**
30
35
  * Body parsing options.
31
36
  * @default { raw: false, html: false, headings: false }
@@ -1 +1 @@
1
- {"version":3,"file":"file-markdown.d.ts","sourceRoot":"","sources":["../src/file-markdown.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC5D,OAAO,EAAsC,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAA;AAEpF,OAAO,EAAqB,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAA;AAO/F;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAClC,KAAK,SAAS,MAAM,EACpB,YAAY,SAAS,cAAc,EACnC,KAAK,SAAS,WAAW;IAEzB;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;;OAGG;IACH,IAAI,EAAE,KAAK,CAAA;IAEX;;;OAGG;IACH,WAAW,EAAE,YAAY,CAAA;IAEzB;;;OAGG;IACH,IAAI,CAAC,EAAE,KAAK,CAAA;CACb;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB,CACjC,OAAO,EACP,YAAY,EACZ,KAAK,SAAS,UAAU;IAExB,MAAM,EAAE,OAAO,CAAA;IACf,WAAW,EAAE,YAAY,CAAA;IACzB,IAAI,EAAE,KAAK,CAAA;CACZ;AAED;;GAEG;AACH,KAAK,iBAAiB,CAAC,CAAC,SAAS,WAAW,GAAG,SAAS,IAAI,CAAC,SAAS,WAAW,GAC7E;IACE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,GAAG,MAAM,GAAG,KAAK,CAAA;IAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,GAAG,MAAM,GAAG,KAAK,CAAA;IAC7C,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,SAAS,IAAI,GAAG,OAAO,EAAE,GAAG,KAAK,CAAA;CACzD,GACD,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;AAEzB;;GAEG;AACH,KAAK,cAAc,CAAC,CAAC,IAAI;KACtB,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACvD,CAAA;AAuHD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAC1B,KAAK,SAAS,MAAM,EACpB,YAAY,SAAS,cAAc,EACnC,KAAK,SAAS,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAEjD,OAAO,EAAE,mBAAmB,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,CAAC,GACvD,QAAQ,CACT,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAC1C,YAAY,EACZ,cAAc,CACZ,kBAAkB,CAChB,UAAU,CAAC,KAAK,CAAC,EACjB,KAAK,CAAC,YAAY,CAAC,EACnB,cAAc,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CACzC,CACF,CACF,CAwIA"}
1
+ {"version":3,"file":"file-markdown.d.ts","sourceRoot":"","sources":["../src/file-markdown.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC5D,OAAO,EAAsC,KAAK,UAAU,EAAE,MAAM,gBAAgB,CAAA;AACpF,OAAO,EAML,KAAK,uBAAuB,EAC7B,MAAM,eAAe,CAAA;AACtB,OAAO,EAAqB,KAAK,WAAW,EAAE,KAAK,UAAU,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAA;AAO/F;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAClC,KAAK,SAAS,MAAM,EACpB,YAAY,SAAS,cAAc,EACnC,KAAK,SAAS,WAAW;IAEzB;;;OAGG;IACH,IAAI,EAAE,MAAM,CAAA;IAEZ;;;OAGG;IACH,IAAI,EAAE,KAAK,CAAA;IAEX;;;OAGG;IACH,WAAW,EAAE,YAAY,CAAA;IAEzB;;OAEG;IACH,gBAAgB,CAAC,EAAE,uBAAuB,CAAA;IAE1C;;;OAGG;IACH,IAAI,CAAC,EAAE,KAAK,CAAA;CACb;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB,CACjC,OAAO,EACP,YAAY,EACZ,KAAK,SAAS,UAAU;IAExB,MAAM,EAAE,OAAO,CAAA;IACf,WAAW,EAAE,YAAY,CAAA;IACzB,IAAI,EAAE,KAAK,CAAA;CACZ;AAED;;GAEG;AACH,KAAK,iBAAiB,CAAC,CAAC,SAAS,WAAW,GAAG,SAAS,IAAI,CAAC,SAAS,WAAW,GAC7E;IACE,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,GAAG,MAAM,GAAG,KAAK,CAAA;IAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,GAAG,MAAM,GAAG,KAAK,CAAA;IAC7C,QAAQ,EAAE,CAAC,CAAC,UAAU,CAAC,SAAS,IAAI,GAAG,OAAO,EAAE,GAAG,KAAK,CAAA;CACzD,GACD,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;AAEzB;;GAEG;AACH,KAAK,cAAc,CAAC,CAAC,IAAI;KACtB,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,GAAG,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACvD,CAAA;AAkJD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAC1B,KAAK,SAAS,MAAM,EACpB,YAAY,SAAS,cAAc,EACnC,KAAK,SAAS,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAEjD,OAAO,EAAE,mBAAmB,CAAC,KAAK,EAAE,YAAY,EAAE,KAAK,CAAC,GACvD,QAAQ,CACT,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAC1C,YAAY,EACZ,cAAc,CACZ,kBAAkB,CAChB,UAAU,CAAC,KAAK,CAAC,EACjB,KAAK,CAAC,YAAY,CAAC,EACnB,cAAc,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,CACzC,CACF,CACF,CAqJA"}
@@ -5,7 +5,7 @@
5
5
  * Optimized for reading only what's needed based on the query.
6
6
  */
7
7
  import { compilePattern, createParamsSchema } from "./path-pattern";
8
- import { FrontmatterParseError, parseFrontmatterStrict } from "./frontmatter";
8
+ import { FrontmatterParseError, parseFrontmatterStrict, parseFrontmatterPickStrict, readFrontmatterStrict, readFrontmatterPickStrict, } from "./frontmatter";
9
9
  import { parseMarkdownBody } from "./markdown";
10
10
  import path from "node:path";
11
11
  // =============================================================================
@@ -102,6 +102,28 @@ function matchesFilter(frontmatter, filter) {
102
102
  }
103
103
  return true;
104
104
  }
105
+ function getFrontmatterKeys(selectPaths, filter) {
106
+ let wantAll = false;
107
+ const keys = new Set();
108
+ for (const p of selectPaths) {
109
+ if (p === "frontmatter.*") {
110
+ wantAll = true;
111
+ continue;
112
+ }
113
+ if (p.startsWith("frontmatter.")) {
114
+ const key = p.slice("frontmatter.".length).split(".")[0];
115
+ if (key)
116
+ keys.add(key);
117
+ }
118
+ }
119
+ if (filter) {
120
+ for (const key of Object.keys(filter)) {
121
+ if (key)
122
+ keys.add(key);
123
+ }
124
+ }
125
+ return { wantAll, keys: [...keys] };
126
+ }
105
127
  // =============================================================================
106
128
  // Resolver Factory
107
129
  // =============================================================================
@@ -125,6 +147,7 @@ export function fileMarkdown(options) {
125
147
  ? options.base
126
148
  : path.join(process.cwd(), options.base);
127
149
  const bodyOptions = options.body || {};
150
+ const frontmatterParseOptions = options.frontmatterParse;
128
151
  // Create schemas
129
152
  const scanSchema = createParamsSchema(pattern);
130
153
  const resultSchema = createResultSchema(pattern.paramNames, options.frontmatter, bodyOptions);
@@ -150,6 +173,7 @@ export function fileMarkdown(options) {
150
173
  const wantBody = needsBody(spec.select);
151
174
  const hasFilter = spec.filter && Object.keys(spec.filter).length > 0;
152
175
  const neededBodyParts = wantBody ? getNeededBodyParts(spec.select) : {};
176
+ const { wantAll: wantAllFrontmatter, keys: frontmatterKeys } = getFrontmatterKeys(spec.select, spec.filter ?? undefined);
153
177
  // 4. Process each file
154
178
  for (const relativePath of files) {
155
179
  // Extract params from path
@@ -163,9 +187,18 @@ export function fileMarkdown(options) {
163
187
  let body = null;
164
188
  // If filtering or selecting frontmatter, we need to read it
165
189
  if (hasFilter || wantFrontmatter) {
166
- content = await Bun.file(fullPath).text();
167
190
  try {
168
- frontmatter = parseFrontmatterStrict(content, fullPath);
191
+ if (wantBody) {
192
+ content = await Bun.file(fullPath).text();
193
+ frontmatter = wantAllFrontmatter || frontmatterKeys.length === 0
194
+ ? parseFrontmatterStrict(content, fullPath, frontmatterParseOptions)
195
+ : parseFrontmatterPickStrict(content, frontmatterKeys, fullPath, frontmatterParseOptions);
196
+ }
197
+ else {
198
+ frontmatter = wantAllFrontmatter || frontmatterKeys.length === 0
199
+ ? await readFrontmatterStrict(fullPath, 8192, frontmatterParseOptions)
200
+ : await readFrontmatterPickStrict(fullPath, frontmatterKeys, 8192, frontmatterParseOptions);
201
+ }
169
202
  }
170
203
  catch (error) {
171
204
  if (error instanceof FrontmatterParseError) {
@@ -1 +1 @@
1
- {"version":3,"file":"file-markdown.js","sourceRoot":"","sources":["../src/file-markdown.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-markdown.js","sourceRoot":"","sources":["../src/file-markdown.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,15 @@ export declare class FrontmatterParseError extends Error {
8
8
  readonly filePath?: string | undefined;
9
9
  constructor(reason: string, filePath?: string | undefined);
10
10
  }
11
+ export type FrontmatterPickKeys = readonly string[];
12
+ export interface FrontmatterParseOptions {
13
+ /**
14
+ * When true, coerces ISO-ish date strings to `toISOString()`.
15
+ *
16
+ * Defaults to false to avoid surprising equality semantics and extra CPU.
17
+ */
18
+ coerceDates?: boolean;
19
+ }
11
20
  /**
12
21
  * Parse YAML frontmatter from content string.
13
22
  *
@@ -21,14 +30,21 @@ export declare class FrontmatterParseError extends Error {
21
30
  * @param content - The file content (or just the frontmatter portion)
22
31
  * @returns The parsed frontmatter object, or null if not found
23
32
  */
24
- export declare function parseFrontmatter(content: string): Record<string, unknown> | null;
33
+ export declare function parseFrontmatter(content: string, options?: FrontmatterParseOptions): Record<string, unknown> | null;
25
34
  /**
26
35
  * Parse YAML frontmatter with strict malformed-data checks.
27
36
  *
28
37
  * - Returns null when no frontmatter is present.
29
38
  * - Throws FrontmatterParseError when frontmatter fences are malformed.
30
39
  */
31
- export declare function parseFrontmatterStrict(content: string, filePath?: string): Record<string, unknown> | null;
40
+ export declare function parseFrontmatterStrict(content: string, filePath?: string, options?: FrontmatterParseOptions): Record<string, unknown> | null;
41
+ /**
42
+ * Parse just a subset of frontmatter keys with strict malformed-data checks.
43
+ *
44
+ * This is intended for query-time optimization when you only need a few keys
45
+ * (filter/select), rather than parsing every key eagerly.
46
+ */
47
+ export declare function parseFrontmatterPickStrict(content: string, keys: FrontmatterPickKeys, filePath?: string, options?: FrontmatterParseOptions): Record<string, unknown> | null;
32
48
  /**
33
49
  * Extract just the frontmatter portion from content.
34
50
  * Returns the raw YAML string without the --- delimiters.
@@ -55,7 +71,22 @@ export declare function getFrontmatterEndOffset(content: string): number;
55
71
  * @param maxBytes - Maximum bytes to read looking for frontmatter (default 8KB)
56
72
  * @returns The parsed frontmatter, or null if not found
57
73
  */
58
- export declare function readFrontmatter(path: string, maxBytes?: number): Promise<Record<string, unknown> | null>;
74
+ export declare function readFrontmatter(path: string, maxBytes?: number, options?: FrontmatterParseOptions): Promise<Record<string, unknown> | null>;
75
+ /**
76
+ * Read and parse frontmatter with strict malformed-data checks.
77
+ *
78
+ * Reads incrementally and stops once frontmatter is complete when it starts
79
+ * at byte 0. Falls back to scanning the whole file only when needed to
80
+ * preserve strict fence-position behavior.
81
+ */
82
+ export declare function readFrontmatterStrict(path: string, chunkSize?: number, options?: FrontmatterParseOptions): Promise<Record<string, unknown> | null>;
83
+ /**
84
+ * Read and parse only a subset of frontmatter keys (strict).
85
+ *
86
+ * This reads incrementally until the frontmatter block is complete and then
87
+ * parses only the keys you ask for. It preserves strict fence-position checks.
88
+ */
89
+ export declare function readFrontmatterPickStrict(path: string, keys: FrontmatterPickKeys, chunkSize?: number, options?: FrontmatterParseOptions): Promise<Record<string, unknown> | null>;
59
90
  /**
60
91
  * Read frontmatter and return the offset where body starts.
61
92
  * Useful when you need both frontmatter and body.
@@ -1 +1 @@
1
- {"version":3,"file":"frontmatter.d.ts","sourceRoot":"","sources":["../src/frontmatter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAaH,qBAAa,qBAAsB,SAAQ,KAAK;aAE5B,MAAM,EAAE,MAAM;aACd,QAAQ,CAAC,EAAE,MAAM;gBADjB,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,YAAA;CAMpC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAMhF;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAkBhC;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGvE;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAI/D;AA+JD;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,QAAQ,SAAO,GACd,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAazC;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CAY9E"}
1
+ {"version":3,"file":"frontmatter.d.ts","sourceRoot":"","sources":["../src/frontmatter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAaH,qBAAa,qBAAsB,SAAQ,KAAK;aAE5B,MAAM,EAAE,MAAM;aACd,QAAQ,CAAC,EAAE,MAAM;gBADjB,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,MAAM,YAAA;CAMpC;AAED,MAAM,MAAM,mBAAmB,GAAG,SAAS,MAAM,EAAE,CAAA;AAEnD,MAAM,WAAW,uBAAuB;IACtC;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAUD;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,uBAAuB,GAChC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAMhC;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,EACf,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,uBAAuB,GAChC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAyBhC;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,mBAAmB,EACzB,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,uBAAuB,GAChC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAyBhC;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGvE;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAI/D;AA0RD;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,EACZ,QAAQ,SAAO,EACf,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAazC;AAED;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,EACZ,SAAS,SAAO,EAChB,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAkEzC;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,mBAAmB,EACzB,SAAS,SAAO,EAChB,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,CAmEzC;AAED;;;;;;GAMG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAAC,CAY9E"}
@@ -23,6 +23,11 @@ export class FrontmatterParseError extends Error {
23
23
  this.name = "FrontmatterParseError";
24
24
  }
25
25
  }
26
+ function normalizeFrontmatterOptions(options) {
27
+ return {
28
+ coerceDates: options?.coerceDates ?? false,
29
+ };
30
+ }
26
31
  /**
27
32
  * Parse YAML frontmatter from content string.
28
33
  *
@@ -36,12 +41,12 @@ export class FrontmatterParseError extends Error {
36
41
  * @param content - The file content (or just the frontmatter portion)
37
42
  * @returns The parsed frontmatter object, or null if not found
38
43
  */
39
- export function parseFrontmatter(content) {
44
+ export function parseFrontmatter(content, options) {
40
45
  const match = FRONTMATTER_REGEX.exec(content);
41
46
  if (!match)
42
47
  return null;
43
48
  const yaml = match[1];
44
- return parseSimpleYaml(yaml);
49
+ return parseSimpleYaml(yaml, options);
45
50
  }
46
51
  /**
47
52
  * Parse YAML frontmatter with strict malformed-data checks.
@@ -49,14 +54,40 @@ export function parseFrontmatter(content) {
49
54
  * - Returns null when no frontmatter is present.
50
55
  * - Throws FrontmatterParseError when frontmatter fences are malformed.
51
56
  */
52
- export function parseFrontmatterStrict(content, filePath) {
57
+ export function parseFrontmatterStrict(content, filePath, options) {
58
+ const hasFrontmatterAtStart = content.startsWith("---\n") || content.startsWith("---\r\n");
59
+ if (hasFrontmatterAtStart) {
60
+ const match = FRONTMATTER_REGEX.exec(content);
61
+ if (!match) {
62
+ throw new FrontmatterParseError("opening frontmatter fence is not closed", filePath);
63
+ }
64
+ return parseSimpleYaml(match[1], options);
65
+ }
66
+ if (content.startsWith("---")) {
67
+ throw new FrontmatterParseError("opening frontmatter fence must be followed by a newline", filePath);
68
+ }
69
+ if (FRONTMATTER_FENCE_ANYWHERE_REGEX.test(content)) {
70
+ throw new FrontmatterParseError("frontmatter fence found after non-frontmatter content (frontmatter must start at byte 0)", filePath);
71
+ }
72
+ return null;
73
+ }
74
+ /**
75
+ * Parse just a subset of frontmatter keys with strict malformed-data checks.
76
+ *
77
+ * This is intended for query-time optimization when you only need a few keys
78
+ * (filter/select), rather than parsing every key eagerly.
79
+ */
80
+ export function parseFrontmatterPickStrict(content, keys, filePath, options) {
53
81
  const hasFrontmatterAtStart = content.startsWith("---\n") || content.startsWith("---\r\n");
54
82
  if (hasFrontmatterAtStart) {
55
83
  const match = FRONTMATTER_REGEX.exec(content);
56
84
  if (!match) {
57
85
  throw new FrontmatterParseError("opening frontmatter fence is not closed", filePath);
58
86
  }
59
- return parseSimpleYaml(match[1]);
87
+ return parseSimpleYamlPick(match[1], keys, options);
88
+ }
89
+ if (content.startsWith("---")) {
90
+ throw new FrontmatterParseError("opening frontmatter fence must be followed by a newline", filePath);
60
91
  }
61
92
  if (FRONTMATTER_FENCE_ANYWHERE_REGEX.test(content)) {
62
93
  throw new FrontmatterParseError("frontmatter fence found after non-frontmatter content (frontmatter must start at byte 0)", filePath);
@@ -94,7 +125,8 @@ export function getFrontmatterEndOffset(content) {
94
125
  * Parse simple YAML into an object.
95
126
  * Handles the common patterns found in markdown frontmatter.
96
127
  */
97
- function parseSimpleYaml(yaml) {
128
+ function parseSimpleYaml(yaml, options) {
129
+ const normalizedOptions = normalizeFrontmatterOptions(options);
98
130
  const result = {};
99
131
  const lines = yaml.split(/\r?\n/);
100
132
  let currentKey = null;
@@ -112,7 +144,7 @@ function parseSimpleYaml(yaml) {
112
144
  inBlockArray = false;
113
145
  }
114
146
  else if (currentValue.length === 1) {
115
- result[currentKey] = parseYamlValue(currentValue[0]);
147
+ result[currentKey] = parseYamlValue(currentValue[0], normalizedOptions);
116
148
  }
117
149
  else if (currentValue.length > 1) {
118
150
  result[currentKey] = currentValue.join("\n");
@@ -129,7 +161,7 @@ function parseSimpleYaml(yaml) {
129
161
  inBlockArray = true;
130
162
  inMultiline = false;
131
163
  const itemValue = arrayItemMatch[2].trim();
132
- blockArrayItems.push(parseYamlValue(itemValue));
164
+ blockArrayItems.push(parseYamlValue(itemValue, normalizedOptions));
133
165
  continue;
134
166
  }
135
167
  // Check for key: value pattern
@@ -203,10 +235,116 @@ function parseSimpleYaml(yaml) {
203
235
  commitValue();
204
236
  return result;
205
237
  }
238
+ /**
239
+ * Parse a subset of simple YAML keys into an object.
240
+ *
241
+ * Uses the same parsing rules as `parseSimpleYaml`, but stops once all requested
242
+ * keys have been found and committed.
243
+ */
244
+ function parseSimpleYamlPick(yaml, keys, options) {
245
+ const normalizedOptions = normalizeFrontmatterOptions(options);
246
+ const want = new Set(keys);
247
+ const remaining = new Set(keys);
248
+ const result = {};
249
+ if (remaining.size === 0)
250
+ return result;
251
+ const lines = yaml.split(/\r?\n/);
252
+ let currentKey = null;
253
+ let currentValue = [];
254
+ let inMultiline = false;
255
+ let inBlockArray = false;
256
+ let blockArrayItems = [];
257
+ let multilineIndent = 0;
258
+ function commitValue() {
259
+ if (!currentKey)
260
+ return;
261
+ if (want.has(currentKey)) {
262
+ if (inBlockArray) {
263
+ result[currentKey] = blockArrayItems;
264
+ }
265
+ else if (currentValue.length === 1) {
266
+ result[currentKey] = parseYamlValue(currentValue[0], normalizedOptions);
267
+ }
268
+ else if (currentValue.length > 1) {
269
+ result[currentKey] = currentValue.join("\n");
270
+ }
271
+ remaining.delete(currentKey);
272
+ }
273
+ currentKey = null;
274
+ currentValue = [];
275
+ inMultiline = false;
276
+ inBlockArray = false;
277
+ blockArrayItems = [];
278
+ multilineIndent = 0;
279
+ }
280
+ for (const line of lines) {
281
+ const arrayItemMatch = line.match(/^(\s+)-\s+(.*)$/);
282
+ if (arrayItemMatch && currentKey && (inBlockArray || (inMultiline && currentValue.length === 0))) {
283
+ inBlockArray = true;
284
+ inMultiline = false;
285
+ const itemValue = arrayItemMatch[2].trim();
286
+ if (want.has(currentKey)) {
287
+ blockArrayItems.push(parseYamlValue(itemValue, normalizedOptions));
288
+ }
289
+ continue;
290
+ }
291
+ const keyMatch = line.match(/^([a-zA-Z_][a-zA-Z0-9_-]*)\s*:\s*(.*)$/);
292
+ if (keyMatch && !inMultiline) {
293
+ commitValue();
294
+ if (remaining.size === 0)
295
+ break;
296
+ currentKey = keyMatch[1];
297
+ const valueStr = keyMatch[2].trim();
298
+ if (valueStr === "" || valueStr === "|" || valueStr === ">") {
299
+ inMultiline = true;
300
+ multilineIndent = 0;
301
+ }
302
+ else {
303
+ currentValue = [valueStr];
304
+ }
305
+ continue;
306
+ }
307
+ if (inMultiline && currentKey && !inBlockArray) {
308
+ if (line.trim() === "") {
309
+ if (want.has(currentKey))
310
+ currentValue.push("");
311
+ continue;
312
+ }
313
+ const indent = line.search(/\S/);
314
+ if (indent > 0) {
315
+ if (multilineIndent === 0) {
316
+ multilineIndent = indent;
317
+ }
318
+ if (want.has(currentKey))
319
+ currentValue.push(line.slice(multilineIndent));
320
+ continue;
321
+ }
322
+ // No indent: multiline ended, re-process as a new key
323
+ commitValue();
324
+ if (remaining.size === 0)
325
+ break;
326
+ const reKeyMatch = line.match(/^([a-zA-Z_][a-zA-Z0-9_-]*)\s*:\s*(.*)$/);
327
+ if (reKeyMatch) {
328
+ currentKey = reKeyMatch[1];
329
+ const valueStr = reKeyMatch[2].trim();
330
+ if (valueStr === "" || valueStr === "|" || valueStr === ">") {
331
+ inMultiline = true;
332
+ multilineIndent = 0;
333
+ }
334
+ else {
335
+ currentValue = [valueStr];
336
+ }
337
+ }
338
+ continue;
339
+ }
340
+ }
341
+ commitValue();
342
+ return result;
343
+ }
206
344
  /**
207
345
  * Parse a single YAML value.
208
346
  */
209
- function parseYamlValue(value) {
347
+ function parseYamlValue(value, options) {
210
348
  // Remove quotes
211
349
  if ((value.startsWith('"') && value.endsWith('"')) || (value.startsWith("'") && value.endsWith("'"))) {
212
350
  return value.slice(1, -1);
@@ -216,7 +354,7 @@ function parseYamlValue(value) {
216
354
  const inner = value.slice(1, -1);
217
355
  if (inner.trim() === "")
218
356
  return [];
219
- return inner.split(",").map((item) => parseYamlValue(item.trim()));
357
+ return inner.split(",").map((item) => parseYamlValue(item.trim(), options));
220
358
  }
221
359
  // Check for booleans
222
360
  if (value === "true")
@@ -230,11 +368,13 @@ function parseYamlValue(value) {
230
368
  const num = Number(value);
231
369
  if (!isNaN(num) && value !== "")
232
370
  return num;
233
- // Check for dates (ISO format)
234
- if (/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/.test(value)) {
235
- const date = new Date(value);
236
- if (!isNaN(date.getTime()))
237
- return date.toISOString();
371
+ if (options.coerceDates) {
372
+ // Check for dates (ISO-ish format)
373
+ if (/^\d{4}-\d{2}-\d{2}(T\d{2}:\d{2}:\d{2})?/.test(value)) {
374
+ const date = new Date(value);
375
+ if (!isNaN(date.getTime()))
376
+ return date.toISOString();
377
+ }
238
378
  }
239
379
  return value;
240
380
  }
@@ -251,19 +391,128 @@ function parseYamlValue(value) {
251
391
  * @param maxBytes - Maximum bytes to read looking for frontmatter (default 8KB)
252
392
  * @returns The parsed frontmatter, or null if not found
253
393
  */
254
- export async function readFrontmatter(path, maxBytes = 8192) {
394
+ export async function readFrontmatter(path, maxBytes = 8192, options) {
255
395
  try {
256
396
  const file = Bun.file(path);
257
397
  const size = file.size;
258
398
  // Read up to maxBytes or file size
259
399
  const bytesToRead = Math.min(maxBytes, size);
260
400
  const buffer = await file.slice(0, bytesToRead).text();
261
- return parseFrontmatter(buffer);
401
+ return parseFrontmatter(buffer, options);
262
402
  }
263
403
  catch {
264
404
  return null;
265
405
  }
266
406
  }
407
+ /**
408
+ * Read and parse frontmatter with strict malformed-data checks.
409
+ *
410
+ * Reads incrementally and stops once frontmatter is complete when it starts
411
+ * at byte 0. Falls back to scanning the whole file only when needed to
412
+ * preserve strict fence-position behavior.
413
+ */
414
+ export async function readFrontmatterStrict(path, chunkSize = 8192, options) {
415
+ try {
416
+ const file = Bun.file(path);
417
+ const size = file.size;
418
+ if (size === 0)
419
+ return null;
420
+ const firstReadSize = Math.min(chunkSize, size);
421
+ const firstChunk = await file.slice(0, firstReadSize).text();
422
+ const hasFrontmatterAtStart = firstChunk.startsWith("---\n") || firstChunk.startsWith("---\r\n");
423
+ if (hasFrontmatterAtStart) {
424
+ let content = firstChunk;
425
+ let offset = firstReadSize;
426
+ while (!/\r?\n---/.test(content)) {
427
+ if (offset >= size) {
428
+ throw new FrontmatterParseError("opening frontmatter fence is not closed", path);
429
+ }
430
+ const end = Math.min(offset + chunkSize, size);
431
+ const nextChunk = await file.slice(offset, end).text();
432
+ content += nextChunk;
433
+ offset = end;
434
+ }
435
+ return parseFrontmatterStrict(content, path, options);
436
+ }
437
+ if (firstChunk.startsWith("---")) {
438
+ throw new FrontmatterParseError("opening frontmatter fence must be followed by a newline", path);
439
+ }
440
+ let carry = firstChunk.slice(-8);
441
+ if (FRONTMATTER_FENCE_ANYWHERE_REGEX.test(firstChunk)) {
442
+ throw new FrontmatterParseError("frontmatter fence found after non-frontmatter content (frontmatter must start at byte 0)", path);
443
+ }
444
+ for (let offset = firstReadSize; offset < size; offset += chunkSize) {
445
+ const end = Math.min(offset + chunkSize, size);
446
+ const chunk = await file.slice(offset, end).text();
447
+ const sample = carry + chunk;
448
+ if (FRONTMATTER_FENCE_ANYWHERE_REGEX.test(sample)) {
449
+ throw new FrontmatterParseError("frontmatter fence found after non-frontmatter content (frontmatter must start at byte 0)", path);
450
+ }
451
+ carry = sample.slice(-8);
452
+ }
453
+ return null;
454
+ }
455
+ catch (error) {
456
+ if (error instanceof FrontmatterParseError) {
457
+ throw error;
458
+ }
459
+ return null;
460
+ }
461
+ }
462
+ /**
463
+ * Read and parse only a subset of frontmatter keys (strict).
464
+ *
465
+ * This reads incrementally until the frontmatter block is complete and then
466
+ * parses only the keys you ask for. It preserves strict fence-position checks.
467
+ */
468
+ export async function readFrontmatterPickStrict(path, keys, chunkSize = 8192, options) {
469
+ try {
470
+ const file = Bun.file(path);
471
+ const size = file.size;
472
+ if (size === 0)
473
+ return null;
474
+ const firstReadSize = Math.min(chunkSize, size);
475
+ const firstChunk = await file.slice(0, firstReadSize).text();
476
+ const hasFrontmatterAtStart = firstChunk.startsWith("---\n") || firstChunk.startsWith("---\r\n");
477
+ if (hasFrontmatterAtStart) {
478
+ let content = firstChunk;
479
+ let offset = firstReadSize;
480
+ while (!/\r?\n---/.test(content)) {
481
+ if (offset >= size) {
482
+ throw new FrontmatterParseError("opening frontmatter fence is not closed", path);
483
+ }
484
+ const end = Math.min(offset + chunkSize, size);
485
+ const nextChunk = await file.slice(offset, end).text();
486
+ content += nextChunk;
487
+ offset = end;
488
+ }
489
+ return parseFrontmatterPickStrict(content, keys, path, options);
490
+ }
491
+ if (firstChunk.startsWith("---")) {
492
+ throw new FrontmatterParseError("opening frontmatter fence must be followed by a newline", path);
493
+ }
494
+ let carry = firstChunk.slice(-8);
495
+ if (FRONTMATTER_FENCE_ANYWHERE_REGEX.test(firstChunk)) {
496
+ throw new FrontmatterParseError("frontmatter fence found after non-frontmatter content (frontmatter must start at byte 0)", path);
497
+ }
498
+ for (let offset = firstReadSize; offset < size; offset += chunkSize) {
499
+ const end = Math.min(offset + chunkSize, size);
500
+ const chunk = await file.slice(offset, end).text();
501
+ const sample = carry + chunk;
502
+ if (FRONTMATTER_FENCE_ANYWHERE_REGEX.test(sample)) {
503
+ throw new FrontmatterParseError("frontmatter fence found after non-frontmatter content (frontmatter must start at byte 0)", path);
504
+ }
505
+ carry = sample.slice(-8);
506
+ }
507
+ return null;
508
+ }
509
+ catch (error) {
510
+ if (error instanceof FrontmatterParseError) {
511
+ throw error;
512
+ }
513
+ return null;
514
+ }
515
+ }
267
516
  /**
268
517
  * Read frontmatter and return the offset where body starts.
269
518
  * Useful when you need both frontmatter and body.
@@ -1 +1 @@
1
- {"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../src/frontmatter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"frontmatter.js","sourceRoot":"","sources":["../src/frontmatter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,iBAAiB,GAAG,6BAA6B,CAAA;AACvD,MAAM,gCAAgC,GAAG,mBAAmB,CAAA;AAE5D,MAAM,OAAO,qBAAsB,SAAQ,KAAK;IAE5B;IACA;IAFlB,YACkB,MAAc,EACd,QAAiB;QAEjC,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QAClD,KAAK,CAAC,wBAAwB,QAAQ,KAAK,MAAM,EAAE,CAAC,CAAA;QAJpC,WAAM,GAAN,MAAM,CAAQ;QACd,aAAQ,GAAR,QAAQ,CAAS;QAIjC,IAAI,CAAC,IAAI,GAAG,uBAAuB,CAAA;IACrC,CAAC;CACF;AAaD,SAAS,2BAA2B,CAClC,OAAiC;IAEjC,OAAO;QACL,WAAW,EAAE,OAAO,EAAE,WAAW,IAAI,KAAK;KAC3C,CAAA;AACH,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gBAAgB,CAC9B,OAAe,EACf,OAAiC;IAEjC,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC7C,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAA;IAEvB,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IACrB,OAAO,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;AACvC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAAe,EACf,QAAiB,EACjB,OAAiC;IAEjC,MAAM,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;IAC1F,IAAI,qBAAqB,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,qBAAqB,CAAC,yCAAyC,EAAE,QAAQ,CAAC,CAAA;QACtF,CAAC;QACD,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;IAC3C,CAAC;IAED,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,qBAAqB,CAC7B,yDAAyD,EACzD,QAAQ,CACT,CAAA;IACH,CAAC;IAED,IAAI,gCAAgC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,qBAAqB,CAC7B,0FAA0F,EAC1F,QAAQ,CACT,CAAA;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CACxC,OAAe,EACf,IAAyB,EACzB,QAAiB,EACjB,OAAiC;IAEjC,MAAM,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;IAC1F,IAAI,qBAAqB,EAAE,CAAC;QAC1B,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC7C,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,qBAAqB,CAAC,yCAAyC,EAAE,QAAQ,CAAC,CAAA;QACtF,CAAC;QACD,OAAO,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;IACrD,CAAC;IAED,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,qBAAqB,CAC7B,yDAAyD,EACzD,QAAQ,CACT,CAAA;IACH,CAAC;IAED,IAAI,gCAAgC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QACnD,MAAM,IAAI,qBAAqB,CAC7B,0FAA0F,EAC1F,QAAQ,CACT,CAAA;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CAAC,OAAe;IACtD,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC7C,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AAChC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe;IACrD,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC7C,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,CAAA;IACpB,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;AACxB,CAAC;AAED,gFAAgF;AAChF,qBAAqB;AACrB,gFAAgF;AAEhF;;;GAGG;AACH,SAAS,eAAe,CACtB,IAAY,EACZ,OAAiC;IAEjC,MAAM,iBAAiB,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAA;IAC9D,MAAM,MAAM,GAA4B,EAAE,CAAA;IAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAEjC,IAAI,UAAU,GAAkB,IAAI,CAAA;IACpC,IAAI,YAAY,GAAa,EAAE,CAAA;IAC/B,IAAI,WAAW,GAAG,KAAK,CAAA;IACvB,IAAI,YAAY,GAAG,KAAK,CAAA;IACxB,IAAI,eAAe,GAAc,EAAE,CAAA;IACnC,IAAI,eAAe,GAAG,CAAC,CAAA;IAEvB,SAAS,WAAW;QAClB,IAAI,UAAU,EAAE,CAAC;YACf,IAAI,YAAY,EAAE,CAAC;gBACjB,qBAAqB;gBACrB,MAAM,CAAC,UAAU,CAAC,GAAG,eAAe,CAAA;gBACpC,eAAe,GAAG,EAAE,CAAA;gBACpB,YAAY,GAAG,KAAK,CAAA;YACtB,CAAC;iBAAM,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrC,MAAM,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAA;YACzE,CAAC;iBAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,MAAM,CAAC,UAAU,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC9C,CAAC;QACH,CAAC;QACD,UAAU,GAAG,IAAI,CAAA;QACjB,YAAY,GAAG,EAAE,CAAA;QACjB,WAAW,GAAG,KAAK,CAAA;IACrB,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,uCAAuC;QACvC,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;QACpD,IAAI,cAAc,IAAI,UAAU,IAAI,CAAC,YAAY,IAAI,CAAC,WAAW,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACjG,YAAY,GAAG,IAAI,CAAA;YACnB,WAAW,GAAG,KAAK,CAAA;YACnB,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YAC1C,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAA;YAClE,SAAQ;QACV,CAAC;QAED,+BAA+B;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAA;QAErE,IAAI,QAAQ,IAAI,CAAC,WAAW,EAAE,CAAC;YAC7B,4BAA4B;YAC5B,WAAW,EAAE,CAAA;YAEb,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;YACxB,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YAEnC,IAAI,QAAQ,KAAK,EAAE,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;gBAC5D,qDAAqD;gBACrD,WAAW,GAAG,IAAI,CAAA;gBAClB,eAAe,GAAG,CAAC,CAAA;YACrB,CAAC;iBAAM,CAAC;gBACN,YAAY,GAAG,CAAC,QAAQ,CAAC,CAAA;YAC3B,CAAC;QACH,CAAC;aAAM,IAAI,WAAW,IAAI,UAAU,IAAI,CAAC,YAAY,EAAE,CAAC;YACtD,kCAAkC;YAClC,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBACvB,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACvB,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;gBAChC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;oBACf,IAAI,eAAe,KAAK,CAAC,EAAE,CAAC;wBAC1B,eAAe,GAAG,MAAM,CAAA;oBAC1B,CAAC;oBACD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAA;gBAChD,CAAC;qBAAM,CAAC;oBACN,8CAA8C;oBAC9C,WAAW,EAAE,CAAA;oBACb,uBAAuB;oBACvB,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAA;oBACvE,IAAI,UAAU,EAAE,CAAC;wBACf,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;wBAC1B,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;wBACrC,IAAI,QAAQ,KAAK,EAAE,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;4BAC5D,WAAW,GAAG,IAAI,CAAA;4BAClB,eAAe,GAAG,CAAC,CAAA;wBACrB,CAAC;6BAAM,CAAC;4BACN,YAAY,GAAG,CAAC,QAAQ,CAAC,CAAA;wBAC3B,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,UAAU,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAC5C,sCAAsC;QACxC,CAAC;aAAM,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YAC7C,gBAAgB;YAChB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAA;YACxE,IAAI,WAAW,EAAE,CAAC;gBAChB,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;gBAC3B,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;gBACtC,IAAI,QAAQ,KAAK,EAAE,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;oBAC5D,WAAW,GAAG,IAAI,CAAA;oBAClB,eAAe,GAAG,CAAC,CAAA;gBACrB,CAAC;qBAAM,CAAC;oBACN,YAAY,GAAG,CAAC,QAAQ,CAAC,CAAA;gBAC3B,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,WAAW,EAAE,CAAA;IAEb,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;GAKG;AACH,SAAS,mBAAmB,CAC1B,IAAY,EACZ,IAAyB,EACzB,OAAiC;IAEjC,MAAM,iBAAiB,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAA;IAC9D,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAA;IAC1B,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAA;IAC/B,MAAM,MAAM,GAA4B,EAAE,CAAA;IAC1C,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO,MAAM,CAAA;IAEvC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IAEjC,IAAI,UAAU,GAAkB,IAAI,CAAA;IACpC,IAAI,YAAY,GAAa,EAAE,CAAA;IAC/B,IAAI,WAAW,GAAG,KAAK,CAAA;IACvB,IAAI,YAAY,GAAG,KAAK,CAAA;IACxB,IAAI,eAAe,GAAc,EAAE,CAAA;IACnC,IAAI,eAAe,GAAG,CAAC,CAAA;IAEvB,SAAS,WAAW;QAClB,IAAI,CAAC,UAAU;YAAE,OAAM;QAEvB,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACzB,IAAI,YAAY,EAAE,CAAC;gBACjB,MAAM,CAAC,UAAU,CAAC,GAAG,eAAe,CAAA;YACtC,CAAC;iBAAM,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrC,MAAM,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAA;YACzE,CAAC;iBAAM,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnC,MAAM,CAAC,UAAU,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC9C,CAAC;YACD,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAC9B,CAAC;QAED,UAAU,GAAG,IAAI,CAAA;QACjB,YAAY,GAAG,EAAE,CAAA;QACjB,WAAW,GAAG,KAAK,CAAA;QACnB,YAAY,GAAG,KAAK,CAAA;QACpB,eAAe,GAAG,EAAE,CAAA;QACpB,eAAe,GAAG,CAAC,CAAA;IACrB,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAA;QACpD,IAAI,cAAc,IAAI,UAAU,IAAI,CAAC,YAAY,IAAI,CAAC,WAAW,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACjG,YAAY,GAAG,IAAI,CAAA;YACnB,WAAW,GAAG,KAAK,CAAA;YACnB,MAAM,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YAC1C,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBACzB,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAA;YACpE,CAAC;YACD,SAAQ;QACV,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAA;QACrE,IAAI,QAAQ,IAAI,CAAC,WAAW,EAAE,CAAC;YAC7B,WAAW,EAAE,CAAA;YACb,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC;gBAAE,MAAK;YAE/B,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;YACxB,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;YAEnC,IAAI,QAAQ,KAAK,EAAE,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;gBAC5D,WAAW,GAAG,IAAI,CAAA;gBAClB,eAAe,GAAG,CAAC,CAAA;YACrB,CAAC;iBAAM,CAAC;gBACN,YAAY,GAAG,CAAC,QAAQ,CAAC,CAAA;YAC3B,CAAC;YACD,SAAQ;QACV,CAAC;QAED,IAAI,WAAW,IAAI,UAAU,IAAI,CAAC,YAAY,EAAE,CAAC;YAC/C,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;gBACvB,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;oBAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBAC/C,SAAQ;YACV,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAChC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBACf,IAAI,eAAe,KAAK,CAAC,EAAE,CAAC;oBAC1B,eAAe,GAAG,MAAM,CAAA;gBAC1B,CAAC;gBACD,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC;oBAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAA;gBACxE,SAAQ;YACV,CAAC;YAED,sDAAsD;YACtD,WAAW,EAAE,CAAA;YACb,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC;gBAAE,MAAK;YAC/B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAA;YACvE,IAAI,UAAU,EAAE,CAAC;gBACf,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAA;gBAC1B,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;gBACrC,IAAI,QAAQ,KAAK,EAAE,IAAI,QAAQ,KAAK,GAAG,IAAI,QAAQ,KAAK,GAAG,EAAE,CAAC;oBAC5D,WAAW,GAAG,IAAI,CAAA;oBAClB,eAAe,GAAG,CAAC,CAAA;gBACrB,CAAC;qBAAM,CAAC;oBACN,YAAY,GAAG,CAAC,QAAQ,CAAC,CAAA;gBAC3B,CAAC;YACH,CAAC;YACD,SAAQ;QACV,CAAC;IACH,CAAC;IAED,WAAW,EAAE,CAAA;IACb,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CACrB,KAAa,EACb,OAA0C;IAE1C,gBAAgB;IAChB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QACrG,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC3B,CAAC;IAED,kBAAkB;IAClB,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACjD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAChC,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;YAAE,OAAO,EAAE,CAAA;QAClC,OAAO,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,CAAA;IAC7E,CAAC;IAED,qBAAqB;IACrB,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,IAAI,CAAA;IACjC,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,KAAK,CAAA;IAEnC,iBAAiB;IACjB,IAAI,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,IAAI,CAAA;IAElD,oBAAoB;IACpB,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IACzB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,EAAE;QAAE,OAAO,GAAG,CAAA;IAE3C,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,mCAAmC;QACnC,IAAI,yCAAyC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAA;YAC5B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAAE,OAAO,IAAI,CAAC,WAAW,EAAE,CAAA;QACvD,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAA;AACd,CAAC;AAED,gFAAgF;AAChF,yBAAyB;AACzB,gFAAgF;AAEhF;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,IAAY,EACZ,QAAQ,GAAG,IAAI,EACf,OAAiC;IAEjC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QAEtB,mCAAmC;QACnC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;QAC5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,IAAI,EAAE,CAAA;QAEtD,OAAO,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,IAAY,EACZ,SAAS,GAAG,IAAI,EAChB,OAAiC;IAEjC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QACtB,IAAI,IAAI,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QAE3B,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QAC/C,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,IAAI,EAAE,CAAA;QAE5D,MAAM,qBAAqB,GAAG,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;QAEhG,IAAI,qBAAqB,EAAE,CAAC;YAC1B,IAAI,OAAO,GAAG,UAAU,CAAA;YACxB,IAAI,MAAM,GAAG,aAAa,CAAA;YAE1B,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACjC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;oBACnB,MAAM,IAAI,qBAAqB,CAAC,yCAAyC,EAAE,IAAI,CAAC,CAAA;gBAClF,CAAC;gBAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,SAAS,EAAE,IAAI,CAAC,CAAA;gBAC9C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;gBACtD,OAAO,IAAI,SAAS,CAAA;gBACpB,MAAM,GAAG,GAAG,CAAA;YACd,CAAC;YAED,OAAO,sBAAsB,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;QACvD,CAAC;QAED,IAAI,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,qBAAqB,CAC7B,yDAAyD,EACzD,IAAI,CACL,CAAA;QACH,CAAC;QAED,IAAI,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAChC,IAAI,gCAAgC,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,qBAAqB,CAC7B,0FAA0F,EAC1F,IAAI,CACL,CAAA;QACH,CAAC;QAED,KAAK,IAAI,MAAM,GAAG,aAAa,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,SAAS,EAAE,CAAC;YACpE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,SAAS,EAAE,IAAI,CAAC,CAAA;YAC9C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;YAClD,MAAM,MAAM,GAAG,KAAK,GAAG,KAAK,CAAA;YAE5B,IAAI,gCAAgC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClD,MAAM,IAAI,qBAAqB,CAC7B,0FAA0F,EAC1F,IAAI,CACL,CAAA;YACH,CAAC;YAED,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAC1B,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,qBAAqB,EAAE,CAAC;YAC3C,MAAM,KAAK,CAAA;QACb,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,IAAY,EACZ,IAAyB,EACzB,SAAS,GAAG,IAAI,EAChB,OAAiC;IAEjC,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;QACtB,IAAI,IAAI,KAAK,CAAC;YAAE,OAAO,IAAI,CAAA;QAE3B,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;QAC/C,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,IAAI,EAAE,CAAA;QAE5D,MAAM,qBAAqB,GACzB,UAAU,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,CAAA;QAEpE,IAAI,qBAAqB,EAAE,CAAC;YAC1B,IAAI,OAAO,GAAG,UAAU,CAAA;YACxB,IAAI,MAAM,GAAG,aAAa,CAAA;YAE1B,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACjC,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;oBACnB,MAAM,IAAI,qBAAqB,CAAC,yCAAyC,EAAE,IAAI,CAAC,CAAA;gBAClF,CAAC;gBAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,SAAS,EAAE,IAAI,CAAC,CAAA;gBAC9C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;gBACtD,OAAO,IAAI,SAAS,CAAA;gBACpB,MAAM,GAAG,GAAG,CAAA;YACd,CAAC;YAED,OAAO,0BAA0B,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;QACjE,CAAC;QAED,IAAI,UAAU,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,qBAAqB,CAC7B,yDAAyD,EACzD,IAAI,CACL,CAAA;QACH,CAAC;QAED,IAAI,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAChC,IAAI,gCAAgC,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACtD,MAAM,IAAI,qBAAqB,CAC7B,0FAA0F,EAC1F,IAAI,CACL,CAAA;QACH,CAAC;QAED,KAAK,IAAI,MAAM,GAAG,aAAa,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,IAAI,SAAS,EAAE,CAAC;YACpE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,GAAG,SAAS,EAAE,IAAI,CAAC,CAAA;YAC9C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;YAClD,MAAM,MAAM,GAAG,KAAK,GAAG,KAAK,CAAA;YAE5B,IAAI,gCAAgC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClD,MAAM,IAAI,qBAAqB,CAC7B,0FAA0F,EAC1F,IAAI,CACL,CAAA;YACH,CAAC;YAED,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;QAC1B,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,qBAAqB,EAAE,CAAC;YAC3C,MAAM,KAAK,CAAA;QACb,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,IAAY;IAEZ,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC3B,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;QAEjC,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;QAC7C,MAAM,UAAU,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAA;QAEnD,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,CAAA;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,EAAE,CAAA;IAC7C,CAAC;AACH,CAAC"}
package/dist/index.d.ts CHANGED
@@ -12,7 +12,7 @@ export type { FileMarkdownOptions, FileMarkdownResult } from "./file-markdown";
12
12
  export { staticContent, staticResolver } from "./static";
13
13
  export { compilePattern, createParamsSchema } from "./path-pattern";
14
14
  export type { CompiledPattern, ExtractParams, PathParams, } from "./path-pattern";
15
- export { FrontmatterParseError, parseFrontmatter, parseFrontmatterStrict, extractFrontmatterString, getFrontmatterEndOffset, readFrontmatter, readFrontmatterWithOffset, } from "./frontmatter";
15
+ export { FrontmatterParseError, parseFrontmatter, parseFrontmatterStrict, parseFrontmatterPickStrict, extractFrontmatterString, getFrontmatterEndOffset, readFrontmatter, readFrontmatterPickStrict, readFrontmatterWithOffset, } from "./frontmatter";
16
16
  export { parseMarkdownBody, extractHeadings, slugify, markdownToHtml, readMarkdownBody, readParsedBody, } from "./markdown";
17
17
  export type { BodyOptions, BodyResult, BodyShape, Heading, } from "./markdown";
18
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAM9E,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAMxD,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnE,YAAY,EACV,eAAe,EACf,aAAa,EACb,UAAU,GACX,MAAM,gBAAgB,CAAA;AAMvB,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,yBAAyB,GAC1B,MAAM,eAAe,CAAA;AAMtB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,cAAc,GACf,MAAM,YAAY,CAAA;AAEnB,YAAY,EACV,WAAW,EACX,UAAU,EACV,SAAS,EACT,OAAO,GACR,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAC9C,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAM9E,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAMxD,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AACnE,YAAY,EACV,eAAe,EACf,aAAa,EACb,UAAU,GACX,MAAM,gBAAgB,CAAA;AAMvB,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,0BAA0B,EAC1B,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,eAAe,CAAA;AAMtB,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,cAAc,GACf,MAAM,YAAY,CAAA;AAEnB,YAAY,EACV,WAAW,EACX,UAAU,EACV,SAAS,EACT,OAAO,GACR,MAAM,YAAY,CAAA"}
package/dist/index.js CHANGED
@@ -22,7 +22,7 @@ export { compilePattern, createParamsSchema } from "./path-pattern";
22
22
  // =============================================================================
23
23
  // Frontmatter Utilities
24
24
  // =============================================================================
25
- export { FrontmatterParseError, parseFrontmatter, parseFrontmatterStrict, extractFrontmatterString, getFrontmatterEndOffset, readFrontmatter, readFrontmatterWithOffset, } from "./frontmatter";
25
+ export { FrontmatterParseError, parseFrontmatter, parseFrontmatterStrict, parseFrontmatterPickStrict, extractFrontmatterString, getFrontmatterEndOffset, readFrontmatter, readFrontmatterPickStrict, readFrontmatterWithOffset, } from "./frontmatter";
26
26
  // =============================================================================
27
27
  // Markdown Utilities
28
28
  // =============================================================================
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,gFAAgF;AAChF,yCAAyC;AACzC,gFAAgF;AAEhF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAG9C,gFAAgF;AAChF,oDAAoD;AACpD,gFAAgF;AAEhF,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAExD,gFAAgF;AAChF,yBAAyB;AACzB,gFAAgF;AAEhF,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAOnE,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAEhF,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,yBAAyB,GAC1B,MAAM,eAAe,CAAA;AAEtB,gFAAgF;AAChF,qBAAqB;AACrB,gFAAgF;AAEhF,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,cAAc,GACf,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,gFAAgF;AAChF,yCAAyC;AACzC,gFAAgF;AAEhF,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAA;AAG9C,gFAAgF;AAChF,oDAAoD;AACpD,gFAAgF;AAEhF,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,UAAU,CAAA;AAExD,gFAAgF;AAChF,yBAAyB;AACzB,gFAAgF;AAEhF,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAOnE,gFAAgF;AAChF,wBAAwB;AACxB,gFAAgF;AAEhF,OAAO,EACL,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,0BAA0B,EAC1B,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,EACf,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,eAAe,CAAA;AAEtB,gFAAgF;AAChF,qBAAqB;AACrB,gFAAgF;AAEhF,OAAO,EACL,iBAAiB,EACjB,eAAe,EACf,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,cAAc,GACf,MAAM,YAAY,CAAA"}
package/package.json CHANGED
@@ -1,22 +1,22 @@
1
1
  {
2
2
  "name": "@piqit/resolvers",
3
- "version": "0.0.8",
3
+ "version": "0.0.11-rc.1",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "types": "./dist/index.d.ts",
7
7
  "exports": {
8
8
  ".": {
9
- "bun": "./src/index.ts",
9
+ "bun": "./dist/index.js",
10
10
  "types": "./dist/index.d.ts",
11
11
  "default": "./dist/index.js"
12
12
  },
13
13
  "./edge": {
14
- "bun": "./src/edge.ts",
14
+ "bun": "./dist/edge.js",
15
15
  "types": "./dist/edge.d.ts",
16
16
  "default": "./dist/edge.js"
17
17
  },
18
18
  "./static": {
19
- "bun": "./src/static.ts",
19
+ "bun": "./dist/static.js",
20
20
  "types": "./dist/static.d.ts",
21
21
  "default": "./dist/static.js"
22
22
  }
@@ -25,7 +25,7 @@
25
25
  "dist"
26
26
  ],
27
27
  "dependencies": {
28
- "piqit": "0.0.8"
28
+ "piqit": "0.0.11-rc.1"
29
29
  },
30
30
  "devDependencies": {
31
31
  "@types/bun": "latest",