on-zero 0.1.21 → 0.1.23

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 (68) hide show
  1. package/dist/cjs/cli.cjs +17 -420
  2. package/dist/cjs/cli.js +7 -398
  3. package/dist/cjs/cli.js.map +2 -2
  4. package/dist/cjs/cli.native.js +15 -514
  5. package/dist/cjs/cli.native.js.map +1 -1
  6. package/dist/cjs/generate.cjs +370 -0
  7. package/dist/cjs/generate.js +339 -0
  8. package/dist/cjs/generate.js.map +6 -0
  9. package/dist/cjs/generate.native.js +464 -0
  10. package/dist/cjs/generate.native.js.map +1 -0
  11. package/dist/cjs/helpers/createMutators.cjs +4 -3
  12. package/dist/cjs/helpers/createMutators.js +12 -9
  13. package/dist/cjs/helpers/createMutators.js.map +1 -1
  14. package/dist/cjs/helpers/createMutators.native.js +25 -21
  15. package/dist/cjs/helpers/createMutators.native.js.map +1 -1
  16. package/dist/cjs/mutations.cjs +34 -4
  17. package/dist/cjs/mutations.js +29 -4
  18. package/dist/cjs/mutations.js.map +1 -1
  19. package/dist/cjs/mutations.native.js +36 -4
  20. package/dist/cjs/mutations.native.js.map +1 -1
  21. package/dist/cjs/vite-plugin.cjs +84 -0
  22. package/dist/cjs/vite-plugin.js +86 -0
  23. package/dist/cjs/vite-plugin.js.map +6 -0
  24. package/dist/cjs/vite-plugin.native.js +99 -0
  25. package/dist/cjs/vite-plugin.native.js.map +1 -0
  26. package/dist/esm/cli.js +8 -384
  27. package/dist/esm/cli.js.map +2 -2
  28. package/dist/esm/cli.mjs +17 -398
  29. package/dist/esm/cli.mjs.map +1 -1
  30. package/dist/esm/cli.native.js +15 -492
  31. package/dist/esm/cli.native.js.map +1 -1
  32. package/dist/esm/generate.js +317 -0
  33. package/dist/esm/generate.js.map +6 -0
  34. package/dist/esm/generate.mjs +335 -0
  35. package/dist/esm/generate.mjs.map +1 -0
  36. package/dist/esm/generate.native.js +426 -0
  37. package/dist/esm/generate.native.js.map +1 -0
  38. package/dist/esm/helpers/createMutators.js +12 -9
  39. package/dist/esm/helpers/createMutators.js.map +1 -1
  40. package/dist/esm/helpers/createMutators.mjs +4 -3
  41. package/dist/esm/helpers/createMutators.mjs.map +1 -1
  42. package/dist/esm/helpers/createMutators.native.js +25 -21
  43. package/dist/esm/helpers/createMutators.native.js.map +1 -1
  44. package/dist/esm/mutations.js +29 -4
  45. package/dist/esm/mutations.js.map +1 -1
  46. package/dist/esm/mutations.mjs +34 -4
  47. package/dist/esm/mutations.mjs.map +1 -1
  48. package/dist/esm/mutations.native.js +35 -3
  49. package/dist/esm/mutations.native.js.map +1 -1
  50. package/dist/esm/vite-plugin.js +71 -0
  51. package/dist/esm/vite-plugin.js.map +6 -0
  52. package/dist/esm/vite-plugin.mjs +59 -0
  53. package/dist/esm/vite-plugin.mjs.map +1 -0
  54. package/dist/esm/vite-plugin.native.js +71 -0
  55. package/dist/esm/vite-plugin.native.js.map +1 -0
  56. package/package.json +7 -2
  57. package/readme.md +42 -32
  58. package/src/cli.ts +9 -638
  59. package/src/generate.ts +490 -0
  60. package/src/helpers/createMutators.ts +14 -8
  61. package/src/mutations.ts +57 -4
  62. package/src/vite-plugin.ts +110 -0
  63. package/types/generate.d.ts +21 -0
  64. package/types/generate.d.ts.map +1 -0
  65. package/types/helpers/createMutators.d.ts.map +1 -1
  66. package/types/mutations.d.ts.map +1 -1
  67. package/types/vite-plugin.d.ts +16 -0
  68. package/types/vite-plugin.d.ts.map +1 -0
