@paperclipai/shared 2026.618.0-canary.2 → 2026.618.0-canary.4

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.
@@ -33,7 +33,7 @@ export function parseFrontmatterMarkdown(raw) {
33
33
  if (closing < 0) {
34
34
  return { frontmatter: {}, body: normalized.trim(), hasFrontmatter: false };
35
35
  }
36
- const frontmatterRaw = normalized.slice(4, closing).trim();
36
+ const frontmatterRaw = normalized.slice(4, closing);
37
37
  const body = normalized.slice(closing + 5).trim();
38
38
  return {
39
39
  frontmatter: parseYamlFrontmatter(frontmatterRaw),
@@ -43,9 +43,10 @@ export function parseFrontmatterMarkdown(raw) {
43
43
  }
44
44
  function parseYamlFrontmatter(raw) {
45
45
  const prepared = prepareYamlLines(raw);
46
- if (prepared.length === 0)
46
+ const firstContentIndex = prepared.findIndex((line) => !line.isBlank && !line.isComment);
47
+ if (firstContentIndex < 0)
47
48
  return {};
48
- const parsed = parseYamlBlock(prepared, 0, prepared[0].indent);
49
+ const parsed = parseYamlBlock(prepared, firstContentIndex, prepared[firstContentIndex].indent);
49
50
  return isPlainRecord(parsed.value) ? parsed.value : {};
50
51
  }
51
52
  function prepareYamlLines(raw) {
@@ -53,12 +54,17 @@ function prepareYamlLines(raw) {
53
54
  .split("\n")
54
55
  .map((line) => ({
55
56
  indent: line.match(/^ */)?.[0].length ?? 0,
57
+ raw: line,
56
58
  content: line.trim(),
57
- }))
58
- .filter((line) => line.content.length > 0 && !line.content.startsWith("#"));
59
+ isBlank: line.trim().length === 0,
60
+ isComment: line.trim().startsWith("#"),
61
+ }));
59
62
  }
