@quillmark/registry 0.1.10 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,8 +2,26 @@ import type { QuillBundle, QuillManifest, QuillSource } from '../types.js';
2
2
  /**
3
3
  * Node.js-only QuillSource that reads Quill directories from the local filesystem.
4
4
  *
5
- * Each subdirectory of the provided `quillsDir` is treated as a quill.
6
- * Each must contain a `Quill.yaml` with at least `name` and `version` fields.
5
+ * Expects a versioned directory layout:
6
+ *
7
+ * ```
8
+ * quillsDir/
9
+ * usaf_memo/
10
+ * 0.1.0/
11
+ * Quill.yaml
12
+ * template.typ
13
+ * 1.0.0/
14
+ * Quill.yaml
15
+ * template.typ
16
+ * classic_resume/
17
+ * 2.1.0/
18
+ * Quill.yaml
19
+ * template.typ
20
+ * ```
21
+ *
22
+ * Each version directory must contain a `Quill.yaml` with at least `name` and `version`
23
+ * fields. The `name` must match the parent directory and `version` must match the
24
+ * version directory name.
7
25
  *
8
26
  * Also exposes `packageForHttp(outputDir)` to zip quills and write a manifest
9
27
  * for static hosting.
@@ -15,10 +33,13 @@ export declare class FileSystemSource implements QuillSource {
15
33
  loadQuill(name: string, version?: string): Promise<QuillBundle>;
16
34
  /**
17
35
  * Packages all quills for HTTP static hosting.
18
- * Zips each quill directory and writes the zips plus a `manifest.json` to `outputDir`.
36
+ * Zips each quill version directory and writes the zips plus a `manifest.json` to `outputDir`.
19
37
  */
20
38
  packageForHttp(outputDir: string): Promise<void>;
21
- /** Finds the directory for a quill by scanning subdirectories and matching metadata. */
22
- private findQuillDir;
39
+ /**
40
+ * Resolves the latest version for a quill by listing version directories
41
+ * and picking the highest semver.
42
+ */
43
+ private resolveLatestVersion;
23
44
  }
24
45
  //# sourceMappingURL=file-system-source.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-system-source.d.ts","sourceRoot":"","sources":["../../src/sources/file-system-source.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAiB,WAAW,EAAE,MAAM,aAAa,CAAC;AAuD1F;;;;;;;;GAQG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IACnD,OAAO,CAAC,SAAS,CAAS;gBAEd,SAAS,EAAE,MAAM;IAIvB,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC;IAuBrC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAwCrE;;;OAGG;IACG,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBtD,wFAAwF;YAC1E,YAAY;CAqB1B"}
1
+ {"version":3,"file":"file-system-source.d.ts","sourceRoot":"","sources":["../../src/sources/file-system-source.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAiB,WAAW,EAAE,MAAM,aAAa,CAAC;AAuF1F;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,gBAAiB,YAAW,WAAW;IACnD,OAAO,CAAC,SAAS,CAAS;gBAEd,SAAS,EAAE,MAAM;IAIvB,WAAW,IAAI,OAAO,CAAC,aAAa,CAAC;IAsDrC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAkErE;;;OAGG;IACG,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAqBtD;;;OAGG;YACW,oBAAoB;CA+BlC"}
@@ -42,11 +42,57 @@ async function readQuillMetadata(quillDir) {
42
42
  ...(typeof parsed.description === 'string' ? { description: parsed.description } : {}),
43
43
  };
44
44
  }