@@ -1,122 +1,8 @@
1
1
  #!/usr/bin/env node
2
- import { createHash } from "crypto";
3
- import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from "fs";
4
- import { basename, resolve } from "path";
5
- import { ModelToValibot } from "@sinclair/typebox-codegen/model";
6
- import { TypeScriptToModel } from "@sinclair/typebox-codegen/typescript";
2
+ import { resolve } from "path";
7
3
  import { defineCommand, runMain } from "citty";
8
- import * as ts from "typescript";
9
- var hash = function (s) {
10
- return createHash("sha256").update(s).digest("hex");
11
- },
12
- generateCache = {},
13
- generateCachePath = "";
14
- function getCacheDir() {
15
- for (var dir = process.cwd(); dir !== "/";) {
16
- var nm = resolve(dir, "node_modules");
17
- if (existsSync(nm)) {
18
- var cacheDir = resolve(nm, ".on-zero");
19
- return existsSync(cacheDir) || mkdirSync(cacheDir, {
20
- recursive: !0
21
- }), cacheDir;
22
- }
23
- dir = resolve(dir, "..");
24
- }
25
- return null;
26
- }
27
- function loadCache() {
28
- var cacheDir = getCacheDir();
29
- if (cacheDir) {
30
- generateCachePath = resolve(cacheDir, "generate-cache.json");
31
- try {
32
- generateCache = JSON.parse(readFileSync(generateCachePath, "utf-8"));
33
- } catch {
34
- generateCache = {};
35
- }
36
- }
37
- }
38
- function saveCache() {
39
- generateCachePath && writeFileSync(generateCachePath, JSON.stringify(generateCache) + `
40
- `, "utf-8");
41
- }
42
- function writeFileIfChanged(filePath, content) {
43
- var contentHash = hash(content),
44
- cachedHash = generateCache[filePath];
45
- return cachedHash === contentHash && existsSync(filePath) ? !1 : (writeFileSync(filePath, content, "utf-8"), generateCache[filePath] = contentHash, !0);
46
- }
47
- var generateQueries = defineCommand({
48
- meta: {
49
- name: "generate-queries",
50
- description: "Generate server-side query validators from TypeScript query functions"
51
- },
52
- args: {
53
- dir: {
54
- type: "positional",
55
- description: "Directory containing query files",
56
- required: !1,
57
- default: "."
58
- }
59
- },
60
- async run(param) {
61
- var {
62
- args
63
- } = param,
64
- dir = resolve(args.dir),
65
- {
66
- readdirSync: readdirSync2
67
- } = await import("fs"),
68
- files = readdirSync2(dir).filter(function (f) {
69
- return f.endsWith(".ts");
70
- }),
71
- allQueries = [],
72
- results = await Promise.all(files.map(async function (file) {
73
- var filePath = resolve(dir, file),
74
- queries = [];
75
- try {
76
- var content = readFileSync(filePath, "utf-8"),
77
- sourceFile = ts.createSourceFile(filePath, content, ts.ScriptTarget.Latest, !0);
78
- ts.forEachChild(sourceFile, function (node) {
79
- if (ts.isVariableStatement(node)) {
80
- var _node_modifiers,
81
- exportModifier = (_node_modifiers = node.modifiers) === null || _node_modifiers === void 0 ? void 0 : _node_modifiers.find(function (m) {
82
- return m.kind === ts.SyntaxKind.ExportKeyword;
83
- });
84
- if (!exportModifier) return;
85
- var declaration = node.declarationList.declarations[0];
86
- if (!declaration || !ts.isVariableDeclaration(declaration)) return;
87
- var name = declaration.name.getText(sourceFile);
88
- if (declaration.initializer && ts.isArrowFunction(declaration.initializer)) {
89
- var params = declaration.initializer.parameters,
90
- paramType = "void";
91
- if (params.length > 0) {
92
- var _param_type,
93
- _$param = params[0];
94
- paramType = ((_param_type = _$param.type) === null || _param_type === void 0 ? void 0 : _param_type.getText(sourceFile)) || "unknown";
95
- }
96
- try {
97
- var typeString = `type QueryParams = ${paramType}`,
98
- model = TypeScriptToModel.Generate(typeString),
99
- valibotCode = ModelToValibot.Generate(model);
100
- queries.push({
101
- name,
102
- params: paramType,
103
- valibotCode
104
- });
105
- } catch (err) {
106
- console.error(`\u2717 ${name}: ${err}`);
107
- }
108
- }
109
- }
110
- });
111
- } catch (err) {
112
- console.error(`Error processing ${file}:`, err);
113
- }
114
- return queries;
115
- }));
116
- allQueries.push(...results.flat()), console.info(`\u2713 ${allQueries.length} query validators`);
117
- }
118
- }),
119
- generate = defineCommand({
4
+ import { generate, watch } from "./generate.native.js";
5
+ var generateCommand = defineCommand({
120
6
  meta: {
121
7
  name: "generate",
122
8
  description: "Generate models, types, tables, and query validators"
@@ -144,384 +30,21 @@ var generateQueries = defineCommand({
144
30
  var {
145
31
  args
146
32
  } = param,
147
- baseDir = resolve(args.dir),
148
- modelsDir = resolve(baseDir, "models"),
149
- generatedDir = resolve(baseDir, "generated"),
150
- queriesDir = resolve(baseDir, "queries"),
151
- runGenerate = async function (options) {
152
- var _options_silent,
153
- silent = (_options_silent = options?.silent) !== null && _options_silent !== void 0 ? _options_silent : !1,
154
- _options_runAfter,
155
- runAfter = (_options_runAfter = options?.runAfter) !== null && _options_runAfter !== void 0 ? _options_runAfter : !silent;
156
- existsSync(generatedDir) || mkdirSync(generatedDir, {
157
- recursive: !0
158
- }), loadCache();
159
- var allModelFiles = readdirSync(modelsDir).filter(function (f) {
160
- return f.endsWith(".ts");
161
- }).sort(),
162
- schemaChecks = await Promise.all(allModelFiles.map(async function (f) {
163
- return {
164
- file: f,
165
- hasSchema: readFileSync(resolve(modelsDir, f), "utf-8").includes("export const schema = table(")
166
- };
167
- })),
168
- filesWithSchema = schemaChecks.filter(function (c) {
169
- return c.hasSchema;
170
- }).map(function (c) {
171
- return c.file;
172
- }),
173
- [modelsOutput, typesOutput, tablesOutput, readmeOutput] = await Promise.all([Promise.resolve(generateModelsFile(allModelFiles)), Promise.resolve(generateTypesFile(filesWithSchema)), Promise.resolve(generateTablesFile(filesWithSchema)), Promise.resolve(generateReadmeFile())]),
174
- writeResults = await Promise.all([Promise.resolve(writeFileIfChanged(resolve(generatedDir, "models.ts"), modelsOutput)), Promise.resolve(writeFileIfChanged(resolve(generatedDir, "types.ts"), typesOutput)), Promise.resolve(writeFileIfChanged(resolve(generatedDir, "tables.ts"), tablesOutput)), Promise.resolve(writeFileIfChanged(resolve(generatedDir, "README.md"), readmeOutput))]),
175
- filesChanged = writeResults.filter(Boolean).length;
176
- if (filesChanged > 0 && !silent && console.info(` \u{1F4DD} Updated ${filesChanged} file(s)`), existsSync(queriesDir)) {
177
- var queryFiles = readdirSync(queriesDir).filter(function (f) {
178
- return f.endsWith(".ts");
179
- }),
180
- queryResults = await Promise.all(queryFiles.map(async function (file) {
181
- var filePath = resolve(queriesDir, file),
182
- fileBaseName = basename(file, ".ts"),
183
- queries = [];
184
- try {
185
- var content = readFileSync(filePath, "utf-8"),
186
- sourceFile = ts.createSourceFile(filePath, content, ts.ScriptTarget.Latest, !0);
187
- ts.forEachChild(sourceFile, function (node) {
188
- if (ts.isVariableStatement(node)) {
189
- var _node_modifiers,
190
- exportModifier = (_node_modifiers = node.modifiers) === null || _node_modifiers === void 0 ? void 0 : _node_modifiers.find(function (m) {
191
- return m.kind === ts.SyntaxKind.ExportKeyword;
192
- });
193
- if (!exportModifier) return;
194
- var declaration = node.declarationList.declarations[0];
195
- if (!declaration || !ts.isVariableDeclaration(declaration)) return;
196
- var name = declaration.name.getText(sourceFile);
197
- if (name === "permission") return;
198
- if (declaration.initializer && ts.isArrowFunction(declaration.initializer)) {
199
- var params = declaration.initializer.parameters,
200
- paramType = "void";
201
- if (params.length > 0) {
202
- var _param_type,
203
- _$param = params[0];
204
- paramType = ((_param_type = _$param.type) === null || _param_type === void 0 ? void 0 : _param_type.getText(sourceFile)) || "unknown";
205
- }
206
- try {
207
- var typeString = `type QueryParams = ${paramType}`,
208
- model = TypeScriptToModel.Generate(typeString),
209
- valibotCode = ModelToValibot.Generate(model);
210
- queries.push({
211
- name,
212
- params: paramType,
213
- valibotCode,
214
- sourceFile: fileBaseName
215
- });
216
- } catch (err) {
217
- console.error(`\u2717 ${name}: ${err}`);
218
- }
219
- }
220
- }
221
- });
222
- } catch (err) {
223
- console.error(`Error processing ${file}:`, err);
224
- }
225
- return queries;
226
- })),
227
- allQueries = queryResults.flat(),
228
- groupedQueriesOutput = generateGroupedQueriesFile(allQueries),
229
- syncedQueriesOutput = generateSyncedQueriesFile(allQueries),
230
- groupedChanged = writeFileIfChanged(resolve(generatedDir, "groupedQueries.ts"), groupedQueriesOutput),
231
- syncedChanged = writeFileIfChanged(resolve(generatedDir, "syncedQueries.ts"), syncedQueriesOutput),
232
- queryFilesChanged = (groupedChanged ? 1 : 0) + (syncedChanged ? 1 : 0),
233
- totalFilesChanged = filesChanged + queryFilesChanged;
234
- if (totalFilesChanged > 0 && !silent && (groupedChanged && console.info(" \u{1F4DD} Updated groupedQueries.ts"), syncedChanged && console.info(" \u{1F4DD} Updated syncedQueries.ts"), console.info(`\u2713 ${allModelFiles.length} models (${filesWithSchema.length} schemas), ${allQueries.length} queries`)), totalFilesChanged > 0 && runAfter && args.after) try {
235
- var {
236
- execSync
237
- } = await import("child_process");
238
- execSync(args.after, {
239
- stdio: "inherit",
240
- env: {
241
- ...process.env,
242
- ON_ZERO_GENERATED_DIR: generatedDir
243
- }
244
- });
245
- } catch (err) {
246
- console.error(`Error running after command: ${err}`);
247
- }
248
- saveCache();
249
- } else {
250
- if (filesChanged > 0 && !silent && console.info(`\u2713 ${allModelFiles.length} models (${filesWithSchema.length} schemas)`), filesChanged > 0 && runAfter && args.after) try {
251
- var {
252
- execSync: execSync1
253
- } = await import("child_process");
254
- execSync1(args.after, {
255
- stdio: "inherit",
256
- env: {
257
- ...process.env,
258
- ON_ZERO_GENERATED_DIR: generatedDir
259
- }
260
- });
261
- } catch (err) {
262
- console.error(`Error running after command: ${err}`);
263
- }
264
- saveCache();
265
- }
33
+ opts = {
34
+ dir: resolve(args.dir),
35
+ after: args.after
266
36
  };
267
- if (await runGenerate({
268
- silent: args.watch,
269
- runAfter: !0
270
- }), args.watch) {
271
- console.info(`\u{1F440} watching...
272
- `);
273
- var chokidar = await import("chokidar"),
274
- debounceTimer = null,
275
- debouncedRegenerate = function (path, event) {
276
- debounceTimer && clearTimeout(debounceTimer), console.info(`
277
- ${event} ${path}`), debounceTimer = setTimeout(function () {
278
- runGenerate();
279
- }, 1e3);
280
- },
281
- watcher = chokidar.watch([modelsDir, queriesDir], {
282
- persistent: !0,
283
- ignoreInitial: !0,
284
- ignored: [generatedDir]
285
- });
286
- watcher.on("change", function (path) {
287
- return debouncedRegenerate(path, "\u{1F4DD}");
288
- }), watcher.on("add", function (path) {
289
- return debouncedRegenerate(path, "\u2795");
290
- }), watcher.on("unlink", function (path) {
291
- return debouncedRegenerate(path, "\u{1F5D1}\uFE0F ");
292
- }), await new Promise(function () {});
293
- }
37
+ args.watch ? (await watch(opts), await new Promise(function () {})) : await generate(opts);
294
38
  }
295
- });
296
- function generateModelsFile(modelFiles) {
297
- var modelNames = modelFiles.map(function (f) {
298
- return basename(f, ".ts");
299
- }).sort(),
300
- getImportName = function (name) {
301
- return name === "user" ? "userPublic" : name;
302
- },
303
- imports = modelNames.map(function (name) {
304
- var importName = getImportName(name);
305
- return `import * as ${importName} from '../models/${name}'`;
306
- }).join(`
307
- `),
308
- sortedByImportName = [...modelNames].sort(function (a, b) {
309
- return getImportName(a).localeCompare(getImportName(b));
310
- }),
311
- modelsObj = `export const models = {
312
- ${sortedByImportName.map(function (name) {
313
- return ` ${getImportName(name)},`;
314
- }).join(`
315
- `)}
316
- }`;
317
- return `// auto-generated by: on-zero generate
318
- ${imports}
319
-
320
- ${modelsObj}
321
- `;
322
- }
323
- function generateTypesFile(modelFiles) {
324
- var modelNames = modelFiles.map(function (f) {
325
- return basename(f, ".ts");
326
- }).sort(),
327
- getSchemaName = function (name) {
328
- return name === "user" ? "userPublic" : name;
329
- },
330
- typeExports = modelNames.map(function (name) {
331
- var pascalName = name.charAt(0).toUpperCase() + name.slice(1),
332
- schemaName = getSchemaName(name);
333
- return `export type ${pascalName} = TableInsertRow<typeof schema.${schemaName}>
334
- export type ${pascalName}Update = TableUpdateRow<typeof schema.${schemaName}>`;
335
- }).join(`
336
-
337
- `);
338
- return `import type { TableInsertRow, TableUpdateRow } from 'on-zero'
339
- import type * as schema from './tables'
340
-
341
- ${typeExports}
342
- `;
343
- }
344
- function generateTablesFile(modelFiles) {
345
- var modelNames = modelFiles.map(function (f) {
346
- return basename(f, ".ts");
347
- }).sort(),
348
- getExportName = function (name) {
349
- return name === "user" ? "userPublic" : name;
39
+ }),
40
+ main = defineCommand({
41
+ meta: {
42
+ name: "on-zero",
43
+ description: "on-zero CLI tools"
350
44
  },
351
- exports = modelNames.map(function (name) {
352
- return `export { schema as ${getExportName(name)} } from '../models/${name}'`;
353
- }).join(`
354
- `);
355
- return `// auto-generated by: on-zero generate
356
- // this is separate from models as otherwise you end up with circular types :/
357
-
358
- ${exports}
359
- `;
360
- }
361
- function generateGroupedQueriesFile(queries) {
362
- var sortedFiles = [...new Set(queries.map(function (q) {
363
- return q.sourceFile;
364
- }))].sort(),
365
- exports = sortedFiles.map(function (file) {
366
- return `export * as ${file} from '../queries/${file}'`;
367
- }).join(`
368
- `);
369
- return `/**
370
- * auto-generated by: on-zero generate
371
- *
372
- * grouped query re-exports for minification-safe query identity.
373
- * this file re-exports all query modules - while this breaks tree-shaking,
374
- * queries are typically small and few in number even in larger apps.
375
- */
376
- ${exports}
377
- `;
378
- }
379
- function generateSyncedQueriesFile(queries) {
380
- var queryByFile = /* @__PURE__ */new Map(),
381
- _iteratorNormalCompletion = !0,
382
- _didIteratorError = !1,
383
- _iteratorError = void 0;
384
- try {
385
- for (var _iterator = queries[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = !0) {
386
- var q = _step.value;
387
- queryByFile.has(q.sourceFile) || queryByFile.set(q.sourceFile, []), queryByFile.get(q.sourceFile).push(q);
388
- }
389
- } catch (err) {
390
- _didIteratorError = !0, _iteratorError = err;
391
- } finally {
392
- try {
393
- !_iteratorNormalCompletion && _iterator.return != null && _iterator.return();
394
- } finally {
395
- if (_didIteratorError) throw _iteratorError;
45
+ subCommands: {
46
+ generate: generateCommand
396
47
  }
397
- }
398
- var sortedFiles = Array.from(queryByFile.keys()).sort(),
399
- imports = `// auto-generated by: on-zero generate
400
- // server-side query definitions with validators
401
- import { defineQuery, defineQueries } from '@rocicorp/zero'
402
- import * as v from 'valibot'
403
- import * as Queries from './groupedQueries'
404
- `,
405
- namespaceDefs = sortedFiles.map(function (file) {
406
- var fileQueries = queryByFile.get(file).sort(function (a, b) {
407
- return a.name.localeCompare(b.name);
408
- }),
409
- queryDefs = fileQueries.map(function (q2) {
410
- var lines = q2.valibotCode.split(`
411
- `).filter(function (l) {
412
- return l.trim();
413
- }),
414
- schemaLineIndex = lines.findIndex(function (l) {
415
- return l.startsWith("export const QueryParams");
416
- }),
417
- validatorDef = "";
418
- if (schemaLineIndex !== -1) {
419
- for (var schemaLines = [], openBraces = 0, started = !1, i = schemaLineIndex; i < lines.length; i++) {
420
- var line = lines[i],
421
- cleaned = started ? line : line.replace("export const QueryParams = ", "");
422
- if (schemaLines.push(cleaned), started = !0, openBraces += (cleaned.match(/\{/g) || []).length, openBraces -= (cleaned.match(/\}/g) || []).length, openBraces += (cleaned.match(/\(/g) || []).length, openBraces -= (cleaned.match(/\)/g) || []).length, openBraces === 0 && schemaLines.length > 0) break;
423
- }
424
- validatorDef = schemaLines.join(`
425
- `);
426
- }
427
- if (q2.params === "void" || !validatorDef) return ` ${q2.name}: defineQuery(() => Queries.${file}.${q2.name}()),`;
428
- var indentedValidator = validatorDef.split(`
429
- `).map(function (line2, i2) {
430
- return i2 === 0 ? line2 : ` ${line2}`;
431
- }).join(`
432
- `);
433
- return ` ${q2.name}: defineQuery(
434
- ${indentedValidator},
435
- ({ args }) => Queries.${file}.${q2.name}(args)
436
- ),`;
437
- }).join(`
438
- `);
439
- return `const ${file} = {
440
- ${queryDefs}
441
- }`;
442
- }).join(`
443
-
444
- `),
445
- queriesObject = sortedFiles.map(function (file) {
446
- return ` ${file},`;
447
- }).join(`
448
- `);
449
- return `${imports}
450
- ${namespaceDefs}
451
-
452
- export const queries = defineQueries({
453
- ${queriesObject}
454
- })
455
- `;
456
- }
457
- function generateReadmeFile() {
458
- return `# generated
459
-
460
- this folder is auto-generated by on-zero. do not edit files here directly.
461
-
462
- ## what's generated
463
-
464
- - \`models.ts\` - exports all models from ../models
465
- - \`types.ts\` - typescript types derived from table schemas
466
- - \`tables.ts\` - exports table schemas for type inference
467
- - \`groupedQueries.ts\` - namespaced query re-exports for client setup
468
- - \`syncedQueries.ts\` - namespaced syncedQuery wrappers for server setup
469
-
470
- ## usage guidelines
471
-
472
- **do not import generated files outside of the data folder.**
473
-
474
- ### queries
475
-
476
- write your queries as plain functions in \`../queries/\` and import them directly:
477
-
478
- \`\`\`ts
479
- // \u2705 good - import from queries
480
- import { channelMessages } from '~/data/queries/message'
481
- \`\`\`
482
-
483
- the generated query files are only used internally by zero client/server setup.
484
-
485
- ### types
486
-
487
- you can import types from this folder, but prefer re-exporting from \`../types.ts\`:
488
-
489
- \`\`\`ts
490
- // \u274C okay but not preferred
491
- import type { Message } from '~/data/generated/types'
492
-
493
- // \u2705 better - re-export from types.ts
494
- import type { Message } from '~/data/types'
495
- \`\`\`
496
-
497
- ## regeneration
498
-
499
- files are regenerated when you run:
500
-
501
- \`\`\`bash
502
- bun on-zero generate
503
- \`\`\`
504
-
505
- or in watch mode:
506
-
507
- \`\`\`bash
508
- bun on-zero generate --watch
509
- \`\`\`
510
-
511
- ## more info
512
-
513
- see the [on-zero readme](./node_modules/on-zero/README.md) for full documentation.
514
- `;
515
- }
516
- var main = defineCommand({
517
- meta: {
518
- name: "on-zero",
519
- description: "on-zero CLI tools"
520
- },
521
- subCommands: {
522
- generate,
523
- "generate-queries": generateQueries
524
- }
525
- });
48
+ });
526
49
  runMain(main);
527
50
  //# sourceMappingURL=cli.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createHash","existsSync","mkdirSync","readFileSync","readdirSync","writeFileSync","basename","resolve","ModelToValibot","TypeScriptToModel","defineCommand","runMain","ts","hash","s","update","digest","generateCache","generateCachePath","getCacheDir","dir","process","cwd","nm","cacheDir","recursive","loadCache","JSON","parse","saveCache","stringify","writeFileIfChanged","filePath","content","contentHash","cachedHash","generateQueries","meta","name","description","args","type","required","default","run","param","readdirSync2","files","filter","f","endsWith","allQueries","results","Promise","all","map","file","queries","sourceFile","createSourceFile","ScriptTarget","Latest","forEachChild","node","isVariableStatement","_node_modifiers","exportModifier","modifiers","find","m","kind","SyntaxKind","ExportKeyword","declaration","declarationList","declarations","isVariableDeclaration","getText","initializer","isArrowFunction","params","parameters","paramType","length","_param_type","_$param","typeString","model","Generate","valibotCode","push","err","console","error","flat","info","generate","watch","after","baseDir","modelsDir","generatedDir","queriesDir","runGenerate","options","_options_silent","silent","_options_runAfter","runAfter","allModelFiles","sort","schemaChecks","hasSchema","includes","filesWithSchema","c","modelsOutput","typesOutput","tablesOutput","readmeOutput","generateModelsFile","generateTypesFile","generateTablesFile","generateReadmeFile","writeResults","filesChanged","Boolean","queryFiles","queryResults","fileBaseName","groupedQueriesOutput","generateGroupedQueriesFile","syncedQueriesOutput","generateSyncedQueriesFile","groupedChanged","syncedChanged","queryFilesChanged","totalFilesChanged","execSync","stdio","env","ON_ZERO_GENERATED_DIR","execSync1","chokidar","debounceTimer","debouncedRegenerate","path","event","clearTimeout","setTimeout","watcher","persistent","ignoreInitial","ignored","on","modelFiles","modelNames","getImportName","imports","importName","join","sortedByImportName","a","b","localeCompare","modelsObj","getSchemaName","typeExports","pascalName","charAt","toUpperCase","slice","schemaName","getExportName","exports","sortedFiles","Set","q","queryByFile","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","next","done","value","has","set","get","return","Array","from","keys","namespaceDefs","fileQueries","queryDefs","q2","lines","split","l","trim","schemaLineIndex","findIndex","startsWith","validatorDef","schemaLines","openBraces","started","i","line","cleaned","replace","match","indentedValidator","line2","i2","queriesObject"],"sources":["../../src/cli.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["resolve","defineCommand","runMain","generate","watch","generateCommand","meta","name","description","args","dir","type","required","default","after","run","param","opts","Promise","main","subCommands"],"sources":["../../src/cli.ts"],"sourcesContent":[null],"mappings":";AACA,SAASA,OAAA,QAAe;AAExB,SAASC,aAAA,EAAeC,OAAA,QAAe;AAEvC,SAASC,QAAA,EAAUC,KAAA,QAAa;AAEhC,IAAAC,eAAM,GAAAJ,aAAkB;IACtBK,IAAA,EAAM;MACJC,IAAA,EAAM;MACNC,WAAA,EAAa;IACf;IACAC,IAAA,EAAM;MACJC,GAAA,EAAK;QACHC,IAAA,EAAM;QACNH,WAAA,EAAa;QACbI,QAAA,EAAU;QACVC,OAAA,EAAS;MACX;MACAT,KAAA,EAAO;QACLO,IAAA,EAAM;QACNH,WAAA,EAAa;QACbI,QAAA,EAAU;QACVC,OAAA,EAAS;MACX;MACAC,KAAA,EAAO;QACLH,IAAA,EAAM;QACNH,WAAA,EAAa;QACbI,QAAA,EAAU;MACZ;IACF;IAEA,MAAMG,IAAIC,KAAE,EAAK;MACf;UAAMP;QAAA,IAASO,KAAK;QAAAC,IAAA,GAAQ;UAExBP,GAAK,EAAAV,OACP,CAAAS,IAAA,CAAMC,GAAA;UACoBI,KAE1B,EAAAL,IAAM,CAAAK;QAEV;MAGIL,IAAA,CAAAL,KAAO,UAAAA,KAAc,CAAAa,IAAA,aAAAC,OAAA,cACzB,MAAM,MAAAf,QAAA,CAAAc,IAAA;IAAA;EACE;EACNE,IAAA,GAAAlB,aAAa;IACfK,IAAA;MACAC,IAAA,WAAa;MACXC,WAAU;IACZ;IACDY,WAAA;MAEDjB,QAAY,EAAAE","ignoreList":[]}