60
63
  function parseYamlBlock(lines, startIndex, indentLevel) {
61
64
  let index = startIndex;
65
+ while (index < lines.length && (lines[index].isBlank || lines[index].isComment)) {
66
+ index += 1;
67
+ }
62
68
  if (index >= lines.length || lines[index].indent < indentLevel) {
63
69
  return { value: {}, nextIndex: index };
64
70
  }
@@ -67,6 +73,10 @@ function parseYamlBlock(lines, startIndex, indentLevel) {
67
73
  const values = [];
68
74
  while (index < lines.length) {
69
75
  const line = lines[index];
76
+ if (line.isBlank || line.isComment) {
77
+ index += 1;
78
+ continue;
79
+ }
70
80
  if (line.indent < indentLevel)
71
81
  break;
72
82
  if (line.indent !== indentLevel || !line.content.startsWith("-"))
@@ -79,6 +89,32 @@ function parseYamlBlock(lines, startIndex, indentLevel) {
79
89
  index = nested.nextIndex;
80
90
  continue;
81
91
  }
92
+ if (isYamlBlockScalarIndicator(remainder)) {
93
+ const block = parseYamlBlockScalar(lines, index, indentLevel, remainder);
94
+ values.push(block.value);
95
+ index = block.nextIndex;
96
+ continue;
97
+ }
98
+ const inlineObjectSeparator = remainder.indexOf(":");
99
+ if (inlineObjectSeparator > 0
100
+ && !remainder.startsWith("\"")
101
+ && !remainder.startsWith("{")
102
+ && !remainder.startsWith("[")) {
103
+ const key = remainder.slice(0, inlineObjectSeparator).trim();
104
+ const rawValue = remainder.slice(inlineObjectSeparator + 1).trim();
105
+ const nextObject = {
106
+ [key]: parseYamlScalar(rawValue),
107
+ };
108
+ if (index < lines.length && lines[index].indent > indentLevel) {
109
+ const nested = parseYamlBlock(lines, index, indentLevel + 2);
110
+ if (isPlainRecord(nested.value)) {
111
+ Object.assign(nextObject, nested.value);
112
+ }
113
+ index = nested.nextIndex;
114
+ }
115
+ values.push(nextObject);
116
+ continue;
117
+ }
82
118
  values.push(parseYamlScalar(remainder));
83
119
  }
84
120
  return { value: values, nextIndex: index };
@@ -86,6 +122,10 @@ function parseYamlBlock(lines, startIndex, indentLevel) {
86
122
  const record = {};
87
123
  while (index < lines.length) {
88
124
  const line = lines[index];
125
+ if (line.isBlank || line.isComment) {
126
+ index += 1;
127
+ continue;
128
+ }
89
129
  if (line.indent < indentLevel)
90
130
  break;
91
131
  if (line.indent !== indentLevel) {
@@ -106,10 +146,82 @@ function parseYamlBlock(lines, startIndex, indentLevel) {
106
146
  index = nested.nextIndex;
107
147
  continue;
108
148
  }
149
+ if (isYamlBlockScalarIndicator(remainder)) {
150
+ const block = parseYamlBlockScalar(lines, index, indentLevel, remainder);
151
+ record[key] = block.value;
152
+ index = block.nextIndex;
153
+ continue;
154
+ }
109
155
  record[key] = parseYamlScalar(remainder);
110
156
  }
111
157
  return { value: record, nextIndex: index };
112
158
  }
159
+ function isYamlBlockScalarIndicator(rawValue) {
160
+ return /^[>|][+-]?$/.test(rawValue.trim());
161
+ }
162
+ function parseYamlBlockScalar(lines, startIndex, parentIndent, indicator) {
163
+ const trimmedIndicator = indicator.trim();
164
+ const style = trimmedIndicator[0];
165
+ const chomp = trimmedIndicator.endsWith("+")
166
+ ? "+"
167
+ : trimmedIndicator.endsWith("-")
168
+ ? "-"
169
+ : "";
170
+ let index = startIndex;
171
+ const collected = [];
172
+ while (index < lines.length) {
173
+ const line = lines[index];
174
+ if (!line.isBlank && line.indent <= parentIndent)
175
+ break;
176
+ collected.push({ indent: line.indent, raw: line.raw, isBlank: line.isBlank });
177
+ index += 1;
178
+ }
179
+ const contentLines = collected.filter((line) => !line.isBlank);
180
+ if (contentLines.length === 0)
181
+ return { value: "", nextIndex: index };
182
+ const blockIndent = Math.min(...contentLines.map((line) => line.indent));
183
+ const normalizedLines = collected.map((line) => (line.isBlank ? "" : line.raw.slice(Math.min(blockIndent, line.raw.length))));
184
+ const baseValue = style === "|"
185
+ ? normalizedLines.join("\n")
186
+ : foldYamlBlockScalarLines(normalizedLines);
187
+ return {
188
+ value: applyYamlBlockChomp(baseValue, chomp),
189
+ nextIndex: index,
190
+ };
191
+ }
192
+ function foldYamlBlockScalarLines(lines) {
193
+ let value = "";
194
+ let pendingBlankLines = 0;
195
+ for (const line of lines) {
196
+ if (line === "") {
197
+ pendingBlankLines += 1;
198
+ continue;
199
+ }
200
+ if (value.length === 0) {
201
+ value = `${"\n".repeat(pendingBlankLines)}${line}`;
202
+ }
203
+ else if (pendingBlankLines > 0) {
204
+ value += `${"\n".repeat(pendingBlankLines + 1)}${line}`;
205
+ }
206
+ else {
207
+ value += ` ${line}`;
208
+ }
209
+ pendingBlankLines = 0;
210
+ }
211
+ if (pendingBlankLines > 0 && value.length > 0) {
212
+ value += "\n".repeat(pendingBlankLines);
213
+ }
214
+ return value;
215
+ }
216
+ function applyYamlBlockChomp(value, chomp) {
217
+ if (chomp === "+")
218
+ return value;
219
+ if (chomp === "-")
220
+ return value.replace(/\n+$/u, "");
221
+ if (value.length === 0)
222
+ return value;
223
+ return value.replace(/\n+$/u, "") + "\n";
224
+ }
113
225
  function parseYamlScalar(rawValue) {
114
226
  const trimmed = rawValue.trim();
115
227
  if (trimmed === "")
@@ -124,7 +236,7 @@ function parseYamlScalar(rawValue) {
124
236
  return [];
125
237
  if (trimmed === "{}")
126
238
  return {};
127
- if (/^-?\d+(\.\d)?\d*$/.test(trimmed))
239
+ if (/^-?\d+(\.\d+)?$/.test(trimmed))
128
240
  return Number(trimmed);
129
241
  if (trimmed.startsWith("\"") ||
130
242
  trimmed.startsWith("[") ||
@@ -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":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=frontmatter.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frontmatter.test.d.ts","sourceRoot":"","sources":["../src/frontmatter.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,90 @@
1
+ import { describe, expect, it } from "vitest";
2
+ import { parseFrontmatterMarkdown } from "./frontmatter.js";
3
+ describe("parseFrontmatterMarkdown", () => {
4
+ it("parses folded and literal YAML block scalars", () => {
5
+ const folded = parseFrontmatterMarkdown([
6
+ "---",
7
+ "name: Folded",
8
+ "description: >",
9
+ " First line",
10
+ " second line",
11
+ "",
12
+ " Third paragraph",
13
+ "---",
14
+ "",
15
+ "Body",
16
+ ].join("\n"));
17
+ expect(folded.frontmatter.description).toBe("First line second line\n\nThird paragraph\n");
18
+ const literal = parseFrontmatterMarkdown([
19
+ "---",
20
+ "name: Literal",
21
+ "description: |",
22
+ " First line",
23
+ " second line",
24
+ "---",
25
+ "",
26
+ "Body",
27
+ ].join("\n"));
28
+ expect(literal.frontmatter.description).toBe("First line\nsecond line\n");
29
+ });
30
+ it("respects block-scalar chomping indicators", () => {
31
+ const foldedStrip = parseFrontmatterMarkdown([
32
+ "---",
33
+ "description: >-",
34
+ " First line",
35
+ " second line",
36
+ "",
37
+ " Third paragraph",
38
+ "---",
39
+ "",
40
+ "Body",
41
+ ].join("\n"));
42
+ expect(foldedStrip.frontmatter.description).toBe("First line second line\n\nThird paragraph");
43
+ const literalKeep = parseFrontmatterMarkdown([
44
+ "---",
45
+ "description: |+",
46
+ " First line",
47
+ " second line",
48
+ "",
49
+ "",
50
+ "---",
51
+ "",
52
+ "Body",
53
+ ].join("\n"));
54
+ expect(literalKeep.frontmatter.description).toBe("First line\nsecond line\n\n");
55
+ });
56
+ it("parses inline object array items nested under frontmatter keys", () => {
57
+ const parsed = parseFrontmatterMarkdown([
58
+ "---",
59
+ "metadata:",
60
+ " sources:",
61
+ " - kind: github-dir",
62
+ " repo: paperclipai/paperclip",
63
+ " path: skills/paperclip",
64
+ "---",
65
+ "",
66
+ "Body",
67
+ ].join("\n"));
68
+ expect(parsed.frontmatter).toMatchObject({
69
+ metadata: {
70
+ sources: [
71
+ {
72
+ kind: "github-dir",
73
+ repo: "paperclipai/paperclip",
74
+ path: "skills/paperclip",
75
+ },
76
+ ],
77
+ },
78
+ });
79
+ });
80
+ it("does not treat trailing-dot decimals as numbers", () => {
81
+ const parsed = parseFrontmatterMarkdown([
82
+ "---",
83
+ "version: 1.",
84
+ "---",
85
+ "",
86
+ ].join("\n"));
87
+ expect(parsed.frontmatter.version).toBe("1.");
88
+ });
89
+ });
90
+ //# sourceMappingURL=frontmatter.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frontmatter.test.js","sourceRoot":"","sources":["../src/frontmatter.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;IACxC,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;QACtD,MAAM,MAAM,GAAG,wBAAwB,CAAC;YACtC,KAAK;YACL,cAAc;YACd,gBAAgB;YAChB,cAAc;YACd,eAAe;YACf,EAAE;YACF,mBAAmB;YACnB,KAAK;YACL,EAAE;YACF,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEd,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;QAE3F,MAAM,OAAO,GAAG,wBAAwB,CAAC;YACvC,KAAK;YACL,eAAe;YACf,gBAAgB;YAChB,cAAc;YACd,eAAe;YACf,KAAK;YACL,EAAE;YACF,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEd,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACnD,MAAM,WAAW,GAAG,wBAAwB,CAAC;YAC3C,KAAK;YACL,iBAAiB;YACjB,cAAc;YACd,eAAe;YACf,EAAE;YACF,mBAAmB;YACnB,KAAK;YACL,EAAE;YACF,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEd,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;QAE9F,MAAM,WAAW,GAAG,wBAAwB,CAAC;YAC3C,KAAK;YACL,iBAAiB;YACjB,cAAc;YACd,eAAe;YACf,EAAE;YACF,EAAE;YACF,KAAK;YACL,EAAE;YACF,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEd,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,MAAM,MAAM,GAAG,wBAAwB,CAAC;YACtC,KAAK;YACL,WAAW;YACX,YAAY;YACZ,wBAAwB;YACxB,mCAAmC;YACnC,8BAA8B;YAC9B,KAAK;YACL,EAAE;YACF,MAAM;SACP,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEd,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,aAAa,CAAC;YACvC,QAAQ,EAAE;gBACR,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,YAAY;wBAClB,IAAI,EAAE,uBAAuB;wBAC7B,IAAI,EAAE,kBAAkB;qBACzB;iBACF;aACF;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,MAAM,GAAG,wBAAwB,CAAC;YACtC,KAAK;YACL,aAAa;YACb,KAAK;YACL,EAAE;SACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAEd,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paperclipai/shared",
3
- "version": "2026.618.0-canary.2",
3
+ "version": "2026.618.0-canary.4",
4
4
  "license": "MIT",
5
5
  "homepage": "https://github.com/paperclipai/paperclip",
6
6
  "bugs": {