45
+ /** Lists subdirectories of a given directory. Filters out dot-prefixed entries. */
46
+ async function listSubdirectories(dirPath) {
47
+ const entries = await fs.readdir(dirPath, { withFileTypes: true });
48
+ return entries
49
+ .filter((e) => e.isDirectory() && !e.name.startsWith('.'))
50
+ .map((e) => e.name);
51
+ }
52
+ /** Returns true if the string looks like a semver version (digits and dots only). */
53
+ function isSemver(value) {
54
+ return /^\d+\.\d+\.\d+/.test(value);
55
+ }
56
+ /**
57
+ * Compares two semver version strings. Returns a negative number if a < b,
58
+ * zero if equal, positive if a > b. Handles versions with any number of
59
+ * numeric segments (e.g., "1.0.0", "0.1", "2.1.0").
60
+ */
61
+ function compareSemver(a, b) {
62
+ const partsA = a.split('.').map(Number);
63
+ const partsB = b.split('.').map(Number);
64
+ const len = Math.max(partsA.length, partsB.length);
65
+ for (let i = 0; i < len; i++) {
66
+ const numA = partsA[i] ?? 0;
67
+ const numB = partsB[i] ?? 0;
68
+ if (numA !== numB)
69
+ return numA - numB;
70
+ }
71
+ return 0;
72
+ }
45
73
  /**
46
74
  * Node.js-only QuillSource that reads Quill directories from the local filesystem.
47
75
  *
48
- * Each subdirectory of the provided `quillsDir` is treated as a quill.
49
- * Each must contain a `Quill.yaml` with at least `name` and `version` fields.
76
+ * Expects a versioned directory layout:
77
+ *
78
+ * ```
79
+ * quillsDir/
80
+ * usaf_memo/
81
+ * 0.1.0/
82
+ * Quill.yaml
83
+ * template.typ
84
+ * 1.0.0/
85
+ * Quill.yaml
86
+ * template.typ
87
+ * classic_resume/
88
+ * 2.1.0/
89
+ * Quill.yaml
90
+ * template.typ
91
+ * ```
92
+ *
93
+ * Each version directory must contain a `Quill.yaml` with at least `name` and `version`
94
+ * fields. The `name` must match the parent directory and `version` must match the
95
+ * version directory name.
50
96
  *
51
97
  * Also exposes `packageForHttp(outputDir)` to zip quills and write a manifest
52
98
  * for static hosting.
@@ -57,35 +103,81 @@ export class FileSystemSource {
57
103
  this.quillsDir = quillsDir;
58
104
  }
59
105
  async getManifest() {
60
- let entries;
106
+ let quillNames;
61
107
  try {
62
- const dirEntries = await fs.readdir(this.quillsDir, { withFileTypes: true });
63
- entries = dirEntries.filter((e) => e.isDirectory()).map((e) => e.name);
108
+ quillNames = await listSubdirectories(this.quillsDir);
64
109
  }
65
110
  catch (err) {
66
111
  throw new RegistryError('source_unavailable', `Failed to read quills directory: ${this.quillsDir}`, { cause: err });
67
112
  }
68
113
  const quills = [];
69
- for (const dirName of entries) {
70
- const quillDir = path.join(this.quillsDir, dirName);
71
- const metadata = await readQuillMetadata(quillDir);
72
- quills.push(metadata);
114
+ for (const quillName of quillNames) {
115
+ const quillNameDir = path.join(this.quillsDir, quillName);
116
+ let versionDirs;
117
+ try {
118
+ versionDirs = await listSubdirectories(quillNameDir);
119
+ }
120
+ catch {
121
+ // Skip entries that aren't readable directories
122
+ continue;
123
+ }
124
+ for (const versionDir of versionDirs) {
125
+ if (!isSemver(versionDir))
126
+ continue;
127
+ const versionPath = path.join(quillNameDir, versionDir);
128
+ try {
129
+ const metadata = await readQuillMetadata(versionPath);
130
+ // Validate name/version match directory names
131
+ if (metadata.name !== quillName) {
132
+ throw new RegistryError('load_error', `Quill.yaml name "${metadata.name}" does not match directory name "${quillName}"`);
133
+ }
134
+ if (metadata.version !== versionDir) {
135
+ throw new RegistryError('load_error', `Quill.yaml version "${metadata.version}" does not match directory name "${versionDir}"`);
136
+ }
137
+ quills.push(metadata);
138
+ }
139
+ catch (err) {
140
+ if (err instanceof RegistryError)
141
+ throw err;
142
+ // Skip directories without valid Quill.yaml
143
+ }
144
+ }
73
145
  }
74
146
  return { quills };
75
147
  }
76
148
  async loadQuill(name, version) {
77
- const manifest = await this.getManifest();
78
- const entry = manifest.quills.find((q) => q.name === name && (version === undefined || q.version === version));
79
- if (!entry) {
80
- if (version && manifest.quills.some((q) => q.name === name)) {
81
- throw new RegistryError('version_not_found', `Quill "${name}" exists but version "${version}" was not found`, { quillName: name, version });
149
+ // If no version specified, resolve to latest
150
+ const resolvedVersion = version ?? (await this.resolveLatestVersion(name));
151
+ const quillDir = path.join(this.quillsDir, name, resolvedVersion);
152
+ // Verify directory exists
153
+ try {
154
+ await fs.access(quillDir);
155
+ }
156
+ catch {
157
+ // Check if the quill name exists at all to give a better error
158
+ const nameDir = path.join(this.quillsDir, name);
159
+ try {
160
+ await fs.access(nameDir);
161
+ // Name exists but version doesn't
162
+ throw new RegistryError('version_not_found', `Quill "${name}" exists but version "${resolvedVersion}" was not found`, { quillName: name, version: resolvedVersion });
82
163
  }
83
- throw new RegistryError('quill_not_found', `Quill "${name}" not found in source`, {
84
- quillName: name,
85
- version,
86
- });
164
+ catch (err) {
165
+ if (err instanceof RegistryError)
166
+ throw err;
167
+ throw new RegistryError('quill_not_found', `Quill "${name}" not found in source`, {
168
+ quillName: name,
169
+ version: resolvedVersion,
170
+ });
171
+ }
172
+ }
173
+ const metadata = await readQuillMetadata(quillDir);
174
+ // Validate name/version match directory path
175
+ if (metadata.name !== name) {
176
+ throw new RegistryError('load_error', `Quill.yaml name "${metadata.name}" does not match expected name "${name}"`, { quillName: name, version: resolvedVersion });
177
+ }
178
+ if (metadata.version !== resolvedVersion) {
179
+ throw new RegistryError('load_error', `Quill.yaml version "${metadata.version}" does not match expected version "${resolvedVersion}"`, { quillName: name, version: resolvedVersion });
87
180
  }
88
- const quillDir = await this.findQuillDir(entry.name, entry.version);
89
181
  let files;
90
182
  try {
91
183
  files = await readDirRecursive(quillDir);
@@ -93,26 +185,26 @@ export class FileSystemSource {
93
185
  catch (err) {
94
186
  throw new RegistryError('load_error', `Failed to read quill directory: ${quillDir}`, {
95
187
  quillName: name,
96
- version: entry.version,
188
+ version: resolvedVersion,
97
189
  cause: err,
98
190
  });
99
191
  }
100
192
  return {
101
- name: entry.name,
102
- version: entry.version,
193
+ name: metadata.name,
194
+ version: metadata.version,
103
195
  data: files,
104
- metadata: entry,
196
+ metadata,
105
197
  };
106
198
  }
107
199
  /**
108
200
  * Packages all quills for HTTP static hosting.
109
- * Zips each quill directory and writes the zips plus a `manifest.json` to `outputDir`.
201
+ * Zips each quill version directory and writes the zips plus a `manifest.json` to `outputDir`.
110
202
  */
111
203
  async packageForHttp(outputDir) {
112
204
  await fs.mkdir(outputDir, { recursive: true });
113
205
  const manifest = await this.getManifest();
114
206
  for (const entry of manifest.quills) {
115
- const quillDir = await this.findQuillDir(entry.name, entry.version);
207
+ const quillDir = path.join(this.quillsDir, entry.name, entry.version);
116
208
  const files = await readDirRecursive(quillDir);
117
209
  const zip = new JSZip();
118
210
  for (const [relativePath, content] of Object.entries(files)) {
@@ -124,26 +216,36 @@ export class FileSystemSource {
124
216
  }
125
217
  await fs.writeFile(path.join(outputDir, 'manifest.json'), JSON.stringify(manifest, null, 2));
126
218
  }
127
- /** Finds the directory for a quill by scanning subdirectories and matching metadata. */
128
- async findQuillDir(name, version) {
129
- const dirEntries = await fs.readdir(this.quillsDir, { withFileTypes: true });
130
- const dirs = dirEntries.filter((e) => e.isDirectory()).map((e) => e.name);
131
- for (const dirName of dirs) {
132
- const quillDir = path.join(this.quillsDir, dirName);
133
- try {
134
- const metadata = await readQuillMetadata(quillDir);
135
- if (metadata.name === name && metadata.version === version) {
136
- return quillDir;
137
- }
138
- }
139
- catch {
140
- // Skip directories that don't have valid Quill.yaml
141
- }
219
+ /**
220
+ * Resolves the latest version for a quill by listing version directories
221
+ * and picking the highest semver.
222
+ */
223
+ async resolveLatestVersion(name) {
224
+ const nameDir = path.join(this.quillsDir, name);
225
+ let versionDirs;
226
+ try {
227
+ versionDirs = await listSubdirectories(nameDir);
142
228
  }
143
- throw new RegistryError('quill_not_found', `Quill directory for "${name}@${version}" not found`, {
144
- quillName: name,
145
- version,
146
- });
229
+ catch {
230
+ throw new RegistryError('quill_not_found', `Quill "${name}" not found in source`, {
231
+ quillName: name,
232
+ });
233
+ }
234
+ if (versionDirs.length === 0) {
235
+ throw new RegistryError('quill_not_found', `Quill "${name}" has no versions`, {
236
+ quillName: name,
237
+ });
238
+ }
239
+ // Filter to valid semver directories only
240
+ const semverDirs = versionDirs.filter(isSemver);
241
+ if (semverDirs.length === 0) {
242
+ throw new RegistryError('quill_not_found', `Quill "${name}" has no valid version directories`, {
243
+ quillName: name,
244
+ });
245
+ }
246
+ // Sort by semver descending, return highest
247
+ semverDirs.sort((a, b) => compareSemver(b, a));
248
+ return semverDirs[0];
147
249
  }
148
250
  }
149
251
  //# sourceMappingURL=file-system-source.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"file-system-source.js","sourceRoot":"","sources":["../../src/sources/file-system-source.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-system-source.js","sourceRoot":"","sources":["../../src/sources/file-system-source.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quillmark/registry",
3
- "version": "0.1.10",
3
+ "version": "0.2.0",
4
4
  "description": "Unified API for discovering, loading, packaging, and registering Quills with the WASM engine",
5
5
  "main": "./dist/index.js",
6
6
  "publishConfig": {